All, While investigating the use of COSE within another proposed security protocol [1] I ran into a use case which is not discussed as a possibility in the last draft-ietf-cose-x509 [2]: providing a certificate chain or bag within a COSE_Key (or COSE_KeySet) structure.
This particular use case is because a there will likely be many signatures present from the same private key associated with an end- entity certificate, and the message encoding of [1] allows security "parameter" data to be encoded once and used for multiple security operations. The idea is that the x5chain would be provided once (as a COSE_Key) and then each COSE_Sign1 would contain an x5t associated with the end-entity certificate. This would avoid needing to include a duplicate x5chain in each of the COSE_Sign1 structures, which would bloat the size of the encoded signatures. Is there a technical reason why x5chain or x5bag are inappropriate to use within a COSE_Key structure? There seems to be nothing prohibiting this in [2] but also nothing advocating for this kind of use. The encoding itself could use the existing code points assigned for x5chain and x5bag Header Parameters sub-registry [3] and assign a new "X.509 Certificate" (or some other appropriate name) codepoint Key Types sub-registry [4]. As an alternative, my use could provide for either COSE_Key or x5chain/x5bag but that runs into use of codepoints from multiple registries for the same purpose, which seems confusing. And I feel like this certificate-as-public-key seems more general purpose than my use in [1]. Thanks for any clarification, Brian S. [1] https://tools.ietf.org/html/draft-bsipos-dtn-bpsec-cose-02 [2] https://tools.ietf.org/html/draft-ietf-cose-x509-07 [3] https://www.iana.org/assignments/cose/cose.xhtml#header-parameters [4] https://www.iana.org/assignments/cose/cose.xhtml#key-type _______________________________________________ COSE mailing list [email protected] https://www.ietf.org/mailman/listinfo/cose
