PGP Dokumentation - Teil I: Grundlagen

Index
  1. Etwas Wichtiges vorweg
    1. Vorwort der Herausgeberinnen
    2. Spendenaufruf
    3. Zusammenfassung
  2. Vorwort zur deutschen Übersetzung
    1. Einsatzgebiete von PGP
    2. Übersetzungen und Fachbegriffe
    3. Begriffsdefinitionen
    4. Lernvorschlag
    5. Danksagungen
  3. Überblick
    1. Allgemeines
    2. Warum eigentlich PGP benutzen?
    3. Die Funktionsweise von PGP
  4. PGP installieren und bedienen
    1. Die Installation
    2. Bedienung von PGP
      1. Kurzanleitung am Bildschirm
      2. Verschlüsseln einer Nachricht
      3. Verschlüsseln einer Nachricht für mehrere Empfänger
      4. Unterschreiben einer Nachricht
      5. Unterschreiben und Verschlüsseln
      6. Konventionelle Verschlüsselung
      7. Entschlüsselung und Prüfung der Unterschrift
      8. Der Umgang mit Schlüsseln
        1. Einen RSA-Schlüssel generieren
        2. Einen Schlüssel in den Schlüsselbund aufnehmen
        3. Einen Schlüssel oder eine Benutzer-ID aus dem Schlüsselbund entfernen
        4. Inhaltsangabe des Schlüsselbundes
        5. Einen Schlüssel in eine eigene Datei kopieren
        6. Öffentliche Schlüssel vor Manipulationen schützen
        7. Die Schlüssel und andere Leute
        8. Wie untersucht PGP, welche Schlüssel gültig sind?
        9. Einen Schlüssel unterschreiben
        10. Private Schlüssel vor Diebstahl schützen
        11. Einen Schlüssel zurückziehen
        12. Ich habe meinen privaten Schlüssel verloren, was jetzt?
  5. PGP für Fortgeschrittene
    1. Versand von Nachrichten im Radix-64-Format
    2. Die Umgebungsvariable für das PGP-Verzeichnis: PGPPATH
    3. Konfigurierbare Parameter: config.txt bzw. pgp.config
    4. Schwachstellen
    5. Vertrauen in Placebos und Wundermedikamente?
  6. PGP zum Nachschlagen - Kurzübersicht über die PGP-Befehle
    1. Grunsätzliches
    2. Kommandos zur Schlüsselverwaltung
    3. Esoterische Kommandos
    4. Kommandooptionen, die in Verbindung mit anderen Optionen benutzt werden können

Etwas Wichtiges vorweg
Vorwort der Herausgeberinnen Mit der Übersetzung der PGP-Dokumentation ins Deutsche wollen wir dazu beitragen, daß auch Menschen, die keine ausreichenden Englischkenntnisse zum Lesen einer solch komplexen Beschreibung haben, eine Chance bekommen, Pretty Good Privacy kennenzulernen. Wir möchten mit der Veröffentlichung des vorliegenden deutschen Handbuches erreichen, daß dieses hervorragende Verschlüsselungsprogramm auch in deutschsprachigen Regionen nicht nur möglichst weit verbreitet, sondern auch angewendet wird.

Wir, der FoeBuD e.V. in Bielefeld - mit ganzem Namen: Verein zur Förderung des bewegten und unbewegten Datenverkehrs - sind kein Computerclub im üblichen Sinne. Bei uns treffen sich nicht nur Technikinteressierte, sondern Menschen mit unterschiedlichsten Interessen, die sich in den Bereichen Umwelt, Menschenrechte, Politik, Wissenschaft, Kunst und Kultur engagieren, Männer wie Frauen.

Die vom FoeBuD betriebene MailBox //BIONIC ist Gründungsmitglied in der Arbeitsgemeinschaft Freier MailBoxen e.V. (AGFMB), in deren Statuten u.a. die Achtung der freien Meinungsäußerung, des Datenschutzes, der Privatsphäre, des Jugendschutzes, der Menschenwürde und der informationellen Selbstbestimmung verankert sind. Elektronische Post kann mit sehr viel weniger Aufwand von Unbefugten gelesen - oder auch nur nach bestimmten Stichworten durchsucht - werden als herkömmliche Briefe. Zur Wahrung des Fernmeldegeheimnisses empfehlen wir deshalb dringend die Verwendung eines geeigneten Verschlüsselungsprogrammes, sozusagen als elektronischen Briefumschlag. PGP ist schnell, hinreichend sicher und bietet Ihnen die Möglichkeit, vertrauliche Nachrichten auch mit Menschen auszutauschen, die sie vorher nicht persönlich getroffen haben.

Wer mehr über den FoeBuD e.V., die //BIONIC MailBox und unsere monatliche Veranstaltung PUBLIC DOMAIN wissen möchte, findet dazu Informationen im Anhang ab.

Wir wünschen Ihnen viel Spaß beim Lesen der Anleitung und Erfolg beim Anwenden von Pretty Good Privacy!

Bielefeld, im November 1994

Spendenaufruf Am 14. September 1993 erhielt die Firma LEMCOM Systems (ViaCrypt) aus Phoenix, Arizona, eine Vorladung des Distriktgerichts von Nordkalifornien. LEMCOM Systems wurde darin aufgefordert, vor einer "Grand Jury" eine Zeugenaussage zu machen, und Dokumente herauszugeben. Philip Zimmermann wurde mitgeteilt, daß er der Hauptverdächtige in einem Ermittlungsverfahren ist, das vom US-Zollamt in San Jos‚ durchgeführt wird. Ob es weitere Verdächtige gibt, ist nicht bekannt. Die entstehenden Kosten für Philip Zimmermann werden astronomisch sein, unabhängig davon, ob es nun zu einer Anklage kommt oder nicht.

Falls es zu einem Prozeß kommt, wird dies einer der wichtigsten Prozesse sein, die in letzter Zeit um Kryptographie, um den effizienten Schutz des Briefgeheimnisses und um den freien Fluß von Informationen und Ideen im Globalen Dorf nach Ende des kalten Krieges geführt wurden. Dieser Prozeß wird von großer Bedeutung sein, sowohl für diejenigen von uns, die sich für die Idee des effektiven Schutzes der Privatsphäre im Kommunikationsbereich einsetzen, als auch für Philip, dem eine Haftstrafe für seine uneigennützige und erfolgreiche Entwicklung von "Kryptographie für die Massen" droht, auch als PGP bekannt. Exportbeschränkungen müssen dafür herhalten, die Verfügbarkeit von effektiver kryptographischer Technologie zu beschneiden: Der Zoll vertritt die Auffassung, daß die Veröffentlichung eines kryptographischen Programms im Internet mit seinem Export gleichzusetzen ist. Philip hat als erster keine Risiken und Mühen gescheut, wirklich effektive Werkzeuge zu entwickeln, die unserer Kommunikation den Schutz vor neugierigen Augen geben, und das in einer politischen Situation, in der dieser Schutz immer größeren Anfeindungen ausgesetzt ist, in einer Situation, in der die US-Regierung mit dem Clipper-Chip und Gesetzentwürfen zum digitalen Telefon auf unsere Sorgen und Befürchtungen antwortet.(*) Die Zeit ist gekommen, daß wir alle gemeinsam die Last mit Philip teilen.

(*)
Der Clipper Chip dient der Verschlüsselung von Daten und Telefongesprächen. Er ist so konstruiert, daß Regierungsbehörden in der Lage sind, alle clipper-verschlüsselten Daten zu entschlüsseln. d.Ü.

Philip baut ein Verteidigungsteam auf, um sich auf einen Prozeß vorzubereiten, und er braucht dazu Ihre Hilfe. Der Prozeß wird eine teure Angelegenheit werden, und die Zeit läuft schon. Ich rufe alle - in den USA und anderswo - auf, Philips Verteidigung zu unterstützen und vielleicht einen bahnbrechenden Präzedenzfall zu schaffen. Philips Anwalt in Boulder hat einen Verteidigungsfond eingerichtet. Spenden werden in jeder Form (Scheck, Zahlungsanweisung, telegrafischer Transfer) und in jeder Währung angenommen.

Schecks und Zahlungsanweisungen sollten nicht für Philip Zimmermann ausgestellt werden, sondern für seinen Anwalt, Philip Dubois. Seine Adresse lautet:

Philip Dubois
2305 Broadway
Boulder, CO USA 80304
Tel.: 001-303-444-3885)

Überweisungen können auf folgendes Konto erfolgen:

Bank: VectraBank
Routing #: 107004365
Account #: 0113830
Account Name: "Philip L. Dubois, Attorney Trust Account"

Falls nach Abschluß des Verfahrens Geld übrig bleibt, wird es an die Spender entsprechend ihrem Beitrag zum Fond anteilig zurückgezahlt.

Sie können anonym spenden oder auch namentlich, aber bitte - spenden Sie reichlich. Wenn Sie die Ziele, für die PGP steht, und die Ideen, die seine Entwicklung anregten, bewundern, drücken Sie Ihre Unterstützung durch einen Beitrag zu diesem Fond aus.

Hugh Miller (hmiller@orion.it.luc.edu)

PGP ist ein hoch professionell geschriebenes Programm, das kostenlos ist. Freeware von vergleichbarer Qualität und vergleichbarem Verbreitungsgrad ist sehr selten. Wir möchten deshalb alle Nutzerinnen von PGP auffordern, zu überlegen, was sie für die Registrierung eines Sharewareprogramms vergleichbarer Qualität zahlen würden, oder wieviel Geld sie für ein vergleichbares Produkt, das es nur gegen Geld gibt, zahlen würden. Diesen Betrag sollten sie dann Philips Anwalt überweisen. (Wobei mehr Geld natürlich auch nicht falsch ist.)

(Die Anregung für diese "Bemessungsgrundlage" stand irgendwann mal in /T-NETZ/PGP/ALLGEMEIN. Leider wissen wir nicht mehr, von wem sie stammt.)

Inzwischen gibt es einige Initiativen und Personen, die Sammelüberweisungen anbieten, um die Überweisungskosten niedrig zu halten. Beispielsweise hat der FoeBuD e.V. (Verein zur Förderung des bewegten und unbewegten Datenverkehrs, Marktstraße 18, 33602 Bielefeld) ein Spendenkonto eingerichtet:

FoeBuD e.V.
Sparkasse Bielefeld
Kontonummer 2134187
BLZ 48050161

Die auf diesem Konto eingehenden Gelder werden in regelmäßigen Abständen auf das oben genannte Konto von Philip Dubois, dem Anwalt Philip Zimmermanns, weitergeleitet.

Zusammenfassung PGP verwendet ein System mit öffentlichen Schlüsseln für die Verschlüsselung von E-Mail und von Dateien. Es ermöglicht eine sichere Kommunikation zwischen Personen, die sich nie direkt getroffen haben müssen. Ein abhörsicherer Kanal für den Austausch eines Schlüssels ist nicht erforderlich. PGP bietet viele Möglichkeiten und ist schnell. Es hat eine ausgefeilte Schlüsselverwaltung, bietet digitale Unterschriften, komprimiert die unverschlüsselten Daten und hat eine ergonomische Oberfläche.

Informationen zur Lizensierung von PGP, Distribution, Copyrights, Warenzeichen, Gewährleistungen und Exportbeschränkungen enthält der Abschnitt "Rechtsfragen".

Vorwort zur deutschen Übersetzung
Einsatzgebiete von PGP PGP ist ein Programm für die Verschlüsselung von Nachrichten. Richtig eingesetzt, schließt es die Möglichkeit, per E-Mail oder Diskette versandte Daten ohne Berechtigung zu entschlüsseln, weitgehend aus. Es ist aber kaum dazu geeignet, Daten auf einem Computer in komfortabler und zuverlässiger Weise vor fremdem Zugriff zu schützen. Dies sollte bei der Verwendung von PGP beachtet werden. Für eine genauere Diskussion dieses Themas sei auf den zweiten Teil des Handbuchs verwiesen.

Für MS-DOS gibt es mittlerweile mindestens zwei gute Freeware-Programme für die Verschlüsselung von Daten auf Festplatten und Disketten, SFS und Secure Drive. Secure Drive kommt aus den USA, unterliegt also den US-Exportrestriktionen.

Für Amiga-DOS gibt es die Möglichkeit, das xfh-Filesystem zweckentfremdet zu benutzen und die xpkIDEA.library als Packer einzustellen. Diese verwendet denselben Algorithmus wie PGP.

Übersetzung und Fachbegriffe Bei Übersetzungen ist es häufig schwer zu entscheiden, in welchem Umfang Fachbegriffe eingedeutscht werden sollten. Werden zu viele Begriffe übersetzt, kann das Leser verwirren, denen die englischen Begriffe vertraut sind. Umgekehrt kann ein zu wenig eingedeutschter Text für diejenigen unverständlich bleiben, die die englischen Begriffe nicht kennen. Wir haben uns für eine recht weitgehende Eindeutschung entschieden. Um nicht zuviel Verwirrung zu stiften, folgt eine Liste der Worte, bei denen wir im Zweifel waren, ob eine Übersetzung sinnvoll ist:

batch file Stapeldatei
directory Verzeichnis
environment variable Umgebungsvariable
exit code Beendigungscode
file name extension Namenserweiterung / Suffix
fingerprint Fingerabdruck
grassroot organization politische Basisorganisation
key compromise / revocation cerificate Schlüssel-Rückrufurkunde
key ring Schlüsselbund
message digest Textprüfsumme
pass phrase Mantra
public key ring öffentlicher Schlüsselbund
private key ring geheimer Schlüsselbund
swapfile Auslagerungsdatei

Wir waren uns uneinig über die Verwendung maskuliner und femininer Formen bei Begriffen wie "Anwender" oder "Programmiererin". In dieser Anleitung in der gedruckten Form wird nicht die im Deutschen immer häufiger anzutreffende Schreibweise "AnwenderIn" verwendet, sondern eine Mischung nach dem Zufallsprinzip. In jedem Fall sind beide Geschlechter gemeint.

Begriffsdefinitionen Die Kryptographie hat wie andere Fachgebiete auch ihren eigenen Jargon. Als kleine Lesehilfe soll das folgende Glossar dienen:

Algorithmus: Eine Rechenvorschrift.

Angriff: Der Versuch, verschlüsselte oder anderweitig nicht offen zugängliche Daten zu erhalten, d.h. sie ohne Berechtigung zu lesen oder zu kopieren.

Klartext: Mit Klartext ist im Zusammenhang mit Verschlüsselung von Computerdaten nicht nur Text im Sinne von "für den Menschen lesbar" gemeint, sondern alle nicht verschlüsselten Daten. PGP verschlüsselt einzelne Dateien, so daß "Klartext" in diesem Handbuch und allgemein bei der Benutzung von PGP als "unverschlüsselte Datei" gelesen werden kann.

Kryptoanalyse: Methoden und Verfahren, um chiffrierte Daten ohne vorherige Kenntnis des Schlüssels zu entschlüsseln.

Kryptologie: Die Lehre von der Verschlüsselung.

Kryptographie: Die praktische Anwendung der Kryptologie.

Nachricht: Mit "Nachricht" ist im Rahmen dieses Handbuches eine einzelne - verschlüsselte oder unverschlüsselte - Datei gemeint.

Hinweis: Die Begriffe "geheimer Schlüssel" und "privater Schlüssel" meinen dasselbe.

Wir haben uns Mühe gegeben, Begriffe mit wohldefinierter Bedeutung für PGP eindeutig zu wählen. Formulierungen wie "10 verlorene Bereiche in 8 Bereichen" (dies verlautbarten ältere Versionen des MS-DOS-Programms CHKDSK) haben sich hoffentlich nicht eingeschlichen.

Philip Zimmermann schreibt an einigen Stellen in der ersten Person. Wir haben diese Form beibehalten. Bei Formulierungen wie "Aber ich nehme an, daß IDEA besser als DES ist" ist unter "ich" also Philip Zimmermann zu verstehen. An manchen Stellen haben wir Philip Zimmermanns originalen Text ergänzt. Diese Stellen sind durch Fußnoten oder durch eine kleinere Schrift gekennzeichnet.

Lernvorschlag Hat man einmal verstanden, wie PGP arbeitet, ist der alltägliche Umgang mit dem Programm verhältnismäßig einfach.

Anfänger stehen bei PGP aber häufig vor einem ganzen Berg von Fragen: Wer kann mit dem öffentlichen Schlüssel was anfangen, wozu dient der private Schlüssel, weshalb muß ich beim Unterschreiben ein Mantra angeben usw. Viele dieser Fragen lassen sich durch sorgfältiges Lesen des Handbuches und der FAQs beantworten. Trotzdem können Verständnisprobleme bestehen bleiben. Hier bietet es sich an, ein wenig mit PGP zu "spielen". Weil PGP ein Programm für die Verschlüsselung von Nachrichten ist, sollten Sie beim Ausprobieren auch Nachrichtenversand spielen: Richten Sie mehrere Verzeichnisse auf Ihrer Festplatte ein, die jeweils die Texte und die PGP-Programmdateien einer fiktiven Nutzerin enthalten. Unter MS-DOS beispielsweise:

C:\PGPTST\WILLI
C:\PGPTST\SABINE
C:\PGPTST\OSKAR
C:\PGPTST\HELGA
Erzeugen Sie für alle Personen ein PGP-Schlüsselpaar, tauschen Sie die Schlüssel unter den Personen aus, schreiben Sie z.B. "als Sabine" einen Brief an Willi, verschlüsseln Sie den Brief für Willi, kopieren Sie den verschlüsselten Brief mit dem COPY-Befehl o.ä. in das Verzeichnis von Willi, und entschlüsseln Sie "als Willi" wieder den Brief.

Probieren Sie auch andere Funktionen von PGP aus: Unterschriften unter Schlüssel, Versand einer Nachricht an mehrere Empfänger etc.

Danksagungen Von vielen Leuten bekamen wir Tips und Hilfen für die Übersetzung. In Bielefeld waren das insbesondere Elke, Gerhard und Ingo. Marc Aurel gab einige wichtige Hinweise auf "Fehlleistungen", die uns in der Beta-Version der Übersetzung unterlaufen sind. Radi hat viel Arbeit in das Layout der gedruckten Version des Handbuches gesteckt.

Die Arbeit an der Übersetzung hat uns Spaß gemacht, nicht zuletzt, weil Philip Zimmermanns originaler Text gut lesbar und sehr informativ ist. Wir hoffen, daß die deutsche Version nicht zu hohe Qualitätsverluste aufweist.

Christopher Creutzig (c.creutzig@bionic.zer.de)
Abel Deuring (a.deuring@bionic.zer.de)

Überblick
Allgemeines PGP steht für "Pretty Good(TM) Privacy", zu deutsch etwa "recht gute Privatsphäre", wobei "Pretty Good" auch als Kurzform von "Phil's Pretty Good Software" anzusehen ist, von wo das Programm stammt. Es handelt sich um ein hochsicheres Ver- und Entschlüsselungsprogramm, das für sehr viele verschiedene Rechner und Betriebssysteme existiert, so z.B. auf Amiga, Atari, Macintosh, MS-DOS, Unix, VAX/VMS etc. PGP gestattet den Austausch von Nachrichten ohne Verzicht auf Privatsphäre, Authentifikation und Komfort. Hierbei verstehen wir unter Privatsphäre, daß eine Nachricht nur von den gewünschten Adressaten gelesen werden kann, unter Authentifikation, daß eine Nachricht überprüfbarerweise von der Person stammt, von der sie zu stammen scheint (elektronische Unterschrift), und unter Komfort, daß der Anwender sich keine unnötigen Gedanken darüber machen muß, wo er welche Schlüssel aufbewahrt und welchen Schlüssel er zum Datenaustausch mit wem benutzt, wie dies bei herkömmlicher Verschlüsselungssoftware allzuoft der Fall ist.

Ebenfalls im Gegensatz zu herkömmlicher Verschlüsselungstechnik werden keine abhörsicheren Kanäle gebraucht, durch die Schlüssel ausgetauscht werden, da PGP ein System mit öffentlichen Schlüsseln nutzt. PGP verbindet die Bedienungsfreundlichkeit von RSA(*) mit der Geschwindigkeit konventioneller Kryptographie(**) und verwendet ein Verfahren zur Generierung von Textprüfsummen(***), um elektronische Unterschriften zu erzeugen. Es komprimiert die Daten vor der Verschlüsselung, ist benutzerfreundlich, hat eine komfortable Schlüsselverwaltung und ist portabel. Die Implementierung des RSA-Algorithmus bei PGP arbeitet schneller als die meisten RSA-Implementierungen in anderen Programmen. Sie können von Ihrem PC, der beispielsweise unter MS-DOS läuft, einen Text verschlüsselt an einen Bekannten senden, der diesen auf seinem Amiga entschlüsseln kann. Oder Sie senden einen Text an die Uni, den Sie für wichtig halten und deshalb unterschreiben möchten - kein Problem, wenn die Uni PGP installiert hat, kann die Empfängerin Ihre Unterschrift auch auf einer Unix-Maschine prüfen. Und PGP ist schnell. PGP ist das Kryptographiesystem für jedermann und jedefrau.

(*)
ein Algorithmus für Systeme mit öffentlichen Schlüsseln, der von Rivest, Shamir und Adleman entwickelt wurde und als sehr sicher gilt

(**)
d.h. ohne öffentliche Schlüssel arbeitende Kryptographie

(***)
Bei PGP wird das Verfahren "Message Digest 5" verwendet

PGP versendet seine Dateien nicht selbst, sondern beschäftigt sich ausschließlich mit dem Ver- und Entschlüsseln. Zum Versenden brauchen Sie weitere Programme. (Dieselben wie für nicht verschlüsselte Texte.) (*)

(*)
In sehr viele E-Mail-Programme kann PGP mittlerweile recht komfortabel eingebunden werden. Für Unix finden Sie hierzu näheres im Verzeichnis contrib des PGP- Programmpaketes. Das Datenaustauschformat ZCONNECT(r) ist mittlerweile dahingehend erweitert worden, daß Verschlüsselungsprogramme und insbesondere PGP in kommende Versionen von Pointprogrammen noch besser eingebunden werden können.
Dieses Buch ist in zwei Teile unterteilt: Teil I behandelt allgemeine Fragen zu PGP und dessen Bedienung und sollte von allen Anwendern gelesen werden. Teil II beinhaltet fortgeschrittene Techniken beim Umgang mit PGP und einige Spezialthemen, die für den normalen Anwender eher uninteressant sein dürften.

Warum eigentlich PGP benutzen? PGP schützt die Privatsphäre. Ob Sie nun eine politische Kampagne planen, über Ihr Einkommen reden oder eine Affäre geheimhalten wollen, ob Sie über etwas reden wollen, das Ihrer Meinung nach zu Unrecht illegal ist oder ob Sie Daten speichern, transportieren und versenden müssen, die unter das Datenschutzgesetz fallen (Systembetreuer, die ihre Userdaten über eine Telefonleitung transportieren), ob Sie manchmal Nachrichten schreiben wollen, von denen andere genau wissen sollen, daß sie von Ihnen stammen oder ob Sie eben dies bei Nachrichten von anderen prüfen wollen - die meisten Menschen, die E-Mail nutzen, werden PGP früher oder später verwenden können.

Und wenn Sie sich davor sträuben, Ihre privaten Mails zu verschlüsseln: Warum verwenden Sie eigentlich Briefumschläge? Nehmen wir einmal an, es sei die gängige Ansicht, brave Bürger bräuchten keine Briefumschläge zu verwenden. Wenn nun irgend jemand aus irgendeinem Grund einen Briefumschlag verwenden würde (mehrere Blätter, ein Liebesbrief, den die Mutter des Adressaten nicht lesen soll etc.), dann wäre dies höchst verdächtig. Glücklicherweise verwenden die meisten Menschen Briefumschläge, doch bei elektronischen Briefen ist dies bislang noch nicht der Fall. Dabei sind die elektronischen Datenwege sehr viel leichter zu überwachen (rein technisch) als konventionelle Briefpost, und elektronische Nachrichten können auch sehr schnell auf bestimmte Schlüsselwörter durchsucht werden. Und: Gehen Sie eigentlich regelmäßig zum AIDS-Test? Möchten Sie sich auf illegalen Drogenkonsum untersuchen lassen? Verlangen Sie nicht einen richterlichen Durchsuchungsbefehl, wenn die Polizei bei Ihnen eine Hausdurchsuchung machen will? Haben Sie am Ende etwas zu verbergen? Wahrscheinlich sind Sie ein Drogendealer, ein Falschparker oder ein Subversiver, wenn Sie Briefumschläge benutzen.

Was wäre, wenn es der allgemeinen Auffassung entspräche, rechtschaffene Bürger sollten all ihre Post auf Postkarten schreiben? Wenn ein braver Mensch auf die Idee käme, sein Briefgeheimnis durch einen Umschlag zu schützen, wäre das höchst verdächtig. Sicherheitsbehörden würden vielleicht jeden Briefumschlag öffnen, um zu kontrollieren, was er verbirgt. Glücklicherweise leben wir nicht in so einer Welt - die meisten Menschen verwenden Briefumschläge, so daß ein Briefumschlag auch nichts Verdächtiges ist. Es wäre schön, wenn alle E-Mail verschlüsselt würde, ob sie nun verbotene Nachrichten enthält oder nicht, so daß die Verschlüsselung von E-Mail genauso wenig verdächtig wird wie das Verwenden Briefumschlägen.

Wenn Sicherheitsbehörden das Brief- oder Telefongeheimnis brechen wollen, müssen sie einigen Aufwand treiben. Sie müssen den Umschlag unter Wasserdampf öffnen, den Brief lesen und den Umschlag wieder zukleben. Das Abhören von Telefongesprächen ist sehr zeitintensiv, und auch eine Transskription kostet Zeit. Eine so arbeitsintensive Überwachung kann nicht im großen Stil betrieben werden. Nur in wichtigen Fällen ist sie durchführbar.

Ein immer größerer Teil unserer Privatkommunikation läuft über E-Mail. E-Mail aber läßt sich sehr leicht überwachen. Die Suche nach verdächtigen Schlüsselworten ist kein Problem. Das kann ganz einfach routinemäßig und vollautomatisch in großem Maßstab durchgeführt werden, ohne daß es irgendwie auffällt. Internationale Kommunikationswege werden so von der National Security Agency (NSA) abgehört.

Wir werden bald den "Information Superhighway" haben, der Amerika kreuz und quer mit Glasfaserkabeln überzieht und die allgegenwärtigen PCs verbindet. E-Mail wird allgemeiner Standard werden. Regierungsbehörden werden für die Verschlüsselung unserer Nachrichten ihre eigene Technologie empfehlen. Viele Leute mögen dieser Technologie vertrauen. Aber andere werden es vorziehen, ihre eigene Wahl zu treffen.

Die Gesetzesvorlage 266, die 1991 im US-Senat vorgelegt wurde, enthält ein paar beunruhigende Regelungen. Wäre der Entwurf verabschiedet worden, wären die Hersteller von abhörsicherer Kommunikationstechnik verpflichtet gewesen, in ihre Produkte "Falltüren" einzubauen, mit deren Hilfe die Regierung sämtliche Verschlüsselungen hätte knacken können. Im Wortlaut: "Der Senat ist der Ansicht, daß die Anbieter elektronischer Kommunikation und die Hersteller elektronischer Kommunikationsgeräte sicherstellen müssen, daß die Regierung Zugriff auf die entschlüsselte Sprachübertragung, Daten- und andere Kommunikation hat, sofern hierfür eine Gesetzesgrundlage vorhanden ist." Diese Vorlage wurde nach heftigen Protesten von Bürgerrechtsgruppen und Industrieverbänden zurückgezogen.

1992 legte das FBI dem Kongreß einen Gesetzentwurf zum Abhören von Telefonen vor. Dieses Gesetz sollte alle Hersteller von Kommunikationsgeräten verpflichten, Vorrichtungen in die Geräte einzubauen, die es jeder FBI-Dienststelle ermöglichen, elektronische Kommunikation abzuhören. Obwohl auch diese Vorlage im Kongreß kaum auf Resonanz stieß, wurde sie 1993 erneut vorgelegt.

Besonders besorgniserregend ist ein neuer Vorstoß des Weißen Hauses, der von der National Security Agency (NSA) jahrelang vorbereitet und am 16. April 1993 veröffentlicht wurde. Kernstück ist eine von staatlicher Seite entworfene Verschlüsselungstechnologie namens Clipper, die nach einem geheimgehaltenen Verfahren arbeitet. Die Regierung fordert die Komunikationsindustrie auf, diesen Chip in alle Geräte einzubauen, die "sichere" Kommunikation ermöglichen sollen, wie Telefone, Faxgeräte usw. AT&T baut diesen Chip schon jetzt in "abhörsichere" Telefone ein.

AT&T hatte zuvor ein wahrscheinlich sichereres Verfahren entwickelt, das auf "sanften" Druck von staatlicher Seite fallengelassen wurde. d.Ü.

Der Haken bei Clipper: Bei der Herstellung bekommt jeder Chip seinen individuellen Schlüssel, und die Regierung erhält Kopien dieser Schlüssel, um abhören zu können. Aber keine Sorge - die Regierung verspricht, daß diese "Zweitschlüssel" nur ordnungsgemäß entsprechend den rechtlichen Bestimmungen eingesetzt werden. Damit Clipper für die Behörden den vollen Nutzen entfalten kann, wäre der nächste logische Schritt ein Verbot anderer Formen von Kryptographie. Nach offiziellen Statements ist das allerdings nicht geplant.

Wenn Privatsphäre zum Gesetzesbruch wird, werden nur Gesetzesbrecher Privatsphäre genießen können. Geheimdienste, Militär, Drogenkartelle, große Wirtschaftsunternehmen, sie alle haben gute Kryptographiesysteme. Nur normale Menschen und politische Basisorganisationen sind davon ausgenommen - waren davon ausgenommen, denn nun gibt es PGP.

Das ist der Grund, warum PGP geschrieben wurde, und das ist auch der Grund, warum Sie PGP nutzen sollten.

Die Funktionsweise von PGP Das Ganze ist natürlich leichter zu verstehen, wenn Sie bereits etwas von Verschlüsselungssystemen im allgemeinen und asymmetrischen Verfahren ("public-key-Systemen") im besonderen verstehen. Da dies nicht vorausgesetzt werden kann, nun eine kleine Einführung:

Zunächst sollten einige Begriffe geklärt werden. Nehmen wir einmal an, ich möchte Ihnen eine Nachricht schreiben, die sonst niemand lesen können soll. Hierzu kann ich die Nachricht "verschlüsseln" oder "codieren"(*), das heißt, ich verändere sie nach einem hoffnungslos komplizierten System, so daß niemand etwas damit anfangen kann, ausgenommen Sie, der beabsichtigte Empfänger der Nachricht. Ich verwende einen Schlüssel, und Sie müssen diesen Schlüssel ebenfalls benutzen, um die Nachricht zu entschlüsseln. Zumindest bei herkömmlichen symmetrischen, mit einem einzigen Schlüssel arbeitenden Systemen.

(*)
Das Wort "codieren" hat eine Doppelbedeutung: Es beudeutet einerseits "in einer bestimmten Form darstellen" und andererseits "verschlüsseln". In diesem Handbuch wird es meist im Sinne von "verschlüsseln" verwendet.

Daß herkömmliche Systeme einen gemeinsamen Schlüssel zum Ver- und Entschlüsseln benutzen, bedeutet, daß dieser Schlüssel auf einem sicheren Weg zwischen Absenderin und Empfänger ausgetauscht werden muß. Das kann umständlich sein, und wenn ein sicherer Weg existiert, um den Schlüssel auszutauschen, warum wollen Sie dann verschlüsseln? Sie könnten den sicheren Kanal doch auch für die Kommunikation nutzen.

In Systemen mit öffentlichen Schlüsseln (asymmetrische Systeme) gibt es für jeden Teilnehmer ein Schlüsselpaar, bestehend aus einem öffentlichen und einem geheimen Schlüssel. Was mit dem einen Schlüssel verschlüsselt wurde, kann nur mit dem dazugehörigen anderen Schlüssel entschlüsselt werden. Den öffentlichen Schlüssel zu kennen reicht nicht aus, um die damit verschlüsselten Nachrichten lesen zu können. Der geheime Schlüssel läßt sich idealerweise nicht aus dem öffentlichen Schlüssel berechnen. Moderne Verfahren wie die in PGP verwendeten kommen, richtig angewendet, diesem Ideal sehr nahe. Deshalb kann der öffentliche Schlüssel ohne Bedenken verbreitet werden (darum heißt er öffentlich), womit ein sehr viel geringerer Bedarf an sicheren Transportwegen besteht als bei herkömmlichen Systemen.

Weiterhin gibt es die Möglichkeit, eine Nachricht zu "unterschreiben". Hierzu kann der Absender einer Nachricht diese mit seinem privaten Schlüssel codieren, und jeder Empfänger kann die Echtheit des Absenders dadurch prüfen, daß er versucht, die Nachricht mit dessen öffentlichen Schlüssel zu decodieren. Wenn dies gelingt, ist die Nachricht mit dem privaten Schlüssel codiert, also unterschrieben worden. Der Absender ist echt.

Diese beiden Schritte können natürlich miteinander kombiniert werden, um Briefgeheimnis und Authentizität des Absenders zu gewährleisten: Die Nachricht wird zunächst mit dem eigenen privaten Schlüssel codiert und diese unterschriebene Nachricht anschließend mit dem öffentlichen Schlüssel der Empfängerin codiert. Diese decodiert die Nachricht zunächst mit ihrem privaten Schlüssel und anschließend mit dem öffentlichen Schlüssel des Absenders. PGP erledigt dies automatisch.

Da alle bisher bekannten asymmetrischen Algorithmen deutlich langsamer arbeiten als herkömmliche Verschlüsselungsalgorithmen, bietet es sich an, die eigentliche Verschlüsselung mit einem guten und schnellen herkömmlichen System vorzunehmen. PGP generiert für jede Verschlüsselung hierzu einen zufällig ausgewählten Schlüssel, der nur ein einziges Mal verwendet wird, und verschlüsselt hiermit die Nachricht. Anschließend wird dieser Wegwerf-Schlüssel mit dem öffentlichen Schlüssel des Empfängers codiert und in die verschlüsselte Nachricht hineingeschrieben. Der Empfänger kann nun mit Hilfe seines privaten Schlüssels den Einmal-Schlüssel wieder herstellen und die gesamte Nachricht entziffern. Dieser ganze Vorgang ist für den Benutzer nicht sichtbar.

Viele Leute haben sich Gedanken gemacht und mich gefragt, ob die Verwendung eines asymmetrischen Verfahrens die Sicherheit von PGP nicht beeinträchtigt.Wenn der schnellste Weg, um IDEA zu brechen, der ist, alle möglichen Schlüssel zu testen - und danach sieht es aus -, dann ist der Aufwand, um eine IDEA-Verschlüsselung zu brechen, in etwa damit vergleichbar, einen RSA-Schlüssel von 3100 Bit zu faktorisieren. IDEA ist damit nicht als Schwachstelle in PGP anzusehen. Der große Vorteil von asymmetrischen Verfahren wie RSA liegt nicht in der Sicherheit, die sie bieten, sondern in der enormen Vereinfachung der Schlüsselübergabe. Die Verwendung von IDEA für die eigentliche Verschlüsselung schwächt PGP keinesfalls ab.(*)

(*)
Das Verfahren, ein symmetrisches und ein asymmetrisches Verfahren so zu koppeln (Hybridverfahren), ist durchaus üblich. Eine reine RSA-Kodierung würde sogar Sicherheitsprobleme mit sich bringen. Außerdem wäre die Verschlüsselung einer Nachricht an mehrere Empfänger nicht mehr ohne weiteres möglich. d.Ü.

Die Schlüssel werden in sogenannten "key certificates" aufbewahrt, die außer dem Schlüssel selbst noch einen kurzen Text mit Namen und Netzadresse der "Inhaberin" und den Vermerk, wann der Schlüssel erzeugt wurde, enthalten. Der Text mit Namen und Netzadresse wird im folgenden "Benutzer-ID" genannt. "Public key certificates" enthalten die öffentlichen Schlüssel, während "secret key certificates" die privaten Schlüssel beinhalten. Private Schlüssel sind mit einem Mantra geschützt, da sie gestohlen werden könnten. PGP benutzt zwei Dateien, in denen die Schlüssel aufbewahrt werden, eine für die öffentlichen und eine für die privaten. Diese Dateien können Sie mit einem Schlüsselbund vergleichen.

Weiterhin hat jeder Schlüssel eine Kennung, die aus den letzten 64 Bit des Schlüssels besteht, von denen bis zur Version 2.4 nur die letzten 24 Bit angezeigt wurden, z.B. e93239(*). Diese Kennung verwendet PGP intern, um die Schlüssel voneinander zu unterscheiden. Zwei verschiedene Schlüssel können dieselbe Benutzer-ID haben, die Kennung aber ist aller Wahrscheinlichkeit nach stets verschieden.

(*)
Ab Version 2.5 werden die letzten 32 Bit angezeigt, z.B.6ce93239

Um Nachrichten zu unterschreiben, nutzt PGP einen "message digest", eine Methode, um aus einer Nachricht eine 128-Bit-Zahl zu erzeugen, die die Nachricht eindeutig genug bestimmt, damit eine Veränderung oder ein Neuschreiben mit dem Ergebnis eines gleichen Wertes praktisch unmöglich ist. Diese Zahl wird - ähnlich einer CRC-Prüfsumme - dazu verwendet, Veränderungen der Nachricht zu diagnostizieren. Anschließend wird diese 128-Bit-Zahl mit dem privaten Schlüssel codiert. Die verschlüsselte Zahl wird nun zusammen mit der Schlüsselidentifikation und einem Vermerk, wann die Unterschrift gemacht wurde, an die Nachricht angehängt. Die Software des Empfängers sucht im öffentlichen Schlüsselbund nach dem Schlüssel des Absenders und überprüft damit die Unterschrift. Der in PGP verwendete Algorithmus heißt "Message Digest 5" (MD5).

Ebenso entschlüsselt die Software der Empfängerin ankommende Nachrichten automatisch. Bei diesen wird an den Anfang der Nachricht ebenfalls die Schlüsselkennung gesetzt. PGP sucht in der Datei mit privaten Schlüsseln nach dem passenden Schlüssel und entschlüsselt automatisch die Nachricht.

PGP installieren und bedienen
Die Installation Die MS-DOS-Version von PGP 2.6[ui] ist in einer komprimierten Archiv-Datei namens pgp26mit.zip oder pgp26ui.zip enthalten. (Künftige Versionen von PGP werden Namen in der Form pgpxy.zip haben, wobei xy für die Versionsnummer x.y steht.) Diese Archivdatei kann mit dem MS-DOS Sharewareprogramm PKUNZIP ausgepackt werden oder unter Unix mit dem Kommando unzip. Zu dem Programmpaket gehört eine Datei namens readme.doc, die man auf jeden Fall vor der Installation von PGP lesen sollte. Diese Datei enthält die aktuellsten Informationen darüber, was in der jeweiligen Version von PGP neu ist, und Informationen über die anderen Dateien des Programmpakets. Details zur Installation auf verschiedenen Rechnern und Betriebssystemen stehen in der Datei setup.doc.

Wenn bereits PGP 1.0 installiert ist, sollte diese Version gelöscht werden, weil sie von niemandem mehr verwendet wird. Wer die alte Version trotzdem behalten möchte, sollte die Programmdatei in pgp1.exe umbenennen, um Namenskonflikte mit der neuen Version zu vermeiden.(*)

(*)
Version 1.0 ist nicht kompatibel mit Version 2.x. Beispielsweise müssen neue Schlüssel erzeugt werden. Näheres hierzu steht in pgpdoc2.doc. d.Ü.

Für die Installation unter MS-DOS wird pgpxy.zip einfach in ein geeignetes Verzeichnis auf der Festplatte kopiert (z.B. c:\pgp) und mit pkunzip ausgepackt. Für eine bequem nutzbare Installation sollte auch die autoexec.bat geändert werden. Näheres hierzu steht weiter hinten in dieser Anleitung.(*) Dies kann aber auch später erfolgen, wenn man ein wenig mit PGP gespielt und dieses Handbuch durchgelesen hat.

(*)
Matthias Jordan hat ein Programm namens XP-PGP geschrieben, das die Installation und Einbindung in das Programm CrossPoint von Peter Mandrella übernimmt. d.Ü.

Der deutsche Sprachkit, bestehend aus dem Handbuch, den Dateien config.txt, language.txt, de.hlp, readme.de und setup.de, befinden sich in einer Datei namens pgp23de.zip. Der Sprachkit sollte nach dem eigentlichen Programmpaket installiert werden, damit die Dateien language.txt und config.txt in ihrer deutschen Version auf der Festplatte vorhanden sind. Die Dateien readme.de und setup.de sind nicht immer auf demselben Stand wie ihre englischen Äquivalente, weil wir als Übersetzer nicht bei jeder Änderung eine aktuelle Version der englischen Originale readme.doc und setup.doc zugeschickt bekommen. Dehalb ist es ratsam, neben den deutschen Dateien auch die englischen durchzulesen.

Der erste Schritt nach der Installation (und dem Lesen dieses Handbuches) ist die Generierung eines Schlüsselpaares mit dem Befehl

pgp -kg

Die Installation unter Unix und VAX/VMS unterscheidet sich kaum von der MS-DOS-Installation, jedoch muß möglicherweise der Quellcode neu compiliert werden. Hierfür ist ein Unix-Makefile dem Quellcode beigefügt.

Genaueres zur Installation steht in der Datei setup.doc. Dort ist im einzelnen beschrieben, was im PGP-Verzeichnis stehen muß, was in die autoexec.bat einzutragen ist und wie PKUNZIP benutzt wird.

Bedienung von PGP
Kurzanleitung am Bildschirm Mit dem Kommando

pgp -h

gibt PGP einen "Kurzüberblick" über die möglichen Befehle.

Abhängig davon, ob eine Datei namens pgp.hlp vorhanden ist oder nicht, wird der Befehl unterschiedlich ausgeführt. Ist pgp.hlp nicht vorhanden, erscheint eine etwa 15 Zeilen umfassende "Superkurzanleitung" am Bildschirm. Wenn die Datei pgp.hlp vorhanden ist, wird ihr Inhalt am Bildschirm angezeigt. Im Text kann mit den Tasten LEERTASTE, RETURN und B geblättert werden. Mit Q wird das Programm beendet.

Falls die Datei de.hlp vorhanden und in der Datei config.txt der Eintrag language=de enthalten ist, wird der Hilfstext auf deutsch angezeigt. Details zu config.txt enthält der zweite Teil des Handbuchs. Die hier angegebenen Tasten gelten natürlich nur, wenn in der config.txt kein spezielles Anzeigeprogramm eingestellt wurde. d.Ü.

Verschlüsseln einer Nachricht Das Verschlüsseln einer Nachricht mit dem öffentlichen Schlüssel der Empfängerin geschieht mit folgendem Befehl:

pgp -e textdatei Benutzer-ID

Dieser Befehl erzeugt eine Datei namens textdatei.pgp, die den verschlüsselten Text enthält. Beispiel:

pgp -e brief.txt Alice

oder

pgp -e brief.txt "Alice S"

Im ersten Beispiel durchsucht PGP den Bund mit den öffentlichen Schlüsseln nach einer ID, die das Wort "Alice" enthält. Im zweiten Beispiel wird nach IDs gesucht, die "Alice S" enthalten. Leerstellen in der ID-Angabe können nur benutzt werden, wenn die Angabe für die ID in Anführungszeichen eingeschlossen wird. Bei der Suche wird nicht zwischen Groß- und Kleinbuchstaben unterschieden. Wenn PGP eine passende ID findet, wird deren Schlüssel für das Chiffrieren der Datei brief.txt verwendet. Die Datei mit dem verschlüsselten Text heißt brief.pgp.

PGP versucht, die Datei mit dem Klartext zu komprimieren, bevor es sie verschlüsselt. Dies erhöht erheblich den Schutz gegen eine Kryptoanalyse. Außerdem ist die verschlüsselte Datei in der Regel kleiner als die originale Klartextdatei.

Wenn die verschlüsselte Datei per E-Mail versandt werden soll, kann es sinnvoll sein, sie in druckbaren ASCII-Zeichen im Radix-64-Format darzustellen. Dies ist möglich durch Hinzufügen der Option -a.

Verschlüsseln einer Nachricht für mehrere Empfänger Wenn dieselbe Nachricht an mehrere Empfängerinnen verschickt werden soll, kann sie so verschlüsselt werden, daß alle Empfängerinnen dieselbe verschlüsselte Nachricht entschlüsseln können. Beim Verschlüsseln kann man hierfür mehrere Benutzerinnen-IDs angeben. Beispiel:

pgp -e brief.txt Alice Bob Carol

Die durch dieses Kommando erzeugte Datei letter.pgp kann sowohl von Alice als auch von Bob und Carol entschlüsselt werden. Es können beliebig viele Empfänger angegeben werden.

Unterschreiben einer Nachricht Der folgende Befehl unterschreibt eine Datei mit dem geheimen Schlüssel:

pgp -s textdatei [-u Benutzer-ID]

Die eckigen Klammern kennzeichnen jeweils eine Eingabe, die nicht unbedingt erforderlich ist; die Klammern selbst dürfen nicht mit eingegeben werden.

Der obige Befehl erzeugt eine Datei namens textdatei.pgp.

Beispiel:

pgp -s brief.txt -u Bob

Hier sucht PGP in dem Schlüsselbund secring.pgp nach einer ID, in der die Zeichenfolge "Bob" vorkommt. Groß- und Kleinbuchstaben werden bei der Suche nicht unterschieden. Wenn PGP einen geheimen Schlüssel mit passender ID findet, wird dieser Schlüssel für die Unterschrift verwendet. Die Datei, die den Text mit der Unterschrift enthält, heißt brief.pgp.

Wird -u Benutzer-ID nicht angegeben, dann verwendet PGP den ersten Schlüssel aus secring.pgp für die Unterschrift.(*)

(*)
In der Regel wird secring.pgp nur einen einzigen geheimen Schlüssel enthalten, so daß -u Benutzer-ID nicht angegeben werden muß. Weiterhin besteht die Möglichkeit, bei Verwendung mehrerer Schlüssel den als Standard zu verwendenden Schlüssel in der Datei config.txt anzugeben. d.Ü.

Unterschreiben und Verschlüsseln Der folgende Befehl unterschreibt zuerst die Klartextdatei mit dem geheimen Schlüssel der Absenderin und verschlüsselt dann die Daten mit dem öffentlichen Schlüssel der Empfängerin:

pgp -es textdatei Empfängerin-ID [-u Benutzer-ID]

Die mit dem obigen Befehl erzeugte Datei, die den unterschriebenen und anschließend verschlüsselten Text enthält, erhält den Namen textdatei.pgp. Der für die Unterschrift verwendete geheime Schlüssel wird automatisch in secring.pgp mit Hilfe der Benutzer-ID herausgesucht. Der öffentliche Schlüssel der Empfängerin wird aus pubring.pgp herausgesucht. Wenn in der Befehlszeile keine Empfänger-ID angegeben wird, fragt PGP nach.

Wird die Benutzer-ID nicht angegeben, verwendet PGP den ersten geheimen Schlüssel aus secring.pgp für die Unterschrift. Ebenso wie beim Parameter -e allein versucht PGP auch hier, den Klartext zu komprimieren.

Wenn die verschlüsselte Datei per E-Mail versendet werden soll, kann es sinnvoll sein, sie in druckbaren ASCII-Zeichen im Radix-64-Format darzustellen. Dies ist möglich durch Hinzufügen der Option -a.

Mehrere Empfängerinnen können durch einfaches Hinzufügen ihrer IDs in der Befehlszeile angegeben werden.

Konventionelle Verschlüsselung Manchmal kann es vorkommen, daß man eine Datei nach einer herkömmlichen Methode mit einem einzelnen Schlüssel verschlüsseln möchte. Sinnvoll ist das beispielsweise für die Verschlüsselung einer Archivkopie von Daten, die einfach nur gespeichert, aber nicht an andere Leute verschickt werden soll. Der Befehl hierfür lautet:

pgp -c textdatei

Der Inhalt der Datei mit dem Namen textdatei wird verschlüsselt und in eine Datei mit dem Namen textdatei.pgp geschrieben. öffentliche Schlüssel, Schlüsselbunde, Benutzer-IDs usw. werden nicht verwendet. PGP fragt bei obigem Befehl nach einem Mantra, mit dem die Datei verschlüsselt werden soll. Dieses Mantra braucht nicht dasselbe zu sein, mit dem der geheime Schlüssel gesichert ist, und es sollte auch nicht dasselbe sein. PGP versucht, die Daten vor der Verschlüsselung zu komprimieren.

Entschlüsselung und Prüfung der Unterschrift Mit folgendem Befehl wird eine verschlüsselte Datei entschlüsselt und/oder eine Unterschrift geprüft:

pgp verschlüsselte_datei [-o klartext_datei]

Die [eckigen Klammern] kennzeichnen eine Eingabe, die nicht unbedingt erforderlich ist; die Klammern selbst dürfen nicht mit eingegeben werden.

PGP geht davon aus, daß das Suffix des Namens von verschlüsselte_datei .pgp ist. Der optionale Parameter klartext_datei gibt an, in welcher Datei die entschlüsselten Daten gespeichert werden sollen. Fehlt diese Angabe, wird der Name von verschlüsselte_datei ohne Suffix für die Klartextdatei verwendet. Falls verschlüsselte_datei eine Unterschrift enthält, wird sie automatisch geprüft. Die Benutzer-ID der Unterschreibenden wird am Bildschirm angezeigt.

PGP bearbeitet verschlüsselte_datei vollautomatisch. Die Datei kann sowohl nur verschlüsselt als auch nur unterschrieben oder auch unterschrieben und verschlüsselt sein. PGP verwendet die in verschlüsselte_datei gespeicherte Schlüssel-ID, um aus dem Bund mit den geheimen Schlüsseln denjenigen herauszusuchen, für den verschlüsselte_datei verschlüsselt wurde. Falls verschlüsselte_datei eine Unterschrift enthält, verwendet PGP die zusammen mit der Unterschrift gespeicherte Schlüssel-ID, um aus dem Bund mit öffentlichen Schlüsseln denjenigen herauszusuchen, mit dem die Unterschrift geprüft werden kann. Falls all diese Schlüssel vorhanden sind, ist während der Entschlüsselung keine weitere Eingabe erforderlich, ausgenommen das Mantra, mit dem der geheime Schlüssel gesichert ist.

Falls verschlüsselte_datei konventionell verschlüsselt wurde (also mit der Option -c), fragt PGP bei der Entschlüsselung nach dem Mantra, mit dem die Datei verschlüsselt wurde.

Der Umgang mit Schlüsseln Schon zu Zeiten von Julius Cäsar war der Umgang mit Schlüsseln die delikateste Angelegenheit der Kryptographie. Einer der größten Vorteile von PGP ist die hochentwickelte Schlüsselverwaltung.

Einen RSA-Schlüssel generieren Um Ihr eigenes Schlüsselpaar zu erzeugen, geben Sie folgenden Befehl ein:

pgp -kg

Nach der Eingabe dieses Befehls fragt PGP nach der Schlüsselgröße. PGP bietet einige mögliche Schlüsselgrößen als Auswahlmöglichkeiten an, 384 Bit "für den Hausgebrauch", 512 Bit "für normale Anwendungen" oder 1024 Bit "für militärische Sicherheit".

Die Werte für die Schlüsselgrößen sind allerdings nur als Anhaltspunkte anzusehen. Sie können auch direkt eingeben, welche Größe Ihr Schlüssel haben soll. Je größer der Schlüssel ist, desto sicherer ist die Verschlüsselung, aber auch umso langsamer. Die meisten Anwender verwenden 1024 oder 512 Bit.

Mit einigen Versionen können Sie Schlüssel mit mehr als 1024 Bit erzeugen. Diese sollten Sie jedoch nicht verwenden. da sie von einigen Systemen nicht verarbeitet werden können. Die Version 2.6MIT läßt ebenfalls nur Schlüssel mit maximal 1024 Bit zu.

Anschließend möchte PGP eine User-ID wissen, d.h. einen Namen, der angibt, zu wem der Schlüssel eigentlich gehören soll. Vorzugsweise sollte der gesamte Name verwendet werden, da so weniger Verwechslungsmöglichkeiten entstehen. Eingebürgert hat sich die Methode, hinter dem Realnamen in eine E-Mail-Adresse anzugeben, also z.B.:

Patrick Lenz

Sollten Sie keine E-Mail-Adresse haben, verwenden Sie irgend etwas anderes, was sicherstellt, daß die angegebene ID einmalig ist, beispielsweise Ihre Telefonnummer.

Nun fragt PGP Sie nach einem Mantra, mit dem Ihr privater Schlüssel geschützt werden soll. Hierbei handelt es sich um die größere Ausgabe eines Passwortes, die beliebig lang sein darf. Ohne dieses Mantra ist Ihr privater Schlüssel praktisch wertlos. Dieses Mantra dürfen Sie auf keinen Fall vergessen, sonst haben Sie keine Möglichkeit, wieder an Ihren privaten Schlüssel zu kommen.

Außerdem gilt das Übliche: Das Mantra nicht aufschreiben, kein kurzes oder anderweitig leicht zu ratendes Mantra verwenden ("Alea iacta est" wäre viel zu simpel, auch "Ich liebe Moni!" sollte nicht verwendet werden), und das Mantra nicht über ein Netzwerk eintippen. Normalerweise erscheint das Mantra nie am Bildschirm, es sei denn, die Konfiguration wurde entsprechend geändert.

PGP unterscheidet beim Mantra zwischen Groß- und Kleinschreibung. Neben Buchstaben kann das Mantra auch Ziffern, Satzzeichen usw. enthalten. Sollten Sie es tatsächlich vorziehen, kein Mantra zu verwenden, drücken Sie einfach RETURN. Das halte ich aber für eine sehr schlechte Idee.

Um das Schlüsselpaar zu erzeugen, braucht PGP große, wirklich zufällige Zufallszahlen. Diese werden nun abgeleitet aus den Zeitabständen zwischen einigen Tastendrücken, um die Sie gebeten werden. Tippen Sie einfach ein wenig Zufallstext in ständig wechselnder Geschwindigkeit. PGP sagt Ihnen, wieviel Sie tippen müssen.

Anschließend können Sie erst einmal Kaffeetrinken gehen, die Schlüsselerzeugung ist ein langsamer Prozeß. Aber sie wird ja nur einmal ausgeführt.

Die frisch erzeugten Schlüssel kommen in die Bunde mit öffentlichen bzw. geheimen Schlüsseln. Von dort aus kann der öffentliche Schlüssel später (mit der Option -kx) in eine eigene Datei kopiert werden, die Sie dann weitergeben können. So können Ihre Freunde und Bekannten Ihren öffentlichen Schlüssel zu ihren Dateien hinzufügen.

Den privaten Schlüssel sollten Sie natürlich niemals weitergeben. Auch sollten Sie darauf achten, Ihr Schlüsselpaar selbst zu erzeugen und keine Schlüssel für Freunde zu erstellen. Der private Schlüssel sollte nicht auf einem Rechner liegen, der für andere Benutzerinnen zugänglich ist, auch wenn er durch ein Mantra geschützt ist.

Einen Schlüssel in den Schlüsselbund aufnehmen Um einen öffentlichen Schlüssel in den eigenen Bund mit öffentlichen Schlüsseln aufzunehmen, benutzen Sie folgenden Aufruf:

pgp -ka Datei [Schlüsselbund]

Die [eckigen Klammern] kennzeichnen eine Eingabe, die nicht unbedingt erforderlich ist; die Klammern selbst dürfen nicht mit eingegeben werden.

Ohne Angabe wird pubring.pgp bei öffentlichen bzw. secring.pgp bei privaten Schlüsseln verwendet.

Datei ist diejenige Datei, die den oder die neuen Schlüssel enthält, Schlüsselbund die Datei, die den öffentlichen Schlüsselbund enthält.

Wird PGP mit diesem Befehl aufgerufen, dann prüft es zunächst, ob der Schlüssel schon bekannt ist. In diesem Fall wird er nicht ein weiteres Mal eingebunden, sondern auf neue Unterschriften und/oder Benutzer-IDs untersucht, die gegebenenfalls in den Schlüsselbund aufgenommen werden. PGP durchsucht die komplette Datei und bearbeitet alle darin enthaltenen Schlüssel auf diese Art und Weise. Was unterschriebene Schlüssel sind, wird weiter unten erläutert.

Einen Schlüssel oder eine Benutzer-ID aus dem Schlüsselbund entfernen Der Befehl hierfür lautet

pgp -kr Benutzer-ID [Schlüsselbund]

Wird ein Schlüssel gefunden, der zu der angegebenen ID paßt, fragt PGP, ob Sie diesen entfernen möchten, bzw. wenn der Schlüsel mehrere IDs hat, ob Sie ihn ganz entfernen möchten oder nur die eine oder andere ID. Geben Sie keine Schlüsseldatei an, verwendet PGP pubring.pgp.(*)

(*)
Sie müssen nicht die vollständige Benutzer-ID angeben. Es genügt bereits ein kurzer Textauszug aus der ID, z.B. der Nachname. Dies gilt übrigens für alle Befehle, bei denen die Benutzer-ID anzugeben ist, mit Ausnahme der Eingabe einer neuen ID bei der Schlüsselgenerierung und dem Ändern der ID (pgp -kg und pgp -ke). d.Ü.

Inhaltsangabe des Schlüsselbunds Diese erhalten Sie mit dem Befehl

pgp -kv[v] [Benutzer-ID] [Schlüsselbund]

Geben Sie eine Benutzer-ID an, werden alle Schlüssel aufgelistet, die den angegebenen Text enthalten, ansonsten alle Schlüssel der Datei (siehe Abb. 1). Geben Sie keinen Schlüsselbund an, wird pubring.pgp verwendet. Verwenden Sie die Option -kvv, werden zusätzlich zu den Schlüsseln alle Unterschriften ausgegeben.

Einen Schlüssel in eine eigene Datei kopieren Um einen Schlüssel in eine eigene Datei zu kopieren (die Sie beispielsweise weitergeben können), verwenden Sie den Befehl

pgp -kx Benutzer-ID [Zieldatei] [Schlüsselbund]

Wird die Angabe der Zieldatei weggelassen, fragt PGP, wohin Sie den Schlüssel kopieren möchten. Bei dieser Operation bleibt der Schlüsselbund vollständig, der Schlüssel wird nur kopiert.

Ist der Schlüssel unterschrieben, dann werden die Unterschriften ebenfalls mitkopiert. Wollen Sie den Schlüssel als Text verschicken (beispielsweise im Internet, Mausnetz oder Bitnet oder auch als "Anhängsel" an eine Nachricht), benutzen Sie den Befehl

pgp -kxa Benutzer-ID [Zieldatei] [Schlüsselbund]

Öffentliche Schlüssel vor Manipulation schützen PGP bietet ein Verschlüsselungssystem, das mit öffentlichen Schlüsseln arbeitet. Diese brauchen nicht vor Entdeckung geschützt zu werden. Im Gegenteil, je weiter sie verbreitet sind, desto besser. Andererseits ist es sehr wichtig, bei öffentlichen Schlüsseln sicherzugehen, von wem sie stammen. Hier liegt wahrscheinlich die größte Schwachstelle eines jeden Systems mit öffentlichen Schlüsseln. Lassen Sie uns ein kleines Desaster basteln und anschließend klären, wie sich derartige Situationen mit PGP vermeiden lassen.

Eine dumme Situation

Nehmen wir an, Sie wollen Alice eine eher private Nachricht schicken. Dazu holen Sie sich aus einer öffentlichen Quelle Alices öffentlichen Schlüssel, verschlüsseln die Nachricht damit und senden sie über eine oder mehrere MailBoxen an Alice.

So weit, so gut, aber leider hat, was keiner wußte, Charlie eine Möglichkeit gefunden, um sich selbst auf dem Weg einzuhängen. (Das ist nicht weiter schwierig.) Charlie hat also eine Möglichkeit, den gesamten E-Mail-Verkehr von und zu Alice abzufangen, zu verändern oder einfach mitzulesen. Er ersetzt den von Alice veröffentlichten Schlüssel durch einen öffentlichen Schlüssel, den er selbst erzeugt hat. Da dieser Schlüssel natürlich die ID von Alice trägt, verwenden Sie ihn, Charlie fängt die Nachricht ab, liest sie und schickt sie dann entweder - mit Alices wirklichem öffentlichen Schlüssel codiert - weiter, verändert sie eventuell zwischendurch, oder schickt sie überhaupt nicht weiter. Da er den privaten Schlüssel für den Schlüssel hat, von dem Sie glauben, er sei Alices, kann er dies tun. Alice erhielt natürlich ebenfalls einen falschen Schlüssel, als sie Ihren erhalten wollte, so daß auch das Unterschreiben von Nachrichten ohne Probleme zu fälschen ist.

PGPs Ausweg

Es gibt nur einen Ausweg aus diesem Dilemma: öffentliche Schlüssel müssen vor derartigen Angriffen geschützt werden. Wenn Alice Ihnen ihren öffentlichen Schlüssel direkt in die Hand gedrückt hat, stellt das kein Problem dar, aber wenn Sie in der Schweiz wohnen und Alice in Norwegen, kann das etwas problematisch sein.

Vielleicht kennen Sie aber jemanden, dem Sie vertrauen und der zufällig gerade nach Norwegen in Urlaub fährt. Diesem netten Menschen könnten Sie dann ja Ihren öffentlichen Schlüssel mitgeben, und er würde Ihnen den von Alice bringen. Falls Alice den Menschen nicht zufällig ebenfalls gut kennt, kann sie zwar immer noch nicht sicher sein, daß der Schlüssel, den sie hat, von Ihnen ist, aber Sie können relativ sicher sein.

Nun ist es aber eher unpraktisch, zu allen E-Mail-Bekanntschaften Freunde hinzuschicken oder selber hinzufahren, um Schlüssel auszutauschen. Daher bietet PGP die Möglichkeit, Schlüssel/Benutzer-Zuordnungen zu unterschreiben. Nehmen wir an, Sie kennen außer Alice auch noch deren Halbbruder David. David hat Sie letzten Sommer besucht und bei der Gelegenheit seinen öffentlichen Schlüssel dagelassen. Unterschreibt David nun den öffentlichen Schlüssel von Alice, können Sie - wenn Sie ihm nicht zutrauen, daß er einen falschen oder zweifelhaften Schlüssel unterschreiben würde - davon ausgehen, daß der Schlüssel authentisch ist.

David würde also Alices öffentlichen Schlüssel unterschreiben, und Alice könnte diesen unterschriebenen Schlüssel versenden. Charlie kann zwar den Schlüssel abfangen und durch seinen eigenen ersetzen, er kann aber nicht Davids Unterschrift unter diesen Schlüssel setzen. Auch wenn er einen von David signierten Schlüssel hat, den David ihm unterschrieben hat, nützt ihm das nichts, da eine Unterschrift immer eine Zuordnung von ID und Schlüssel bestätigt.

Es wäre sogar möglich, daß eine weithin bekannte und allgemein als vertrauenswürdig eingestufte Person sich darauf spezialisiert, derartige Unterschriften zu leisten.(*) Diese Person könnte also als Keyserver oder "Beglaubigungsstelle" arbeiten. Jeder, der sich an diesem Konzept beteiligen möchte, braucht nur den öffentlichen Schlüssel dieser Instanz (der natürlich auf extrem vertrauenswürdigen Kanälen zu ihm kommen muß) zu kennen und kann damit alle Unterschriften überprüfen.

(*)
Bei RIPEM ist etwas derartiges von einer Zentralautorität vorgesehen. d.Ü.

Dieses Konzept ist vor allem für große, zentral gesteuerte Einrichtungen, wie Betriebe oder staatliche Verwaltungsapparate interessant. PGP zielt mehr auf ein dezentrales Beglaubigungssystem, in dem jeder Benutzer die Schlüssel derjenigen Leute, die er persönlich kennt oder die er auf Kongressen oder sonstwo trifft (und über deren Identität er sicher ist), unterschreibt. Das spiegelt eher den natürlichen Umgang mit Mitmenschen wider und bietet jedem die Möglichkeit, selbst zu entscheiden, wem er vertraut, wenn es um glaubwürdige Unterschriften geht.

Bitte beachten Sie dieses Konzept!

Auch wenn es unwichtig erscheint: Diese ganze Geschichte ist im Endeffekt die Achillesferse des ganzen Systems. Für vertrauliche Nachrichten (und wenn Sie längere Zeit E-Mail benutzen, werden Sie mit Sicherheit vertrauliche Nachrichten schreiben) sollten Sie niemals einen Schlüssel verwenden, von dem Sie nicht sicher sein können, von wem er stammt.

Von der Echtheit eines Schlüssels können Sie überzeugt sein, wenn Sie ihn direkt von seinem Besitzer bekommen haben, oder wenn er von einer Person unterschrieben ist, der Sie vertrauen, und von der Sie einen Schlüssel haben, der mit Sicherheit echt ist.

Und: Unterschreiben Sie niemals einen Schlüssel, von dem Sie nicht absolut und hundertprozentig sicher sein können, daß er von der Person stammt, deren ID Sie unterzeichnen. Mit der Unterschrift bürgen Sie mit Ihrem guten Namen für die Echtheit des Schlüssels. Unterschreiben Sie keine Schlüssel, weil Sie jemanden gut kennen, der diese Schlüssel unterschrieben hat, sondern nur dann, wenn Sie wirklich selber unabhängig sicher sind und sein können, daß der Schlüssel echt ist. Unterschreiben Sie vorzugsweise nur Schlüssel, die Sie direkt vom Besitzer erhalten haben.(*) Eine Unterschrift unter einen Schlüssel zu setzen, setzt eine viel größere Sicherheit in punkto Eigentümerschaft voraus als das Verwenden eines Schlüssels. Weitere Erläuterungen dazu finden Sie im zweiten Teil dieser Anleitung.

(*)
Eine weitere Möglichkeit der Echtheitskontrolle ist die Überprüfung des Fingerabdrucks eines Schlüssels. Auch diese setzt selbstverständlich voraus, daß die Identität der Schlüsselinhaberin bekannt ist. Weitere Informationen zum Fingerabdruck finden Sie im zweiten Teil des Handbuchs. d.Ü.

Denken Sie auch daran, daß eine Unterschrift unter einem Schlüssel nichts darüber aussagt, wie vertrauenswürdig die Person ist, deren Schlüssel Sie unterschrieben haben, sondern daß die Unterschrift nur dafür bürgt, daß dieser Schlüssel wirklich zu der Person gehört. Einen Schlüssel als echt anzusehen ist eine Sache, dem Besitzer des Schlüssels zu vertrauen, eine andere.

Auch ist Vertrauen nicht unbedingt übertragbar: Ich vertraue einem Freund und bin mir sicher, daß er nicht lügt. Wenn er nun sicher ist, daß der US-Präsident nicht lügt, muß ich nicht notwendigerweise davon ausgehen, daß das stimmt. Wenn ich Davids Unterschrift unter Alices Schlüssel vertraue und David Alices Unterschrift unter Charlies Schlüssel vertraut, brauche ich noch lange nicht Charlies Schlüssel als echt anzusehen.

Daher ist es sinnvoll, unter seinem eigenen Schlüssel einigermaßen viele Unterschriften zu sammeln und den so signierten Schlüssel möglichst öffentlich zu verbreiten. Gute Methoden zum Verbreiten eines Schlüssels sind beispielsweise entsprechende Foren in Computernetzen oder die "public key server" im Internet. Unterschreiben Sie einen Schlüssel, dann sollten Sie diesen mit Unterschrift an den Besitzer schicken.

PGP überwacht selbsttätig, welche Schlüssel in Ihrem Bund ausreichend mit Unterschriften bestätigt sind, die von Leuten geleistet wurden, die Sie als vertrauenswürdig eingestuft haben. Sie müssen PGP nur mitteilen, welche Leute Sie als vertrauenswürdig einstufen. Haben Sie selbst diese Schlüssel unterschrieben und somit für Ihr PGP voll bestätigt, können Sie mit Hilfe einer oder mehrerer Unterschriften unter einem Schlüssel, den Sie neu kriegen, diesen direkt als bestätigt einstufen lassen. Wie gesagt, vollautomatisch. Weitere Informationen zum Unterschreiben fremder Schlüssel finden Sie weiter unten.

Die Schlüssel und andere Leute Stellen Sie sicher, daß niemand außer Ihnen Zugriff auf Ihren Bund mit öffentlichen Schlüsseln hat. Die Überprüfung von Unterschriften hängt davon ab, welche öffentlichen Schlüssel bereits als vertrauenswürdig eingestuft sind. Daher sollten Sie nicht nur auf Ihren privaten Schlüssel aufpassen, sondern auch beim Umgang mit Ihrer privaten Sammlung öffentlicher Schlüssel Vorsicht walten lassen. Das heißt nicht unbedingt, die Datei davor zu schützen, daß sie gefunden werden kann, aber auch das kann Sinn machen. Schließlich geht es niemanden etwas an, wem Sie vertrauen.

Da der eigene öffentliche Schlüssel als Aufhänger aller Vertrauensketten derjenige ist, der am besten geschützt sein muß, bietet PGP die Möglichkeit, diesen mit einer Sicherheitskopie zu vergleichen, die auf einem schreibgeschützten Medium (Diskette mit Schreibschutz, Lochstreifen, CD) gespeichert sein sollte. Für nähere Informationen lesen Sie bitte die Beschreibung des Kommandos pgp -kc im zweiten Teil.

PGP geht normalerweise davon aus, daß Sie Ihre Schlüssel sorgsam verwalten und vor herumstreunenden Kindern und Bösewichten schützen. Wenn jemand an Ihre Schlüsselbunde herankommt und sie manipulieren kann, wird er aller Wahrscheinlichkeit nach dasselbe mit dem PGP-Programm tun können und es so verändern, daß alle Schutzmechanismen wirkungslos sind.

Eine zugegebenermaßen eher umständliche Methode, die Sammlung öffentlicher Schlüssel vor Manipulation zu schützen, ist die, die Schlüsselbunde mit dem eigenen (privaten) Schlüssel zu unterzeichnen. Beispielsweise könnten Sie mit der Option -sb eine abgelöste Unterschrift erzeugen. Leider müßten Sie dann immer noch eine glaubwürdige Kopie Ihres eigenen Schlüssels zur Hand haben, um die Unterschrift prüfen zu können. Dem Schlüssel in der signierten Datei können Sie nicht vertrauen, da ein Mensch, der diesen Schlüssel fälscht, ebensogut eine neue Unterschrift erzeugen kann.

Wie untersucht PGP, welche Schlüssel gültig sind? Vor diesem Kapitel lesen Sie bitte das vorige: "öffentliche Schlüssel vor Manipulation schützen"

PGP überprüft, welche öffentlichen Schlüssel Ihrer Sammlung als gültig eingestuft sind. Dazu müssen Sie PGP mitteilen, welchen Leuten Sie genug Vertrauen entgegenbringen, um ihre Unterschriften als gültige Verifikationen für neue Schlüssel einzustufen. Hiervon ausgehend kann PGP neu hinzukommende Schlüssel direkt auf ihre Gültigkeit hin prüfen. Und natürlich können Sie selbst auch Schlüssel unterschreiben.

PGP verwendet zwei verschiedene Kriterien, um Schlüssel einzustufen, bitte bringen Sie sie nicht durcheinander:

  1. Gehört der Schlüssel wirklich zu der in der ID angegebenen Person?
  2. Ist diese Person glaubwürdig genug, andere Schlüssel zu bestätigen?

Die Antwort auf die erste Frage berechnet PGP, wobei die Antwort auf die zweite Frage für andere Benutzer zu Rate gezogen wird. Die Antwort auf die zweite Frage kann PGP nicht selbständig finden, sondern Sie müssen sie geben. Geben Sie bei Frage 2 für einige ausgewählte Benutzer als Antwort "Ja" oder "Na ja, einigermaßen", dann kann PGP Frage 1 für andere Schlüssel bejahen, die von diesen ausgewählten Benutzern unterschrieben wurden.

Schlüssel, die von vertrauenswürdigen Personen unterschrieben wurden, werden von PGP als echt eingestuft. Um als vertrauenswürdig gelten zu können, muß ein Schlüssel von PGP als echt angesehen werden, also entweder von Ihnen selbst oder anderen vertrauenswürdigen Personen signiert sein.

Sie müssen aber nicht allen Leuten gleichweit vertrauen. PGP bietet die Möglichkeit, verschiedene Stufen des Vertrauens zu vergeben. Ihre Einstufung einer Person in Bezug auf Glaubwürdigkeit sollte nicht nur Ihre Einschätzung der allgemeinen Zuverlässigkeit dieser Person widerspiegeln, sondern auch Ihre Einschätzung darüber, wie gut die Person das Prinzip der Unterschriften verstanden hat und wie ernst sie die damit verbundene Verantwortung nimmt. Sie können einer Person die Vertrauensstufen "ich weiß nicht", "nein", "meistens ja" oder "ja" geben. Diese Information wird mit dem Schlüssel zusammen in Ihrer Sammlung gespeichert, aber wenn sie einen Schlüssel aus Ihrem Schlüsselbund herauskopieren, wird diese Angabe nicht mitkopiert. Ihre private Meinung geht schließlich niemanden etwas an, wenn Sie sie nicht ausdrücklich mitteilen wollen.

Wenn PGP einen Schlüssel auf seine Gültigkeit hin untersucht, betrachtet es die Vertrauenslevel aller Schlüssel, mit denen dieser Schlüssel unterschrieben wurde. Sie können einstellen, wie viele Unterschriften von welcher Glaubwürdigkeit gebraucht werden, um einen Schlüssel zu bestätigen. In der Standardeinstellung hält PGP einen Schlüssel für echt, wenn er von einer mit "ja" eingestellten Unterschrift geziert wird oder wenn er zwei Unterschriften mit der Einstellung "meistens ja" trägt.

Der eigene öffentliche Schlüssel gilt definitionsgemäß als vertrauenswürdig und echt, seine Unterschrift reicht immer aus, um einen Schlüssel als echt zu bestätigen.

Mit der Zeit werden Sie einige Schlüssel sammeln, die Sie als mehr oder weniger vertrauenswürdig einstufen. Andere Leute, die teilweise dieselben Schlüssel haben werden, werden andere Einschätzungen vergeben. Und mit der Zeit werden alle Benutzer ihre Schlüssel mit immer mehr Unterschriften verteilen. Dadurch ist das so gesponnene Vertrauensnetz sehr viel weniger gefährdet, durch eine Stelle zu zerreißen, die schwächer ist, als vorher angenommen.

Dieses dezentrale Konzept ist nicht das einzig mögliche. Es gäbe auch die Möglichkeit, Schlüssel von einer zentralen Instanz unterschreiben zu lassen, und bei einigen verwandten Verfahren wird das auch gemacht, beispielsweise bei Privacy Enhanced Mail (PEM). Dieses Schema basiert auf einer vorgegeben Hierarchie, in der andere Leute festlegen, wem Sie zu vertrauen haben. PGP geht den anderen Weg, bei dem Sie diese Entscheidung selber fällen müssen. PGP ist für Leute, die ihren Fallschirm selber zusammenlegen.

Einen Schlüssel unterschreiben Mit dem folgenden Befehl wird ein Schlüssel unterschrieben:

pgp -ks Benutzer-ID [-u eigene_ID]

Sie sollten eine solche Unterschrift nur leisten, wenn Sie sicher sind, daß Sie den Sinn und die Funktionsweise von Unterschriften unter Schlüsseln verstanden haben. Verstehen Sie diesen Warnhinweis bitte nicht als Arroganz von Leuten, die meinen, immer alles besser zu wissen. Wir haben in Diskussionen in verschiedenen Foren häufig feststellen müssen, daß die Frage, welche Voraussetzungen erfüllt sein müssen, damit man einen Schlüssel unterschreiben kann, das wahrscheinlich schwierigste Thema bei PGP ist. Auf keinen Fall sollten Sie mit Unterschriften unter PGP-Schlüsseln so großzügig sein, wie manche Prominente ihre Autogramme verteilen. Es geht hier nicht um Unterschriften im Sinne von Autogrammen für Sammler, sondern um Unterschriften unter elektronische Dokumente.

Private Schlüssel vor Diebstahl schützen Schützen Sie sowohl Ihren privaten Schlüssel als auch Ihr Mantra sorgfältig. Sollte Ihr privater Schlüssel jemals das Licht der großen, weiten Welt erblicken oder auch nur mit einem Anderen fremdgehen, dann sollten Sie möglichst schnell möglichst vielen Leuten davon erzählen, nach Möglichkeit allen, die den öffentlichen Schlüssel haben. Viel Glück dabei. Möglichst bevor irgend jemand Unsinn damit anstellt, wie z.B. Schlüssel damit zu unterschreiben oder in Ihrem Namen auf Nachrichten zu antworten.

Das erste, was Sie tun sollten, um Ihren Schlüssel zu schützen, ist, den Schlüssel selbst immer unter Kontrolle zu haben. Das heißt, Sie sollten ihn nicht auf einem Computer lassen, wo er dem Zugriff anderer Personen ausgesetzt ist. Wenn Sie keine Möglichkeit dazu haben, weil sie beispielsweise Ihren gesamten E-Mail-Verkehr von einer Unix-Maschine im Büro aus abwickeln, sollten Sie Ihren Schlüssel immer auf einer schreibgeschützten Diskette mit sich tragen und von da aus arbeiten. Vergessen Sie dabei Ihre Sicherheitskopie nicht. Einen privaten Schüssel auf einem solchen System, insbesondere auf einem vernetzten Rechner, aufzubewahren, ist nicht gerade sinnvoll. Und Sie sollten PGP erst recht nicht über ein Netzwerk oder ein Modem benutzen. Es wäre zu einfach, Ihr Mantra mitzuschneiden.

Und was für Passwörter allgemein gilt: Sie sollten Ihr Mantra auf gar keinen Fall irgendwo aufschreiben und am Monitor, unter der Tastatur oder sonst irgendwo an Ihrem Arbeitsplatz, in der Aktentasche oder an welchem Ort auch immer aufbewahren, an den jeder potentielle Eindringling gelangen kann. Das Sicherste ist immer noch, es einfach im Kopf zu behalten.

Und: Bewahren Sie immer eine Sicherheitskopie Ihres privaten Schlüssels auf. Wenn Ihre Festplatte einmal den Geist aufgibt und Sie ohne Ihren secring.pgp dastehen, können Sie die ganze an Sie geschickte Post nicht mehr lesen.

Hier kommen wir bei einem Problem der dezentralen Methode zur Schlüsselverifikation an: Da es keine Zentrale gibt, die Schlüssel bestätigt, gibt es auch keine, die vor unsicher gewordenen, da möglicherweise in fremde Hände gefallenen Schlüsseln, warnt. Sie können nur die Meldung, daß Ihr Schlüssel möglicherweise bekannt wurde, möglichst weit verbreiten und darauf hoffen, daß diese Nachricht auch bei allen Leuten ankommt, die davon erfahren sollten.

Sollte der Fall der Fälle eintreten, sollte also sowohl Ihr privater Schlüssel als auch Ihr Mantra in fremde Hände fallen, dann sollten Sie ein sogenanntes "key compromise certificate" ausstellen. Dies ist eine Urkunde, die besagt, daß Ihr Schlüssel auf keinen Fall mehr verwendet werden darf. Wenn Sie eine solche Urkunde ausstellen wollen, rufen Sie PGP mit der Option -kd und Ihrer eigenen Schlüssel-ID auf. PGP macht dann Ihren öffentlichen Schlüssel unbrauchbar und gibt Ihnen die Möglichkeit, mit pgp -kxa ID die Urkunde in eine Datei zu packen, die Sie an die gesamte Menschheit schicken sollten. Oder zumindest an den Teil, der Ihren Schlüssel haben könnte. Am besten schicken Sie Ihren neuen Schlüssel direkt mit. Siehe auch das nächste Kapitel.

Einen Schlüssel zurückziehen Nehmen wir an, Ihr Schlüssel ist mit dem passenden Mantra in fremde Hände gefallen. Das sollten Sie der ganzen Welt erzählen. Nicht, um bedauert zu werden, sondern damit niemand mehr diesem Schlüssel vertraut. Dafür müssen Sie eine Schlüssel-Rückrufurkunde ausstellen. Der Befehl hierfür lautet:

pgp -kd Ihre-ID

Diese Urkunde trägt dann auch noch Ihre Unterschrift und kann wie zuvor der öffentliche Schlüssel verschickt werden. Natürlich ist der Sicherheitsverlust des Schlüssels nicht der einzig denkbare Grund dafür, ihn zurückzuziehen. In allen Fällen jedoch ist das Vorgehen dasselbe.

Ich habe meinen privaten Schlüssel verloren, was jetzt? Normalerweise lassen sich Schlüssel mit der Option -kd zurückziehen. Da hierbei aber eine Unterschrift nötig ist, kann der Befehl nicht mehr aufgerufen werden, wenn der private Schlüssel verlorengeht. Also, was dann? Sie können Ihren Schlüssel nicht mehr auf dem oben genannten Weg zurückziehen, Sie können aber auch keine mit dem öffentlichen Schlüssel verschlüsselten Nachrichten lesen. Für zukünftige Versionen von PGP ist geplant, auch in diesem Fall einen Mechanismus in Gang setzen zu können, der den Schlüssel mit Hilfe von als glaubwürdig eingestuften Personen unbrauchbar macht, aber wir reden im Moment über das Jetzt. Und da bleibt Ihnen wohl keine andere Möglichkeit als die, alle User zu bitten, Ihren Schlüssel nicht mehr zu verwenden.

Diese Nachricht sollten Sie von denselben Leuten unterschreiben lassen, die auch Ihren Schlüssel signiert haben. Die anderen User können dann Ihren Schlüssel mit dem Befehl

pgp -kd Ihre-ID

abschalten. Hierbei wird allerdings keine Schlüssel-Rückrufurkunde ausgestellt und der Schlüssel kann mit demselben Befehl auch wieder angeschaltet werden.

PGP für Fortgeschrittene Das meiste zu diesem Thema steht in Teil II dieses Handbuchs. Die folgenden Punkte sind aber wichtig genug, um schon hier angesprochen zu werden.

Versand von Nachrichten im Radix-64-Format In vielen E-Mail-Systemen ist nur der Versand von ASCII-Text möglich. Binärdaten, wie die von PGP normalerweise erzeugten verschlüsselten Dateien, können dann nicht versandt werden. PGP kann deshalb bei Bedarf die verschlüsselten Daten im Radix-64-Format darstellen, ähnlich dem Privacy-Enhanced-Mail-Format (PEM) im Internet. Radix-64 stellt binäre Daten ausschließlich unter Verwendung druckbarer 6-Bit-ASCII-Zeichen dar, so daß eine verschlüsselte Nachricht wie gewöhnlicher E-Mail-Text verschickt werden kann. Radix-64 ist also eine Art "Transport-Verpackung", die Schutz vor einer Verstümmelung der Nachricht auf dem Transportweg bietet. Um Übertragungsfehler erkennen zu können, wird der Radix-64-Darstellung eine CRC-Summe hinzugefügt.

Im Radix-64-Format werden jeweils drei Byte durch vier druckbare ASCII-Zeichen dargestellt, so daß die Länge der Datei um etwa 33 Prozent zunimmt. Das sieht zunächst nach einer ziemlich großen Aufblähung der Datei aus, berücksichtigt werden muß aber, daß PGP Klartextdateien häufig um einen größeren Faktor komprimiert, bevor sie verschlüsselt werden.

Für eine Radix-64-Darstellung der verschlüsselten Datei wird einfach die Option a beim Programmaufruf hinzugefügt:

pgp -esa brief.txt Benutzer-ID

Hier wird brief.txt unterschrieben, komprimiert, verschlüsselt und das Ergebnis im Radix-64-Format in eine Datei mit dem Namen brief.asc geschrieben. Diese Datei kann wie gewöhnliche E-Mail im Internet oder jedem anderen E-Mail-Netzwerk verschickt werden. Die Entschlüsselung einer so verschickten Nachricht unterscheidet sich nicht von der Entschlüsselung einer .pgp-Datei:

pgp brief

PGP sucht hier zuerst nach einer Datei namens brief.asc und erst danach nach brief.pgp. PGP erkennt automatisch, daß brief.asc vor der eigentlichen Entschlüsselung erst wieder zurück in Binärdarstellung umgewandelt werden muß.(*)

(*)
Die Amiga-Version sucht leider nicht automatisch nach der Endung .asc, sie muß mit angegeben werden. d.Ü.

Im Internet ist der Versand von Nachrichten mit mehr als 50000 Byte normalerweise nicht möglich. Längere Texte müssen in mehrere Teile gesplittet werden, die einzeln verschickt werden. Wenn beim Verschlüsseln die Option für Darstellung im Radix-64 Format angegeben wurde, schreibt PGP bei einem langen Text die verschlüsselten Daten in mehrere Dateien, deren Namen auf .as1, .as2, .as3 usw. enden. Das PGP der Empfängerin fügt diese automatisch wieder zusammen, wobei beim Aufruf von PGP einfach die erste Datei angegeben wird. Bei der Entschlüsselung ignoriert PGP allen Text aus den Nachrichtenköpfen, der nicht zu den Radix-64-Blöcken gehört.

Möchte man einen öffentlichen Schlüssel im Radix-64-Format verschicken, kann die Option a auch beim Befehl für das Extrahieren des Schlüssels aus der Datei mit öffentlichen Schlüsseln angegeben werden.(*)

(*)
Befehl pgp -kxa d.Ü.

Hat man vergessen, die Option a beim Verschlüsseln einer Nachricht oder beim Extrahieren eines Schlüssels anzugeben, kann man die Binärdatei auch nachträglich in das Radix-64-Format umwandeln, indem man PGP nur mit der Option -a aufruft, ohne Angabe der Option für Verschlüsseln oder Unterschreiben:

pgp -a brief.pgp

Um keine Mißverständnisse aufkommen zu lassen: Dieses "Nacharbeiten" muß mit der bereits verschlüsselten Datei erfolgen, also mit brief.pgp in obigem Beispiel. Falsch wäre die folgende Befehlskombination:

pgp -es brief.txt Benutzer-ID
pgp -a brief.txt

Der erste Befehl erzeugt eine verschlüsselte Datei brief.pgp; der zweite Befehl erzeugt eine Datei brief.asc im Radix-64-Format, jedoch aus der Klartextdatei brief.txt. Daß brief.asc nicht unmittelbar "für das menschliche Auge lesbar" ist, bedeutet nicht, daß die Datei verschlüsselt ist!

Wenn man eine Datei versenden möchte, die zwar unterschrieben, aber nicht verschlüsselt ist, komprimiert PGP normalerweise alle Daten und wandelt sie anschließend gegebenenfalls in das Radix-64-Format. Handelt es sich bei den Daten um einen Text, ist er folglich nicht unmittelbar lesbar. Soll der Text jedoch lesbar bleiben, bietet PGP die Möglichkeit, nur die Unterschrift im Radix-64-Format an den Text anzufügen. Empfängerinnen einer solcher Nachricht brauchen also PGP nicht aufzurufen, um den Text zu lesen. PGP ist hier nur für eine Kontrolle der Unterschrift erforderlich. Näheres hierzu steht im zweiten Teil des Handbuchs bei der Erläuterung des Parameters CLEARSIG im Abschnitt über config.txt.

Die Umgebungsvariable für das PGP-Verzeichnis: PGPPATH PGP benötigt beim Ver- und Entschlüsseln mehrere Dateien, unter anderem die beiden Dateien pubring.pgp und secring.pgp mit öffentlichen und geheimen Schlüsseln, randseed.bin (enthält die Parameter für den Zufallszahlengenerator), config.txt (Konfigurationsdatei) und language.txt (enthält die Textmeldungen von PGP, unter Umständen in mehreren Sprachen). Diese Dateien können (und sollten) in einem eigenen Verzeichnis stehen, beispielsweise c:\pgp. Damit PGP diese Dateien auch dann findet, wenn es aus einem beliebigen anderen Verzeichnis aufgerufen wird, muß die Umgebungsvariable PGPPATH auf das Verzeichnis mit den PGP-Dateien gesetzt werden. Unter MS-DOS geschieht das mit dem Befehl:

SET PGPPATH=C:\PGP

Wenn PGPPATH so gesetzt ist, benutzt PGP die Datei c:\pgp\pubring.pgp als Datei mit den öffentlichen Schlüsseln (vorausgesetzt, Verzeichnis und Datei existieren). Mit einem geeigneten Editor kann unter MS-DOS der Befehl SET PGPPATH= in die Datei autoexec.bat eingetragen werden, so daß PGPPATH automatisch beim Start des Rechners gesetzt wird. Wenn PGPPATH nicht definiert ist, sucht PGP die Dateien im aktuellen Verzeichnis. Das Vorgehen unter Amiga-DOS ist entsprechend: Setenv PGPPATH dh1:pgp/, für eine dauerhafte Einstellung mit anschließendem copy env:PGPPATH envarc:.

Konfigurierbare Parameter: config.txt bzw. pgp.config Die Datei config.txt (MS-DOS/Unix) bzw. pgp.config (Amiga) enthält eine Reihe von Parametern, mit denen PGP den individuellen Bedürfnissen angepaßt werden kann. config.txt bzw. pgp.config stehen in dem Verzeichnis, das in der Umgebungsvariablen PGPPATH angegeben ist.

In config.txt kann beispielsweise eingestellt werden, in welchem Verzeichnis PGP temporäre Dateien speichert, in welcher Sprache PGP seine Meldungen ausgibt, oder wie skeptisch sich PGP bei der Prüfung von Unterschriften unter öffentlichen Schlüsseln verhält.

Näheres über die einstellbaren Parameter steht im zweiten Teil des Handbuchs.

Schwachstellen Es gibt keine Sicherheit ohne Schwachstellen. Auch PGP ist davon nicht ausgenommen und bietet einige Ansatzpunkte, wie der Schutz umgangen werden könnte. Die wichtigsten, an die Sie immer denken sollten: Ihr privater Schlüssel und/oder Ihr geheimes Mantra werden bekannt; jemand verfälscht öffentliche Schlüssel; Sie löschen Ihre Dateien nicht gründlich genug; Viren und Trojanische Pferde, unbefugter Zugriff auf Ihren Rechner, elektromagnetische Ausstrahlungen, Angriffe anderer Nutzer auf Multi-User-Systemen, Überwachung ihres Datenverkehrs und eventuell auch Kryptoanalyse.

Für eine weitergehende Diskussion ziehen Sie bitte den Abschnitt "Angriffsmöglichkeiten" in Teil II des PGP-Handbuches ab zu Rate.

Vertrauen in Placebos und Wundermedikamente? Wenn wir ein Verschlüsselungsprogramm betrachten, stellt sich die Frage: Warum sollte ich diesem Produkt vertrauen? Auch den Quelltext zu untersuchen hilft nicht viel weiter, denn die meisten Menschen kennen sich in den Grundlagen der Kryptographie nicht genug aus, um die Sicherheit zu beurteilen. Und selbst wenn, können sie immer noch nicht sicher sein, daß keine Hintertür eingebaut ist, die sie eventuell übersehen.

In meiner Zeit am College durfte ich eine in dieser Richtung niederschmetternde Erfahrung machen: Ich erfand ein meiner Meinung nach geniales Verschlüsselungssystem. Es funktionierte so, daß ein Zufallszahlengenerator Zahlen ausspuckte, die zu den zu verschlüsselnden Zeichen addiert wurden. Somit wäre eine Häufigkeitsanalyse des entstehenden Textes ausgeschlossen, was ein Knacken des Codes unmöglich machen sollte. Einige Jahre später entdeckte ich eben dieses Schema in einigen Einführungswerken zur Kryptographie. Die Freude wurde jedoch schnell getrübt, als ich erkannte, daß es dort als Beispiel für einen leicht knackbaren Code verwendet wurde. Soviel zu diesem Algorithmus.

Dieses Beispiel zeigt, wie leicht es ist, einer trügerischen Sicherheit zu verfallen, wenn es um einen neuen Verschlüsselungsalgorithmus geht. Auch wenn es die meisten Menschen nicht direkt nachvollziehen können, ist es extrem schwer, ein Schema zur Verschlüsselung zu entwickeln, das einem ernstgemeinten und mit entsprechendem Hintergrund durchgeführten Angriff standhält. Auch viele kommerzielle Produkte bieten - aufgrund der verwendeten Rechenvorschriften - keine ernstzunehmende Sicherheit. Gerade in punkto Sicherheit wird sehr viel minderwertige Ware verkauft.

Stellen Sie sich vor, Sie kaufen ein neues Auto, und eine Woche später sehen Sie die Aufzeichnung eines Crash-Tests, in dem die wunderschönen Sicherheitsgurte einfach reißen. Da kann es besser sein, gar keine Sicherheitsgurte zu haben, da Sie sich ansonsten in falscher Sicherheit wiegen. Dasselbe gilt für Software - wenn Sie sich auf schlechte Software verlassen, um die Vertraulichkeit Ihrer Daten zu gewährleisten, können Sie eine extrem böse Überraschung erleben. Oder - noch schlimmer - eventuell bemerken Sie nicht einmal, daß Ihre Daten von Unbefugten gelesen wurden, bis es zu spät ist.

Aber auch die Verwendung bewährter Algorithmen muß keine Sicherheit bieten, wenn sie nicht konsequent eingesetzt werden. So empfiehlt beispielsweise die Regierung der USA die Verwendung des Federal Data Encryption Standard, DES. Zumindest für kommerzielle Anwendungen - Informationen unter staatlicher Geheimhaltung dürfen damit nicht verschlüsselt werden. Aber das ist ein anderes Thema. Bei DES gibt es verschiedene Stufen von Sicherheit. Die schwächste, von der die Regierung abrät, ist die sogenannte ECB-Verschlüsselung (Electronic Codebook). Besser sind Cipher Feedback (CFB) oder auch Cipher Block Chaining (CBC).

Leider verwenden die meisten kommerziellen Produkte, die auf DES basieren, die ECB-Methode. In Gesprächen, die ich mit einigen Autoren solcher Software führte, stellte sich heraus, daß sie nie etwas von CBC oder CFB gehört haben, nicht einmal von möglichen Schwachstellen des ECB. Dabei sind die Programme, auf die Sie sich am wenigsten verlassen sollten, immer noch die, bei denen der Programmierer verschweigt, wie die Verschlüsselung funktioniert. Um fair zu bleiben, muß ich aber betonen, daß diese Produkte normalerweise nicht von Firmen kommen, die sich auf Kryptographie spezialisiert haben.

Und falls Sie jetzt immer noch der eingebauten Verschlüsselung von WordPerfect, Lotus 1-2-3, MS Excel, Symphony, Quattro Pro, Paradox oder MS Word vertrauen - wenden Sie sich an die Firma AccessData (87 East 600 South, Orem, Utah 84058, USA), dort können Sie für 158 Dollar ein Softwarepaket erhalten, das ebendiese Systeme entschlüsselt.(*) Gekauft wird dieses Programm von Leuten, die ihr Passwort vergessen haben, und von Strafverfolgungsbehörden. Der Autor des Programms, Eric Thompson, sagte übrigens, er habe einige Verzögerungsschleifen eingebaut, damit das Knacken des Passwortes nicht so einfach aussieht wie es ist. Auch die PKZIP-Verschlüsselung ist seiner Aussage nach einfach zu umgehen.

(*)
Ein decw4w.zip, das Word für Windows-Dateien entschlüsselt, ist inzwischen auch frei erhältlich. d.Ü.

Verschlüsselungssoftware läßt sich mit Medikamenten vergleichen. In beiden Fällen kann die Wirksamkeit von größter Bedeutung sein. Ebenso wie Penizillin sieht man es einer Verschlüsselungssoftware nicht an, ob sie gut arbeitet. Jeder kann feststellen, ob sein Textverarbeitungssystem gute Arbeit leistet, aber woran erkennt der durchschnittliche Anwender, ob seine kryptographische Software gut verschlüsselte Dateien liefert? Ein Laie kann den Unterschied zwischen schlecht oder gut verschlüsselten Daten nicht erkennen. Deshalb gibt es auch so eine Vielzahl schlechter Verschlüsselungsprogramme, von denen die meisten Programmierer nicht einmal wissen, wie schlecht ihr eigenes Produkt ist.

Bei Verschlüsselungsprogrammen gibt es viel Kurpfuscherei. Aber im Gegensatz zu den Leuten, die Patentmedizin verhökern, wissen die meisten Programmierer nicht einmal, daß sie Quacksalberei betreiben. Diese Programmierer sind meistens dennoch fähige Leute, aber die wenigsten haben auch nur ein einziges wissenschaftliches Buch über Kryptographie gelesen. Trotzdem glauben sie, sie könnten gute Verschlüsselungsprogramme schreiben. Und warum auch nicht? Verschlüsselung scheint zunächst einmal einfach implementierbar zu sein. Und die Programme scheinen auch ganz ordentlich zu arbeiten.

Jeder, der glaubt, er habe ein unknackbares Verschlüsselungsverfahren entwickelt, ist entweder ein unglaublich seltenes Genie, oder er ist naiv und unerfahren.

Brian Snow, ein hochrangiger Kryptograph der NSA, sagte mir einmal, er würde keinem Verschlüsselungsalgorithmus über den Weg trauen, der von jemandem entwickelt sei, der nicht sehr viel Erfahrung mit dem Knacken von Verschlüsselungen hat. Eine durchaus sinnvolle Einstellung. Im Bereich der kommerziellen Softwareentwicklung kenne ich fast niemanden, auf den dieses Kriterium zutrifft. Snow sieht das ähnlich: "Und das macht unseren Job bei der NSA um einiges einfacher." Gruselige Vorstellung.

Auch die US-Regierung hat Wundermedizin verbreitet. Nach dem zweiten Weltkrieg verkaufte sie beispielsweise Enigma-Maschinen an Regierungen von Entwicklungsländern, ohne diesen zu sagen, daß die Verschlüsselung während des Krieges von den Briten geknackt worden war.

Übrigens wird der Enigma-Algorithmus auch heute noch bei vielen Unix-Systemen auf der ganzen Welt für die Verschlüsselung von Dateien verwendet, unter anderem deswegen, weil die US-Regierung der Verwendung besserer Algorithmen gesetzliche Schranken gesetzt hat. Die US-Regierung hat 1977 sogar versucht, die Veröffentlichung des RSA-Algorithmus zu verhindern. Auch die Entwicklung abhörsicherer Telefontechnik für die Allgemeinheit hat sie verhindert.

In jüngster Zeit macht Clipper die Runde, ein Verfahren, das Standard für die Verschlüsselung von Telefongesprächen werden soll - aber unter staatlicher Kontrolle. Der Staat wäre in der Lage, alle damit verschlüsselten Gespräche, E-Mail-Kontakte und Dateien zu lesen.

Die Hauptaufgabe der NSA ist Aufklärung, hauptsächlich durch das Abhören und Mitlesen von privater Kommunikation (siehe hierzu Literaturverzeichnis, James Bamford, The Puzzle Palace). Die NSA hat Unmengen an Wissen und Technik für das Knacken von Verschlüsselungen angesammelt. Wenn die Allgemeinheit auch noch keinen Zugang zu guter Chiffriertechnik hat, wird die Arbeit der NSA um einiges vereinfacht. Zugleich hat die NSA aber auch die Aufgabe, Verschlüsselungsalgorithmen zu beurteilen und zu empfehlen. Hier wird der Bock zum Gärtner gemacht. Die NSA hat die Verwendung eines vor ihr entworfenen Verschlüsselungsalgorithmus empfohlen, aber ohne seine Funktionsweise offenzulegen - weil das geheim bleiben müsse. Wir sollen einfach so glauben, daß der Algorithmus gut ist und ihn verwenden. Dabei weiß jeder Kryptograph, daß ein gut durchdachtes Verschlüsselungsverfahren in seinen technischen Details nicht geheim bleiben muß, um sicher zu sein. Nur die konkreten Schlüssel müssen geheimgehalten werden. Kann irgendwer mit Sicherheit sagen, daß ein von der NSA entwickeltes Verfahren wirklich sicher ist? Schwer ist es für die NSA nicht, ein Verschlüsselungsverfahren zu entwickeln, das sie allein knacken können, wenn sie niemandem sonst seine Funktionsweise offenlegen. Vielleicht betreibt die NSA auch absichtlich Quacksalberei.

Ich bin von der Sicherheit von PGP nicht so überzeugt, wie während meines Studiums von der Sicherheit meines "genialen" Verschlüsselungsverfahrens. Wäre ich von PGP vollkommen überzeugt, wäre das ein schlechtes Zeichen. Aber ich bin ziemlich sicher, daß PGP keine ins Auge springenden Schwachstellen hat. Die Algorithmen, die PGP verwendet, stammen von zivilen Kryptographen mit sehr gutem Ruf, und sie sind eingehend untersucht worden. Selbstverständlich ist der komplette Sourcecode erhältlich, so daß jeder, der programmieren kann (oder einen vertrauenswürdigen Bekannten hat, der dazu in der Lage ist), das System durchleuchten kann. Der Quellcode ist über Jahre professionell entwickelt worden. Im übrigen arbeite ich nicht für die NSA. Ich hoffe, daß der Schritt, Vertrauen in PGP zu gewinnen, nicht zu viel Überwindung kostet.

PGP zum Nachschlagen - Kurzübersicht über die PGP-Befehle
Grundsätzliches Texte, die in [eckigen Klammern] stehen, sind optional, können also weggelassen werden. Werden optionale Parameter angegeben, dürfen die eckigen Klammern selbst nicht angegeben werden.

Zum Verschlüsseln eines Klartextes mit dem öffentlichen Schlüssel der Empfängerin:

pgp -e textdatei Empfängerin-ID

Zum Unterschreiben eines Klartextes mit dem geheimen Schlüssel:

pgp -s textdatei [-u eigene_Benutzer-ID]

Zum Unterschreiben eines Klartextes mit dem geheimen Schlüssel und anschließendem Verschlüsseln des Klartextes mit dem öffentlichen Schlüssel des Empfängers:

pgp -es textdatei Empfänger-ID [-u eigene_Benutzer-ID]

Zum Verschlüsseln eines Klartextes nur mit herkömmlicher Verschlüsselung (Kein asymmetrisches Verfahren, sondern gleicher Schlüssel zum Ver- und Entschlüsseln):

pgp -c textdatei

Zum Entschlüsseln einer verschlüsselten Datei, oder um die Echtheit einer Unterschrift einer unterschriebenen Datei zu prüfen:

pgp verschlüsselte_datei [-o Klartextdatei]

Um eine Nachricht für beliebig viele Empfänger zu verschlüsseln:

pgp -e textdatei Benutzer-ID_1 Benutzer-ID_2 Benutzer-ID_3

Kommandos zur Schlüsselverwaltung Um ein einzigartiges persönliches Paar aus öffentlichem und geheimem Schlüssel herzustellen:

pgp -kg

Zum Hinzufügen eines öffentlichen oder geheimen Schlüssels in den öffentlichen oder geheimen Schlüsselbund:

pgp -ka Schlüsseldatei [Schlüsselbund]

Zum Herauskopieren eines Schlüssels aus dem öffentlichen oder geheimen Schlüsselbund:

pgp -kx Benutzer-ID Schlüsseldatei [Schlüsselbund]
pgp -kxa Benutzer-ID Schlüsseldatei [Schlüsselbund]

Zum Anzeigen des Inhalts des öffentlichen Schlüsselbunds:

pgp -kv[v] [Benutzer-ID] [Schlüsselbund]

Zum Anzeigen des "Fingerabdrucks" eines öffentlichen Schlüssels, um ihn über Telefon mit seinem Besitzer besser vergleichen zu können:

pgp -kvc [Benutzer-ID] [Schlüsselbund]

Zum Anzeigen des Inhalts und zur Überprüfung der Beglaubigungsunterschriften des öffentlichen Schüsselbunds:

pgp -kc [Benutzer-ID] [Schlüsselbund]

Zum Bearbeiten der Vertrauensparameter eines öffentlichen Schlüssels:

pgp -ke [Benutzer-ID] [Schlüsselbund]

Zum Entfernen eines Schlüssels oder nur einer Benutzer-ID aus einem öffentlichen Schlüsselbund:

pgp -kr [Benutzer-ID] [Schlüsselbund]

Zum Unterschreiben und Beglaubigen des öffentlichen Schlüssels von einer anderen Person im öffentlichen Schlüsselbund:

pgp -ks [Benutzer-ID] [-u eigene_Benutzer-ID] [Schlüsselbund]

Zum Entfernen ausgewählter Unterschriften einer Benutzer-ID eines Schlüsselbunds:

pgp -krs [Benutzer-ID] [Schlüsselbund]

Zum dauerhaften Widerrufen des eigenen Schlüssels durch Veröffentlichen einer Schlüssel-Rückruf-Urkunde:

pgp -kd eigene_Benutzer-ID

Zum Sperren oder Entsperren eines öffentlichen Schlüssels im eigenen öffentlichen Schlüsselbund:

pgp -kd Benutzer-ID

Esoterische Kommandos Zum Entschlüsseln einer Nachricht, wobei die Unterschrift intakt bleibt:

pgp -d verschlüsselte_Datei

Zum Erstellen einer Unterschriftsbescheinigung, die vom unterschriebenen Dokument getrennt ist:

pgp -sb textdatei [-u eigene_Benutzer-ID]

Zum Trennen einer Unterschriftsbescheinigung vom unterschriebenen Dokument:

pgp -b verschlüsselte_Datei

Kommandooptionen, die in Verbindung mit anderen Optionen benutzt werden können Zur Herstellung eines verschlüsselten Textes im Radix-64-Format einfach den -a Schalter anhängen, wenn ein Dokument verschlüsselt oder unterschrieben wird, oder wenn ein Schlüssel entnommen wird:

pgp -sea textdatei Benutzer_ID
pgp -kxa Benutzer-ID Schlüsseldatei [Schlüsselbund]

Zum physikalischen Löschen der Klartextdatei nach der Erstellung der verschlüsselten Datei die Option -w anfügen:

pgp -sew brief.txt EmpfängerID

Um festzulegen, daß eine Klartextdatei ASCII-Text und keine Binärdaten enthält und beim Empfänger in den richtigen Zeichensatz gewandelt wird, die -t Option zu den anderen Optionen hinzufügen:

pgp -seat brief.txt EmpfängerID

Zum Anzeigen des entschlüsselten Klartextes auf dem Monitor, ohne ihn in eine Datei zu schreiben, das Kommando -m benutzen:

pgp -m verschlüsselte_Datei

Um festzulegen, daß der entschlüsselte Klartext der Empfängerin nur auf ihrem Bildschirm angezeigt wird und nicht auf Diskette gesichert werden kann, die Option -m anhängen:

pgp -steam brief.txt EmpfängerID

Zum Wiederherstellen des Original-Dateinamens beim Entschlüsseln die Option -p anfügen:

pgp -p verschlüsselte_Datei

Um den Unix-ähnlichen Filterbetrieb zu benutzen (Lesen von Standardeingabe und Schreiben auf die Standardausgabe), die Option -f benutzen:

pgp -f <eingabe_Datei >ausgabe_Datei

Back to the main page Copyright © 1997 by Florian Helmberger - All rights reserved.
Thanks to Athens GeoCities for providing this page.
(last updated 97/04/16)

1