Why is XMPP More Secure than Signal?

Trump's Signal leak is a great time to educate you on XMPP. Why is it better?

a) Server Control

Signal is hosted on an external power (Amazon) that you have no control over. And the metadata protection, (for who is talking to who), has been proven to be vulnerable to attackers. [1] This alone could be how the CIA knows if Tucker Carlson is talking to Putin, without reading the message contents.

b) Server-side Identity

Any end-to-end encrypted messenger has two "identities". The first is the account that the server has the password and access to. And second identity is the encryption keys on your device.

Signal uses phone numbers for server-side accounts, which is an external source of identity and truth. This is outside the control of even Amazon (the server). Even if you don't have the pin passcode, the phone number can still be re-assigned. And although this would close current conversations, a hacker can then use the same identity for phising attacks.

On the other hand, XMPP server-side identities are on a server you control and pick. And if done on a Tor Onion, then even a poor civilian with low resources can self-host it on a Rasberry Pi in their home.

c) Client-side Encryption

When Signal users change devices or encryption keys, it only gives a warning that's easily ignored. While as with XMPP, it can't function without drawing attention. Further, XMPP gives much more fine-grained control over which OMEMO encryption keys the users will trust or not (seeing all of the different choices). This is unlike Signal, which forces a binary decision.

d) Group Entry

XMPP allows the server operator to configure groups to only allow entry from users ON THE SAME SERVER. It is possible to "de-federate". This provides massive security benefits, to properly administer who has authorized accounts to even be using the server-side identity to begin with.

In sharp contrast, Signal accounts have no distinction between members of your organization and foreign phising attackers. And SimpleX would be horrible for figuring out who is part of your group.

e) Stronger than Matrix

Matrix is far weaker than XMPP for metadata protection, because Matrix chats go to each of the member's homeservers. This leaks to Matrix-org, (which is on Cloudflare), all metadata if even 1 person from that server is in your group.

In sharp contrast, XMPP has group chats stay on your server itself. And members have to connect directly to your server to get precious metadata.

Conclusion

Given XMPP's powerful security, metadata protection, low cost, and decentralized nature,

You can see why we include XMPP with Email (and potentially your own website), in our Cloud Combo package...

Under this plan, you get a year of friendly support from our dedicated team. But zero external rules (or control over you), because of our decentralized server administration. Because it’s fully decentralized, it avoids us being on the legal hook for dispersed servers around the world, that you alone control. In fact, it’s unclear who is even our customer.

You can get started for just $100 for a complete setup and a full year of support,

https://simplifiedprivacy.com/email-cloud-combo/index.html

Sources on Signal’s metadata vulnerabilities:

[1] https://simplifiedprivacy.com/signal/index.html

And if you like my articles, consider reposting. As we don't use Twitter or Youtube.

I self-host XMPP for years but I would echo the sentiment of the late cock.li FAQ section where it said that XMPP clients are all garbage

what is the best XMPP client for windows, mac OS, linux, iOS, and android? the only one I "like" is Conversations for android. I want to like gajim for linux but it doesn't have the same functionality as Gajim for windows...

Reply to this note

Please Login to reply.

Discussion

Curious to know what you guys think about these criticisms of the current state of OMEMO+XMPP in this article. Valid? FUD?

Conversations and Gajim are mentioned in it as being one of the most popular clients yet it's crypto libraries are way out of date supposedly.

https://soatok.blog/2024/08/04/against-xmppomemo/

Imagine I say to you, "Monero is crap. The sky is blue"

Yes the sky is blue, but why is monero crappy? The cryptography in the implimentation he's criticizing, is just as good as the ones in the next spec he's criticizing it has not advanced to yet. So he makes a long ass ramble about cryptography, but these points are not directly related to any kind of meaningful criticism of XMPP or the cryptography used. Merely that it hasn't changed yet.

Further, his bitching about not having encryption by default is a minor point. Flip it on and move on with life. XMPP gives the user the freedom to decide which crypto to use.

He's completely ignoring all the issues mentioned in my post. The cool thing about XMPP is that the end-user does not have to listen or obey external rules. While as this author is a bitch slave to Signal's board. By the way bro, the sky is blue.

What XMPP Client do you recommend?

If you’re using Linux,

Then Dino. But Gajim is a 2nd option.

Gajim audio calls work for Linux only, and NOT on Windows.

If you’re using Android,

Monocles has good texting sync with Linux Dino.

But Cheogram is excellent on it’s own.

If you’re using Windows,

Gajim is great for texts, but can’t do audio call for Windows. You have two audio call options:

Option 1) Mov.im in a Web browser, the pro is this is easy. The con is they see your password because it’s in a browser.

Option 2) Unofficial release of Dino for Windows, which I haven’t personally tried and may have problems:

https://github.com/LAGonauta/dino/releases

If you’re using iPhone,

You have two choices

Option 1) Snikket’s iOS app,

https://snikket.org/app/ios/

Option 2) Siskin, which Snikket is based on,

https://siskin.im/

If you’re using Apple/Mac computers,

Your 2 choices are:

Option 1) the same mov.im in a browser as Windows

Option 2) Beagle.im

Source: https://simplifiedprivacy.com/voip/

I'm still disappointed. on Android, both clients you mentioned plus Conversations cost money via Google play store. I'd have to teach the user to get the unpaid version from F-Droid. The iOS clients are all garbage, and there's nothing for Windows that works well and supports calling. For now I've written off the possibility that normies would use XMPP at all and I just ask them to use Signal instead since it just werks.

WHAT?! you're saying a person with a completely compromised device, getting software from Google is the standard?!

We're talking about what is the most private and secure thing. Not what is the easiest to get a normie with a compromised OS and zero knowledge on. In fact, Signal or XMPP is irrelevant then, the whole OS is compromised

if we are talking about the "most secure thing," then our threat model stretches to infinity. who cares if you use omemo on your graphene device. the camera pointed at your bedroom window is calculating your key presses from the vibrations on a nearby bag of potato chips. we should just astral project into the western pure land so that the psychic kids in a government facility can't use their remote viewing powers on us.

tulsi gabbard probably doesn't know how to astral project into the western pure land, and she probably has an iphone. XMPP is nice and all, but the iOS clients tend to be trash.

Then by your own logic, why use Monero if Bitcoin can be private enough against the infinity?

It's what is reasonable trade-offs for what you get. There is not a right answer for everyone, but there is a wrong answer for Trump. And that was adding the random person to the chat group, which could have been prevented with XMPP as point d argues.

There's no 100% security.

Even GrapheneOS runs as a VM client and can be compromised by gov/fone service providers by attacking your closed source hardware driver of your GSM/Wifi module.

yes true

Its on fdroid for free.