Your keys.
Your messages.
Your network.
An encrypted messenger where your EVM wallet is your identity. MLS protocol encryption over Nostr relays, powered by Etherlink. No accounts. No central server.
Features
Messaging without
compromises
Wallet = identity
Your Etherlink address is your identity. No email, no phone, no company owns your account. Connect your wallet and you exist.
MLS protocol encryption
Messaging Layer Security (NIP-EE) with forward secrecy and post-compromise security from day one. Keys rotate per epoch — past messages stay safe even if a key leaks.
Nostr relay transport
Messages travel over the Nostr relay network — battle-tested, censorship-resistant infrastructure. Offline delivery works out of the box. No custom servers needed.
Native XTZ transfers
Send XTZ directly in the conversation. No payment processor, no bank. A direct on-chain transaction confirmed on Etherlink.
Local-first storage
Messages live on your device in SQLite via OPFS. No cloud, no backup servers. Your plaintext history never leaves your device.
Tamper-proof messages
Relays never see plaintext — only encrypted NIP-EE events. Even if a relay is compromised, your messages remain unreadable.
How it works
Three steps to
sovereign messaging
01
Connect your wallet
Use any EVM wallet — MetaMask, Rabby, or any WalletConnect-compatible wallet. Your Etherlink address becomes your identity. A Nostr keypair is derived automatically.
Connected
0x1a2B...9cDe
02
Find contacts by address
Look up any Etherlink address. Their published profile carries a signed proof linking that wallet to their Nostr key — verified on your device. Add them and start an MLS session.
Alice
0xaB1...xY
Bob
0xcD3...zW
03
Chat encrypted
Messages are MLS-encrypted and published as NIP-EE events to Nostr relays. Send text or XTZ — relays never see plaintext.
Hey, sending you 5 ꜩ
10:32
Thanks! Got it
10:33
5 ꜩ sent · confirmed
Architecture
Relays carry ciphertext.
Only you hold the keys.
MLS encryption happens on your device. Nostr relays transport encrypted events. Your wallet signs the identity that ties it together — no central registry. Each layer is independent and replaceable.
Your device
EVM wallet · Nostr keys
MLS state machine (ts-mls)
SQLite via OPFS
NIP-EE events
MLS encrypted · Kind 443/444/445
Nostr relays
Store + forward
Etherlink
Wallet · XTZ transfers
Their device
EVM wallet · Nostr keys
MLS state machine (ts-mls)
Decrypts locally
What relays see
- • Encrypted NIP-EE event blobs
- • Nostr public keys & signed wallet links
- • Event timestamps and kind numbers
What relays never see
- ✗ Message content (MLS encrypted)
- ✗ Your private keys (wallet & Nostr)
- ✗ MLS session keys or group state
Privacy
Private by
design, not policy
Other apps promise not to read your messages. Sozet is built so nobody can.
| Sozet | Traditional | |
|---|---|---|
| Your identity | EVM wallet on Etherlink (you own it) | Email/phone (company owns it) |
| Message storage | Your device only (SQLite) | Company servers |
| Message transport | Nostr relays (encrypted blobs) | Company servers (plaintext access) |
| Who can read messages | Only you and your contact | Company, governments on request |
| Forward secrecy | MLS epoch key rotation from day 1 | Varies — often none or optional |
| Money transfers | Direct on-chain, no intermediary | Third-party payment processor |
| Relay compromise | Message content stays encrypted | Full message history exposed |
| Account deletion | No account to delete | Request and hope |
Roadmap
Toward fully
decentralized messaging
Today we minimize trust. Tomorrow, the network replaces servers entirely.
The messenger
- MLS encryption via NIP-EE (forward secrecy)
- Nostr relay transport (offline delivery)
- Etherlink-based identity (EVM wallet)
- 1-to-1 encrypted chat
- Native XTZ transfers in chat
Groups + devices
- Group encrypted chat (MLS scales natively)
- Multi-device (each device = MLS leaf node)
- ENS / domain name resolution
- Media/file sharing (encrypted on R2)
- NIP-59 gift wrapping for Welcome events
Ecosystem growth
- Own Nostr relay (strfry, NIP-42 auth)
- Etherlink mainnet deployment
- PWA + desktop app (Tauri)
- Open-source @sozet/* library extraction
The end goal: A messenger that combines the censorship resistance of Nostr, the encryption guarantees of MLS, and the identity sovereignty of Etherlink.
Powered by
Etherlink
Identity & transfers
MLS / NIP-EE
Forward-secret E2EE
Nostr
Relay transport layer
SQLite WASM
Local-first storage
wagmi / viem
Wallet connection
TypeScript
Strict, throughout
Take back your
conversations
Wallet-native, end-to-end encrypted, carried over Nostr relays — with native XTZ transfers on Etherlink. No relay can read what you say.