Subject: Re: [Secdispatch] DTLS - EDHOC ≈ DTLS

From: John Mattsson <[email-masked]>
Date: Mon, 4 Mar 2019 01:27:24 +0000

Jim Schaad [email-masked]; wrote:

>Richard,
>
>You incorrectly translated the EDHOC protocol below.

To help you and others, Appendix B of draft-selander-ace-cose-ecdhe-12 gives very concrete listings of EDHOC messages in CBOR diagnostic notation:

https://tools.ietf.org/html/draft-selander-ace-cose-ecdhe-12#page-39

By copy-pasting and replacing ( ) with [ ], the examples can be used in the CBOR playground at cbor.me (note that this adds an extra byte to encode the array).

And to clarify, the only estimates done in the EDHOC numbers are the length of the identifiers. The given numbers are the exact numbers of bytes you get when you use EDHOC with 4 byte key identifiers and 1 byte connection identifiers. 

A suggested encoding change for identifiers may lead to slightly smaller numbers for RPK in version 13.

But, as stated earlier by Hannes, nodes and networks can be constrained in many different ways and are in fact often constrained in multiple ways. One of the main design goals of EDHOC was code complexity, by reusing CBOR, COSE, and CoAP we saw that it would be possible to do end-to-end security on the application layer with very low additional code footprint. The message size comparison was an action point from an earlier IETF discussion and is a very concrete way to illustrate the difference between EDHOC and (D)TLS.

Another important aspect is that that COSE is a very good fit for IoT. COSE already supports much more algorithms, parameters, and labels optimized for constrained IoT than TLS do. As COSE has constrained IoT as the main use case, I expect this to continue being the case.

Cheers,
John