PGP-Verschlüsselung im Detail
Die Schritte zur Verschlüsselung sind die Folgenden:
- Eine Signatur kann erzeugt werden
- Die Nachricht (und die Signatur) wird komprimiert
- Symmetrische Verschlüsselung mit zufälligem Schlüssel KM
- Asymmetrische Verschlüsselung des Schlüssels KM mit dem öffentlichen Schlüssel des Empfängers
- Zur leichteren Übertragung via E-Mail wird das Ergebnis noch Base64 kodiert
Listing 1
-----BEGIN PGP MESSAGE-----
Version: GnuPG v2.0.16 (GNU/Linux)
hQEMA1PUVhZb8UnsAQf+KS9PNvkWYFONnoStveMc4KwvGT7WlRFv/ZACvdyFsKDO icurhL57uh56KCof1m5drfftwjDQWgNyMy0cixqV/2WzeQgjZILE0Z1FDg7cgAbs UZvy2hmaJf0dhHEUziALotfUMhoSeHeObxmomzb7vovJv5tWDtQ9W+p2tbQ4tiin LAsJtwQhEVPNltootBteC0dTgOdISe6kfqUSoN3A22SiSUihmjxMPiiO6iZB8gBS hhfiSPa4khNwODncRe2BjqW+YQHf7L6CfLjx2S1BCSr+KWLmUnVdWSUonhHPF9mI E/q7t2uoBWg0iQgCjQubgYeqSUYN/xWpqAUX9O71zdKUAbVjjLVT0qTjNLLvms2H s4BDzHEqKeuGuMAWFzyfuW+VNofTxtcHhzrdjPuYi7sRL3YNUvqUpcGeKGyTApW2 k/fd7U32av7Pq63NoKK2g3RFcyBUiSdNlNhW8TYS1NdMSMXNw1R9dWVgFmsLj2vs Rv89ufRiPbNLDXcx7CkRrTf13q0miy1850d6k5nt8qUFrnh4xQ==
=z6Xk
-----END PGP MESSAGE-----
Zur Entschlüsselung muss man diese Schritte natürlich rückwärts anwenden, mit dem dazugehörigen privaten Schlüsselgegenstück.
Genug der Vorworte
Um PGP-verschlüsselte E-Mails aus PHP heraus zu verschicken gibt es mehrere Lösungswege. Für jede dieser Lösungen benötigen wir eine Installation von GnuPG. Das wird je nach Betriebssystem unterschiedlich gemacht:
- http://gpg4win.org/
- http://macgpg.sourceforge.net/de/
- Via Paketmanager installieren
Einen ersten Überblick über die Features von GnuPG bietet die Hilfe: gpg --help, für ausführliche Informationen wirft man einen Blick in die Man Page: man gpg.




