Fork of the Go standard TLS library, providing low-level access to the ClientHello for mimicry purposes.
Find a file
Bobby Powers 0d9e15f699 crypto/tls: expose extensions presented by client to GetCertificate
This enables JA3 and JA4 TLS fingerprinting to be implemented from
the GetCertificate callback, similar to what BoringSSL provides with
its SSL_CTX_set_dos_protection_cb hook.

fixes #32936

Change-Id: Idb54ebcb43075582fcef0ac6438727f494543424
Reviewed-on: https://go-review.googlesource.com/c/go/+/471396
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Roland Shoemaker <roland@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
2024-08-09 18:45:11 +00:00
fipsonly [dev.boringcrypto] all: add boringcrypto build tags 2022-04-29 14:23:22 +00:00
testdata crypto/tls: reorder client_hello extensions 2024-05-22 22:33:38 +00:00
alert.go crypto/tls: add ech client support 2024-05-23 03:10:12 +00:00
auth.go crypto/tls: move defaults into defaults.go 2024-05-22 21:45:37 +00:00
auth_test.go [dev.boringcrypto] all: merge master into dev.boringcrypto 2020-04-08 17:48:41 -04:00
bogo_config.json crypto/tls: better bogo test output handling 2024-06-04 15:52:42 +00:00
bogo_shim_test.go crypto/tls: add exclude tls flags to bogo_shim_test 2024-07-16 18:17:19 +00:00
boring.go crypto/tls: move defaults into defaults.go 2024-05-22 21:45:37 +00:00
boring_test.go crypto/tls: move defaults into defaults.go 2024-05-22 21:45:37 +00:00
cache.go crypto/tls: use SessionState on the client side 2023-05-24 23:56:41 +00:00
cache_test.go crypto/tls: add a certificate cache implementation 2022-11-07 19:46:27 +00:00
cipher_suites.go all: document legacy //go:linkname for final round of modules 2024-05-29 17:58:53 +00:00
common.go crypto/tls: expose extensions presented by client to GetCertificate 2024-08-09 18:45:11 +00:00
common_string.go crypto/tls: implement X25519Kyber768Draft00 2024-05-22 14:56:25 +00:00
conn.go crypto/tls: add ech client support 2024-05-23 03:10:12 +00:00
conn_test.go crypto/tls: enforce 1.3 record version semantics 2023-05-24 21:35:01 +00:00
defaults.go all: document legacy //go:linkname for final round of modules 2024-05-29 17:58:53 +00:00
ech.go crypto/tls: add ech client support 2024-05-23 03:10:12 +00:00
ech_test.go crypto/tls: add ech client support 2024-05-23 03:10:12 +00:00
example_test.go all: make use of builtin clear 2024-03-27 18:23:49 +00:00
generate_cert.go crypto/tls: delete unnecessary line of return 2022-08-08 15:22:02 +00:00
handshake_client.go crypto/tls: apply QUIC session event flag to QUICResumeSession events 2024-06-25 17:08:08 +00:00
handshake_client_test.go crypto/tls: replay test recordings without network 2024-06-24 16:40:26 +00:00
handshake_client_tls13.go crypto/tls: apply QUIC session event flag to QUICResumeSession events 2024-06-25 17:08:08 +00:00
handshake_messages.go crypto/tls: expose extensions presented by client to GetCertificate 2024-08-09 18:45:11 +00:00
handshake_messages_test.go crypto/tls: expose extensions presented by client to GetCertificate 2024-08-09 18:45:11 +00:00
handshake_server.go crypto/tls: expose extensions presented by client to GetCertificate 2024-08-09 18:45:11 +00:00
handshake_server_test.go crypto/tls: expose extensions presented by client to GetCertificate 2024-08-09 18:45:11 +00:00
handshake_server_tls13.go crypto/tls: apply QUIC session event flag to QUICResumeSession events 2024-06-25 17:08:08 +00:00
handshake_test.go crypto/tls: fix testHandshake close flakes 2024-08-02 19:22:04 +00:00
handshake_unix_test.go all: use new "unix" build tag where appropriate 2022-03-29 16:24:51 +00:00
key_agreement.go crypto/tls: implement X25519Kyber768Draft00 2024-05-22 14:56:25 +00:00
key_schedule.go crypto/tls: implement X25519Kyber768Draft00 2024-05-22 14:56:25 +00:00
key_schedule_test.go crypto/tls: implement X25519Kyber768Draft00 2024-05-22 14:56:25 +00:00
link_test.go all: use ":" for compiler generated symbols 2022-08-09 11:28:56 +00:00
notboring.go crypto/tls: move defaults into defaults.go 2024-05-22 21:45:37 +00:00
prf.go crypto/tls: disable ExportKeyingMaterial without EMS 2023-11-21 16:29:49 +00:00
prf_test.go crypto/tls: remove SSLv3 support 2019-08-27 22:24:05 +00:00
quic.go crypto/tls: apply QUIC session event flag to QUICResumeSession events 2024-06-25 17:08:08 +00:00
quic_test.go crypto/tls: apply QUIC session event flag to QUICResumeSession events 2024-06-25 17:08:08 +00:00
ticket.go crypto/tls: improved 0-RTT QUIC API 2024-05-22 17:23:54 +00:00
ticket_test.go crypto/tls: avoid referencing potentially unused symbols in init 2023-05-26 15:24:38 +00:00
tls.go net/http: check GetConfigForClient in server.ServeTLS 2024-06-07 17:57:01 +00:00
tls_test.go crypto/tls: add ech client support 2024-05-23 03:10:12 +00:00