# metamorphic_crypto v0.2.0 - Table of Contents

> NaCl-compatible encryption for Elixir with ML-KEM-768/1024 post-quantum support.
Precompiled Rust NIFs — no C compiler or system packages needed.

## Pages

- [MetamorphicCrypto](readme.md)
- [Building Zero-Knowledge Phoenix Apps](zero-knowledge-guide.md)
- [Changelog](changelog.md)

## Modules

- [MetamorphicCrypto](MetamorphicCrypto.md): NaCl-compatible encryption for Elixir with post-quantum support.

- Symmetric Encryption
  - [MetamorphicCrypto.SecretBox](MetamorphicCrypto.SecretBox.md): XSalsa20-Poly1305 authenticated symmetric encryption (NaCl `secretbox`).

- Public-Key Encryption
  - [MetamorphicCrypto.BoxSeal](MetamorphicCrypto.BoxSeal.md): X25519 anonymous sealed box (public-key encryption).

- Post-Quantum Hybrid
  - [MetamorphicCrypto.Hybrid](MetamorphicCrypto.Hybrid.md): ML-KEM + X25519 hybrid post-quantum encryption.

- Unified Seal/Unseal
  - [MetamorphicCrypto.Seal](MetamorphicCrypto.Seal.md): Unified seal/unseal with automatic format detection.

- Key Management
  - [MetamorphicCrypto.KDF](MetamorphicCrypto.KDF.md): Argon2id key derivation.
  - [MetamorphicCrypto.Keys](MetamorphicCrypto.Keys.md): Key generation and private key management.

- Recovery
  - [MetamorphicCrypto.Recovery](MetamorphicCrypto.Recovery.md): Human-readable recovery keys for private key backup.

## Mix Tasks

- [mix metamorphic_crypto.gen.key](Mix.Tasks.MetamorphicCrypto.Gen.Key.md): Generates a random 32-byte encryption key for use with MetamorphicCrypto.

