Ich interessiere mich allgemein sehr viel für Themen wie IT-Sicherheit, Datenschutz und Privatsphäre. Da ich lieber per Instant Messenger, anstatt per Mail o.ä. kommuniziere stellt die Sicherheit dieser Dienste für mich ein recht großes Thema dar. Nicht zuletzt, weil ich öfters mal in unverschlüsselten WLANs unterwegs bin (Hotspots, Wardriving) und auch weil eine gewisse, gesunde Paranoia meiner Meinung nach nicht schaden kann habe ich mich schon vor langer Zeit damit beschäftigt, wie man diese Kommunikation sinnvoll absichern kann, ohne dabei auf viel Komfort zu verzichten (ein hochkompliziertes System, was zwar sicher, aber unbenutzbar ist bringt niemandem etwas).
Ursprünglich war ich ausschließlich im jedermann bekannten Oscar-Netz (ICQ) von AOL aktiv. Den Standard-Clients habe ich einige Zeit, nachdem die Entwicklung von ICQ Pro eingestellt wurde den Rücken gekehrt. Nach einem kurzen Intermezzo mit Trillian bin ich viele Jahre Miranda treu geblieben, was ich auch heute noch für einen sehr guten Klienten halte, insbesondere wegen des modularen Aufbaus. Dennoch nutze ich inzwischen nahezu ausschließlich GAIM resp. Pidgin. Das ist ein sehr guter Client. Der Grund zum Wechsel von Miranda war, dass ich ihn plattformübergreifend nutzen kann (also auch unter Ubuntu).
Mit der Nutzung eines alternativen Clients ist schon mal ein wichtiger Schritt getan. Während die Software der Netzbetreiber mit Adware vollgepumpt wurde und natürlich nur zum Netz des jeweiligen Herstellers kompatibel ist, bieten die alternativen Clients hier neben Werbefreiheit auch eine gewisse Flexibilität. Da es sich oft um OpenSource handelt, hat man sogar eine gewisse Sicherheit, dass zumindest im Client höchstwahrscheinlich keine Hintertürchen eingebaut sind.
Ich weiß nicht, ob es so ist, aber ich traue Unternehmen wie AOL nicht so sehr. Ich habe keine Ahnung, ob sie die Nachrichtenverläufe speichern, oder nicht. AOL hat hier vor fast genau zwei Jahren schon einen Vogel abgeschossen. Daher sorge ich lieber soweit wie möglich vor.
Es wäre natürlich grundsätzlich eine gute Sache freie Protokolle einzusetzen. Die einzige ernstzunehmende Alternative sehe ich in Jabber. Das Protokoll halte ich für sehr ausgereift. Außerdem ist es standardisiert. Es ist egal, welchen Server man nutzt, da man auch mit Nutzern anderer Jabber-Server kommunizieren kann.
Das einzige Problem: Es benutzen hauptsächlich Leute, die Ahnung von der Materie haben. Das kann ich von ca. 60% meiner momentanen Kontaktliste nicht sagen und von den restlichen 40 haben zwar einige Jabber zumindest mal ausprobiert. Ein paar haben es auch einige Zeit genutzt, dann aber aufgrund der Tatsache, dass die Kontakte, die sie im Jabber-Roster haben auch ICQ o.ä. nutzen das Protokoll doch wieder rausgeworfen. Aktuell habe ich 6 Jabber-Kontakte, von denen 4 regelmäßig online sind. Mit denen habe ich allerdings kaum Kontakt.
Ich will aber dennoch nicht aufgeben! Ich lege es jedem ans Herz: Nutzt Jabber. Je mehr es tun, umso besser! Wer einen Multi-Messenger einsetzt, braucht nicht einmal ein zusätzliches Programm laufen zu lassen!
Informationen über Jabber findest du u.a. in dieser zwar nicht mehr ganz aktuellen, aber ausführlichen und hiflreichen Jabber-FAQ.
Aber auch für Jabber gilt: Der Serverbetreiber hat grundsätzlich Zugriff auf den kompletten Nachrichtenverkehr! Es besteht die Möglichkeit, eine SSL-Verbindung zu nutzen. Dabei wird die Verbindung zum Server verschlüsselt, nicht bis zum Empfänger. Die Nachrichten werden auf dem Server entschlüsselt und im Klartext weitergeleitet, oder neu per SSL verschlüsselt und dann weitergeleitet.
Wer wirklich sicher gehen möchte, dass seine Nachrichten nicht von anderen gelesen werden hat zwei Möglichkeiten:
- Einen eigenen Jabber-Server aufsetzen
Grundsätzlich kein Problem und wahrscheinlich auch keine große Sache, wenn man ein paar Vorkenntnisse hat. Problem: Die anderen Kontakte müssten auch den Server nutzen oder ebenfalls einen eigenen aufsetzen. - Den kompletten Nachrichtenverkehr Ende-zu-Ende verschlüsseln. Das ist wesentlich einfacher und sehr sicher. Nur der Absender und der Empfänger können die Nachricht im Klartext lesen.
Ich werde hier auf die zweite Möglichkeit eingehen, nämlich eine Ende-zu-Ende-Verschlüsselung. Es gibt hier viele Möglichkeiten. GnuPG z.B. nutzen einige zur Verschlüsselung von E-Mails. Es lässt sich aber genauso gut zur Verschlüsselung von Instant Messages einsetzen. Allerdings habe ich die Erfahrung gemacht, dass es hier leider oft zu Inkompatiblitäten kommt. So funktioniert das ganze bei Miranda nur, wenn beide diesen Client einsetzen. Das ist schade und so meist nicht praktikabel. Es gibt noch eine Reihe weiterer Verfahren. Ebenfalls für Miranda gibt es ein Plugin namens SecureIM. Trillian bietet auch eine Verschlüsselung an. Diese Verfahren funktionieren meines Wissens nach aber wiederum nur, wenn beide User den selben Client nutzen.
Meine Empfehlung lautet: OTR. Dieses Verfahren ist relativ neu, aber sehr gut! Es wird von einigen Clients unterstützt. Teils nativ, meist aber per Plugin.
OTR bietet einige Features. So gibt es 4 Ziele, die dieses Projekt verfolgt:
- Verschlüsselung
- Authentizität
Man kann sicher sein, von wem die Nachricht stammt und das sie nicht verändert/ausgetauscht wurde - Abstreitbarkeit
- Folgenlosigkeit
Wenn der private Schlüssel publik wird, ist es nicht möglich, bisher stattgefundene Gespräche damit zu entschlüsseln
Nähere Informationen zu dem Verfahren findest du im Wikipedia-Artikel.
OTR wird wie bereits erwähnt von einer Vielzahl an Clients unterstützt, die auf verschiedensten Betriebssystemen lauffähig sind. Zusätzlich gibt es (zumindest unter Windows) die Möglichkeit einen Proxy lokal zu installieren. Dann kann OTR z.B. auch mit den Clients der Hersteller genutzt werden, worauf manche ja offensichtlich nicht verzichten können. Als es noch kein Miranda-Plugin gab, habe ich diese Methode genutzt. Damals war es recht aufwändig und kompliziert. Inwieweit sich das inzwischen geändert hat, kann ich leider nicht sagen.
Nachfolgend findest du eine Übersicht mir bekannter verfügbarer OTR-Implementierungen:
- Pidgin
http://www.cypherpunks.ca/otr/#downloads - Miranda IM
http://addons.miranda-im.org/details.php?action=viewfile&id=2644 - Psi
http://public.tfh-berlin.de/~s717689/ - Adium (Mac)
unterstützt OTR nativ - Kopete
http://www.kde-apps.org/content/show.php/Kopete+OTR+Plugin?content=55002 - Trillian
http://trillianotr.kittyfox.net/
Unter Pidgin funktioniert das
ganze relativ einfach. Man installiert das Plugin (die DLL in den Plugin-Ordner des Installationspfades kopieren) und aktiviert es unter Werkzeuge –> Plugins. Dort lässt es sich auch direkt konfigurieren. Man wählt den Account aus, für den man einen Fingerprint und das Schlüsselpaar anlegen möchte und klickt auf Generate. Dann noch einen Haken bei „Enable private messaging“ und für die automatische Initialisierung. Dann braucht man eine OTR-Sitzung nicht immer manuell starten. Den dritten Haken würde ich nicht setzen, es sei denn alle Kontakte haben OTR, was sicher selten sein dürfte ;o). Der letzte Punkt „Don’t log OTR conversations“ ist Geschmacksache. Jeder muss für sich selbst entscheiden, ob er verschlüsselt übertragene Gespräche trotzdem speichern möchte.
Ich habe gerne eine weitgehend vollständige History, daher musste für mich eine andere Lösung her. Ich verwende Pidgin in der Portable-Version. Der Programmordner -indem auch die Nachrichtenverläufe gespeichert werden- befindet sich wiederum in einem TrueCrypt-Container, ist also ebenfalls verschlüsselt. Selbiges habe ich übrigens auch mit meinem Firefox- und Thunderbird-Profil getan, das ist aber ein anderes Thema.
Wenn man sich jetzt das Nachrichtenfenster anschaut, wird man feststellen, dass da ein großer Button hinzugekommen ist. Auf dem steht entweder: „OTR: Not private“, was soviel bedeutet wie unverschlüsselt, „OTR: Unverified“ (das bedeutet, die Nachrichten werden verschlüsselt, man hat aber den Fingerprint nicht überprüft. Bei einigen Kontakten habe ich das telefonisch gemacht. Man liest sich einfach gegenseitig den Fingerprint vor. Das muss man aber nicht bei jedem x-beliebigen Kontakt machen, den man nicht mal kennt. Hier sollte man die Verhältnismäßigkeit wahren. Es kommt halt immer darauf an, über was man sprechen will. Hat man den Fingerprint verifiziert, kann man das mit einem Rechtsklick auf den OTR-Button und dann auf „Authenticate Buddy“ Pidgin mitteilen. Im Button steht dann „OTR: Private“.
Im Prinzip ist das Verfahren relativ selbsterklärend. Wenn Bedarf besteht, kann ich für Miranda gerne noch eine Anleitung nachliefern und ggf. auch für den ein oder anderen Linux-Client. Sprecht mich einfach darauf an.
Und jetzt verschlüsselt eure Nachrichten und überzeugt eure Gesprächspartner davon. Eure Privatsphäre ist wichtig!