No description
- Shell 100%
| LICENSE | ||
| README.md | ||
| test-pqc.sh | ||
Run
bash <(curl -sSL https://code.disobey.net/yawnbox/test-pqc/raw/branch/main/test-pqc.sh)
Results
# bash <(curl -sSL https://code.disobey.net/yawnbox/test-pqc/raw/branch/main/test-pqc.sh) pq.disobey.net
Detecting supported groups in local OpenSSL build...
usable groups: MLKEM1024 MLKEM768 MLKEM512 X25519MLKEM768 SecP384r1MLKEM1024 SecP256r1MLKEM768 X448MLKEM1024 X25519 X448 P-384 P-256
Detecting supported ML-DSA signature algorithms...
usable sigalgs: mldsa87 mldsa65 mldsa44
Target : pq.disobey.net
Server : unknown
OpenSSL : OpenSSL 3.5.5 27 Jan 2026 (Library: OpenSSL 3.5.5 27 Jan 2026)
Timeout : 6s
EE cert : ML-DSA-65
EE sig : ML-DSA-65
Issuer : CN=pq.disobey.net
Chain : self-signed
== Pure PQ: ML-DSA (FIPS 204) + ML-KEM (FIPS 203) ==
EE Signature Key Encap Protocol Cipher Result
──────────────────────────────────────────────────────────────────────────────────────
ML-DSA-87 MLKEM1024 TLSv1.3 TLS_AES_256_GCM_SHA384 OK
ML-DSA-87 MLKEM1024 TLSv1.3 TLS_CHACHA20_POLY1305_SHA256 OK
--- MLKEM1024 FAIL TLS_AES_128_GCM_SHA256 FAIL
--- MLKEM768 FAIL TLS_AES_256_GCM_SHA384 FAIL
--- MLKEM768 FAIL TLS_CHACHA20_POLY1305_SHA256 FAIL
--- MLKEM768 FAIL TLS_AES_128_GCM_SHA256 FAIL
--- MLKEM512 FAIL TLS_AES_256_GCM_SHA384 FAIL
--- MLKEM512 FAIL TLS_CHACHA20_POLY1305_SHA256 FAIL
--- MLKEM512 FAIL TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-65 MLKEM1024 TLSv1.3 TLS_AES_256_GCM_SHA384 OK
ML-DSA-65 MLKEM1024 TLSv1.3 TLS_CHACHA20_POLY1305_SHA256 OK
--- MLKEM1024 FAIL TLS_AES_128_GCM_SHA256 FAIL
--- MLKEM768 FAIL TLS_AES_256_GCM_SHA384 FAIL
--- MLKEM768 FAIL TLS_CHACHA20_POLY1305_SHA256 FAIL
--- MLKEM768 FAIL TLS_AES_128_GCM_SHA256 FAIL
--- MLKEM512 FAIL TLS_AES_256_GCM_SHA384 FAIL
--- MLKEM512 FAIL TLS_CHACHA20_POLY1305_SHA256 FAIL
--- MLKEM512 FAIL TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-44 MLKEM1024 TLSv1.3 TLS_AES_256_GCM_SHA384 OK
ML-DSA-44 MLKEM1024 TLSv1.3 TLS_CHACHA20_POLY1305_SHA256 OK
--- MLKEM1024 FAIL TLS_AES_128_GCM_SHA256 FAIL
--- MLKEM768 FAIL TLS_AES_256_GCM_SHA384 FAIL
--- MLKEM768 FAIL TLS_CHACHA20_POLY1305_SHA256 FAIL
--- MLKEM768 FAIL TLS_AES_128_GCM_SHA256 FAIL
--- MLKEM512 FAIL TLS_AES_256_GCM_SHA384 FAIL
--- MLKEM512 FAIL TLS_CHACHA20_POLY1305_SHA256 FAIL
--- MLKEM512 FAIL TLS_AES_128_GCM_SHA256 FAIL
== Hybrid Key Establishment (FIPS 203 + Classical) ==
Key Protocol Hybrid Key Establishment Cipher Result
──────────────────────────────────────────────────────────────────────────────────────────────────────────
ML-DSA-65 TLSv1.3 X25519MLKEM768 TLS_AES_256_GCM_SHA384 OK
ML-DSA-65 TLSv1.3 X25519MLKEM768 TLS_CHACHA20_POLY1305_SHA256 OK
ML-DSA-65 FAIL X25519MLKEM768 TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-65 FAIL SecP384r1MLKEM1024 TLS_AES_256_GCM_SHA384 FAIL
ML-DSA-65 FAIL SecP384r1MLKEM1024 TLS_CHACHA20_POLY1305_SHA256 FAIL
ML-DSA-65 FAIL SecP384r1MLKEM1024 TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-65 FAIL SecP256r1MLKEM768 TLS_AES_256_GCM_SHA384 FAIL
ML-DSA-65 FAIL SecP256r1MLKEM768 TLS_CHACHA20_POLY1305_SHA256 FAIL
ML-DSA-65 FAIL SecP256r1MLKEM768 TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-65 FAIL X448MLKEM1024 TLS_AES_256_GCM_SHA384 FAIL
ML-DSA-65 FAIL X448MLKEM1024 TLS_CHACHA20_POLY1305_SHA256 FAIL
ML-DSA-65 FAIL X448MLKEM1024 TLS_AES_128_GCM_SHA256 FAIL
== Classical Key Agreement ==
Key Protocol Classical Key Agreement Cipher Result
──────────────────────────────────────────────────────────────────────────────────────────────────────────
ML-DSA-65 TLSv1.3 X25519 TLS_AES_256_GCM_SHA384 OK
ML-DSA-65 TLSv1.3 X25519 TLS_CHACHA20_POLY1305_SHA256 OK
ML-DSA-65 FAIL X25519 TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-65 FAIL X448 TLS_AES_256_GCM_SHA384 FAIL
ML-DSA-65 FAIL X448 TLS_CHACHA20_POLY1305_SHA256 FAIL
ML-DSA-65 FAIL X448 TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-65 FAIL P-384 TLS_AES_256_GCM_SHA384 FAIL
ML-DSA-65 FAIL P-384 TLS_CHACHA20_POLY1305_SHA256 FAIL
ML-DSA-65 FAIL P-384 TLS_AES_128_GCM_SHA256 FAIL
ML-DSA-65 FAIL P-256 TLS_AES_256_GCM_SHA384 FAIL
ML-DSA-65 FAIL P-256 TLS_CHACHA20_POLY1305_SHA256 FAIL
ML-DSA-65 FAIL P-256 TLS_AES_128_GCM_SHA256 FAIL