You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The parse_ccs() Credential constructor takes a full CCS. RFC9528 Section 3.5.2 also describes that naked COSE keys can be used (and I think are common in ACE EDHOC profile) that are turned into a CCS by prefixing them with A108A101.
I suggest (and will probably later PR) to add a dress_cosekey() constructor that takes only a COSE key, extracts the key (possibly refactoring with parse_ccs) and adds the prefix. This is a minor usability help, but saves downstream crates from carrying a 4-byte magic byte sequence around.
Ideally, that parsing function should be less strict than what parse_ccs does now; in particular, it should support EC2 keys where only the X coordinate is given (as is sufficient for ECDH), and which have no kid is present. Is there any particular reason why this (and a subject) is required in parse_ccs(), other than that parse_ccs() was originally designed to ingest test vectors where those happened to be present?
The text was updated successfully, but these errors were encountered:
The
parse_ccs()
Credential constructor takes a full CCS. RFC9528 Section 3.5.2 also describes that naked COSE keys can be used (and I think are common in ACE EDHOC profile) that are turned into a CCS by prefixing them with A108A101.I suggest (and will probably later PR) to add a
dress_cosekey()
constructor that takes only a COSE key, extracts the key (possibly refactoring withparse_ccs
) and adds the prefix. This is a minor usability help, but saves downstream crates from carrying a 4-byte magic byte sequence around.Ideally, that parsing function should be less strict than what
parse_ccs
does now; in particular, it should support EC2 keys where only the X coordinate is given (as is sufficient for ECDH), and which have no kid is present. Is there any particular reason why this (and a subject) is required inparse_ccs()
, other than thatparse_ccs()
was originally designed to ingest test vectors where those happened to be present?The text was updated successfully, but these errors were encountered: