next up previous contents index
Next: 23. Kompatibilität der Versionen von PGP Up: 4. Anhang Previous: 4. Anhang

Unterkapitel


  22. Die vielen PGP-Versionen

Was soll eigentlich das ganze Chaos mit den Versionen 2.3a, 2.6, 2.6MIT, 2.6.1, 2.6ui, 2.6.3i, 2.7, 5.0, 5.0i, 5.5, 6.0, GnuPG usw.?

1. Die Versionen 2.x

Bis zur Version 2.3 (2.3a ist ein kleiner Bugfix, d.h. es ist ein Programmierfehler entfernt worden, der Klartext-Unterschriften betraf) war PGP "Guerilla-Freeware", die außerhalb der USA unter Philip Zimmermanns Federführung entstand. Die Verwendung von PGP innerhalb der USA stellte eine Verletzung von Patentrechten dar, da eine eigenständige Implementation des in den USA patentierten Algorithmus RSA verwendet wurde.

Das nächste PGP, das entwickelt wurde (2.4), umging diese Probleme dadurch, daß es sich um eine kommerzielle Version handelte, die von ViaCrypt, Phoenix, Arizona vertrieben wurde. Mit dem Kauf dieser Version erhielt man das Recht, PGP kommerziell einzusetzen, die nötigen Abgaben an PKP und Ascom Tech waren im Preis eingeschlossen.

Um eine in den USA legale Version von PGP zu erstellen, schloß Philip Zimmermann ein Abkommen mit PKP und dem MIT, ein PGP zu entwickeln, das die frei verwendbaren RSAREF-Routinen benutzt. Teil dieser Abmachung war eine Änderung der Lizenzbestimmungen PGPs. PGP wird seit der Version 2.5 (die erste MIT-Version) nicht mehr unter den Bestimmungen der General Public License der Free Software Foundation (Stichwort GNU-Projekt) vertrieben, sondern diese Bestimmungen haben Einschränkungen erfahren, die sich zum Teil in den RSAREF-Bedingungen begründen, zum Teil in der Abmachung zwischen Philip Zimmermann und PKP.

  Kurze Zeit nach der Freigabe der Version 2.5 entstand die Version 2.6. Diese Version ist - wiederum aufgrund eines Abkommens mit o.g. Institutionen - so konstruiert, daß sie seit dem 1. September 1994 Nachrichten, Schlüssel und Unterschriften erzeugt, die mit früheren Versionen nicht gelesen werden können. Das dient dazu, die Verwendung der (in den USA immer noch gegen Patenrechte verstoßenden) Version 2.3(a) einzudämmen. Um internationale PGP-Kommunikation zu ermöglichen, ohne US-Exportverbote zu verletzen, haben einige Leute sehr bald die nötigen Änderungen am Quelltext veröffentlicht. Diese hat Peter Simons in seine Amiga-Version 2.3a.2 eingebaut, wobei die Version 2.3a.3 entstand (die aktuellen Versionen von PGP lassen sich direkt für den Amiga kompilieren) und ein Engländer mit dem Pseudonym Mathew hat sie in eine MS-DOS-Version 2.3a eingebaut und das Produkt 2.6ui genannt, wobei "ui" für "unofficial international" steht. Unofficial deshalb, weil die Version von keinem Programmierer des PGP-Teams abgesegnet ist, international deshalb, weil die Version außerhalb der USA entstanden ist und ohne Probleme in allen Ländern, die Verschlüsselung gestatten, verwendet werden kann - außer in den USA, wo sie gegen Patentrechte verstößt.

Um ihren kommerziellen Kunden eine Kommunikation mit Anwendern der Version 2.6 zu ermöglichen, brachte ViaCrypt die Version 2.7 auf den Markt.

  Die letzte offizielle Version der Reihe 2.6.x ist die 2.6.2, ein Bugfix zur 2.6 vom MIT. Diese Version sollte nur innerhalb der USA verwendet werden, da sie RSAREF-Code verwendet, dessen Einsatz außerhalb der USA nicht durch die Lizenzbestimmungen gedeckt ist. Es gibt aber eine Version 2.6.2i (deren Verwendung wir empfehlen), die die Routinen verwendet, die Phil Zimmermann für PGP 2.0 geschrieben hatte. Weiterhin hat Ståle Schumacher aus der 2.6.2i die Version 2.6.3i entwickelt. Diese verhält sich leider in einigen Punkten nicht ganz kompatibel zu den offiziellen, d.h. vom MIT und Philip Zimmermann veröffentlichten, Versionen, ist aber von Philip Zimmermann anerkannt, hat also in gewisser Weise auch einen "offiziellen" Status. Auf Grundlage dieser Version hat Lutz Donnerhacke die Version 2.6.3in programmiert, die einige im Datenformat bereits angelegte, aber sonst nie eingesetzte Besonderheiten verwenden kann, beispielsweise Schlüssel mit Ablaufdatum und Schlüssel, die nur zum Signieren oder nur zum Verschlüsseln verwendet werden sollen.

Heutzutage sind die Versionen 2.6.2, 2.6.2i und 2.6.3i verbreitet.

  2. Die Versionen 5.x und 6.x

  Im Mai 1996 hat Philip Zimmermann mit Jonathan Seybold, Dan Lynch und anderen für die Weiterentwicklung PGPs die Firma PGP Inc. gegründet. Das erste von dieser Firma veröffentlichte Programm war die Windows-Version von PGP 5.0. Dieser Schritt löste kontroverse Diskussionen aus. Einerseits hatte durch die starke Systemabhängigkeit in den Augen vieler PGP-Nutzenden das Programm stark verloren, auf der anderen Seite war die neue Windows-Oberfläche für viele Neueinsteiger ein starkes Argument, PGP zu verwenden. Einige Zeit später erschienen auch Versionen für die Verwendung unter den gebräuchlichsten Unix-Versionen (ohne graphische Oberfläche), in der Testphase bedauerlicherweise ohne den verwendeten Quelltext. Daß PGP ab Version 5.0 zu einem kommerziellen Produkt geworden war, war keine große Neuerung, denn kommerzielle Versionen gab es bereits vorher und PGP Inc. vertreibt auch Freeware-Versionen der Software, die sich (unter moderaten Einschränkungen, die sich hauptsächlich aus den bereits mehrfach genannten Patent- und Lizenzproblemen ergeben) gratis verwenden lassen. Die Verwendung weiterer Algorithmen (3DES, ElGamal[*], DSS/DSA) weckte kaum Widerspruch, die Ankündigung, RSA und IDEA in absehbarer Zeit fallenlassen zu wollen, wurde hingegen mit wenig Begeisterung aufgenommen, ebenso wie die Änderung des Datenformats - aber mit den neuen Algorithmen erzeugte Nachrichten lassen sich von PGP-Versionen 2.x ohnehin nicht lesen. Insbesondere aber die Lizenzbestimmungen der Freeware-Version stießen (und stoßen immer noch) auf Unverständnis und Ablehnung: Es ist zwar explizit gestattet, den Quelltext des Programms zu vertreiben (Sie finden ihn auf der beiliegenden CD im Verzeichnis 5.0i in den Verzeichnissen der jeweiligen Betriebssysteme) und für den Hausgebrauch zu modifizieren, aber es dürfen weder geänderte Quelltexte noch die Änderungen selbst (z.B. in Form von "Patches") veröffentlicht werden. Das ausgesprochen schlechte Handbuch, in dem kaum auf Hintergründe eingegangen wird (und das Wenige ist in großen Teilen falsch), tat ein übriges, um die Begeisterungsstürme in Grenzen zu halten.

Um der in Abschnitt 6.3 angesprochenen Exportproblematik zu begegnen, veröffentlichte PGP Inc. den gesamten Quelltext[*] zusätzlich in gedruckter Form, denn als Buch konnte das Programm unter Berufung auf "free speech" exportiert werden. Der Quelltext wurde eingescannt, per OCR (elektronischer Texterkennung) in maschinenlesbare Form übertragen und von etlichen Freiwilligen auf der HIP mit Hilfe der mit abgedruckten Prüfsummen korrekturgelesen. Der hierbei entstandene Quelltext ist als 5.0i bekannt.

     Im Oktober 1997 veröffentlichte die Firma PGP Inc. die Version 5.5. Hier war nun die Überraschung groß: Auf einmal enthielt PGP ein "feature", das je nach Kontext verschiedene Namen hat, u.a. ARR (additional recipient request), CAK (company access to keys) oder GAK (government access to keys). Gemeint ist immer dasselbe: Ein PGP-Schlüssel, der einen Eintrag mit der Bedeutung "an mich verschlüsselte Nachrichten sollen immer auch an jenen Schlüssel verschlüsselt werden". Um dies zu verstehen, muß man wissen, daß in den USA der Datenschutz bei weitem nicht so entwickelt ist wie in Deutschland, insbesondere wird es dort als vollkommen normal angesehen, daß ein Arbeitgeber den Telephon-, Fax- und Briefverkehr seiner Angestellten am Arbeitsplatz, ihr Internet-Benutzungsverhalten und eben auch ihre E-Mail überwacht. Die Tendenz in Deutschland geht bedauerlicherweise in eine sehr ähnliche Richtung. Um das ganze System wirksam einsetzen zu können, hat PGP Inc. eine weitere Funktion[*] eingebaut, mit welcher der PGP installierende Systemadministrator einstellen kann, daß auch sämtliche ausgehende Mail an einen designierten Schlüssel mitverschlüsselt wird und hat einen MTA[*] geschrieben, der eingehende Mail, die nicht an den eingestellten Firmenschlüssel mitverschlüsselt wurde, ablehnt. Besonders überraschend war es für viele Leute, daß bereits die Version 5.0 Code enthält, um ARR-Schlüssel zu unterstützen, auch wenn diese Version noch keine Schlüssel mit dem ARR-Eintrag erzeugen kann. Auf der positiven Seite ist zu vermerken, daß die Version 5.5 wiederum dazu in die Lage versetzt wurde, RSA-Schlüssel zu erzeugen.

Ende des Jahres 1997 wurde die Firma PGP Inc. von der Firma Network Associates (ehemals McAffee) aufgekauft. Die 1998 erschienene Version 6.0 bot Neuerungen hauptsächlich in der Bedienungsoberfläche, beispielsweise die Möglichkeit, den Textinhalt des aktuellen Fensters zu ver- oder entschlüsseln, ohne selbst die Zwischenablage zu bemühen. Das Datenformat wurde ein weiteres mal geändert, an neuen Möglichkeiten wurden hier die Option eingeführt, an einen Schlüssel ein Photo anzuhängen (unserer Meinung nach ein "Spielzeug" ohne praktischen Nutzen) sowie die Markierungen "trusted introducer" und "trusted metaintroducer", deren Bedeutung Sie auf Seite [*] erfahren. Außerdem haben Sie im neuen Datenformat die Möglichkeit, in Ihrem Schlüssel weitere Personen (genauer gesagt: Schlüssel) anzugeben, die diesen Schlüssel zurückrufen, also für ungültig erklären dürfen. In der Businessversion und der "personal edition", nicht aber der Freeware-Version ist des weiteren PGPDisk hinzugekommen, das Ihnen gestattet, Partitionen Ihrer Festplatte zu verschlüsseln. Die Unterstützung von RSA und IDEA ist in der Freeware-Version komplett entfernt worden (womit keine Kommunikation mehr mit PGP-Versionen vor der Kommerzialisierung möglich ist, aber die Verwendung von RSA und IDEA in einem kommerziell eingesetzten Produkt kostet Geld, unabhängig davon, ob die entsprechenden Code-Teile verwendet werden, und die Firmen-Policy spricht sich gegen nicht-freie Algorithmen aus). In der Schlüsselverwaltung hat sich auch etwas getan; die bereits vorher verwendeten Unterschlüssel lassen sich jetzt getrennt bearbeiten. Lobend sollte erwähnt werden, daß die mitgelieferte Dokumentation bei PGP 6.0 gegenüber der Dokumentation zu 5.0 wesentliche Verbesserungen erfahren hat. Ein nennenswerter Teil dieser Verbesserungen sind (auf aktuellen Stand gebarchte, aber immer noch deutlich erkennbare) Ausschnitte aus der Dokumentation zu Version 2.3a. Der Abschnitt

Frühere Versionen von PGP erlaubten es Ihnen, eine ältere Technologie, die RSA genannt wurde, zu verwenden, um Schlüssel zu erzeugen. Mit PGP 5.0 und späteren Versionen haben Sie die Option, eine neue Art von Schlüssel zu erzeugen, die auf der besseren ElGamal-Variante der Diffie-Hellman-Technologie basiert.
ist in dieser Form reines Blendwerk. ElGamal ist von sich aus nicht besser als RSA (auch wenn das zugrundeliegende Problem von Experten als schwieriger zu umgehen angesehen wird); der größte Vorteil ElGamals (insbesondere für die Firma PGP Inc.) ist, daß die Verwendung RSAs Geld kostet.

Kurz vor Drucklegung dieses Buches ist die Version 6.5.1 erschienen. Sie finden in diesem Buch an einigen Stellen Hinweise auf diese Version; für ein umfassende Einarbeitung blieb leider keine Zeit mehr. Die Version 6.5.1 brachte einige Neuerungen mit sich. Die Hervorstechendste neue Funktionalität ist mit Sicherheit eine Windows-Systemerweiterung, die IPsec bietet, also eine Verschlüsselung sämtlicher Internet-Kommunikation mit einem Standard, der u.a. auch von Cisco Routern und (mit FreeS/WAN) Linux unterstützt wird. Außerdem ist es mit nunmehr möglich, selbstentschlüsselnde Dateien anzulegen, also (unter Windows) ausführbare Dateien, die beim Starten ein Paßwort verlangen und bei Eingabe des korrekten Paßwortes entschlüsselt werden - ohne, daß auf dem betreffenden Rechner PGP installiert sein muß. Die bereits in PGP 6.0 eingeführte Funktionalität, freie Bereiche der Festplatte zu überschreiben, läßt sich mit Version 6.5 in regelmäßigen Abständen automatisiert aufrufen; diese Option ist sicherlich nur etwas für Anwenderinnen, die genau wissen, was sie mit "Löschen" meinen. Funktionen wie "Verschlüsseln des aktuellen Fensters" und ähnliche lassen sich per Tastenkombination (sog. Hotkeys) aufrufen, was die Bedienung stark erleichtert. Optional können Sie sich den Fingerprint eines Schlüssels statt als Kette von Hexadezimalzahlen auch durch eine Liste von Worten darstellen lassen - das kann den Vergleich am Telephon vereinfachen. In dieser Version wird RSA wieder komplett unterstützt und es gibt sogar wieder eine Kommandozeilenversion (allerdings nicht für MS-DOS). Leider konnten wir die Quelltexte für die Unix-Version 6.5.1i erst nach Änderungen überhaupt kompilieren und auch dann ließ sich nur eine Debug-Version erzeugen. Die Bedienung der Kommandozeile wurde im Gegensatz zu Version 5.0 stark an 2.6.x angeglichen.

Detaillierte Beschreibungen der Unterschiede zwischen den einzelnen Windows-Versionen finden Sie in Teil III dieses Buches.

Die neuen Datenformate sind inzwischen (mit leichten Änderungen) unter dem Namen OpenPGP als RfC2440 veröffentlicht worden.

3. GnuPG

            Bereits während der Diskussions- und Entstehungsphase des RfC2440 (OpenPGP) entwickelte Werner Koch (mit Unterstützung von Matthew Skala, Michael Roth und Niklas Hernaeus) eine Implementation, die unter der GNU General Public License veröffentlicht wurde. Dieses Programm nennt sich GnuPG, Sie finden es auf der CD zum Buch im Verzeichnis GnuPG. GnuPG ist kompatibel zu PGP 5.0 und 6.0 mit den folgenden Einschränkungen:

GnuPG ist auf Linux und FreeBSD entwickelt worden und läuft auf fast allen Unix-Systemen. Eine Portierung auf Windows existiert, hinkt aber hinter der Entwicklung auf den genannten Unix-Varianten hinterher; eine graphische Benutzeroberfläche für Windows existiert unseres Wissens noch nicht.


next up previous contents index
Next: 23. Kompatibilität der Versionen von PGP Up: 4. Anhang Previous: 4. Anhang
Christopher Creutzig