Die folgenden Abschnitte erklären einige grundsätzliche Begriffe der Kommunikation mit Messengern und verlinken teilweise zu weiterführenden Informationen, meist bei Wikipedia. Manches davon gilt auch für elektronische Kommunikation allgemein.
Metadaten
Die Metadaten der Messenger-Kommunikation (u.a. wer hat wann mit wem gechattet, wie viele Daten wurden dabei übertragen) liegen i.d.R. auf den Servern der Chat-Betreiber vor. Sie sind nicht nur ein wertvolles Gut für kommerzielle Betreiber und Werbenetzwerke zur Analyse von Gewohnheiten der Benutzer und zum zielgenauen Schalten von Werbung. Auch Behörden können im Rahmen von Ermittlungen darauf zugreifen (was in demokratischen Staaten wie Deutschland sicher ein viel kleineres Problem darstellt als in totalitären Staaten, wo oppositionelle Meinungen schnell zu Verfolgung führen).
Je nach Serverstandort kommen dabei unterschiedliche Regelungen zum Datenschutz zum Tragen (Deutschland, Schweiz, EU, USA, …) – verkürzt lässt sich sagen, dass die Vorschriften in Europa weltweit zu den strengsten und trotz aller Mängel immer noch zu den verbraucher- und bürgerfreundlichsten gehören.
Neben den Beziehungen zwischen den Nutzern (wer kennt wen – wie gut?) lassen sich über Standortinformationen und Uhrzeiten auch Rückschlüsse auf Gewohnheiten und Wohn- oder Arbeitsort der Benutzer ziehen. Je mehr Firmen und Dienste ihre Daten gemeinsam auswerten und zusammenführen, desto detailliertere Nutzerprofile lassen sich auch ohne Kenntnis der Inhalte der Kommunikation nur aus den Metadaten erstellen. Datensparsamkeit ist aus Sicht der Benutzer positiv zu bewerten – dann werden nur so viele Daten gespeichert wie unbedingt nötig – und auch diese nicht länger als nötig. Daten, die gar nicht erst erfasst werden, können auch nicht ausgewertet oder missbraucht werden.
Verschlüsselung
Die Inhalte der Kommunikation (also Texte, Bilder usw.) sind inzwischen bei allen Messsengern verschlüsselt, können also von Außenstehenden nicht mitgelesen werden. Unterschieden wird zwischen Ende-zu-Ende-Verschlüsselung und Client-Server-Verschlüsselung. Bei ersterer sind die Daten nur für die Kommunikationspartner lesbar, weder während der Datenübertragung noch bei der Zwischenspeicherung auf den Servern der Betreiber können sie ausgelesen werden, weil nur die Gesprächspartner die passenden Schlüssel besitzen.
Bei der Client-Server-Verschlüsselung handelt es sich um eine Transport-Verschlüsselung: die Daten werden zwar verschlüsselt von der App zum Server und vom Server zur App des Empfängers übertragen, d.h. ein Mitlesen der Kommunikation durch Mitschneiden der Daten während der Übertragung wird unterbunden. Aber beim Serverbetreiber liegen die Daten zumindest kurzfristig im Klartext vor, d.h. dieser kann sie lesen und für eigene Zwecke nutzen oder an Dritte weitergeben.
Wichtig ist, dass für die Verschlüsselung offengelegte, allgemein anerkannte Standards und Verfahren genutzt werden, die von Experten auf ihre Zuverlässigkeit und Sicherheit geprüft wurden. Bei Eigenentwicklungen einzelner Hersteller (sog. proprietären Protokollen) ist diese Überprüfung nicht oder nur mit hohem Aufwand möglich.
Open Source
Ähnlich sieht es bei den Apps und anderer beteiligter Software auf den Servern aus: offengelegte Quelltexte der Programme (open source) haben u.a. den Vorteil, dass eine Überprüfung durch Experten leichter möglich ist – das hilft beim Finden von Softwarefehlern und Sicherheitslücken und verhindert i.d.R. absichtlich eingebaute Hintertüren. Das Gegenteil ist closed source (auch proprietäre Software genannt) – hier muss man dem Hersteller vertrauen, dass die Software sicher funktioniert. Man sollte aber bedenken, dass nur die Möglichkeit der Einsicht in den Quelltext keine Garantie dafür ist, dass es auch jemand mit den nötigen Kenntnissen tut und dass alle Fehler schnell gefunden werden. So hat z.B. in der OpenSSL-Software, die in vielen populären Programmen genutzt wird, länger als zwei Jahre die Heartbleed-Lücke gesteckt.
Ein weiterer Vorteil von Open Source Software und offenen Standards ist, dass man sich nicht unbedingt an einen Hersteller binden muss. Zumindest theoretisch gibt es immer die Möglichkeit, dass jemand anderes die Entwicklung weiterführt, wenn ein Anbieter pleite geht oder aus anderem Grund die Software nicht weiter aktualisiert.
Web- und Desktop-Clients
Ergänzend zu den Smartphone-Apps bieten die App-Hersteller meist passende Web-Clients (Anwendungen, die im Internet-Browser laufen) oder Desktop-Clients (eigenständige Programme, die man auf seinem PC installiert) an. Damit kann man bequem die PC-Tastatur als Eingabemedium nutzen oder nur auf dem eigenen Rechner gespeicherte Dateien verschicken.
Normalerweise muss hierbei die App auf dem Smartphone aktiv sein, weil darüber die eigentliche Kommunikation mit dem Chat-Partner läuft – die Anwendung auf dem PC kommuniziert im WLAN verschlüsselt mit der Smartphone-App und diese dann mit der Gegenstelle, d.h. der Client ist quasi eine Verlängerung der App.
Anonymität
Meistens ist zur Nutzung eines Dienstes bei der Einrichtung eines Benutzerkontos die Angabe einer Mobilfunknummer nötig, über die der Benutzer dann auch identifiziert werden kann. Ausnahme sind XMPP-Clients (keine Telefonnummer nötig), Threema (es wird eine Benutzer-ID vergeben, die mit einer Telefonnummer oder Mail-Adresse verknüpft werden kann – aber nicht muss) und Wire (eine Mail-Adresse genügt zur Registrierung) – sinnvoll für Menschen, die Wert auf ihre Anonymität legen oder ohne Smartphone einen Messenger nutzen wollen, z.B. auf einem Tablet ohne SIM-Karte.
Diese Anonymität kann schon deshalb sinnvoll sein, weil man dann nicht gleich jedem Menschen seine Telefonnummer geben muss, nur um Nachrichten auszutauschen (Stichwort Stalking). Will man später mit einem Gesprächspartner nichts mehr zu tun haben, kann man ihn im Messenger einfach blocken. Hat dieser aber die eigene Telefonnummer, wird das schwieriger, da er auf Anrufe oder SMS ausweichen kann.
Datenschutz der Adressbücher
Damit man nach der Installation einer App sehen kann, welche der eigenen Bekannten sie ebenfalls nutzen, werden die Telefonnummern der Kontakte im eigenen Adressbuch mit den Nummern der App-Nutzer beim Betreiber verglichen. Hierzu kann eine App direkt die Nummern im Klartext übermitteln – das ist die schlechteste Methode, denn eigentlich geht es niemanden etwas an, wer in meinem Adressbuch steht.
Besser zum Schutz der Privatsphäre ist es, wenn der Betreiber des Servers die Nummern aus den Adressbüchern nicht erfährt. Hierzu werden durch ein mathematisches Verfahren (eine sog. kryptografische Hash-Funktion) aus den Telefonnummern Zahlenwerte errechnet, die zwar auch eindeutig sind, aber keinen Rückschluss auf die ursprünglichen Daten ermöglichen. [1. Bei Telefonnummern ist es mit einem gewissen Aufwand grundsätzlich möglich, den Hash-Wert auf die ursprüngliche Nummer zurückzurechnen. Grund ist die überschaubare Länge einer Telefonnummer – je länger die Daten, desto schwerer (bzw. unmöglich) ist das Zurückrechnen. Bei Telefonnummern ist es zwar nicht trivial, aber mit leistungsfähiger Hardware in relativ kurzer Zeit (je nach Verfahren Minuten bis Tage) durchaus möglich. Mehr dazu im Security-Blog von Mike Kuketz: Telefonnummer als Identifier: Zu kurz gedacht.] Zusätzlich ist es möglich, bei der Berechnung die letzten Ziffern der Telefonnummern wegzulassen. Dann werden mehr Ergebnisse gefunden und erst auf dem Smartphone die richtigen Treffer ausgesiebt und übernommen. Es gibt jedenfalls verschiedene Möglichkeiten, um sicherzustellen, dass die Telefonnummer der Kontakte nicht das eigene Smartphone verlassen.
Alternativ kann der Abgleich der Kontakte auch komplett unterbleiben – dann muss man die gewünschten Kommunikationspartner selbst aus seinem Adressbuch in die App übernehmen, hat also etwas weniger Komfort zugunsten von mehr Datenschutz.
Föderation vs. Zentralismus
Die meisten Messenger setzen auf einen zentralistischen Ansatz. Der Anbieter kontrolliert hierbei die Server-Infrastruktur, die den Dienst abwickelt. Es ist nicht möglich, den Dienst mit einem anderen Anbieter oder einem eigenen Server zu nutzen, d.h. Nutzer eines Messengers können nicht mit den Nutzern eines anderen Dienstes kommunizieren. Oft – aber nicht immer – verwenden zentralistische Systeme proprietäre Protokolle und Closed-Source-Software.
Föderative Systeme verwenden offene Protokolle und erlauben es, dass die Server verschiedener Anbieter miteinander kommunizieren können – das bekannteste Beispiel hierfür ist E-Mail bzw. das dafür verwendete SMTP-Protokoll (Simple Mail Transfer Protocol). Jeder Nutzer kann sich frei für einen Anbieter (Provider) entscheiden oder sogar seinen eigenen Server aufsetzen und mit den anderen Servern im Netz Nachrichten austauschen. Die wichtigsten Protokolle für föderierte Systeme im Messenger- bzw. Chat-Bereich sind XMPP und Matrix. Die meisten Messenger arbeiten aber zentralistisch, z.B. WhatsApp, Signal, Threema oder Telegram. Obwohl z.B. auch WhatsApp das Signal-Protokoll nutzt, ist keine Kommunikation zwischen beiden Systemen möglich.
Weiteres
Eine leicht verständliche Erklärung von grundsätzlichen Begriffen wie Vertraulichkeit, Authentizität, Integrität und Abstreitbarkeit, tlw. am Beispiel von Threema, liefert der Artikel „Wie sieht ein Vier-Augen-Gespräch als Quellcode aus?“ der ZEIT als Zusammenfassung eines Vortrags auf dem 33C3 (33. Kongress des Chaos Computer Clubs, 2016).
Perfect Forward Secrecy (PFS) bezeichnet ein Verfahren, um die nachträgliche Entschlüsselung einer Internet-Kommunikation (insbes. durch Nachrichtendienste) unmöglich zu machen. Es wird in „Zukunftssicher Verschlüsseln mit Perfect Forward Secrecy“ bei Heise Online erklärt.