Hey,

Thanks for joining in, Martin and Chris.

> But Hanno's proposal is a terrible thing to have to implement.  You have to 
> assume that there is some way to recover which CID to use in decrypting any 
> record.  You might save some datagram-local state, but that's awkward.  
> Stacks that I've worked on try very hard not to have state transmission 
> between records for good reasons.  So this would be a fairly bad 
> complication..  Separately, I hope that no one would be contemplating trial 
> decryption for this, which would be terrible.

Yes that's a fair point and also applies to Ekr's proposal 
https://github.com/tlswg/dtls13-spec/pull/143. Moreover,
the same layer-mixing criticism applies to the draft as it stands as well as to 
the other proposed solution, as mentioned before:
When you prepare a record, you need to know where it resides within a datagram 
in order to choose the best header and
AAD: You need to know if it's non-initial within the datagram to decide if you 
can omit the CID, and you need to know if
it's terminal to decide if you can omit the length.

In contrast, if you decouple the choice of header format from the AAD, record 
protection can be done prior to
passing the record to the datagram layer. As mentioned initially, this not only 
increases modularity within the
stack, but also allows e.g. to change the header towards more aggressive 
compression at the entry of a highly
constrained network, which I believe is indeed a feature and not a "defect" and 
increases suitability
of DTLS 1.3 for the IoT.

The CID maintenance for incoming records can be avoided when forbidding CID 
elision, as suggested by Ekr.
Comparing the state maintenance complications this avoids to the increase in 
header size it introduces, maybe
that's the way to go, as the state maintenance indeed seems to be the bigger 
pain.
However, even if CID elision is removed, I maintain the proposal to always use 
the logical presentation of the header
for AAD, for all the mentioned reasons: (a) No interleaving of record and 
datagram layer, (b) conceptual clarity and
independence of [header] compression methods from cryptographic computations, 
as e.g. in cTLS, (c) dynamic
choice of header depending on network paths. All those issues persist when 
sticking to the on-the-wire AAD.
What are your reservations towards this?

Cheers,
Hanno
________________________________
From: TLS <tls-boun...@ietf.org> on behalf of Eric Rescorla <e...@rtfm.com>
Sent: Thursday, April 23, 2020 2:49 AM
To: Martin Thomson <m...@lowentropy.net>
Cc: <tls@ietf.org> <tls@ietf.org>
Subject: Re: [TLS] DTLS 1.3 AEAD additional data

OK but we would expect the peer to process CID-less records if they are 
coalesced?

-Ekr


On Wed, Apr 22, 2020 at 6:39 PM Martin Thomson 
<m...@lowentropy.net<mailto:m...@lowentropy.net>> wrote:


On Thu, Apr 23, 2020, at 11:24, Eric Rescorla wrote:
> On Wed, Apr 22, 2020 at 4:54 PM Martin Thomson 
> <m...@lowentropy.net<mailto:m...@lowentropy.net>> wrote:
> > I prefer Ekr's solution, but I would go with that being a recommendation 
> > (SHOULD) as opposed to a requirement (MUST).
>
> Can you clarify where you think we should say SHOULD?

The security considerations seems right.  After the list of improvements over 
DTLS 1.2 CID.  You would say that an endpoint that is asked to provide a CID 
SHOULD provide one in every record (with the compact header, etc...).  If it 
does not, then it might be possible for an attacker to use that record to 
confirm guesses about linkability between two paths.  Also, omitting the CID 
might make it hard to route datagrams.

With all of this, you might want a section heading for all the CID stuff.
IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.
_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to