Commit Graph

221 Commits

Author SHA1 Message Date
Dirk 56697cee48 Consolidate handshakes for all Safaris 26.4
Looked before at ja3, but for Chromium-browsers ja4 is relevant.
The client column needed to be extended with 1 space.
2026-05-18 21:16:43 +02:00
Dirk b4e58dfbb5 Consolidated Handshakes
went through a couple of pcap files and determined ja3 + ja4 sums.

- Android 15/16 are the same (previously ja3 taken instead of ja4 and wrong host. One has to use chrome !)
- Edge 101/Chrome 101 are the same (will be deprated next time)
- surprisingly Java 17.0.3 and 21.0.6 were the same.

- Added: Ja3/ja4 for old Apple Mail and Thunderbird
2026-05-18 18:45:04 +02:00
Dirk 7897cdcd84 Android 16
As mentioned in the comment: For Androids ja3 is is not unique, probably because of GREASE.
One can add two handshakes after another and they are different. ja4 seems more consistent here.

This should be kept in mind for all clients "supplying some grease"
2026-05-18 16:50:06 +02:00
Dirk 56e4a74485 Add OpenSSL 4.0 2026-05-17 15:23:42 +02:00
Dirk dd4c0b371d Handshakes for iOS + iPadOS 26.4. added 2026-05-16 16:04:13 +02:00
Dirk 7be3897437 Update MacOS/Safari 26.4
it has PQC kx finally, whohoo
2026-05-15 21:31:06 +02:00
Dirk 14e8df3fab Update readme wrt ja3/ja4 + imotr tweaks 2026-05-15 21:30:07 +02:00
Dirk 60131b4b5d - Update Apple Client Simulations 2026-05-15 21:28:54 +02:00
David e1cbc252cc Clean up etc/tls_data.txt.
This commit cleans up the initialization of TLS13_KEY_SHARES and TLS13_PUBLIC_KEY_SHARES in etc/tls_data.txt. With this commit, each index in the array that is to be initialized is prefixed with "[0xXX]=". This allows all of the current placeholders to be deleted.
2026-04-10 17:09:28 -07:00
David Cooper 3be7a854cb Add support for RFC 8998 and draft-yang-tls-hybrid-sm2-mlkem
The commit adds support for RFC 8998 and draft-yang-tls-hybrid-sm2-mlkem. This includes support for the TLS_SM4_GCM_SM3 and TLS_SM4_CCM_SM3 cipher suites, the key exchange groups curveSM2 and curveSM2MLKEM768, and SM2 public keys and signatures.

While this commit adds support to tls_sockets() to decrypt server responses encrypted under SM4 GCM or CCM, OpenSSL does not support performing key derivation using curveSM2. So, tls_sockets() can not decrypt server responses if the key exchange was performed using curveSM2 or curveSM2MLKEM768.
2026-04-07 13:50:53 -07:00
David 2b93c9e6bb Fix #2959
This commit fixes #2959 by modifying TLS12_CIPHER, TLS12_CIPHER_2ND_TRY, and TLS12_CIPHER_3RD_TRY so that they each have 118 ciphers (including "00,ff"). It also modifies run_cipherlists(), run_server_defaults(), and run_beast() so that, when $SERVER_SIZE_LIMIT_BUG is true, no more than 125 ciphers are sent.
2025-12-11 08:00:32 -08:00
Dirk 3e495f456a Add new Sectigo R46 certs + update Java/Mozilla.pem
Fixes #2933 .
2025-11-01 14:15:36 +01:00
Dirk Wetter 0a7810ea47 Update Linux CA store
from Debian 13. Fixes #2915
2025-10-09 20:42:21 +02:00
Dirk Wetter b4f9e51865 Add lf so that gh action doesn't complain 2025-06-23 18:21:44 +02:00
Dirk Wetter 1403503077 Add Sectigo x46 CAs from recent Debian update 2025-06-23 18:20:14 +02:00
Dirk Wetter c109cafa17 Merge branch '3.2' into mac_runner 2025-05-16 18:16:58 +02:00
Dirk 35743166cd Clarify what Android handshake (best) is 2025-05-08 17:21:19 +02:00
Dirk 55980c59c3 Add Android 15 handshake 2025-05-08 17:20:15 +02:00
Dirk Wetter e91b8c7339 reran ~/utils/create_ca_hashes.sh 2025-05-08 14:30:42 +02:00
Dirk d1440d646d For better autoselction w mouse move comma 2025-04-17 18:50:48 +02:00
Dirk 668b98c9ce remove DST Root CA X3.txt 2025-04-17 18:41:44 +02:00
Dirk 3dad99a93a Update Java, Apple and MS store
- Java is from JDK 21
- Apple and MS from this week
2025-04-17 18:39:02 +02:00
Dirk 41c3110c0e Update Linux and Mozilla CA store
- Linux: Debian 12
- Mozilla from 2025-02-25
2025-04-17 18:03:50 +02:00
Dirk Wetter 128d8b5997 Merge pull request #2731 from testssl/new_Handshakes
Update handshakes
2025-04-17 16:13:31 +02:00
Dirk 81e4856b79 fix typo 2025-04-16 21:35:27 +02:00
Dirk 4a2228f401 Updating Android handshakes
- Android 13 and 14 were added. They are the same, see ja3 + ja4 value
- as it turned out Android 11 and 12 have also the same ja3 + ja4 values (retrieved from old pcap files)
- so both will be labeled 11/12 an 13/14
- old pcaps from Android 11/12 showed no ALPN --> corrected
2025-04-16 21:28:08 +02:00
David Cooper d1531cdf60 Support decrypting TLS 1.3 handshakes with PQ key exchange
This commit modifies testssl.sh so that TLS 1.3 handshakes that use post-quantum algorithms for key exchange can be decrypted, if $OPENSSL supports the algorithms.
2025-04-10 14:05:30 -07:00
Dirk 5d9d5276e3 Firefox 137 (Win 11) 2025-04-09 20:28:31 +02:00
Dirk 51fce5feb1 fix ja3/4 for Edge 133 Win 11 23H2 2025-04-09 20:18:24 +02:00
Dirk b18dd2aa28 Edge 133 Win 11 23H2 2025-04-09 20:14:42 +02:00
Dirk 647aeae205 Update docu and (futile) perl script 2025-04-09 20:00:47 +02:00
Dirk f337f53e49 Reorder Java 8 2025-04-09 19:40:12 +02:00
Dirk 85232b7bc5 Chromium 137 Win 11 2025-04-09 19:31:35 +02:00
Dirk 84e77d2bb0 Java 21 2025-04-09 17:07:19 +02:00
Dirk 31e2f43eec LibreSSL update 3.3.6 (MacOS)
.. renaming that to macOS instead "Apple".
2025-04-09 16:51:26 +02:00
Dirk 4f696f94df Add openssl 3.0.15 (from Debian)
... and set OpenSSL 3.0.3 (git) as not to list
2025-04-09 16:39:05 +02:00
Dirk e4cdca9e63 Add Safari 18.4 @ MacOS 15.4 2025-04-09 15:53:11 +02:00
Dirk d601f33a37 Merge branch '3.2' into new_Handshakes 2025-04-09 10:59:40 +02:00
David Cooper 3a8038636d OpenSSL 3.5.0 client simulation
Add OpenSSL 3.5.0 to etc/client-simulation.txt.
2025-04-08 15:26:41 -07:00
Dirk 0d7c33ab7f deprecate more
- Safari 12.1 (iOS 12.2)
- Firefox 66 (Win 8.1/10)
2025-04-08 16:14:37 +02:00
Dirk 887653a033 Deprecate a few entries ...
- Android 5+6
- Chrome 79 Win 10
- IE 6 XP
- IE 8 XP
- Safari 13.0 (macOS 10.14.6)
- OpenSSL 1.1.0l (Debian)

... before new ones are added
2025-04-08 16:06:55 +02:00
Dirk 7939144af1 Swap Android 6 for Android 5
... as it seems to habe more market share
2025-04-08 15:49:44 +02:00
Dirk 58ddfd8a24 Add hint for JA3/4
+ minor corrections
2025-04-07 19:38:05 +02:00
Dirk 45be26db7c Add Java 8u442 handshake
Also the ja3 and ja4 values were added as retrieved from wireshark.

See also #2430 .
2025-04-07 19:36:34 +02:00
David Cooper 683f028164 Support draft-connolly-tls-mlkem-key-agreement
This commit adds support for the three code points in draft-connolly-tls-mlkem-key-agreement.
2025-03-06 11:42:00 -08:00
Teun Vink 42f20b59b1 fix missing semicolon in docs 2025-01-30 10:23:12 +01:00
Dirk Wetter 0042b6313e s/drwetter/testssl
For the remaining occurences. Except dockerhub which needs to be solved.
2025-01-24 11:15:55 +01:00
David Cooper 11d7979f41 Support draft-kwiatkowski-tls-ecdhe-mlkem and draft-tls-westerbaan-xyber768d00
This commit adds support for the three code points in draft-kwiatkowski-tls-ecdhe-mlkem and the code point 0x6399 from draft-tls-westerbaan-xyber768d00. The group 0x6399 uses a pre-standard version of Kyber and is considered obsolete.
2025-01-21 09:00:21 -08:00
David Cooper e17b1c17bb Support RFC 9150 cipher suites
This commit adds support for the two cipher suites in RFC 9150, TLS_SHA256_SHA256 and TLS_SHA384_SHA384. These are authentication and integrity-only cipher suites.
2024-10-28 15:07:22 -07:00
Dirk 76902af3b8 update hashes 2024-07-23 11:35:49 +02:00