-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
implement real Encrypted ClientHello probe #1
base: master
Are you sure you want to change the base?
Conversation
Next steps:
|
Watching for
|
ooni is trying to remove |
…hen available; tests
Draft
This implements a real ECH probe using go 1.23.4* which implements Encrypted ClientHello (client-side) in its
tls
package.We use the native
tls
implementation to execute the handshake and borrow the ECH Config parsing code from golang's own implementation in order to capture appropriate values from the config for ourArchivalTLSOrQUICHandshakeResult
.To try it out, run
and watch the lines that begin with
echcheck
*More precisely, this wants to use an even newer version of golang which includes
858a0e9dfd
, since that will provide retry configs:It will run with 1.23.4, but GREASE connections will fail to establish a TLS connection. As a result some tests will also fail under 1.23.4.