Hybrid Public Key Encryption (HPKE)
Created
- 2021-11-16
Last Updated
- 2026-04-16
Available Formats
HPKE KEM Identifiers
Registration Procedure(s)
- Specification Required
Expert(s)
- Christopher Wood, Richard Barnes
Reference
- RFC 9180: Hybrid Public Key Encryption
Request an Assignment
https://www.iana.org/form/protocol-assignment
Available Formats
| Value | KEM | Nsecret | Nenc | Npk | Nsk | Auth | Reference |
|---|---|---|---|---|---|---|---|
| 0x0000 | Reserved | N/A | N/A | N/A | N/A | yes | RFC 9180 |
| 0x0001-0x000F | Unassigned | ||||||
| 0x0010 | DHKEM(P-256, HKDF-SHA256) | 32 | 65 | 65 | 32 | yes | NISTCurves; RFC 5869 |
| 0x0011 | DHKEM(P-384, HKDF-SHA384) | 48 | 97 | 97 | 48 | yes | NISTCurves; RFC 5869 |
| 0x0012 | DHKEM(P-521, HKDF-SHA512) | 64 | 133 | 133 | 66 | yes | NISTCurves; RFC 5869 |
| 0x0013 | DHKEM(CP-256, HKDF-SHA256) | 32 | 32 | 32 | 32 | Yes | NISTCurves; RFC 6090; draft-irtf-cfrg-dnhpke-01 |
| 0x0014 | DHKEM(CP-384, HKDF-SHA384) | 48 | 48 | 48 | 48 | Yes | NISTCurves; RFC 6090; draft-irtf-cfrg-dnhpke-01 |
| 0x0015 | DHKEM(CP-521, HKDF-SHA512) | 64 | 66 | 66 | 66 | Yes | NISTCurves; RFC 6090; draft-irtf-cfrg-dnhpke-01 |
| 0x0016 | DHKEM(secp256k1, HKDF-SHA256) | 32 | 65 | 65 | 32 | yes | Standards for Efficient Cryptography 2 (SEC 2); draft-wahby-cfrg-hpke-kem-secp256k1-01 |
| 0x0017-0x001F | Unassigned | ||||||
| 0x0020 | DHKEM(X25519, HKDF-SHA256) | 32 | 32 | 32 | 32 | yes | RFC 5869; RFC 7748 |
| 0x0021 | DHKEM(X448, HKDF-SHA512) | 64 | 56 | 56 | 56 | yes | RFC 5869; RFC 7748 |
| 0x0022 | DHKEM(X25519+Elligator, HKDF-SHA256) | 32 | 32 | 32 | 32 | yes | https://lsd.gnunet.org/lsd0011/; draft-schanzen-hpke-elligator-kem-01 |
| 0x0023-0x002F | Unassigned | ||||||
| 0x0030 | X25519Kyber768Draft00 | 64 | 1120 | 1216 | 2432 | no | draft-westerbaan-cfrg-hpke-xyber768d00-02 |
| 0x0031-0x003F | Unassigned | ||||||
| 0x0040 | ML-KEM-512 | 32 | 768 | 800 | 64 | no | draft-connolly-cfrg-hpke-mlkem-04 |
| 0x0041 | ML-KEM-768 | 32 | 1088 | 1184 | 64 | no | draft-connolly-cfrg-hpke-mlkem-04 |
| 0x0042 | ML-KEM-1024 | 32 | 1568 | 1568 | 64 | no | draft-connolly-cfrg-hpke-mlkem-04 |
| 0x0043-0x004F | Unassigned | ||||||
| 0x0050 | MLKEM768-P256 | 32 | 1153 | 1249 | 32 | no | draft-ietf-hpke-pq-04 |
| 0x0051 | MLKEM1024-P384 | 32 | 1665 | 1665 | 32 | no | draft-ietf-hpke-pq-04 |
| 0x0052-0x6479 | Unassigned | ||||||
| 0x647A | X-Wing | 32 | 1120 | 1216 | 32 | no | draft-connolly-cfrg-xwing-kem-06 |
| 0x647B-0xFFFF | Unassigned |
HPKE KDF Identifiers
Registration Procedure(s)
- Specification Required
Expert(s)
- Christopher Wood, Richard Barnes
Reference
- RFC 9180: Hybrid Public Key Encryption
Request an Assignment
https://www.iana.org/form/protocol-assignment
Available Formats
| Value | KDF | Nh | Reference |
|---|---|---|---|
| 0x0000 | Reserved | N/A | RFC 9180 |
| 0x0001 | HKDF-SHA256 | 32 | RFC 5869 |
| 0x0002 | HKDF-SHA384 | 48 | RFC 5869 |
| 0x0003 | HKDF-SHA512 | 64 | RFC 5869 |
| 0x0004-0x000F | Unassigned | ||
| 0x0010 | SHAKE128 | 32 | draft-ietf-hpke-pq-04 |
| 0x0011 | SHAKE256 | 64 | draft-ietf-hpke-pq-04 |
| 0x0012 | TurboSHAKE128 | 32 | draft-ietf-hpke-pq-04 |
| 0x0013 | TurboSHAKE256 | 64 | draft-ietf-hpke-pq-04 |
| 0x0014-0xFFFF | Unassigned |
HPKE AEAD Identifiers
Registration Procedure(s)
- Specification Required
Expert(s)
- Christopher Wood, Richard Barnes
Reference
- RFC 9180: Hybrid Public Key Encryption
Request an Assignment
https://www.iana.org/form/protocol-assignment