Willkommen zu den Speziellen Themen von TheBat! World - die inoffizielle deutsche TheBat! Seite.


1. Einführung in PGP


Thomas () - 12.11.2003



«Verschlüsselung? Ich habe doch gar nichts zu verbergen! Oder?»



Es geht gar nicht so sehr darum, ob man etwas "zu verbergen" hat. Aber manche Dinge möchte man lieber vertraulich behandeln. Wenn man persönliche oder geschäftliche Nachrichten lieber im verschlossenen Umschlag statt als Postkarte verschickt, dann sollte es selbstverständlich sein, auch elektronische Post zu verschließen, zum Beispiel mit PGP





«Ist unverschlüsselte E-Mail denn so unsicher??»



Leider ja. Email geht auf dem Weg durchs Internet oft ganz eigene Wege, läuft über viele verschiedene Rechner, bevor sie beim Computer des Empfängers ankommt. Auf jedem dieser Rechner kann die Nachricht gelesen und auch verändert werden, ohne dass dies für den Empfänger erkennbar ist. Experten gehen davon aus, dass heute ein Großteil des Datenverkehrs automatisiert überwacht und nach Schlüsselbegriffen ausgewertet wird





«Ist Verschlüsselung eigentlich legal??»



Starke Verschlüsselung, wie PGP sie ermöglicht, ist in Deutschland für jedermann legal einsetzbar und läuft auf jedem Standard-PC. Eine ausführliche Erklärung, warum PGP als faktisch sicher betrachtet wird, findet man z.B. bei Ralf Senderek.





«Was ist PGP?»



PGP steht für "Pretty Good Privacy". Es handelt sich dabei um ein Programm des US-Amerikaners Phil Zimmermann. Die erste Version fand bereits am 5. Juni 1991 ihren Weg in verschiedene Mailboxen. PGP ermöglicht es, Nachrichten so zu verschlüsseln, dass nur der echte Empfänger sie lesen kann. Dabei kommen Verschlüsselungsalgorithmen zum Einsatz, an denen sich selbst der amerikanische Geheimdienst die Zähne ausbeißt. Nichtzuletzt deshalb versuchten die USA lange Zeit, den Export von PGP um jeden Preis zu verhindern. Zum Glück ist der Versuch gescheitert. ;o)





«Wie funktioniert PGP?»



Herkömmliche Verfahren verwenden für das Codieren und Decodieren denselben Schlüssel. Der Empfänger kann die Nachricht nur lesen, wenn er den Schlüssel kennt, den der Absender verwendet hat. Dieses Verfahren hat einen großen Nachteil: Absender und Empfänger müssen sich auf einen gemeinsamen Schlüssel einigen und diesen austauschen. Dies geschieht naturgemäß unverschlüsselt, so dass die Möglichkeit besteht, dass schon diese Kommunikation überwacht wird. Ein Angreifer könnte dann alle weiteren Nachrichten mitlesen: Er hat ja bereits den Schlüssel.

Im Gegensatz zu diesem symetrischen Verfahren verwendet PGP eine asymetrische Verschlüsselung. Dabei besitzt jeder Kommunkationspartner zwei Schlüssel: Einen privaten und einen öffentlichen. Den öffentlichen Schlüssel kann man beliebig verteilen, per eMail, über eine Webseite oder auch auf Diskette. Mit diesem öffentlichen Schlüssel kann man Nachrichten nämlich nur verschlüsseln, nicht aber lesen. Und wenn ein Text auf diese Weise mit Hilfe des öffentlichen Schlüssels kodiert wurde, kann nur der Besitzer des passenden privaten Schlüssels den Text wieder entziffern.

Man stelle sich den öffentlichen PGP-Schlüssel wie ein Vorhängeschloß vor, das man seinem Brieffreund in die Hand drückt. Mit diesem Vorhängeschloß kann er Post an dich "verschließen". Aber niemand kann dieses Schloß wieder öffnen, weil nur du den Schlüssel dazu besitzt, in unserem Beispiel dein privater PGP-Schlüssel.





«Algorithmen - Schlüsselmethoden im Detai»



Pretty Good Privacy beispielsweise benutzt vier verschiedene Verschlüsselungsalgorithmen, um die Nachricht zu sichern:





» IDEA

International Data Encryption Algorithm: Das Verschlüsselungsverfahren arbeitet ähnlich wie DES, ist aber durch den verwendeten 128-Bit-Schlüssel sicherer.




» 3DES

Triple-DES, oder verkürzt 3DES, ist eine Weiterentwicklung des Data Encryption Standard (DES). Dieses ältere Verfahren arbeitet mit einer Schlüssellänge von nur 56 Bit. 3DES hingegen arbeitet mit drei Verschlüsselungsläufen und zwei oder drei Schlüsseln. Die Verwendung von drei Schlüsseln garantiert eine effektive Schlüssellänge von 112 Bit.




» RSA

RSA (Rivest, Shamir, Adelman): Verschlüsselungsverfahren, bei dem jeder Partner einen allgemein bekannten (public) und einen geheimen (private) Schlüssel besitzt. Unterschiedliche Implementierungen nutzen verschiedene Schlüssellängen. Als unsicher gelten derzeit Schlüssellängen von unter 900 Bit.




» ElGamal

Der Verschlüsselungs-Algorithmus nach Elgamal wird vom Diffie-Hellman-Verfahren genutzt und bietet bei gleicher Schlüssellänge die Sicherheit des RSA-Algorithmus. Elgamal beruht auf der Schwierigkeit, diskrete Logarithmen zu berechnen.




Letzteres ist für den asymmetrischen Teil der Verschlüsselung zuständig ist. Dieser Algorithmus wird nur für einen Teil des Verschlüsselungsvorgangs eingesetzt, weil die Bearbeitung der Nachricht andernfalls sehr viel Zeit in Anspruch nehmen würde. IDEA und RSA sind die Standardverfahren, die beiden anderen Algorithmen werden eingesetzt, um patentrechtlichen Problemen aus dem Weg zu gehen.



Vor der Verschlüsselung werden die Texte mit einem Pkzip ähnlichen Verfahren komprimiert, zum einen um die Dateigröße herabzusetzen, zum anderen um erkennbare Textmuster, die Ansatzpunkte für Entschlüsselungsversuche bieten könnten, zu eliminieren. Dann erzeugt das Programm mit Hilfe eines Zufallszahlengenerators einen temporären symmetrischen Session Key, mit dem die Nachricht verschlüsselt wird. Der Session Key selbst wird mit dem Public Key nach dem asymmetrischen Verfahren kodiert und der Nachricht hinzugefügt. Um eine gesendete Botschaft elektronisch zu signieren, erzeugt PGP aus der kompletten Nachricht eine 128-Bit-Prüfsumme nach dem




» Message-Digest-5-Verfahren (RFC 1321)

Der Message Digest 5 (MD5) ist eine Hash-Funktion. Eine solche Funktion erzeugt aus einer Zeichenkette durch gezielte Manipulation eine andere Zeichenkette. Da es unmöglich ist, aus dem Resultat auf die Ursprungszeichenkette zu schließen, wird MD5 zum Speichern von Passwörtern oder zum Erzeugen einer digitalen Signatur genutzt.




Dies wird mit dem privaten Schlüssel kodiert und an die Nachricht angehängt. Manipuliert jemand den Inhalt oder tritt ein Übertragungsfehler auf, stimmt die Prüfsumme nicht mehr. Durch dieses Verfahren lässt sich nicht nur die Vertraulichkeit des Inhalts, sondern auch dessen Authentizität garantieren. Zum Abschluss wird die komplette Nachricht noch nach dem





» Radix-64-Verfahren

Ein Verfahren, um binäre Daten ins ASCII-Format umzuwandeln. Bei der Umwandlung werden 64 unterschiedliche Zeichen verwendet.




Der Empfänger entschlüsselt zunächst mit dem eigenen asymmetrischen Private Key den temporären Session Key und mit diesem wiederum die eigentliche Nachricht. Im Prinzip handelt es sich bei PGP deshalb nicht um ein reines Public-/Private-Key-Verfahren: Die Nachricht selbst wird nach der konventionellen Methode mit dem gleichen (Session-)Schlüssel kodiert und dekodiert. Die Public-/Private-Key-Verschlüsselung dient nur zum sicheren Übertragen des symmetrischen Schlüssels. Diese kombinierte Methode (Hybrid-Kryptografie) ist auch als Digitaler Briefumschlag bekannt.



Weitere Informationen zum Thema Algorithmen findet man bei Regenechsen - Krypto






«Welche PGP Version soll man nehmen?»



Als Phil Zimmermann PGP 1991 entwickelte, war es ein reines Kommandozeilenprogramm: Man bediente es über Tastaturbefehle. Diese Originalversion von PGP war verhältnismäßig kompakt und konnte leicht auf Schwachstellen hin untersucht werden. Davon haben Kryptographen und Mathematiker auf der ganzen Welt reichlich Gebrauch gemacht. Und nichts gefunden.

Daher gilt die Kommandozeilenversion von PGP immer noch als das Maß der Dinge, wenn es um Sicherheit und Vertrauenswürdigkeit geht.



Später erschien PGP 5 mit graphischer Windows-Oberfläche und einer ganzen Menge neuer Funktionen. Unter anderem hatten die erzeugten Schlüssel plötzlich ein anderes, zu den alten natürlich inkompatibles Format. Darüberhinaus war das eigentliche Programm stark angewachsen, so dass eine Überprüfung schwerer wurde.



Auch die ADK-Funktion brachte das "neue" PGP in Misskredit. Diese Funktion ermöglicht es, beim Erzeugen von PGP-Schlüsseln einen Zweitschlüssel zu integrieren. Dadurch wird eine Nachricht immer für zwei Empfänger verschlüsselt. Hintergrund war der Wunsch von Firmen, die elektronische Korrespondenz ihrer Mitarbeiter bei Bedarf einsehen zu können. Mit der herkömmlichen Variante wäre dazu allein der Schlüsselinhaber in der Lage. Mit einem "Additional Decryption Key" kann jedoch auch der Arbeitgeber Einblick in die Nachrichten nehmen. Der ADK-Key muss jedoch schon bei der Schlüsselgenerierung integriert werden. Ein nachträgliches Einfügen solch eines Zweitschlüssels ist, zumindest seit der Bug-bereinigten Version 6.5.8, nicht möglich.



Seit der 6er Version kann PGP nun auch wieder die "alten" RSA Schlüssel erzeugen.

Die Version 7.x ist aus meiner Sicht nicht zu empfehlen, da zum gegenwärtigen Zeitpunkt der Quellcode des Programms noch immer nicht freigegeben ist. Darüber hinaus enthält PGP 7 einige Funktionen, die unter dem Aspekt der Datensicherheit bedenklich sind. Zu Details siehe Erklärung von Kai Raiven.



Im Dezember 2002 ist PGP 8.0 erschienen. Unter der Federführung der neu gegründeten PGP Corporation wurde die Verschlüsselungssoftware überarbeitet und ist jetzt kompatibel zu MacOS X und Windows XP. Der Quellcode ist zur Überprüfung freigegeben. Ebenfalls angeboten wird eine Freewareversion für Privatanwender, die sich jedoch auf die reine Mailverschlüsselung beschränkt. Zusatzmodule wie PGP-Disk finden sich nach wie vor nur in der kommerziellen Version und sind erst nach Eingabe einer entsprechenden Lizenznummer nutzbar. Vollkommen verzichtet hat man offenbar auf die Kommandozeilenversion - ärgerlich für Nutzer von Mailprogrammen mit integrierter PGP-Schnittstelle wie The Bat. Die Verschlüsselung über das PGP-Tray Programm ist hingegen wie bisher möglich.



Letztlich ist es eine Frage des Anspruchs an Sicherheit und Komfort, welche Version man verwendet:



Version 2.6.3:

Kompakt und vertrauenswürdig. Das Kommandozeilentool ist bewährt und der Quellcode übersichtlich. Mit MailPGP liegt sogar ein graphisches Frontend vor, für notorische Maus-Fans ;o)



Version 6.5.8 oder 8.0:

Komfortabel zu bedienendes Windows-Programm und in dieser Version auch vom sogenannten ADK-Bug befreit. Kann sowohl die alten RSA- als auch die neuen DH-Schlüssel erzeugen und verarbeiten.



Eine gute Alternative ist Imad's PGP 6.58 ckt Build 09 B3. Imad entwickelte die offizielle PGP 6.58 Version im Jahr 2002 weiter, als PGP selbst verkauft werden sollte und die Aktualisierung komplett gestoppt wurde. Bitte nutzt nicht die Version PGP 6.58 ckt Build 08, da es mit dieser Version zu Problemen mit TB! kommt. Imad's Versionen kommen mit einem TheBat Plugin.





«Fazit»



PGP 6.58 bzw. Imads PGP 6.58ckt Build 09 oder, falls man TheBat! V2.x nutzt, PGP 8.x sind zum jetzigen Zeitpunkt die aktuellen in TB! integrierbaren und empfehlenswerten Versionen.



Ab TB! Version 2.x wird kein Plugin mehr benötigt. PGP 6.5x kann weiterhin per Plugin (PGP 8 nur über die TB! interne Schnittstelle) eingebunden werden. Die folgende Anleitung ist auf alle o.g. PGP Version übertragbar.



Quelle:

Mit freundlicher Genehmigung des Unabhängigen Landeszentrums für Datenschutz

[ Zurück zu PGP | Themen Index | ]

Kommentare

Grenze
Für den Inhalt der Kommentare sind die Verfasser verantwortlich.