Start here
| Path | You'll accomplish | Time | |
|---|---|---|---|
| 🚀 | Quickstart | Install, run a key exchange, verify shared secrets match | 5 min |
| 📖 | Overview | Understand what VORTEX-256 is and when to use it | 10 min |
| 🔌 | Integration guide | Wire VORTEX into a real client–server protocol | 20 min |
| 🔬 | Core concepts | Learn KEM, RotMLWE, Frobenius orbits, implicit rejection | 25 min |
| 🛡 | Security model | Threat model, guarantees, limitations, responsible use | 15 min |
Documentation map
Learn
| Document | Description |
|---|---|
| Overview | What VORTEX-256 is, design goals, positioning vs ML-KEM |
| Core concepts | KEM primitives, RotMLWE, Frobenius orbit, FO transform |
| Cryptography deep dive | Full mathematical specification and correctness proof |
| Comparison guide | VORTEX vs Kyber, NTRU, and other lattice KEMs |
| Glossary | Terms and notation used across these docs |
Build
| Document | Description |
|---|---|
| Quickstart | Install, first exchange, backends, troubleshooting |
| Key exchange guide | Alice–Bob protocol, network serialization, session keys |
| Key management | PEM files, rotation, storage, permissions |
| Python guide | Package API patterns, backends, error handling |
| C library guide | Static linking, headers, memory safety, embedding |
| Performance | Benchmarks, native vs pure Python, optimization notes |
Reference
| Document | Description |
|---|---|
| API reference | Every Python and C function, types, constants |
| PEM format | Encoding specification for keys and ciphertexts |
| Troubleshooting | Common errors, diagnostics, debug playbook |
| FAQ | Frequently asked questions |
Contribute
| Document | Description |
|---|---|
| Architecture | Repository layout, backends, CI/CD, doc sync pipeline |
| Development guide | Local setup, testing, linting, releases |
| Security | Vulnerability reporting and responsible disclosure |
At a glance
| Property | VORTEX-256 | ML-KEM-512 (Kyber) |
|---|---|---|
| Hardness assumption | RotMLWE | MLWE |
| Public structure | 1 element + K Frobenius rotations | k×k uniform matrix |
| Secret | Scalar s ∈ R_q | Vector s ∈ R_q^k |
| Keygen XOF calls | 1 | 4 |
| Public key | 800 B | 800 B |
| Ciphertext | 768 B | 768 B |
| Standardisation | Research preview | FIPS 203 |
60-second example
python
from vortex_pqc import generate_keypair, encapsulate, decapsulate
alice = generate_keypair()
bob = encapsulate(alice.public_key)
assert decapsulate(bob.data, alice.private_key) == bob.shared_secretSecurity notice
Research preview. VORTEX-256 introduces a novel cryptographic assumption. It is suitable for research, education, and prototyping. It is not NIST-standardised. Read the Security model before any production evaluation.
