Subject: [COSE] some questions about the PKIX Certificate compression draft

From: Michael Richardson <[email-masked]>
Date: Wed, 27 Jan 2021 19:23:39 -0500

1) Why hasn't it been adopted already?

I am collecting a few IDevID, and I'm writing code to compress them.

2) section 3.1 _Message Fields_ define the various values that we need to
include and then presents the following CDDL:

It starts with a CBOR Sequence of the certificate contents, followed by the
signatureValue.  (Typo on title of section 3.2, fix sent by github, suggest
removing trailing whitespace too)

First, I guess "issuerSignatureValue" says "any", because section 3.2
explains how to really encode it.
It looks like it becomes a byte string for ECDSA, but what about RSA?
I think it's still a byte string, so can't we just say that?

Second, as I understand it, the [] below are not used, because it's a
Sequence.  And TBSCertificate is defined as (), which is just a grouping for
CDDL convenience. (Not an array).  So is this actually an 11 item
CBOR Sequence?  Or was an array implied around TBSCertificate?
Maybe we should pay the byte for the array here?

; The elements of the following array are to be used in a CBOR Sequence:
CBORCertificate = [
   TBSCertificate,
   issuerSignatureValue : any,
]

TBSCertificate = (
   cborCertificateType: int,
   certificateSerialNumber: CertificateSerialNumber,
   issuer: Name,
   validityNotBefore: Time,
   validityNotAfter: Time,
   subject: Name,
   subjectPublicKeyAlgorithm: AlgorithmIdentifier,
   subjectPublicKey: any,
   extensions: Extensions,
   issuerSignatureAlgorithm: AlgorithmIdentifier,
)

--
]               Never tell me the odds!                 | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works        |    IoT architect   [
]     [email-masked]  http://www.sandelman.ca/        |   ruby on rails    [

--
Michael Richardson <[email-masked]>   . o O ( IPv6 IøT consulting )
           Sandelman Software Works Inc, Ottawa and Worldwide

---

From: Benjamin Kaduk <[email-masked]>
Date: Wed, 27 Jan 2021 16:36:02 -0800

> 1) Why hasn't it been adopted already?

We have to finish rechartering first.

-Ben