消息类型是带标签的 CBOR 数组:COSE_Sign1(标签 18)包含受保护头部、未受保护头部、载荷和一个签名;此外还有 COSE_Sign(98)、COSE_Mac0(17)和 COSE_Encrypt0(16)等。签名覆盖一个 Sig_structure,其中包括上下文字符串 Signature1、受保护头部的字节、外部附加数据和载荷。与 JOSE 一样,ECDSA 签名是原始的 r‖s 格式。
算法用整数表示:−7 为 ES256,−35 为 ES384,−36 为 ES512,−8 为 EdDSA,−19 为 Ed25519,−53 为 Ed448(RFC 9864),−257 为 RS256(RFC 8812),−37 为 PS256(RFC 8230)。密钥是 COSE_Key 映射:P-256 使用 kty 2(EC2)和 crv 1,Ed25519 使用 kty 1(OKP)和 crv 6。RFC 9052 和 RFC 9053 于2022年取代了 RFC 8152。
WebAuthn 公钥和证明声明、ISO mdoc 的移动安全对象、CWT 以及 C2PA 清单都采用 COSE;COSE/CWT 解码器可以显示其中任何一种的结构。