End-to-end encryption
ECDH P-256 for key exchange, HKDF-SHA256 for derivation, AES-256-GCM for messages. The server only ever sees encrypted bytes.
NORA → Node-based Onion Routing Architecture
No phone. No e-mail. No servers that "know" you. Just end-to-end encryption, your key, and a peer network that no one can switch off.
Cryptography, network and interface — built on a single principle: "trust math, not the server".
ECDH P-256 for key exchange, HKDF-SHA256 for derivation, AES-256-GCM for messages. The server only ever sees encrypted bytes.
Sign-up is an Ethereum wallet (BIP39 12 words). Only you know the seed phrase. The username is just a label and you can change it.
Nodes talk over a gossip protocol. Take one server down — the conversation never stops, the client migrates to the next one.
A REALITY tunnel disguises traffic as ordinary TLS to large sites. By SNI and shape it's indistinguishable from Microsoft.
The list of working nodes is published in a smart contract on Base. Nobody can "switch off" the directory — there isn't one.
12 SHA-256 groups for offline key verification. If there's a MITM on the other side, you'll see it without any blue checkmark.
WebRTC over ICE and our own TURN. If P2P fails — relay through your own nodes, no Google clouds.
The wallet lives inside the client. View ETH/USDC balances, send, receive — without leaving the app. One and the same key.
On Pixel 3+, Samsung S20+ (Knox Vault), OnePlus 8+, Xiaomi Mi 11+ and other StrongBox devices, NORA's master key lives inside a dedicated security chip. The key never leaves silicon — even root-level malware can't extract it.
Every layer can be checked independently: verifiable signatures on the client, a transparent node protocol, contracts on a public network. Everything we say about NORA can be checked by hand.
| Reading the conversation server-side | impossible |
| Substituting the peer's key | visible in UI |
| Selective SNI blocking | REALITY bypass |
| Seizing the "main" server | there isn't one |
| Disabling the node directory | on-chain |
| Full Internet shutdown | won't protect |
+3W9uil6TJuXORhAFhVU6hrSIUQsN+l6dDMrXRXYheY=
Our node's SPKI pin
The client picks its own route and quickly degrades to the next one if the channel is noisy or blocked.
Direct connection via ICE/STUN if NAT allows. Fastest, most private.
Layered encryption through 3 random nodes. None knows both ends of the conversation at once.
UDP/443, disguised as plain QUIC. Often gets through where TCP is already shaped.
Steal-handshake to a real domain (microsoft.com etc.). On the wire it looks like legitimate TLS.
A plain WebSocket-over-TLS to a node. The base channel when nothing needs to be circumvented.
NORA is not "an app and a server". It is Node-based Onion Routing Architecture: dozens of independent nodes raised by the community, with onion routing on top. The more people, the stronger the network.
No phone numbers, no e-mail, no "central" confirmation. The account is a key that stays on the device. The onion route splits "who" from "where to": no single node knows both ends of a conversation.
Each node is signed with its own ECDSA key and publishes a stake in the smart contract on Base. A fake node costs money and is visible to the whole world — mass-spawning fakes makes no economic sense.
Take one node down — the client migrates to the next one in 200 ms. Take ten down — nobody notices. There's no "main server" to take down: the directory lives in the blockchain.
The app has a "become a TURN node" toggle. If you have stable Internet and a desire to help, your phone or tablet starts taking relay traffic for other users' calls. No setup, all in the background.
Have a VPS? Install the NORA server software — it's open source, installs with one command, and works with the Base blockchain. After registering in the smart contract, your node automatically appears in every client's directory worldwide.
No phone number — no link to a SIM and a carrier. No e-mail — no link to Google/Apple. No "main server" that could hand over logs: records about you are spread across dozens of independent nodes, and the messages themselves are end-to-end encrypted. Your identity isn't given away even by the messenger itself: it doesn't know it.
Every copy of NORA has a full crypto wallet built in. The same key you use to sign in to the messenger holds your balance — without separate apps, without leaving for a browser, without ever handing the seed phrase to anyone.
Base
The network is built for mass usage: average fee is fractions of a cent, transfers arrive in 2 seconds.
No SMS confirmations, no profile registration "in the centre". Keys appear on the device and never leave it.
The app generates 12 BIP39 words, shows the secret, asks you to confirm — and forgets the plaintext. It's stored only encrypted in Keystore.
The wallet key is bound to a separate messaging key via personal_sign. It proves: the one who sends messages is the same one who owns the address.
The client pulls the directory from the contract on Base, picks a live node, and brings up an E2E session. From that second on, the server is no obstacle to encryption.
A public Android beta is available now. iOS is in the works.
We can't ask you to trust the download. Check it yourself — these never lie:
Confirms the file arrived intact and untampered. Compare it with nora.apk.sha256.
d6eb929baa5c2e26fe92bb9e15ba681231bedeba9d6a5477c5b2eb2c030cfdcb
sha256sum nora.apk
This is the strongest anchor: it stays the same across every future update. If an APK shows a different fingerprint, it is not from us — do not install it.
08:25:F9:EE:9A:48:0D:09:0D:F4:22:DF:7C:F4:8F:B6:C0:2F:F5:27:80:AC:06:D6:89:8F:BE:18:A3:D7:75:1A
apksigner verify --print-certs nora.apk
Yes. The account is your Ethereum address. No SMS, no link to a SIM. The username can be anything and changed any time.
If you saved the 12-word seed phrase, you can restore the account on any device. If you didn't — no one can help: we deliberately don't have that capability.
For one job only — publishing the list of live nodes. That can't be censored, revoked or lost. Messages are never written to the blockchain.
The messenger itself is free. Creating an account, conversations, voice and video calls, connecting to the node network — without a single coin in the wallet: none of that is written to the blockchain, no gas needed.
You'll only need ETH on the account in two cases:
Receiving ETH or USDC works with a completely empty wallet — the sender pays the fee. So someone receiving money for the first time can spend it right away — no "top up first".
Five transports: P2P → onion → QUIC → REALITY → direct TLS. The client tries them in order and caches the choice. REALITY is the most "invisible" layer — it disguises itself as a legitimate TLS handshake to large sites.
On top there's a volunteer VPN relay: users who already have a working VPN can flip a switch in the app and turn their device into a NORA TURN node. Their VPN tunnel becomes the "exit" to the open Internet, and other users — those without a VPN or whose VPN broke — get into the messenger through them. A live mutual-aid network: the more people enable the relay, the smaller the chance that blocks cut someone off.
The volunteer themselves see nothing but encrypted traffic — messages stay E2E, and their IP is exposed only to the NORA node, not to peers.
1:1 calls (voice/video) work via WebRTC + our TURN. Media and groups are on the roadmap and will arrive in the next releases.