Tutorial: Schritt 2

Sobald Sie den vorigen Tutorial-Schritt "Installation von PGP bzw. GnuPG" durchgeführt haben, ist Ihr PGP bzw. GnuPG einsatzbereit. Damit wir nun auch wirklich Nachrichten verschlüsselt senden und empfangen können, erzeugen wir als erstes ein Schlüsselpaar für uns selbst.

Erzeugen eines Schlüsselpaars

Bevor wir auf dem jeweiligen Betriebssystem (Linux, DOS, Windows 9x/NT) unser Schlüsselpaar erzeugen, vorab einige Informationen:

Ein Schlüsselpaar (privat/öffentlich) hat mehrere Aspekte:

Für die Schritte 3 (Ver-/Entschlüsseln einer Nachricht) und 4 (Signieren einer Nachricht) unseres Tutorials brauchen wir bereits ein Schlüsselpaar. Um möglichst schnell zu den praktischen Übungen zu kommen, behandeln wir aber die Details des Schlüsselmanagements und seiner Tücken erst in den Schritten 5 und 6 (Validieren von Schlüsseln, Schlüsselmanagement).

Daher erzeugen wir nun zuerst nur einen Übungsschlüssel von beschränkter Gültigkeitsdauer, mit dem wir die Schritte 3 und 4 durchführen können, ohne Angst vor Fehlern im Schlüsselmanagement (und daraus entstehenden Sicherheitsrisiken) haben zu müssen. Wenn wir dann Erfahrung im Umgang mit PGP bzw. GnuPG haben, machen wir im Schritt 5 den "echten" Schlüssel für uns (bzw. die Poststelle unserer Firma/Stadtverwaltung) und führen dann natürlich saubere Validierungen und Schlüssel-Signierungen durch.

Hier sind nun die Schritte zur Erzeugung unseres Schlüsselpaars für die nächsten Übungen:

  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:

Starten Sie die Schlüsselgenerierung mit folgendem Befehl:

pgpk -g

("pgpk" ist das PGP-Key-Modul, und "-g" steht für "generate key"), und beantworten Sie dann die angezeigten Fragen wie folgt:

"Choose the type of your public key:"
Geben Sie hier "1" (= DSS/Diffie-Hellmann) ein.

"Pick your public/private keypair key size:"
Geben Sie hier "3" (= 2048/1024 bits = military grade) ein.

"Enter a user ID for your public key:"
Geben Sie hier "MailTest <test@IhreFirma.de>" ein. ("IhreFirma.de" ist dabei natürlich durch Ihren wirklichen Domainnamen zu ersetzen. Der User-Name "MailTest" soll verhindern, daß dieser Schlüssel je "ernst genommen" wird, wenn er aus Versehen in Umlauf geraten sollte.)

"Enter the validity period of your key in days:"
Geben Sie hier "30" ein. Dadurch wird die Gültigkeitsdauer des Übungsschlüssels automatisch auf 1 Monat begrenzt.

"Enter passphrase:"
Geben Sie hier einen Paßworttext ein, an den Sie sich bestimmt stets erinnern können. Falls Ihnen gerade nichts Passendes einfällt, wählen Sie als Paßworttext das Wort "MailTest". (Wenn Sie später den "echten" Schlüssel für Ihre Firma/Stadtverwaltung erzeugen, dürfen Sie natürlich kein Trivial-Paßwort verwenden, das mit dem User-Namen identisch ist. Aber das behandeln wir dann im Schritt 5 des Tutorials.)

"Keypair created successfully. If you wish to send ... If not, enter nothing."
Drücken Sie hier nur die Return-Taste, ohne etwas einzugeben. (Wir wollen unser Übungspaßwort natürlich nicht an einen offiziellen PGP-Schlüsselserver senden!)

Damit ist die Schlüsselgenerierung fertig. Exportieren Sie zum Abschluß den neuen Schlüssel mit folgendem Befehl:

pgpk -x MailTest -o mailtest.asc

("-x MailTest" steht hier für den "Export" des Schlüssels zur User-ID "MailTest", "-o mailtest.asc" gibt die Ausgabedatei [engl. "outfile"] an.)

Der öffentliche Teil Ihres Übungsschlüssels befindet sich nun in der Datei "mailtest.asc".

[Weiter im gemeinsamen Text]


2. PGP 5.0i für DOS:

Starten Sie die Schlüsselgenerierung mit folgendem Befehl:

pgpk -g

("pgpk" ist das PGP-Key-Modul, und "-g" steht für "generate key"), und beantworten Sie dann die angezeigten Fragen wie folgt:

"Choose the type of your public key:"
Geben Sie hier "1" (= DSS/Diffie-Hellmann) ein.

"Pick your public/private keypair key size:"
Geben Sie hier "3" (= 2048/1024 bits = military grade) ein.

"Enter a user ID for your public key:"
Geben Sie hier "MailTest <test@IhreFirma.de>" ein. ("IhreFirma.de" ist dabei natürlich durch Ihren wirklichen Domainnamen zu ersetzen. Der User-Name "MailTest" soll verhindern, daß dieser Schlüssel je "ernst genommen" wird, wenn er aus Versehen in Umlauf geraten sollte.)

"Enter the validity period of your key in days:"
Geben Sie hier "30" ein. Dadurch wird die Gültigkeitsdauer des Übungsschlüssels automatisch auf 1 Monat begrenzt.

"Enter passphrase:"
Geben Sie hier einen Paßworttext ein, an den Sie sich bestimmt stets erinnern können. Falls Ihnen gerade nichts Passendes einfällt, wählen Sie als Paßworttext das Wort "MailTest". (Wenn Sie später den "echten" Schlüssel für Ihre Firma/Stadtverwaltung erzeugen, dürfen Sie natürlich kein Trivial-Paßwort verwenden, das mit dem User-Namen identisch ist. Aber das behandeln wir dann im Schritt 5 des Tutorials.)

Da DOS über keinen eingebauten echten Zufallsgenerator verfügt, werden Sie anschließend aufgefordert, einen zufälligen Text über die Tastatur einzugeben:

"Please enter some random text on your keyboard until you hear the beep:"

Anhand der Zeitabstände zwischen Ihren Tastenbetätigungen werden Zufallszahlen generiert, bis die Prüfroutinen von PGP die erforderliche "Zufälligkeit" verifiziert haben. Dann erscheint der Hinweis:

"Enough, thank you."

und kurz darauf:

"Keypair created successfully."

Damit ist die Schlüsselgenerierung fertig. Exportieren Sie zum Abschluß den neuen Schlüssel mit folgendem Befehl:

pgpk -x MailTest -o mailtest.asc

("-x MailTest" steht hier für den "Export" des Schlüssels zur User-ID "MailTest", "-o mailtest.asc" gibt die Ausgabedatei [engl. "outfile"] an.)

Der öffentliche Teil Ihres Übungsschlüssels befindet sich nun in der Datei "mailtest.asc".

[Weiter im gemeinsamen Text]


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

Starten Sie das Programm "PGPkeys" (z. B. über die Menüfolge "Start" -> "Programme" -> "PGP" -> "PGPkeys").

Wählen Sie dort die Menüfolge "Keys" -> "New Key ...", um den "Key Generation Wizard" zu starten.

Klicken Sie dort auf "Weiter", und tragen Sie im nächsten Bildschirm als "Full name" den Übungsnamen "MailTest" und als "Email address" die Übungsadresse "test@IhreFirma.de" ein. ("IhreFirma.de" ist dabei natürlich durch Ihren wirklichen Domainnamen zu ersetzen. Der User-Name "MailTest" soll verhindern, daß dieser Schlüssel je "ernst genommen" wird, wenn er aus Versehen in Umlauf geraten sollte.)

Klicken Sie dann auf die Schaltfläche "Weiter", und wählen Sie im nächsten Bildschirm als "Key Pair Type" den Wert "Diffie-Hellman/DSS" aus.

Klicken Sie danach auf die Schaltfläche "Weiter", und wählen Sie im nächsten Bildschirm als "Key Pair Size" den Wert "2048 bits" aus.

Klicken Sie erneut auf die Schaltfläche "Weiter", wählen Sie im nächsten Bildschirm bei "Key Expiration" die Option "Key Pair expires on ..." aus, und geben Sie ein Ablaufdatum ein, das 1 Monat in der Zukunft liegt. Dadurch wird die Gültigkeitsdauer des Übungsschlüssels automatisch auf 1 Monat begrenzt.

Ein Klick auf die Schaltfläche "Weiter" bringt Sie zur Festlegung der "Passphrase". Geben Sie hier einen Paßworttext ein, an den Sie sich bestimmt stets erinnern können. Falls Ihnen gerade nichts Passendes einfällt, wählen Sie als Paßworttext das Wort "MailTest". (Wenn Sie später den "echten" Schlüssel für Ihre Firma/Stadtverwaltung erzeugen, dürfen Sie natürlich kein Trivial-Paßwort verwenden, das mit dem User-Namen identisch ist. Aber das behandeln wir dann im Schritt 5 des Tutorials.)

Nach Doppeleingabe der "Passphrase" und Klicken auf "Weiter" erzeugt PGP Ihr Schlüsselpaar. (Dabei kann es sein, daß Sie vom Programm noch zu zufälligen Tastatureingaben aufgefordert werden - ähnlich wie oben beim Betriebssystem DOS.)

Sobald der Hinweis "Complete" erscheint, klicken Sie auf "Weiter". Stellen Sie im nächsten Bildschirm sicher, daß das Kästchen neben "Send my key to the root server now" nicht angekreuzt ist (denn wir wollen unser Übungspaßwort natürlich nicht an einen offiziellen PGP-Schlüsselserver senden!), und klicken Sie erneut auf "Weiter" und im nächsten Bildschirm auf "Fertigstellen".

Damit ist die Schlüsselgenerierung abgeschlossen, und Ihr neues Schlüsselpaar erscheint auf Ihrem "Schlüsselbund".

Um den Übungsschlüssel zu exportieren, markieren Sie den Schlüssel "MailTest" und wählen dann die Menüfolge "Keys" -> "Export ...". In der daraufhin angezeigten Dialogbox ist als Dateiname für die Exportdatei bereits der Name "mailtest.asc" eingetragen. Stellen Sie sicher, daß die beiden Optionen "Include Private Key(s)" und "Include 6.0 Extensions" nicht angekreuzt sind, und klicken Sie dann auf die Schaltfläche "Speichern".

Der öffentliche Teil Ihres Übungsschlüssels befindet sich nun in der Datei "mailtest.asc".

[Weiter im gemeinsamen Text]


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

Starten Sie die Schlüsselgenerierung mit folgendem Befehl:

pgp -kg

("-kg" steht hier für "key generate"), und beantworten Sie dann die angezeigten Fragen wie folgt:

"Choose the public-key algorithm to use with your new key:"
Geben Sie hier "1" (= DSS/DH) ein.

"Choose the type of key you want to generate:"
Geben Sie hier "1" (= Generate a new signing key) ein.

"Pick your DSS ``master key'' size:"
Geben Sie hier "1" (= 1024 bits = maximum size) ein.

"Enter a user ID for your public key:"
Geben Sie hier "MailTest <test@IhreFirma.de>" ein. ("IhreFirma.de" ist dabei natürlich durch Ihren wirklichen Domainnamen zu ersetzen. Der User-Name "MailTest" soll verhindern, daß dieser Schlüssel je "ernst genommen" wird, wenn er aus Versehen in Umlauf geraten sollte.)

"Enter the validity period of your signing key in days:"
Geben Sie hier "30" ein. Dadurch wird die Gültigkeitsdauer des Übungsschlüssels automatisch auf 1 Monat begrenzt.

"Enter pass phrase:"
Geben Sie hier einen Paßworttext ein, an den Sie sich bestimmt stets erinnern können. Falls Ihnen gerade nichts Passendes einfällt, wählen Sie als Paßworttext das Wort "MailTest". (Wenn Sie später den "echten" Schlüssel für Ihre Firma/Stadtverwaltung erzeugen, dürfen Sie natürlich kein Trivial-Paßwort verwenden, das mit dem User-Namen identisch ist. Aber das behandeln wir dann im Schritt 5 des Tutorials.)

"PGP will generate a signing key. Do you also require an encryption key? (Y/n)"
Geben Sie hier "y" (= yes) ein.

"Pick your DH key size:"
Geben Sie hier "2" (= 2048 bits = military grade) ein.

"Enter the validity period of your encryption key in days:"
Geben Sie hier "30" (= denselben Wert wie für den DSS-"Hauptschlüssel") ein.

Anschließend werden Sie aufgefordert, einen zufälligen Text über die Tastatur einzugeben:

"Please enter some random text on your keyboard until the indicator reaches 100%:"

Anhand der Zeitabstände zwischen Ihren Tastenbetätigungen werden Zufallszahlen generiert, bis die Prüfroutinen von PGP die erforderliche "Zufälligkeit" verifiziert haben. Dann erscheint der Hinweis:

"Enough, thank you."

und kurz darauf:

"Make this the default signing key? (Y/n)"
Geben Sie hier "y" (= yes) ein.

Daraufhin erscheint die Abschlußmeldung:

"Key generation completed."

Damit ist die Schlüsselgenerierung fertig. Exportieren Sie zum Abschluß den neuen Schlüssel mit folgendem Befehl:

pgp -kx MailTest mailtest.asc

("-kx MailTest" steht hier für "key export" des Schlüssels zur User-ID "MailTest", "mailtest.asc" gibt die Ausgabedatei an.)

Der öffentliche Teil Ihres Übungsschlüssels befindet sich nun in der Datei "mailtest.asc".

[Weiter im gemeinsamen Text]


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

Starten Sie die Schlüsselgenerierung mit folgendem Befehl:

gpg --gen-key

("--gen-key" steht für "generate key"), und beantworten Sie dann die angezeigten Fragen wie folgt:

"Bitte wählen Sie, welche Art von Schlüssel Sie möchten:"
Geben Sie hier "1" (= "DSA/ElGamal", was dem PGP-Typ "DSS/Diffie-Hellman" entspricht) ein.

"Welche Schlüssellänge wünschen Sie?"
Geben Sie hier "2048" ein, und beantworten Sie die Sicherheitsabfrage "Brauchen Sie wirklich einen derartig langen Schlüssel?" mit "j" für "ja".

"Der Schlüssel bleibt wie lange gültig?"
Geben Sie hier "30" ein, und beantworten Sie die Sicherheitsabfrage "Der Schlüssel verfällt am ... Ist dies richtig? (j/n)" mit "j" für "ja". Dadurch wird die Gültigkeitsdauer des Übungsschlüssels automatisch auf 1 Monat begrenzt.

Als nächstes werden die Bestandteile der User-ID in 3 Schritten erfragt:

"Ihr Name ("Vorname Nachname"):"
Geben Sie hier "MailTest" ein. (Der User-Name "MailTest" soll verhindern, daß der Übungsschlüssel je "ernst genommen" wird, wenn er aus Versehen in Umlauf geraten sollte.)

"E-Mail-Adresse:"
Geben Sie hier "test@IhreFirma.de" ein. ("IhreFirma.de" ist dabei natürlich durch Ihren wirklichen Domainnamen zu ersetzen.)

"Kommentar:"
Drücken Sie hier die Return-Taste, ohne etwas einzugeben, und bestätigen Sie die Sicherheitsabfrage "Sie haben diese User-ID gewählt: ..." mit "F" für "Fertig".

"Geben Sie das Mantra ein:"
Geben Sie hier einen Paßworttext ein, an den Sie sich bestimmt stets erinnern können. Falls Ihnen gerade nichts Passendes einfällt, wählen Sie als Paßworttext das Wort "MailTest". (Wenn Sie später den "echten" Schlüssel für Ihre Firma/Stadtverwaltung erzeugen, dürfen Sie natürlich kein Trivial-Paßwort verwenden, das mit dem User-Namen identisch ist. Aber das behandeln wir dann im Schritt 5 des Tutorials.)

Anschließend errechnet GnuPG das Schlüsselpaar. Da dazu u. a. viele Zufallswerte errechnet werden müssen, können Sie diesen Vorgang beschleunigen, indem Sie entweder mit den Tasten [Strg], [Alt], [Shift] oder der Maus herumspielen oder in einem anderen Fenster ein beliebiges Programm aufrufen und benutzen.

Anhand der Zeitabstände zwischen Ihren Tastenbetätigungen werden Zufallszahlen generiert, bis die Prüfroutinen von GnuPG die erforderliche "Zufälligkeit" verifiziert haben. (GnuPG nimmt diese Prüfung sehr genau und arbeitet im Unterschied zu PGP nicht mit teilweise vorausberechneten Werten. Daher kann dieser Rechenschritt auch auf einem schnellen PC einige Minuten lang dauern.)

Schließlich erscheint dann die Erfolgsmeldung:

"Öffentlichen und geheimen Schlüssel erzeugt und signiert."

Damit ist die Schlüsselgenerierung fertig. Exportieren Sie zum Abschluß den neuen Schlüssel mit folgendem Befehl:

gpg -a -o mailtest.asc --export MailTest

("-a" steht hier für das ASCII-Transportformat [statt binär], "-o mailtest.asc" gibt die Ausgabedatei [engl. "output"] an, und "--export MailTest" bewirkt den Export des Schlüssels zur User-ID "MailTest".)

Der öffentliche Teil Ihres Übungsschlüssels befindet sich nun in der Datei "mailtest.asc".


Sobald Sie Ihren Übungsschlüssel für den User "MailTest" fertiggestellt und exportiert haben, können Sie diesen Schlüssel (einschließlich der Begrenzungszeilen mit "BEGIN PGP PUBLIC KEY BLOCK" und "END PGP PUBLIC KEY BLOCK") in eine E-Mail kopieren und in dieser Form einem Übungspartner zusenden. (Um die Tutorial-Schritte 3 und 4 wirklichkeitsnah durchzuführen, sollten Sie dafür einen Übungspartner haben.)

Im nächsten Tutorial-Schritt werden wir nun unseren frisch erzeugten Schlüssel benutzen, um mit PGP bzw. GnuPG Nachrichten zu verschlüsseln und zu entschlüsseln.

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