pSIONIUM
Post-quantum encryption for the files you keep, and a scanner that shows where quantum computers will break your cryptography.
One command-line tool built on NIST’s new standards, ML-KEM and ML-DSA. Free and open source under Apache-2.0.
curl -fsSL https://raw.githubusercontent.com/Chandu00756/psionium/main/install.sh | shmacOS and Linux. Windows and manual downloads are on the releases page.
The clock has already started
RSA and elliptic curves protect almost everything today, and a large quantum computer breaks both.
Harvest now, decrypt later
Encrypted data recorded today can be decrypted once a large quantum computer exists. Anything that must stay secret for years is already exposed.
The standards are final
NIST published ML-KEM (FIPS 203) and ML-DSA (FIPS 204) in August 2024: the algorithms governments, browsers and clouds are moving to.
RSA and ECC have an end date
NIST's transition plan deprecates RSA and elliptic-curve cryptography after 2030 and disallows them after 2035.
Encrypt & sign
psion encrypt · psion decryptProtect files and backups for exactly the people who need them, and prove they came from you.
- Hybrid X25519 + ML-KEM-768: secure while either one holds
- ML-KEM-1024 and ML-DSA-87 for CNSA 2.0 environments
- ML-DSA signatures prove who sent a file
- Keys protected by an Argon2id passphrase by default
- Many recipients per file; any size, streamed in a few MB of memory
- Outputs written atomically: a failure leaves nothing behind
Quantum-readiness scan
psion scanFind every place your software still depends on cryptography that quantum computers break, and plan the migration.
- Source code and configuration in 40+ languages and formats
- Dependency manifests: npm, Python, Go, Cargo, Maven, Gradle
- Certificates, SSH keys and private keys (contents never reported)
- Live TLS servers: is post-quantum X25519MLKEM768 supported?
- Text, Markdown, JSON and CycloneDX 1.6 CBOM reports
- --fail-on to block quantum-vulnerable code in CI
Two suites, only standard algorithms
The default hybrid suite keeps today’s proven X25519 alongside ML-KEM. The CNSA suite uses only algorithms in NSA’s CNSA 2.0.
| Purpose | pq-hybrid-768 default | cnsa-1024 |
|---|---|---|
| Key establishment | X25519 + ML-KEM-768 | ML-KEM-1024 |
| Signatures | ML-DSA-65 | ML-DSA-87 |
| Data encryption | AES-256-GCM | AES-256-GCM |
| Key derivation | HKDF-SHA-384 | HKDF-SHA-384 |
| Header integrity | HMAC-SHA-384 | HMAC-SHA-384 |
Inside a .psen file
Every byte is authenticated: the header by an HMAC, each chunk by AES-GCM, and a signed file as a whole by ML-DSA. Change anything and decryption stops.
Sizes for the default suite and chunk size. The byte-level layout is in the format specification.
Verified, not just claimed
Security tools earn trust with evidence anyone can check.
Open specification
The .psen v2 format is documented byte by byte, with committed test vectors that every release must keep decrypting.
Two implementations
A second implementation, written in Go from the specification alone, reads psion’s files and writes files psion reads. CI checks both directions.
Millions of corruptions
Damaged files must never decrypt and never crash the tool: 2.4 million random mutations, none accepted.
Standard building blocks
Primitives from AWS-LC, Amazon’s production cryptography library, and Argon2id from RustCrypto. No home-made algorithms, no unsafe code.
Tested where it ships
Linux, macOS and Windows in CI, a dependency audit on every change, checksums and build provenance for every release.
Honest about limits
A published threat model says what pSIONIUM protects against and what it does not, from compromised machines to metadata.
Independent review pending. pSIONIUM’s format and code have not yet been audited by an outside cryptography firm. Until that review is published, don’t rely on pSIONIUM alone for data you cannot afford to lose.
Start in a minute
Builds for macOS (Apple silicon and Intel), Linux (x86-64 and ARM64, static for any distribution) and Windows, each with a SHA-256 checksum.
# your identity: share the printed public key psion keygen -o ~/.psion/me.key # encrypt and sign for a colleague psion encrypt -r psionpk:… --sign-with ~/.psion/me.key report.pdf # where is our crypto quantum-vulnerable? psion scan . --format cbom -o crypto-bom.json