Tungsten does two separate TLS handshakes per intercepted connection — client→tungsten and
tungsten→origin. Post-quantum (X25519MLKEM768) must be checked on each leg independently.
caesium is the origin, so it can inspect this session directly. Loaded through tungsten → reflects the tungsten-to-origin leg. Loaded directly → just confirms caesium supports the group.
| TLS version | TLS 1.3 |
|---|---|
| Cipher suite | TLS13_AES_256_GCM_SHA384 |
| Key-exchange group | X25519 |
| Verdict | classical group (not post-quantum) |
caesium can't see this leg. Browsers reach tungsten via an explicit-proxy CONNECT tunnel, so
probe it the same way with openssl s_client -proxy.
PQC preferred:
Expect Negotiated TLS1.3 group: X25519MLKEM768.
A handshake failure means tungsten isn't offering PQC on this leg.
macOS note: the system /usr/bin/openssl is LibreSSL, which does not
support -brief, -proxy, or post-quantum groups. Install OpenSSL 3
(brew install openssl@3) and run via
/opt/homebrew/opt/openssl@3/bin/openssl.
Classical fallback:
Expect success — confirms non-PQC clients still work.