ENCRYPT — Private Messages¶
One-line pitch: ENCRYPT lets you send an on-chain message that only a specific other player can read. Your SHIO pair secures both ends. Messages auto-expire after ~10 days.
What this is¶
ENCRYPT (full name LibCrypt) is the direct-messaging library. You pick a recipient by Soul, supply a password-like key ("Chromosome"), and the message is stored in a form only the recipient's SHIO holder can decrypt.
A couple of important rules:
- Only SHIO owners can encrypt/decrypt — ownership is enforced (
NotPartyerror if you're not authorized). - Messages expire after 10 days — keeps on-chain bloat down.
- There's a max in-flight cap — can't spam the system; too many active encryptions raise
TooManyCrypts.
If you've played a web3 game before¶
- Closest analogy: XMTP or Push Protocol — on-chain/off-chain DM systems.
- Or: Lit Protocol — on-chain-gated encryption.
- Or: a self-destruct message in a messaging app.
| Dysnomia term | What it maps to |
|---|---|
| ENCRYPT | Private messaging library |
| Chromosome | The password/key you use to encrypt |
| SHIO ownership | The gating proof that you're allowed |
| 10-day expiry | Auto-deletion after a fixed TTL |
What you actually do with it¶
- Encrypt a message addressed to a specific Soul using a Chromosome only you two know.
- Decrypt incoming messages where you're the target SHIO owner.
- Let old messages expire — no maintenance needed.
Rewards / costs¶
- Cost: gas for the encrypt transaction; storage paid by sender.
- Reward: none — it's a utility.
Requirements & gating¶
- You must own the SHIO you're encrypting from / decrypting with.
- Chromosome must meet minimum length (enforced;
ChromosomeLengtherror otherwise). - Total in-flight encryptions capped.
Where it connects¶
Uses SHIO for auth. Routes through ZHENG and VOID. Complementary to public QING chat — ENCRYPT is the DM layer.
Quick FAQ¶
Q: Is the message publicly readable on-chain? A: The ciphertext is public. The plaintext requires the Chromosome + SHIO ownership to decrypt. Treat it like PGP-on-chain.
Q: What happens after 10 days? A: The entry becomes invalid. Don't rely on ENCRYPT as permanent storage — it's for ephemeral DMs.
Q: Can I change my Chromosome? A: Per-message. Each encrypted message uses whatever Chromosome the sender chose for it.
Want the Solidity? The contract reference lives at
technical/docs/lib/ENCRYPT.md.