pqtransport logopqtransport

Features

Feature matrix for pqtransport 0.1.0 — done, partial, fail-closed, not started.

Status: Done (tested), Partial, Fail-closed, Not started.

Hybrid key exchange#

FeatureStatus
X25519MLKEM768 share encode/decode/combineDone
SecP256r1MLKEM768 share encode/decode/combineDone
SecP384r1MLKEM1024 share encode/decode/combineDone
Length filter before cryptoDone
All-zero classical shared secret rejectedDone
Live X25519MLKEM768 KEXDone
Live SecP256r1MLKEM768 KEXDone
Live SecP384r1MLKEM1024 KEX (maximum)Done
Profile / group refuse (requireGroup)Done

TLS 1.3#

FeatureStatus
Client / server state machinesDone
Compact ClientHello / ServerHelloDone (RFC 8446-shaped; compact 0.1 retired)
AES-256-GCM records, epoch sequencesDone (IANA 0x1302)
TLS exporterDone
HKDF-SHA-384 scheduleDone (IANA 0x1302, default)
HKDF-SHA-256 scheduleDone (ChaCha 0x1303 and UDP)
HelloRetryRequest on the wireDone (cookie + selected_group, OPEN-05)
SNI, ALPN, key_share extensionsDone
X.509 / certificate chainsNot started (raw-pk negotiated, OPEN-04)
ChaCha20-Poly1305 records Done (IANA 0x1303; dart2js via pqforge 0.4.5)
OpenSSL interopNot started

UDP / DNS / mDNS / QUIC / HTTP#

FeatureStatus
Datagram AEAD + replay-before-openDone
Encrypted UDP session (X25519MLKEM768)Done
Encrypted UDP session (P-256 / P-384)Done
DNS RR round-trip including PTR/NSDone
CircuitBreaker + TTL cacheDone
mDNS probe/announce/browse + signed TXTDone
HTTP/1.1 GET over PqTlsSocketDone
QUIC 1-RTT protect + CRYPTO/STREAMDone
HTTP/2Not started
HTTP/3 QPACKNot started
IoDatagramChannel multicast joinDone

Claims we do not feature#

  • FIPS 140 / CMVP validation.
  • Hard constant-time execution.
  • Hard memory erasure (zeroize is best-effort).
  • "Production-ready post-quantum TLS" in the OpenSSL sense.