BeskarLink — Secure Messaging Protocol
Signal Protocol + Post-Quantum Augmentation. No metadata. No cloud dependency.
Overview
BeskarLink is the Mandalorian's secure messaging layer — end-to-end encrypted communication between Mandalorian devices, with optional federation to external clients (Signal, Matrix, etc.).
Key innovation: Post-quantum key agreement (Kyber-768) layered on top of Signal's X3DH + Double Ratchet, so messages are secure against both classical and quantum adversaries.
Protocol Stack
BeskarLink Message
├── Kyber-768 (PQ key encapsulation)
│ └── Post-quantum key agreement
├── X25519 (classical key agreement)
│ └── Forward-secret session keys
├── Ed25519 (message authentication)
│ └── Sender authentication
├── AES-256-GCM (payload encryption)
│ └── Symmetric message encryption
└── SHA3-256 (HMAC)
└── Integrity verification
Key Agreement (X3DH + Kyber)
Alice Bob
│ │
│─────── Bob's prekey bundle ───────────▶│
│ (Kyber pubkey + Ed25519 sig) │
│ │
│ X3DH(Alicesk, Bobpk) │
│ + Kyber(Alicesk, Bobjq) │
│ │
│─────── Encrypted message ─────────────▶│
│ │
│◀─────── Reply (Double Ratchet) ────────│
X3DH provides forward secrecy + future secrecy via ratcheting. Kyber-768 provides post-quantum key agreement — quantum-era confidentiality.
Federation
BeskarLink can communicate with: - Other Mandalorian devices — full PQ + Signal protocol - Signal clients — standard Signal Protocol (X25519 + AES-GCM) - Matrix homeservers — via Matrix E2EE bridge (future)
Federation requires mutual attestation via Helm.
Metadata Minimization
BeskarLink does not log: - Who messaged whom (only local device stores this) - When messages were sent (timestamps are encrypted) - Message content (end-to-end encrypted)
The only visible metadata is packet timing (which can be obscured via padding and decoy traffic).
Key Storage
- Identity keys: BeskarVault Level 2 (Sovereign)
- Prekeys: BeskarVault Level 1 (High)
- Session keys: BeskarVault Level 0 (Volatile), zeroized on session close
- Message keys: Derived via Double Ratchet, never stored long-term
Implementation
| File | Role |
|---|---|
beskarcore/include/beskar_link.h |
Public API + data structures |
beskarcore/src/beskar_link.c |
Full protocol stack: X3DH, Kyber-768, Double Ratchet, federation |
Your messages are yours. Not even we can read them.