I am a firm believer that there are many privacy techniques you should focus on before encrypted messaging because they will offer you much more “bang for your buck,” things like good passwords, two-factor authentication, and even encrypted email. That said, I still believe that encrypted messaging is a critical part of a well-rounded privacy and security strategy. While the vast majority of our day-to-day conversations may be benign, it can still offer a lot of insight into who we are as people – our routines, likes, and personal thoughts. This information – mundane or not – is worth protecting.
XMPP, for example, does not enable end-to-end encryption by default
Why always these false myths? The most popular XMPP mobile clients do enable it by default.
Right? It is a generic protocol for all sorts off communications, some of which don’t require encryption. Yet every modern chat client for human-to-human communication has OMEMO, OTR, & PGP encryption options.
Why are we still pushing XMPP? It isn’t the 90s and I don’t feel like learning IRC 2.0.
XMPP is so bad it was the baseline for Whatsapp. You know: that minor platform that feels like IRC and never took off. A lot of the techno around you are old stuff that evolved, “new” techno usually comes with new unexpected issues. Then they mature, get better and… old?
Maybe because it works, is easy to set up, light on resources and still is evolving?
It isn’t easy to setup and the core protocol is dated. You can add all sorts of extensions but at the end of the day the core system is old. It feels weird to push it over Matrix. If you want something simple use IRC as you can setup encryption.
Encryption support in IRC clients is WAY behind XMPP. The one I have seen consistently is OTR in form of an add-on, and even that people rarely install. Although IRC is indeed what I prefer for public groupchats.
Matrix seems to be doing the same thing but consumes more resources. And as for setup - I have done that, it is indeed pretty easy, easier than Matrix.
And fully open-source and relying on standards from the get go.
Gee i guess it ain’t cool, that’s why…
I immediately had my suspicions this article might contain some bullshit when I saw it was published by the new oil…
It was a conscious decision for them not to enforce E2EE by default. https://web.archive.org/web/20211215132539/https://infosec-handbook.eu/articles/xmpp-aitm/
XMPP clients have like 10 different implementations because of that and are not always consistent with each other or even function universally across platforms.
But I’m not an author. That would be @[email protected].
The article you linked is a highly misleading nothing burger. And enforcing e2ee at protocol level is a bad idea for many reasons.
That’s what encrypted messagers are…
Messengers are not protocols. They use protocols. Most XMPP clients use the same encryption scheme Signal does only without being dependent on a single specific server, allowing users to spread out. I recommend reading about the differences between targeting developing a platform and developing protocols. Once you do, you’ll see XMPP+Encryption in a better light than anything like Signal. The main problem in the current moment with XMPP+Encryption us that it isn’t where the people are. Us tech weirdos can start the push into that space a little bit, but we need “Normies” to adopt to, and for that we need to be clear on what were talking about. Comparing XMPP to signal doesn’t make sense. Comparing Cheogram to Signal does. And in the latter, cheogram frankly blows Signal out of the water for real privacy and security considerations
🙄 you have obviously no idea what you are talking about.
encrypted email
Besides being a form of messaging (so the text somewhat contradicts itself), typical email is a deeply insecure protocol.
In my opinion, it’s probably impossible to secure without making a new protocol or making such drastic changes that it might as well be considered one.Here are some key concerns regarding the usual PGP-powered encrypted email:
- Email, at a simple level, works much akin to physical email — there’s an “envelope” containing important info regarding the communicating parties, which can’t be encrypted, otherwise the mailing servers wouldn’t know where to forward the messages. This essentially leaks a lot of metadata that can be almost as valuable as the message body itself.
- There’s no forward secrecy — one of the best cryptography features that has become pretty much a commodity in modern systems is forward secrecy, which prevents attackers from decrypting older messages after gaining access to one of the keys.
- While not an issue with the protocol itself, it’s the sad reality and we need to consider — most people use GMail, Outlook and the like, which ultimately need to read your emails in plaintext, for better or worse reasons (search is incredibly useful, but some big players don’t stop there of course :p).
- Another thing is the fact that it’s incredibly easy to have an imbalance of encryption, i.e. someone is encrypting their messages, but others aren’t. With the very popular email culture of quoting (be it top or bottom posting), an unencrypted party in the the conversation can leak important information.
- PGP is… peculiar, so to speak. I has a lot of issues, mostly stemming from its age (which could also be a source of robustness and security, due to being very battle-tested, but I don’t think that’s quite the case with PGP/GPG), tries to do too much and typically has a clunky UI, which impedes wider and proper adoption by less technically people.
This isn’t to say people should definitely stop using and promoting encrypted email, since it can be useful.
It’s just it gives, more often than not, a false sense of security and can lead less proficient users to send sensitive data through this medium which isn’t nearly secure enough for such use cases. Preferably, people with such threat models should opt for better alternatives, most suggested in that article (such as, but definitely not limited to, Signal, SimpleX, Matrix+Olm, XMPP+OTR/OMEMO, sharing files via MagicWormhole, encrypting with tools like age).On a slightly tangential note, I think someone should make a Matrix client with an email client interface. I started working on a new traditional chat client (completely nonfunctional still, very much in-dev), but I’ve been honestly thinking more and more about making one looking like an e-mail client, where there isn’t much focus on instant room-based chats, but rather on longer-lived 1-to-1 and list-like exchange of messages.
What I like about Matrix so much is that it can be run fully on your own infrastructure, even the TURN server for VOIP, and you can build the clients from source yourself too.
But I agree that it’s quite difficult to use. And until now only my dad and my spouse use it with me because they love me and trust me. But they both always have problems with their clients. It randomly logs out and then they have to login with the password and with the encryption key again. For a long time calling didn’t work because I misconfigured the server. Then videos were for the longest time uploaded in full size and anything longer than a few seconds would be rejected. The whole spaces thing is implemented very weirdly so it confuses them. And then the threads are even worse so we can’t use them because nobody gets how to do it.
Signal ux is much better fyi, though I accept it’s hard to roll your own. Trade offs are generally worth
As far as I know you can’t host your own signal server which connects to their servers.
I’m using Signal with the rest of the family and most friends.
Yeah they killed federation, though I can’t disagree with the reason. Thankfully you don’t need to trust the server
As far as I know you can’t host your own signal server which connects to their servers.
That’s right, Signal is not federated.
Use Simplex Chat instead
The downside with Simplex Chat is that there is no server side accounts
Pretty good read
As always, the problem isnt using a new service or super secure app, the problem is making everyone else I talk to use said app, not happening anytime soon sadly.
Another basic thing – If your messenger is throwing your messages in a notification; it’s being logged. Google was found to be logging almost all notification content. Make sure your message app isn’t putting the content of messages into notifications.
Unless you don’t have Google or Apple services.
Also I don’t think they log the normal Android notification mechanism. (Not push)
Yeah, if it’s a local notification, they’re not logging that – so far as I’m aware at this point in time.
Do they also log everything that comes through a private ntfy server? Or just what goes through their notifications?
NTFY uses the same mechanic that they do for push notifications; it keeps an open socket and then just communicates across the socket. So they shouldn’t be keeping track of that, so far as I understand the AOSP codebase.
Cool, that’s what I was hoping. I’m perpetually in the “knows enough to be dangerous” category.
If the app implements their own notification system and doesn’t rely on GCM then Google isn’t able to log them as far as I know.
Sure – but how many of them actually do?
I can throw a few examples:
- SimpleX
- Threema Libre
- Briar (afaik)
- Conversations (XMPP client)
- FluffyChat (matrix client), probably some others too
- Telegram FOSS (Telegram fork), Mercurygram (Telegram FOSS fork)
- Molly (Signal fork)
- Session F-Droid (Session fork)
So, the answer is — almost every of them.
Briar just says x private messages
Element X (Matrix client). Basically anything that offers F-Droid or open source release will have builds without built-in notifications. Play Store/App Store builds requires using native notification systems.
But not Signal? I use Signal but I’m not sure I can get my chat groups to use something else.
I mentioned Molly — Signal fork. It can show notifications via UnifiedPush or websocket.
I just run it in the background. It pulls almost no battery so it is a non issue.
Also getting it to work with Unified push requires extra effort.
Signal has a ton of the dependence on proprietary software. You won’t find Signal on F-droid.
Best option is Molly foss
UnifiedPush instead of their own implantation would be better for power consumption ig.
Overall a choice between which Notifier you want to choose would be nice.
Between the apps own notifier and UnifiedPush (also has a Fallback to GCM if wanted)
Now this is why I read comments. You’re absolutely right and I knew this info and just hadn’t put the two together. Thank you. Settings changed.
You can also just use a degoogled os which won’t be logging your notification content. But in any case you shouldn’t have notifications as notifications are exclusive with at-rest encryption (or I guess you could have at-rest encryption but just have the db constantly decrypted whenever your phone is on? Seems to defeat the point then)
Which DeGoogled OS do you know of that uses their own notification backend?
Presumably any degoogled OS would remove that kind of telemetry—it seems like quite an obvious oversight if they continue to send notification contents to Google’s servers? If the suggestion is that it’s through a backdoor, then that’s the responsibility of the open source community to spot the backdoor in the AOSP.
Which DeGoogled OS do you know of that uses their own notification backend?
You don’t need one. Just use any degoogled ROM with UnifindPush, as almost every secure messenger support it. If not, notifications can still show up via websocket.
That’s if they use Google’s push notification backend on firebase. FOSS apps from F-droid usually don’t.
Tl;Dr install F-droid damnit
Molly uses UnifiedPush, so definitely try that. Also, Google may log notifications but they can’t read the messages iirc. Maybe they get some metadata idk.
Messages can be encrypted
If you put the notification in unencrypted form, across google’s push notification system, it is logged in puretext. I, and everyone else knows, that messages can be encrypted. This was a warning about a very specific thing.
Law enforcement has been doing this to signal users for a while now. The default is to not show the message in a notification, but users keep turning it on, and it uses Google’s notification servers. So law enforcement, got access to people’s signal messages, by going through Google to get the notification history/logs.
TLDR: Avoid Telegram and WhatsApp. Recommended messengers are Session, Signal, SimpleX and Threema. Honorable mention: Briar.
Session should probably be avoided as well, primarily because they’ve disabled things like perfect forward secrecy and a few other security measures that probably should not have been disabled.
That’s mentioned in the article I believe. I was just trying to save some people a minute or two. :)
Session is dead lmfao
TLDR??? pls
- The Session open group server sog.caliban.org has been permanently shut down due to the declining state and neglect of the open group ecosystem by its creators.
- The transition from the private cryptocurrency OXEN to the public ERC-20 token SENT is criticized for favoring the project’s creators over loyal community members, leading to potential financial losses for many.
- The author condemns the management of Session for their incompetence and dishonesty, predicting the project’s inevitable failure due to a lack of trust and proper execution.
Oh damn. When I first looked into Session I was really excited, until I found out that the anonymity layer was based on an altcoin. Which means that you’re only anonymous as long as line goes up. I didn’t expect it to fail quite this quickly though.
Oh damn
Honorable mention to Matrix as well
OK, WhatsApp is owned by Meta and it is proprietary, but why not Telegram?
Effectively does not have end-to-end, phone number required and overall hard to use anonymously, etc.
Doesn’t Signal also require a phone number?
Not anymore if I understand everything correctly
Yes, and that’s a mark against Signal.
What about Briar? I know its android only but it looks promising for what it can do.
As a long time user of Session, it is hard to believe someone would describe it as “user-friendly”.
XMPP and Matrix
Matrix is the worst option when it comes to avoiding metadata. A group chat with users on 10 different servers will create ten different places to store the metadata with no way for any user to delete or edit this metadata. Its a privacy nightmare.
How does xmpp handle it?
All decentralized protocols have this issue. The servers need to handle metadata for chat groups, like who is part of which group. If the servers are under individual control, nobody can force them to delete this data. The question is, do you trust a non profit organisation like signal to minimize and delete metadata (which court orders have proven they do) or do you trust all individuals of a group chat to do the same when you manually ask them to.
SimpleX is currently my favourite. Yeah, there are some small concerns, but where aren’t they? I hope SimpleX can grow more popular and I’m also waiting for a full-featured desktop client, so it’ll be easier to convince people to switch.
A desktop client that syncs with the mobile client is a must before I can make that switch
There is a full-featured desktop client now! What I am waiting for are third-party lighter clients, because the official one is obscenely heavy.
Oh, I didn’t know it has a flatpak now. That’s cool!
The missing unifiedpush feature. I don’t need another battery burning messenger.
I hate that simplex is like this.
That is my one and only issue with Simplex. It drinks battery lika a Puerto Rican drinks rum on weekends.
Why do people like Matrix? It’s really slow. Even most of the non-Electron clients consume a ton of resources (even more than Electron apps usually do).
Especially Gomuks, by far the worst offender. It consumes nearly a gigabyte of memory and it’s a TUI.
I think it more comes down to it not being Discord than people liking it.
Well, it’s not privacy-focused… but I do like Revolt for this purpose. It’s performant, looks very similar to Discord, and I think they’re adding E2EE eventually.
It is centralized and the moderation suck. They banned people for being homophobic because they said they were Christian. You can find more information online.
I attempted to find evidence to support this.
I found one reddit post claiming this, but they themselves did not provide any evidence.
freedom of religion is a human right bruh i did not say anything but i believe in god the banned me and claimed i was being homophobic 1. i said nothing about it 2. stfu even if i was
Not exactly the most compelling piece of evidence, and this was all I could find.
I can’t find it now but there was a person who was banned for saying the were Christian. They didn’t say anything more and the could as well been LGBQ+. There were a few other instances that I am forgetting of bad moderation.
Anyway the centralized nature of Revolt Chat makes it no very appealing for me.
It is selfhostable though, so moderation would be an issue of individual servers rather than the whole thing.
Revolt not being federated turns me off of it
The issue has historically been with the server. (It was buggy as hell) These days it is much more stable and less prone to collapse.
I don’t like Matrix because it gives a option to not encrypt communications. Encryption should be enforced and transparent
We’ve been on simplex for a few months, I like it quite a bit. We made diff accounts for each device and added them all to a group.
Notifications arrive reliably on graphene (no google services), and KDE connect.
I don’t love the desktop client and wish I could change text size and scaling. I was able to message the dev about it in simplex and got replies which was cool
I like Signal, but I really miss multi device support. Same issue with Threema.
Yeah that’s a bummer. Signal has multi device support but only for desktop and iPad (yeah, not Android tablets), but you always need to have a master phone device.
It’s been an issue for so long, but this is Signal, they do whatever the f they want.
A workaround to have android has secondary device : https://programming.dev/post/5281504
Ah right, Molly. Have yet to tried it, but looks interesting.
I think I’m too afraid of moving my main stuff to Molly, lest I lose something :P But the UnifiedPush and multiple mobile clients is enticing.
It is not like they couldn’t support it. Simplex Chat has early support and Session has supported it for a long time.
the fact that you like it doesn’t make best or even decent in terms of privacy
I wish Molly was brought up. It is way better than Signal
In what way? I thought it was just an alternative client for Signal.
It is. It’s just a bit hardened