Basiswissen (Hintergrundwissen) - sMail - Verschlüsselte und authentische E-Mails

Seite 2/3
Geändert am 27.06.2007
E-Mail-Verschlüsselung mit PGP/GnuPG - Grundlegendes
PGP und GnuPG sind weitestgehend kompatible, weshalb wir uns im folgenden uns auf einen einheitlichen Namen für PGP und GnuPG einigen - PGP.

PGP setzt wie SSL auf asymetrische Schlüssel (»public« / öffentlicher und »secret« / geheimer Schlüssel), kennt aber keine „hierarchische“ PKI (»Public Key Infrastructure«) wie SSL, sondern versucht die Echtheit und Vertrauenswürdigkeit der Unterschrift mittels eines »Web of Trust« zu realisieren. Dabei wird der öffentliche Teil des Schlüsselpaares bei Echtheit der Person mit dem eigenen Schlüssel signiert. Der Heiseverlag zum Beispiel signiert bei persönlichen Erscheinen mit gültigen Personalausweis den öffentlichen Schlüssel in zwei Stufen (mit und ohne Prüfung der verwendeten E-Mail-Adresse).

E-Mail-Verschlüsselung mit PGP/GnuPG - Begriffe
Bei der Verwendung von PGP zur E-Mail-Verschlüsselung gibt es zwei, im Grunde genommen verschiedene, Methoden:
  • PGP/Inline
Bei dieser Methode wird der Body der E-Mail, also der Nachrichteninhalt signiert und innerhalb des Bodys übermittelt. Angehängte Datei bleibt unsigniert, beziehungsweise müssen gesondert signiert werden. Bei HTML-E-Mails befindet sich nur der reine Text innerhalb der E-Mail, die erstellte HTML-E-Mail wird als Anhang mitgesendet.
  • PGP/MIME
Hier wird die Signatur getrennt vom Nachrichtenkörper in einem eigenen Anhang gespeichert, Angehänge werden mitsigniert und die Signatur in einem eigenen Anhang gespeichert. Bei PGP/MIME wird der E-Mail-Header (bildlich der Umschlag) um entsprechende Einträge erweitert.

In den E-Mail-Programmen für Mircosoft Windows ist hauptsächlich das PGP/Inline implementiert. Nach und nach hält auch der MIME-Standard Einzug. Wenn man sich nicht sicher ist, ob das E-Mail-Programm des Empfängers mit PGP/MIME umgehen kann, sollte PGP/Inline verwendet werden, um dem Empfänger umständliches Hantieren zu ersparen.

E-Mail-Verschlüsselung mit PGP/GnuPG - Funktion
PGP nutzt »Public Key Infrasturcture«. Das bedeutet, es gibt einen öffentlichen für alle zugänglichen »Key« (PublicKey) = Schlüssel, mit dem des Empfängers werden die Daten verschlüsselt. Zusätzlich kann man mit diesem PublicKey die Echtheit eines verschlüsselten Dokuments, also Datei oder E-Mail, prüfen, beziehungsweise überprüfen, ob die Signatur („Unterschrift“) des PublicKeys des vermutlichen Erstellers (Absenders) mit der Signatur der verschlüsselten Datei übereinstimmt. Die verschlüsselten Dateien können nur mit dem SecretKey entschlüsselt werden, dessen PublicKey zur Verschlüsselung genutzt wurde.

Etwas praktischer erklärt: Alfred und Berthold möchten verschlüsselte E-Mails versenden und empfangen, zusätzlich auf einem FTP-Server Dateien ablegen, die nur der andere lesen kann. Beide erzeugen ihre eigenen Keys, jeder für sich benötigt einen PublicKey und SecretKey. Der SecretKey wird zusätzlich mit einer Passphrase oder einem Passwort geschützt. Sind die Keys erstellt, tauschen die beiden die PublicKeys, Alfred gibt Berthold seinen, und erhält Bertholds PublicKey. Dieser wird nun in die entsprechende Anwendung importiert. Dazu haben die beiden ihre PublicKeys idealerweise als Datei übergeben (zum Beispiel als name.asc oder email@dresse.asc, beziehungsweise mit Endung .gpg oder .pgp). Mittels des Fingerprints des Keys könnten die beiden prüfen, ob der richtige Key angekommen ist. Im Zweifelsfall können die beiden auch den jeweiligen Inhalt vergleichen - was sehr aufwendig ist); Alfred verschüsselt nun eine Datei mit dem PublicKey von Berthold. Sollte Alfred nun die Orginaldatei löschen, hat er Pech, denn ohne den SecretKey von Berthold ist die verschlüsselte Datei nicht mehr zu entschlüsseln. Alfred schickt Berthold nun diese Datei, dieser entschlüsselt sie, wozu er seine Passphrase eingeben muß. Da Alfred diese Datei aber noch benötigt, verschlüsselt er die entschlüsselte Datei mit dem PublicKey von Alfred und sendet sie an ihn.

Also an sich nicht wirklich schwer. Für jeden „Teilnehmer / Empfänger“ muß ein PublicKey vorhanden sein. Für Gruppen kann man auch dementsprechend jeden Beteiligten ein und denselben Public- und SecretKey inklusive Passphrase geben, nur sollte man dabei bedenken, daß damit mehrere Personen als „Absender“ in Frage kommen. Das Verfahren bei E-Mails ist identisch. Allerdings sollte man darauf achten, daß man in der Anwendung eingestellt hat, dass versendete verschlüsselte E-Mails mit dem eigenen PublicKey verschlüsselt im »Gesendet«-Verzeichnis ablegt, sonst kann man diese nicht mehr lesen.


VORHERIGE SEITE       NÄCHSTE SEITE       ZUM SEITENANFANG