On 5/28/2025 6:24 PM, David Schinazi wrote:

Thanks for the writeup, Martin.

Unfortunately I think we have two goals that are at odds
with each other here:
1) reducing the ability to fingerprint QUIC implementations
2) making ECH indistinguishable from GREASE ECH

It is not really about implementation. It is about configuration, from which the DPI wants to deduce "is this connection going to receive videos". They do that today looking at the SNI, but I assume that they will do it tomorrow by looking at which QUIC extensions you negotiate, or whether your initial parameter values resemble something that MoQ uses, etc.

Both have value, though on different axes. (1) provides
user privacy (though roughly zero of that, see below)
whereas (2) can help reduce ECH blockage if sufficient
client deployments of ECH enable GREASE ECH.

In practice, as MT points out, implementations are already
fingerprintable using a bunch of other details, such as
initial DCID length. So the benefit to (1) is limited.

Maybe, but the transport parameters are much worse than the DCID length.

I worry about the impact to (2) though. If clients start
using different transport parameters when they have an
ECH config available, it makes ECH GREASE stick out
in such a way that the network can block real ECH while
letting GREASE ECH through.

Is this worth considering? Or have we given up on (2)
for some other reason?

That's kinda why I am looking for a "default TP" profile. If we chose the default well, it can coincide with regular H3 over QUIC, and so the "real" ECH will not look different from H3+Grease.

-- Christian Huitema

Reply via email to