# SimpleX vs. Cwtch, who is right?

**URL:** https://discuss.privacyguides.net/t/simplex-vs-cwtch-who-is-right/19256
**Category:** General
**Tags:** software
**Created:** 2024-07-03T17:30:38Z
**Posts:** 139

## Post 1 by @anon48875053 — 2024-07-03T17:30:38Z

Two years ago, Sarah, one of the main people behind Cwtch, made this statement:

> **[Reddit - The heart of the internet](https://www.reddit.com/r/selfhosted/comments/s2hil6/comment/hsp09it/?utm_source=share&utm_medium=mweb3x&utm_name=mweb3xcss&utm_term=1&utm_content=share_button)**

Then the founder of SimpleX replied to her, and this is where it ended.

This year, Sarah posted multiple posts about SimpleX on Mastadon:

> **[Sarah Jamie Lewis (@sarahjamielewis@mastodon.social)](https://mastodon.social/@sarahjamielewis/112311106555081270)**
>
> I really, really don't want to be calling out specific people or projects, I don't think it's a useful thing to do - but it makes me so sad to see people, whose work I deeply respect, volunteering/writing/promoting a tool whose privacy claims are...

So clearly one of these people is lying to us, but I don’t have the technical knowledge and capabilities to tell who is right and who is wrong.

It would be great if someone knowledgeable about this topic could step in to clarify these things for us.

It would also be interesting to hear what @epoberezkin has to say in response to these Mastadon posts.

---

## Post 2 by @anon63378630 — 2024-07-03T18:03:31Z

After reading the toots originally I honestly thought they were talking about Session, not SimpleX.

SimpleX does still continue to lack automatic rotation of queues after years which I’d argue does act as an identifier.

Aside from the topic, I’d wish Briar and cwtch style projects were more successful.  
Briar is approaching _fifteen years_ [old](https://sourceforge.net/p/briar/mailman/message/27393146/) at this point and has had many funding rounds yet still lacks basics like images in group chats.  
I don’t blame anyone in particular, I just question why this isn’t a “solved problem” at this point.  
Instead we have a ton of fragmentation.  
(and yes, I’m just complaining, feel free to disregard)

related:

 ![standards](//forum-uploads.privacyguidesusercontent.com/original/2X/d/de184e871803beda437a344f7868723955934fd1.png)

---

## Post 3 by @anon48875053 — 2024-07-03T18:34:33Z

It’s sad that most people are using centralized messengers, including Signal.

We should all just pick a decentralized solution like Matrix or SimpleX and use it.

---

## Post 4 by @anon63378630 — 2024-07-03T18:36:14Z

> [@anon48875053](#):
>
> Matrix or SimpleX

I’ve been pushing people towards XMPP for 12+ years now.  
I have no doubt XMPP will be alive in another decade, I can’t say the same for these.

---

## Post 5 by @anon48875053 — 2024-07-03T18:38:17Z

I haven’t tried XMPP. What are the selling points?

---

## Post 6 by @quitet.gear — 2024-07-03T19:10:23Z

XMPP is a federated chat protocol that has been around for ages. It’s main selling point is that it’s extensible. Despite being decades old, it has evolved to include double ratchet end to end encryption, multiple device support, bridges etc.

I’d argue it solves the same problems Matrix solves, but had been around for more than 10 years before Matrix started. It’s managed by the IETF and has plenty of client and server independent implementations. The server implementations are vastly lighter weight than Matrix’s. And while Matrix has very close ties to the for profit Element, where sometimes is hard to differentiate between the two, no one owns XMPP.

I wish all the funding and effort that have gone to Matrix, had gone to XMPP and Element had implemented their clients and built their business around XMPP.

---

## Post 7 by @camp — 2024-07-03T19:45:24Z

XMPP is not metadata resistant (SimpleX and Signal both offer better protection of metadata).

Another problem with XMPP is usability. Signal is the easiest for non-tech users to adopt. “Hey download the app called Signal, sign up with your phone number and add me”

Instructing them sign up for XMPP requires them to:

1. Find a suitable client for each device. There are different clients for various operating systems, some with varying features.
2. Find which server they want to sign up with, create an account.
3. Make sure the servers and clients both parties are using have the same features (ie if both clients and servers don’t offer encryption that is a problem).

Signal or SimpleX have a much clearer path to widespread usage than XMPP - which is already 20 years old.

There are other problems with XMPP too:

- Server admin can see a lot of data plaintext
- Message attachments might not be encrypted at all
- Doesn’t use encryption by default (I believe this is a requirement for privacyguides secure messengers).

[https://archive.ph/RuAGN](https://archive.ph/RuAGN)

---

## Post 8 by @epoberezkin — 2024-07-03T19:55:16Z

> So clearly one of these people is lying to us, but I don’t have the technical knowledge and capabilities to tell who is right and who is wrong.

Not necessarily either of us is lying. People may simply have different opinions. I think it all boils down to two questions:

1. whether a given solution delivers on the threat model it advertises. I actually think it would benefit Cwtch to have an explicit threat model, but maybe it’s somewhere there in the docs - please share if you saw something similar to this: [simplexmq/protocol/overview-tjr.md at 1ac0068d22381781fca583ea5304c1fa4f107e46 · simplex-chat/simplexmq · GitHub](https://github.com/simplex-chat/simplexmq/blob/1ac0068d22381781fca583ea5304c1fa4f107e46/protocol/overview-tjr.md)

2. whether this is a correct threat model for a given set of the end users.

While the first question is usually easier to settle, as long as threat model is clear and explicit, the second one is tricky - and I think this is the root of my disagreement with Cwtch design (I will elaborate on it below).

> SimpleX does still continue to lack automatic rotation of queues after years which I’d argue does act as an identifier.

I agree that automatic queue rotation is important, and I see it as a problem related to queue redundancy - we will be solving both next year.

But I disagree that queue acts as a user identifier - it identifies a pair of users, a connection between them, but not the user.

So returning to the question of threat model adequacy, and whether relying on Tor’s threat model is a good idea for instant messaging, particularly in the model when onion network address is also used as a user identifier, as Cwtch does.

Tor anonymity guarantee relies on the assumption that all three nodes that provide the circuit are controlled by different parties - in case operators of these nodes collude and share the data, the user is not anonymous, and operator of these nodes can establish which IP address connects to which IP address - exactly what Tor is aiming to prevent.

Unfortunately, Tor provides no way to establish node operators - on the opposite, it aims to provide operator anonymity. And from the recent history we see that a party that operated a large part of Tor infrastructure was the same party that sells Internet traffic monitoring: [Tor Project Moves Away from Infrastructure Ran by Internet Monitoring Firm](https://www.vice.com/en/article/z34jbj/tor-projects-moves-away-from-team-cymru-infrastructure). While this was a great news, I do think that to increase Tor’s anonymity requires more transparency about Tor node operators, so that the clients can choose nodes controlled by different operators when building the circuit.

Tom Ritter published great [slides about Tor](https://ritter.vg/p/tor-v1.6.pdf) - I really recommend reading them all attentively if you use Tor. The most important part for our case is slide “Guards - maths” - it estimates probability of the user being de-anonymised in case the attacker controls 2% of Tor nodes, and the client choses entry and exit node randomly. The paper slightly overestimates this probability putting it at 50% of being de-anonymised after 1250 random circuits. A more precise calculation shows that it requires 1700 random circuits, but it’s beside the point - if you create many enough random Tor circuits, the probability that one of them won’t provide anonymity and would allow linking IP addresses becomes really high. To reduce it requires choosing entry node non randomly, but it is not something most users do, and it has its own downsides.

This probability is acceptable if you simply browse the web - first, you don’t have a fixed Tor identity in this case, and you also connect to different web servers, so except GPA attacks that Tor does not protect from, occasional de-anonymisation of the web traffic is acceptable and Tor overall provides great anonymity probability, even in the presence of the attackers that control a small share of the nodes.

But if you use Tor hidden service as your client address for instant messaging, then sooner or later you will connect to your contact via a compromised circuit - you just need to use it for a long enough time. From that it logically follows that an attacker who controls a small share of Tor nodes and observes Cwtch traffic over Tor nodes that it controls for a long enough time will be able to build connection graph of many Cwtch users, and I don’t see anything in Cwtch’s or Tor’s design that would prevent it - happy to be corrected about it.

So I think that using Tor addresses as persistent user addresses for instant messaging network is a bad idea, and it cannot provide an adequate anonymity of the network users. From this does not follow that using Tor is a bad idea - it is only a bad idea to use Tor addresses for instant messaging, and I am really sorry to say that, but it does make Cwtch design bad for anonymity of the contacts, if all my logic is correct…

That’s the reason I believe instant messaging requires an alternative model for onion routing, independent from Tor that was built for web browsing, the model where the network operators have no anonymity - on the opposite, they are identifiable to the users’ clients, so that they can choose different operators for message routing and to reduce the risks of the operators collusion.

Also, unlike Cwtch, SimpleX does not assign persistent identifiers to the users themselves, and instead assigns them to connections between the users - so all network operators can see on the protocol level is connection graph edges (messaging queues) and not vertices (users). NIST calls it “anonymous pairwise identifiers” and recommends it as a privacy-by-design principle.

There is a picture on the site that explains that: [SimpleX Chat: private and secure messenger without any user IDs (not even random)](https://simplex.chat/#simplex-explained)

At the same time, there is nothing wrong in using Tor to connect to SimpleX network - many people did that before we added private message routing (a SimpleX network onion routing) and many will continue doing it even after that - it provides additional layer of anonymity protection, without creating a fixed user identifier in Tor network. So for some threat models SimpleX via Tor would be a better fit than SimpleX without it - we are not trying to replace Tor in any way.

Hope it all makes sense, happy to answer any questions.

---

## Post 9 by @anon48875053 — 2024-07-03T20:34:21Z

Thanks for the explanation, good to know that moving my relatives to SimpleX was a good idea.

---

## Post 11 by @brivacy — 2024-08-26T19:33:15Z

Simplex does not have good linux app having a good native app can increase the userbase

---

## Post 12 by @TrashPanda — 2024-08-26T20:28:59Z

… and its still not using UnifiedPush, causing huge battery drains caused by that decision.

---

## Post 13 by @anon23293884 — 2024-08-26T20:35:46Z

The battery consumption is really dramatic. However, it is worth mentioning that the client released for android devices in the notification about enabling constant updates refers to the fact that the push option is less secure, offering its own implementation of constant updates. Is there a way out of this situation besides push so that the charge consumption is not so aggressive? To this of course is also added the work of VPN for most users who chose SimpleX.

---

## Post 14 by @asanyan — 2024-08-26T20:38:35Z

please support simplex desktop on wayland

---

## Post 15 by @epoberezkin — 2024-09-01T17:53:34Z

To extend on my comment above.

The assessment in the linked presentation is somewhat outdated when it comes to hidden services. Since then Tor added mitigations for hidden service discovery: [Announcing the Vanguards Add-On for Onion Services | The Tor Project](https://blog.torproject.org/announcing-vanguards-add-onion-services/)

This post shows that prior to these mitigations the situation was worse than my analysis, and it is still not ideal:

> the addition of second layer guard nodes means that the adversary goes from being able to discover your guard in minutes by running just one middle node, to requiring them to sustain the attack for weeks or even months, even if they run 5% of the network.

So, if a potential attacker that can control 5% of Tor network is seen as a viable threat, having a long-term fixed address for an anonymous hidden service can lead to discovery, that could be mitigated by the regular rotation.

I think Cwtch should share this analysis with the users, and recommend not to use the same address for a long time for the most sensitive communications.

---

## Post 16 by @Matcher0313 — 2024-10-20T06:32:06Z

@epoberezkin, I appreciate the thorough response and like to ask a few follow-up questions to clarify some points:

1. Has this conversation been continued with Sarah in another online forum or platform that you would be willing to share? If not, I’m curious to know how the discussion unfolded between you two. If not, we could invite her to join this thread to continue the discussion and provide further clarification.

2. I’d like to revisit Sarah’s comment on the Mastodon thread, where she mentions that having no identities is impossible in any system with distinct users. She explains that “because (in any system with distinct users) it is simply impossible, there is always an “identity” - typically a long term cryptographic key that it is necessary to know, authenticate and verify in order to guarantee other desirable properties.” She also states that projects claiming to have “no identities” instead simply don’t perform any kind of key verification and treats this has an out-of-scope problem (hiding a myriad of issues). The specific comment is linked here: [Mastodon](https://mastodon.social/@gaditb@icosahedron.website/112312546112136027)

Do you concur with Sarah’s assessment, or does SimpleX operate under a different understanding of “no identity,” perhaps implying a functional lack of identity? I’ve been trying to reconcile these two statements, and I’d appreciate your insight.

I’d also like to address a concern raised in the original post: “Beware of ‘metadata resistant’ privacy apps that advertise Real-time Audio / Video” - I believe this is the only other point that relates to SimpleX . How does SimpleX handle metadata in the context of real-time audio and video features? I’d appreciate any clarification that can be provided on this point.

---

## Post 17 by @rottenwheel — 2024-10-20T07:43:47Z

> [@epoberezkin](#):
>
> But I disagree that queue acts as a user identifier - it identifies a pair of users, a connection between them, but not the user.

So, practically speaking the anon set of SimpleX is 2. You are 1 out of 2 possible options and that is not an identifier? Alright…

---

## Post 19 by @anon48875053 — 2024-10-21T08:41:38Z

Don’t spread FUD.

---

## Post 20 by @mentalfoss — 2024-10-21T09:36:09Z

Well these are facts, but lets hide them i guess.

Anyway TL:DR based on the political view of both projects if i had to choose to donate in one of them, Cwtch would be my choice easily.

---

## Post 21 by @throwaway77 — 2024-10-21T09:47:48Z

I’m not sure why anyone would not consider a VC-funded project like SimpleX a non-starter, especially if worried about privacy and service reliability.

Their post bending over backwards to justify it, honestly, is entirely meaningless, and adds to the dodginess of it all. This is as big a red flag as one can have, or it should be for Privacy Guides.

Personally I wouldn’t touch SimpleX or anyone VC-funded even if claiming to be able to cure cancer with a ten foot pole, also maybe because I am old and remember the time when we paid for software with money, and there was some pretty fantastic software with quite responsive developers, even if they sold closed source programs. We used to call today’s “free” software spyware and malware. It’s a whole new world.

Being open source is not enough to put SimpleX on a podium. Being free with its current VC backing, again, should be a warning. A huge red sign saying “haven’t you seen this before? How did it end?”

Any technical advantages it may have (if it does) are meaningless given this.

Anyway, this will probably get flagged and hidden, but I’d like to think Privacy Guides is striving for higher standards.

---

## Post 22 by @mentalfoss — 2024-10-21T10:49:08Z

Ok going to repost [#18](https://discuss.privacyguides.net/t/simplex-vs-cwtch-who-is-right/19256/18) that got flagged with editing out the personalized comments about the developer’s views.

" I just want to point out the political differences between these two projects that **might** be a reason there was a heat between them.

Cwtch is being funded by OpenPrivacy research society a known leftist society that also endorsing lgbtq communities while having a fully open and transparent plan for the project.

SimpleX on the other hand is the better app currently, on usability terms, but things are looking shady with articles like these:  
[Neo-Nazis Are Fleeing Telegram for Encrypted App SimpleX Chat](https://archive.ph/NNHQJ)  
There are also some concerns about the unclear future monetization of the project."

---

## Post 23 by @anon48875053 — 2024-10-21T11:40:40Z

Signal isn’t any better than SimpleX, both don’t have a proper business model, in fact, it’s worse because at least you or others can self-host SimpleX.

Threema would be the only option that has a proper business model, but how many are willing to pay for it?

SimpleX’s design is also less wasteful because there is no need to verify numbers, etc., which costs Signal A TON of money.

---

## Post 24 by @fria — 2024-10-21T14:30:19Z

That article is nonsense, they can’t control what kind of people use their app.

---

## Post 25 by @quitet.gear — 2024-10-21T14:43:58Z

Being a for-profit company is a red flag.  
Being a for-profit company without a clear path to profitability is a red flag _squared_.  
Being a for-profit company without a clear path to profitability that’s using VC money is a red flag _cubed_

---

## Post 26 by @fria — 2024-10-21T14:52:21Z

Many of the recommendations are for profit companies, who cares. I also don’t see why VC funding is such an issue. I’m only interested in the technical merits.

---

## Post 27 by @quitet.gear — 2024-10-21T15:20:58Z

I’m not saying being a for profit is a deal-breaker, but it’s a red flag, something to keep an eye out on. In fact, I use many products from for-profit companies. Same with free vs. non-free software or open vs. closed source.

But if they are a for-profit, their mission is making a profit, not whatever else they might claim. And depending on the country, it’s even their primary legal duty to their investors. So that’s one reason to stay vigilant if you choose to depend on this company. If that for-profit doesn’t have a clear business model or path for profitability, even more so, as they will probably either fail, or betray their user’s trust to keep afloat. And if they are being funded by VC, sooner or later the VC is going to put pressure so that they can get their investment plus some back, either through a change on business model to become profitable, or through selling the company to another company. I’ve founded a company that was VC-backed and I can assure you they have way more power and influence over the company than what their share % and number of seats at the board might suggest.

So the combination of the three things is pretty bad and a deal breaker for me, specially if there are high switching costs, like with a messaging app.

---

## Post 28 by @fria — 2024-10-21T15:24:36Z

Like I said I’m only interested in technical merits not “oh what if they do a complete 180 and start collecting all your data in the future bc the VC that funded it knowing full well what it is just wants them to completely change it for some reason.” If it turns into Facebook in a year then it’ll get removed but for now it’s one of if not the best messengers available.

---

## Post 29 by @maqp — 2024-10-23T14:57:38Z

SimpleX is not the program you want to use.

I have on several occasions tried to get epoberezkin to answer basic questions, but every time they run to the hills.

SimpleX prides itself with having no identifiers. The most revealing identifier would be your name, then phone number, then your IP, then your email, then your username. SimpleX server knows your IP-address by default. But the CEO pretends this is not an issue. They ignore the fact IP-addresses are constantly used to determine identity of copyright infringers using torrents etc. They either tie to the household, or to the person if they live alone.

SimpleX uses something called queues. Which are basically random persistent tokens that allow fetching data from the server. The server generates the token for Alice, and Alice shares them to Bob off-band.

Alice can use queue ID to\_bob1 to send a package for Bob, who can then fetch it with queue ID from\_alice1. Same, vice versa.

SimpleX is not transparent enough about the fact the server can trivially correlate the IP addresses that converse.

There is queue rotation, but since unauthorized users must not be able to change the queues between Alice and Bob, the server must authenticate Alice before this action. This means Alice is recognized by the server, regardless of which IP-address they connect.

So Alice can’t rotate their queues without the server knowing which queue pair Alice and Bob use next.

Since the server knows the queue ID between two users in long term (that is, unless they re-register for Simplex and start fresh), the server can keep accumulating all queue IDs associated with Alice and Bob. The server can also associate every IP-address it has seen Alice connect from to that user.

If Alice and Bob use Tor from day one, and somehow never fail to misconfigure Tor and leak their IP, SimpleX is probably OK. If they ever fail, then the user is permanently deanonymized.

This is why SimpleX sucks compared to Cwtch. Cwtch uses anonymous Tor IDs, that are trivial to spin up, and take down. You can have as many user IDs as you want, even 1:1 mapping for all contacts to micromanage your online status for every contact.

Cwtch forces connections through Tor, Onion Services can not operate without you having anonymity.

My huge issue with SimpleX, is the CEO is vacillating between the positions of “Tor has vulnerabilities, therefore it’s not 100% solution”, and at the same time offering Tor as an opt-in solution for paranoid users (their words, not mine.)

Tor is obviously not a panacea, but the CEO conveniently forgets, is

1. There is for now, nothing better. We haven’t seen any improvements to the concepts of onion routing since NSA slides crowned Tor the “King of Anonymity solutions”.

2. IF the anonymity provided by Tor fails, all that happens is, your IP address will leak to a third party. Which is what’s happening with SimpleX by default.

Cwtch solved the problem of IP-addresses get revealed due to accidental misconfiguration, which is an actual threat.

SimpleX solved the non-issue of usernames and offered the same IP-address protection as every bog-standard messaging app: None.

Evgeny, again, if you want to offer improvement over existing software like Cwtch, you need to expand on what they solved (like I did with TFC by solving endpoint security which Cwtch does not solve), not pretend the first thing metadata-resistant communication solves, does not matter, and then boast about being “first to have no persistent IDs”

Your system has a persistent ID. It is the

[(alice\_tor\_ip\_address1, queue\_id1),  
(alice\_tor\_ip\_address2, queue\_id1),  
(alice\_tor\_ip\_address2, queue\_id2),  
(alice\_tor\_ip\_address3, queue\_id2),  
(alice\_tor\_ip\_address3, queue\_id3),  
(alice\_home\_ip\_address, queue\_id3),  
(alice\_tor\_ip\_address4, queue\_id3)]

list of tuples collected by the server over time.

First HN. Now PrivacyGuides. You’re running out of hills to run with your snake oil. Please stop running and address these issues.

---

## Post 31 by @Quantum — 2024-10-23T18:39:49Z

What funding model do you like then?

Making software, maintaining software, and owning/running servers is really expensive.

A profit motive can be aligned with privacy and security. If the product being offered only has value because it’s private/secure then the company offering it is incentivized to ensured it delivers as advertised or it will be replaced by a competitor that can deliver.

The problem is the demand side. Too many people in the privacy community refuse to actually pay for anything and demand all things be given to them for free.

---

## Post 32 by @mentalfoss — 2024-10-23T20:39:52Z

> [@Quantum](#):
>
> The problem is the demand side. Too many people in the privacy community refuse to actually pay for anything and demand all things be given to them for free.

Privacy is a fundamental human right, it should always be free.

---

## Post 33 by @anonymous208 — 2024-10-23T20:43:45Z

Development costs time and money, though.

If what you’re saying is that all services should be privacy friendly, then I agree. But doesn’t mean everything should be free. For most applications not using it doesn’t mean you’re suddenly not private.

---

## Post 34 by @mentalfoss — 2024-10-23T20:50:20Z

Your taxes are money. They should use them to clear-fund privacy and security projects.

And do you enjoy a privacy project that you actively use? Donate, as you tip the waiter who brought you the coffee you enjoyed.

---

## Post 35 by @Quantum — 2024-10-23T20:57:12Z

Your solution to privacy is to rely on…the _government_?

:roll_eyes:

Also taxes aren’t free either. People have to actually pay those.

I have no problem paying for stuff I use. I donate to Signal and have been a paying Proton supporter since the beginning.

What really annoys me is people who don’t pay for anything demanding other people pay for the services they use or demanding developers make applications for them for free.

---

## Post 36 by @mentalfoss — 2024-10-23T21:04:31Z

When a privacy project has a business model will always care for its business first, then your privacy.

---

## Post 37 by @yes — 2024-10-23T21:28:27Z

Dude, sorry, but that’s NOT how world works. You need revenue to keep things going. If you don’t have any money, you can’t offer any privacy-respecting products (or any products at all) because, nobody is going to work on a project while they can’t even live a _standard_ life.

---

## Post 38 by @fria — 2024-10-23T21:42:00Z

I think that’s flawed, if their business _is_ your privacy then the profit motive lines up with your interests. There’s many examples of this in the site like Ente, Bitwarden, etc.

---

## Post 39 by @quitet.gear — 2024-10-24T04:41:30Z

> [@Quantum](#):
>
> What funding model do you like then?

In a for-profit company, a profitable business model or one with a clear path towards profitability. If it’s a company using VC money without a clear plan to become profitable, I don’t trust the company.

In a non-profit one, either a sustainable model, or if it’s donation-based, not dependant on a single person or entity.

---

## Post 40 by @anon48875053 — 2024-10-24T05:48:56Z

Everything SHOULD be free, privacy isn’t something that only people who are wealthy and are living in first-world countries should be able to access.

Proton is a perfect example of that, they provide free, private, and secure services with basic functionality to everyone, but if you want more features, then you need to pay.

---

## Post 41 by @anon48875053 — 2024-10-24T05:52:26Z

I’m sorry, but those aren’t “privacy” projects, lol.

---

## Post 42 by @mentalfoss — 2024-10-24T07:10:04Z

Np i forgive you, call them privacy services, doesn’t matter. ppl get the point.

---

## Post 43 by @anon48875053 — 2024-10-24T07:28:47Z

Those aren’t privacy services either. Real privacy services and projects would rather take a financial hit or shut down completely instead of violating the privacy of their users.

---

## Post 44 by @mentalfoss — 2024-10-24T08:33:35Z

If they don’t build correctly yeah. There was the lavabit case back then, when something like this happened and thats it.

Proton for example gave the recovery email address compromising its user with no second thoughts.

Anyway we don’t need to divert from the topic. We are discussing about funding at the moment and i believe a non-profit approach serves better these projects. Signal is one good example.

Cwtch is funded through the non-profit openprivacy.ca research society that seems pretty transparent.

> [@fria](#):
>
> I think that’s flawed, if their business _is_ your privacy then the profit motive lines up with your interests. There’s many examples of this in the site like Ente, Bitwarden, etc.

This post will age well, Bitwarden already start backfiring.

---

## Post 45 by @anon48875053 — 2024-10-24T10:21:40Z

> [@mentalfoss](#):
>
> Proton for example gave the recovery email address compromising its user with no second thoughts.

They were legally forced to. Do you think they will shut down their company because of one clueless guy with horrible OPSec? No, that would never happen with any company.

---

## Post 46 by @Quantum — 2024-10-25T06:25:52Z

If everything is free, who pays for it?

_Someone_ has to.

---

## Post 48 by @epoberezkin — 2024-10-25T16:20:54Z

@maqp, as usual, triggers some great discussions.

This comment requires a substantive response, as some of these points are correct, but only partially. I will come back to them all in a couple of days.

As a side comment, “run to the hills” is neither what we do, nor the language one should use in a civilised discussion, unless you want to spread FUD, whatever the motivation.

---

## Post 49 by @maqp — 2024-10-26T16:06:05Z

When I wrote the long comment above, it had been been 55 days when I left the comments on HN. I can’t be the only one of us two to think you weren’t going to take further part in that conversation. But yeah, since we’re here, please take your time and ensure you clarify your positions and explain the threat model and how you address it with your security design.

---

## Post 50 by @epoberezkin — 2024-11-01T18:05:59Z

> it had been been 55 days when I left the comments on HN

Probably didn’t see it - please share the link.

> SimpleX is not the program you want to use. I have on several occasions tried to get epoberezkin to answer basic questions, but every time they run to the hills.

“This is not the language you want to use”. This suggests that everybody is less smart than you, and you know better what should and should not be used. Every technology has its limitation, and nobody should indiscriminately recommend any tech for all cases.

> SimpleX prides itself with having no identifiers.

We never said that, and no tech can work without identifiers. What is important though, and it’s a unique quality of SimpleX network, is that SimpleX user profiles are not assigned any distinct identifiers in the network, unlike all other networks do.

> SimpleX server knows your IP-address by default.

Every server you connect to knows the IP address - it includes your ISP, VPN providers, websites and services you connect to, and even Tor and i2p relays, and your peers in p2p networks.

> But the CEO pretends this is not an issue. They ignore the fact IP-addresses are constantly used to determine identity of copyright infringers using torrents etc.

Again, you are ascribing me the words I never said. It is impossible to use Internet without IP addresses, as you know. And it indeed may create issues if users do not manage their network transport security. But these issues are not specific to any particular system, and while there are tech solutions that reduce impact of IP address visibility to some servers, including Tor, i2p SimpleX network, and some other solutions, there is no technology that protects IP address in all cases - and Tor also is not such technology.

> They either tie to the household, or to the person if they live alone.

This is sometimes correct, and sometimes it is not, depending on who can use it to tie it to that level. ISP can always do it, but it is not always the case for the third parties. Security of IP address (and security in general) can be only be discussed in the context of “security from whom” - the whole concept of security requires the presence of attacker.

> SimpleX is not transparent enough about the fact the server can trivially correlate the IP addresses that converse.

First, we were transparent about it when it was the case. It is covered on the front-page of the website, and in all technical documents that cover the security limitations. It’s absolutely fine to criticise [how we disclose our security limitations](https://github.com/simplex-chat/simplexmq/blob/1735b619e8295f73865a7c66ad3f0f769434ce0d/protocol/overview-tjr.md), but I suggest you show some other comparable service that is as explicit in disclosing it - I’ve only seen Pond doing that, where we modelled it from.

Second, with the addition of 2-hop routing (aka “private message routing”) in the messaging protocol it is no longer the case - even if both servers are operated by the same owner, it would be far from trivial, and it would require server code modifications that would be a violation of privacy policy. Neither having access to server storage or traffic observation does not allow it.

Third, with the addition of the second operator to the app (coming this November), it would be impossible even if one of the operators does modify server code in violation of the privacy policy - private message routing protects not only IP addresses, but also sessions.

> There is queue rotation, but since unauthorized users must not be able to change the queues between Alice and Bob, the server must authenticate Alice before this action. This means Alice is recognized by the server, regardless of which IP-address they connect. So Alice can’t rotate their queues without the server knowing which queue pair Alice and Bob use next.

This is incorrect. Queue rotation is agreed between the clients, and the queue the clients rotate to is not known to the server as its address is agreed inside e2e encrypted messages. Clients always choose another server to rotate to (as long as the client has another configured server), and with the addition of the second operator, the clients will choose the server of another operator. So it is very non-trivial to connect which queue the connection rotated to.

> Since the server knows the queue ID between two users in long term (that is, unless they re-register for Simplex and start fresh), the server can keep accumulating all queue IDs associated with Alice and Bob. The server can also associate every IP-address it has seen Alice connect from to that user.

It is based on incorrect assumption, so it is incorrect. Further, because of 2-hop routing, while a modified server can indeed determine the list of queues the client connects to in default configuration, the server still cannot determine IP addresses that send messages to these queues, so it does not provide the knowledge of user connection graph, even if server modifies the code.

> If Alice and Bob use Tor from day one, and somehow never fail to misconfigure Tor and leak their IP, SimpleX is probably OK. If they ever fail, then the user is permanently deanonymized.

What you don’t say, that it would be the case even if clients connect via Tor, as while servers can’t see IP address of the client (Tor relay can see it instead), the servers can see client sessions. This is disclosed in the privacy policy. To mitigate it the clients offer an option to use separate Tor circuits for each connections, but it will create much more traffic, so cannot be enabled by default.

But irrespective of that, this does not show how IP addresses and message queues connect to conversation graph.

> This is why SimpleX sucks compared to Cwtch. Cwtch uses anonymous Tor IDs, that are trivial to spin up, and take down. You can have as many user IDs as you want, even 1:1 mapping for all contacts to micromanage your online status for every contact.

This statement ignores the limitations of Tor, that many parties operate a large number of Tor relays and therefore are able to deanonymize Tor hidden service addresses that are used for a long time. Even with the addition of guards a successful attack on hidden service anonymity is possible over several months or maybe even weeks of usage, so Cwtch should be disclaiming that users have to rotate these addresses too, as otherwise Tor relay operators that run many nodes can build the connection graph between IP addresses and hidden service addresses used for a long time.

What I believe is a very important quality of SimpleX network is the lack of operator anonymity - it allows client to choose different operators for message delivery route (something that will be available this month). Any network that provides onion routing and at the same time allows anonymous participation of routing nodes can be used to break the security model by any party that runs many nodes - a single operator controlling even 2-3% of nodes results in a high probability of successful deanonymization over a prolonged usage.

> My huge issue with SimpleX, is the CEO is vacillating between the positions of “Tor has vulnerabilities, therefore it’s not 100% solution”, and at the same time offering Tor as an opt-in solution for paranoid users (their words, not mine.)

There is no contradiction here, it is called “security in depth” or “defence in depth”. SimpleX has an alternative security model with packet routing (as opposed to Tor’s circuit routing) and with operator transparency (as opposed to Tor’s operator anonymity), so we believe that for many users SimpleX alone offers a better security/usability trade off than using it with Tor. It doesn’t mean that Tor should not be used - it can be used in addition to SimpleX, as a transport level anonymisation network, providing better overall security to some users. Further, we use Tor’s SOCKS proxy circuit isolation property to further improve Tor anonymity by using more than one circuit - something I am aware of only Tor browser doing.

> Tor is obviously not a panacea, but the CEO conveniently forgets, is there is for now, nothing better.

I do take issue when security and technology experts take such stance. For example, the stance “there is nothing better than Signal, so we should not criticise it” led to years of complacency, ignoring security issues, misleading marketing and over-inflated budget. [Read this](https://x.com/kaepora/status/1822980816416489760).

Likewise, the statement “there is nothing better than Tor” is misleading, as it ignores the fact that it very much depends on who is the user, what do they do, which country they in, how they configure it, and who is the user trying to be secure against. I can’t repeat enough that “security” is always about protecting against some attackers, and there is no such thing as security in the absence of attacker - so saying that something has the best security against all attackers is just wrong, in general. Specifically about Tor, it fails to protect anonymity of the users against attackers who run many Tor nodes, it also does not protect agains global passive adversaries, so while it provides a much better anonymity for web access than alternatives, the protection of a given Tor address is becoming worse the longer it is used.

> SimpleX solved the non-issue of usernames and offered the same IP-address protection as every bog-standard messaging app: None.

1. For majority of users who don’t break laws (and yes, we believe that absolute majority of SimpleX users fall in this category) usernames are a much bigger issue than IP addresses, as they enable long term mass surveillance for the commercial reasons at low cost, while using IP addresses for the same reason would be both against the privacy policy and also much more expensive. Given the economics of mass surveillance, it’s not necessary to make building connection graph impossible - it’s enough to make it more expensive.

2. I am also of the opinion that given a high budget any security solution can be compromised. I think that compromising Tor security model for most users would require running 100-200 Tor nodes - you can estimate the budget. So we as an organisation are much more interested in raising the baseline security for ordinary users than protecting from high budget attacks.

3. See above comments on private message routing - it solves the problem of IP address protection much better than most, as it also solves the problem of session protection by using per-packet anonymity (unlike Tor), that only does it per-circuit, so all activity that happens within the circuit can still be used for correlation.

> First HN. Now PrivacyGuides. You’re running out of hills to run with your snake oil. Please stop running and address these issues.

I am not sure what causes your inappropriate and bitter tone, but if you want to suggest some improvements we are very open to change. But please stop selling solutions that have known limitations as perfect or as the best - it would put lives at risk.

Some of your criticism about IP addresses was correct with the old network design, and we improved the network design based on your and other users’ criticism and suggestions. But this doesn’t justify your absolutist stance about SimpleX threat model being bad for all users, which is what you say, literally, and Cwtch threat model being good for all users. Both views are incorrect, and it is not the objective fact-based stance a professional/expert should be taking.

What we do is hard work, and we are not interested to improve on what we think is a bad solution for most users. We will continue building and improving what we think is better for most users. The time and the userbase will be the ultimate judge on who is right.

---

## Post 52 by @epoberezkin — 2024-11-01T19:24:09Z

> [@Anon47486929](#):
>
> This is again just ridiculous. One system is secure because you can do some action XYZ. But the other system is insecure, therefore you should do XYZ to mitigate it.

There is a very large difference between optional mitigation that requires user action every time the device of the contact changes, so most users just ignore “security code changed” notices (Signal), and non-optional protection against MITM that requires no user action, and is part of default connection process (SimpleX).

So the claim that Signal by default does not protect against MITM by operator, and SimpleX does protect it by default is factual.

---

## Post 53 by @epoberezkin — 2024-11-01T19:26:52Z

> [@Anon47486929](#):
>
> Do point me where is it “transparent”. Here is your website from:

The website says:

- To protect your IP address you can access the servers via Tor or some other transport Overlay network.

- To use SimpleX via Tor please install [Orbot app](https://guardianproject.info/apps/org.torproject.android/) and enable SOCKS5 proxy (or VPN [on iOS](https://apps.apple.com/us/app/orbot/id1609461599?platform=iphone)).

This site exists from 2022.

It still needs to be amended to account for private routing that does not require Tor to protect IP addresses from your contacts servers.

---

## Post 55 by @epoberezkin — 2024-11-01T19:40:07Z

> Here is Signal’s website: [https://signal.org/](https://signal.org/) ,can’t seem to find any false marketing or dubious claims against reputable competitors.

Signal is commonly advertising component qualities as pertaining to the whole system. That relates to:

- break-in recovery property of Signal algorithm, that is undermined by multi-device support: [https://eprint.iacr.org/2021/626.pdf](https://eprint.iacr.org/2021/626.pdf)
- “sealed sender” that does not protect the whole system because initial key bundle requests are authenticated and are also vulnerable to statistical attacks allowing to determine senders after 5 messages according to this paper that proposed improvements: [https://cs-people.bu.edu/kaptchuk/publications/ndss21.pdf](https://cs-people.bu.edu/kaptchuk/publications/ndss21.pdf)
- post quantum key agreement that is promoted as improving Signal algorithm security ([Signal \>\> Blog \>\> Quantum Resistance and the Signal Protocol](https://signal.org/blog/pqxdh/)), while in reality it is used only in the initial key agreement, and not in Signal algorithm ratchet steps like [SimpleX](https://simplex.chat/blog/20240314-simplex-chat-v5-6-quantum-resistance-signal-double-ratchet-algorithm.html) and [iMessage](https://security.apple.com/blog/imessage-pq3/) do.

That’s just off top of my head.

> Signal funders seem to not be pushing for the kind of aggressive and murky marketing SimpleX funders seem to push for.

“Aggressive” - we are doing very little marketing, and if by “aggressive” you mean “comparative” and critical of the competition, for Signal being the biggest player this would have been counter productive at their current stage. Not only Signal ignores the competition (which is sensible), they also censor mentions of any competitors, including Molly, and [censor any criticism of Signal](https://x.com/kaepora/status/1828466690897703359) in their forums.

“Murky” - again, not sure what you mean by that, but Signal positioning of their security qualities is misleading.

All you are picking it is our taglines. Our technical communications aim to be very precise in disclosing the limitations.

---

## Post 57 by @epoberezkin — 2024-11-01T19:47:06Z

> [@Anon47486929](#):
>
> So there is a large difference in optional opt in for security code verification and security code verification by default, but not when you claim 100% privacy but your default config leaks IP?

Default configuration protects the IP addresses, as I explained. That it did not protect it in the past was disclosed in all technical documentation - the website, GitHub readme, threat model.

If you are saying that tagline or hero section of the website should disclose all limitations then this is not possible for many reasons:

- hero page section is limited to include all limitations.
- everybody talks about positive aspects.

Signal tagline, for comparison, is “Private messenger”, which can be seen as a false advertising given that Signal requires phone numbers and has full visibility of who communicates with whom. “Content security” is not “privacy”.

But everybody understands that it means that privacy is the objective, and there are some limitations, and you need to read on to understand them.

Likewise, nobody takes “100% private by design” as anything other than aspiration. So this consciously exaggerated claim you accuse us of is unlikely to be misleading to anyone.

---

## Post 58 by @maqp — 2024-11-02T02:48:48Z

> This suggests that everybody is less smart than you, and you know better what should and should not be used.

General Timothy D. Haugh picks up Python on his spare time and writes a messaging app that uses no encryption at all, and that sends all the messages to the NSA by default. On the front page of his NSA Spy Messenger, he writes: “This application is unencrypted and sends all the data to the NSA”

I think this is an application that can be used safely. Why? Because the front page tells you exactly what it does.

It’s the lying, and lying by omission, that’s the problem.

> Every technology has its limitation, and nobody should indiscriminately recommend any tech for all cases.

You’re absolutely right. Which is why it’s so important to be upfront about the limitations, even if it hurts you. The point of secure messaging is to protect the user and the user must be informed on the limitations.

> SimpleX prides itself with having no identifiers.

Yet the front page says

> The first messenger without user IDs

User ID is anything that can ties actions of a user together.

> SimpleX user profiles are not assigned any distinct identifiers in the network

So the first messaging app that doesn’t require things like phone number or email? But we’ll just lie by omission and exclude IP address that is often uniquely identifying.

> Every server you connect to knows the IP address - it includes your ISP, VPN providers, websites and services you connect to, and even Tor and i2p relays, and your peers in p2p networks.

What? Does [duckduckgo.com](http://duckduckgo.com) know my local IP when I connect to it via Tor Browser? Or is your point that the Tor entry node knows your IP? If so, that’s the weakest argument I’ve seen since Telegram’s PhD in geometry. The point of getting rid of metadata is for the client to do what it can to protect itself from server, and the best tech currently in existence is onion routing. That’s the standard. If you want to be able to say SimpleX has no user IDs, you better make sure the most common identifier is handled with best practices. Nobody is asking you to do more.

> there is no technology that protects IP address in all cases - and Tor also is not such technology.

Again. Best practices are enough. Users who need more can go wardriving by themselves.

> ISP can always do it, but it is not always the case for the third parties.

So be upfront that law enforcement can take over servers and determine users’ real life identities because IP-addresses are not being masked.

Alsos be upfront that smaller authoritarian nation states that compromise the servers can access the logs. Compromising Tor is limited to global passive adversaries like FVEY that can do end-to-end correlation pretty much anywhere.

> Security of IP address (and security in general) can be only be discussed in the context of “security from whom” - the whole concept of security requires the presence of attacker.

My point also, I fail to see you providing nuanced threat model that discusses which threats your system protects against, and which it doesn’t.

> It is covered on the front-page of the website

Where?

> It’s absolutely fine to criticise how we disclose our security limitations

Yes. Why is link to

> <https://github.com/simplex-chat/simplexmq/blob/1735b619e8295f73865a7c66ad3f0f769434ce0d/protocol/overview-tjr.md#threat-model>

not on the front page? Surely you’re all for user security and not afraid of being transparent about limiations of SimpleX?

> some other comparable service that is as explicit in disclosing it

> **[Risk Model | Cwtch](https://docs.cwtch.im/security/risk/)**
>
> Communications metadata is known to be exploited by various adversaries to

> **[threat model · Wiki · briar / briar · GitLab](https://code.briarproject.org/briar/briar/-/wikis/threat-model?version_id=70ca4b03fef1195f3ac2c072d33665ec72395b9d)**
>
> Secure messaging, anywhere.

> **[Security Design — OnionShare 2.3.1 documentation](https://docs.onionshare.org/2.3.1/en/security.html)**

> **[Threat model](https://github.com/maqp/tfc/wiki/Threat-model)**
>
> Tinfoil Chat - Onion-routed, endpoint secure messaging system - maqp/tfc

> Second, with the addition of 2-hop routing (aka “private message routing”) in the messaging protocol it is no longer the case

So sounds like you’re fixing the problem with exactly the thing you were supposed to be fixing, with proxy chains. Only, you’re pulling the Telegram move and reinventing the wheel with an inferior design. What is your node pool size? Who is running those pools? Where are they hosted? E.g. last time I checked, Hetzner hosts majority of Session’s onion routing nodes, not exactly a decentralized solution.

> even if both servers are operated by the same owner, it would be far from trivial, and it would require server code modifications

Yeah I think you should develop your software thinking the server is by default compromised, and running the most malicious code possible. The system needs to be secure even in that case.

> that would be a violation of privacy policy.

So are you providing privacy by policy, or privacy by design? Pick a lane. Obviously the attacker wipes their scrotum with your policy and as for state actors, it’s obviously the opposite of illegal in the authoritarian countries that conduct these kinds of attacks.

Also am I wrong in that there is in fact no onion routing network to the messaging server, but instead, you have two servers run by two independent parties, that route messages. How is this functionally different from decentralized messaging networks like Matrix?

Your front page comparison with other protocols talks about Single or Centralized network for XMPP, Matrix being not secure, as it does not protect users’ metadata privacy. Queues is not the answer. Matrix is not anonymous because two server’s data can be pulled and cross-correlated. That’s how email’s metadata protection sucks. You can go to Google and ask who did [example1@gmail.com](mailto:example1@gmail.com) send messages to, and then Google says that to [example2@office365.com](mailto:example2@office365.com), and then they can go to Microsoft to ask for IP logs and determine the contact.

To me it sounds like you’re killing the trivial issue of server accumulating full metadata log for two conversing IP addresses, but it doesn’t sound like you’re really determined to deal with the underlying issue of IP addresses leaking to servers by default, in the first place.

> Queue rotation is agreed between the clients, and the queue the clients rotate to is not known to the server as its address is agreed inside e2e encrypted messages

That’s good to hear. I admit I was wrong about that, and that’s also how I would have implemented it.

> as long as the client has another configured server

What is the available server pool size? How are you preventing two clients from using the same server? How are users picking servers? I.e. is it a list with check boxes, or do they manually write the DNS name from a list?

> the servers can see client sessions

So Tor is more or less useless in protecting the user. Even if the queue ID space was massive to enable server to act as a dead drop, you’re checking the identity of anyone accessing the drop with session tokens.

> To mitigate it the clients offer an option to use separate Tor circuits for each connections, but it will create much more traffic, so cannot be enabled by default.

I fail to see how this removes the need for the session token.

> This statement ignores the limitations of Tor, that many parties operate a large number of Tor relays and therefore are able to deanonymize Tor hidden service addresses that are used for a long time.

What’s preventing delivering a new onion address through the end-to-end encrypted channel?  
Also random third parties enumerating the v3 onion address space is computationally infeasible. I get that some people will post their address publicly and that’s a risk. But you don’t have to offer it as a feature, just like you’re currently requiring users to perform off-band handshake first.

> What I believe is a very important quality of SimpleX network is the lack of operator anonymity

Who is going to be running the servers? How are you ensuring they’re not all running under Hetzner? What are the incentives to run a server? How many users are you expecting per server? Who foots the bill? How are you vetting they are seasoned cypherpunks and not undercover CIA agents?

> Any network that provides onion routing and at the same time allows anonymous participation of routing nodes can be used to break the security model by any party that runs many nodes

Again best practices are all we can do. The adversaries that can run a bunch of nodes like FVEY, don’t have to. Global passive adversaries just tap the nearest IX point, ISP etc.

> SimpleX alone offers a better security/usability trade off than using it with Tor.

You’re absolutely free to set your own preferred point of diminishing returns for added security at the cost of UX. My issue is not that, but your transparency about the limitations. “First messaging app without User IDs [we know your IP]” is still not the slogan you want to carry.

I would suggest you adjust your threat model and express it in simple terms such as

“_Like your phone number is not hidden from Signal’s server, your IP address is not hidden from the SimpleX server. Your communication metadata with your contact is not hidden from two servers collaborating. We try to identify distinct entities are running the servers, but we can’t be sure what they’re doing behind closed doors_.”

> [Signal Kobeissi etc]

Kobeissi had issues with Signal’s management, not technical side of things. Let’s not got there the posts are long enough as they are.

> I can’t repeat enough that “security” is always about protecting against some attackers, and there is no such thing as security in the absence of attacker

Which is why you might want to list the attacker capabilities needed to overcome each layer of security you’re providing.  
No need to go into wild stuff like spurious emanations, and endpoint security is also clearly out of scope.

> so saying that something has the best security against all attackers is just wrong

> who is the user, what do they do, which country they in, how they configure it, and who is the user trying to be secure against. I can’t repeat enough that “security” is always about protecting against some attackers, and there is no such thing as security in the absence of attacker

Finally, nuance. Maybe bring that up before making your caveat ridden first thesis about SimpleX providing more metadata privacy against user IDs than Cwtch.

> Specifically about Tor, it fails to protect anonymity of the users against attackers who run many Tor nodes

SimpleX fails to protect anonymity of users against attackers who run many SimpleX servers. You’re not adding security here. Once your system is more expensive to compromise than sybil attack against Tor, I might consider it an alternative.

> it also does not protect agains global passive adversaries

SimpleX does not protect against global passive adversaries. Otherwise Tor would have forked your tech day 1.

> the protection of a given Tor address is becoming worse the longer it is used

Again, when anonymity of Tor fails, the IP address of the user is unmasked. You’re implying you’re giving more protection than Cwtch, and that includes IP. You’re not hiding the IP from the server. You’re replacing centralized server architecture with decentralized server architecture, while arguing Matrix does not provide metadata privacy.

> For majority of users who don’t break laws

So who exactly are your users. Clearly it’s not homosexuals in arab countries, Uighurs in China, or activists in Myanmar. SimpleX, First messaging app for people who don’t fight their oppressors?

Clearly you undestand the nuance that law and ethics do not go hand in hand. If messaging apps are not protecting the most vulnerable in our societies, who on earth are they for?

> [usernames] enable long term mass surveillance for the commercial reasons at low cost

So what commercial surveillance is e.g. Signal doing? It’s clearly not aggregating user data for commercial purposes. What are you adding to the mix and to whom?

> Given the economics of mass surveillance, it’s not necessary to make building connection graph impossible - it’s enough to make it more expensive.

> So we as an organisation are much more interested in raising the baseline security for ordinary users than protecting from high budget attacks.

So incremental metadata security by requiring two warrants instead of one, as long as they’re not both under same provider like Hetzner. Got it. I do get that it’s not necessarily the case both entities running the server, are logging just for the fun of it, especially when the splitting scheme does strip full access to IP-to-IP metadata. It still doesn’t solve the fact running just two SimpleX servers is enough to get accurate metadata on many conversing SimpleX users’ IPs conversing.

> so all activity that happens within the circuit can still be used for correlation.

You know the Tor circuit lifetime is 10 minutes, right?

> But please stop selling solutions that have known limitations as perfect or as the best - it would put lives at risk.

Tor is not misrepresenting itself. The reason I say Tor is the best anonymity tool, is because the adversary with largest global passive tapping system, largest cryptanalytics force, and the largest general, offensive digital capability said that in their own top secret slides.

“_Still the King of high secure, low latencyt Internet Anonymity. **There are no contenders for the throne in waiting** _”

Source: [Tor: 'The king of high-secure, low-latency anonymity' | US news | theguardian.com](https://www.theguardian.com/world/interactive/2013/oct/04/tor-high-secure-internet-anonymity)

Also for NSA’s capabilities, direct quote

“_With manual analysis we can de-anonymize a very small fraction of Tor users, however, **no success de-anonymizing a user** in response to a TOPI request / **on demand** _”

Source: ['Tor Stinks' presentation –&nbsp;read the full document | US news | theguardian.com](https://www.theguardian.com/world/interactive/2013/oct/04/tor-stinks-nsa-presentation-document)

But I’m sure you have much more accurate information at your disposal. You really think they’re now saying “Until SimpleX decided to make two servers swap ciphertexts via anonymous credentials”?

> Some of your criticism about IP addresses was correct with the old network design, and we improved the network design based on your and other users’ criticism and suggestions.

Good. That’s the way forward.

1. Do what you can, use best practices or improve on them if you can. Do not upsell inferior designs.
2. Be upfront about the limitations, make threat model and limitations trivial to access: One click is the right amount. Right now there’s three, which given the already bloated navigation tree, is two clicks too much.

I’m not against your project, I’m against the way you fail at communicating its limitations. You’re not improving over Cwtch, you’re doing something that’s less secure, and you’re implying it is an improvement.

> But this doesn’t justify your absolutist stance about SimpleX threat model being bad for all users, which is what you say

Messaging apps are tools built for purpose. When you misrepresent the purpose your tool fits, I think it’s a bad tool in general. Half of the security comes from users knowing they’re using the right tool, and the front page is not helping.

> literally, and Cwtch threat model being good for all users.

Cwtch is communicating its threat model correctly. It’s not saying a persistent identifier isn’t there when it is.

> Both views are incorrect, and it is not the objective fact-based stance a professional/expert should be taking.

[https://x.com/mattblaze/status/1032429030878994433](https://x.com/mattblaze/status/1032429030878994433)

> What we do is hard work, and we are not interested to improve on what we think is a bad solution for most users.

It’s enough you are more transparent. Like I said above add something like

“Like your phone number is not hidden from Signal’s server, your IP address is not hidden from the SimpleX server. Your communication metadata with your contact is not hidden from two servers collaborating. We try to identify distinct entities are running the servers, but we can’t be sure what they’re doing behind closed doors.”

> The time and the userbase will be the ultimate judge on who is right.

Surely Telegram’s 800 million users are right what is the ultimate encrypted app. Maybe run some polls on your users, whether they think that the

“The first messenger without user IDs Other apps have user IDs: Signal, Matrix, Session, Briar, Jami, Cwtch, etc. SimpleX does not, not even random numbers. This radically improves your privacy.”

means IP address is protected, especially if they know Cwtch already figured out that part.

---

## Post 59 by @Matcher0313 — 2024-11-07T04:30:49Z

The exchange between @maqp and @epoberezkin has significantly eroded my confidence in Simplex. It appears that Simplex’s value proposition is predominantly tailored for high-risk individuals, highlighting a substantial marketing misalignment that may be exacerbated by VC funding pressures. I question whether this issue will be effectively addressed.

Separately, I’d appreciate a nuanced discussion on why some might prefer Cwtch over other options, notwithstanding its:

- Lack of a public audit, which raises legitimate security concerns.
- Relatively short operational history, introducing uncertainty about long-term viability.

Understanding the rationale behind potentially favoring Cwtch despite these drawbacks would help bridge the apparent disconnect in its perception.

---

## Post 60 by @maqp — 2024-11-07T10:07:32Z

SimpleX has potential to be a decent alternative to Signal. It should advertise itself as pseudonymous: You can register without a phone number. You can connect to people without giving your email and/or phone number to them. You don’t have to rotate username like with Signal. It can advertise itself as reduced trust required per server in terms of metadata, now that work is being done towards that. Large part of my criticism has been from period from before this improvement, when single server was able to accumulate IP-to-IP type comms metadata.

But SimpleX should not sell itself as having no identifiers whatsoever. Because it can’t be done practically. There must always be something that tells Alice’s client how to get the message to Bob and not Charlie. The only way to avoid doing that, is to use an architecture similar to network hubs (as opposed to switches), where every message is broadcast to everyone. This is impossible for practical reasons (like bandwidth) alone.

* * *

As for Cwtch, the security protocol operates around Tor Onion Services, so majority of the security critical code is in Tor’s domain. Applications will always have vulnerabilities, and it’s enough the project is maintained and fixes are deployed fast. And based on my UI bug reports, even low priority bugs like those are handled really well.

It’s important to develop with adversarial mindset, and from what I’ve seen, they’re taking security quite seriously. I haven’t looked at the code in detail (I’m not familiar with Go) but there seems to be unittests, and inputs are being fuzzed

> **[Discreet Log #7: UI Security Testing with Fuzzbot](https://openprivacy.ca/discreet-log/07-fuzzbot/)**
>
> Sarah Jamie Lewis dives into Cwtch UI security testing with Fuzz Bot

which shows testing is done with best practices.

But I agree I’d like to see an audit, as it shows extra pairs of eyes have scanned the code. But note that that’s all it shows, unless it shows something terribly wrong which I doubt.

---

## Post 61 by @Matcher0313 — 2024-11-08T01:33:59Z

I agree with your assessment, particularly regarding SimpleX’s marketing approach. As someone with a non-expert technical background, I’m heavily influenced by developer claims when evaluating privacy-focused apps. This makes accurate marketing all the more important, as I rely on clear, honest representations to make informed decisions. Transparent messaging is key to maintaining trust.

Your positive notes on Cwtch’s security practices help boost my confidence in the platform, making it a more appealing option for future consideration.

---

## Post 62 by @lurkeroy99245 — 2024-11-08T03:24:51Z

A lot of interesting dialogue here. I appreciate this thread. I don’t really use messaging apps a terribly large amount, but I do like the idea of SimpleX and Cwtch. Never really occurred to me to dive into which is better. I have that annoying friend group who don’t really care much about privacy. I campaign and campaign for them to download Signal and ONLY use that when they need to talk to me. What happens? They send me texts over plain SMS, lmao.

---

## Post 64 by @anon23293884 — 2024-12-01T11:28:00Z

@epoberezkin start by making it clear in our marketing that this is not a communication tool for criminals because it’s not designed for that purpose.

---

## Post 65 by @epoberezkin — 2024-12-01T11:58:57Z

> Has this conversation been continued with Sarah in another online forum or platform that you would be willing to share?

Not that I am aware of, but happy to engage.

> “because (in any system with distinct users) it is simply impossible, there is always an “identity” - typically a long term cryptographic key that it is necessary to know, authenticate and verify in order to guarantee other desirable properties.”

That is correct that if system has distinct users, then this system needs user identities. But this statement is simply a tautology, because “having distinct users” simply means being able to identify users.

And SimpleX network is simply not such a system - network server operators are not able to identify “users”, nor they need to do it in order to deliver messages, that’s why SimpleX network doesn’t have and doesn’t need user profile identifiers (that is, anything that uniquely identifies a user to a network).

That doesn’t mean that SimpleX uses no identifiers at all - to deliver messages it uses pairwise anonymous identifiers that identify connections between users, and for each user network servers would have as many such identifiers as this user has contacts - but these connection identifiers in no way link to a single user, from a network server operator point of view.

Client applications and users of course need a way to identify users to themselves, and for that reason they use their own, local identifiers in the local database. But neither of these identifiers are shared across different users.

That is if some network user were to communicate with Alice and with Bob over SimpleX network, then even if Alice and Bob compare their data there would be not a single piece of metadata that would prove to Alice and Bob that they communicate with the same user - no identifiers, no random numbers, and no identity keys that other messengers would use. At the same time this user would have both Alice and Bob in their contacts, in the same profile.

There is no magic, it’s just uncommon, and flips the usual communication network design, where user identifiers are used to deliver messages, to the design where only connection identifiers exist, and no user identifiers exist.

Sarah’s statement shows that she simply does not understand this design, and believes that no other than conventional design is possible.

---

## Post 66 by @epoberezkin — 2024-12-01T12:04:31Z

It might be easier to understand this design if you think about communication network as about a directional graph, where graph vertices represent network users, and graph edges (two for each duplex connections) represent connections between users.

Traditional design of communication network assigns identifiers to graph vertices, and this design is both much simpler (because each user is directly reachable and addressable) but also less private (for the same reason).

SimpleX network design assigns identifiers to graph edges, and while it makes it harder to develop client applications, and it also requires out of band communication to establish connection between users, it also results in a much more private design, that also protects users from being approached by strangers, as they are not addressable and not reachable in the network.

This section on the website visualises it: [SimpleX Chat: private and secure messenger without any user IDs (not even random)](https://simplex.chat/#simplex-explained)

---

## Post 67 by @epoberezkin — 2024-12-01T12:08:50Z

> [@maqp](#):
>
> But SimpleX should not sell itself as having no identifiers whatsoever.

We don’t. We only say there are no “user identifiers” in SimpleX network, that is “no identifiers in network protocols that uniquely identify users to the network”. It’s not the same as not having identifiers at all.

---

## Post 68 by @asanyan — 2024-12-01T14:28:23Z

@epoberezkin

I’m no expert but while I think that SimpleX’s claim of “no user IDs” is fine based on my assessment of the current discussion, it’s still objectively wrong and misleading to claim that “You have complete privacy” from SimpleX servers, as you acknowledge yourself that no solution is perfect for everyone and that SimpleX servers can still obtain some information about its users despite your best efforts.

In my opinion, making such a claim does nothing for your marketing towards less savvy users and all it does is cause slightly more savvy individuals to raise eyebrows.

Also, unrelated but please support native wayland on linux.

---

## Post 69 by @epoberezkin — 2024-12-01T16:36:14Z

> It appears that Simplex’s value proposition is predominantly tailored for high-risk individuals,

Absolutely not. We have many family users who like the fact that they cannot be approached by strangers.

It is the same as to say that Tor’s, therefore Cwtch’s, value proposition is tailored to high risk users, which is simply not correct.

---

## Post 70 by @epoberezkin — 2024-12-01T16:39:26Z

I think that claim “complete privacy” is helpful, but not in the way you think. You are right that less savvy users can’t assess and ignore it, but more savvy users put more energy into scrutinising the system, and pointing out the flaws, that we consistently improve.

So it kind of helps making system better, and does no harm to anyone, so I don’t see why we should drop it. We do want to be criticised for any difference with “complete privacy” we have, and we will continue reducing the gap.

As for wayland, I agree, but it would happen either when framework we use supports it, or if at any future point we will decide to redevelop linux app (the latter is very unlikely in the foreseeable future, but framework support seems to be coming).

---

## Post 71 by @maqp — 2024-12-04T08:44:44Z

John Smith writes his first messaging app and calls it unbreakable. SwiftOnSecurity spots four vulnerabilities. Smith patches them and calls it unbreakable again. Bruce Schneier comes along and points out sixteen zero days. Smith patches those and calls it unbreakable again.

Three guesses if anyone trusts the next version with its new features.  
You can only cry wolf so many times.

Hyperbolic statements like complete privacy are idiotic, when e.g. you’re doing absolutely nothing regarding endpoint security. I know it’s not in networked TCB SW domain, but it’s not being addressed at all, and since you’re not going to do anything about that issue even if it’s pointed out, you’re not entitled to saying “complete”, unless you want to get called out for spouting snake oily corporate puff.

---

## Post 72 by @maqp — 2024-12-04T09:07:36Z

This is silly. Software using cryptography has always been dual-use goods. Also, the GPLv3 license allows the user to run the program for any purpose.

It’s usually only proprietary software that issues control to what the user can do with it, and any code used to monitor what the user does, will not be tolerated by the community. You can check the Chat Control law in EU to see how well the idea of scanning attachments against blacklisted hashes, is being received. It’s not exactly hard to disable the code running the scan when the code is open. So you can’t enforce only good guys use products. You can only do stuff like ban encryption which hurts everyone, and will only result in criminals using encryption.

I’m not sure why I had a dozen notifications regarding your crusade when I logged back in, but leave me and my critique towards SimpleX etc out.

---

## Post 74 by @quaking — 2025-03-02T05:01:31Z

@maqp

Had to log-in just to say thanks for the analysis and breakdown on all of this.

It was technical but you made it easier to follow and understand, whilst also sharing some significant points of critic on SimpleX and the communication from its devs which I was not aware of - one of the best threads on secure messengers with great info, critic and feedback.

Definitely keeping a closer eye on SimpleX’s moves going forward and now looking to try out Cwtch and see what it’s all about.

Thanks again. :slightly_smiling_face:

---

## Post 75 by @ignoramous — 2025-03-02T11:07:04Z

> [@maqp](#):
>
> Alsos be upfront that smaller authoritarian nation states that compromise the servers can access the logs

> [@epoberezkin](#):
>
> But please stop selling solutions that have known limitations as perfect or as the best - it would put lives at risk.

Agree. Please also see:

> <https://github.com/simplex-chat/simplex-chat/issues/5692>
>
> ### Is there an existing issue for this?
> 
> - [x] I have searched the existing iss…ues
> 
> ### Platform
> 
> all
> 
> ### App version
> 
> 4.3.2
> 
> ### Feature
> 
> The readme/protocol overview needs to be updated on how SimpleX can or cannot be compromised by IPA. Recently, Apple disabled (?) *Advanced Data Protection* for its customers in the UK (while Signal is quitting Sweden in lieu of a very similar law there).
> 
> Since SimpleX is based in the UK (?),[^1] and is a "federated" protocol, its protection against [IPA](https://en.wikipedia.org/wiki/Investigatory_Powers_Act_2016)[^0] (or lack thereof) needs to be made explicit for the sake of completeness of the threat model: https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md#threat-model
> 
> [^1]: Resolving disputes. You agree to resolve any Claim you have with SimpleX Chat Ltd and/or preset server operators relating to or arising from these Conditions, them, or the Applications in the courts of England and Wales ([source](https://simplex.chat/privacy/) / [mirror](https://archive.today/L00vJ)).
> 
> [^0]: *Title*: An Act to make provision about the interception of communications, equipment interference and the acquisition and retention of communications data, bulk personal datasets and other information; to make provision about the treatment of material held as a result of such interception, equipment interference or acquisition or retention; to establish the Investigatory Powers Commissioner and other Judicial Commissioners and make provision about them and other oversight arrangements; to make further provision about investigatory powers and national security; to amend sections 3 and 5 of the Intelligence Services Act 1994; and for connected purposes.

---

## Post 76 by @phnx — 2025-03-02T11:50:49Z

> while Signal is quitting Sweden in lieu of a very similar law there

This is misleading. Signal is threatening to quit Sweden _if_ the new law passes, not based on existing law. The IPA is already law in the UK.

---

## Post 77 by @ignoramous — 2025-03-02T12:18:58Z

> [@phnx](#):
>
> Signal is threatening to quit Sweden _if_ the new law passes,

I see.

To my knowledge, such “backdoor” laws already exists in countries where Signal and WhatsApp have a big presence (like, [the one demanding “traceability of messages” in India](https://www.internetgovernance.org/2024/10/20/encryption-under-siege-in-india-national-security-the-erosion-of-digital-privacy/)). Neither Signal or WhatsApp has quit India, yet. In the latter’s case, they won’t, given their vast business presence in the country.

> not based on existing law

I said “similar” law?

> The bill states that companies like Signal and Whatsapp will be forced to store all messages sent using the apps ([ref](https://www.svt.se/nyheter/inrikes/signal-lamnar-sverige-om-regeringens-forslag-pa-datalagring-klubbas) / [mirror](https://archive.is/34SQm)).

Note though, the “backdoor” requirement exists in Swedish 2020:62, which is now being made permanent, though it may not concern Signal.

---

## Post 78 by @phnx — 2025-03-02T12:26:57Z

> [@ignoramous](#):
>
> I said “similar” law?

Which implies that the law Signal is concerned about already exists, which it doesn’t. It is a law proposal at the moment.

---

## Post 79 by @epoberezkin — 2025-03-03T18:32:51Z

1. You are not correct about the legislative realities of different countries, focussing on what mass media pays more attention to at any given moment, instead of paying attention to the real risk assessment of different legislative environments. If any jurisdiction makes you feel warm and fuzzy, then you are simply not informed well enough. We are exploring Iceland as an alternative, but it’s also not all rosy.

Most countries have similar legal provisions to “capability requests” of IPA law, and the provisions of IPA are far from the worst - e.g., the US FISA 702 provisions have much fewer safeguards.

Capability requests under the IPA law have 2 pages worth of limitations and due process, and we have an excellent legal counsel who advises us on that.

I see the only answer to jurisdictional risks to continue evolving multi-operator network where users are in control which jurisdictions they choose operators from, unlike they can be in Session or in Tor, irrespective of the number of nodes.

1. You also have wrong expectations about what a threat model should cover. Security threat model usually covers what a compromised part of the system can do. The confidential capability request can only be applied to server code, it won’t be confidential for open-source client code. And what a compromised server can do is already covered in threat model – how exactly it is compromised is out of scope - there any too many scenarios.

2. Further, if we are compelled to run a modified server code that is different from published open source code we would be in direct violation of our Privacy policy, unless we change it. While there indeed exist legal powers to compel us to change server code confidentially, without disclosing it, there are no legal powers to compel violating contract conditions, so even if we had to change code we run, we’d have to amend our Privacy policy to remove this obligation.

Any privacy policy updates are shown to the users in the app - it’s coming for example in today’s beta release and in v6.3 release on March 8: [docs: update privacy policy by epoberezkin · Pull Request #5646 · simplex-chat/simplex-chat · GitHub](https://github.com/simplex-chat/simplex-chat/pull/5646/files)

So if you see that provision that we must run the same code as we publish disappear, then this would be a cause for alarm. We have zero motivation to break contracts - I don’t do it under any circumstances.

---

## Post 81 by @anon6884803 — 2025-03-03T18:43:39Z

> [@epoberezkin](#):
>
> it won’t be confidential for open-source client code

This is false though. You can be compelled to not open source the surveillance part, and unless everyone is building and running reproduced builds (which are also in turn verified to not have any shenanigans in make) and sounding an alarm about a mismatch before harm is done to relevant users, it is just not true.

> [@epoberezkin](#):
>
> no legal powers to compel violating contract conditions

UK has parliamentary sovereignty, which means it has the legal power to mandate contract violation and stop any appeal, since there are no actual written constitution to constrain the parliament. “Parliament can do anything or everything but make a man a woman or vice versa.”

> [@epoberezkin](#):
>
> Any privacy policy updates are shown to the users in the app

Can be compelled to not show the notification.

> [@epoberezkin](#):
>
> And what a compromised server can do is already covered in threat model

Yes, but the laws we are talking about would mean the things you say the server can do will ALL be done:

> - learn when a queue recipient is online
> - know how many messages are sent via the queue (although some may be noise or not content messages).
> - learn which messages would trigger notifications even if a user does not use [push notifications](https://github.com/simplex-chat/simplexmq/blob/be81fe1f74c7bf7c62fd7ef8f4e6106f2fd2edcb/protocol/push-notifications.md).
> - perform the correlation of the queue used to receive messages (matching multiple queues to a single user) via either a re-used transport connection, user’s IP Address, or connection timing regularities.
> - learn a recipient’s IP address, track them through other IP addresses they use to access the same queue, and infer information (e.g. employer) based on the IP addresses, as long as Tor is not used.
> - drop all future messages inserted into a queue, detectable only over other, redundant queues.
> - lie about the state of a queue to the recipient and/or to the sender (e.g. suspended or deleted when it is not).
> - spam a user with invalid messages.

* * *

Don’t you think attesting server code and only distributing built from source binaries with community verification of reproducibility before each release on an unassociated public page (hosted in a neutral jurisdiction) a better guarantee?

---

## Post 82 by @epoberezkin — 2025-03-03T20:50:24Z

In general what you write is FUD and is not consistent with IPA.

You are projecting a lot of “can be compelled” without any actual legal basis. IPA capability notices have tightly defined scope, and most of your ideas fall outside of what a Secretary of State can demand under the IPA.

> You can be compelled to not open source the surveillance part

On what grounds? Point to specific IPA provision, as I haven’t seen anything there that would allow making such request. It would not fall under “capability request”.

> Parliament can do anything or everything but make a man a woman or vice versa.

Parliament has nothing to do with IPA capability notices - they are issued only by Secretary of State under the IPA.

> Can be compelled to not show the notification.

Again, on what grounds? Point to specific provision in IPA.

> Yes, but the laws we are talking about would mean the things you say the server can do will ALL be done:

Nonsense, as doing ALL of that would make it dysfunctional, and such requirements cannot be made under IPA. You really need to read the law and not mass media if you are going to interpret the law.

> Don’t you think attesting server code and only distributing built from source binaries with community verification of reproducibility before each release on an unassociated public page (hosted in a neutral jurisdiction) a better guarantee?

Yes, but it is unrelated to your concerns.

In general, I find it strange that the focus of attention of privacy community is 100% determined by mass media coverage.

Yes, IPA is a worrying law, that allows some powers to the state that we’d rather did not exist. And we have more checks and balances here than any other operator I know. But there are two things that are important here:

1. IPA requests can be made to companies in any country (and the whole reason we are talking about it is mass media coverage of Apple).
2. the laws of all western countries, including the US, most EU countries (I am not aware of one that doesn’t have it, I just didn’t investigate all), and even Switzerland have legislative provisions that allow the state to make capability requests to the operators.

So you are right to worry about the state surveillance risks. You are wrong to think that the UK has risks that other countries don’t have. In some cases there are advantages, as there are certain level of protection from law enforcement requests from other countries that all have to go via the Home Office under MLAT agreements.

So stop using mass media as the guide for your attention, and start thinking independently.

If you were to choose our jurisdiction, which one would make you feel any better? Because I really don’t have answer to that question.

---

## Post 83 by @epoberezkin — 2025-03-03T21:07:08Z

> [@phnx](#):
>
> Which implies that the law Signal is concerned about already exists, which it doesn’t. It is a law proposal at the moment.

There may be additional provisions that are now considered, but again - Sweden already has similar laws: Signals Intelligence Act (FRA law) and Electronic Communications Act (LEK)

While they use different language from IPA, they allow the state exactly the same powers, if not wider.

Why the UK became such a focus of attention then you may ask? Obviously, because of the diplomatic tensions with the US.

All you can do is to pay less attention to mass media. And to marketing posturing of companies who make promises that they know they won’t have to follow through.

I am very open to recommendations of better jurisdictions, but it seems illusionary, tbh.

---

## Post 84 by @epoberezkin — 2025-03-03T21:10:20Z

So don’t get me wrong - I am not arguing that the UK is great - far from it. But it’s at least as bad or even worse from the state surveillance point of view everywhere from my analysis. And the only mitigation we see is splitting users comms across multiple operators in different jurisdiction, which is what we are working towards - technically.

---

## Post 85 by @anon6884803 — 2025-03-03T21:14:53Z

I did not argue at all if UK is better or worse. I simply asked if it is better to have technical guarantees of transparency rather than pinky swears.

You called the arguments given as FUD, when it is all provably possible. Here are relevant provisions, have your hotshot lawyer look at it, and next time talk to a concerned user better I guess.

> [@epoberezkin](#):
>
> On what grounds? Point to specific IPA provision, as I haven’t seen anything there that would allow making such request. It would not fall under “capability request”.

Because it is not a capability. It is forced non disclosure. ([Investigatory Powers Act 2016](https://www.legislation.gov.uk/ukpga/2016/25/section/56))

> [@epoberezkin](#):
>
> Parliament has nothing to do with IPA capability notices - they are issued only by Secretary of State under the IPA.

The point flew over your head. You said your thin piece of privacy policy is inviolable. I taught you why it isn’t. UK does not have inviolable rights or contracts, since there is absolute parliamentary sovereignty.

> [@epoberezkin](#):
>
> Again, on what grounds? Point to specific provision in IPA

Answered above.

> [@epoberezkin](#):
>
> Nonsense, as doing ALL of that would make it dysfunctional, and such requirements cannot be made under IPA.

Nonsense, the point wasn’t about a server doing All of it simultaneously as you imply in your narrow interpretation.

> [@epoberezkin](#):
>
> privacy community is 100% determined by mass media coverage

I find it interesting that someone who constantly misunderstands laws keeps blaming some vague “community” for his own short sightedness.

> [@epoberezkin](#):
>
> If you were to choose our jurisdiction

None. I wasn’t asking for jurisdiction change, I was asking for more technical guarantees. But since what you wrote allows you to make my points into trivial nonsense, you prefer to lie.

Very disappointed in the hostile response. Should have expected nothing more from another privacy project building hype without actual long term thought about their threat model. The value of the leader in your space, Signal, was always the crystal clear threat model and communication. SimpleX seems to lag a lot there.

> [@anon6884803](#):
>
> Don’t you think attesting server code and only distributing built from source binaries with community verification of reproducibility before each release on an unassociated public page (hosted in a neutral jurisdiction) a better guarantee?

Hope you see the value of this or at least talk about why this is economically or technically infeasible right now or forever.

Before replying with more FUD, I recommend understanding that to refute my point using legal smoke and mirrors, you will need a narrow exception explicitly written out that defends against a broad law. If your defence is the State doing a narrow interpretation of a broad law, then it is no defence at all, since it depends on subjective benevolence of State, and not explicit guarantees.

---

## Post 86 by @epoberezkin — 2025-03-03T21:41:51Z

> I did not argue at all if UK is better or worse. I simply asked if it is better to have technical guarantees of transparency rather than pinky swears.

I think both are important, and legal guarantees are more than pinky swears.

What technical guarantees you are expecting though? Reproducible builds are not achievable in the short term.

> Because it is not a capability. It is forced non disclosure.

Publishing open-source code does not qualify as disclosure of the capability notice. I am aware that we cannot disclose notices. Nothing in the IPA prevents publishing open-source code.

Likewise, notifying users about changes in our privacy policy, and changing our privacy policy would not qualify as the disclosure of the notice.

> I find it insane that someone who constantly misunderstands laws

My understanding of the law is based on reading of the law and legal advice. But you seem to prefer to apply wider interpretation of the law than it says.

> Very disappointed in the hostile response.

No hostility at all. I am just engaging with you. I am not into “thank you for your questions” style. You made comments, I am responding, bring it on - it all helps.

> without actual long term thought about their threat model.

This is not true, we are actually thinking about it long term, and about how to avoid the same compromise of the underlying assumptions for threat model that Tor now has.

> Signal, was always the crystal clear threat model and communication.

Unless you are affiliated with it, I don’t see how you can call Signal’s “smoke and mirrors” approach to marketing when they fail to disclose most technical limitations “crystal clear” - with regards to multi-device attack vectors, with sealed sender not really working, with PQ in double ratchet having little to do with double ratchet, etc. etc. Signal is certainly better at marketing posturing, but I don’t see how it’s an advantage in communication style…

> Don’t you think attesting server code and only distributing built from source binaries with community verification of reproducibility before each release on an unassociated public page (hosted in a neutral jurisdiction) a better guarantee?

Yes, I would love to get to the point when we can do that. It would indeed be an important technical guarantee.

> State doing a narrow interpretation of a broad law

State does not interpret laws. I understand your point here, but interpreting the law wider than it is written or intended is also wrong.

---

## Post 87 by @anon6884803 — 2025-03-03T21:45:51Z

Much more reasonable.

> [@epoberezkin](#):
>
> Publishing open-source code does not qualify as disclosure of the capability notice.

Maybe. Legal theory, needs testing.

> [@epoberezkin](#):
>
> Signal’s “smoke and mirrors”

Threat model always seemed pretty clear to me. I read docs not marketing, so maybe there is a mismatch.

Why a reproducible build is not possible right now. I am happy to volunteer build infrastructure, and publish it for cross verification. I am sure others are too. Software attestation can be costly, a poor man’s implementation can always be automating destruction then redeployment of server images on hardware after periodic intervals. This ensures that unless the host machine itself is infected, any modified code will not stay persistent.

---

## Post 88 by @ignoramous — 2025-03-03T22:28:49Z

> [@anon6884803](#):
>
> Maybe. Legal theory, needs testing.

maqp made a similar point a while back.

> [@maqp](#):
>
> So are you providing privacy by policy, or privacy by design? Pick a lane

> [@epoberezkin](#):
>
> And the only mitigation we see is splitting users comms across multiple operators in different jurisdiction, which is what we are working towards - technically

Nice. Besides, reproducible builds and remote attestation may also help, but as you say, building that is going to be more involved and may take time. Though, if SimpleX remains in the UK, it becomes imperative to pursue those, as all the fancy cryptography & protocol wouldn’t mean much (to me, if not to anyone else).

> [@epoberezkin](#):
>
> So stop using mass media as the guide for your attention, and start thinking independently.

Please don’t patronize others. You’re better than that.

> [@epoberezkin](#):
>
> You are wrong to think that the UK has risks that other countries don’t have

As a SimpleX user, I’m worried about SimpleX being based in the UK. What other providers do, and what jurisdictions they are in, are none of my concerns.

> [@epoberezkin](#):
>
> You also have wrong expectations about what a threat model should cover

My bad. May be IPA concerns the “Trust in servers” section or the “SimpleX objectives” section?

> Security against passive and active (man-in-the-middle) attacks: the parties should have reliable end-to-end encryption and be able to detect the presence of an active attacker who modified, deleted or added messages.
> 
> …
> 
> In particular SimpleX provides better privacy of metadata (who talks to whom and when) and better security against active network attackers and malicious servers
> 
> …  
> servers do not store any user information (no user profiles or contacts, or messages once they are delivered), and primarily use in-memory persistence.

In fact, [the document](https://github.com/simplex-chat/simplexmq/blob/be81fe1f74c7bf7c62fd7ef8f4e6106f2fd2edcb/protocol/overview-tjr.md) even highlights the protocol’s strengths:

> SimpleX supports measures (managed transparently to the user at the agent level) to mitigate the trust placed in servers. These include rotating the queues in use between users, noise traffic, supporting overlay networks such as Tor, and isolating traffic to different queues to different transport connections (and Tor circuits, if Tor is used).

Shouldn’t it recognise where such measures fall apart?

> [@epoberezkin](#):
>
> If any jurisdiction makes you feel warm and fuzzy, then you are simply not informed well enough

I’ve been informed Kenya is nice.[[1]](#footnote-83042-1)

* * *

1. Many assume that because they are traveling to Africa, it must always be warm. This is not the case in Kenya during the night and early morning, however, particularly in June, July and August. You can expect days to be absolutely beautiful, temperate and sunny ([source](https://www.nathab.com/know-before-you-go/african-safaris/east-africa/weather-climate/kenya/)). [↩︎](#footnote-ref-83042-1)

---

## Post 89 by @epoberezkin — 2025-03-03T22:35:53Z

> Much more reasonable.

Huh. Will fix :slight_smile:

> Maybe. Legal theory, needs testing.

100%. What I know is that I am as entitled to have legal theories as anybody else. The law is 100% based on precedents, not on statutes such as IPA, so our reading of IPA doesn’t really matter. What matters is how similar disagreements were resolved in the past, in similar situations. It’s only Supreme Court judges who can make a final decision about who’s right – they are still reasonable at this level.

> Why a reproducible build is not possible right now.

GHC is fundamentally non-deterministic. A lot of (unknown amount, really) work on core GHC and dependencies to make build deterministic. I estimate like 6 months of somebody who can contribute to GHC. Maybe I am too pessimistic, and maybe it requires some experiments.

> I am happy to volunteer build infrastructure, and publish it for cross verification.

We will certainly use it once we can have deterministic builds. I also think that reproducibility without each release actually reproduced, compared with published releases and signed by trusted community members is rather pointless.

What is needed is somebody’s time to try to identify the sources of non-determinism in the build. Quick attempt failed. Somebody needs to spend several days at least to understand and diagnose it.

---

## Post 90 by @epoberezkin — 2025-03-03T22:40:02Z

> [@maqp](#):
>
> So are you providing privacy by policy, or privacy by design? Pick a lane

I think both are critically important - technical guarantees combined with legal guarantee. E.g., you cannot guarantee technically that different nodes are run by independent parties who don’t share data - it can only be guaranteed legally. I would certainly prefer Tor + operators guarantees than Tor without such guarantees. So we are building a network that I would like to buy. Not there yet.

> Though, if SimpleX remains in the UK, it becomes imperative to pursue those, as all the fancy cryptography & protocol wouldn’t mean much (to me, if not to anyone else).

Again, as I commented above I think the “in the UK” is a red herring here, and all jurisdictions I know are similarly bad. So it is imperative to pursue it regardless. And I also think it’s imperative that the org behind the project is in multiple jurisdictions and not in just one. Jurisdictional decentralization is the only answer to jurisdictional risks.

---

## Post 91 by @epoberezkin — 2025-03-03T22:41:05Z

> [@ignoramous](#):
>
> I’ve been informed Kenya is nice.

Huh :slight_smile:

---

## Post 92 by @ignoramous — 2025-03-04T09:54:18Z

> [@epoberezkin](#):
>
> I think both are critically important - technical guarantees combined with legal guarantee.

Which is why I opened a bug to cover IPA in the “overview” if not in the “threat model” section of the overview (but it was closed without much fanfare, except here on PG, I suppose). As @anon6884803 explained above, the “overview” doc on SimpleX’s GitHub already talks about adversaries in a broad sense; except for this one adversary that may _own_ most if not all of SimpleX’s guarantees.

As a user, I just don’t know how or why that might come about. Given that you already have a legal counsel on retainer, you may as well write about IPA like Mullvad does for Swedish laws, for example ([1](https://mullvad.net/en/help/swedish-legislation), [2](https://mullvad.net/en/help/new-law-for-electronic-communications)). It isn’t part of the “threat model” as you see it, but it is part of overall OpSec for your users (in this case: me). On the face of it, the “overview” doc seems to make wide ranging claims about “trust”, and so talking about IPA as publicly doesn’t seem out of place, tbh.

> [@epoberezkin](#):
>
> Again, as I commented above I think the “in the UK” is a red herring here, and all jurisdictions I know are similarly bad

I see, but since the _entire_ point of SimpleX is its superior protocol+cryptography, which if it can be backdoored (or whatever IPA allows for, I don’t know), makes it useless to at least a section of your userbase, if not for everyone.

> [@epoberezkin](#):
>
> and all jurisdictions I know are similarly bad.

Sounds like an excuse, imo. For example, I’d not use WireGuard clients if it could be backdoored by the French govt (its author, Jason Donenfeld, is based in France), but since Jason has put in the time and effort for reproducible builds of the official clients, I feel confident using those (regardless of how remote the threat may be). Same goes for what Google is doing with tamper-proof hardware in vendor-agnostic _Open Titan_, just so trusted/secure/verified boot guarantees remain anchored in user’s trusts solely on silicon manufacturer and the silicon owner (the equivalent for SimpleX would be to provide remote attestation for its servers and reproducible builds for its clients, I think?). All that to say, folks in the security/privacy industry are already putting in the work.

> [@epoberezkin](#):
>
> Jurisdictional decentralization is the only answer to jurisdictional risks.

Unsure if it means what I think it means (you mean like Linux and Tor?), but it can’t be the _only_ answer? May be you’ve thought about this deeply than I have.

---

## Post 93 by @epoberezkin — 2025-03-04T10:25:14Z

> [@ignoramous](#):
>
> As a user, I just don’t know how or why that might come about. Given that you already have a legal counsel on retainer, you may as well write about IPA like Mullvad does for Swedish laws, for example ([1](https://mullvad.net/en/help/swedish-legislation), [2](https://mullvad.net/en/help/new-law-for-electronic-communications)). It isn’t part of the “threat model” as you see it, but it is part of overall OpSec for your users (in this case: me).

Reasonable. But we have 5% of Mullvad budget I think, and no - it’s not a counsel on retainer - we pay for the advice as and when needed.

Thanks for the links. I will think about some opsec advice page on the site.

> On the face of it, the “overview” doc seems to make wide ranging claims about “trust”, and so talking about IPA as publicly doesn’t seem out of place, tbh.

This doc should remain purely technical, what you want belongs elsewhere - probably linked to Transparency page.

> Since point of SimpleX is its superior protocol+cryptography, which if it can be backdoored (or whatever IPA allows for, I don’t know), makes it useless to at least a section of your userbase, if not for everyone.

That’s not correct, as compromised servers do not allow establishing who talks to whom, unless it’s coordinated compromise across multiple operators.

The primary focus is on minimizing trust to servers. Making them trustworthy is a secondary focus.

> Unsure if it means what I think it means (you mean like Linux and Tor?), but it can’t be the _only_ answer? May be you’ve thought about this deeply than I have.

By jurisdictional decentralization I mean two things:

- having different parts of SimpleX organization established as legal entities in different jurisdictions - it is an ongoing effort.
- having different operators preconfigured in the app also in different jurisdictions - also an ongoing effort.

---

## Post 94 by @epoberezkin — 2025-03-04T10:34:19Z

> [@anon6884803](#):
>
> I am happy to volunteer build infrastructure, and publish it for cross verification. I am sure others are too.

Reproducible builds are not yet there - but my IP ops unexpectedly tells me that server builds might already be reproducible, which is surprising, but will soon know more.

What I am interested in doing irrespective of reproducibility is “community server audits”. The way it would work with some selected members of community we can trust (can’t be fully anonymous, would require signing some agreement under some known and reputable online identity - we won’t need to know name and address, a recognisable alias is sufficient):

- for all planned (non-urgent) server updates we could livestream terminal session to these community members that would allow you to see how long the server was running, that it has the same digest as when it was started, and the digest of the new version matching digest of GitHub distribution.
- you would then sign (anonymously for others) a statement confirming that we indeed run the code that we publish based on the presented facts (time the server was live based on systemd data, digest of binaries, etc.).

It does seem like a bit of an effort and time commitment from both sides, but we can try to make it manageable.

Would there be an interest to participate?

---

## Post 95 by @anon6884803 — 2025-03-04T12:18:22Z

If the server code is indeed reproducible, and people can verify the initial and changed server hashes, I do think it is the closest to server transparency without costly HSMs.

But you will need folks who already have excellent reputation. I am sure you can find some prominent names as I know a lot of smart folks are following SimpleX closely. If you can get someone like Nadim Kobeissi, Akc3n (GOS mod), etc. (these are the ones who have explicitly been interested in SimpleX off the top of my head) it will make it very easy to gain trust. A mix of technical experts and privacy advocates should be considered. This is not an operation that will risk their reputation (since they are just verifying hashes match), so I don’t think that will be the issue. But convincing them to do so might be tough. Care should also be taken to take less volatile personalities, so that a bad Server signer does not malign SimpleX reputation. Some server signers can ask to see who else is doing this to understand if they wish to participate or not. Will be a delicate operation :face_without_mouth:

Immediate benefit of course is having to spend less technical resources on hacking together server transparency cheaply, while also having active and continuous endorsement. A side benefit is reducing trust in the other parties that host servers, since the first hop can always be SimpleX servers that are verified. Sounds like a good start to me.

---

## Post 96 by @epoberezkin — 2025-03-05T18:53:25Z

> [@anon6884803](#):
>
> If the server code is indeed reproducible

Yes, confirmed, it is reproducible when we build in docker. We already have a GitHub action that builds in docker, so GitHub hashes will be the same as with builds by any users, so we will be able to additionally sign these hashes locally and have independent verifiers to do the same for stable server releases.

We will aim to do it for 6.3 release of the servers this Saturday.

---

## Post 97 by @maqp — 2025-03-07T11:50:37Z

> [@epoberezkin](#):
>
> I think both are critically important - technical guarantees combined with legal guarantee.

The point was to choose beforehand which you wish to provide:

Privacy by policy means the client does not actively protect the user from all third parties, especially the service provider.

Privacy by design means that it does.

It’s ok to provide different type of protection for metadata and content. E.g. Signal is content-private by design, metadata-private only by policy. Signal chooses not to collect that data, and it has put some mechanisms like remote attestation that allows the client to verify that is the case. And we even have court docs to show this is the case. But still, it’s not impossible to make server collect all metadata if a) there is a secret interpretation of a secret national security law and b) Intel’s SGX is not trustworthy.

Cwtch is metadata-private by design as the service provider isn’t able to collect anything without the client’s code enabling that.

The legal system is important, from the PoV of not having draconian laws, but if the Snowden docs showed something, it was that the public might not have access to the content of law. Whose to say if FISA court might under some fascist regime one day rubber-stamp actions similar to [cointelpro](https://fi.wikipedia.org/wiki/Cointelpro).

It’s also the case [Snooper’s Charter](https://en.wikipedia.org/wiki/Investigatory_Powers_Act_2016) gives UK LEA permission to hack computer systems, and IIRC, we learned from Snowden papers, that foreign targets do not enjoy constitutional protections, so, nation states can compromise foreign systems, and exchange the information, bypassing said constitutional protections.

With a threat landscape this complex, I would argue the legal system is at its most useful state, when it allows privacy-by-design systems to exist. If not, your options are limited: relocate or fight the system.

As I have said multiple times: the key thing SimpleX is missing, is transparent threat modeling. Basically, tell users what types of adversaries can breach each layer of security, and what types can’t.

> [@epoberezkin](#):
>
> E.g., you cannot guarantee technically that different nodes are run by independent parties who don’t share data - it can only be guaranteed legally.

Which is why I implored you above to be open about this. “We can’t verify independent parties are running the nodes”. This means you acknowledge node pool sizes play a role in providing resistance against the end-to-end correlation. The only thing the legal entity protects against is domestic for-profit data mining companies, and maybe rogue LEA employees. Criminals and foreign agencies, like batman, have no jurisdiction.

> [@epoberezkin](#):
>
> I would certainly prefer Tor + operators guarantees than Tor without such guarantees.

As would I. But that’s not what you brought to the table. I asked you to default to Tor, and you wanted to make it an optional step with complex setup instructions of several pages. You deployed an inferior system compared to Tor, and you marketed it on the front page as an improvement over Cwtch that defaulted to Tor.

> [@epoberezkin](#):
>
> So we are building a network that I would like to buy. Not there yet.

And this is also OK. When someone starts writing a brand new messenger directly into GitHub, by the time the application has an MVP that allows communication over the network, the standard disclaimer of “ **No encryption whatsoever has yet been implemented, do not use this application in production** ” should be in the project README (read: on the front page with big letters).

If the client-server encryption is implemented first, then updating the threat-model to reflect it: “The system uses basic TLS, but not end-to-end encryption. This means or server gets access to your messages, know this before using it.”

Transparency shows you’re making progress, and that you’re taking security seriously. It’s your job to know your job. If this costs a few early adopters who misunderstand this to mean the application is insecure or struggling, let me be clear: FUCK. THEM.

Your duty is to your users. SimpleX doesn’t look like it’s the next Telegram, it actually seems to try instead of just appearing to try. Everything is E2EE and I respect that. A lot. That’s why I want to believe I’m not wasting my breath writing this. A lot of the security of the product comes from the privacy by design. But like you said, it’s also the matter of policy. And that policy must include the transparency of threat model to users, if for no other reason, because no security architecture will stop all adversaries, and the only way you protect the users, is by letting them make informed decisions. Some things are best said face-to-face. It doesn’t have to be illegal stuff. Some users would probably not use SimpleX to exchange nudes, if they knew state mass surveillance employees automating endpoint hacking might [use them like trading cards](https://arstechnica.com/tech-policy/2014/07/snowden-nsa-employees-routinely-pass-around-intercepted-nude-photos/).

---

## Post 98 by @anon6884803 — 2025-03-07T16:02:24Z

> [@maqp](#):
>
> Privacy by design means that it does.

No technical or design solution can solve for social problems. In the end every technology depends on some privacy policy, some social contract being adhered to.

> [@maqp](#):
>
> Cwtch is metadata-private by design as the service provider isn’t able to collect anything without the client’s code enabling that.

Cwtch is also not usable. Trust me I tried.

> [@maqp](#):
>
> is transparent threat modeling

Their published threat model seems fine, is there anything specific they seem to be missing?

> [@maqp](#):
>
> We can’t verify independent parties are running the nodes

Nobody can. Not even Tor. I agree I would like to see something like [tor threat model](https://community.torproject.org/threat-model/threat-positioning/) in simplex threat model document.

> [@maqp](#):
>
> inferior system compared to Tor

I don’t understand this. Isn’t Tor massively compromised due to the network having large number of nodes controlled by nation states, concentration of servers in specific countries, etc. Isn’t SimpleX network a chance for a clean slate with public providers who have their reputation tied to not being malicious (cloudflare and the like). Isn’t a corporate run network more sybil resistant than anonymous volunteer network.

> [@maqp](#):
>
> **No encryption whatsoever has yet been implemented, do not use this application in production**

But SimpleX is not in that state. It is perfectly usable except in very specific sophisticated attacks, which I agree they should add to their threat model. I do not think it is fair to ask a new project to plaster their deficiencies on the front page, especially when more established and more critical projects also start with their sales pitch and more details in threat models.

> [@maqp](#):
>
> Some users would probably not use SimpleX to exchange nudes, if they knew state mass surveillance employees automating endpoint hacking might [use them like trading cards](https://arstechnica.com/tech-policy/2014/07/snowden-nsa-employees-routinely-pass-around-intercepted-nude-photos/)

They were talking about legacy systems like sms. Any E2EE app worth the name stops this kind of attack. Could have chosen a better example, since this example subtly paints it in a particularly bad light.

Are you attached to cwtch per chance?

---

## Post 99 by @maqp — 2025-03-08T11:34:01Z

> [@anon6884803](#):
>
> No technical or design solution can solve for social problems. In the end every technology depends on some privacy policy, some social contract being adhered to.

Like I said, it needs a law that allows privacy-by-design systems to exist. The rest of the social contract is between the people doing the communication, and that’s outside the domain of what an app can do.

> [@anon6884803](#):
>
> Cwtch is also not usable. Trust me I tried.

No I do not trust you and no-one should either take your word for it. The way I see it, tools are made to serve a purpose. Technology has not perfect solution for every task. You want end-to-end encryption? Now you lose centralized monitoring in say a company wide chat. Slack is for that purpose. You need strong metadata-privacy? Signal no longer does it for you, but with Cwtch you lose offline-messaging. You want security against state actors hacking your endpoint, you use TFC, but you lose message forwarding.

In Saudi-Arabia you get [5 years of prison time and 500 lashes](https://www.amnesty.org/en/wp-content/uploads/2021/07/mde230132010en.pdf), for homosexuality. In Iran you’re [executed](https://en.wikipedia.org/wiki/LGBTQ_rights_by_country_or_territory). Thus, some people will place metadata security and/or endpoint security, and the risks if their security fails, on the scale. To them any inconvenience in more secure tools is a matter of life an death.

So you saying “it’s not usable” comes from very privileged position, and failure to see beyond it. You’re of course welcome to develop a more usable system with equal level of security. E.g. Briar has been working on some sort of proxied cache to allow offline-messages in Onion routed p2p messengers.

> [@anon6884803](#):
>
> Their published threat model seems fine, is there anything specific they seem to be missing?

Searching “Threat model” on front page returns 0 results.

The [Threat model article](https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md#threat-model) needs to be linked on the front page, like this

 ![](//forum-uploads.privacyguidesusercontent.com/original/2X/7/7cce7a6cf084c97d371717fe03d664d515b435d8.png)

^ Doing this will shut me up for good @epoberezkin. If you think it’s not very presentable as as a front-page item as a GitHub markdown document, maybe it’s time to polish it into a nice article.

> [@anon6884803](#):
>
> Nobody can. Not even Tor.

Tor doesn’t make it a selling point either. There’s only so much tech can do, and Tor is doing all of it, without misrepresenting it. Tor is also considered by the NSA to be the king of anonymity systems with no contenders waiting.

> [@anon6884803](#):
>
> I agree I would like to see something like [tor threat model](https://community.torproject.org/threat-model/threat-positioning/) in simplex threat model document.

This. I would also like Tor Project to link to that document on the front page. In fact, I’m curious how to even navigate to that article without googling.

> [@anon6884803](#):
>
> Isn’t Tor massively compromised due to the network having large number of nodes controlled by nation states

The nodes are picked at random. The entities that can control massive portions of the nodes are basically FVEY. And they don’t need to compromise Tor, they have access to more or less the entire backbone and they can do end-to-end correlation anyway. Russia, China, and smaller authoritarian nations can’t do any of that, except very rarely.

The Snowden documents sad even the NSA will “never be able to deanonymize all Tor users”, it basically said they sometimes get lucky, but that they can’t deanonymize users on demand.

> Isn’t SimpleX network a chance for a clean slate with public providers who have their reputation tied to not being malicious

Public providers doesn’t mean shit, governments have forged ID cards as long as there has been ID cards. With anonymity networks, it boils down to node pool size and chances.

And remember, SimpleX’s solution has nothing to do with onion routing, it’s just a decentralized server network, just like email. You send messages to one server, your peer sends it to another. Your IP address leaks to your server. On fundamental level, it’s not that different different from you using Gmail and peer Office 365, with content encrypted PGP. Content is not readable, but now there’s two parties that could collect metadata, and if its collected, it can be requested with subpoenas.

[quote=“anon6884803, post:98, topic:19256”]  
Isn’t a corporate run network more sybil resistant than anonymous volunteer network.[/quote]

We don’t even have current or planned SimpleX server pool size available to make that assessment. Let’s talk more when SimpleX server pool exceeds [7,500](https://metrics.torproject.org/networksize.html).

> [@anon6884803](#):
>
> But SimpleX is not in that state.

The point was, an application must ALWAYS explain its limitations, even when its 100% production ready.

> [@anon6884803](#):
>
> which I agree they should add to their threat model.

My point exactly. I want the limitations communicated. As long as SimpleX does not default to Tor, it’s inferior in security compared to apps that default to Tor.

> [@anon6884803](#):
>
> I do not think it is fair to ask a new project to plaster their deficiencies on the front page, especially when more established and more critical projects also start with their sales pitch and more details in threat models.

They deserve flak, they get flak, and my critique is just one of the instances of said flak. E.g. Telegram could not give a shit about users’ actual security. In fact, they have weaponized their cult following to do damage control. There’s very little point in criticizing them. But the nice part is, they’re not a recommendation on PG anyway.

Signal and Tor are harder to persuade, I’ll give you that. But the way I see it, the smaller projects must be the first ones to compete by setting the example. This creates pressure to bigger players to participate.

> [@anon6884803](#):
>
> Any E2EE app worth the name stops this kind of attack

It stops collecting said content sent over MMS which is more or less dead these days. But endpoint exploitation is something people seem to have entirely forgotten. Here’s Snowden 10 years ago: [https://www.youtube.com/watch?v=743u0pdikbM](https://www.youtube.com/watch?v=743u0pdikbM)

The issue was swept under the rug because the industry did not have a solution for it.

> [@anon6884803](#):
>
> Are you attached to cwtch per chance?

Nope. I’ve done free UX testing for them in the past because I like the project. I got two sheets of Cwtch stickers as a thank you. That’s it. I’ve also made small contributions / bug reports to other projects like Tor/stem, OnionShare, Tails, and possibly Signal. [TFC](https://github.com/maqp/tfc) is my body of work in secure messaging space, and I try to practice what I preach there.

---

## Post 100 by @anon6884803 — 2025-03-08T12:14:16Z

> [@maqp](#):
>
> The point was to choose beforehand which you wish to provide:

> [@maqp](#):
>
> The rest of the social contract is between the people doing the communication, and that’s outside the domain of what an app can do.

> [@maqp](#):
>
> Technology has not perfect solution for every task

But you are moving goalposts now. You said SimpleX has to choose, that it is an either or question. Now you say it is not as black and white as you painted it. I find that very irritating, since both cannot be true. The social contract required is not just allowing existence of privacy by design systems, it is also not having conventions that force you to disclose private info to family/friends/strangers, not having laws that force you to be truthful irrespective of the cost, etc. I find your definition to be self contradicting.

> [@maqp](#):
>
> In Saudi-Arabia you get [5 years of prison time and 500 lashes](https://www.amnesty.org/en/wp-content/uploads/2021/07/mde230132010en.pdf), for homosexuality. In Iran you’re [executed](https://en.wikipedia.org/wiki/LGBTQ_rights_by_country_or_territory).

Please do not present the “think of the children” argument here. That was not at all my point. It was simply cwtch is not usable for the public that needs secure communication (journalists, activists, etc.). They acknowledge it themselves that unusable tech makes useless tech:

> This made adoption of Ricochet a difficult proposition; with even those in environments that would be served best by metadata resistance unaware that it exists [[ermoshina2017can]](https://www.academia.edu/download/53192589/ermoshina-12.pdf) [[renaud2014doesn]](https://eprints.gla.ac.uk/116203/1/116203.pdf).

I would also request you to not descend into personal attacks like “privileged position” when you know nothing about me. Me criticizing your pet project does not mean you can turn into a name calling white knight for the project. (Notice the ad hominem, others can do it too).

> [@maqp](#):
>
> You’re of course welcome to develop a more usable system

How do you know I am not? Your response reeks on privilege and maybe a personal vendetta against the SimpleX chat project. I advise you to maybe reflect a bit before interacting on the online space.

> [@maqp](#):
>
> Searching “Threat model” on front page returns 0 results.

I agree, I would also like to see it on their website landing page.

> [@maqp](#):
>
> Tor is also considered by the NSA to be the king of anonymity systems with no contenders waiting.

Tor is less confident about their abilities than you are. I would also like to have the source for the quote, or are you an NSA insider?

> [@maqp](#):
>
> . Russia, China, and smaller authoritarian nations can’t do any of that, except very rarely.

You keep making claims, sources please.

> [@maqp](#):
>
> With anonymity networks, it boils down to node pool size and chances.

So government can forge identity but not devote resources for forging anonymous networks? Show me one instance of malicious cloudflare with sources. I can share malicious tor nodes for days. Again, lots of bluster not enough sources.

> [@maqp](#):
>
> We don’t even have current or planned SimpleX server pool size available to make that assessment. Let’s talk more when SimpleX server pool exceeds [7,500](https://metrics.torproject.org/networksize.html).

Do you really think network size is the only metric? You must be more knowledgable than most of my professors, they seem to think sybil resistance is not just a direct property of network size. For example, a network that can only be run by national governments and has the ability to exclude anyone else (like the SWIFT system) with only 2 nodes even has more sybil resistance than Tor. I recommend reading on lots of extensive literature written on sybil resistance, rather than just pointing at random numbers.

> [@maqp](#):
>
> The point was, an application must ALWAYS explain its limitations, even when its 100% production ready.

I agree.

> [@maqp](#):
>
> This creates pressure to bigger players to participate.

No. Smaller projects that are not able to generate enough marketing or self sabotage themselves for getting a higher moral ground die in oblivion.

> [@maqp](#):
>
> But endpoint exploitation is something people seem to have entirely forgotten.

Nobody except you has forgotten it. Or do you not keep you with the endpoint hardening happening across entire internet with android iOS becoming more hardened, linux windows macos trying to create secure systems, etc. I would recommend again reading up on the cutting edge rather than using grandmother tales from 20 years ago as proof.

> [@maqp](#):
>
> That’s it

Thanks for clarifying.

More proofs, less hostility is a better approach when you respond again. Thanks for taking the time.

---

## Post 101 by @maqp — 2025-03-08T17:28:23Z

> [@anon6884803](#):
>
> But you are moving goalposts now. You said SimpleX has to choose, that it is an either or question. Now you say it is not as black and white as you painted it. I find that very irritating, since both cannot be true.

Metadata and content are protected either by the company policy, or by technology itself. Yes you’re right, privacy by design exists at the grace of policy and politics. SimpleX doesn’t get to dictate the UK law, but it can make the decision whether user data is a subpoena, or national security request to add a backdoor, away.

I’m not moving goal posts. I’m fine with either. Like I said [above](https://discuss.privacyguides.net/t/simplex-vs-cwtch-who-is-right/19256/58), I’m fine with app having no security, if it’s communicated clearly.

My point about tech having no perfect solution for every task was about fundamental limitations of the architecture. SimpleX gets to choose that one too. And its limitations have to be communicated clearly too.

> [@anon6884803](#):
>
> it is also not having conventions that force you to disclose private info to family/friends/strangers

I’m sorry if you come from toxic environment that lacks boundaries wrt individual privacy. I feel those are very much out of domain of secure messengers. Of course, a screen lock would be a welcome addition. You’ll be pleased to know Cwtch has decent plausible deniability of separately unlocked accounts when correct password is entered.

> [@anon6884803](#):
>
> Please do not present the “think of the children” argument here.

I’m not sure if I believe my eyes. Think of the children is basically pro-backdoor argument for CSAM scanning etc. Having a secure messaging app actually walk the talk, is hardly the same thing.

> [@anon6884803](#):
>
> They acknowledge it themselves that unusable tech makes useless tech

The ermoshina2017can link is broken, and the latter is more general, and doesn’t even mention Cwtch, Ricochet, or even Tor. Hardly an argument against UX of Cwtch.

> [@anon6884803](#):
>
> would also request you to not descend into personal attacks like “privileged position”

Well the alternative is you fail to see things from the point of view of people in authoritarian countries. Not sure if that’s any less personal. If your life doesn’t depend on the choice of your messaging app, you’re in a privileged position. As am I, Finland tends to be on top of lists wrt human rights. I don’t have to worry about my privacy too much, but I wouldn’t dream of thinking that applies to others.

> [@anon6884803](#):
>
> Me criticizing your pet project

Again, TFC is my pet project. Cwtch is the best UX of all the onion routed systems (Briar, Ricochet, OnionShare chats, TFC), so I recommend it when protecting metadata is part of someone’s threat model.

> [@anon6884803](#):
>
> How do you know I am not?

Oh I didn’t know you had an affiliation with a messaging app, by all means do share, I like to see others’ work.

> [@anon6884803](#):
>
> Your response reeks on privilege

I live in a rechtsstaat, but I’ve also spent more than a decade with TFC to empower people who have to deal with state hackers. I haven’t taken a dime for it. Sorry if that’s not enough.

> [@anon6884803](#):
>
> maybe a personal vendetta against the SimpleX chat project

I’ve criticized more projects than I can remember. Cryptviser, iMessage, Telegram, FooCrypt, TIME AI (lol), SimpleX, DataGateKeeper come to mind. It’s funny you try to label it as a crusade.

> [@anon6884803](#):
>
> I would also like to have the source for the quote, or are you an NSA insider?

My mistake for assuming you had actually read the thread you’re replying to. From above:

> [@maqp](#):
>
> Tor is not misrepresenting itself. The reason I say Tor is the best anonymity tool, is because the adversary with largest global passive tapping system, largest cryptanalytics force, and the largest general, offensive digital capability said that in their own top secret slides.
> 
> “_Still the King of high secure, low latencyt Internet Anonymity. **There are no contenders for the throne in waiting** _”
> 
> Source: [Tor: ‘The king of high-secure, low-latency anonymity’ | US news | theguardian.com](https://www.theguardian.com/world/interactive/2013/oct/04/tor-high-secure-internet-anonymity)
> 
> Also for NSA’s capabilities, direct quote
> 
> “_With manual analysis we can de-anonymize a very small fraction of Tor users, however, **no success de-anonymizing a user** in response to a TOPI request / **on demand** _”
> 
> Source: [‘Tor Stinks’ presentation – read the full document | US news | theguardian.com](https://www.theguardian.com/world/interactive/2013/oct/04/tor-stinks-nsa-presentation-document)
> 
> But I’m sure you have much more accurate information at your disposal. You really think they’re now saying “Until SimpleX decided to make two servers swap ciphertexts via anonymous credentials”?

> [@anon6884803](#):
>
> You keep making claims, sources please.

Yeah I can’t prove a negative. Of course, if you have a document available China has the geolocation advantage and infrastructure for their own instance of Upstream program

 ![](//forum-uploads.privacyguidesusercontent.com/original/2X/4/45be11eb6dd01a0fb3b0acfe7d08b3d16c863788.jpeg)

I will happily update my knowledge. As the image shows, US sits in the middle of international fibers. Not all data flows through the US of course, but a lot does. But data doesn’t really flow through Russia or China like it does through FVEY, especially US.

> [@anon6884803](#):
>
> So government can forge identity but not devote resources for forging anonymous networks?

Like I said, FVEY doesn’t need to. They can do end-to-end correlation from net backbone. If you have source stating China or Russia runs a sybil attack against Tor, I’m all ears.

> [@anon6884803](#):
>
> I can share malicious tor nodes for days.

Yeah that’s not the same thing as compromising an anonymity network. I don’t know why you’d even make this argument unless you wanted to just spread FUD. Also, people running malicious nodes are scanning traffic by running exit nodes. Three guesses if Onion service based messengers use exit nodes.

> [@anon6884803](#):
>
> Do you really think network size is the only metric?

No, but it’s the biggest.

> [@anon6884803](#):
>
> I recommend reading on lots of extensive literature written on sybil resistance, rather than just pointing at random numbers.

I do not pretend to be an expert on financial systems. I’m concerned with other attacks with SimpleX. There seems to be 85 servers [Unofficial SimpleX Directory - Discover Community-Run Servers](https://simplex-directory.asriyan.me/#selected-servers=) of which 38 are onion routed. So that leaves us with 47 non-torified servers that have access to users’ IP-address. Just over 2% probability that me and my contact use the same server, which means that server can perform a timing attack to determine which two contacts communicate. Or, if there’s no traffic masking (which I HIGHLY doubt), the chances of multiple users sending an attachment the size of which is 42069 bytes at the same time is quite unlikely. So yeah, I do not like the odds. With Cwtch, there’s no decentralized servers that can do this type of scanning.

> [@anon6884803](#):
>
> self sabotage themselves for getting a higher moral ground die in oblivion.

Are you seriously suggesting SimpleX would be self-sabotaging themselves for disclosing their true level of security? :smiley: Sounds like the project would be getting what’s coming for it, if it’s current limitations can’t stand the light of day.

The thing is, communicating your threat model openly is a massive boost for one’s image. You’re open that your system may not be for everyone. And you help everyone to know if the project is for you. SimpleX is a mass-market tool, and the userbase two whom its enough, accounts for a larger portion than its current servers could probably even handle.

My problem is the misleading threat model that lies by omission.

In [this](https://discuss.privacyguides.net/t/simplex-vs-cwtch-who-is-right/19256/50) post Poberezkin said

> _We never said [SimpleX has no identifiers], no tech can work without identifiers. What is important though, and it’s a unique quality of SimpleX network, is that SimpleX **user profiles are not assigned any distinct identifiers in the network** , unlike all other networks do._

So they’re not assigning **additional** identifiers. They don’t care that your router glues the _source IP address_ field to the TCP header, which is **WAY** worse than Cwtch’s Onion Address that allows removing the source IP.

> [@anon6884803](#):
>
> Nobody except you has forgotten it

Yes that’s why TFC was only entirely designed around the problem.

> [@anon6884803](#):
>
> Or do you not keep you with the endpoint hardening happening across entire internet with android iOS becoming more hardened

I fully agree endpoint security is not in the domain of mass market messengers. I also think threat model should communicate the limitation with something like “_To journalists, activists, dissidents and whistleblowers: Some nation state hackers can compromise your device, and bypass the end-to-end encryption. Unfortunately, there’s not much we can do about that. If this is a concern, strongly consider using hardened endpoint, setting the self-destruct timer, or leaving the most sensitive discussions to face-to-face meetings if possible._”

---

## Post 102 by @anon6884803 — 2025-03-08T18:04:11Z

> [@maqp](#):
>
> ![](https://forum-cdn.privacyguides.net/letter_avatar_proxy/v4/letter/a/04756a/48.png) anon6884803:
> 
> > They acknowledge it themselves that unusable tech makes useless tech
> 
> The ermoshina2017can link is broken, and the latter is more general, and doesn’t even mention Cwtch, Ricochet, or even Tor. Hardly an argument against UX of Cwtch.

It is from the Cwtch website, I thought you had read it.

> [@maqp](#):
>
> messaging app

I have no affiliation with any messenger app. I work on less flashy, run of the mill stuff.

> [@maqp](#):
>
> Until SimpleX decided to make two servers swap ciphertexts via anonymous credentials”?

You said:

> [@maqp](#):
>
> king of anonymity systems with no contenders waiting.

I asked if you had proof. You responded by citing something which says “Tor is difficult”. You are claiming Tor as best among alternative solutions, your source says it is among the best. Are you seeing the difference?

> [@maqp](#):
>
> Yeah I can’t prove a negative. Of course, if you have a document available China

So your threat analysis is based on hunches?

> [@maqp](#):
>
> compromising an anonymity network

It is the same for the adversary threat you cite.

> [@maqp](#):
>
> Are you seriously suggesting SimpleX would be self-sabotaging themselves for disclosing their true level of security?

No. Maybe you have unfamiliarity with English? I apologize in that case. I was suggesting you keep asking of SimpleX which no other project does. It is self sabotaging to frighten the user away with impossible attacks on the front page. Come back when Signal and Tor do it.

> [@maqp](#):
>
> threat model should communicate the limitation

I agree. Did Signal not catch flak for not being clear on that before on social media? Again, you keep holding simpleX marketing and website to higher standards than the ones you cite.

> [@maqp](#):
>
> So they’re not assigning **additional** identifiers. They don’t care that your router glues the _source IP address_ field to the TCP header, which is **WAY** worse than Cwtch’s Onion Address that allows removing the source IP.

I already agree that they should be more clear with the threat model document.

> [@maqp](#):
>
> With Cwtch, there’s no decentralized servers that can do this type of scanning.

But Tor project itself says this:

> Tor can’t protect against traffic confirmation (also known as end-to-end correlation), where an attacker tries to confirm a hypothesis by monitoring the right locations in the network and then doing the math.

So if they know you are sending something right now (which they can since cwtch requires both ends to be online last I checked), does it just not make it easier? I am not very clear on what the issue is?

---

## Post 103 by @maqp — 2025-03-08T19:08:12Z

> [@anon6884803](#):
>
> I asked if you had proof.

Again, you’re the one who didn’t read the thread.

> [@anon6884803](#):
>
> So your threat analysis is based on hunches?

In the absence of hard data what we have is educated guesses. [https://www.submarinecablemap.com/](https://www.submarinecablemap.com/) shows China isn’t in a place to run Upstream-like drag-collection Largest part of cables terminate at Hong Kong.

> [@anon6884803](#):
>
> you keep holding simpleX marketing and website to higher standards than the ones you cite.

SimpleX is the one lying by omission in their front page. They don’t consider IP-addresses a unique identifier. You seem to ignore that part of my critique consistently. Why?

[Risk Model | Cwtch](https://docs.cwtch.im/security/risk) doesn’t have inaccuracies, and the front page isn’t misleading about what the threat model (or risk model in their lingo) states.

Putting the threat model on front page is good practice, and SimpleX won’t be the only one I will ask. Why I’m asking SimpleX to do that, is the threat model clearly states

> [The server can] **perform the correlation of** the queue used to receive messages (matching multiple queues to a single user) via either a re-used transport connection, **user’s IP Address** , or connection timing regularities.

Which is quite different from what the front page says

> SimpleX protects the privacy of your profile, contacts and metadata, hiding it from SimpleX platform servers and any observers. Unlike any other existing messaging platform, SimpleX has no identifiers assigned to the users — **not even random numbers**.

It’s also not better than what Cwtch offers. Surely you agree SimpleX client isn’t improving over Cwtch’s elimination of user deanonymizing identifiers?

> [@anon6884803](#):
>
> So if they know you are sending something right now (which they can since cwtch requires both ends to be online last I checked), does it just not make it easier?

Non-onion SimpleX server serving two conversing users will also always know the queue IDs, it doesn’t actually even need to know scan packet sizes. And queue IDs can’t be changed without you remaining authenticated to the server, so the IP address can be determined even later if the user forgets Tor/VPN.

Doing that for Tor connections require a government doing end-to-end correlation on all Tor traffic inside the country. It’s the limit of what proxy chains alone can offer. Protection from it requires traffic flow confidentiality, which very few messaging apps provide. Corporate VPN with IPSEC is the most common place you might see it. TFC has it as optional mechanism. It’s not impossible to deliver files as smaller chunks that fit the Tor cell size, whenever client polls the server of peer for new messages, but AFAIK Cwtch doesn’t do that.

> [@anon6884803](#):
>
> I am not very clear on what the issue is?

SimpleX needs to communicate clearly its threat model, and not make claims it’s eliminating user identifiers better than Cwtch on its front page. Hiding the fact the server has access to users’ IP address on separate domain, behind four clicks is too much, when the front page implies there’s “no\* identifiers”, where the asterisk is doing ALL of the lifting by meaning “no **added** identifiers”. Yeah sure you’re technically correct, the best kind of correct. IP address isn’t being added by SimpleX, it’s added by your router but ask anyone who thought it had no identifiers, if they care about that nuance.

---

## Post 104 by @epoberezkin — 2025-03-08T21:10:29Z

The server builds are now reproducible, so server releases are signed:

> **[Release v6.3.0 · simplex-chat/simplexmq](https://github.com/simplex-chat/simplexmq/releases/tag/v6.3.0)**
>
> See full changelog here.
> Key to verify release: FB44AF81A45BDE327319797C85107E357D4A17FC
> Commits:
> 
> postgres: schema (#1416)
> postgres: db interfaces wip (sqlite passes) (#1419)
> postgres: store imple...

> **[Hosting your own SMP Server](https://simplex.chat/docs/server.html#reproduce-builds)**

The key to verify: [keys.openpgp.org](https://keys.openpgp.org/search?q=chat%40simplex.chat)

---

## Post 105 by @epoberezkin — 2025-03-08T21:32:07Z

> [@maqp](#):
>
> It’s also not better than what Cwtch offers. Surely you agree SimpleX client isn’t improving over Cwtch’s elimination of user deanonymizing identifiers?

No, this is not correct:

- SimpleX automatically creates a unique anonymous connection with unique identifiers and set of keys for each contact or group connection, while organising all these connections under the same profile. While you can use individual profiles for each contact in Cwtch, it requires user action and this is not something that most users do. And if most users don’t do it, it undermines efforts of those who do it.
- SimpleX allows to rotate these connections (and all identifiers) by moving connection to another server, without losing continuity of the conversation. Currently it is manual, and will be automated in the near future. Cwtch does not allow move conversation to another Tor address without losing its continuity, and it requires more user actions.
- Further, Tor’s threat model on which Cwtch depends is compromised by the fact that the underlying assumption of Tor’s model (that independent parties run nodes) is neither correct anymore, nor can be verified. SimpleX clients automatically choose different operators in message delivery path - not just different servers. We did have a debate about it with Sarah on Mastodon quire recently, and I think she ran out of arguments defending Tor’s failure to act to provide this guarantee. I think you would create more value to privacy and anonymity by challenging Tor than by challenging SimpleX (I am not saying that you should stop challenging SimpleX, as a major protocol improvement - 2-hop onion routing - was made partially because of your criticism - I am just saying that a real impact of your criticism will be bigger when you make Tor also its target)
- Further, while addition of guards increased the time required to attack anonymity hidden services from minutes to months, it’s generally a bad idea to use long-term Tor addresses as user identifiers - they must be rotated monthly. Cwtch neither automates nor discloses this problem: [Announcing the Vanguards Add-On for Onion Services | The Tor Project](https://blog.torproject.org/announcing-vanguards-add-onion-services/) :

> In particular, the addition of second layer guard nodes means that the adversary goes from being able to discover your guard in minutes by running just one middle node, to requiring them to sustain the attack for weeks or even months, even if they run 5% of the network.

While this is ok for most users, it is not ok for some users.

> Non-onion SimpleX server serving two conversing users will also always know the queue IDs

while server can indeed record all queue IDs used to receive messages from a given IP address, and the only way to mitigate it now is an additional overlay layer and per-queue transport isolation (which is supported in the client), it does not allow servers establishing which IP address connects with which IP address, provided two independent operators are used.

We are considering adding a third layer in message routing, proxying the recipient connections too, so that it will make not only IP correlation impossible but also session correlation (so again, closer to mixnets than to Tor’s circuit routing).

> SimpleX needs to communicate clearly its threat model, and not make claims it’s eliminating user identifiers better than Cwtch on its front page.

But it 1) does eliminate protocol level user identities, in a way that no other app does 2) it indeed does it better than Cwtch given the above - per connection, and not per profile.

So I am not sure why we should not claim what is factually correct.

> IP address isn’t being added by SimpleX, it’s added by your router but ask anyone who thought it had no identifiers, if they care about that nuance.

I think that everybody who cares about the level of anonymity we discuss, does understand that nuance very well. I find it strange that privacy experts think that people are idiots. We don’t think so.

Tor, in comparison, should certainly be avoided by users don’t understand intricacies of its configuration, which nodes and countries to avoid, etc., and none of that is advertised on Tor website. So their position and comms are much more risky and potentially damaging, given a much wider range of users, and that the main assumption of Tor’s threat model - node independence - simply doesn’t hold any more.

---

## Post 107 by @epoberezkin — 2025-03-10T07:11:09Z

Get maqp post back please, it can’t be TOO bad :slight_smile:

---

## Post 108 by @epoberezkin — 2025-03-10T18:34:40Z

> Mind explaining why it appears twelve of Simplex’s 83 community servers seem to be under single host URI?

There is no server register, and this is not our site. This has been an ongoing experiment with voluntary server listing somebody did, but it wasn’t too popular. The servers you can see there are now are servers run by Flux that are preconfigured in the app.

> Which if you bothered to read the thread, isn’t that unlikely. There’s apparently 47 non-torified servers meaning 2% of my contacts will use same server on average at any given moment.

It is unlikely because the client takes the information about the operator into account.

---

## Post 109 by @ignoramous — 2025-03-15T09:13:35Z

> [@maqp](#):
>
> The bottom line is this. You are incredibly naive and stupid if you think government agencies aren’t forging IDs to mount a sybil attack in your tiny network. They don’t give a damn about your contracts. Like Jesus. [The NSA mass surveillance was ruled illegal](https://www.theguardian.com/us-news/2020/sep/03/edward-snowden-nsa-surveillance-guardian-court-rules). The Israeli intelligence [sold BOMBS as messaging devices](https://en.wikipedia.org/wiki/2024_Lebanon_electronic_device_attacks) and killed 42 and injured over 4000 with them. They. Don’t. Give. A. F. about your policies and with overwhelming probability won’t be ever held accountable if they break them.

Yep. And it is a bit convenient to remove the ultimate adversary, government letters (laws/regulations), from the threat model, too. Xie, a devops/sec blogger I follow, makes the same point you do, but from an end-user pov:

> Now let’s take a look at the things Sleve can’t control. Generally, Sleve can control the things he does, but he can’t control what other people do in response to them. He can’t control what other people do, and he has even less control over what the government does. Sure, he votes, but I vote too.
> 
> ([source](https://xeiaso.net/talks/2025/opsec-and-you/) / [mirror](https://archive.vn/fzSCt))

---

## Post 110 by @TheDoc — 2025-03-16T02:31:46Z

> [@maqp](#):
>
> from the looks of it you got told.

Would anyone have a link to the Mastodon thread? There must’ve been a formatting issue here as it doesn’t include a link.

> [@maqp](#):
>
> I leave with this: I still do not recommend SimpleX.

I know your back and fourth with Evgeny is over but would you mind summarizing the disagreement from your perspective for others (like myself) who either don’t quite understand the issue at hand or don’t have time to read the full thread? I’d really appreciate it so I could better decide between SimpleX and alternatives like Cwtch. :slightly_smiling_face:

---

## Post 111 by @ethnh — 2025-03-16T02:40:22Z

> [@maqp](#):
>
> I leave with this: I still do not recommend SimpleX.

I’m with TheDoc, your only complaint is that the default SimpleX settings expose which IP addresses use simpleX? or what

---

## Post 112 by @maqp — 2025-03-29T14:51:31Z

My list of issues with SimpleX has expanded so I’m adding one more post and trying to summarize like @TheDoc asked:

**1. The IP-address leakage:** SimpleX claims to be an improvement over Cwtch in that the client does not use persistent identity between two users. The CEO admits it’s impossible to deliver the message from A to B with no identifiers, and claims it’s better that the client leaks the user’s IP address to a SimpleX server, than if there was a persistent random contact ID such as `4sci35xrhp2d45gbm3qpta7ogfedonuw2mucmc36jxemucd7fmgzj3ad` that hides the user’s IP-address from every contact and third party.

**2. The threat-model:** Tools are built for purpose, and since no tool is perfect, communicating the limits is important. The more robust security you’re trying to provide, the more important nuance in that communication becomes. Like Bruce Schneier [said](https://www.schneier.com/essays/archives/2000/04/the_process_of_secur.html), “_Security is a process, not a product_”. Because SimpleX is trying to market itself as more private than Cwtch, it sets itself on nothing short of the ~highest pedestal in the category of metadata resistant messaging. And since that’s a more challenging category than content-private messengers dominated by Signal, that position understandably comes with burden of having to withstand very different level of scrutiny, and people who care deeply about the topic, won’t stand idle if there’s serious issues.

In this top position, having a threat model available is sort of mandatory. Having that threat model be easy to find is a big plus. It shows you care about your users. A major problem here I have, is the SimpleX threat model does not match the marketing material. It again, lies by omission. It is not the case SimpleX has “no identifiers at all”. Sure, it doesn’t **add** persistent identifiers on application level. But it also doesn’t prevent your router from shipping your IP address to the server inside the TCP headers.

And this is what pisses me off. Nobody who’s looking for metadata-privacy improvement over Cwtch, wants their IP-address to leak. They obviously expect a superset of metadata to be protected. Like added noise packets to hide when communication takes place, and to mask what type of data is being sent. And even if you really, really want to cater to someone who desperately needs fully automated profile-unlinkability, you’re supposed to be extremely open about the trade-off these users are making by using your product over Cwtch, since you’re the one dragging it out for comparison.

So my problem is the lying by omission to the point of active misleading, and the fact they treat the most important security documentation, that tells the users if the tool fits their needs, that they should be presenting proudly, like a cash-grab fine print, as it directly contradicts the front page marketing fluff. When you’re claiming to be on the top, you need to act like you belong there. Or you get called out as snake oil.

So to remedy:

- Have front page link to the threat model that makes a detailed case with warnings to those switching from Tor based messengers, or
- Ensure the front page matches the threat model, or
- Remove Cwtch from the front page comparison.

**3. Nonexistent hosting diversity (NEW):** The CEO wasn’t being open about the node pool size in this thread, so I did some digging. The [documentation](https://simplex.chat/docs/server.html) says

> _SimpleX Chat apps have preset servers (for mobile apps these are smp11, smp12 and smp14.simplex.im), but you can easily change app configuration to use other servers._

So if I’m reading this right, the Android app for average Joe who joins the app, has **THREE** built-in servers to choose from.

No matter if there’s more servers in reality. According to [this GitHub issue](https://github.com/simplex-chat/simplex-chat/issues/4762) from seven months ago,

> _SimpleX Chat currently uses one single hosting provider for all its all servers which is Linode (belongs to Akamai) in its three EMEA datacenter locations: London (15+ virtual servers), Frankfurt (5 virtual servers in the same datacenter) and Stockholm (5 virtual servers in the same datacenter)._

Apparently, after that, [SimpleX server status page](https://status.simplex.chat/status/public) has also listed six Flux XFTP servers, and six Flux SMP servers. Flux is a partnering company.

So unless I’m badly mistaken, there are **JUST TWO ACTORS** controlling **ALL** public SimpleX servers: Akamai, and [https://runonflux.com/](https://runonflux.com/)

Two companies that can be issued subpoenas. Two companies that, like VPN companies, will ALWAYS betray their customers rather than go to jail.

The [pigeonhole principle](https://en.wikipedia.org/wiki/Pigeonhole_principle) states that when there’s three users using the public, non-onion servers, by default, one of the two companies can perform end-to-end correlation attack against two who ended up using their infrastructure.

No wonder I couldn’t get a straight answer about the pool size, and no wonder the damage control comments about pool size not mattering. Sorry guys. No. The metadata privacy of SimpleX can not rely on NSA, FancyBear etc. never gaining access to out-of-band management systems of Akamai and Flux. The SolarWinds Orion breach is a perfect example of single point of failure compromising pretty much every server under the OOB system’s control. And who knows if the data centers have their own instance of a [Room 641A](https://en.wikipedia.org/wiki/Room_641A).

[9229 Tor relays](https://nusenu.github.io/OrNetStats/w/misc/all.html) is MUCH better than two massive for-profit third-party companies with their centralized management systems.

But wait, perhaps the community can come to the rescue here? Probably not. [The documentation](https://github.com/simplex-chat/simplex-chat/blob/16cf91902caf246f4472f362774958909797d9ee/docs/rfcs/2024-04-26-commercial-model.md) states

> _not having a single register of such relays is important for true decentralization_

So if I’m reading the documentation correctly, the “_over 1000 self-hosted messaging relays_” are not even listed. They form their own private ciphertext routing networks without contributing to the collective security. Thus, I’m left with three options if I don’t trust Flux or Akamai. I can

A) Install Tor, and use [a public SimpleX Onion Server](https://status.simplex.chat/status/onion),

B) Self-host my server at home, still leak my IP which my ISP ties to my credit card, or, configure it to be a Tor-only server, or,

C) I can rent a server and yield control to some corporation like Hetzner, that I again, pay with my credit card information, and unless everyone connects to me via Tor, the payment information between personal relays can be cross-correlated by state actors. Again, Tor is needed to hide the metadata of to whom I’m talking to.

So, the solution was, Tor. Which is what Cwtch defaults to.

When I started poking around, I expected to find between 20 and 50 independent volunteers, excitedly hosting their own servers and that SimpleX has a directory from which it picks the server at random from. I sure as hell wasn’t expecting to find “two VPS companies hosting the entire public server infrastructure” lol.

So it’s either A, B, or C. B/C don’t really add anything to the mix unless you just want control over ciphertext caching server.

A is the logical choice, that most users will choose, so I’ll focus on that below.

* * *

**4. SimpleX could make using Tor trivial if it wanted**

The desktop application already seems to have a decent Tor proxy support.

1. From the looks of it, it doesn’t phone home before the user can change proxy settings.
2. It automatically swaps the connections to Akamai’s servers via Onion URLs when Tor is used. This shows steps have been taken to make Onion Servers a breeze to use. But no steps have been taken to make Tor proxy trivial to setup.

@epoberezkin

Why not just have a “Use Tor to hide your IP-address from the server” toggle button in the screen where you opt-in into SimpleX or Flux servers?

You could list the pros and cons for each option, “faster, reveals your IP to us”, “slower, hides your IP from us”

If Tor proxy is not detected, (check with something like `$ systemctl is-active --quiet tor && echo 0 || echo 1`, or, see if you can ping an onion server server through `localhost:9050`) you can grey it out and show something like  
“_Tor is not detected. Is it installed and running?_”

Desktop client has to just pick the distro and give a copy-pasteable string like “`$ sudo apt install tor -y && sudo service tor start`” Android client can just link to Orbot in F-droid and Play-store, and to a simple instructions page.

If and when the user manages to get Tor running and they flip the toggle, it’s safe to store the mere two settings it requires

1. Use SOCKS5 proxy “yes”
2. Use .onion hosts “required”

It really puzzles me you’ve made switching to Onion Servers this easy, then you trip on the finish line.

Hell, you could even just list Tor as a dependency in the .deb file and bundle its installation with SimpleX. Then switching to Tor on desktop would be just that one toggle button away.

* * *

The other problem is the client swaps the server so seamlessly it doesn’t even notify you about onion server usage. From what I looked, there’s no way to check if Tor is being used without correlating IPs captured with WireShark. That’s a serious issue when the client doesn’t by design force connections through Tor, like Cwtch does.

It’s nice to get feedback about unidirectional servers with the “Receiving via”, and “Sending via”. But that section should also have something that says

“Connection: No Proxy detected” (red) with info-button stating the IP-address is leaking to the server, and telling to setup Tor or VPN to remedy it.

“Connection: VPN/Proxy” (yellow) when other than localhost:9050 is used.

“Connection: Tor” (green) when localhost:9050 is used.

Also, that segment should show the active Tor proxy setting values:

- Use onion hosts: No/When available/Required (again, red, yellow, green)
- Use random credentials: Yes/No (green, red)

* * *

Also, in settings, ensure the user knows proxy settings are an integral part of the security and privacy settings.

* * *

If you’d make Tor a first class citizen in the application, it would make writing a threat model that caters to more needs, and that doesn’t have awkward caveats.

But unless you make that “Use Onion Servers” toggle button enabled by default in the Akamai/Flux server selection setup screen, you’re still going to have to fix the front page claim about having no persistent identifiers.

“SimpleX adapts to multiple threat models” is a better selling point than the current caveat ridden hyperbole.

---

## Post 113 by @privacyisconsent — 2025-03-29T15:15:03Z

Just to echo @maqp’s point about metadata-resistant systems being a realm where strong claims are scrutinised, I wanted to highlight what SJL said in the Mastodon thread since it doesn’t seem like it was reiterated:

> - Advertise Real time Audio / Video.
> - Have Offline messaging on mobile / without self hosting some kind of server
> - Have “No Identities”
> - Rolled their own onion-routing
> - Rolled their own mixnet
> - Implement offline storage with 3rd party servers that is somehow efficient.

Sarah’s main point was always that a lot of these are hard or unsolved problems for metadata-resistant systems. Video and Audio at the very least to my understanding are very difficult to handle. If the project is going to call itself radically private or protective of metadata then it needs to be held accountable for making sure every single aspect of the service or system can stand up to scrutiny. There is no shame in not targeting that level of privacy, Signal does not.

This thread should not have been about SimpleX specifically. Session more than qualifies as a topic of discussion due to their implementation of video and voice calling, messaging and file sharing over Lokinet etc. The point is that the privacy community should be more resistant to projects marketing themselves or making grand/misleading claims on the basis of privacy and metadata-privacy without putting appropriate care to be worthy of those claims. In these situations it is the most dangerous threat actors being considered.

---

## Post 114 by @ethnh — 2025-03-29T19:02:03Z

> [@maqp](#):
>
> I live in a rechtsstaat, but I’ve also spent more than a decade with TFC to empower people who have to deal with state hacker

> [@maqp](#):
>
> Again, TFC is my pet project

Oh  
TFC has alot of bells and whistles but looks alot like distractions to the fact that they havent tackled the hard problems such as key management. there’s 2 computers that handle private keys, nothing in this system is protecting them :smiley:  
" The symmetric keys are either pre-shared, or exchanged using X448, the base-10 fingerprints of which are verified via an out-of-band channel. T"  
so to use this i also need to be able to meet in person with the people i talk to :joy:  
Great.  
also the data diode non-sense is very hot in some scenes but i always discount it as military hokum  
Have you heard about side channels? Are these people in a SCIF? :joy:

---

## Post 115 by @maqp — 2025-03-29T19:43:35Z

> [@ethnh](#):
>
> there’s 2 computers that handle private keys, nothing in this system is protecting them

Wait what : D The literal point of the Source/Destination computer together with the data diode is to protect them from remote exfiltration. Also, all persistent data, including the keys is protected with pwd+salt and argon2id. Like, how are you expecting the keys to be further protected?

> [@ethnh](#):
>
> so to use this i also need to be able to meet in person with the people i talk to

X448 is a public key exchange you can do over the network. Verifying keys can be done over an authenticated channel, i.e. a phone call if you recognize your contact’s voice. But yeah, the verification prompt is part of every key exchange, but that step can be skipped if you can’t verify it, or if you just need TOFU security. The application will remember the verification level for you and you can handle it later.

> [@ethnh](#):
>
> data diode non-sense is very hot in some scenes but i always discount it as military hokum

The data diode is just indeed something used in high assurance systems. It hits the mid point of strong endpoint security, but without the need to spend four to five digit sum per EAL7+ diode.

> [@ethnh](#):
>
> Have you heard about side channels?

Yeah, did I miss any in [the list](https://github.com/maqp/tfc/wiki/Security-design#exfiltration-of-data-via-covert-channels)? : )

> [@ethnh](#):
>
> Are these people in a SCIF?

The hope is the Onion Service manages to hide your geolocation so you don’t have to deal with close access operations. But that’s where I like to draw the line between mass surveillance and targeted surveillance.

Remote exploitation can be cheap enough to constitute as mass surveillance, and as Soghoian said [in 2016 CCC](https://media.ccc.de/v/33c3-8136-stopping_law_enforcement_hacking#t=1440), hacking endpoints to exfiltrate comms can become a tool of first resort for the LEA. That’s the threat TFC was created to handle.

So if you’ve reached the point where there’s a flower van across the street catching your keyboard cable’s RF emissions, TFC isn’t going to stop that targeted surveillance. All I can do, is hope there’s a legitimate reason and a court approval for that surveillance.

* * *

But yeah this thread is probably no the ideal place for deeper discussion into TFC. The topic is Cwtch vs SimpleX. If you want to talk about TFC and its design, feel free to DM me or open a separate thread.

---

## Post 116 by @ignoramous — 2025-03-30T08:54:30Z

> [@maqp](#):
>
> And this is what pisses me off. Nobody who’s looking for metadata-privacy improvement over Cwtch, wants their IP-address to leak. They obviously expect a superset of metadata to be protected. Like added noise packets to hide when communication takes place, and to mask what type of data is being sent. And even if you really, really want to cater to someone who desperately needs fully automated profile-unlinkability, you’re supposed to either be extremely open about the trade-off these users are making by using your product over Cwtch, since you’re the one dragging it out for comparison.
> 
> So my problem is the lying by omission to the point of active misleading, and the fact they treat the most important security documentation, that tells the users if the tool fits their needs, that they should be presenting proudly, like a cash-grab fine print, as it directly contradicts the front page marketing fluff. When you’re claiming to be on the top, you need to act like you belong there. Or you get called out as snake oil.

Looks like PG should add caveat to this sentence `Additionally, SimpleX Chat provides metadata protection by using unidirectional "simplex queues" to deliver messages.`

Let’s ping the authors of [the page](https://www.privacyguides.org/en/real-time-communication/) (@jonah, @dngray … unsure who redoomed1 is), to see what they think.

---

## Post 117 by @yes — 2025-03-30T10:43:47Z

> [@ignoramous](#):
>
> unsure who redoomed1 is

@redoomed1

---

## Post 119 by @yipii — 2025-03-30T17:17:44Z

Hey @maqp I’d like to let you know that I think this post has been articulated very well. I’ve read this topic from time to time, and it wasn’t always like this. This is precise, facts are reliable (from my knowledge of the tool from extensible reading), and your opinions and questions are interesting and of great value. Indeed, perhaps the tool is not metadata level resistant. For me it still relevant as a privacy tool, and user friendly option for common folks.

---

## Post 120 by @jerm — 2025-03-30T19:32:08Z

> [@maqp](#):
>
> C) I can rent a server and yield control to some corporation like Hetzner, that I again, pay with my credit card information, and unless everyone connects to me via Tor, the payment information between personal relays can be cross-correlated by state actors. Again, Tor is needed to hide the metadata of to whom I’m talking to.

Why did you pick Hetzner over all other options available where you can even pay anonymously with Monero?

Idk why you keep shilling Cwtch? does it even support bridges so people in actually censored countries can use it? Have it received any security audits? Also, looking at their [git repos](https://git.openprivacy.ca/cwtch.im), there is barely any development, how can users be sure of long term maintainability of an app that they may or may not have their lives depend on?

Thanks for your input, appreciate giving your opinion here.

---

## Post 121 by @maqp — 2025-03-30T20:29:48Z

> [@jerm](#):
>
> Why did you pick Hetzner over all other options available where you can even pay anonymously with Monero?

Good luck obtaining Monero from an exchange that doesn’t abide by KYC.

> [@jerm](#):
>
> Idk why you keep shilling Cwtch? does it even support bridges so people in actually censored countries can use it?

It’s the most usable Onion Service based messenger, plain and simple.

It apparently doesn’t support bridges at the moment. Shame. But that doesn’t mean it won’t in the future. I’m mostly concerned about the app’s security to those its available. Some countries will of course block Tor and there’s not much one can do about that. Bridges will help but just because they’re not there now, doesn’t make Cwtch useless. (You could make the same argument about iPhones not supporting process forking for apps, so Cwtch will never be available for people who only own an iPhone. That also doesn’t make the app useless. iPhone only users looking for metadata privacy are left with less safe onion routing messengers like Session.)

> [@jerm](#):
>
> Have it received any security audits?

Well SimpleX is audited and here we are, pointing out issues in the design which the audit did not mention. It’s not the place of Trail of Bits to point out poor marketing material. They do what they’re told. But every time an audit finds something to fix, having it was needed. And they did find plenty with SimpleX. So I’m not saying they’re useless.

Open source projects can only do what it can afford to do, so if you want to see Cwtch audited, throw them some dough.

> [@jerm](#):
>
> there is barely any development

Again, more funding, more developers, more features. Open source is not free to develop. It dies without people who pay for it voluntarily because people need money to buy pizza so they won’t starve to death.

Even if the project isn’t receiving full time attention right now, if someone would point out a vulnerability in the code, I’m pretty sure Sarah wouldn’t even hit the bunk before the patch would be deployed. Just like I wouldn’t with TFC. So just because it’s not in active development eight hours a day, doesn’t mean someone isn’t ready to patch vulnerabilities. Also, majority of Cwtch’s security comes from Tor, and Tor Project handles that part.

Breaks in development do not make apps insecure. Vulnerabilities aren’t weeds that grow into the code unless you prune it constantly by developing and eye-balling the code. Sure, if you stop doing that all together, no vulnerability that remains gets spotted and fixed. But that’s also called ending the software support lifecycle. Open Privacy would obviously announce if Cwtch’s support would end.

Whether that happens depends on people like you. So donate.

---

## Post 122 by @jerm — 2025-03-30T20:53:53Z

> [@maqp](#):
>
> Good luck obtaining Monero from an exchange that doesn’t abide by KYC.

[https://haveno.exchange/](https://haveno.exchange/) There’s even more guides here

> **[Private Cryptocurrency Blockchains - Privacy Guides](https://www.privacyguides.org/en/cryptocurrency/#buying-monero)**
>
> Unlike most cryptocurrencies, these ones provide transaction privacy by default. Monero is our top choice for obfuscating transaction information.

So you agree that Cwtch is not ready for general use and needs a lot of donation and development to be usable. While we have a working messenger that received multiple audits and will continue on doing so hopefully (SimpleX Chat). I believe SimpleX Chat team is capable of resolving all issues you shared, even though _there are_ few nitpicks like threat modeling and removing Cwtch from comparison chart, however I’m not sure about first point raised.

---

## Post 123 by @maqp — 2025-03-30T23:18:35Z

> [@jerm](#):
>
> So you agree that Cwtch is not ready for general use

No I absolutely think it’s ready for anyone whose threat model it fits. General use does not mean Iranians or iPhone users. It means its safe to use by anyone who can use it and who won’t get into trouble for using Tor.

> [@jerm](#):
>
> needs a lot of donation and development to be usable

Everything runs on money. Just because it’s not feature complete doesn’t mean what’s there isn’t good enough.

> [@jerm](#):
>
> While we have a working messenger that received multiple audits and will continue on doing so hopefully (SimpleX Chat).

Let’s not get ahead of ourselves. SimpleX still by default leaks the IP-address to the server. Cwtch doesn’t. The audits didn’t help fix this main issue.

> [@jerm](#):
>
> I believe SimpleX Chat team is capable of resolving all issues you shared,

I agree. The changes I proposed are not hard to implement at all. But that doesn’t make the issues any less serious until they’re addressed.

> [@jerm](#):
>
> few nitpicks

Way to frame me pointing out SimpleX is misleading their customers with the marketing material lol.

Telegram said “Server-side keys are distributed so we can not access user data”, when the reality was “we can access user data.” But hey, it’s just nitpicking to point out they should not have included that tiny three letter word “not” in their sentence? It’s just four backspaces and it’s fixed! No big deal they lied to their customers for a ~decade.

---

## Post 124 by @ignoramous — 2025-04-01T17:30:15Z

> [@maqp](#):
>
> Well SimpleX is audited and here we are, pointing out issues in the design which the audit did not mention. It’s not the place of Trail of Bits to point out poor marketing material. They do what they’re told. But every time an audit finds something to fix, having it was needed. And they did find plenty with SimpleX. So I’m not saying they’re useless.

Too real.

I think the misconception that “if audited (regularly), everything must be golden” stems from folks reading too much in to PG’s requirement/reliance(?) for/on security audits? Sharp orgs paying attention then know how to exploit [Goodhart’s](https://en.wikipedia.org/wiki/Goodhart%27s_law) to market their software.

---

## Post 125 by @an9 — 2025-04-17T01:04:30Z

Some friends and I use SimplexChat on the Windows 10 platform and we are faced with the situation where the application doesn’t notify us when an update is released, even if we select an update channel after installing it. This has been happening for several months, with several updates, and we are forced to go to the website to be informed of a new release.

**If anyone can confirm this problem** , please mention it on the Real-Time Communication recommendation page, until it is resolved, for the benefit of those who came to the app via this site.

If this is not confirmed, please remove my post.  
Thanks!

---

## Post 126 by @yipii — 2025-04-27T00:49:45Z

@an9 weird. When new versions are released, I receive a message in my chat session with SimpleX chat team. I not sure if its added by default if it was added when I wanted to suggest improvement.

---

## Post 127 by @anonymous328 — 2025-04-27T11:37:17Z

> [@maqp](#):
>
> So unless I’m badly mistaken, there are **JUST TWO ACTORS** controlling **ALL** public SimpleX servers: Akamai, and [https://runonflux.com/](https://runonflux.com/)

I agree that turning on preset servers hosted by Flux doesn’t add any privacy, as both companies are publicly partnered with each other. It is like using iCloud Private Relay. But is is not all SimpleX servers, see [https://simplex-directory.asriyan.me](https://simplex-directory.asriyan.me). They don’t warn about the possibility of both companies colluding sharing IP addresses and metadata of users connecting to their servers, they even say that it [improves metadata privacy](https://simplex.chat/blog/20241210-simplex-network-v6-2-servers-by-flux-business-chats.html). PG warn about it here [How Do VPNs Protect Your Privacy? Our VPN Overview - Privacy Guides](https://www.privacyguides.org/en/basics/vpn-overview/#multi-party-relays) at the end.

---

## Post 128 by @fria — 2025-04-27T13:11:00Z

> [@anonymous328](#):
>
> It is like using iCloud Private Relay.

Private Relay uses multiple companies and randomly switches between them, giving you a different route for each connection. These companies offer the same relay [service](https://developers.cloudflare.com/privacy-gateway/) to other companies that pay for it to implement OHTTP, so it’s more of a customer/service provider relationship.

> Private message routing is, effectively, a 2-hop onion routing protocol inspired by Tor design, but with one important difference - the first (forwarding) relay is always chosen by message sender and the second (destination) - by the message recipient. In this way, neither side of the conversation can observe IP address or transport session of another.

There are only two providers built into the app as presets for now, SimpleX and Flux, but servers can be self-hosted by the user if desired. Hopefully we’ll see some more providers added as presets so we can have the same sort of random switching between providers that you get with Private Relay (I believe it already does this I just don’t trust most of the community servers to be reliable).

---

## Post 129 by @maqp — 2025-04-27T17:04:45Z

> [@anonymous328](#):
>
> publicly partnered with each other.

What’s the level of partnership and do you happen to have a source?

> [@anonymous328](#):
>
> see [https://simplex-directory.asriyan.me](https://simplex-directory.asriyan.me)

Yeah I saw that. It’s sort of what I was expercting to find, that SimpleX would be hosting such a listing of federated servers but nope :see_no_evil_monkey: But I’m hopeful that SimpleX devs will see the reason and make the last tweaks to make connections to servers Tor trivial, and communicate the threat model to users from inside the app.

---

## Post 130 by @anonymous328 — 2025-04-27T17:13:18Z

> [@maqp](#):
>
> What’s the level of partnership and do you happen to have a source?

Check their X tweets. They do everything in parallel.

[https://xcancel.com/SimpleXChat/status/1912229316282245354#m](https://xcancel.com/SimpleXChat/status/1912229316282245354#m)

[https://xcancel.com/SimpleXChat/search?f=tweets&q=Flux&since=&until=&near=](https://xcancel.com/SimpleXChat/search?f=tweets&q=Flux&since=&until=&near=)

---

## Post 131 by @maqp — 2025-04-27T17:15:18Z

Oh ok, so this wasn’t about Akamai and Flux being under same administration? Looks like I got the wrong impression.

---

## Post 132 by @anonymous328 — 2025-04-27T17:39:26Z

I was talking about Flux, their infrastructure is provided free of cost by [Akamai/Linode](https://simplex.chat/blog/20240124-simplex-chat-infrastructure-costs-v5-5-simplex-ux-private-notes-group-history.html#simplex-chat-infrastructure-on-linode) tho.

---

## Post 133 by @anonymous261 — 2025-05-03T06:17:25Z

Thank you a lot for your prolonged participation and patience in this topic, although I do understand some of mapq’s grievances.

> I think that everybody who cares about the level of anonymity we discuss, does understand that nuance very well.

I care about having a whole lot of anonymity (as you can probably tell from my username), and did not know that SimpleX leaks IP addresses to the server. Although I hold an immense amount of gratitude and appreciation for SimpleX, I feel pretty misled after learning this, and that my initial impression and sense of security from exploring the SimpleX website has been somewhat undermined.

Although I can’t seem to find where you said this so hopefully you’re able to remember, I recall you wrote in a reply to Mental Outlaw’s [Youtube video about SimpleX](https://inv.nadeko.net/watch?v=0cRu98XSap0) that SimpleX is not just for criminals, and that you’ve heard people and families use it to help keep them safe from threats _like_ criminals. I wouldn’t exactly expect everyone in those types of families who want SimpleX’s protection, to completely understand that nuance.

Maybe the SimpleX website can include something like “Our servers can see your IP address if you don’t use a VPN or Tor, so although we have confidence in the capabilities of our privacy policies, you may want to consider using a VPN or Tor if you are familiar with their strengths and weaknesses and your threat model requires planning around the possibility that governments could subpoena us and force us to give IP addresses”

I think I might know another thing I think could be really helpful for SimpleX! You have commonly mentioned in the discussion that you feel Tor does not adequately account for the potential of malicious nodes. I happen to suggest this service a lot on this forum :sweat_smile:, but the [Nym mixnet](https://nym.com) has expressed a really similar view about Tor, and they’ve developed what I believe to be really interesting [potential solutions](https://nym.com/docs/network/architecture/nym-vs-others) to this issue!

Thank you once again, and I wish you and SimpleX the best!

---

## Post 134 by @anonymous261 — 2025-05-03T18:51:27Z

Also @nym-product and @TorProject I would be interested to know what you think about this!  
The discussion is really long, so the post linked has a pretty good summary of the points mentioned.

> [@SimpleX vs. Cwtch, who is right?](https://discuss.privacyguides.net/t/simplex-vs-cwtch-who-is-right/19256/112):
>
> My list of issues with SimpleX has expanded so I’m adding one more post and trying to summarize like @TheDoc asked: 1. The IP-address leakage: SimpleX claims to be an improvement over Cwtch in that the client does not use persistent identity between two users. The CEO admits it’s impossible to deliver the message from A to B with no identifiers, and claims it’s better that the client leaks the user’s IP address to a SimpleX server, than if there was a persistent random contact ID such as 4sci35…

---

## Post 135 by @an9 — 2025-05-07T02:43:57Z

> [@yipii](#):
>
> @an9 weird. When new versions are released, I receive a message in my chat session with SimpleX chat team. I not sure if its added by default if it was added when I wanted to suggest improvement.

Hello, thank you for participating.  
I can’t get to my message in this thread, perhaps because of a bug or because it’s been deleted by someone.  
On my side I can confirm that I don’t receive any messages or notices about updates. This situation also happens with those I chat with via the desktop application. Since my previous message, there have been 1 or 2 new releases and nothing in the app has signaled an update, even if I switch to the beta channel and back to the stable one.  
I don’t have any messages with the team either.  
Anyway, if this is non-standard behavior that only happens to us, I’ll end my participation here. Thank you!

---

## Post 136 by @yipii — 2025-05-07T03:03:31Z

@an9  
So I just checked in a new profile, and after creating your new peofile, and being in an empty list, yiu can press the write icon button to add a new contact, and select the two address below to add them to your chat list. You will then be able to see tje notofocation of news (similar to blog post).  
SimpleX-Status  
Simplex chat team

–  
Edit seems I did not get notified of the lastest blog post, so you might be right. Maybe my chat team conversation is now contacting a prson instead of a bot, since I gave feedback from time to time.

---

## Post 137 by @an9 — 2025-05-07T03:17:15Z

Thanks for checking!

Yes, what you reported is the standard behavior of a new profile.

You have to start a conversation with these profiles to receive notifications about updates.

So the “choose your update channel” button has no real effect on the desktop app, because it doesn’t notify or update. It’s faulty default behavior.

As I was never interested in contacting the team, I never created the chats mentioned. I remember (but my memory may fail me, so I apologize in advance) that there used to be only “contact SimpleX Chat Team”.

My list of SimpleX-using friends is very small, so I rarely use the create chat button.

Anyway, even though there is that Status/SimpleX Chat Team chat, it’s a very confusing behavior, and one that I believe should be mentioned to new users directed by the PG site, and maybe it’s a small security problem, since users may have convinced themselves that they would be notified of updates by selecting the channel, but they’re not being notified.

(Translated with machine)

---

## Post 138 by @pepa65 — 2025-07-06T11:09:38Z

It’s just very important to be able to self-host, like Deltachat does, and Signal just doesn’t.

---

## Post 139 by @Expert4870 — 2026-05-11T02:10:06Z

> [@maqp](#):
>
> Good luck obtaining Monero from an exchange that doesn’t abide by KYC.

It doesn’t matter for payment privacy or anonymity if you obtain Monero from a KYC exchange. The only problem with obtaining Monero from a KYC exchange is that the exchange knows you have purchased Monero—it doesn’t compromise any future transactions.
