Architecture Comparison · Updated 2026
What someone holding your unlocked phone can find.
Every serious messenger encrypts your messages while they travel across the network. Almost none of them ask what happens five seconds later — when the message lands on your phone and stays there.
Side-by-side mechanisms
Nine messengers compared at the moment of device seizure.
We do not claim other encrypted messengers have weak transport encryption — Signal, Threema, Session and SimpleX protect messages in transit very well. This table compares what exists on the phone itself when a device is seized unlocked, imaged in an After-First-Unlock (AFU) state, or handed over under pressure.
| Messenger | Phone number / email required | Chat history stored on phone | Unlocked phone = history readable? | Server / cloud exposure | Duress / panic wipe | Plausible deniability (multi-account) |
|---|---|---|---|---|---|---|
| zukka | None Disposable invites |
Zero (Stateless) Decrypted only on screen |
No No local history exists to read |
Ciphertext + half key only; server holds no means of decryption | Yes Panic password + Remote kill |
Unlimited PINs No "hidden folder" indicator |
| Signal | Phone number Mandatory SMS/SIM |
Yes Local SQLCipher DB ( signal.db) |
Yes DB key lives in OS Keystore on the same phone |
Transient relay; opt-in E2E backup (off by default) | No | No |
| Threema | None Random Threema ID |
Yes Local database on device |
Yes (by default) Default PIN "is simply a UI lock" (per Threema FAQ) unless opt-in passphrase set |
Deleted after delivery; Threema Safe backs up ID/contacts | No | No |
| Session | None Account ID |
Yes Local SQLCipher DB |
Yes Readable on unlocked device; published SQLCipher extraction guides exist |
14-day encrypted swarm storage for delivery | No | No |
| SimpleX Chat | None One-time links/QR |
Yes All contacts & messages stored on-device |
Yes (by default) Default DB passphrase is stored in OS Keychain unless custom passphrase enabled |
Transient relay queues only | Yes Self-destruct passcode |
Incognito profiles |
| Telegram | Phone number Mandatory SIM |
Yes Local cache + full cloud history |
Yes Plus SIM-swap / SMS login exposes entire cloud archive |
Standard chats not E2EE Server holds keys for default cloud chats |
No | No |
| Phone number Mandatory SIM |
Yes Local msgstore.db |
Yes Full local DB + media folder |
Cloud backups off-E2E by default iCloud/Drive readable via warrant unless E2E backup enabled |
No | Chat Lock only (Visible locked folder) |
|
| Element (Matrix) | Depends on server | Yes Local cache + keys on device |
Yes On-device keys unlock homeserver history |
Ciphertext & room metadata retained on homeserver | No | No |
| Viber | Phone number | Yes Local SQLite DB |
Yes | Cloud backup not E2EE by default | No | Hidden Chats PIN |
Facts verified as of 2026 from official documentation and published mobile forensics literature. See The Seizure Files for primary sources.
The industry blind spot
Why "everything stays on your device" is not the safety guarantee it sounds like.
For ten years, privacy apps have marketed the same slogan: "Messages disappear from our servers after delivery — everything stays on your device." That protects the company running the server. It does not protect the person holding the phone.
The key is taped to the safe
When an app encrypts its local SQLCipher database on your phone, where does it keep the key that unlocks that database? Inside the phone's own OS Keystore. Once the phone is unlocked (or in After-First-Unlock state), forensic tools extract both the database and its key from the same device.
Neither place should hold the whole
The real question isn't "device or server?" — it is "does any single place hold your complete, readable data?" In zukka, the answer is no. Your phone holds no history and only half a key. Our server holds ciphertext and the other half. Complete data exists only on your screen, while you look.
Cooperation without surrender
When someone with authority says "Unlock it," refusing often escalates the situation. Because zukka supports unlimited independent accounts behind different PINs — with zero visual indicator that more accounts exist — you can hand over a working PIN to an ordinary account.
Honest breakdown
Where each messenger shines — and where it stops.
Different threat models call for different tools. Here is an honest look at how each major messenger works compared to zukka.
zukka vs. Signal
Where Signal excels: Open-source protocol, gold-standard transport encryption, free for everyone, wide adoption.
Where Signal stops: Requires a phone number (linking your real-world SIM identity), and stores your entire chat archive in a local signal.db database on the phone. As Signal founder Moxie Marlinspike noted in December 2020 regarding Cellebrite, once someone holds an unlocked phone, reading local Signal messages requires no cryptographic break — the data is sitting right there. Signal also has no decoy accounts and no panic wipe.
zukka vs. Threema
Where Threema excels: Swiss jurisdiction, no phone number required, polished apps, deletes messages from servers immediately after delivery.
Where Threema stops: Because messages are deleted from the server after delivery, 100% of your history must live on your phone. Threema's own FAQ explicitly states that its default PIN lock "does not offer additional encryption; it is simply a UI lock." Furthermore, every contact you talk to must purchase their own license — whereas zukka's Circle plan lets one subscriber invite up to 30 guests for free.
zukka vs. Session & SimpleX Chat
Where Session & SimpleX excel: Strong metadata resistance (onion routing / unidirectional queues) and no phone number registration. SimpleX also offers a self-destruct passcode and incognito profiles.
Where they stop: Both are built around the "local-only" doctrine — storing every contact, group and message inside an on-device SQLite database whose default passphrase resides in the phone's own keystore. If your phone is lost, destroyed or seized without a manual backup file, your history is either exposed on the device or gone forever. In zukka, losing a phone never exposes your history and never loses your account.
zukka vs. Telegram & WhatsApp
Where Telegram & WhatsApp excel: Massive consumer reach — everyone is already there.
Where they stop: Both require a phone number, creating an instant spam and SIM-swap attack surface. Telegram's default cloud chats are not end-to-end encrypted (Telegram holds the decryption keys across its data centers). WhatsApp encrypts transit with the Signal protocol, but stores local msgstore.db archives on the phone and defaults to unencrypted cloud backups for users who haven't manually enabled E2EE backups.
The #1 technical question
"Wait — you keep my encrypted messages on a server? Isn't that worse?"
If we worked like Telegram — storing readable data or holding the keys on our servers — yes, it would be worse. Here is why zukka's server holds nothing usable, even if our entire database were dumped tomorrow.
Comparison FAQ
Questions people ask before switching.
If nothing is stored on my phone, what happens when I have no internet connection?
Without an internet connection, there is no stored archive on your phone to browse — at most, whatever conversation you already had open in memory while the app remained active. That is the honest trade-off of a stateless phone, and it is also the proof: if your phone could show you your full history offline, it could show it to whoever takes your phone in airplane mode (which is exactly how forensic labs inspect seized devices).
Why is Signal free while zukka requires a subscription?
When Signal, Threema or Session delivers a message to your phone, their server deletes it and their bandwidth cost ends. Because zukka keeps nothing on your phone, our servers store your encrypted ciphertext and re-deliver it every time you open a conversation. One delivery becomes thousands. You pay a transparent subscription (starting with a 30-day free trial, no card required) so we never run ads, never sell metadata, and never have to compromise your privacy to survive. And with the Circle plan ($19.99/mo), one subscriber covers up to 30 free guests.
What about metadata? Does zukka's server know who talks to whom?
First, zukka never knows who you are in the real world: there is no phone number, no email and no address-book upload. Second, we do not log or retain conversation routing logs, and raw connection IPs are purged within 30 days (retaining only a country code for abuse prevention). If your primary threat model is hiding network-level packet timing from a global passive adversary via onion routing, tools like Session or SimpleX focus heavily on that layer; if your threat model includes someone physically holding your unlocked phone, zukka is built specifically for that moment.
Try zukka free for 30 days
No phone number. No email. No credit card required to start your 30-day trial. Available on Google Play and as a direct APK for de-Googled Android.