On 01/02/2025 18:00, Eric Rescorla wrote:

2. It allows clients to safely force the server to offer a PQ chain
   even if the client actually is type (3). Normally it wouldn't be
   safe to only advertise PQ algorithms in signature_algorithms, but
   if the server advertises a PQ TA, then the client can safely
   provide only that TA in the ClientHello while offering a wider set
   of TAs to other servers. This can also be used on the client
   side to measure PQ support on servers.

I haven't seen this come up in discussion before, but I don't think this is a meaningful use case.

The type 3 clients don't get any additional security unless they can enforce the use of PQ in future connections to that site. Otherwise, an attacker can always force this client back to advertising and accepting a traditional algorithm. This requires some kind of active signal from the server to the client, which the server is going to have to consent+commit to anyway, so I don't think trying to mess around with the Client Hello to coerce servers can deliver any benefit. Also, I'm not sure I can imagine a scenario where there's enough server-side PQ support for type 4 clients to exist, but with some servers still unwilling to send PQ signatures when offered.

On 03/02/2025 12:57, Bas Westerbaan wrote:

On the negative side, I think it's not clear whether we'll reach 4 (clients stop advertising traditoinal algs) when the CRQC arrives: there could well be sufficiently many servers that don't support PQ EE certs yet.

On the positive side, I think we might be able to get more security than you suggest before 4.

I agree. I expect this transition will look much like the shift from HTTP to HTTPS so it's vital that we have a mechanism where clients and servers which have already deployed PQ-support can benefit from it. This means providing a way for servers to signal to clients "Please don't ever fall back to non-PQ algorithms when connecting to me in the future" and having clients store + enforce that signal. Putting this signal in DNS isn't acceptable because we want to provide security even when DNS is compromised / unauthenticated.

As Bas writes, this signal could be conveyed through a special kind of certificate. However, besides the other issues Bas identifies, the sketched design would be very hard to deploy because it relies on the general body of server operators to take multiple actions: "Remember to opt-in to the non-PQ cert package. Remember to opt-out of the non-PQ cert package when you deploy PQ support. Remember to monitor CT going forward." and it fails if they omit any step. It's reasonable to expect security-motivated server operators to go out of their way to do these things, but not the general population.

I think HSTS provides the basis for a more effective solution. It needs only to be extended with a single additional bit ("Enforce use of PQ signatures") and it's already well-understood by website operators. Managing the preload list is a bit unpleasant for browsers, but strictly speaking the preload list is an optional component of HSTS which is used only to protect the very first connection between a client and a site (non-preload HSTS protects all subsequent connections) and in any case I don't think there's an alternative for first-connection protection.

Best,
Dennis

_______________________________________________
TLS mailing list -- tls@ietf.org
To unsubscribe send an email to tls-le...@ietf.org

Reply via email to