Subject: [lamps] Open source implementation of CBOR Encoded X.509 Certificates (C509 Certificates)

From: John Mattsson <[email-masked]>
Date: Tue, 25 May 2021 16:26:24 +0000

Hi,

There has been a lot requests from people in different working groups for souce code to try out C509 certificates. I just released my example implementation of a DER X509 to CBOR C509 encoder written in Rust.

CBOR encoded X509 (RFC 5280) is one of the main future work item for the COSE WG. C509 is specified as a CBOR encoding of the DER TBSCertificate sequence, which is then combined with a signature over the DER or CBOR encoding. C509 can be used as a compression mechanism complementing RFC 8879, or as a "natively signed" CBOR certificatice encoding still following RFC 5280.

The Rust implementation supports reading a certificate from file or downloading a certificate chain from a HTTPS server. The certificate chain is encoded to COSE_X509, COSE_C509, as well as TLS Certificate and CompressedCertificate messages with X509 and C509. Size comparisions can be found in the draft.

The Rust implementation can be found here:
https://github.com/cose-wg/CBOR-certificates/tree/master/c509

The latest version of the draft:
https://datatracker.ietf.org/doc/draft-ietf-cose-cbor-encoded-cert/

Please send comments and suggestions to [email-masked] only, which is where discussion should take place.

Cheers,
John