Kaidan – Auf dem Weg zur einfachen, sicheren und dezentralen Chat-App

Ein Gastbeitrag von Jonah Brüchert

Kaidan-Logo

Messenger-Dienste gibt es mittlerweile in unüberschaubarer Vielfalt. Meistens ist man damit aber an einen konkreten Anbieter oder vorgegebene Funktionen gebunden. Mit dem XMPP-Messenger „Kaidan“ hat sich eine Gruppe junger Entwickler aufgemacht, eine wirklich offene und datenschutzfreundliche Alternative aufzubauen. Im Folgenden stellen wir euch vor, was dieses Projekt so besonders macht.

Warum es etwas Neues brauchte

Was bei Post oder Telefon niemand akzeptieren würde, ist bei Messengern heute leider üblich: Man muss sich an einen konkreten Anbieter binden und erreicht darüber auch nur Kontakte, die beim selben Dienst ein Konto haben. Wie bei Telefon, Post und E-Mail wäre ein dezentraler Ansatz deutlich nutzerfreundlicher. Man wäre nicht auf einen Anbieter festgelegt, sondern hätte Wechselmöglichkeiten – ohne alle Kontakte zu verlieren.

WhatsApp ist nicht dezentral. Fast jede*r hat sich irgendwann mal WhatsApp installiert, um mit Freunden oder Verwandten in Kontakt zu bleiben. Auswahlmöglichkeiten hat man dabei keine. Man muss den Datenschutz von WhatsApp so hinnehmen wie er ist, denn einen anderen Anbieter wählen ist nicht möglich. So ist man am Ende den Entscheidungen vom Betreiber Facebook – bis hin zum unangekündigten Ausschluss – hilflos ausgeliefert.

Immerhin hat WhatsApp in den letzten Jahren eine Verschlüsselung eingeführt. Diese ist aber weitgehend nutzlos, solange WhatsApp Chatverläufe weiterhin in Google Drive speichert. Zudem liegen die Verkehrsdaten aller Nutzer*innen zentral an einer Stelle, in den Rechenzentren von Facebook. Mit dem Zugang zu diesem zentralen Ort kann man für alle Teilnehmenden einsehen, wer mit wem zu welcher Zeit wie lange kommuniziert hat.

Auch bei den WhatsApp-Alternativen sieht es nicht besonders gut aus. Selbst Signal, das häufig als das sicherere WhatsApp angesehen wird, löst nicht die strukturellen Probleme: Zwar ist der Programmcode von Signal wie auch der Kommunikationsstandard („Protokoll“) öffentlich einsehbar, aber auch Signal ermöglicht es nicht, für einen Verein oder eine Firma selbst einen eigenen Server zu betreiben. Auch wenn hinter Signal eine gemeinnützige Stiftung in den USA steckt, so bleibt man dennoch abhängig von einem einzelnen Anbieter und muss dessen Informationen vertrauen. Selbstständiges Weiterentwickeln fällt leider aus: Mit einer veränderten oder selbst entwickelten App darf man nicht mit anderen Signal-Nutzer*innen kommunizieren.

Im Bereich der internetbasierten Kommunikation existiert ein offener Standard, XMPP (früher: Jabber), der öffentlich verfügbar und nicht beschränkt ist. Die bisherigen XMPP-Messenger sind allerdings häufig nur auf einzelnen Betriebssystemen verfügbar und unterscheiden sich deutlich im Funktionsumfang. Neuere Sicherheitsmechanismen finden oft spät oder gar keinen Einzug in einzelne XMPP-Apps.

Aus diesen Gründen haben wir uns entschieden mit Kaidan eine wirklich offene und dezentrale Lösung zu schaffen, die für verschiedene Einsatzzwecke anpassbar, aber trotzdem einfach zu benutzen ist.

Wie Kaidan entstand

Die Idee kam Linus Jahn im Herbst 2016, nachdem er einen Vortrag über die App »Conversations« gehört hatte. Linus war begeistert von den Möglichkeiten, die das offene Protokoll XMPP bietet, das Conversations zur Kommunikation verwendet. Bei Conversations haperte es allerdings damals wie heute an der Unterstützung für verschiedene Systeme. Denn Conversations ist nur für Android verfügbar. Weitere existierende Programme boten einerseits oft nicht die Funktionalität, die von modernen Chat-Apps erwartet wird. Andererseits waren sie sehr technisch angelegt und daher kompliziert zu benutzen.

In einer ausgefallenen Schulstunde wurde dann das Design und die Funktionalität von Kaidan auf einem Blatt Papier geplant. Der damals spontan entstandene Plan wurde dann Stück für Stück in die Realität umgesetzt und immer wieder erweitert. Schon kurz nach der Ideenskizze begann die eigentliche Entwicklung, zusammen mit Mitstreiter*innen aus der XMPP-Community.

Knapp vier Jahre später ist Kaidan zwar noch nicht fertig (ein Wort, das im Zusammenhang mit Programmierprojekten ohnehin nur selten gebraucht wird), aber knapp 30.000 Zeilen Arbeit liegen hinter uns. Das Ergebnis ist eine funktionierende App mit einer sehr einfachen Registrierung und Kontaktverwaltung. Auch die Nutzung eines weiteren Geräts ist problemlos möglich. Zusätzlich zu Textnachrichten gibt es die Möglichkeit zum Teilen von Bildern, Sprachnachrichten und Standorten.

Trotzdem liegen noch einige wichtige Funktionen vor uns: Wir arbeiten als eines der ersten XMPP-Projekte an der Umsetzung einer neuen Art von Gruppenchats. Zudem haben wir mit der Umsetzung der Ende-zu-Ende-Verschlüsselung mit dem Namen „OMEMO“ in Kaidan begonnen. OMEMO wird bereits erfolgreich in Conversations eingesetzt. Die Integration neuer Funktionen wie dieser wird dadurch beschleunigt, dass wir immer wieder Mitwirkende dazu gewonnen haben. Vor allem durch den Besuch des regelmäßig stattfindenden XMPP-Meetups in Berlin konnten wir weitere XMPP-Interessierte für Kaidan gewinnen.

Inzwischen ist das Kaidan-Projekt Teil einer weltweiten Gemeinschaft von Open-Source-Entwickler*innen, der KDE-Community. Es hat jetzt seinen Platz neben Projekten wie dem in der digitalen Kunstszene beliebten Krita oder dem Plasma Desktop, der seinen Weg schon bis in die Verwaltung Münchens und in die Büros der NASA gefunden hat.

Wie Kaidan funktioniert

Unsere Vision für Kaidan ist, die technischen Möglichkeiten, die heute meist nur den Expert*innen zur Verfügung stehen, für jeden nutzbar zu machen: einfache, sichere Kommunikation, die nicht unter der Kontrolle einzelner großer Firmen steht. Dafür setzen wir auf Dezentralisierung. Das heißt, dass Nutzer*innen ihre Daten bei einem Anbieter ihrer Wahl speichern können. Am besten erklären lässt sich das am Beispiel von E-Mail: Einige Nutzer*innen haben ihr Konto bei GMX, andere bei Gmail oder Posteo. Gemeinsam haben alle diese Anbieter, dass sie auf die gleiche Weise miteinander kommunizieren. So ist es im Alltag völlig egal, bei welchem Anbieter man das E-Mail-Konto hat. Auch das Programm mit dem man die E-Mail-Nachrichten schreibt und empfängt kann jede Person selbst wählen. So nutzen manche beispielsweise Mozilla Thunderbird und andere wiederum Microsoft Outlook. Dasselbe gilt für XMPP-Anbieter und XMPP-Apps. Deswegen sehen die Chat-Adressen aus wie E-Mail-Adressen. Die Angabe einer Telefonnummer ist dafür nicht notwendig. Da mehrere Konten auf einem Gerät genutzt werden können, ist es möglich z. B. private und berufliche Kommunikation separat zu verwalten.

Jede*r kann sich den Anbieter aussuchen, der ihr / ihm gefällt (oder selbst ein solcher Anbieter werden). Um das Ganze aber nicht unnötig kompliziert zu machen, hat Kaidan eine Liste von vertrauenswürdigen Anbietern eingebaut. So können auch Nutzer*innen, die sich nicht mit der Auswahl eines Anbieters beschäftigen wollen, auf schnellstem Wege zum Chatten kommen.

Die verschiedenen Anbieter kommunizieren untereinander und bilden dadurch ein großes Netz. So entstehen keine separierten „Inseln” wie es z. B. bei WhatsApp oder Signal der Fall ist.

Wenn man nun auf eine besondere Funktion großen Wert legt, z. B. dass gesendete Bilder länger zwischengespeichert werden, kann ein Anbieter entsprechend nach den persönlichen Vorlieben ausgewählt werden. Natürlich können darunter auch bezahlte Anbieter mit besonders guten Eigenschaften sein. Dieses System ermöglicht es auch Organisationen, ihr eigener Anbieter zu werden, um die volle Kontrolle über die Chatverläufe, Kontaktlisten und Dateien zu behalten.

Um unser Ziel der Unterstützung verschiedener Geräte umzusetzen, entwickeln wir eine gemeinsame Codebasis für alle Endgeräte und Systeme. Das heißt, dass Kaidan auf Windows, macOS, Linux, Android und iOS im Kern immer dasselbe Programm ist. Auf diese Weise vermeiden wir die gleichen Funktionen doppelt oder gar dreifach in unterschiedlichen Programmiersprachen schreiben zu müssen. Dadurch gibt es auch neue Funktionen immer gleichzeitig für alle Geräte. Die Oberfläche von Kaidan passt sich automatisch an verschiedene Display-Größen an. So wird auf Smartphones z. B. nur entweder die Kontaktliste oder der Chatverlauf angezeigt. Auf Desktop-PCs und Laptops werden hingegen beide nebeneinander angezeigt, wie es Nutzer*innen von anderen Apps gewöhnt sind.

Desktop-Ansicht von Kaidan
Kaidan Kontakte Mobilansicht
Mobilansicht der Kontakte in Kaidan

Jede*r kann mitmachen

Kaidan verfügt derzeit noch nicht über alle Funktionalitäten, die von einer Chat-App erwartet werden. Wir sind aber auf einem guten Weg. Wir hoffen, weitere Menschen davon begeistern zu können, uns auf dem Weg zur sicheren und selbstbestimmten Kommunikation für alle zu begleiten. Aber keine Scheu: Nicht alle, die zu Kaidan beitragen, sind Programmierer*innen. Genauso wertvoll wie die Programmierung ist für das Projekt auch das Übersetzen in andere Sprachen. Ebenso ist das Zeichnen der vielen Grafiken, die die Nutzer*innen durch den Einstieg in Kaidan begleiten, wichtig. Nicht zu vergessen sind außerdem die Personen, die sich um die Pflege der Liste von Servern kümmern, bei denen man sich registrieren kann oder Anleitungen in unserem Wiki erstellen. Manche geben zudem per Chat anderen Hilfestellungen oder machen Werbung für Kaidan. Und schließlich spielen auch die Personen und Organisationen eine besondere Rolle, die Kaidan medial oder finanziell unterstützen. So hat beispielsweise der DBJR im Rahmen des Projekts jugend.beteiligen.jetzt die Entwicklung von Kaidan unterstützt.

Um unseren Zielen gerecht zu werden, ist der Quellcode von Kaidan von der Öffentlichkeit einsehbar und überprüfbar. Auf diese Weise braucht keine Person blind dem Team von Kaidan vertrauen. So können Nutzer*innen sichergehen, dass Kaidan ihre privaten Informationen nicht weitergibt. Damit das in Zukunft so bleibt, wird Kaidan unter der Bedingung veröffentlicht, dass zukünftige Änderungen am Code der Öffentlichkeit zur Verfügung gestellt werden müssen.

Mehr Informationen über Kaidan gibt es auf unserer Website.

Wir freuen uns immer über Beiträge. Die Entwicklung findet auf unserer Projektseite statt.

Jonah Brüchert ist einer der Entwickler von Kaidan und lebt in Berlin.

2 Gedanken zu „Kaidan – Auf dem Weg zur einfachen, sicheren und dezentralen Chat-App

  1. Hallo Gerhard,

    vielen Dank für deine Nachfrage. Wir freuen uns über dein Interesse an freier Kommunikation.

    Aktuell gibt es leider Probleme mit der Erstellung der Varianten für Windows und macOS. Es wird aber bereits daran gearbeitet. Sobald Kaidan wieder unter Windows genutzt werden kann, werden wir hier in den Kommentaren darüber berichten!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.