EnrollmentKeyExchangeMode enum

How an enrollment's apkamSymmetricKey gets from one side to the other.

This is not the same question as whether the request advertises a key package: a package is also how an approver seals this atSign's existing secrets to a new device, which every mode does. This enum governs only the symmetric key that wraps the encryption private key and the self-encryption key.

Inheritance
Available extensions

Values

legacy → const EnrollmentKeyExchangeMode

The enrollee generates the symmetric key and RSA-encrypts it to the atSign's default encryption public key, which the approver unwraps.

The wrap is the one Shor-vulnerable step in enrollment, so this mode does not survive a quantum adversary recording the request. It is the default because it is the only mode every published approver and atServer understands.

pq → const EnrollmentKeyExchangeMode

The approver generates the symmetric key and encapsulates it to the key package the request advertised; the enrollee collects it after approval.

Nothing RSA-wrapped rides the request. Requires the request to advertise a key package, to supply an AtEnrollmentRequest.apkamSymmetricKeyResolver, an approver that conveys, and an atServer that does not insist on the wrapped key. Fails closed against any of those rather than degrading, so an enrollment either has the property or does not reach the atServer.

Properties

hashCode → int
The hash code for this object.
no setterinherited
index → int
A numeric identifier for the enumerated value.
no setterinherited
name → String

Available on Enum, provided by the EnumName extension

The name of the enum value.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

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

Constants

values → const List<EnrollmentKeyExchangeMode>
A constant List of the values in this enum, in order of their declaration.