Will man PGP nutzen, muss man sich einmalig ein Schlüsselpaar,
bestehend aus einem öffentlichen und einem privaten Schlüssel,
generieren. Der private Schlüssel wird in einem "Keyring", der mit einem zusätzlichen
Passwort, dem "Mantra" geschützt ist, abgespeichert. Der Schutz per Mantra ist obligatorisch
und kann leicht geknackt werden (Brute Force). Deshalb ist ein wirkungsvolles Passwort als
Mantra zu wählen: bestehend aus Sonderzeichen, Gross- und Kleinbuchstaben und möglichst ohne
Sinnzusammenhang. Der Keyring ist nicht auf einem Rechner mit Netzwerkanschluss zu speichern.
Am besten kopiert man ihn auf eine CD. Die CD ist an einem geheimen Ort aufzubewahren und
nur bei Bedarf ins Laufwerk zu legen.
PGP gehört zu den hybriden Verschlüsselungsverfahren.
Das beudetet, dass der eigentliche Nachrichtentext mit einem schnellen symmetrischen Verfahren
(z.B. DES) verschlüsselt wird. Der (DES)-Schlüssel, mit dem diese Nachricht verschüsselt wurde, wird von
PGP bei jeder Anwendung per Zufall neu generiert. Deshalb wird er auch Session Key genannt.
Der Session Key muss nun sicher zum Empfänger übertragen werden. Hierzu wird dieser per RSA Verfahren mit dem öffentlichen PGP-Schlüssel des
Empfängers verschlüsselt. Das hat den Vorteil, dass nur der symmetrische
Schlüssel mit dem langsamen RSA Verfahren verschlüsselt werden muss. Das hat eine
Beschleunigung des gesamten Verschlüsselungsvorgangs zur Folge. Der
Empfänger muss die
empfangene Nachricht nur noch mit seinem privaten Schlüssel entschlüsseln und erhält den
Klartext.
Man kann Nachrichten auch unterschreiben: Dazu wird über die
Nachricht ein Hashwert gebildet, der mit dem eigenen privaten Schlüssel verschlüsselt
wird. Dieser Hashwert wird als Signatur an die zu übertragende Nachricht angehängt.
Der Empfänger entschlüsselt die Signatur mit dem öffentlichen Schlüssel des Absenders und generiert von der empfangenen
Nachricht ebenfalls einen Hashwert. Nun wird geprüft, ob die beiden Hashewerte identisch sind.
Eine andere Erklärung des
Unterschreibens aus der GnuPG Dokumentation:
Eine digitale Unterschrift oder Signatur ist am ehesten mit einem Siegel zu vergleichen. Mit dem Siegel wird die Integrität eines Dokumentes bestätigt, das sich in einem Umschlag befindet, und ermöglicht, daß sich eine nachträgliche Manipulation feststellen läßt. Wenn das Dokument nachfolgend in irgendeiner Weise verändert wird, ergibt die Prüfung der Signatur ein negatives Ergebnis. Außerdem ermöglicht die Signatur eine zweifelsfreie Zuordnung des Absenders. Eine digitale Unterschrift kann so demselben Zweck wie eine handgeschriebene Unterschrift dienen mit dem zusätzlichen Vorteil, eine Handhabe gegen Verfälschung zu bieten.
Problematisch hierbei ist: Wie kann man öffentliche Schlüssel zu einer Person zuordnen? Denn jeder hat die Möglichkeit ein PGP Schlüsselpaar zu generieren und unter meinen Namen zu veröffentlichen. Danach kann er damit in meinem Namen unterschriebene E-Mails verschicken.