PersistedEncKey class

One of this APKAM keypair's enc keypairs, as it is persisted.

encSeed is the base64 of the KEM's secret seed, not its secret key: the public key and the decapsulation key both re-derive from the seed, and the two are the same thing only for X-Wing — ML-KEM's secret key is an expanded decapsulation key no seeded call reproduces, so a keyfile holding one could never recover the public half.

keyAlgo must be stored alongside the seed: 32 bytes and 64 bytes are both valid seeds for some backend, so the bytes alone do not identify one, and expanding a seed under the wrong KEM yields a key whose kpid nobody is writing to.

status is what makes holding more than one useful: nothing new is sealed to a retired key, but it is still expanded and still opens envelopes already addressed to it.

Constructors

PersistedEncKey({required String encSeed, String keyAlgo = SecretSharingAlgos.xWing, KeyEntryStatus status = KeyEntryStatus.active})

Properties

encSeed → String
final
hashCode → int
The hash code for this object.
no setterinherited
keyAlgo → String
An id from SecretSharingAlgos.keyAlgos; defaults to the hybrid.
final
offeredForNewOperations → bool
Whether this is the key the enrollment advertises and is addressed at — see KeyEntryStatus.offersNewOperations. A key that is not still opens what is already in flight to it.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
status → KeyEntryStatus
An open token: ask offeredForNewOperations rather than comparing it.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

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