Apply KEM from RFC 9180; TODO authenticated KEM#29
Open
sander wants to merge 1 commit intoYubico:mainfrom
Open
Apply KEM from RFC 9180; TODO authenticated KEM#29sander wants to merge 1 commit intoYubico:mainfrom
sander wants to merge 1 commit intoYubico:mainfrom
Conversation
emlun
requested changes
Feb 23, 2026
Member
emlun
left a comment
There was a problem hiding this comment.
Sorry for leaving this unaddressed...
I think this seems like a good idea, but like #27 it's unfortunate that it's a backwards-incompatible change that affects implementations. We may be too far along with concrete prototypes at this point, I'll have to ask our firmware team what they think of it. But if we're going to do this, we should do so before we define official algorithm identifiers (as opposed to the private range COSE algorithm identifiers our prototypes are using for now).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I have not fully checked the details yet, but suspect that the ARKG spec can be simplified by referring to the KEM from RFC 9180.
It removes the ability to provide a context string, but I don’t think that is a problem, since the output from KEM-Encap is ephemeral and therefore bound to the application context anyway.
Referring to DHKEM specifically does add
"HPKE-v1"to the HKDF input keying material, which is awkward. But there seem to be already precedents of Internet-Drafts and RFCs reusing the DHKEM outside of the context of HPKE.Probably the section “Using ECDH as the KEM” can be removed as well, if we find a predefined KEM for
secp256k1.