Tutorial: Schritt 3

Im vorigen Tutorial-Schritt "Erzeugen eines Schlüsselpaars" haben wir unseren ersten OpenPGP-Schlüssel erzeugt. Damit wollen wir nun das Ver- und Entschlüsseln einer Nachricht üben.

Verschlüsseln und Entschlüsseln einer Nachricht

Dieser Tutorial-Schritt besteht aus 4 Unterabschnitten:

Schritt 3A: Verschlüsseln/Entschlüsseln einer Datei an die eigene Adresse

Als erstes wollen wir eine Nachricht an uns selbst ver- und dann wieder entschlüsseln, um mit den Kernfunktionen dieses Vorgangs vertraut zu werden.

  1. PGP 5.0i für Linux
  2. PGP 5.0i für DOS
  3. PGP 7.0.3i (graf. Oberfläche) für Windows 9x/NT
  4. PGP 7.0.3i (Befehlszeilenversion) für Windows 9x/NT
  5. GnuPG 1.0.6 für Linux bzw. Windows 9x/NT


1. PGP 5.0i für Linux:

Schreiben Sie in einem beliebigen ASCII-Editor (z. B. "Komforttext" oder "vi") eine kurze Nachricht (z. B. "Dies ist eine vertrauliche Nachricht von XY"), und speichern Sie sie in der Datei "mail.msg".

Verschlüsseln Sie sie anschließend über folgenden Befehl:

pgpe -at -r test@IhreFirma.de -o mail.asc mail.msg

(Die Aufrufform mit "pgpe" ist der PGP-Aufruf zum Verschlüsseln ["pgp encryption"]. Der Zusatz "-a" bewirkt, daß das Verschlüsselungsergebnis im ASCII-Transportformat [statt binär] ausgegeben wird, und der Buchstabe "t" dahinter aktiviert den "Textmodus", bei dem Zeilenschaltungen und Umlaute der Originaldatei in ein betriebssystem-unabhängiges Format gebracht werden, um z. B. einen problemlosen Nachrichtenaustausch zwischen Unix, DOS und Windows sicherzustellen. "-r test@IhreFirma.de" gibt die User-ID des Empfängers ["recipient"] an, wobei "IhreFirma.de" natürlich durch den echten Domainnamen zu ersetzen ist. "-o mail.asc" gibt den Namen der verschlüsselten Ergebnisdatei ["outfile"] an, und "mail.msg" ist die Originaldatei, die verschlüsselt werden soll.)

Öffnen Sie anschließend die verschlüsselte Ergebnisdatei "mail.asc" mit einem ASCII-Editor. Sie besteht nur noch aus einem "Buchstabensalat" zwischen den beiden Begrenzern "BEGIN PGP MESSAGE" und "END PGP MESSAGE".

Um die Nachricht wieder lesbar zu machen, entschlüsseln Sie sie über folgenden Befehl:

pgpv -o mail.txt mail.asc

(Die Aufrufform mit "pgpv" ist der PGP-Aufruf zum Entschlüsseln/Verifizieren ["pgp verify"]. Der Zusatz "-o mail.txt" legt den Namen der Ergebnisdatei fest, und "mail.asc" ist der Name der Originaldatei, die entschlüsselt werden soll.)

PGP zeigt Ihnen an, welcher Schlüssel zum Dekodieren erforderlich ist, und fragt Sie nach dem zugehörigen Paßworttext, mit dem der private Schlüssel geschützt ist ("Enter pass phrase:").

Sobald Sie den korrekten Paßworttext (z. B. "MailTest") eingeben, wird die Nachricht entschlüsselt. Anschließend können Sie die Ergebnisdatei "mail.txt" ganz normal in einem ASCII-Editor lesen.

[Weiter im gemeinsamen Text]


2. PGP 5.0i für DOS:

Schreiben Sie in einem beliebigen ASCII-Editor (z. B. "Komforttext" oder "edit") eine kurze Nachricht (z. B. "Dies ist eine vertrauliche Nachricht von XY"), und speichern Sie sie in der Datei "mail.msg" im PGP-Verzeichnis.

Verschlüsseln Sie sie anschließend über folgenden Befehl:

pgp -e -at -r test@IhreFirma.de -o mail.asc mail.msg

(Der Zusatz "-e" bewirkt dabei den PGP-Aufruf zum Verschlüsseln ["encrypt"]. Der Zusatz "-a" bewirkt, daß das Verschlüsselungsergebnis im ASCII-Transportformat [statt binär] ausgegeben wird, und der Buchstabe "t" dahinter aktiviert den "Textmodus", bei dem Zeilenschaltungen und Umlaute der Originaldatei in ein betriebssystem-unabhängiges Format gebracht werden, um z. B. einen problemlosen Nachrichtenaustausch zwischen Unix, DOS und Windows sicherzustellen. "-r test@IhreFirma.de" gibt die User-ID des Empfängers ["recipient"] an, wobei "IhreFirma.de" natürlich durch den echten Domainnamen zu ersetzen ist. "-o mail.asc" gibt den Namen der verschlüsselten Ergebnisdatei ["outfile"] an, und "mail.msg" ist die Originaldatei, die verschlüsselt werden soll.)

Öffnen Sie anschließend die verschlüsselte Ergebnisdatei "mail.asc" mit einem ASCII-Editor. Sie besteht nur noch aus einem "Buchstabensalat" zwischen den beiden Begrenzern "BEGIN PGP MESSAGE" und "END PGP MESSAGE".

Um die Nachricht wieder lesbar zu machen, entschlüsseln Sie sie über folgenden Befehl:

pgp -v -o mail.txt mail.asc

(Der Zusatz "-v" bewirkt dabei den PGP-Aufruf zum Entschlüsseln/Verifizieren ["verify"]. "-o mail.txt" legt den Namen der Ergebnisdatei fest, und "mail.asc" ist der Name der Originaldatei, die entschlüsselt werden soll.)

PGP zeigt Ihnen an, welcher Schlüssel zum Dekodieren erforderlich ist, und fragt Sie nach dem zugehörigen Paßworttext, mit dem der private Schlüssel geschützt ist ("Enter pass phrase:").

Sobald Sie den korrekten Paßworttext (z. B. "MailTest") eingeben, wird die Nachricht entschlüsselt. Anschließend können Sie die Ergebnisdatei "mail.txt" ganz normal in einem ASCII-Editor lesen.

[Weiter im gemeinsamen Text]


3. PGP 7.0.3i (graf. Oberfläche) für Windows 9x/NT:

Schreiben Sie in einem beliebigen ASCII-Editor (z. B. "Notepad") eine kurze Nachricht (z. B. "Dies ist eine vertrauliche Nachricht von XY"), und kopieren Sie sie (z. B. über "Bearbeiten" -> "Alles Markieren" und "Bearbeiten" -> "Kopieren") in die Windows-Zwischenablage.

Falls sich das "PGPtray"-Icon (ein kleines Vorhängeschloß) bei Ihnen noch nicht in der Task-Leiste von Windows befindet, aktivieren Sie es über die Menüfolge "Start" -> "Programme" -> "PGP" -> "PGPtray". Klicken Sie nun das "PGPtray"-Icon an, und wählen Sie die Menüfolge "Clipboard" -> "Encrypt" (= "Zwischenablage verschlüsseln").

Daraufhin erscheint der "PGPtray - Key Selection Dialog". Wählen Sie aus der angezeigten Liste Ihren Übungsschlüssel "MailTest <test@IhreFirma.de>" aus, und ziehen Sie ihn in das Fenster "Recipients" (= "Empfänger"). Klicken Sie anschließend auf die Schaltfläche "OK".

Daraufhin wird der Inhalt der Zwischenablage verschlüsselt. Rufen Sie ihn zur Prüfung ab (z. B. über "Bearbeiten" -> "Einfügen"). Statt des früheren Texts erscheint nur noch "Buchstabensalat" zwischen den beiden Begrenzern "BEGIN PGP MESSAGE" und "END PGP MESSAGE".

Um die Nachricht wieder lesbar zu machen, klicken Sie wieder auf das "PGPtray"-Icon in der Taskleiste, und wählen Sie die Menüfolge "Clipboard" -> "Decrypt & Verify" (= "Zwischenablage entschlüsseln & verifizieren").

PGP zeigt Ihnen an, welcher Schlüssel zum Dekodieren erforderlich ist, und fragt Sie nach dem zugehörigen Paßworttext, mit dem der private Schlüssel geschützt ist ("Enter passphrase for your private key:").

Sobald Sie den korrekten Paßworttext (z. B. "MailTest") eingeben und auf die Schaltfläche "OK" klicken, wird die Nachricht entschlüsselt und im "Text Viewer" angezeigt.

[Weiter im gemeinsamen Text]


4. PGP 7.0.3i (Befehlszeilenversion) für Windows 9x/NT:

Schreiben Sie in einem beliebigen ASCII-Editor (z. B. "Notepad") eine kurze Nachricht (z. B. "Dies ist eine vertrauliche Nachricht von XY"), und speichern Sie sie in der Datei "mail.msg" im PGP-Verzeichnis.

Verschlüsseln Sie sie anschließend über folgenden Befehl:

pgp -eat mail.msg test@IhreFirma.de -o mail.asc

(Der Zusatz "-e" bewirkt dabei den PGP-Aufruf zum Verschlüsseln ["encrypt"]. Der Buchstabe "a" dahinter bewirkt, daß das Verschlüsselungsergebnis im ASCII-Transportformat [statt binär] ausgegeben wird, und der Buchstabe "t" dahinter aktiviert den "Textmodus", bei dem Zeilenschaltungen und Umlaute der Originaldatei in ein betriebssystem-unabhängiges Format gebracht werden, um z. B. einen problemlosen Nachrichtenaustausch zwischen Unix, DOS und Windows sicherzustellen. "mail.msg" ist die Originaldatei, die verschlüsselt werden soll. "test@IhreFirma.de" gibt die User-ID des Empfängers an, wobei "IhreFirma.de" natürlich durch den echten Domainnamen zu ersetzen ist. "-o mail.asc" gibt schließlich den Namen der verschlüsselten Ergebnisdatei ["outfile"] an.)

Öffnen Sie anschließend die verschlüsselte Ergebnisdatei "mail.asc" mit einem ASCII-Editor. Sie besteht nur noch aus einem "Buchstabensalat" zwischen den beiden Begrenzern "BEGIN PGP MESSAGE" und "END PGP MESSAGE".

Um die Nachricht wieder lesbar zu machen, entschlüsseln Sie sie über folgenden Befehl:

pgp mail.asc -o mail.txt

(Dabei ist "mail.asc" der Name der Originaldatei, die entschlüsselt werden soll, und "-o mail.txt" legt den Namen der Ergebnisdatei fest.)

PGP zeigt Ihnen an, welcher Schlüssel zum Dekodieren erforderlich ist, und fragt Sie nach dem zugehörigen Paßworttext, mit dem der private Schlüssel geschützt ist ("Enter pass phrase:").

Sobald Sie den korrekten Paßworttext (z. B. "MailTest") eingeben, wird die Nachricht entschlüsselt. Anschließend können Sie die Ergebnisdatei "mail.txt" ganz normal in einem ASCII-Editor lesen.

[Weiter im gemeinsamen Text]


5. GnuPG 1.0.6 für Linux bzw. Windows 9x/NT:

Schreiben Sie in einem beliebigen ASCII-Editor (z. B. "vi" unter Linux, oder "Notepad" unter Windows) eine kurze Nachricht (z. B. "Dies ist eine vertrauliche Nachricht von XY"), und speichern Sie sie in der Datei "mail.msg" im GnuPG-Verzeichnis.

Verschlüsseln Sie sie anschließend über folgenden Befehl:

gpg -eat -r test@IhreFirma.de -o mail.asc mail.msg

(Der Zusatz "-e" bewirkt dabei den GnuPG-Aufruf zum Verschlüsseln ["encrypt"]. Der Buchstabe "a" dahinter bewirkt, daß das Verschlüsselungsergebnis im ASCII-Transportformat [statt binär] ausgegeben wird, und der Buchstabe "t" dahinter aktiviert den "Textmodus", bei dem Zeilenschaltungen und Umlaute der Originaldatei in ein betriebssystem-unabhängiges Format gebracht werden, um z. B. einen problemlosen Nachrichtenaustausch zwischen Unix, DOS und Windows sicherzustellen. "-r test@IhreFirma.de" gibt die User-ID des Empfängers ["recipient"] an, wobei "IhreFirma.de" natürlich durch den echten Domainnamen zu ersetzen ist. "-o mail.asc" gibt den Namen der verschlüsselten Ergebnisdatei ["output"] an, und "mail.msg" ist die Originaldatei, die verschlüsselt werden soll.)

Öffnen Sie anschließend die verschlüsselte Ergebnisdatei "mail.asc" mit einem ASCII-Editor. Sie besteht nur noch aus einem "Buchstabensalat" zwischen den beiden Begrenzern "BEGIN PGP MESSAGE" und "END PGP MESSAGE".

Um die Nachricht wieder lesbar zu machen, entschlüsseln Sie sie über folgenden Befehl:

gpg -d -o mail.txt mail.asc

(Der Zusatz "-d" bewirkt dabei den GnuPG-Aufruf zum Entschlüsseln ["decrypt"]. "-o mail.txt" legt den Namen der Ergebnisdatei fest, und "mail.asc" ist der Name der Originaldatei, die entschlüsselt werden soll.)

GnuPG zeigt Ihnen an, welcher Schlüssel zum Dekodieren erforderlich ist, und fragt Sie nach dem zugehörigen Paßworttext, mit dem der private/geheime Schlüssel geschützt ist ("Geben Sie das Mantra ein:").

Sobald Sie den korrekten Paßworttext (z. B. "MailTest") eingeben, wird die Nachricht entschlüsselt. Anschließend können Sie die Ergebnisdatei "mail.txt" ganz normal in einem ASCII-Editor lesen.


Damit haben Sie die Kernfunktionen beim Ver- und Entschlüsseln erfolgreich durchgeführt. Als nächstes wollen wir diese Aktionen im "Echteinsatz" mit einem Austausch der verschlüsselten Nachrichten zwischen verschiedenen Personen üben.

Um die nachfolgenden Schritte wirklichkeitsnah durchzuführen, sollten Sie dafür einen Übungspartner haben. Im Notfall können Sie die Übungen aber auch "durchspielen", indem Sie 2 verschiedene OpenPGP-Schlüsselpaare anlegen und damit 2 Personen simulieren.

Schritt 3B: Importieren eines öffentlichen Schlüssels

Um an andere Empfänger außer uns selbst verschlüsselte Nachrichten senden zu können, müssen wir als erstes den öffentlichen Schlüssel dieser Empfänger unserem Schlüsselbund hinzufügen.

Senden Sie daher, falls noch nicht geschehen, Ihren im Tutorial-Schritt 2 erzeugten Übungsschlüssel (den Sie dort in die Datei "mailtest.asc" exportiert haben) per E-Mail an Ihren Übungspartner, und lassen Sie sich den OpenPGP-Schlüssel Ihres Übungspartners von diesem zusenden.

Führen Sie dann mit der E-Mail, die den OpenPGP-Schlüssel Ihres Übungspartners enthält, den nachfolgenden Importschritt durch.

  1. PGP 5.0i für Linux bzw. DOS
  2. PGP 7.0.3i (graf. Oberfläche) für Windows 9x/NT
  3. PGP 7.0.3i (Befehlszeilenversion) für Windows 9x/NT
  4. GnuPG 1.0.6 für Linux bzw. Windows 9x/NT


1. PGP 5.0i für Linux bzw. DOS:

Geben Sie folgenden Befehl ein:

pgpk -a Quelldatei

("pgpk" ist das PGP-Key-Modul, "-a" steht für "add file", und "Quelldatei" ist natürlich durch den Namen der Datei zu ersetzen, die den zu importierenden Schlüssel enthält.)

PGP liest daraufhin die Datei ein und zeigt an, wie viele Schlüssel es darin gefunden hat:

"1 matching key found - Add these keys to your keyring? [Y/n]"

Antworten Sie mit "Y" für "yes". Daraufhin erscheint die Meldung "Keys added successfully", und der Schlüsselimport ist abgeschlossen.

Über den Befehl "pgpk -l MailTest" ("-l" steht für "list userid") können Sie jederzeit verifizieren, welche Übungsschlüssel sich auf Ihrem Schlüsselbund befinden.

[Weiter im gemeinsamen Text]


2. PGP 7.0.3i (graf. Oberfläche) für Windows 9x/NT:

Starten Sie das Programm "PGPkeys" (z. B. über "Start" -> "Programme" -> "PGP" -> "PGPkeys"), wählen Sie dort die Menüfolge "Keys" -> "Import...", und geben Sie in der Dateiauswahl die Datei an, die den zu importierenden Schlüssel enthält.

Sobald Sie die Schaltfläche "Öffnen" aktivieren, erscheint die Liste der Schlüssel, die in der Quelldatei enthalten sind. Durch Klicken auf "Import" werden diese Schlüssel importiert und in "PGPkeys" in der Liste der verfügbaren Schlüssel angezeigt.

[Weiter im gemeinsamen Text]


3. PGP 7.0.3i (Befehlszeilenversion) für Windows 9x/NT:

Geben Sie folgenden Befehl ein:

pgp -ka Quelldatei

("-ka" steht für "key add", und "Quelldatei" ist natürlich durch den Namen der Datei zu ersetzen, die den zu importierenden Schlüssel enthält.)

PGP liest daraufhin die Datei ein und zeigt an, wie viele Schlüssel es darin gefunden hat:

"Key file contains 1 new keys. Add these keys to keyring? [Y/n]"

Antworten Sie mit "Y" für "yes". Daraufhin erscheint die Meldung "Key file contains: 1 new key(s)", und der Schlüsselimport ist abgeschlossen.

Über den Befehl "pgp -kv MailTest" ("-kv" steht für "key view") können Sie jederzeit verifizieren, welche Übungsschlüssel sich auf Ihrem Schlüsselbund befinden.

[Weiter im gemeinsamen Text]


4. GnuPG 1.0.6 für Linux bzw. Windows 9x/NT:

Geben Sie folgenden Befehl ein:

gpg --import Quelldatei

("Quelldatei" ist natürlich durch den Namen der Datei zu ersetzen, die den zu importierenden Schlüssel enthält.)

GnuPG liest daraufhin die Datei ein und zeigt an, wie viele Schlüssel es importiert hat:

Schlüssel ........: Öffentlicher Schlüssel importiert
Anzahl insgesamt bearbeiteter Schlüssel: 1
importiert: 1

Damit ist der Schlüsselimport abgeschlossen.

Über den Befehl "gpg --list-keys MailTest" können Sie jederzeit verifizieren, welche Übungsschlüssel sich auf Ihrem Schlüsselbund befinden.


Nun sind wir bereit, unserem Übungspartner eine verschlüsselte Nachricht zu senden.

Schritt 3C: Senden einer verschlüsselten Nachricht

Schreiben Sie eine kurze Nachricht in Ihrem E-Mail-Programm. Verschlüsseln Sie die Nachricht anschließend entsprechend dem obigen Schritt 3A:

  1. PGP 5.0i für Linux: E-Mail-Inhalt in die Datei "mail.msg" speichern, dann im Betriebssystem folgenden Befehl eingeben:
    pgpe -at -r test@Empfänger.de -o mail.asc mail.msg
    und danach den bisherigen E-Mail-Inhalt durch die verschlüsselte Ergebnisdatei "mail.asc" ersetzen.
  2. PGP 5.0i für DOS: E-Mail-Inhalt in die Datei "mail.msg" ins PGP-Verzeichnis speichern, dann im Betriebssystem folgenden Befehl eingeben:
    pgp -e -at -r test@Empfänger.de -o mail.asc mail.msg
    und danach den bisherigen E-Mail-Inhalt durch die verschlüsselte Ergebnisdatei "mail.asc" ersetzen.
  3. PGP 7.0.3i (graf. Oberfläche) für Windows 9x/NT: E-Mail-Inhalt in die Zwischenablage kopieren, die Zwischenablage über das "PGPtray"-Icon und die Menüfolge "Clipboard" -> "Encrypt" verschlüsseln und den bisherigen E-Mail-Inhalt durch den (verschlüsselten) Inhalt der Zwischenablage ersetzen.
  4. PGP 7.0.3i (Befehlszeilenversion) für Windows 9x/NT: E-Mail-Inhalt in die Datei "mail.msg" ins PGP-Verzeichnis speichern, dann im Betriebssystem folgenden Befehl eingeben:
    pgp -eat mail.msg test@Empfänger.de -o mail.asc
    und danach den bisherigen E-Mail-Inhalt durch die verschlüsselte Ergebnisdatei "mail.asc" ersetzen.
  5. GnuPG 1.0.6 für Linux bzw. Windows 9x/NT: E-Mail-Inhalt in die Datei "mail.msg" ins GnuPG-Verzeichnis speichern, dann im Betriebssystem folgenden Befehl eingeben:
    gpg -eat -r test@Empfänger.de -o mail.asc mail.msg
    und danach den bisherigen E-Mail-Inhalt durch die verschlüsselte Ergebnisdatei "mail.asc" ersetzen.

Senden Sie diese verschlüsselte E-Mail dann an Ihren Übungspartner.

Schritt 3D: Entschlüsseln einer verschlüsselten Nachricht

Sobald die verschlüsselte Nachricht von Ihrem Übungspartner an Sie eingegangen ist, entschlüsseln Sie sie bitte gemäß der zweiten Hälfte des obigen Schritts 3A:

  1. PGP 5.0i für Linux: E-Mail-Inhalt (inkl. der beiden Zeilen mit "BEGIN PGP MESSAGE" und "END PGP MESSAGE") in die Datei "mail.asc" speichern, dann im Betriebssystem folgenden Befehl eingeben:
    pgpv -o mail.txt mail.asc
    und danach die Frage nach dem Paßworttext zum Schutz des eigenen privaten Schlüssels beantworten.

    Fertig - die entschlüsselte Nachricht befindet sich in der Datei "mail.txt"!

  2. PGP 5.0i für DOS: E-Mail-Inhalt (inkl. der beiden Zeilen mit "BEGIN PGP MESSAGE" und "END PGP MESSAGE") in die Datei "mail.asc" ins PGP-Verzeichnis speichern, dann im Betriebssystem folgenden Befehl eingeben:
    pgp -v -o mail.txt mail.asc
    und danach die Frage nach dem Paßworttext zum Schutz des eigenen privaten Schlüssels beantworten.

    Fertig - die entschlüsselte Nachricht befindet sich in der Datei "mail.txt"!

  3. PGP 7.0.3i (graf. Oberfläche) für Windows 9x/NT: E-Mail-Inhalt (inkl. der beiden Zeilen mit "BEGIN PGP MESSAGE" und "END PGP MESSAGE") in die Zwischenablage kopieren, das "PGPtray"-Icon in der Taskleiste anklicken, die Menüfolge "Clipboard" -> "Decrypt & Verify" wählen und die Frage nach dem Paßworttext zum Schutz des eigenen privaten Schlüssels beantworten.

    Fertig - die entschlüsselte Nachricht wird im "Text Viewer" angezeigt!

  4. PGP 7.0.3i (Befehlszeilenversion) für Windows 9x/NT: E-Mail-Inhalt (inkl. der beiden Zeilen mit "BEGIN PGP MESSAGE" und "END PGP MESSAGE") in die Datei "mail.asc" ins PGP-Verzeichnis speichern, dann im Betriebssystem folgenden Befehl eingeben:
    pgp mail.asc -o mail.txt
    und danach die Frage nach dem Paßworttext zum Schutz des eigenen privaten Schlüssels beantworten.

    Fertig - die entschlüsselte Nachricht befindet sich in der Datei "mail.txt"!

  5. GnuPG 1.0.6 für Linux bzw. Windows 9x/NT: E-Mail-Inhalt (inkl. der beiden Zeilen mit "BEGIN PGP MESSAGE" und "END PGP MESSAGE") in die Datei "mail.asc" ins GnuPG-Verzeichnis speichern, dann im Betriebssystem folgenden Befehl eingeben:
    gpg -d -o mail.txt mail.asc
    und danach die Frage nach dem Paßworttext zum Schutz des eigenen privaten/geheimen Schlüssels beantworten.

    Fertig - die entschlüsselte Nachricht befindet sich in der Datei "mail.txt"!

Damit haben wir nun unsere erste verschlüsselte OpenPGP-Nachricht erfolgreich ausgetauscht.

Im nächsten Tutorial-Schritt erweitern wir den Austausch von verschlüsselten Nachrichten, indem wir die Komponente der Absender-Authentisierung (d. h. die Sicherheit über die Identität des Absenders) hinzunehmen.

[Zurück zur Hauptseite des Verschlüsselungsprojekts]      [Zum vorigen Tutorial-Schritt]      [Zum nächsten Tutorial-Schritt]