Post-quantum readiness score. Computed as 100 × (1 − severity-weighted share of findings), weights P0=1.0, P1=0.6, P2=0.3, P3=0.1, compliant=0; findings accepted in lattice.toml are excluded. It measures the composition of the cryptography Lattice could see — it is not a probability of compromise, and it cannot account for code static analysis cannot see.
4
P0 · act now
2
P1 · migrate before quantum
4
P2 · plan migration
0
P3 · monitor
4
Compliant / informational
1 quantum-vulnerable key-establishment or asymmetric-encryption usage(s) create harvest-now-decrypt-later exposure: traffic captured today can be decrypted once a cryptographically relevant quantum computer exists. These are the P0 migration targets (ML-KEM, NIST FIPS 203).
Prioritized findings
Priority
Algorithm
Location
Quantum
Classical
Confidence
Remediation
P0
MD5
src/auth.py:5
n/a
broken
high
SHA-256 or stronger (SHA-384/SHA-3 preferred long-term)
P0
RSA (2048-bit)
src/auth.py:6
broken
secure
high
ML-KEM (FIPS 203) for encryption/key transport; ML-DSA (FIPS 204) for signatures
P0
AES / ECB
src/auth.py:8
weakened
broken-usage
high
AES-256
P0
RC4
tls.conf:2
n/a
broken
medium
AES-256 (GCM) or ChaCha20-Poly1305
P1
ECDSA
src/Sign.java:4
broken
secure
medium
ML-DSA (FIPS 204) or SLH-DSA (FIPS 205)
P1
ECDSA (SECP256R1)
src/auth.py:7
broken
secure
high
ML-DSA (FIPS 204) or SLH-DSA (FIPS 205)
P2
AES / GCM
src/Sign.java:5
weakened
secure
medium
AES-256
P2
TLS-1.0
tls.conf:1
n/a
deprecated
medium
TLS 1.2 or newer (prefer TLS 1.3)
P2
TLS-1.1
tls.conf:1
n/a
deprecated
medium
TLS 1.2 or newer (prefer TLS 1.3)
P2
3DES
tls.conf:2
weakened
deprecated
medium
AES-256
Breakdown by detector
Detector
Assets
Worst priority
config
5
P0
dependency
2
ok
java
2
P1
python
5
P0
All findings
P0 · act now (4)
P0 MD5 high
src/auth.py:5 · detector: python
MD5 is classically broken today, independent of quantum computing; replace immediately.
Remediation: SHA-256 or stronger (SHA-384/SHA-3 preferred long-term)
def token(d): return hashlib.md5(d).hexdigest()
P0 RSA (2048-bit) high
src/auth.py:6 · detector: python
RSA asymmetric-cipher is broken by Shor's algorithm and captured ciphertext is decryptable later (harvest-now-decrypt-later).
Remediation: ML-KEM (FIPS 203) for encryption/key transport; ML-DSA (FIPS 204) for signatures