This is the working area for the individual Internet-Draft, "Hybrid Public Key Encryption".
Formatted text and HTML versions of the draft can be built using make
.
$ make
This requires that you have the necessary software installed. See the instructions.
Implementation | Language | Version | Modes |
---|---|---|---|
go-hpke | Go | RFC9180 | All |
CIRCL | Go | RFC9180 | All but "Export Only" |
hpke-compact | Go | RFC9180 | All |
rust-hpke | Rust | RFC9180 | All |
BoringSSL | C | RFC9180 | Base |
NSS | C | RFC9180 | Base, PSK |
hpke-rs | Rust | RFC9180 | All |
happykey | C/OpenSSL | RFC9180 | All |
hpke-wrap | C/OpenSSL | RFC9180 | All |
zig-hpke | Zig | RFC9180 | All |
libhpke | C++ (OpenSSL) | RFC9180 | All |
hacl-star-hpke | F* | draft-05 | All |
hpke-py | Python (cryptography.io) | RFC9180 | Base, Auth |
hpke-js | Javascript (built on WebCrypto API) | RFC9180 | All |
Tink | Java, Python, Go, C++ | RFC9180 | Base |
hpke-rb | Ruby (OpenSSL) | RFC9180 | All |
Apple CryptoKit | Swift | RFC9180 | All |
BouncyCastle | Java | RFC9180 | Base, Auth |
Submit a PR if you would like your implementation to be added!
See the guidelines for contributions.