NskeyKeyRing class abstract

Where the at/nskey provider gets namespace key material.

Per (atSign, namespace) there is exactly one live nskey keypair, published at public:__nskey.<ns>@<owner> from the moment it is minted. It is the recipient key for both directions: the owner encapsulates her own CKs to it for self data, and external senders encapsulate CKs to it when sharing with her. The private half decapsulates CKs — it never decrypts application data.

Rotation replaces the live generation but does not retire the old private: conveyances written before it are still sealed to that one, so a ring keeps every generation it has held, named by nskeyKid. Sealing always uses currentPublic; opening uses the generation the record names.

The owner argument is the nskey owner — sharedWith ?? sharedBy on the record, which on an inbound conveyance is the recipient, not the sender that owns the record.

Implementers

Constructors

NskeyKeyRing()

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

currentPublic(String owner, String namespace) → Future<NskeyAdvertisement?>
The generation new conveyances seal to for (owner, namespace).
heldNamespaces(String owner) → Future<Set<String>>
The namespaces of owner's nskeys this client holds a private for, spelt as they were filed, answered without a round trip to the atServer.
heldPublic(String owner, String namespace, String nskeyKid) → Future<PackageKey?>
The public half of a named generation of (owner, namespace) whose private this client holds, taken from what it holds rather than read from an advertisement, or null when it holds no such private.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
privateHalf(String owner, String namespace, String nskeyKid, {String? writtenBy}) → Future<NskeyDecapsulationKey?>
The NskeyDecapsulationKey this client holds for a named generation of (owner, namespace) — what pqOpen takes, ready to use.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited