Module reference · Identity & security
x/encryption — Encryption
Public-key encryption so sensitive on-chain data is readable only by intended recipients.
What it does
Inside x/encryption
The encryption module gives the chain a native envelope-encryption capability: data written into transactions can be sealed to specific recipients' public keys, so it transits the mempool, lives in blocks, and replicates to every node while remaining readable only where intended.
Its most important client is VEID — identity scopes are encrypted to validator recipients so the identity network can score them while the public ledger never exposes raw documents or biometrics. Key registration and fingerprinting let senders discover and pin recipient keys on-chain.
Why it exists
The design rationale
Public ledgers and personal data are structurally at odds: everything on-chain is replicated everywhere, forever. Making recipient-targeted encryption a first-class module resolves the tension — the chain carries ciphertext and its integrity guarantees, while plaintext exists only at authorized endpoints.
Interactions
How it connects to the rest of the chain
No module stands alone — these are the protocol surfaces this module depends on or serves.
Key concepts
Terms that matter here
- Envelope encryption
- Sealing a payload with a symmetric key that is itself encrypted to each recipient's public key.
- Key fingerprint
- A compact, verifiable digest of a registered public key used to pin recipients.
Keep exploring