137
Best apps for private messaging (www.privacyguides.org)
submitted 3 months ago by Maragato@lemmy.world to c/opensource@lemmy.ml

Hello. I am looking for an alternative to Telegram and I prefer an application that uses decentralised servers. My question is: why is the xmpp+omemo protocol not recommended on websites when it is open source and decentralised? The privacyguides.org website does not list xmpp+omemo as a recommended messaging service. Nor does this website include it in its comparison of private messaging services.

https://www.privacyguides.org/en/assets/img/cover/real-time-communication.webp

Why do you think xmpp and its messaging clients such as Conversations, Movim, Gajim, etc. do not appear in these guides?

top 50 comments
sorted by: hot top controversial new old
[-] Neptr 28 points 3 months ago

Here is a blog post by a widely respected cryptographer on why XMPP+OMEMO is not secure: https://soatok.blog/2024/08/04/against-xmppomemo/

[-] u_tamtam@programming.dev 5 points 3 months ago

This blog post has been debunked as fallacious (posing as evidence what's unsubstantiated), and in bad faith (some comments, including by the protocol developers, were removed from the blog's comments section). That aside, if you are left unimpressed by the crypto jargon, all you take away from it is that Soatok really likes Signal and this isn't Signal. There have been several independent audits on OMEMO, it's used today by serious institutions and governments, it's been under more scrutiny than soatok gave it, and there's nothing knowingly insecure about it.

[-] Neptr 11 points 3 months ago

OMEMO leaks plenty of metadata; most things other than message contents are left unencrypted. Many of the mature XMPP use different OMEMO versions (which can be hard to tell when the client doesn't clearly state the XEP versions, like Snikket). I spent 40 min scouring Snikkets website and source repo without any clear way to determine what version of OMEMO they bundle. I said OMEMO+XMPP because no matter how secure your protocol is, the actual implementation by your largest userbases determine real-world security.

And lastly, just because "serious institutions and governments" use it doesn't make it more secure. Many European governments use Matrix, and that has even worse security, breaks forward secrecy, doesn't encrypt basically anything other than message content, etc. Many governments have critical systems that run unpatched Win 7 or older. My point is that security is independent of adoption.

[-] u_tamtam@programming.dev 2 points 3 months ago

OMEMO leaks plenty of metadata

Could you even cite an example of such leaked metadata? I'd like to also remind you that metadata leaking to your own server (which you can chose, which you can self-host) isn't as big a deal in XMPP as it is with other services. Which is also why I can't take Soatok's opinion about and obsession for Signal seriously: when all accounts are hosted by a single actor, you have a much bigger metadata problem, and all obfuscation attempts (sealed senders being one) are ultimately defeated by simple timing and packet correlation attacks.

I spent 40 min scouring Snikkets website and source repo without any clear way to determine what version of OMEMO they bundle.

You were probably looking at a rebrand/spin of https://xmpp.org/software/conversations/ . All major XMPP clients and servers declare their compat via DOAP: https://xmpp.org/extensions/xep-0453.html

My point is that security is independent of adoption.

Correct, but in this case OMEMO is secure and is used in contexts where security actually matters. There have been multiple audits of it over the years:

[-] Neptr 3 points 3 months ago

From the OMEMO XEP specification under section 2.1 "Threat Model" https://xmpp.org/extensions/xep-0384.html#reqs-threat-model

The OMEMO protocol does not protect against attackers who rely on metadata and traffic analysis.

Off-topic, I would also like to add that the spec says " It has been demonstrated, that OMEMO provides only weak forward secrecy (it protects the session key only once both parties complete the key exchange).", citing https://www.cypherpunks.ca/~iang/pubs/dakez-popets18.pdf

The specification only seems to say that message content are encrypted, making no mention of encrypting any other data than message content. Look under sections 1.2 and 4.4 to see what I mean about there being no mention encrypting other data (eg. recipients and room names). This means that sender/receiver are (most likely) not encrypted. I don't think (though I don't know for sure) that room names are encrypted either.

What happens if you communicate/participate in an encrypted chat/user on another server? Could the server owner now see the other unencrypted data and metadata?

Also, just because you self host it doesn't make the unencrypted (meta)data any less dangerous. That just makes your server the point of failure. By your logic, why encrypt at all? It all lives on your server, it is only a problem if someone has access to your server. Networking is encrypted with TLS anyways, so why bother. /s

load more comments (2 replies)
[-] artyom@piefed.social 4 points 3 months ago

This post is 1.5 years old and outdated.

[-] Hazematman@lemmy.ca 3 points 3 months ago

Do you know if there is a more up to date description of xmpp e2ee without having to read the spec. Specifically interested in stuff like how much metadata is leaked.

[-] Neptr 2 points 3 months ago
[-] artyom@piefed.social 2 points 3 months ago
[-] Neptr 7 points 3 months ago

Did that fix any of the underlining issues with OMEMO use across XMPP clients, such as odd/opaque choices by the OMEMO maintainer, or the fragmentation of OMEMO versions used by clients (most being very out-of-date)?

Let me be clear: I am NOT anti-XMPP (or even OMEMO). I would love to see it succeed because I much prefer it over Matrix and other alternatives. My problem isn't with the technology, just the implementation.

[-] Caravaggio@feddit.nl 17 points 3 months ago

Misleading title.

[-] ProdigalFrog@slrpnk.net 12 points 3 months ago* (last edited 3 months ago)

I've personally used 4 encrypted communication apps, here are my thoughts:

Signal: huge downside that it required a phone number (not sure if it still does), and the centralized nature of it makes me very wary of it. It worked reliably when I did use it, but I no longer use it.

Matrix with Element: As others mentioned, it leaks meta data. It wasn't very reliable in my experience with encrypted group chats. Messages would constantly not be readable by other users in the chat, requiring frequent re-sending to finally get through. Overall I found it very frustrating to use.

XMPP: Experience can somewhat vary depending on the app used. With the Movim desktop front-end, I can sometimes have issues with encrypted messages not getting unencrypted (possibly just user error on my part), but with mobile apps like Conversations or Monocles, its been pretty much 100% reliable. Doesn't drain my battery either. Would recommend.

Deltachat: I've used this the least, but I really like it. Super easy to connect to friends and join a group chat, its all encrypted by default so no real chance of encountering an unencrypted message, very nice UI, is available on all platforms as one app, and has been 100% reliable with low battery drain. Highly recommend if you don't need to make voice calls (it can do texts, images, and supports voice/video files you can send and play within the app).

load more comments (1 replies)
[-] loweffortname 9 points 3 months ago

I know it's not the most popular, but I've genuinely been happy with Matrix for the last few years. Obviously there are problems, but it really has gotten fairly stable. At least...for me...

[-] myszka@lemmy.ml 5 points 3 months ago

+1 for matrix

[-] Shimitar@downonthestreet.eu 9 points 3 months ago

Self host your matrix server, use Continuwuity not Synapse, and do not enable federation.

[-] u_tamtam@programming.dev 4 points 3 months ago

Then why bother with Matrix at all if that's not for the federation? You give yourself the trouble and inefficiencies of an over-engineered protocol you won't even use.

[-] Shimitar@downonthestreet.eu 2 points 3 months ago

Because matrix has the bet bridges so I can centralize all other protocols on my matrix server (Continuwuity) and have whatsapp, telegram, Signal all accessible from one single app.

load more comments (3 replies)
[-] onlooker@lemmy.ml 2 points 3 months ago
[-] Shimitar@downonthestreet.eu 3 points 3 months ago

Super heavy, and overkill unless you need to run matrix.org itself.

load more comments (6 replies)
load more comments (1 replies)
[-] sga@piefed.social 7 points 3 months ago

reason for them not appearing is that xmpp is a largely relaxed platform, that is, all implementations are not equally strict. some may implement certain extensions, others may implement other. encryption (omemo) is a common one that most implement, but then client (the user apps like gajim) may or may not implement them correctly, or they may have a fallback (first communication between 2 clients maybe is not encrypted), and other different problems with encryption being flaky (firstly, it is not perfect forward secrecy, it is a bit prone to failure (messages unable to decrypt), etc.), hence it is not recommended much.

[-] bufalo1973@piefed.social 3 points 3 months ago

For the first communication not encrypted there's an easy solution: force encryption on your side and block unencrypted communications.

[-] sexy_peach@feddit.org 2 points 3 months ago

Theres snikket as a solution to that

load more comments (1 replies)
[-] cockmushroom@reddthat.com 7 points 3 months ago

The freenet/futo devs are working something called river (https://freenet.org/). I don't think it's mobile yet and cannot attest to it's call quality. It's fully decentralized though, so it should work even if they abandon the project. Here's a video on the protocol https://youtu.be/3SxNBz1VTE0 Mostly goes over the introductory docs that're on the site.

load more comments (1 replies)
[-] UnfinishedProjects@lemmy.zip 6 points 3 months ago

I've hardly used it so far, but simpleX seems promising from my limited knowledge. I highly suggest checking it out.

[-] Labna@lemmy.world 6 points 3 months ago* (last edited 3 months ago)

Tox, where is TOX ? Why it's not mentioned in the article ? It's te most private messaging app, no other app can be more secure.

load more comments (3 replies)
[-] toothbrush 4 points 3 months ago

No idea. I use the app Conversations (XMPP+Omemo) and it works great. Only downside ist that you have to somewhat trust the server you are on, because of metadata. But thats basically every chat app.

[-] user28282912@piefed.social 4 points 3 months ago

Prosody XMPP + Pidgin/(Monal|Xabber) has always worked for me. It is not hard to setup or manage, has E2E encryption too.

[-] shuva_meta@lemmy.today 3 points 3 months ago

You should check out "keet" or "Jami" for privacy message app.

[-] toothbrush 6 points 3 months ago

Jami is nice in theory, but it was very buggy for me when I tried it and Jami calls had no noise cancelling at all. Other than that, it does work.

I cant find the "keet" git repo, I think its proprietary. So thats a no go for privacy.

[-] shuva_meta@lemmy.today 2 points 3 months ago

https://github.com/holepunchto/keet-appling-next

Here is the github link, note that, this is the "shell" of the desktop. There is another repo specifically for android app.

https://keet.io/ is the official website

Developer is holepunch and uses "pear" peer-to-peer protocol.

[-] toothbrush 3 points 3 months ago

Yeah, I saw that too, that not the full source code. I found another repository for the android releases: https://github.com/holepunchto/keet-mobile-releases

Again, no source code, just binaries. Rather shady I think...

[-] sonalder@lemmy.ml 4 points 3 months ago

Yeah Keet (and Pear in general) are doing some open washing, branding their apps as open source while using very restrictive licences, at least that's how I feel about them. It's closer to source available to my eyes.

load more comments (1 replies)
load more comments (1 replies)
[-] rodsthencones@startrek.website 2 points 3 months ago

Right now, the open source community has so many different ways to communicate.

The problem is what is the goal, privacy or security.

All seem to have benefits and problems.

I use conversations and delta chat. I don't know what is best. But it is better that anything that is owned by big corps.

load more comments
view more: next ›
this post was submitted on 09 Feb 2026
137 points (100.0% liked)

Open Source

46737 readers
150 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 6 years ago
MODERATORS