Hi Eric,

Ephemeral key reuse in the Windows TLS stack is only done on the sever side, so 
it does not apply to ML-KEM.
(For hybrids, key reuse only applies to the ECDHE component.)

Cheers,

Andrei

From: Eric Rescorla <e...@rtfm.com>
Sent: Monday, December 16, 2024 7:03 AM
To: Andrei Popov <andrei.po...@microsoft.com>
Cc: Richard Barnes <r...@ipv.sx>; tls@ietf.org
Subject: Re: [EXTERNAL] [TLS] Re: Disallowing reuse of ephemeral keys

Thanks. It seems like that would imply that Web clients cannot safely enforce a 
non-reuse requirement even if we had one.

Do you plan to reuse ML-KEM keys as well?  The situation seems to be different 
because, as Scott observes, it's the client who reaps the benefit.

-Ekr


On Thu, Dec 12, 2024 at 4:29 PM Andrei Popov 
<andrei.po...@microsoft.com<mailto:andrei.po...@microsoft.com>> wrote:

  *   If there are significant implementations which do reuse…
By default, servers using Windows TLS stack reuse ECDHE keys for up to 30 sec. 
Reuse time can be configured or altogether disabled by the system admin. 
Disabling comes at a significant performance cost (for a busy TLS server).

Cheers,

Andrei

From: Richard Barnes <r...@ipv.sx<mailto:r...@ipv.sx>>
Sent: Thursday, December 12, 2024 4:23 PM
To: Eric Rescorla <e...@rtfm.com<mailto:e...@rtfm.com>>
Cc: tls@ietf.org<mailto:tls@ietf.org>
Subject: [EXTERNAL] [TLS] Re: Disallowing reuse of ephemeral keys

I concur with EKR re: validation.  There's plenty of precedent in IETF specs 
for requirements that cannot be validated by the remote party, especially when 
it comes to maintaining security properties.  See, e.g., the ticket deletion 
requirements in RFC 8446.

--RLB

On Thu, Dec 12, 2024 at 7:18 PM Eric Rescorla 
<e...@rtfm.com<mailto:e...@rtfm.com>> wrote:
I agree with Richard about the ordering.

I think validation presents a distinct question: I don't think we should 
require validation, as it is extra work for the peer and may not be practical. 
If there are significant implementations which do reuse, then we should 
discourage or forbid validation for now [0] to avoid breakage and then later we 
can allow it. If there are no such implementations, then I think we can allow 
and/or encourage validation.

-Ekr


[0] This might be a reason to distinguish between existing and new cipher 
suites.

On Thu, Dec 12, 2024 at 10:01 AM Richard Barnes 
<r...@ipv.sx<mailto:r...@ipv.sx>> wrote:
My preference order would be 3 > 1 >> 2.

3 seems like it encodes the expectation of most people for what the protocol 
means.  If you're using a cipher suite labeled something like "ECDHE", it's 
reasonable to expect that it's actually ephemeral, i.e., that there's not key 
material hanging around afterward that could compromise the session.  Allowing 
key reuse (even tacitly) allows one side to silently violate that invariant.  
I'm not worried about backward compat, since (a) it's wire compatible, and (b) 
any change here will be a separate RFC, so people who care about validating can 
ask specifically "do you comply with RFC XXXX"?

1 would be the next most plausible fallback, on the general principle that IETF 
specifications define externally visible behavior, and this is not.

We should not do 2 because as Filippo says, there's no technical reason for it.



On Thu, Dec 12, 2024 at 12:54 PM Filippo Valsorda 
<fili...@ml.filippo.io<mailto:fili...@ml.filippo.io>> wrote:
I support some variation of 2 or 3, depending on what encounters the most 
resistance. I agree there is no technical reason to disallow it for e.g. 
X25519MLKEM768 and not X25519, but in practice it might be easier to set a new 
rule for something that's still being rolled out and still a draft.

Both ECDH and KEMs support key share (or public key) reuse in theory but in 
practice it makes implementation issues much more likely to be practically 
exploitable, and the hypothetical performance gain of reuse is marginal. The 
spec should defend against that and point implementations towards the safer 
course of action.

As always, there is no protocol police, so implementations that want to risk 
shooting their foot off will be able to do so, but they will be off-spec, which 
is a useful signal.
_______________________________________________
TLS mailing list -- tls@ietf.org<mailto:tls@ietf.org>
To unsubscribe send an email to tls-le...@ietf.org<mailto:tls-le...@ietf.org>
_______________________________________________
TLS mailing list -- tls@ietf.org<mailto:tls@ietf.org>
To unsubscribe send an email to tls-le...@ietf.org<mailto:tls-le...@ietf.org>
_______________________________________________
TLS mailing list -- tls@ietf.org
To unsubscribe send an email to tls-le...@ietf.org

Reply via email to