-
-
Notifications
You must be signed in to change notification settings - Fork 81
feat(registry): add HPKE (RFC 9180) to Cryptography Registry #766
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Mehrn0ush <[email protected]>
bhess
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this addition of HPKE. Please see the one comment inline. Other than that, LGTM!
| ], | ||
| "variant": [ | ||
| { | ||
| "pattern": "HPKE[-{mode}]-{kem}-{kdf}-{aead}", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the modes are well-defined by the RFC, I'd suggest the following pattern:
HPKE[-(mode_base|mode_psk|mode_auth|mode_auth_psk)]-{kem}-{kdf}-{aead}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds HPKE (Hybrid Public Key Encryption from RFC 9180) to the Cryptography Registry. The addition follows the existing pattern for algorithm families and adds HPKE between ECIES and MQV in alphabetical order.
Changes:
- Adds HPKE algorithm family entry with RFC 9180 as the authoritative reference
- Defines the pattern
HPKE[-{mode}]-{kem}-{kdf}-{aead}with primitive typepke - Maintains alphabetical ordering of algorithm families
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "primitive": "pke" | ||
| } | ||
| ] | ||
| }, |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is trailing whitespace after the closing brace and comma. This should be removed to maintain consistent formatting.
| }, | |
| }, |
| "family": "HPKE", | ||
| "standard": [ | ||
| { | ||
| "name": "RFC 9180", |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The RFC name should be "RFC9180" without a space to maintain consistency with the predominant naming pattern used in this file. Most RFC entries use the format "RFCnnnn" without a space, such as "RFC8017", "RFC8032", "RFC7919", "RFC5869", etc.
| "name": "RFC 9180", | |
| "name": "RFC9180", |
stevespringett
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update the pattern to match what @bhess had suggested
As discussed in ticket #765, this PR adds HPKE (RFC 9180) to the Cryptography Registry.
Fixes #765
Details
HPKE[-{mode}]-{kem}-{kdf}-{aead}(primitive:pke).HPKE.Scope
schema/cryptography-defs.json) plus corresponding registry schema update (schema/cryptography-defs.schema.json).