<- Thunderbird konfigurieren Inhalt Wegwerf-E-Mail Adressen ->

E-Mails verschlüsseln mit OpenPGP

OpenPGP ist ein etablierter Standard für die Verschlüsselung und Signatur von E-Mails. Die beiden Begriffe sollen kurz erlätert werden:

  1. Verschlüsseln von E-Mails bedeutet, dass nur die Empfänger den Inhalt lesen können und die Vertraulichkeit der Nachricht gewährleitet bleibt.

  2. Signieren von E-Mails bedeutet, dass die Authentizität der Nachricht bestätigt wird, dass die Nachricht nicht auf dem Weg verändert wurde.

Asymmetrische Verschlüsselung

OpenPGP nutzt asymmetrische Verschlüsselung. Das bedeutet, dass der Anwender ein Schlüsselpaar bestehend aus einem geheimen und einem öffentlichen Schlüssel besitzt. Während der geheime Schlüssel sorgfältig geschützt nur dem Anwender selbst zur Verfügung stehen sollte, ist der öffentliche Schlüssel an alle Kommunikations­partner zu verteilen.

Software installieren

Für die Nutzung von OpenPGP in Mozilla Thunderbird muss man zusätzliche Software installieren. Man benötigt GnuPG oder das kommerzielle PGP für die Krypto­operationen und das Add-on Enigmail für Thunderbird zur Vereinfachung des Handling im täglichen E-Mail Chaos.

OpenPGP-Schlüssel verwalten

Die Verwaltung der OpenPGP-Schlüssel findet Sie in Thunderbird unter dem Menüpunkt "OpenPGP / Schlüssel verwalten". Ist die Liste noch leer, wählt man zuerst den Menüpunkt "Erzeugen -> Neues Schlüsselpaar". Diesen Schritt übernimmt auch der Assistent zur Einrichtung von Enigmail.

OpenPGP-Schlüssel verwalten
  1. Um verschlüsselt zu kommunizieren, muss den Kommunikationspartnern der eigene öffentliche Schlüssel zur Verfügung gestellt werden. Sie müssen Ihren öffentlichen Schlüssel exportieren:

    • Der einfachste Weg nutzt die Schlüsselserver im Internet. In der Schlüsselverwaltung findet man den Menüpunkt "Schlüssel-Server - Schlüssel hochladen". Der öffentliche Schlüssel wird auf den Schlüsselserver exportiert und steht dort allen Partnern zum Download zur Verfügung. Die verschiedenen Server synchronisieren ihren Datenbestand.

    • Alternativ können Sie Ihren öffentlichen Schlüssel als E-Mail Attachment versenden. Aktivieren Sie die Option "OpenPGP - Meinen öffentlichen Schlüssel anhängen" beim Schreiben einer Mail.

    • Der öffentliche Schlüssel kann auch als Datei auf einem Webserver abgelegt werden. Den Menüpunkt für den Export in eine Datei findet man unter "Datei -> Schlüssel exportieren" in der Schlüsselverwaltung.

  2. Um an einen Kommunikationspartner verschlüsselte E-Mails zu senden oder die Signatur erhaltener Nachrichten zu prüfen, benötigen Sie den öffentlichen Schlüssel des Partners. Diesen Schlüssel müssen Sie importieren. Auch hierfür gibt folgende Möglichkeiten:

    • Sie können den passenden Schlüssel für eine E-Mail Adresse auf den Keyservern im Internet suchen. Menüpunkt: "Schlüssel-Server - Schlüssel suchen". Geben Sie die E-Mail Adresse als Suchkriterium an oder die ID des OpenPGP-Schlüssels (zB. 0xF1305880, wenn bekannt) und wählen Sie einen Keyserver aus der Liste. Wurden mehrere Schlüssel für eine E-Mail Adresse gefunden, dann ist der zuletzt erzeugte Schlüssel meist richtig.

    • Sie können per E-Mail empfangene Schlüssel als Datei speichern oder eine Datei mit dem Schlüssel aus dem Netz herunter laden, wenn der Link bekannt ist. Um diese Datei zu importieren, wählen Sie den Menüpunkt "Datei / Importieren" in der Schlüsselverwaltung.

  3. Um die Echtheit der Schlüssel der Kommunikationspartner zu prüfen, gibt es zwei Möglichkeiten:

    • Sie können das "Web of Trust" nutzen (siehe unten).

    • Sie können den Fingerabdruck des Schlüssel prüfen. Den korrekten Fingerprint muss Ihnen der Kommunikations­partner über einen sicheren Kanal mitteilen. (Das ist manchmal nicht so einfach.) Sie klicken mit der rechten Maustatste auf den Schlüssel und wählen den Punkt "Eigenschaften". Dort vergleichen Sie den übermittelten Fingerabdruck.

      Fingerabdruck

      Die im Screenshot markierte Option "absolutes Vertrauen" sollten Sie nur für eigene Schlüssel verwenden. Ob Sie dem Schlüssel "gering" oder "voll" vertrauen, hängt davon ab, wie sicher Sie sind, dass der Schlüssel zu der richtigen Person gehört. Dafür sind keine Regeln definiert.

Verschlüsselte E-Mails schreiben und empfangen

Wenn Sie die Software installiert haben, ein eigenes Schlüsselpaar erzeugt haben und die Schlüssel mit Ihren Kommunikations­partnern ausgetauscht haben, dann haben Sie alle Hürden überwunden. Der Rest ist ein Kinderspiel.

  1. Beim Schreiben einer E-Mail können Sie die Verschlüsselung mit einem Klick auf den OpenPGP-Button aktivieren. Wenn Sie die Option "PGP/MIME" aktivieren, werden auch Anhänge automatisch mit verschlüsselt. Wenn diese Option deaktiviert ist, müssen Sie sich selbst um die Verschlüsselung der Anhänge kümmern.

    verschlüsselte E-Mail schreiben

    Wichtig: der Betreff wird NICHT verschlüsselt. Verwenden Sie einen harmlosen Betreff, der keine Hinweise auf den Inhalt liefert.

  2. Beim Empfang einer verschlüsselten E-Mail werden Sie nach der Passphrase für Ihren Schlüssel gefragt und die Mail wird entschlüsselt.

Erste Übungen mit "Adele"

Adele ist der freundliche OpenPGP E-Mail-Roboter der G-N-U GmbH. Man kann mit dem Robot seine ersten verschlüsselten Mails austauschen und ein wenig üben ohne Freunde mit Anfänger­probleme zu belüstigen.

  1. Als erstes schickt man den eigenen öffentlichen Schlüssel per E-Mail an adele@gnupp.de. Den Schlüssel hängt man als Anhang an die Mail an, indem man die Option "OpenPGP - Meinen öffentlichen Schlüssel anhängen" vor dem Versenden der Mail aktiviert.

    OpenPGP Key anhängen
  2. Als Antwort erhält man nach einigen Minuten eine verschlüsselte E-Mail von Adele. Die E-Mail wird nach Abfrage der Passphrase entschlüsselt und enthält den Schlüssel von Adele: Hallo,

    hier ist die verschlüsselte Antwort auf Ihre E-Mail.

    Ihr öffentlicher Schlüssel wurde von mir empfangen.

    Anbei der öffentliche Schlüssel von adele@gnupp.de,
    dem freundlichen E-Mail-Roboter.

    Viele Grüsse,
    adele@gnupp.de

    -----BEGIN PGP PUBLIC KEY BLOCK-----
    Version: GnuPG v1.4.9 (GNU/Linux)

    mQGiBDyFlIkRBACfVHJxv47r6rux7TwT4jHM7z/2VfyCrmcRegQEsbdLfqu3mEmK
    RouuaDQukNINWk2V2ErOWzFnJqdzpapeuPJiOWp0uIEvU3FRPhYlytw9dFfwAHv4
    MJ7639tAx9PfXBmZOd1PAoE451+VLhIGlLQiFGFppJ57SZ1EQ71/+/nkSwCg8Mge
    ....
    EQIABgUCPIWUlQASCRDlczRpkqs/9wdlR1BHAAEBv20AoJJGeeZjMCSbXtmNSwfW
    QsLOd0+4AKCdXwt552yi9dBfXPo8pB1KDnhtbQ==
    =ERT8
    -----END PGP PUBLIC KEY BLOCK-----

    Man kann die Zeilen von "BEGIN PGP PUBLIC KEY BLOCK" bis inklusive "END PGP PUBLIC KEY BLOCK" mit der Maus markieren, in die Zwischenablage kopieren und in der Schlüsselverwaltung über "Bearbeiten - Aus Zwischenablage importieren" einfügen.

  3. Alternativ kann man den Schlüssel von "Adele" auch auf den Keyservern suchen. Als Training sollten Sie auch diesen Weg probieren.

  4. Jetzt kann man Adele verschlüsselte E-Mails schicken. Als Antwort erhält man umgehend eine gleichfalls verschlüsselte E-Mail mit dem gesendeten Text als Zitat. Hallo,

    hier ist die verschlüsselte Antwort auf Ihre E-Mail.

    Ich schicke Ihnen Ihre Botschaft im Wortlaut zurück, damit Sie
    sehen, dass ich sie erfolgreich entschlüsseln konnte.

    > Hello Adele,
    >
    > hope you are feeling well.

Web of Trust

Im Prinzip kann jeder Anwender einen Schlüssel mit beliebigen E-Mail Adressen generieren. Um eine Basis für Vertrauen zu schaffen, bietet OpenPGP das "Web of Trust".

Hat Beatrice die Echtheit des Schlüssels von Anton überprüft, kann sie diesen Schlüssel mit ihrem geheimen Schlüssel unterschreiben. Ein anderer Nutzer, der den Schlüssel von Beatrice bereits überprüft hat, kann damit aufgrund der Unterschrift auch dem Schlüssel von Anton vertrauen. Es bildet sich ein weltweites Netz von Vertrauensbeziehungen. Die Grafik zeigt eine mögliche Variante für den Key von Anton (A).

Web of Trust

Um den Schlüssel eines Kommunikationspartners zu unterschreiben, ist in der Schlüsselverwaltung der Schlüssel zu auszuwählen und der Menüpunkt "Bearbeiten -> Unterschreiben" zu wählen. In dem sich öffnenden Dialog wählen Sie die eigenen privaten Schlüssel, mit dem Sie unterschreiben wollen und bestätigen, dass Sie die Identität des Inhabers sehr genau überprüft haben.

Schlüssel signieren

Danach können Sie den unterschriebenen Schlüssel per Mail an den Inhaber senden oder auf die Keyserver exportieren, damit er anderen Nutzern zur Verfügung steht. Bitte exportieren Sie unterschriebene Schlüssel nur nach Rücksprache mit dem Inhaber auf Keyserver. Manche Nutzer möchten nicht, dass ihre Schlüssel dort zu finden sind.

Sichere Konfiguration

Mit einigen kleinen Anpassungen kann man die Sicherheit der OpenPGP-Verschlüsselung verbessern. Um GnuPG zu konfigurieren, ist die Datei "gpg.conf" mit einem Texteditor zu öffnen. Die Datei finden Sie bei UNIX-artigen System im Verzeichnis "$HOME/.gnupg" und beim aktuellen Windows im Verzeichnis "%APPDATA%\GnuPG".

Folgende Optionen sind unserer Meinung nach zu sinnvoll: # keine Informationen über GnuPG-Version und Betriebssystem einfügen
no-emit-version
no-comments

display-charset utf-8

# 16-stellige Key-IDs verwenden statt 8-stelliger (schwerer zu faken)
keyid-format 0xlong

# Keyserver-URLs in Keys ignorieren (Tracking möglich)
keyserver-options no-honor-keyserver-url

# Empfohlene Preferenzen für Schlüsselgenerierung vom
# Debian-Team: http://keyring.debian.org/creating-key.html
personal-digest-preferences SHA512
cert-digest-algo SHA512
default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed

# sonstiges
fixed-list-mode
verify-options show-uid-validity
list-options show-uid-validity

Keyserver mit SSL-Verschlüsselung

Normalerweise ist die Komunikation mit den Keyservern nicht verschlüsselt. Ein Beobachter könnte allso verfolgen, welche OpenPGP-Schlüssel Sie suchen. Der SKS-Keyserver Pool bietet mit den Servern hkps://hkps.pool.sks-keyservers.net auch SSL-Verschlüsselung für den Datenverkehr mit dem HKPS-Protokoll. Um diese Verschlüsselung zu nutzen, sind folgende Schritte nötig:

  1. SSL-Verschlüsselung mit dem HKPS-Protokoll können Sie nur mit "gnupg2" oder mit dem "gnupg-curl" nutzen. Unter Linux installieren Sie bitte eines der gleichnamigen Pakete, unter Windows ist "gnupg2" in gpg4win enthalten.

  2. Download des Root-Zertifikates des SKS-Keyserver Pool: sks-keyservers.netCA.pem. Speichern Sie das Root-Zertifikat auf Ihren Rechner (unter Linux z.B. im Verzeichnis $HOME/.gnupg/).

  3. Die Konfigurationsdatei "gpg.conf" ist mit einem Editor zu öffnen und folgende Optionen sind einzufügen bzw. anzupassen: keyserver-options ca-cert-file=/home/<user>/.gnupg/sks-keyservers.netCA.pem
    keyserver hkps://hkps.pool.sks-keyservers.net

    Das Verzeichnis "/home/<user>/.gnupg/" ist dabei durch den Speicherort des Root-Zertifikates des Keyserver Pool zu ersetzen.

  4. Wenn Sie das Add-on TorBirdy in Thunderbird nutzen, dann müssen Sie auch dort den Keyserver anpassen. Öffnen Sie die Einstellungen von TorBirdy und gehen Sie zum Reiter "Enigmail":

    HKPS-Keyserver in TorBirdy konfigurieren

 

<- Thunderbird konfigurieren Inhalt Wegwerf-E-Mail Adressen ->