May 1 is a meeting at ICAO in Montreal for adding authentication via TESLA with cert signing of the key for GPS.  This is referred to as Satellite-Based Augmentation System (SBAS) Authentication.

Because of the restricted payload size (and channel capacity), the workgroup plans on using CBOR encoding of their rather small (already!) DER encoded certificates.

We still are debating things like:

How large the serialNumber
What MUST be in DN
Is SKI for EE really needed
What hashing method for SKI/AKI

And I keep advising them that they can't have their head in the sand on PQ, as they will be a prime target for QC attacks.

Anyway to squeeze out more bytes.

Fun stuff.

For this standard work, ICAO REALLY needs this draft advancing to RFC status.  How can we accelerate this progress?

The workgroup really expects me to report favorably on progress with this draft.  But, I don't control the drafting work, only along for the ride...

Bob

On 4/17/25 10:45 AM, Sipos, Brian J. wrote:
Carsten and authors,
It's been a while to follow-up on this, and I appreciate the more procedural 
way to extract the full CDDL. I'm still seeing parsing problems with the 
extracted CDDL and (at least) some of these are from the C509 document itself.

I'm verifying the validity of the extracted CDDL with the commands:
        kramdown-rfc draft-ietf-cose-cbor-encoded-cert.md 
>draft-ietf-cose-cbor-encoded-cert.xml
        kramdown-rfc-extract-sourcecode -tfiles 
draft-ietf-cose-cbor-encoded-cert.xml
        cddl compile-cddl --cddl sourcecode/cddl/c509.cddl

Where the CDDL tool I'm using is the rust implementation installed with "cargo 
install cddl".

The three categories of errors that I see are:

1. I needed to add a rule for the "oid" type from RFC 9090 (as below) because it isn't 
included in the C509 document. It would be good for the C509 to be self-contained if possible, 
maybe defining 'inherited' rules in the Introduction section. Some of my own internet drafts add an 
introduction subsection titled "Use of CDDL" that explains any inherited rules and their 
sources, how the document uses CDDL generally, and how it can be extracted from the published XML.
        oid = #6.111(bstr)

2. About the rule " IPAddressOrRange = AddressPrefix / AddressRange" the error " missing definition for 
rule AddressPrefix" which appears to be because "AddressPrefix" itself is a group and not a type while 
"AddressRange" is defined as an array type.

3. About rules that involve OIDs like " KeyPurposeId = int / ~oid" the error " 
expected assignment token '=', '/=' or '//=' after rule identifier" which I don't fully 
understand. Maybe the CDDL parser I'm using doesn't properly unwrap tagged rules..?

Any help with working these out would be appreciated, and I think would improve 
the utility of the CDDL that is part of this document.

Thank you,
Brian S.

-----Original Message-----
From: Carsten Bormann <[email protected]>
Sent: Monday, January 27, 2025 11:30 AM
To: Sipos, Brian J. <[email protected]>
Cc: Göran Selander <[email protected]>;
[email protected]
Subject: [EXT] Re: [COSE] I-D Action: draft-ietf-cose-cbor-encoded-cert-12.txt

APL external email warning: Verify sender [email protected] before clicking links or
attachments

On 2025-01-17, at 15:15, Sipos, Brian J. <[email protected]> wrote:
        • It is currently difficult to extract a full CDDL document for this 
draft.
Could one be extracted and added to the Github repo for reference? Or some
procedure for how we can extract a full, valid CDDL definition from the
markdown?
I did some copy-paste work to get this and am running into tool errors, it
seems like the “time” rule is missing… but maybe I’m extracting an incomplete
set..?
Also some reference CDDL like the “oid” from RFC 9090 needs to be included
somehow; manually in a Github file is fine, but having a complete and parseable
CDDL document would be very valuable for users.
I just made a pull request with various kramdown-rfc and cddl cleanups:

https://github.com/cose-wg/CBOR-certificates/pull/215

This allows the use of

kramdown-rfc-extract-sourcecode -tfiles draft-ietf-cose-cbor-encoded-cert.xml

to create a file sourcecode/cddl/c509.cddl from the collected CDDL in the I-D.

This c509.cddl can then be used for instance as follows:

cddlc -s C509CertificateRequest -r2i rfc9090 sourcecode/cddl/c509.cddl -tcddl |
cddl - gp

(Use v and not g as the cddl option to validate and not generate an example.)

The -r2i rfc9090 imports the oid rule from RFC 9090 (see draft-ietf-cbor-cddl-
modules).

(The specific example generated is not that useful because of the heavy use of
“any” in the CDDL, so you may want to dive in with different -s arguments.)

Grüße, Carsten

_______________________________________________
COSE mailing list -- [email protected]
To unsubscribe send an email to [email protected]

_______________________________________________
COSE mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to