I currently use Telegram for my friends and family, but have reluctantly come to the conclusion that the UK Government is either reaching agreement for backdoors with messaging services, or is trying its hardest to.
I’m also on Element/Matrix. Before I try to get my contacts to join me on there, should I be aware of any privacy issues or is that a good place to head?
I currently use Telegram for my friends and family
Telegram is probably the worst thing you could use, it doesn’t encrypt messages by default and they are stored on Telegram’s servers, so they can read them at any time.
I’m also on Element/Matrix. Before I try to get my contacts to join me on there, should I be aware of any privacy issues
Yes, Matrix leaks a bunch of metadata and doesn’t have post-quantum encryption.
The best option is to use Signal. It uses end-to-end encryption by default for everything: Normal chats, group chats, voice and video calls and even stories. Messages are only stored on their servers (in encrypted format, so they can’t access them) until you receive them, after which they are promptly deleted and only stored on your device. And Signal has much better metadata protection than Matrix. The UX is also much better and less confusing, making onboarding new users much easier.
But you should also be aware that Signal does not federate, so the company can be bought. They have control over all accounts and the servers, without easy way to migrate away again. So it might just be another trap.
Try to use federated services (like matrix), they are more robust against hostile take overs.
This is such a bad take it seems like deliberate misinformation.
Signal is open-source software maintained by a non-profit. User data is not stored on Signal servers, they have no way to access messages as they are stored and encrypted on your phone. If the Signal Foundation were revealed as bad actors then the open-source code could be forked to a new project.
Feel free to fully evaluate their code here: https://github.com/signalapp
deleted by creator
No it’s not: https://github.com/signalapp/signal-server
deleted by creator
I’m with you on this, I strongly recall there was some sort of not fully open source portion of Signal at least at one point in time.
Edit: ya, they weren’t updating server for awhile, so while there is an open source server, they definitely weren’t running that code for awhile, and may not be running it today. Granted since the decryption happens client side, it shouldn’t matter what the server does to some extent.
so the company can be bought
The company (Signal Messenger LLC) is fully owned by Signal Foundation, a 501©3 non profit organization.
Try to use federated services
I generally like this idea, and I also use federated services for things like social media, that’s why we’re having a discussion here on Lemmy. But it introduces some issues with private messaging, like lack of reliability, which sucks if you want to use Matrix as your primary messenger, as well as metadata leaks. Federation is not always the answer, and in my opinion definitely not when it comes private and secure messaging.
they are more robust against hostile take overs
Probably around 80-90% of Matrix users are on the matrix.org homeserver, so it’s absolutely not as decentralized and resilient as you think it is.
The company (Signal Messenger LLC) is fully owned by Signal Foundation, a 501©3 non profit organization.
OpenAI is also non-profit. Not really an argument.
Probably around 80-90% of Matrix users are on the matrix.org homeserver, so it’s absolutely not as decentralized and resilient as you think it is.
Well, the goal is that moving to your own server, will not mean that you will loose access to all your contacts. Which makes moving instances much simpler. If Matrix gets a hostile take-over, your don’t really need to reach a critical mass for an alternative server.
Telegram is the worst kind of “secure” messaging in that it gives you a false sense of security while not really being secure.
Telegram is the least secure thing there is. Not only it’s complete zero effort security, it’s also much above zero effort to advertise itself as almost secure. Not a good combination as you know.
The biggest issue with Matrix is that the server collects ALL the metadata. If that’s your server, that’s fine. If thats the default matrix.org server that almost everyone uses, you might as well be using WhatsApp. Same thing goes if any of those people are conversing with people on your server, as they will store all redundant metadata on their server as well.
Signal is easier to use, more private, and faster.
Signal is easier to use, more private, and faster.
Unfortunately, it is also effectively tied to Google services due its app distribution and push notification channels on Android (which most people on Signal use), and as a centralised service, it is vulnerable to shutdown or network-level metadata monitoring by anyone with sufficient access/influence at Signal or their data center provider (such as a government who doesn’t like encrypted messaging).
(Edit: rephrased for clarity)
it’s also effectively tied to Google services due to the app distribution
It’s been recently added to FDroid.
and push notification channels
You can use NTFY with Molly (which has been on FDroid for some time).
network-level metadata monitoring by anyone with sufficient access/influence at Signal or their data center provider (such as a government who doesn’t like encrypted messaging).
This one is just a straight-up lie. Everything on the server is encrypted and no one has the keys except the participants.
It’s been recently added to FDroid.
No, it has not. A third party published it in an f-droid compatible repository. That might be convenient for someone who happens to trust that third party and manually add it to their F-Droid client, but it is not at all like it being added it to F-Droid.
You can use NTFY with Molly (which has been on FDroid for some time).
This does not refute what I wrote. Unless you only communicate with people who get their Signal app from some non-Google source and they all rig up alternative push notification channels, or every one of them uses Signal exclusively on iOS, your conversations are still tied to Google. Perhaps you have so few contacts that you could achieve that, but most people are not in that position.
network-level metadata monitoring by anyone with sufficient access/influence at Signal or their data center provider (such as a government who doesn’t like encrypted messaging).
This one is just a straight-up lie. Everything on the server is encrypted and no one has the keys except the participants.
Encryption doesn’t hide network traffic. Signal’s centralised design means there is a single point where that traffic can be monitored and traced to reveal which endpoints are talking to each other, and where, and when.
What I wrote is not a lie, which you would know if you actually understood these issues. Please stop making baseless accusations. You are wrong, and you are being very rude.
If you’re interested in correcting your ignorance, I suggest starting with this paper, which touches on some of the issues:
https://www.ndss-symposium.org/ndss-paper/improving-signals-sealed-sender/
If the paper is too much for you, the linked video does a pretty good job of explaining.
your conversations are still tied to Google
That’s simply false. Signal Notifications never include the content of the message or any metadata, no matter if they’re sent over FCM, APN, WebSockets or UnifiedPush (via mollysocket). That wouldn’t even be possible, since the Signal server sending out the notification doesn’t even have the key to decrypt the message. Only the users involved in the conversation have the keys, that’s how end-to-end encryption works. Signal simply sends an empty message via FCM (or any other push system), and the Signal app on your device then receives and decrypts the encrypted message and shows you a preview of the message content as a notification on your operating system.
And every build of the Signal client for WhatsApp also supports WebSockets as a fallback push notification system, in case Play services aren’t installed or can’t be reached. The only reason why FCM is used by default is that it saves some battery, because it only maintains one background network connection for all apps, instead of each app handling notifications themselves.
It’s not false.
Signal’s default, well-supported installations use Google services, so unless you’re an extremely atypical user, those services are present on most of your contacts’ devices. You might have the knowledge, skill, and motivation to remove those services from your own device, but since they’re still present at the other end of most chats, you haven’t escaped them.
Let’s also remember that E2EE doesn’t protect the endpionts, and that Google Play Services run with system-level privileges.
Their github releases have the apk available so you can manually download it and install it or use obtainium.
It’s also available on their website btw: https://signal.org/android/apk/
Indeed. Tucked away in a corner of their web site, where it isn’t easy to find unless someone else guides you to it, below a large bold warning that discourages people from actually using it:
Danger zone
Advanced users with special needs can download the Signal APK directly. Most users should not do this under normal circumstances.
This ensures that nearly nobody uses that build. Consequently, almost all chats on Signal will have an app store build running on at least one endpoint.
Signal requires a phone number on setup.
Also, matrix has bridges, which alone make it worthwhile for me. They, of course, don’t help privacy, but they are so so nice for convenience.
Matrix is definitely slow though, and a grand majority of the clients are heavy terrible buggy electron apps. There are a few good ones ( nheko and the new beeper clients ), but even they have some rough edges.
I still use matrix all the time and love it.
If max privacy was the goal I think simplex looks wonderful. No required info for sign up, no way for them to possibly collect any metadata ( because there are no identifiers sent over internet for anyone at all ), E2EE, and decentralized.
Signal requires a phone number on setup.
It is dumb and annoying and inconvenient but doesn’t affect its use or privacy.
I do agree that SimpleX seems like the best chat option.
It affects its use for me definitely. I don’t want to have a phone number. At all.
How do you even exist without a phone number. How do you get cellular data? Does the government not require you to have one? Your employer? What about all the services that require one?
telegram is not encrypted e2e
Matrix is good for private general messaging. The fact that it’s decentralised means it can also withstand things like government-ordered shutdowns or back doors, since there is no central point that controls the whole network.
Two things to be aware of:
- Some non-message bits (e.g. room topic text and membership) have not yet been moved to the encrypted channel, so those could be read by the administrator of a homeserver that participates in your chat room. Since most people care primarily about keeping the message content private, this is an acceptable trade-off to get all the things that Matrix offers.
- The upcoming Matrix 2.0 features and design choices simplify the UI and fix some occasional errors. It might be worth waiting until this stuff officially lands in the client apps before bringing your contacts to Matrix, for a better experience all around.
Government-ordered shutdowns do not work the way you think. Government doesn’t play by the rules, it makes rules for itself.
Which means - they may, say, make a list of instances updated hourly, which automatically get blocked by ISPs.
Free speech or not, it won’t withstand such.
Are there any other messaging options that are more resistant to government ordered shutdowns than Matrix?
All either lack user directory or use phone numbers as identifiers. Finding people through the same instrument is an important functionality, without which a messaging system will not be popular and thus will not be relevant for such situations.
If a messaging system uses SMS for confirmation, then, as you might guess, there is some central point sending out those SMS. So it would have centralized registration. Then technically registration can be disrupted (one can imagine some cryptographic scheme to make this the only disruption). Registration is an important part, even for a popular system many people will not have an existing account when they need it.
User directories - if there is a decentralized user directory listing John Smith, Ivan Ivanov and Obi-Wan Kenobi, then either there will be hundreds of each with no ability to tell which of them is the real one (suppose those names are unique, say, u://jsmith, u://iivanov and u://alongtime ), or you need some kind of registration of public key and nickname pairs. Simplest variant (maybe dumb) is to have the messages telling of such registration having happened to be signed by some “registration authority” or a user delegated (by another message) that right (one would have to trace it to the root sadly). Then, it appears, users may add registration authorities, or choose between them, manually, but then the decentralized user directory would work in some moderated and ordered way.
I’m not aware of any such system existing, and perhaps something about what I wrote is just dumb.