01 January 2019 DebXWoody

Ein Instant Messaging Protokoll.

Motivation

Es gibt viele verschiedene Instant Messaging Anwendungen die auf dem Desktop oder auf dem Mobiltelefon zum Chat verwendet werden können. Besonders im Bereich von Smartphones ersetzen Instant Messaging Programme schon lange die SMS und die E-Mail.

Ein großes Problem bei einigen Anwendungen ist jedoch, dass sie ggf. Daten an Unternehmen verschicken, welches A) nicht nötig ist und B) einen großen Aspekt der Privatsphäre ausmacht. Durch die Übermittlung von Daten aus dem Adressbuch des Handy, werden persönliche Daten übertragen.

Ein weitere Nachteil bei proprietärer Software ist, dass nicht bekannt ist was die Anwendung genau macht. Beispielsweise welche Daten wann und wo hin übertragen werden.

XMPP / Jabber

Ein Protokoll welches für die Instant Messaging verwendet werden kann, ist das XMPP Protokoll, welches früher als Jabber bezeichnet wurde. XMPP ermögliche es Personen unter anderem Nachrichten von einem Desktop oder Smartphone auszutauschen.

Was sind die Vorteile von XMPP?

  • XMPP braucht keine Daten Ihres Adressbuches

  • Die Übertragung von Nachrichten kann verschlüsselt erfolgen

  • Es existieren Open Source Client Anwendungen

  • Es existieren Open Source Server Anwendungen

  • Das Protokoll ist ein offener Standard

Was bedeuten diese Vorteile für den Anwender?

Um XMPP zu benutzen, benötigt man einen Account. Es ist vergleichbar wie mit einer E-Mail-Adresse. Es ist zwar bei dem ersten einrichten von XMPP 2 Minuten mehr Aufwand, hat jedoch wesentliche Vorteile. Sie müssen für die Verwendung von XMPP weder ihr Adressbuch freigeben noch müssen sie ihre persönlichen Daten wie Handynummer oder E-Mail-Adresse preisgeben. Dies ist bei anderen Anwendungen beispielsweise nicht der Fall. Einige Messaging Programme senden ihre und die Telefonnummer ihres Adressbuchs Server und ohne die Freigabe ihres Adressbuchs ist das nutzen der Anwendung nicht möglich.

Die Kommunikation kann verschlüsselt werden.

Es existieren verschiedene Client Anwendungen. Sie können einen Account sowohl auf dem Handy als auch auf dem Desktop nutzen. Sie sind somit nicht gezwungen nur das Handy oder nur den PC zu verwenden.

Bei XMPP handelt es sich um einen offen Standard. Programmierer haben somit Zugriff auf die Informationen wie das Protokoll funktioniert und sind so in der Lage eigene Client oder Server Anwendungen zu programmieren.

Account

Für die Verwendung von XMPP benötigt man einen XMPP Account. Dieser sieht in der Regel wie eine E-Mail-Adresse aus. Einige nutzen die Form deinNickName@jabber.domain.tld. Ein Account muss nicht zwingend mit der subdomain jabber genutzt werden. Einige haben beispielsweise den Jabber Account 1-zu-1 wie ihre E-Mail-Adresse.

Einige Informationen zu Accounts und Clients findet man auf der Homepage von XMPP: https://xmpp.org/getting-started/.

Einige E-Mail Provider bieten auch einen XMPP Account mit der E-Mail-Adresse an. Leider haben auch viele XMPP wieder abgeschaltet. Dies ist jedoch kein Grund es nicht dennoch zu nutzen. Es gibt viele die noch einen XMPP Account anbieten.

Es gibt verschiedene Server die einen XMPP Account anbieten.

Clients

Es ist sinnvoll einen Client zu verwenden mit OMEMO Multi-End Message and Object Encryption. So ist sichergestellt, dass man für seine Nachrichten auch Verschlüsselt senden und empfangen kann.

Conversations ist ein sehr guter Client für das Betriebssystem Android. Die Anwendung bietet alle wichtigen Funktionen um XMPP als Instant Messenger zu verwenden. Den Messenger gibt es auf F-Droid und im Google Play Store. Eine Anleitung findet man zum Download hier: https://www.kuketz-blog.de/messenger-conversations-anleitung-fuer-anfaenger/

ChatSecure ist ein XMPP Client für iOS.

XMMP für Admins

Ein XMPP Server ist Prosody. Der Server ist einfach zu konfigurieren. Eine kleine Beschreibung für Debian ist auf https://wiki.debian.org/de/Prosody.