How This Probe Works
This tool constructs a real TLS 1.3 ClientHello message byte-by-byte and sends it directly over a raw TCP socket to the target host on port 443 — the same first message any browser sends. The supported_groups extension lists X25519MLKEM768 (the IANA-registered hybrid group, codepoint 0x11EC) alongside classical groups like x25519 and secp256r1, and the key_share extension includes a real X25519 public key plus a correctly-sized placeholder for the ML-KEM-768 half. The tool reads only the server's ServerHello (or HelloRetryRequest) to see which group it selected, then closes the connection immediately — no certificate is validated, no application data is exchanged, and no key material is ever derived.
Reading the Result
| Result | Meaning |
|---|---|
| Hybrid Confirmed | The server selected X25519MLKEM768, SecP256r1MLKEM768, or the legacy X25519Kyber768Draft00 group — it's already running post-quantum-hybrid TLS today |
| Classical Only | The server selected a classical-only group (x25519, secp256r1, secp384r1) even though a hybrid option was offered |
| Alert | The server rejected the ClientHello outright — it may not support TLS 1.3, or has strict extension validation this probe's minimal ClientHello doesn't satisfy |
Why a Single Probe Isn't a Full Audit
This tool sends one ClientHello and reports the server's top choice from what was offered — it isn't a complete enumeration of everything a server supports. A "Classical Only" result means the server didn't pick a hybrid group from this specific offer, not necessarily that it has no hybrid support at all under different negotiation conditions. For a comprehensive TLS configuration audit including cipher suites, certificate chain, and protocol versions, use KF-Cipher's SSL/TLS Checker; this tool is purpose-built for one narrow question: is hybrid post-quantum key exchange live on this server, right now.
