Hpke class abstract final

RFC 9180 HPKE in Base mode with HKDF-SHA256 (0x0001) and ChaCha20Poly1305 (0x0003), over any KEM supplied through TspEncryptionKey / TspDecryptionKey.

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

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

Static Methods

i2osp2(int n) → Uint8List
Two-byte big-endian encoding of n.
kemSuiteId(int kemId) → Uint8List
suite_id = "KEM" ‖ I2OSP(kem_id, 2), used inside a KEM.
keySchedule({required int kemId, required List<int> sharedSecret, required List<int> info}) → HpkeKeySchedule
RFC 9180 §5.1 KeySchedule for Base mode (no PSK).
labeledExpand(List<int> suiteId, List<int> prk, String label, List<int> info, int length) → Uint8List
RFC 9180 §4 LabeledExpand.
labeledExtract(List<int> suiteId, List<int> salt, String label, List<int> ikm) → Uint8List
RFC 9180 §4 LabeledExtract.
openBase({required TspDecryptionKey recipient, required Uint8List enc, required List<int> info, required List<int> aad, required List<int> ciphertext}) → Future<Uint8List>
Single-shot OpenBase(enc, skR, info, aad, ct).
sealBase({required TspEncryptionKey recipient, required List<int> info, required List<int> aad, required List<int> plaintext, Uint8List? ephemeral}) → Future<HpkeSealed>
Single-shot SealBase(pkR, info, aad, pt).
suiteId(int kemId) → Uint8List
suite_id = "HPKE" ‖ kem_id ‖ kdf_id ‖ aead_id, used by the schedule.

Constants

aeadId → const int
AEAD id of ChaCha20Poly1305.
kdfId → const int
KDF id of HKDF-SHA256.
modeBase → const int
mode_base.