Repository navigation
rcan-py v1.2.1 — ML-DSA-65 only (RCAN v2.2)
Breaking Changes
- Ed25519 fully removed —
KeyPairclass raisesDeprecationWarningand redirects toMLDSAKeyPair pq_sigfield removed from wire format —signature.alg = "ml-dsa-65"is the sole signing blocksign_message()simplified:sign_message(msg, mldsa_keypair)verify_message()simplified:verify_message(msg, trusted: list[MLDSAKeyPair])
What's New
- ML-DSA-65 (NIST FIPS 204) is the ONLY signing algorithm
- Bob (RRN-000000000001) is the first robot running this stack
- Q-Day timeline: ML-DSA-65 primary NOW (2026), Ed25519 sunset 2027, NIST deadline 2029
- 675 tests passing
Install
pip install rcan==1.2.1
pip install "rcan[pq]==1.2.1" # includes dilithium-py