ICQ- Verschlüsselung mit OTR
Inhalt
- Was ist eigentlich OTR?
- Die Grundprinzipien
- Warum verschlüsseln?
- Miranda
- Pidgin
- Kopete
- Downloads
- Changelog
Was ist eigentlich OTR?
OTR heisst “Off the record”. Stellt euch ein Gespräch in einem abgeschlossenen Raum vor. Ihr unterhaltet euch mit jemandem, niemand kann mithören, und auch später kann selbst euer Gesprächspartner behaupten, ihr hättet so und so gesagt - ihr könnt trotzdem sagen, nein, ihr habt was anderes gesagt. Aussage gegen Aussage, das Gespräch bleibt juristisch und sonstwie völlig unverwertbar. Das heisst “Off The Record”, und das kann man auch im ICQ haben.
Die Grundprinzipien dabei sind:
Verschlüsselung - das Gespräch kann nur von den beiden Teilnehmern gelesen werden
Beglaubigung - man weiß sicher, dass man mit dem spricht, mit dem man auch sprechen wollte.
Abstreitbarkeit - hinterher kann niemand, auch nicht der Gesprächspartner, sicher nachweisen, was tatsächlich geredet wurde
Folgenlosigkeit - auch wenn man seinen Key verliert, der eigene Rechner beschlagnahmt wird usw., ändert sich an den ersten drei Prinzipien nichts.
Dabei ist zu beachten, dass bei aktiviertem Logging Messengergespräche auch bei Einsatz von OTR lokal auf der Platte abgelegt werden und ohne beispielsweise gecryptete Platte/Partition/Container die Logs beispielsweise bei Beschlagnahme durchaus einzusehen sind. (Abhilfe) (Anleitung)
Aber wenn ICQ beispielsweise angibt, ICQ-Gespräche gegebenenfalls mitzuschneiden und bei Anforderung herauszugeben, kann man diese Einschränkung der Privatsphäre via OTR einfach abstellen. ICQ geht es einen Dreck an, was ihr redet - also müssen sie es auch nicht lesen oder loggen.
OTR gibt es als leicht zu installierendes Plugin für Miranda, Pidgin, Trillian, Adium und Kopete (seit KDE 4.1 integriert). Wer auf die Werbeschleudern AIM/ICQ selbst nicht verzichten will (wenngleich Multiclients wie Miranda bei weitem leistungsfähiger und dazu werbefrei sind), kann auch per lokalem Proxy OTR nutzen.
Besser natürlich die Einbindung in die Multiclients, dann hat man zum einen alle Messengerprotokolle zur Verfügung und braucht sich nicht mit Werbung rumzuärgern.
(Experimenteller Selbstversuch: mit PSI geht nicht. Sollte es lt. readme auch nicht, aber ich muss da immer selbst erstmal gegen die Wand rennen. :o))
Warum Messenger verschlüsseln?
Verschlüsselung ist gut. Was ihr einer bestimmten Person mitteilt, braucht niemand anderes zu wissen. Deswegen verwendet ihr Mails und Messenger und Queries, nicht nur Webseiten und Chatkanäle.
Aber ich habe doch nichts zu verbergen!
Doch, hast du! Lies dir mal die ICQ-Nutzungsbestimmungen durch.
Alles, was du über ICQ redest, kann von ICQ beliebig verwendet, verarbeitet und veröffentlicht werden. Wir reden hier nicht vom Herausgeben von Daten an Polizei und Behörden, sondern sie können mit dem Material schlicht machen, was sie wollen. Die Mailadressen herausfiltern und an Spammer verkaufen, Persönlichkeitsprofile erstellen und verkaufen, Geschäftsgeheimnisse und Insiderinformationen belauschen und so weiter.
Zum Vergleich:
Auch das ist eine Formulierung, die vieles erlaubt und auch AIM ohne Verschlüsselung nicht empfehlenswert macht. Aber man erkennt, wieviel dreister ICQ sich hier Rechte des Nutzers aneignet. So eine AGB schreibt man nicht aus versehen, sondern weil man was vorhat.
Abgesehen davon:
Generell nimmt der Überwachungswahn extreme Ausmaße an. Jedes verschlüsselte Paket, das durch eine Internetleitung geht, macht den Schnüfflern das Leben ein wenig schwerer.
Übrigens: einmal gespeicherte Daten neigen zum Gespeichertbleiben.
Was du heute noch nicht verbergen brauchst, solltest du morgen vielleicht schon niemandem mehr laut sagen. Gesetze und Regierungen ändern sich, und dass neben den staatlichen Strafverfolgern gelegentlich auch selbsternannte Ermittler schon heute mehr schnüffeln, als dem Nutzer lieb sein kann, wird sich vermutlich nicht ändern.
Oh, stimmt. Und wenn ich eh schon Miranda statt ICQ nutze?
Es geht um das Protokoll, nicht um deinen Client. Auch Miranda kommuniziert über die Server von ICQ mit anderen ICQ-Nutzern, und dort kann mitgeschniten und verwendet werden, wie es ICQ beliebt. Entweder verschlüsselst du deine Gespräche - dann kann ICQ allenfalls noch loggen, mit wem du redest, aber nicht mehr, was - oder du verwendest beispielsweise Jabber.
Aber alle meine Freunde verwenden ICQ!
Das kannst du ihnen vielleicht nach und nach abgewöhnen, aber nicht allen sofort auf einmal, das ist klar. Mit einem Multiclient wie Miranda oder Pidgin kannst du Jabber und ICQ nutzen, mit einem Verschlüsselungstool wie OTR wiederum kannst du auch mit Nutzern verschlüsselt kommunizieren, die nur einen ICQ-Account haben.
Nur muss man einen der alternativen Clients verwenden. Für den Original-Client von ICQ wurde nie ein Verschlüsselungs-Plugin zur Verfügung gestellt.
Ein Schelm, der böses dabei denkt.
Anhand von Miranda, Pidgin und Kopete zeigen wir euch nun, wie unkompliziert es sein kann, verschlüsselt zu kommunizieren.
Miranda
Miranda ist ein freier Multi-Protokoll-Client für das Betriebssystem Windows (ab 95). Es unterstützt alle gängigen Instant-Messaging-Protokolle, wie z.B. Jabber, ICQ, MSN, YIM, AIM uvm.
Es ist nach der Installation bewusst sehr schlank gehalten. Durch seine ausgefeilte Plugin-Schnittstelle kann Miranda nämlich nahezu beliebig den eigenen Wünschen und Bedürfnissen angepasst werden. Neben weiteren IM-Protokollen, lassen sich u.a. RSS-Feeds abrufen. Die Plugins lassen sich meistens ganz einfach durch kopieren in das Verzeichnis “Plugins” im Miranda-Ordner einbinden.
Es gibt auch vorkonfigurierte Pakete wie zum Beispiel hier, ich persönlich mag sie nicht, der Monty erklärt, warum.
Selbstverständlich unterstützt Miranda auch Jabber, die freie Alternative zu den kommerziell orientierten IM-Systemen. Hierzu ist ein Plugin erforderlich, welches bei der Installation mitgeliefert wird. Ist es nicht (mehr) vorhanden, kann es ganz einfach nachgeladen werden. Die Einstellungen sind sehr simpel. Wenn du noch kein Jabberkonto hast, dann füllst du die Felder Username und Password einfach mit deinen Wunschwerten aus. Das Feld Ressource zeigt dem Server an, von wo du dich einloggst. Dieser Wert kann beliebig gewählt werden. Dann klickst du auf “Register new user”. Dann wird auf dem Server, den du unter “Login server” gewählt hast, ein Account für dich angelegt.
Miranda und OTR
Mit OTR steht für Miranda eine Verschlüsselung zur Verfügung, die über alle gängigen Protokolle funktioniert. OTR verschlüsselt per ICQ, MSN, Jabber usw. versendete Nachrichten.
OTR in Miranda zu integrieren, ist denkbar einfach. Man benötigt die otr.dll, bei Miranda steht sie zum Download.
Die Zip-Datei entpackt man in den Plugins-Ordner von Miranda - C:\Programme\Miranda\Plugins, beispielsweise.
Miranda beenden und neu starten.
Unter dem Miranda-M gelangt man über “Options” zur Konfiguration des Kryptografie-Plugins. Notwendig ist eine Nachjustierung in der Regel nicht, die Default-Einstellungen verschlüsseln die Kommunikation, wenn der Gesprächspartner ebenfalls OTR kann.
Zur Erklärung: Unter dem Punkt “Plugins” findet ihr im Options-Baum links “OTR”. Angeklickt, zeigt es die Standardeinstellung sowie die Spezialeinstellungen für die einzelnen Messengerkontakte. Standard ist “Opportunistic”(empfohlen) - wenn der Partner OTR kann/aktiviert hat, verwendet Miranda OTR. Wird die Einstellung wie im obigen Screenshot auf "manuell" gesetzt, muss die verschlüsselte Sitzung explizit gestartet werden. Will man mit einer bestimmten Person sicher nur verschlüsselt kommunizieren, kann man die Standardeinstellung “default” hinter dem Nickname auf “always” ändern - dafür nur mit Mausklick auf die Policy hinter dem jeweiligen Nickname durch die verschiedenen Möglichkeiten durchklicken.
Den Beginn einer verschlüsselten Kommunikation zeigt Miranda per Popup-Meldung an - anschließend ist man sicher, dass keine Gespräche mitgehört oder im Klartext auf den Servern von beispielsweise ICQ geloggt werden können. Das Popup kann und soll man per “OK” bestätigen/wegklicken, das zu vergessen ist gelegentlich die Ursache, wenn man im Messengerfenster nicht tippen kann oder der Fehler erscheint:
[OTR Message] The encrypted message received from is unreadable, as you are not currently communicating privately.

Nach dem Bestätigen der OTR-Verbindung schicken die meisten Clients die zuvor unlesbare Meldung nochmals.
(Ich habe bei mir zusätzlich "Prefix secure Messages" angehakt, so steht vor jeder verschlüsselten Nachricht noch zusätzlich (OTR). )
Offizielle Homepage:
http://miranda-im.org/
Inoffizielle deutsche Homepage
Einsteigerhilfen
Pidgin
Pidgin ist ein freier Multi-Protokoll-Client, welcher sowohl unter Linux als auch unter Windows verwendet werden kann. Unterstützt werden alle gängigen Protokolle wie zum Beispiel ICQ, AIM, Jabber, MSN, Gadu-Gadu, Yahoo. Pidgin gibt es hier in einer stabilen Variante.
Debian & Ubuntuuser installieren am besten via apt:
apt-get install pidgin pidgin-otr
Pidgin bietet nach der Installation schon so gut wie sämtliche benötigten Funktionen und Einstellungsmöglichkeiten. Durch Plugins lassen sich allerdings noch weitere Funktionen hinzufügen. Diese werden entweder einfach über ein Setup installiert oder in Form einer dll-Datei in das Pidgin\plugins-Verzeichnis verschoben.
Pidgin und Jabber
Mit Pidgin kann man auch über das Jabber-Protokoll kommunizieren. Hierfür muss man einfach im Kontomanager das Konto als Jabber-Konto deklarieren und kann dort seine Verbindungsdaten eingeben.
Pidgin und OTR
Pidgin bietet über ein Plugin die Möglichkeit, die sichere Verschlüsselung von Off-the-Record zu verwenden. Dieses kann man einfach hier unter “OTR plugin for Pidgin” für die entsprechende Linux-Distribution oder für Windows herunterladen. Nach einem Neustart Pidgins sollte man das Plugin dann in den Einstellungen unter “Plugins” mit einem Häckchen unter “Laden” aktivieren können. Theoretisch sind nun, um die Verschlüsselung von OTR zu nutzen, keine weiteren Einstellungen nötig. Praktisch gesehen sollte man sich aber noch einen Fingerprint erstellen.

Unter “Config” kann man sich nun seinen eigenen Fingerprint erstellen, damit die anderen Kontakte sichergehen können, dass sie mit dir und keinem anderen sprechen. Hierfür muss man einfach unter “Key for account” den gewünschten Accound auswählen und mit “Generate” einen Fingerprint generieren. Dies macht man am besten nacheinander für alle Accounts.
Wenn man nun sein Chatfenster öffnet, findet sich im Menue ein neuer Punkt:

Mit diesem werden, so man es nicht, wie im obigen Screenshot automatisch, verschlüsselte Sitzungen begonnen. Bei der ersten Kontaktaufnahme startet der Schlüsseltausch. (Ich lasse an dieser Stelle den alten Screenshot stehen, ich mag nämlich gerade ungern für ein Bild meinen Key löschen. Beim nächsten geschrotteten System hole ich es nach.
)
Attempting to start a private conversation with missi@jabberme.net...

Unverified conversation with missi@jabberme.net/home started.
Von nun an chattet ihr verschlüsselt:

Auf der anderen Seite siehts so aus:

Wie immer also.
Die erste Verbindung ist stets eine unverifizierte.
Unter “Known fingerprints” in den Pidgineinstellungen kann man sehen, von wem man schon einen “fingerprint” erhalten hat. Diese Fingerprints sind dafür da, um sicherzugehen, dass man auch mit demjenigen spricht, mit dem man sprechen wollte. Siehe dazu das zweite Grundprinzip von OTR.

Um zu überprüfen, ob man wirklich denjenigen vor sich hat, den man auch vor sich haben will, bieten sich verschiedene Möglichkeiten, den Schlüssel zu verifizieren. Die einfachste ist wohl, eine geheime Frage zu stellen, die bestenfalls nur das (richtige) Gegenüber beantworten kann.

(Die etwas unglückliche Übersetzung fällt mir gerade das erste mal auf und bringt mich zum grinsen.)

Wenn alles geklappt hat, sollte es so aussehen:

Und das wars dann auch schon. Nicht schwer und tat nicht weh. :o)
Kopete
Begrüßenswert zog auch Kopete mittlerweile nach und hat es seit KDE 4.1 fest integriert.
Natürlich lassen sich hier auch Keys authentifizieren:
Nach erfolgreicher Authentifizierung wird die Verbindung als gesichert angezeigt:
Die Einstellungen dazu finden sich unter "Module:"

Noch ein paar Worte zu obrigen Text:
Diesen gab es schon einmal im Zuge eines kollaborierenden Projektes, welches vom dortigen Serveradmin, ich sag mal "etwas stiefmütterlich" behandelt wurde. Man könnte auch einfach sagen, er hats gelöscht. Teile dessen habe ich gerade aus Backup und Cache restauriert, große Teile des Textes stammen von Korrupt, den ich an dieser Stelle dafür danken möchte. Die Screenshots unter BSD stammen vom Oli. (wem sonst? :o) ) Ebenso geht ein dickes Danke fürs Zusammenarbeiten damals an Monty. Vielleicht mag er sich ja nochmal der Jabbergeschichte annehmen. ![]()
(Und ausserdem Danke an Angelo Badalamenti, Trent Reznor, Muse und Daft Punk, die mir während ich hier schrieb, feines Zeux in die Ohren spielten.)
Downloads:
OTR-Plugin - Miranda
OTR-Plugin - Trillian
OTR-Plugin - Pidgin und OTR- Proxy auf der offiziellen Homepage
OTR- Plugin - Kopete
Changelog:
* 02.02.2010 - Gaim in Pidgin umbenannt, Links gefixt, neue Screenshots, Kopete hinzugefügt (thx@at)






oli