Expand description
PQXDH (Post-Quantum Extended Diffie-Hellman) inbox types and cryptographic helpers
This module implements the PQXDH protocol for asynchronous secure communication, based on Signal’s PQXDH specification. It provides:
- Prekey bundle generation and management
- PQXDH key agreement protocol
- Inbox types for different protocols (RPC, messaging, etc.)
§Security
PQXDH provides:
- Post-quantum forward secrecy via ML-KEM (using libcrux-ml-kem)
- Classical security via X25519 ECDH
- Authentication via ML-DSA signatures
- Perfect forward secrecy through one-time prekeys
Re-exports§
pub use pqxdh_crypto::*;
Modules§
- pqxdh_
crypto - PQXDH cryptographic operations
Structs§
- Pqxdh
Inbox - PQXDH inbox for connecting to a user
- Pqxdh
Initial Message - PQXDH initial message sent to establish secure communication (Phase 2)
- Pqxdh
Initial Payload - Initial payload structure for PQXDH sessions
- Pqxdh
Prekey Bundle - PQXDH prekey bundle containing both classical and post-quantum keys
- Pqxdh
Private Keys - Private key material for PQXDH operations
- Pqxdh
Session Message - PQXDH session message for ongoing communication (Phase 3)
- Pqxdh
Shared Secret - Result of PQXDH key agreement
Enums§
- Inbox
Type - Inbox type indicating expected responsiveness and access control
- Pqxdh
Error - Errors that can occur during PQXDH operations