(Voor Nederlands: zie onder)

(If you don't want to read, just get started, jump to 'Creating an account')

Introduction

I love chat / messaging apps. I have tried and used many different ones.
I started out with IRC back when I was at university (first half of the 90's), when everything was text-based. Then GUI (graphical) messagers appeared, like: ICQ, MSN.. then came mobile, with first SMS, and later WhatsApp. I started using that, but soon switched to Telegram, because it works better for me.
Many other apps have arrived since, and I tested many of them. Now, people are starting to get nervous because of the nasty things WhatsApp (and others??) does with your data. People are switching to Telegram or Signal. WHY???
I don't really understand. True, they are better than WhatsApp, and they are not (yet) owned by Facebook. But why change 1 centralized app for another? If you don't want big companies to use your data, make sure your data doesn't reside with a big company..

Matrix

In comes Matrix.
What is Matrix? It's a protocol for messaging, de-centralized. Everyone can run their own server, and the servers can communicate with each-other. You can chat 1 on 1, or create rooms for multiple people. The data of your chats only reside on your server, and the server of the person(s) you're chatting with.

Note: If you're in a room/chat with people on large servers (like matrix.org), the data of that room/chat will also be stored on that large server.

Synapse

So, then what is Synapse? Synapse is one example of server software implementing the Matrix protocol. You can use this to install your own Matrix server.
There are more, but Synapse is most-used.

Element

Okay, but then what is Element?
Element is one of many clients/apps for use with the Matrix protocol. (For a list of clients, see here).
It's the most-used client, and available for iOS/Android/MacOS/Windows/Linux/Web.

Okay, so where do I start

Die-hard option: host your own

If you're a computer-nerd like me, and comfortable running your own server, that would be the best option. You have control of your own data. You can choose your own domain name.
There are many options for running Matrix, I myself use Docker. I'm sure you'll get it sorted, you're a computer-nerd.. (try Google)

Second-best: pick an existing homeserver

If you're a normal person, you probably don't want to host servers yourself. Second-best option is to pick a homeserver, preferably from someone you know or a company you know, and create an account there. (See below how). You can use mine if you like: https://h-y-p-e-r.space

Note: Don't follow that link, it will take you to my Friendica server, which is something different. Use the Element app to register an account, see below.

If you really don't know of a suitable homeserver, you can always use matrix.org, but be aware that that's a pretty big homeserver already. Kind of defeating the purpose of de-centralised software, if you ask me.

Creating an account

Here's how to create an account, as an example I use my homeserver:

  1. Install the Element app (or use the web-based app, for example here) (I am using the iOS app as example. Other apps might differ)
  2. Open the app, and click Register / Create account or something similar.
    IMG_1379
  3. Now click the button or link to edit the Server Settings. Enter 'https://h-y-p-e-r.space' as servername.
    IMG_1380
  4. Also enter a username and password. Click Register.
    IMG_1381
  5. Entering an e-mail address is optional (but good, for when you lose your password).
    IMG_1382
  6. Now you've created the account, and you are in the home of the app.
    IMG_1383

To start a chat, go to the 'Persons' tab/icon and search for an account (mine is @ruud:h-y-p-e-r.space). Or go to the rooms tab/icon (#) and enter a room (my server has a public room called H-Y-P-E-R Space).

Important!! : Always backup your keys! All messages in encrypted Matrix chats, are encrypted using a key on your device. Please make sure to backup your key (in Settings > Security) and use a Recovery Key. When you want to re-install the app, or use it elsewhere, you need this to recover the keys.

Note: Only username/password is not enough. You'll need the keys to recover previous encrypted messages.

Other stuff

I will add other stuff later, maybe in a new blog post. Things like keys, rooms, sessions etc.

Nederlands

(Als je dit niet wilt lezen, maar meteen wilt beginnen, ga dan naar 'Een account maken')

Introductie

Ik hou van chat / messaging apps. Ik heb veel verschillende geprobeerd en gebruikt
Ik begon met IRC toen ik op de universiteit zat (eerste helft van de 90's), toen alles nog op tekst gebaseerd was. Toen kwamen GUI (grafische) messagers, zoals: ICQ, MSN.. Toen kwam mobiel, eerst met SMS, en later WhatsApp. Ik begon dat te gebruiken, maar switchte al snel naar Telegram, omdat dat voor mij beter werkt.
Daarna zijn er nog veel apps gekomen, en ik heb er veel geprobeerd.
Nu worden mensen nerveus door wat WhatsApp (en anderen?) doet met je gegevens. Mensen stappen over naar Telegram of Signal. WAAROM???
Ik snap dat niet.. OK, ze zijn beter dan WhatsApp, en (nog) niet van Facebook. Maar waarom de ene gecentraliseerde app verruilen voor een andere? Als je niet wilt dat grote bedrijven je gegevens misbruiken, zorg dan dat je gegevens niet bij grote bedrijven komt..

Matrix

Daar is Matrix.
Wat is Matrix? Het is een protocol voor messaging, gedecentraliseerd. Iedereen kan zijn eigen server draaien, en de servers kunnen met elkaar communiceren. Je kunt 1 op 1 chatten, of rooms gebruiken met meerdere mensen.
De gegevens van je chats zijn opgeslagen op je eigen server, en de server(s) van de personen waarmee je chat.

Let op: Als je in een room/char zit met mensen op grote servers (zoals matrix.org), worden de gegevens in die room/chat ook op die grote servers opgeslagen.

Synapse

OK, wat is dan Synapse? Synapse is een voorbeeld van server software die het Matrix protocol implementeert. Je kunt deze gebruiken om je eigen Matrix server te installeren.
Er zijn er meer, maar Synapse is het meest gebruikt.

Element

A-ha, maar wat is dan Element?
Element is één van de vele clients/apps die je kunt gebruiken met het Matrix protocol. (Voor een lijst met clients, zie hier).
Het is de meest gebruikte client, en beschikbaar voor iOS/Android/MacOS/Windows/Linux/Web.

Ok, waar begin ik?

Die-hard optie: draai je eigen server

Als je een computer-nerd bent zoals ik, en gewend bent om zelf servers te draaien, is dit de beste optie. Je beheert je eigen gegevens, en kunt je eigen domein gebruiken.
Er zijn veel mogelijkheden om Matrix te installeren, ik gebruik zelf Docker. Ik weet zeker dat je er uit komt, je bent immers een computer-nerd.. (probeer Google)

Tweede beste: Kies een bestaande homeserver

Als je een normaal persoon bent, wil je waarschijnlijk niet zelf een server draaien. Volgende beste optie is om een bestaande homeserver te kiezen, liefst van iemand of een bedrijf welke je kent, en daar een account aanmaken (zie onder). Je kunt de mijne gebruiken als je wilt: : https://h-y-p-e-r.space

Let op: Die link niet gebruiken, dan kom je op mijn Friendica server. Dat is heel wat anders. Gebruik de Element app om een account te maken, zie onder.

Als je echt geen geschikte homeserver kunt vinden, kun je altijd nog matrix.org gebruiken. Let wel, dit is al een behoorlijk grote homeserver. Dat gaat een beetje voorbij aan het gedecentraliseerde, als je het mij vraagt.

Een account aanmaken

Hier staat hoe je een account kunt aanmaken. Ik gebruik als voorbeeld mijn homeserver.

  1. Installeer de Element app (of gebruik de web-based app, bijvoorbeeld hier) (Ik gebruik de iOS app als voorbeeld. Andere apps kunnen er anders uitzien)
  2. Open de app, en klik Registreer.
    IMG_1379
  3. Klik nu op de button of link om de server instellingen aan te passen, en voer 'https://h-y-p-e-r.space' in als servernaam.
    IMG_1380
  4. Kies ook een gebruikersnaam en wachtwoord. Klik registreren.
    IMG_1381
  5. Een e-mail adres is optioneel, maar wel handig voor als je je wachtwoord vergeet. (Gebruik toch een password-manager!).
    IMG_1382
  6. Nu heb je een account en ben je in de home van de app.
    IMG_1383

Om een chat te beginnen, ga je naar Personen en zoek je een account (De mijne is @ruud:h-y-p-e-r.space). Of ga naar Ruimtes (#) en ga een ruimte binnen (mijn server heeft een public room genaamd H-Y-P-E-R Space).

Belangrijk!! : Maak altijd een backup van je keys! Alle berichten in een encrypted Matrix chat zijn versleuteld met een key op je toestel. Backup altijd eerst je keys (in Instellingen > Beveiliging) en gebruik een herstelsleutel. Als je de app herinstalleert, of op een ander toestel wilt gebruiken, heb je dit nodig om de keys te herstellen om eerder encrypte berichten te kunnen lezen.

En verder...

Ik zal later nog andere dingen beschrijven, misschien in een nieuwe blog post. Dingen als keys, rooms, sessions etc.