Skip to content

Add support for DHKEM(P-256, HKDF-SHA256)#95

Merged
martinthomson merged 1 commit into
martinthomson:mainfrom
m-kus:feat/p-256-kem
Apr 25, 2026
Merged

Add support for DHKEM(P-256, HKDF-SHA256)#95
martinthomson merged 1 commit into
martinthomson:mainfrom
m-kus:feat/p-256-kem

Conversation

@m-kus

@m-kus m-kus commented Apr 9, 2026

Copy link
Copy Markdown

Summary

  • Add P-256 KEM (ID 0x0010) alongside existing X25519 (ID 0x0020) for OHTTP key encapsulation
  • Only rust-hpke backend changed, NSS backend is not updated (does not support P-256 yet)

Most KMS providers support P-256 but not X25519. Adding P-256 KEM support enables OHTTP gateways to store and manage their keys in hardware-backed KMS, ensuring more secure key management in production deployments.

Changes

  • hpke.rs: Add P256Sha256 variant to Kem enum (n_enc=65, n_pk=65, per RFC 9180 Table 2)
  • Cargo.toml: Enable p256 feature on the hpke crate dependency
  • rh/hpke.rs: Add P-256 key types, sender/receiver context enums, dispatch entries, and key generation

@martinthomson martinthomson merged commit 9a988f3 into martinthomson:main Apr 25, 2026
1 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants