Not attempted.
This client was not driven through this test.
On the TLS tier this usually means more than it says. Each of these ports will negotiate exactly one key exchange group, so a client that cannot negotiate that group never completes a handshake, never establishes a connection, and leaves the server nothing to judge. For a hybrid-only port that reads as no post-quantum key exchange offered — which is a finding about the client rather than a gap in the run.
What was measured
- Client
- msquic — .NET HttpClient + msquic, 2.7.0
- Test
- Server selects a key exchange group the client never offered —
t-group-not-offered - Clause
- RFC 8446 §4.1.3, §4.2.8, RFC 9001 §4.8 (MUST)
- Class
- correctness — Rejected something invalid, with the code the RFC names.
- Required behaviour
- Abort with illegal_parameter. §4.1.3 is explicit that if the selected group was not offered, the client MUST abort — accepting it would let a server steer a client onto a group it deliberately excluded. The port names secp384r1 in its ServerHello against a client that offered only the hybrid, and leaves the payload exactly as generated: the only thing wrong is the name, so a client that aborts can only be aborting over §4.1.3 and not over a share it could not parse. What is judged is the abort, not the alert value. RFC 9001 §4.8 lets a QUIC endpoint replace any alert with a generic one — handshake_failure in place of illegal_parameter — expressly so that a client need not say what it objected to, so the code a client chooses is reported here and not scored. A handshake that ends without any CONNECTION_CLOSE is inconclusive rather than a failure: the group was certainly not accepted, but a close that was never sent cannot be told from one that was lost.
- Measured
- 2026-09-18
Reproduce it
The suite is the judge, so the reproduction is to point the same client at the same test and let the server report what it saw.
SESSION=$(curl -sX POST https://conformance.pqcrypta.com/session | jq -r .id)
# then drive msquic at the test URL and read the verdict:
curl -s https://conformance.pqcrypta.com/report/$SESSION.json | jq '.results["t-group-not-offered"]'
What this suite is · The full grid · All clients · All tests · Findings