Which messaging app actually protects you? A LINDDUN threat model breakdown

The CyberSec Guru

Most Secure Messaging Apps

If you like this post, then please share it:

Buy me A Coffee!

Support The CyberSec Guru’s Mission

🔐 Fuel the cybersecurity crusade by buying me a coffee! Why your support matters: Zero paywalls: Keep the main content 100% free for learners worldwide.

“Your coffee keeps the servers running and the knowledge flowing in our fight against cybercrime.”☕ Support My Work

Buy Me a Coffee Button

The word “secure” has been used so carelessly by messaging app marketing teams that it barely means anything anymore. WhatsApp calls itself secure. Telegram built an entire brand around being the rebel privacy app that governments supposedly fear. Even iMessage gets filed under “privacy-respecting” mostly because Apple has spent a decade telling you your iPhone is some kind of sanctuary.

None of that holds up once you look at the architecture. If you’ve ever picked a messaging app based on a company’s privacy page (or worse, their advertising), there’s a decent chance you picked wrong, and it’s not really your fault. The pages are written by marketing, not by the engineers who built the thing.

Most people evaluating messaging apps make the same mistake: they check for end-to-end encryption and stop there, as if that’s the only variable in the equation. It isn’t, not even close. Encryption protects the content of a message while it’s in transit. But the content is often the least interesting thing you produce. Who you talk to, how often, at what hours, from what location, over what network. That’s the stuff that maps your relationships and habits, sometimes your politics, sometimes your entire life. Encryption does nothing to hide any of it.

To evaluate this properly you need an actual framework, not a listicle and not a Reddit thread full of people who are very confident and mostly wrong. Something that treats privacy as a property of a whole system, with more than one attack surface, instead of a box that gets checked the moment a company mentions AES-256 in its FAQ.

That framework is called LINDDUN, and it’s what this whole piece is built around.

Why LINDDUN instead of STRIDE

If you’ve spent time in security work you’ve probably run into STRIDE, Microsoft’s threat modeling covering Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, and Elevation of Privilege. STRIDE is a systems security framework. It asks whether an attacker can break in, forge an identity, corrupt data, or knock a service offline. Those are good questions. They’re just not the questions that matter most for a messaging app.

LINDDUN Go
LINDDUN Go

LINDDUN was built at KU Leuven, a Belgian research university, specifically to model privacy threats instead of security threats. That distinction matters more than it sounds like it should, because the biggest privacy threat to most people isn’t a hacker breaking into WhatsApp’s servers. It’s WhatsApp itself, doing exactly what its business model wants it to do with the data you hand over voluntarily every time you send a message.

Both frameworks are built around data flow diagrams, mapping how information moves between users, processes, and stores. STRIDE walks that diagram asking where an outside attacker could compromise the system. LINDDUN walks the same kind of diagram asking a colder question: even if nobody breaks in, even if every actor behaves exactly as designed, what does the system reveal about the people using it?

The seven LINDDUN categories, in plain terms:

Linkability is whether an observer can connect separate pieces of data about you, across sessions, across devices, across contexts, into a single behavioral profile. An app that logs who you message and how often can feed that pattern into a bigger data ecosystem, correlating it with your browsing habits, your IP-based location, your purchase history if the company runs an ad business on the side.

📬 Stay Ahead of Cyber Threats

Get the latest cybersecurity news, critical vulnerabilities, threat intelligence, tutorials, and exclusive giveaways delivered straight to your inbox. No spam. Unsubscribe anytime.

Subscribe to the Newsletter →

Identifiability is whether your real identity, your name, your phone number, a government ID, your face, can be tied back to your account or your activity. A phone number requirement doesn’t look like a privacy problem until you remember that in most countries, phone numbers are linked to a government ID through mandatory SIM registration.

Non-repudiation covers whether you can plausibly deny sending a message, owning an account, or using a service at all. In places where owning the wrong app can get you charged with a crime or worse, the ability to deny you were ever there isn’t paranoia. It’s a survival tool.

Detectability is whether a passive observer, your ISP, a network admin at your office, a national surveillance system, can tell that you’re using a particular app even without reading a single message. Traffic analysis can reveal which service you’re connecting to just from port patterns, timing, and packet size, no decryption required.

Data disclosure covers both the obvious case (a breach) and the less obvious one (a company that just collects too much by design). If an app stores everything centrally, it’s one subpoena or one bad breach away from exposing every conversation you’ve ever had, no matter how strong its transport encryption is.

Unawareness is whether users understand what’s happening to their data. Buried consent toggles, privacy dashboards designed to confuse rather than inform, and the gap between what a privacy policy technically permits and what a reasonable person walks away believing after reading the marketing.

Non-compliance is whether the organization follows the data protection law it claims to follow, and whether its business model creates a structural incentive to bend that law even while claiming compliance.

How the scoring works

Each of the seven categories gets evaluated across three separate vectors, because a single “does this app protect linkability, yes or no” answer flattens too much useful detail.

The account vector looks at what happens before you send your first message. What does registration require? A phone number isn’t just an identifier, it’s a KYC anchor. In most countries your SIM is registered to a legal identity, so requiring a phone number for a messaging account is functionally the same as requiring proof of who you are.

The usage vector covers day-to-day operation. Does the app leak your IP to other users or to the server? Does the provider know when you’re online, who you’re talking to, how often? Can anyone with your phone number check whether you have an account, whether you want them to or not?

The service vector looks at what the provider stores, how long they keep it, and what their business model actually rewards them for doing with it. A company funded by advertising has a structural reason to collect as much as it can. A company funded by donations or a one-time purchase price doesn’t have that reason built into its revenue.

Each vector in each category scores +1 if it mitigates the threat, 0 if it’s neutral, or -1 if it actively makes the threat worse. Three vectors times seven categories gives a possible range from +21 down to -21.

Here’s what that looks like worked through on a real example. Take WhatsApp and the linkability category. Account vector: -1, because your WhatsApp account is tied into the broader Meta identity graph the moment you sign up. Usage vector: -1, because your contact and messaging patterns feed into Meta’s cross-app analytics by their own stated policy. Service vector: -1, because the entire business model runs on being able to link behavioral data across products. That’s a -3 for linkability alone, and it’s a big part of why WhatsApp ends up so far down the list despite having genuinely strong message encryption under the hood.

Where this framework runs into its own limits

I don’t think it’s honest to present a scoring system like this as if it’s beyond argument, so let me flag the weak points before we get into the results.

LINDDUN treats all seven categories as equally weighted, which they’re not for most people. A journalist protecting a source care enormously about non-repudiation and barely at all about whether an ad network can guess their shopping habits. A parent trying to get grandma off SMS doesn’t care about any of that in the abstract. What matters to them is whether the app is easy enough that grandma will use it. The scorecard below is a reasonable default ordering, not a universal ranking that applies the same way to every threat model.

The framework also doesn’t account for adversary capability. A -1 on detectability against a curious coworker on the same Wi-Fi network is a very different thing than a -1 against a national intelligence service with a standing relationship to every major telecom in the country. LINDDUN scores the presence of a threat, not the resources of whoever might exploit it.

And this is a snapshot. Apps change their architecture, get acquired, get audited, get subpoenaed, get raided by a foreign government. A score I write down in July 2026 is accurate as of July 2026. Anyone reading this in a year should go verify the current state of whatever app they’re relying on rather than trusting a table frozen in time.

With those caveats on the table, here’s how the threats break down app by app.

Threat 1: Linkability

This is the threat most “secure” apps ignore completely, because fixing it usually means refusing to build the exact features that make an app convenient and, not coincidentally, profitable.

Linkability is how you end up as a row in an advertising database. WhatsApp is owned by Meta, and Meta says plainly in its own privacy policy that it uses information across its products together. That means your WhatsApp contact list and your message frequency can shape what shows up in your Instagram feed. The message content is encrypted. The behavioral shell around it is not, and that shell is where most of the commercially useful data lives.

Facebook Messenger is worse on this front. For years it didn’t use end-to-end encryption for regular chats at all, so behavioral collection happened at every layer, not just the metadata layer. Viber, technically a standalone app but one that also runs a marketplace and an ad platform, does similar tracking. For apps like these, linkability isn’t a bug the engineers missed. It’s a product decision.

Signal handles this better, though not perfectly. Running as a nonprofit removes the financial incentive to build a behavioral profile in the first place. But accounts are still tied to phone numbers, and a well-resourced attacker who already knows your number can, in theory, correlate your cellular identity with your network activity if they have access to carrier-level metadata. That’s not a hypothetical. It’s exactly the kind of correlation intelligence agencies with carrier access are built to do.

Threema removes the phone number from the equation entirely if you set it up that way. On Android you can grab the APK straight from Threema’s site and pay in Bitcoin, which means there’s no financial record tying a real name to the account. Combine that with no phone number requirement and most linkability paths close off. The catch is that Threema still routes messages through its own servers, so the server operator can see that a Threema user at your IP talked to another Threema user at a given timestamp, even without reading a single word of what was said.

Session routes traffic through the Oxen Service Node Network, a distributed set of operator-run nodes doing onion routing, conceptually close to Tor but younger, smaller, and far less audited. Three-hop routing means no single node knows both who you are and who you’re talking to. SimpleX Chat goes a step further and removes user identifiers from the protocol entirely, which we’ll get into properly later.

Briar and Cwtch do something none of the mainstream apps come close to matching. They route everything through Tor, which makes behavioral linkability analysis close to impossible at the network layer. Tor runs on more than six thousand volunteer-operated relays worldwide. Traffic is layered in encryption and bounced through three randomly chosen relays, each of which only knows the hop before and the hop after it. Someone watching your connection can tell you’re using Tor. They cannot tell whether that’s Briar, a news site, or any other Tor-reachable service.

Linkability
Linkability

Threat 2: Identifiability

Requiring a phone number to sign up for a messaging app has become so normal that most people don’t clock it as a privacy issue at all. It should register as one.

Countries with mandatory SIM registration, which covers most of the world including the US, the EU, India, and nearly all of Southeast Asia, tie your phone number to a government ID. So when an app requires a phone number, it’s effectively requiring proof of legal identity, and when that number sits on a central server, as it does with Signal, WhatsApp, and Telegram, the provider becomes a third party holding the link between your legal identity and your account.

This has real consequences. Signal, despite genuinely strong encryption and a real commitment to minimizing what it stores, has been subpoenaed by US federal grand juries more than once. The court filings from those cases are public, and Signal’s actual response, essentially just an account creation date and a last login timestamp, is about as thin as a response can get. But they do retain the phone number, because their contact discovery system structurally needs it.

WhatsApp, iMessage, and Facebook Messenger keep far more. Full contact lists, every device tied to your account, profile photo history, group memberships, and in WhatsApp’s case your name and status history over time. Discord goes further still, since it started life as a gaming voice chat tool and still collects gaming activity, mutual server memberships, and behavioral data across the platform, all attached to a persistent identity.

Threema sits at the other end. On first launch it generates a random eight-character Threema ID. No phone number, no email, no name required. You can optionally link a number or email so contacts can find you, but that link is stored as a one-way hash, meaning Threema can’t reverse it back into your actual number even if they wanted to.

Session works similarly. On install, the app generates a public and private key pair locally on your device. Your Session ID comes from that public key. There’s no registration form, nothing sent to a server during setup. You physically cannot hand Session your phone number even if you tried, because there’s nowhere for it to go.

SimpleX Chat skips the concept of a user identifier entirely. There’s no account receiving messages. Instead you get a set of one-time invitation links, each opening a unique communication queue. It’s a genuinely different model from anything else on this list, and it’s worth its own section later.

Briar and Cwtch take the most extreme position of the group. Your identity is a Tor hidden service address, an onion address derived from a key pair stored on your device. You never register it anywhere. You hand it directly to whoever you want to talk to, and it’s only reachable while the app is open and connected to Tor. Close the app and you’re unreachable by definition, because the hidden service goes offline with it.

Identifiability
Identifiability

Threat 3: Non-repudiation

Non-repudiation is about whether someone, a government, a hostile actor, law enforcement, can prove with confidence that you own a specific account or sent a specific message. In places where encryption itself is treated with suspicion, or where owning the wrong app is used as evidence of criminal intent, this matters a great deal.

SMS and RCS are the worst case by a wide margin. Every SMS gets logged by your carrier with the full sender and recipient numbers, the timestamp, the length, and carriers routinely hold that data for years and hand it over to law enforcement as a matter of course. RCS, Google’s SMS replacement, stores message history in Google’s infrastructure by default, creating a durable, third-party-held log of everything you’ve ever sent.

Telegram deserves a closer look here, because its reputation and its architecture pull in opposite directions. A large chunk of Telegram’s user base genuinely believes it’s the private option. Regular Telegram chats aren’t end-to-end encrypted at all. They’re encrypted in transit and then stored in decrypted form on Telegram’s own servers. In 2024, founder Pavel Durov was arrested in France and subsequently agreed to hand user data over to authorities investigating criminal activity on the platform. Whatever you make of the circumstances, that’s a concrete, documented answer to the question of what Telegram will do under legal pressure, and it doesn’t match the brand.

Signal does better here but isn’t perfect. Because a Signal account is cryptographically tied to a phone number, and that link lives on Signal’s servers, anyone with the ability to query the service, or access to server logs, can confirm with certainty that a given number has an active Signal account. Governments make these queries. In some threat models, simply being confirmed as a Signal user is enough to draw unwanted attention.

Wire lets you register with an email instead of a phone number, and email is generally easier to acquire anonymously, depending on the provider you use. That cuts the identifiability link somewhat without removing it entirely.

Threema, Session, and SimpleX resist this threat well, mostly because there’s no phone number sitting on any server to confirm in the first place. If you’re running Session on a device that hasn’t been physically seized, there’s no server record connecting you to that Session ID, and you can plausibly deny it belongs to you.

Briar and Cwtch push this to its logical extreme. There’s no central server to subpoena and no account records to produce. Your social graph and message history exist only on the physical devices in the conversation. A court order sent to Briar’s developers, a small volunteer team rather than a company, couldn’t produce your data even under full cooperation, because the data simply isn’t in their possession.

Non-repudiation
Non-repudiation

Threat 4: Detectability

Network-level surveillance, whether run by an intelligence agency, an authoritarian government, or an employer, doesn’t always need to read your messages to build a useful picture of you. It needs to know which services you connect to, how often, and from where. That’s traffic analysis, one of the oldest tricks in signals intelligence.

Most messaging apps have a distinctive traffic fingerprint. WhatsApp holds persistent connections to specific Meta server ports. Signal talks to Amazon Web Services infrastructure. Telegram connects to its own server clusters. Someone watching your traffic at the ISP or national level can match these patterns against known signatures and identify which services you’re using with high confidence, without ever cracking the encryption itself.

Signal has an extra wrinkle here beyond raw traffic analysis. Its contact discovery feature, which tells you which of your phone contacts are on Signal, is deliberately built to be discoverable. If an agency has your phone number and queries Signal’s contact discovery API, they can confirm you have an active account within seconds. Signal has worked to soften this using Private Set Intersection techniques, but the underlying tension between “let people find their friends” and “resist detection” doesn’t fully go away while phone numbers remain the core identifier.

Session tries to address this through the Oxen network, which does provide some metadata obfuscation as traffic passes through multiple nodes. The honest caveat is that Oxen is a few thousand nodes compared to Tor’s six thousand plus, and it hasn’t been through anywhere near the same volume of academic scrutiny or adversarial testing. It’s better than a direct connection. It’s not at Tor’s level.

SimpleX Chat’s relay servers only see encrypted traffic moving between temporary queues and don’t know who’s talking to whom. But that traffic is still routable to identifiable SimpleX relay infrastructure, so a network observer can tell you’re using SimpleX even without knowing who you’re talking to or what you’re saying.

Briar and Cwtch change the picture entirely by routing everything through Tor. An ISP watching your connection sees you talking to Tor entry nodes and nothing more specific than that. It can’t distinguish Briar traffic from Cwtch traffic from someone browsing the news through Tor Browser. In places where Tor usage itself draws suspicion that’s a real tradeoff, but as far as identifying the specific app in use, Tor is currently the strongest layer available.

Briar has one more trick worth calling out on its own: when internet access is unavailable or blocked, it can fall back to Bluetooth and local Wi-Fi mesh networking, connecting device to device with no internet connection required at all. It stays functional during internet shutdowns, the kind used during protests in Iran, Ethiopia, and Myanmar. No other app in this comparison offers anything close.

Detectability
Detectability

Threat 5: Data disclosure

Default end-to-end encryption is the one place where mainstream apps have genuinely improved over the last decade, largely because the Snowden disclosures in 2013 built enough public pressure that even the biggest players had to respond. But how well each one implements it varies enormously.

SMS has no encryption at all. Your carrier sees everything, and interception through IMSI catchers or straightforward carrier data requests is a routine part of law enforcement’s operating environment, not an edge case.

Telegram is worth another look here because the gap between reputation and architecture is so wide. What Telegram calls “Secret Chats” are genuinely end-to-end encrypted using its own MTProto protocol, but they’re opt-in and limited to one-on-one conversations. Every group chat, channel post, and regular one-on-one conversation runs through Telegram’s standard cloud chats, encrypted only in transit and then stored decrypted on Telegram’s servers. That means Telegram holds the decryption keys for the overwhelming majority of what gets sent through it. A server breach, an insider with access, or a legal order can expose those messages in plaintext. The app millions of people treat as the private alternative to WhatsApp is, on its core encryption architecture, less private than WhatsApp.

Discord stores text messages in plaintext on its servers as well. Voice and video get some encryption, but text chat, the actual main use case for most Discord users, is fully readable on Discord’s own infrastructure, and its terms of service explicitly allow content scanning for moderation.

iMessage is a partial case. Messages between two Apple devices using iMessage are end-to-end encrypted. But iCloud backup, enabled by default for most users, uploads the encryption keys right alongside the message content to Apple’s servers, which effectively cancels out the end-to-end guarantee unless you’ve specifically turned iCloud backup off. Law enforcement has obtained iMessage history through iCloud backup requests that Apple complied with.

WhatsApp uses the Signal Protocol, the same open-source protocol Signal itself runs on, applied by default across all message types, and the content encryption genuinely holds up. Until fairly recently though, WhatsApp’s backups to Google Drive or iCloud weren’t end-to-end encrypted at all. Meta eventually added an encrypted backup option, but it’s opt-in, meaning most users still have an unencrypted copy of their entire message history sitting on a third-party cloud server without realizing it.

Signal, Session, and Threema all default to always-on end-to-end encryption for every message type. Signal uses its own Signal Protocol, open source and heavily audited by independent researchers over many years. Session uses a modified version of the same protocol with the phone number and central server dependencies stripped out. Threema runs its own implementation, also open source and independently audited.

The Threema audit history is worth sitting with for a second. In 2023, researchers at ETH Zurich published a cryptographic analysis of Threema’s protocol and found real vulnerabilities in the version running at the time. Threema had already been rolling out a new protocol version called Ibex before the paper came out, and it addressed most of what the researchers flagged. I like this episode specifically because it shows the system working the way it’s supposed to. Open code, independent researchers, public disclosure, a fix. Closed-source encryption can’t offer that kind of accountability, because nobody outside the company can check the work.

Data Disclosure
Data Disclosure

Threat 6: Unawareness

The gap between what a privacy policy technically allows and what a person reading the marketing would reasonably assume is where a lot of the real damage happens. This isn’t an accident. It’s a design choice, and usually a profitable one.

Apple’s “What happens on your iPhone, stays on your iPhone” campaign built a strong public belief that Apple devices are privacy sandboxes. That belief took a hit in 2022 when researcher Tommy Mysk published findings showing Apple’s own first-party apps were sending detailed telemetry to Apple’s servers even after users had turned analytics sharing off in settings. A class-action lawsuit followed. Whatever the fine print technically allowed, the marketing had set an expectation the product didn’t meet.

Meta’s GDPR record tells a similar story on a bigger scale. Irish and EU regulators have fined Meta multiple times, for illegally transferring European user data to US servers, for dark patterns designed to push users into accepting data collection, and for processing personal data without a legal basis to do so. These aren’t edge cases sitting at the margins of the business. They’re close to the core of how Meta’s data operation runs, and regulators have repeatedly found the operation unlawful as run.

Telegram’s privacy claims fall apart most visibly because of the 2024 events around its founder. Durov’s arrest and Telegram’s subsequent cooperation with French authorities made it clear that the company’s infrastructure, staff, and legal entity are all reachable by European law enforcement, and that Telegram will cooperate under enough pressure. Users who believed they were operating outside the reach of any government were working from a premise the company had done little to correct.

Signal’s transparency practices are a genuine outlier in a good direction. It publishes a transparency report listing every legal demand it’s received and how it responded. Because it retains almost nothing, most of those responses are close to empty, an account creation date and a last connection timestamp. Signal has also fought legal demands in court directly. In 2016 it received a grand jury subpoena along with a gag order, challenged the gag order, and won the right to talk about it publicly. That fight is a matter of public record.

Threema publishes similar reports and, by design, has very little to hand over when demands come in, since its servers don’t store message content, contact lists, or metadata about who talks to whom.

Briar and Cwtch have a structural answer here that no transparency report can really compete with: data that was never collected can’t be disclosed, compelled, or breached. Both are volunteer-run open source projects with no company behind them, no investors to answer to, no ad revenue at stake. The code is public and anyone can go read it.

Unawareness
Unawareness

Threat 7: Non-compliance

Following data protection law is both a baseline and a signal. An organization that keeps running into GDPR or CCPA enforcement is telling you something about its actual relationship to user data, not just an occasional lapse in paperwork but a business built around pushing collection as far as it can get away with.

Meta has the longest enforcement record of any company in this comparison. GDPR fines alone add up to more than a billion euros across separate investigations, and the pattern in nearly all of them is the same: the business model depends on maximizing cross-service data linkage, and the company has consistently pushed the legal limits of what that requires, correcting course mostly when a regulator forces it to.

Google’s practices across its product ecosystem, which includes the Android operating system most messaging apps run on, follow a related pattern. Google isn’t a messaging app company in the direct sense, but the baseline device-level data collection Android performs shapes the privacy of every app installed on top of it, including the ones that are otherwise well designed.

Signal is structured as a nonprofit foundation, which changes the incentives in a real way. No shareholders means no one for whom data collection creates direct financial value. Revenue comes from donations, and the stated mission is private communication rather than data acquisition.

Briar and Cwtch are volunteer open source projects, not companies in any conventional sense. That changes the compliance picture entirely, not because compliance doesn’t matter, but because the problems GDPR and similar laws exist to address don’t really arise when there’s no central server collecting data, no company holding user information, and no commercial transaction happening at all.

Non-compliance
Non-compliance

The full scorecard

RankAppScoreVerdict
1Cwtch+21Zero compromise
2Briar+21Zero compromise
3SimpleX Chat+11High privacy
4Threema+9Strong privacy
5Session+8Strong privacy
6Signal+7Pragmatic standard
7Wire+4Moderate
8Matrix+3Moderate
9iMessage-7Poor
10WhatsApp-11Avoid for sensitive use
11Viber-13Avoid
12Telegram-14Avoid despite reputation
13Discord-15Public chats only
14RCS / SMS-21Zero protection

Breaking the score down by category

A single number hides where an app earns or loses its points, so here’s the same ranking split across the seven categories. Each category runs from -3 (fails on every vector) to +3 (mitigates every vector). Read this as a rough illustration of where the strengths and weak points sit, not a certified audit result.

Top tier:

CategoryCwtchBriarSimpleXThreemaSessionSignalWire
Linkability+3+3+3+1+2+20
Identifiability+3+3+3+3+3-1+1
Non-repudiation+3+3+3+3+300
Detectability+3+3+1-1+1-1-1
Data disclosure+3+3+3+3+2+3+2
Unawareness+3+30+10+3+1
Non-compliance+3+3-2-1-3+1+1
Total+21+21+11+9+8+7+4

Bottom tier:

CategoryMatrixiMessageWhatsAppViberTelegramDiscordRCS/SMS
Linkability0-1-3-3-2-2-3
Identifiability-1-1-2-2-2-2-3
Non-repudiation0-1-1-2-3-2-3
Detectability-1-1-1-1-1-1-3
Data disclosure+2-2-1-2-3-3-3
Unawareness+1-2-2-2-2-2-3
Non-compliance+2+1-1-1-1-3-3
Total+3-7-11-13-14-15-21

A few things jump out once it’s laid out this way. Signal’s identifiability score is its single worst category, and it’s dragging an otherwise strong app down by four points on its own, all because of the phone number requirement. Matrix beats iMessage and WhatsApp on non-compliance, because a self-hosted, federated, open protocol simply doesn’t create the same kind of centralized liability that a single company managing billions of accounts does. And RCS/SMS is the only entry on the list with a clean sweep of -3 across every category, which tells you it’s not really a messaging app in the privacy sense at all. It’s a telecom feature built decades before anyone was thinking about this problem in the first place.

App by app: how they work

Briar and Cwtch

These two share the same core design decision, no central servers, but split in what they’re built to do.

Briar is mostly a one-on-one and small group messaging tool. Adding a contact means exchanging Tor hidden service addresses. From that point on, messages travel directly between your two devices over Tor with no server in the middle at all. When you’re offline, nobody can send you a message, because there’s no server to hold it for you. Come back online and your hidden service spins up, and any queued messages from contacts get delivered.

Briar Logo
Briar Logo

That direct-delivery model creates something that looks like a missing feature but is a deliberate choice: Briar can’t tell you whether a contact is online right now. The little green presence dot everyone’s used to is, from a privacy standpoint, a surveillance feature, and Briar just doesn’t include it.

Cwtch runs on the same Tor-based peer-to-peer model but leans toward group conversations with a more extensible architecture underneath. It’s built with activist organizations, journalist networks, and similar groups in mind, people who need to talk without any of them having to trust a central server.

Cwtch Logo
Cwtch Logo

Briar’s mesh networking deserves more than a passing mention. When two people running Briar come within Bluetooth range of each other, or land on the same local Wi-Fi network, the app can detect the other instance and swap messages with zero internet connection involved. That creates a local mesh capable of moving messages across a chain of devices even during a full internet blackout. During the 2019 Hong Kong protests, demand for Briar spiked specifically because of this feature. People wanted a way to communicate that would survive the network being shut off entirely.

SimpleX Chat

SimpleX is doing something totally different at the protocol level. Let’s understand it.

SimpleX Chat
SimpleX Chat

Every other app on this list gives you an account with an identifier attached, a phone number, an email, a username, a random ID like Threema’s. Someone sends a message to that identifier. It sticks around as long as the account exists, and if anyone learns it, they can try contacting you, and if they can tie it to other data, they can build a profile around you.

SimpleX skips user identifiers altogether. Starting a conversation means creating a one-time invitation link, a QR code or a URL, pointing to a temporary message queue on a SimpleX relay server. Your contact scans it, and SimpleX sets up a two-way connection using two separate one-directional queues, one for messages you send, one for messages you receive, sitting on different relay servers by default. The relay handling your inbound messages can’t see your outbound ones. Neither relay knows who’s actually talking to whom.

Once the connection is live, you can rotate the queue addresses, effectively moving the conversation to fresh relay servers. If one relay gets compromised, the ongoing conversation isn’t exposed, because the relay only ever held encrypted messages in a queue with a short lifespan to begin with.

From a metadata standpoint, a SimpleX relay just sees encrypted data landing in queue addresses. It doesn’t know whose queue it is, who sent it, or who’s going to pick it up. There’s no social graph stored anywhere on SimpleX’s infrastructure, because the infrastructure is stateless queues with no tie to any account identity at all.

The tradeoff is real. SimpleX is harder to explain to a non-technical contact and has a much smaller user base than Signal. But for people who understand what the extra friction is buying them, the privacy properties here are genuinely ahead of anything else built for daily, active use.

Threema

Threema is what I’d point anyone toward if they want strong anonymity and don’t mind paying for it. The one-time purchase price, around five dollars on Android, four on iOS, is a feature, not a barrier. It removes the ad-funded business model entirely from the equation.

Threema Logo
Threema Logo

The random Threema ID system means the company genuinely doesn’t know who most of its users are. You can link a phone number or email to become discoverable, but even then Threema only stores a one-way hash of that number, not the number itself. If Threema got subpoenaed for your account records, the answer would be a Threema ID, a public key, and a last login date. Nothing else to hand over.

Threema’s servers process messages only long enough to deliver them, and once a message reaches the recipient’s device, it’s deleted from Threema’s side. Message history lives only on your device. If your device isn’t physically compromised, nobody else can get at your history.

The company is headquartered in Switzerland, where data protection law is somewhat friendlier to resisting foreign law enforcement requests than US law is. Swiss courts have to be involved in processing requests from other countries, which adds a procedural layer that US-based services simply don’t have.

The audit history matters here too. The 2023 ETH Zurich analysis found real vulnerabilities in the protocol running at the time. Threema’s response was to accelerate rollout of its new Ibex protocol, and the researchers subsequently confirmed it addressed what they’d flagged. The whole episode is a good example of the system doing what it’s supposed to: independent researchers, open code, public disclosure, an actual fix.

Session

Session’s defining feature is the Oxen Service Node Network, and it’s worth understanding both what it does well and where its edges are.

Session Logo
Session Logo

Oxen is a distributed set of nodes, each staked with cryptocurrency to create an economic cost for misbehaving. Messages route through three nodes in sequence using an onion-style encryption scheme similar to Tor. The first node knows who you are but not your destination or your message content. The last node knows the destination but not you. The middle node knows neither. No single node holds the full picture.

That’s a solid design on paper. The concern is scale and how deeply it’s been tested. Tor has been running since 2002, has tens of thousands of volunteer relays, has absorbed decades of academic scrutiny, and has survived active attacks from intelligence agencies over that entire period. The successful attacks against it are documented, and the network has adapted around them. The threat model is genuinely well understood at this point.

Oxen is younger, smaller, with a much thinner record of independent audits and adversarial testing. That doesn’t mean it’s broken. It means the confidence interval around its claims is wider. For most people in most threat environments, Session is a genuinely good choice. For anyone facing a nation-state adversary capable of large-scale traffic correlation, a Tor-based tool offers a more established track record.

Session’s asynchronous delivery is worth a mention too. Unlike Briar, it doesn’t need both people online at the same time. Messages sit in the Oxen network until the recipient comes back online, which makes Session feel a lot like a normal messaging app while still holding onto strong metadata protection underneath.

Signal

Signal sits at a real inflection point in this whole comparison. For the huge population of people who need private communication but can’t realistically get everyone in their life onto Threema or SimpleX, Signal is the right call. The Signal Protocol is the gold standard for encrypted messaging, offering forward secrecy, meaning past messages stay safe even if your keys get compromised later, and break-in recovery, meaning future messages become safe again once a compromise ends. Most encryption implementations don’t manage both of these properties, and Signal does.

Signal’s record on fighting surveillance is real and well documented. It’s challenged gag orders, published transparency reports going back to 2015, and made architectural choices, like not storing message metadata server-side, that shrink its exposure to legal demands even when those demands are lawfully compelled.

Signal Logo
Signal Logo

The phone number requirement is the single thing keeping Signal from scoring higher, and it’s worth taking seriously why they made that call rather than dismissing it. Phone numbers create a natural discovery mechanism that lowers the barrier to adoption, and a bigger encrypted messaging population is genuinely valuable from a societal standpoint. From a pure privacy angle, it’s a real compromise. From an adoption standpoint, it’s probably the correct tradeoff for the specific role Signal is trying to fill.

Signal has since added usernames, so you can share a username instead of a phone number with new contacts, and your number is no longer visible to contacts by default. But it’s still required at registration and still sits on Signal’s servers, where it can be produced in response to a legal demand, however minimal that response ends up being.

Wire

Wire doesn’t come up as often in these comparisons, which is a little unfair given where it lands. It’s a Swiss-based service using its own end-to-end encryption protocol, originally Proteus and more recently a shift toward the newer MLS standard, and it allows registration with an email address instead of a phone number, which meaningfully weakens the identifiability link compared to Signal or WhatsApp.

Wire Logo
Wire Logo

Wire was originally built with a business and enterprise audience in mind as much as individual consumers, and that shows in both directions. On one hand, it means a more mature approach to compliance and legal process than most consumer-first apps bother with. On the other, it means the individual consumer product has gotten less attention over time than the enterprise offering, and it hasn’t been through the same volume of independent security research that Signal or Threema have.

Wire’s biggest weakness on this scorecard is detectability. Its traffic is identifiable through its own dedicated server infrastructure the same way Signal’s or WhatsApp’s is, so it doesn’t offer anything close to Tor-level protection against a network-level observer. What it does offer is a real, workable middle ground for people who want better identifiability protection than a phone number requirement gives them, without taking on the friction of SimpleX or Threema.

Matrix

Matrix isn’t really a single app, it’s an open, federated protocol, closer in spirit to email than to something like Signal. Anyone can run a Matrix homeserver, and users on different homeservers can talk to each other the way people on different email providers can. Element is the most widely used client, but it’s one implementation among several.

Matrix Logo
Matrix Logo

That federation is exactly why Matrix scores where it does. If you self-host your own homeserver, you genuinely control your own data, and nobody outside your organization has to be trusted with anything. Several governments have gone this route for exactly that reason. Both the French government’s Tchap messenger and the German armed forces’ BwMessenger are built on Matrix specifically because it lets them keep official communications on infrastructure they control rather than handing it to a foreign company.

The catch is that most individual users aren’t self-hosting. They’re on the public matrix.org homeserver, which reintroduces a lot of the centralization Matrix is theoretically designed to avoid. End-to-end encryption is available per room but isn’t always turned on by default depending on the client and room settings, and Matrix’s encryption UX has historically confused enough users that misconfigured, unencrypted rooms aren’t rare. The protocol’s ceiling is genuinely high. Where any specific user lands on that ceiling depends heavily on how they’ve set it up.

iMessage

iMessage benefits from one of the most effective privacy marketing campaigns of the last decade, and it’s worth separating the marketing from the actual architecture.

iMessage
iMessage

Device-to-device iMessage traffic between two Apple devices is end-to-end encrypted, and that part is real. The problem is what happens around it. iCloud backup is on by default for most users, and it uploads the encryption keys right alongside the backed-up message content, which quietly cancels out the end-to-end guarantee for the majority of the user base, since almost nobody goes digging through settings to turn that off. Law enforcement has successfully obtained iMessage history through iCloud backup requests that Apple complied with, which tells you the theoretical protection and the practical protection are two different things for most accounts.

Add to that the Tommy Mysk telemetry findings from 2022, showing Apple’s first-party apps still phoning home with usage data even after users disabled analytics sharing, and you get a company whose privacy marketing has consistently run ahead of what its actual products deliver. iMessage isn’t a bad app in absolute terms. It’s a mediocre one wearing a much better reputation than it’s earned.

WhatsApp

WhatsApp is the app most people think of first when they think “private messaging,” largely on the strength of using the Signal Protocol for message encryption, which is a genuine, real technical strength. The content encryption holds up under scrutiny.

WhatsApp Logo
WhatsApp Logo

Everything around that encryption is where it falls apart. Meta acquired WhatsApp in 2014, and the account is now woven into the same identity graph as Instagram and Facebook. Meta’s own policy states plainly that data is used across products together, which means your contact list and messaging patterns can shape what you see elsewhere in Meta’s ecosystem even though the message text itself stays private. For years, WhatsApp’s Google Drive and iCloud backups weren’t end-to-end encrypted either, meaning an unencrypted copy of your message history quietly existed on a third-party server for most users by default. Meta eventually added an opt-in encrypted backup option, which is progress, but opt-in features people don’t know exist don’t do much for the population as a whole.

Viber

Viber Logo
Viber Logo

Viber gets less attention in these comparisons than it probably deserves, mostly because it’s not run by Meta and doesn’t attract the same scrutiny. It’s owned by Rakuten, and beyond messaging it runs an ad platform and a marketplace, both of which create the same structural incentive toward behavioral tracking that sinks WhatsApp’s linkability score. End-to-end encryption isn’t consistently applied across every chat type, particularly in group conversations, leaving real gaps in data disclosure protection. There isn’t much of a public conversation around Viber’s privacy practices at all, which itself is a kind of unawareness problem: a lot of users simply haven’t had the chance to learn what they’re trading away.

Telegram

Telegram Logo
Telegram Logo

Telegram earns its own extended treatment above because the gap between its reputation and its actual behavior is the widest of any app on this list. It’s worth restating the core problem plainly: the vast majority of what gets sent through Telegram, every group chat, every channel, every default one-on-one conversation, sits decrypted on Telegram’s own servers. The genuinely encrypted Secret Chats feature exists, but it’s opt-in, one-on-one only, and most users have never turned it on because most users don’t know the default mode isn’t actually private. Add the 2024 Durov arrest and Telegram’s subsequent cooperation with French authorities, and you have a company whose actual conduct under pressure directly contradicts the brand it’s built.

Discord

Discord Logo
Discord Logo

Discord started as a gaming voice chat tool and still carries that DNA. Text messages sit in plaintext on Discord’s servers with no end-to-end encryption at all, and the terms of service explicitly permit scanning message content for moderation purposes, meaning the plaintext storage isn’t just a passive risk, it’s actively read by automated systems as a matter of course. Voice and video calls get some encryption, but for most users the primary use case is text, and that’s the weakest part of the whole platform. Discord is a fine tool for a public gaming server or a hobbyist community. It’s a poor choice for anything you’d want kept private.

RCS and SMS

RCS and SMS Logo
RCS and SMS Logo

There isn’t much of a deep dive to do here, and that’s sort of the point. SMS predates any modern concept of message privacy by decades, built for a world where the telecom carrier was assumed to be a trusted, regulated intermediary rather than a potential adversary. Every message is logged with full sender and recipient data, held by the carrier for years, and handed to law enforcement as routine business, not as an exceptional event requiring a fight. RCS, meant to modernize SMS, does add encryption in some carrier-to-carrier configurations, but message history still gets stored in Google’s infrastructure by default for most Android users, and it doesn’t change the fundamental fact that carriers, not you, control the infrastructure your messages travel over. If an app on this list is your fallback for contacts who won’t install anything else, RCS and SMS are the floor, not a real option.

Building a practical strategy around all this

The honest answer to “which app should I use” is that it depends on who you’re talking to and what you’re actually worried about. But here’s a framework that works for most situations I run into.

For your general contacts, friends, family, coworkers who aren’t particularly technical, moving them off SMS or WhatsApp and onto Signal is a big improvement with almost no cost. The interface feels close enough to what they already know, and the underlying security is dramatically better. Signal’s real job is being the app that people who don’t care about privacy will still install and use.

For your inner circle, or anyone you regularly share genuinely sensitive information with, the small extra friction of SimpleX or Threema is worth paying. Getting three or four close contacts onto Threema isn’t a hard sell once they understand why the phone number thing matters. Most people are willing to install a second app for the people who matter most to that conversation.

For situations that call for real operational security, investigative journalism, activism under a hostile government, legal defense work, source protection, Briar or Cwtch are the only options on this list offering the full threat coverage that a top LINDDUN score represents. The small user base is a genuine limitation, but the people who need these apps most usually already have small, trusted circles they’re communicating with, so that limitation matters less than it would for a general-purpose app.

If you’re running a small team or a business and need something that balances usability with real compliance control, Wire or a self-hosted Matrix deployment are worth serious consideration, particularly Matrix if you have the technical capacity to run your own homeserver rather than relying on the public one.

And if you’re a family trying to get everyone off group texts, Signal is genuinely the right first step. Don’t let the perfect app be the enemy of getting your household off unencrypted SMS. That single move closes more real-world risk than almost anything else on this list.

One thing worth saying clearly before you close this out: there’s no app that eliminates all risk by itself. Physical device security, how carefully you handle sharing your identifiers, and the habits of the people you’re talking to all matter as much as which app you picked. What the top tier of this analysis does is take away the structural ability of the service provider and network operators to surveil you by default, which is usually the highest-probability threat path most people face. That’s worth a lot. It’s not worth pretending it solves everything.

FAQs

What is the most secure messaging app in 2026?

Under a full privacy threat model, Briar and Cwtch score highest because they route all traffic through Tor with no central server, eliminating both metadata collection and account-based identifiability. Signal remains the strongest mainstream option for everyday use, but it ranks below Threema, Session, and SimpleX Chat once phone number requirements and server-side metadata are factored in.

Is Signal really the most private messaging app?

Signal offers strong, audited end-to-end encryption and minimal data retention, but it requires a phone number for registration, which ties the account to a real-world identity and enables government agencies to confirm someone has a Signal account through the contact discovery system. Apps without phone number requirements, such as Threema, Session, and SimpleX Chat, score higher on identifiability and non-repudiation resistance.

Why is Telegram not considered a secure messaging app?

Telegram’s default cloud chats are encrypted in transit but stored decrypted on Telegram’s servers, meaning the company holds the decryption keys for the vast majority of conversations. Only opt-in Secret Chats between two people use end-to-end encryption, and they are unavailable for groups, which most users never enable.

What is a LINDDUN threat model and why does it matter for messaging apps?

LINDDUN is a privacy threat modeling framework from KU Leuven covering linkability, identifiability, non-repudiation, detectability, data disclosure, unawareness, and non-compliance. Unlike a simple checklist of whether an app has end-to-end encryption, LINDDUN evaluates the full range of ways a messaging app can expose a user’s identity and behavior, even when message content itself is protected.

Does end-to-end encryption alone make a messaging app secure?

No. Encryption protects message content in transit, but metadata such as who a person talks to, how often, and from where can reveal more about their life than the message content itself. A full security assessment needs to evaluate linkability, identifiability, and detectability alongside encryption strength.

This piece reflects each app’s architecture as of the time of writing. Implementations change, companies get acquired, protocols get updated, and legal environments shift. If any of these apps matter to your specific threat model, go verify the current state yourself rather than taking a snapshot at face value, mine included.

Buy me A Coffee!

Support The CyberSec Guru’s Mission

🔐 Fuel the cybersecurity crusade by buying me a coffee! Your contribution powers free tutorials, hands-on labs, and security resources.

Why your support matters:
  • Writeup Access: Get complete writeup access within 12 hours
  • Zero paywalls: Keep the main content 100% free for learners worldwide

Perks for one-time supporters:
☕️ $5: Shoutout in Buy Me a Coffee
🛡️ $8: Fast-track Access to Live Webinars
💻 $10: Vote on future tutorial topics + exclusive AMA access

“Your coffee keeps the servers running and the knowledge flowing in our fight against cybercrime.”☕ Support My Work

Buy Me a Coffee Button

If you like this post, then please share it:

Discover more from The CyberSec Guru

Subscribe to get the latest posts sent to your email!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from The CyberSec Guru

Subscribe now to keep reading and get access to the full archive.

Continue reading