What is XMPP
9th October 2022

XMPP is a well established instant messaging protocol which millions have used, whether they were aware of it or not. Various popular messaging applications began as XMPP chat clients before morphing into something walled off and proprietary.

XMPP stands for Extensible Messaging and Presence Protocol. It is an free & open-source decentralized messaging standard akin to email. Anyone can create an XMPP account on one server and chat with someone registered on another server. Like email, no one company has either access to to or control over everyone's data. You can also lead secure encrypted conversations on XMPP thanks to the OMEMO implementation.

This protocol has been around since 1999, and it remains a standard that people actively develop and utilize. XMPP reduces the need for people to continuosly reinvent the wheel.

As mentioned before, XMPP is free & open-source, anyone can create their own chat clients or host their own XMPP servers. This is great for the user's freedom and privacy.

Diagram of XMPP

Why XMPP โ“

1. Privacy - XMPP is as private as you want it to be. By default, it isn't inherently private. Just like with email, your provider can read all messages sent and the related metadata. You can protect the content of your messages by turning to encryption. There are various types, with the most modern encryption option being OMEMO, based on the Signal Protocol used by the private messaging app Signal. Most XMPP providers are small and have no intention to scan or monetize your messages but to be absolutely sure a provider doesn't know who you contact, you can host your own XMPP server instead.

2. Decentralized - Centralized services come with many conveniences. It's easy to find contacts to message, everyone has the same experience, and updates can go out to everyone simultaneously. But we are increasingly becoming aware of the downsides. Centralized services give one company control over important questions, such as what qualifies as acceptable speech, who gets blocked, and who can create an account in the first place. No one can stop you from creating an XMPP account, just like no one can cut you off from using email.

3. Flexibility and Choice - With most chat platforms, you're stuck using the official messaging app or website. Companies may or may not permit third-party clients, which may not be able to implement all the latest features. As a standard rather than a platform, XMPP lets you use any client you wish, just as you can use any email client. Whether your client has all the latest features depends on whether your client's developer has implemented them, not on whether they have permission.

4. Longevity - Chat platforms come and go. One moment people are primarily using AOL Instant Messenger; the next, they've moved on to Google Talk, Facebook Messenger, WhatsApp, or Discord. Often this migration is the result of a service shutting down, an app undergoing a radical redesign, or a company making a change in policy. Like email, XMPP has been around for a long time and is a trusted technology. If you can convince your contacts to make the move, you all can stick with it for as long as you wish.

How to use XMPP ๐Ÿค”

To use XMPP, you need to find a good and reliable XMPP server that you will have your account on. You can even start hosting your own server if you have some hardware lying around. Here is an list of some XMPP server providers.

After finding a server that will suit you, you need to create an account there. Input your email and create a password and hit submit. Some servers require email verification so be ready to check your email inbox.

So you got your account, now you need to install an XMPP client on your phone or on your computer. browse the list of XMPP clients and pick one or two that you will be using.

Now as the final step you need to just log into your account in the XMPP client that you have just installed and you are done! You can send me an message by clicking this link.

Dino - XMPP client