Man glaubt es kaum, aber mittlerweile häufen sich Instant-Messenger Teilnehmer in meinem Bekanntenkreis - selbst solche die krampfhaft an ICQ festhalten - die sich bezüglich Verschlüsselung nicht mehr ganz so beratungsresistent zeigen oder sich gar aus eigenen Zügen von Klartextübermittlung im Netz abwenden.
Leider ist die Einstiegshürde der asymmetrischen Kryptologie relativ hoch und somit besitzen die wenigsten ein PGP/GnuPG-Schlüsselpaar, geschweige denn einen Nicht-XMPP-Messenger, der PGP-Verschlüsselung unterstützt.
Als Alternative zu GnuPG/PGP macht sich zunehmend das symmetrische OTR- (Off-The-Record) Verfahren einen Namen, das speziell für Instant-Messaging entwickelt wurde.
Anders als bei PGP, werden die Datenpakete nicht mit einer eindeutig zuordenbaren Signatur versehen, wodurch Absenderanonymität gewährleistet werden kann. Das bedeutet, allein auf Grund eines vorliegenden Datenpakets kann nicht schlußgefolgert werden, von wem dieses gesendet wurde.
Wie OTR genau funktioniert, darüber möchte ich in Kürze einen ausführlicheren Artikel schreiben. Schließlich kann man den Nachwehen der Krypto-Diplomprüfung auch noch etwas positives abgewinnen und informatives daraus produzieren.
Leider hält sich die Auswahl der Messenger mit OTR-Unterstützung, sei es nativ oder via Plugin, noch in Grenzen. Mein Favorit Psi kam bzw. kommt ohne native Unterstützung daher, selbst die langersehnte Plugin-Schnittstelle ist selbst im aktuellen SVN-Trunk noch nicht vollständig implementiert. Darüber hinaus sind, laut Foreneinträgen, die Core-Entwickler nicht sehr an der Implementierung von OTR interessiert. Daher hat Timo Engel das Zepter selbst in die Hand genommen.
Damit Psi nun OTR spricht, bedarf es einem Patch, der Psi um die Plugin-Schnittstelle bereichert. Hierzu bediene man sich entweder des gepatchten Quellcodes, den bereits gebauten inoffiziellen Debian-Packages, oder man patcht den aktuellen SVN-Trunk selbst (was mir mit vorliegendem Patch leider nicht gelingt).
Ich hatte mich für den gepatchten Quellcode entschieden, da die verfügbaren Packages der Version 0.11-1 noch einen Bug enthalten, der die Eingabe des PGP-Mantras verhindert.
Zuerst gilt es also, den Bug zu eliminieren. Dazu muß in der Datei src/passphrasedlg.cpp lediglich eine Zeile geändert werden:
--- src/passphrasedlg.cpp (revision 856) +++ src/passphrasedlg.cpp (working copy) @@ -34,7 +34,7 @@ void PassphraseDlg::promptPassphrase(const QString& name) { setWindowTitle(tr("%1: OpenPGP Passphrase").arg(name)); - resize(minimumSize()); + resize(minimumSizeHint()); } QString PassphraseDlg::getPassphrase() const
Danach gehts ans Vorbereiten des Kompiliervorgangs. Nach einem erfolgreichen
./configureDEFINES += PSI_PLUGINS CONFIG += psi_plugins
make make install
Sofern beim Kompilieren alles glatt gelaufen ist, sollte man in Psi nun unter Options einen neuen Menüpunkt namens Plugins finden, mit Hilfe dessen OTR konfiguriert werden kann.
Mehr Lesenswertes über verschlüsseltes Instant-Messaging (PGP und OTR) mit anderen Messengern (Pidgin,Kopete,Trillian) und deren Konfiguration hat bereits Annika in aller Ausführlichkeit im FreiheIT-Blog geschrieben.