Crate hpke_core

Crate hpke_core 

Source
Expand description

§HPKE

Test pipeline Codecov License: MPL-2.0

This is originally a fork of hpke-rs and heavily modified.

  • hpke-core: HPKE core functionality.

    Crates.io Docs.rs

  • hpke-crypto: cryptographic backend implementations for HPKE.

    Crates.io Docs.rs

    Currently supports the following:

    • backend-aws-lc: uses aws-lc-rs as the cryptographic backend.
    • backend-graviola: uses graviola as the cryptographic backend.

§License

Licensed under MPL-2.0 license.

Re-exports§

pub use crate::error::Error;

Modules§

error
Error types
kdf
Extended KDF functions for HPKE as defined in RFC 9180.
kem
Extended KEM functions for HPKE as defined in RFC 9180.

Structs§

Context
The HPKE cryptographic context.
EncapsulatedSecret
The encapsulated secret produced by the KEM.
EncapsulatedSecretRef
The encapsulated secret produced by the KEM.
Hpke
The HPKE configuration.
HpkeCipherSuite
A ciphersuite is a triple (KEM, KDF, AEAD) containing a choice of algorithm for each primitive.
HpkeKeyPair
A HPKE public/private key pair.
HpkePrivateKey
A HPKE private key (skX).
HpkePrivateKeyRef
A HPKE private key (skX).
HpkePublicKey
A HPKE public key (pkX).
HpkePublicKeyRef
A HPKE public key (pkX).
IkmRef
The input keying material (IKM), see HKDF-Extract.
Okm
The output keying material (OKM), see HKDF-Expand.
Prk
A pseudorandom key (PRK) used in the KDF functions.
PrkRef
A pseudorandom key (PRK) used in the KDF functions.
Recipient
Marker type for Context that indicates the recipient role.
Sender
Marker type for Context that indicates the sender role.
SharedSecret
The shared secret produced by the KEM.
SharedSecretRef
The shared secret produced by the KEM.
UnknownAeadAlgorithm
An unknown AEAD identifier.
UnknownHpkeKdfId
An unknown KDF identifier.
UnknownHpkeKemId
An unknown KEM identifier.
UnknownHpkeMode
Error indicating an unknown HPKE mode.

Enums§

CryptoError
Errors thrown by implementations.
HpkeAead
AEAD cryptographic material.
HpkeAeadId
HPKE Authenticated Encryption with Associated Data (AEAD) Functions identifiers.
HpkeKdfId
HPKE Key Derivation Functions (KDFs) identifiers.
HpkeKemId
HPKE Key Encapsulation Mechanisms (KEMs) identifiers.
HpkeMode
The HPKE mode.

Traits§

Crypto
Cryptographic primitives for HPKE.