:og:title: krypteia — post-quantum & classical cryptography in Rust :og:description: Pure-Rust post-quantum (ML-KEM, ML-DSA, SLH-DSA) and classical (RSA, ECC, EdDSA, AES) cryptography — side-channel hardened, zero-dependency, embedded-first. Pre-1.0, unaudited; structured for lab-class evaluation. ################################################################### krypteia — Cryptography Workspace ################################################################### :Status: Draft :Version: |release| :Scope: Full workspace — both ``quantica`` (post-quantum) and ``arcana`` (classical) crates, plus the shared ``silentops`` toolkit and the side-channel analysis annex. The krypteia workspace is a pure-Rust cryptographic toolkit with zero external dependencies, designed from the start for embedded targets (Cortex-M, RISC-V) and hardened against physical side-channel attacks. Five library crates are published on crates.io under the ``krypteia-*`` namespace, alongside the C-ABI (``*_ffi``) and WebAssembly (``*_wasm``) bindings: * :doc:`quantica <_gen/quantica_overview>` — post-quantum algorithms standardised as FIPS 203 / 204 / 205 (ML-KEM, ML-DSA, SLH-DSA); * :doc:`arcana <_gen/arcana_overview>` — classical algorithms (RSA, ECDSA/ECDH, EdDSA, AES, ChaCha20-Poly1305, hashes, MACs); * :doc:`tessera <_gen/tessera_overview>` — shared hash primitives: SHA-2 / SHA-3, the SHAKE / cSHAKE XOFs, BLAKE2 / BLAKE3, HMAC, SP 800-185 and the KDF family (HKDF, PBKDF2, SP 800-108, scrypt, Argon2); * :doc:`silentops <_gen/silentops_overview>` — side-channel toolkit: constant-time primitives, dudect-style timing leakage verifier, ctgrind Valgrind harness; * :doc:`memory <_gen/memory_overview>` — TLSF allocator for bare-metal targets (`os-alloc` / `self-alloc` / `global-alloc`). .. toctree:: :maxdepth: 3 :caption: Documentation _gen/root_overview _gen/quantica_overview _gen/arcana_overview _gen/tessera_overview _gen/silentops_overview _gen/memory_overview api .. toctree:: :maxdepth: 2 :caption: Governance _gen/contributing _gen/security _gen/changelog .. The side-channel annex ``sca/index`` is pulled in as a nested toctree from inside ``_gen/quantica_overview.md`` (the staging step in ``gendoc.sh`` appends the directive); it should not be listed here as a sibling chapter.