Emails digital signieren und verschlüsseln mit S/MIME - Web of Trust - Thawte

Emails digital zu signieren bietet gleich zwei entscheidende Vorteile:

  • Verifizierung von Absender und Inhalt
  • Verschlüsselung der Emails

Unverschlüsselte Emails sind so sicher wie Postkarten. Das wissen die meisten. Trotzdem werden persönlichste Dinge genauso wie Konten- oder Kreditkartendaten per Email übermittelt. Der Grund, warum die wenigsten Leute ihre Emails verschlüsseln, ist wohl, dass es schon ein wenig Arbeit erfordert sich ein digitales Zertifikat einzurichten. Außerdem sind die technischen Hintergründe für die meisten unverständlich. Hinzu kommt, dass die wenigsten webbasierten Freemailer digitales signieren und verschlüsseln von Emails im Angebot haben. Aber selbst, wenn Webmailer Verschlüsselung anbieten (z.B. WEB.DE), dann bleibt immer noch die Frage wie sinnvoll ein Entschlüsseln von geheimen Botschaften auf den Servern des Email-Anbieters ist.
Wie auch immer: Mit dieser Anleitung, Schritt für Schritt, sollte das Einrichten und Verwenden einer digitalen Signatur schnell und einfach funktionieren.

Was brauchen wir?

Für das erfolgreiche Beantragen und Verwenden einer kostenlosen digitalen Signatur von Thawte brauchen wir folgendes:

  • Firefox, den erweiterbaren opensource Browser
  • Thunderbird, den erweiterbaren opensource Email-Client
  • 20-30 min Zeit, um dieses Tutorial abzuarbeiten

Das Warum, Wieso und Weshalb, also die Grundlagen, habe ich ans Ende gestellt. Wer wirklich sicher und vertrauensvoll per Email kommunizieren will, sollte auch darauf einen Blick werfen.

Übersicht des Ablaufs

  1. Anmelden bei Thawte
  2. Beantragen des Zertifikates bei Thawte
  3. Installation des Zertifikates in Thunderbird
  4. Zum beglaubigten Thawte Nutzer aufsteigen

Nicht erschrecken über die Länge dieses Artikels. Hier ist wirklich jeder einzelne Schritt dargestellt, da ich immer wieder gemerkt habe, dass es während der ganzen Prozedur Fragen über Fragen gibt. Also einfach anfangen und freuen, wenn’s am Ende funktioniert. Probleme und Anregungen als Kommentar posten.

Teil 1 - Anmeldung bei Thawte’s Web of Trust

Warum Thawte? Thawte bietet eine kostenlose digitale Signatur nach dem S/MIME Verfahren. Die Vertrautwürdigkeit der Kommunikationspartner wird durch das Web of Trust gewährleistet. Und, im Gegensatz zu anderen Zertifikaten, ist die Root-CA (Thawte) in allen gängigen Mailprogrammen bereits eingetragen; das Root-Zertifikat ist installiert.

  1. Zu Thawte gehen: Personal E-Mail Certificates und dort auf Mitglied werden durch Klick auf “Join”:
    Join Thwate
  2. Den Aufnahmeantrag (Enrollment) ausfüllen. Nicht rumlügen! Hier geht’s um vertrauensvolle Kommunikation.
    Enrollment
  3. Mitglieds-ID anlegen. Hier die Email-Adresse eintragen.
    ID
  4. Sprache und Zeichensatz einstellen. Thawte nennt das “Persönliche Einstellungen”.
    Sprache: German,
    Zeichensatz: “Benutze meine Browser-Einstellungen”.
    Sprache
  5. Passwort festlegen. Hier müssen wir einen kleinen Umweg machen. Wie wir oben gelernt haben, darf der private Schlüssel nie in falsche Hände geraten. Deshalb brauchen wir ein starkes Passwort. Das holen wir uns bei der Gibson Research Corporation. Kopier Dir einfach die ersten ca. 15 Stellen des alpha-numerischen Passworts:
    GRC-pass
    (keine Sorge, niemand kann das Passwort mit Dir in Verbindung bringen. Bei jedem Aufruf der Seite wird ein neues Passwort erzeugt.)
    Das Passwort zum einen in die Eingabemaske bei Thawte eingefügt:
    pass
    zum anderen fügen wird uns das Passwort ein eine Textdatei auf unserem Rechner ein und speichern diese. Auswendig lernen kann man das später.
  6. Sicherheits-Antworten setzen. Setze vor die vorgegebene Anzahl an Fragen Haken und beantworte die Fragen. (Antworten am besten auch lokal speichern.)
    passquest
  7. Ping back at’cha. Jetzt ist die Anmeldeprozedur geschafft. Thawte sendet nun eine email mit einem Aktivierungslink:
    Ping
  8. Warten auf die Email Thawte. Spam-Ordner checken.
  9. Die Email enthält neben dem Link zu einer Seite auch einen Ping und eine Probe Code. Beide müssen auf der Seite eingegeben werden. Copy&Paste lässt grüßen:
    Probe
  10. Damit ist die Anmeldung vollständig abgeschlossen. Nun kann man sich bei Thawte einloggen:
    Login

Teil 2 - Beantragen des Zertifikates

Das Beantragen eines digitalen Zertifikats für eine Email-Adresse läuft auch für später hinzugefügte Email-Adressen wie in diesem Abschnitt beschrieben ab: Email-Adresse angeben, auf den zugesandten Bestätigungslink klicken, Zertifikat Optionen wählen, warten bis das Zertifikat erstellt wurde, Zertifikat abholen. Es soll durchaus vorkommen, dass Leute mehr als eine Email-Adresse besitzen. Dann ist es durchaus sinnvoll nicht für jede Email-Adresse einzeln ein Zertifikat zu Beantragen, sondern ein einziges, dass alle Email-Adressen enthält.

  1. Falls wir es nicht schon sind, loggen wir uns bei Thawte ein. → my emailsnew email address → Email-Adresse eingeben → NEXT. Dies wiederholen wir für alle Email-Adressen, die ins Zertifikat aufgenommen werden sollen. Thawte sendet an alle Email-Adressen einen Bestätigungs-Link, der angeklickt werden muss. Mehr erstmal noch nicht.
  2. Alle gewünschten Email-Adressen unter “my emails” gelistet mit einem grünen Schriftzug dahinter. Gut! Dann können wir jetzt das Zertifikat beantragen. Klicken wir nun auf “certificates” → “request a certificate”. Und zwar wählen wir ein X.509 Zertifikat.
    509
    Dann geht’s wieder Schritt für Schritt weiter:
  3. Haken vor den Namen, “Employment Information” sollte es in unserem Fall keine geben, …. es sei denn Dein Arbeitgeber hat einen Vertrag mit Thawte.
    employment
  4. Unser Zertifikat soll für Mozilla-Derivate (Firefox, Thunderbird, Seamonkey) ausgestellt werden.
    firefox
    Aber man sieht schon: Opera-Nutzer werden nicht benachteiligt. Ein Zertifikat für M$-Produkte (IE, Outlook) - das wäre meiner Meinung nach so sinnvoll wie Kühlschränke an Eskimos zu verkaufen. ;-)
  5. Hier kommen unsere zuvor registrierten Email-Adressen ins Spiel. Alle, die ins Zertifikat aufgenommen werden wollen werden angehakt - könnte ja sein, dass man das aus gutem Grund getrennt halten will.
    Email-Adressen
  6. Wir akzeptieren die “Default Extensions”:
    accept
  7. … und entscheiden uns selbstverständlich für die starke 2048bit Länge des Schlüssels:
    2048bit
  8. Alles richtig? Die Übersicht. Wir bestätigen mit FINISH:
    confirm
  9. Jetzt sollte ein Dialog von Firefox erscheinen, dass über das Erstellen des Schlüssels informiert. Je nach Rechnerleistung bleibt das länger oder nur ganz kurz zu sehen. Damit wurde ein Teil des Schlüssels in Firefox hinterlegt. Und der andere folgt so gleich….
    wait
  10. Warten auf die Anfertigung des Zertifikats bei Thawte. Jetzt kann man je nach Tageszeit schon mal einen Kaffee trinken gehen und von Zeit zu Zeit die Emails checken.
  11. Prima, die Email mit dem Link zum Abholen des zweiten Teils des Zertifikats ist eingetroffen. Ein Klick darauf wird uns von Firefox bestätigt:
    installed
    Nun ist das Zertifikat in Firefox installiert. Aber wir brauchen es ja in Thunderbird. Das kommt im 3. Teil.

Teil 3 - Installation des Zertifikats in Thunderbird

Nach Abarbeiten des 2. Teils ist das Zertifikat also in Firefox installiert. Wir müssen jetzt noch folgendes tun: Zertifikat aus Firefox exportieren (Backup) und in Thunderbird importieren und dann noch dem Thunderbird verklickern es zu benutzen.

  1. In Firefox: Extras → Einstellungen → Erweitert → Verschlüsselung → “Zertifikate anzeigen” → “Ihre Zertifikate”:
    export
    (zum Vergrößern aufs Bild klicken)
  2. Das entsprechende Zertifikat markieren und auf “Backup” klicken. Nun wird nach einem Passwort gefragt. Dieses Passwort schützt den privaten Schlüssel, also die Datei, in der der Schlüssel aufbewahrt wird. Das Passwort sollte also nicht zu einfach sein! Jetzt liegt das Zertifikat als Datei auf der Festplatte.
  3. Zum Import des Zertifikats in Thunderbird begeben wir uns an gleiche Stelle: Extras → Einstellungen → Erweitert → Zertifikate → “Zertifikate …” → “Ihre Zertifikate” → Importieren.
    Wir geben die eben mit Firefox erstellte Datei an, geben das Passwort ein, und schon ist das Zertifikat in Thunderbird. Puh, fast geschafft…. Endspurt!
  4. Jetzt wollen wir das Zertifikat den Email-Adresse(n) zuweisen. In Thunderbird: Extras → Konten. Dort dann auf den Unterpunkt “S/MIME-Sicherheit” des gewünschten Kontos.
  5. Die Zeile für das Zertifikat bei “Digitale Unterschrift” sollte in der Regel noch leer sein. Wir klicken rechts neben das Feld auf “Auswählen” und selektieren unser Zertifikat. Thunderbird sollte das Zertifikat gleich bei “Verschlüsselung” mit eintragen, was Sinn macht. Wer will, kann schon jetzt einen Haken bei “Nachricht digital unterschreiben als Standard” setzen.
    smime
    (zum Vergrößern aufs Bild klicken)
  6. Geschafft! Ab jetzt können wir Emails digital unterschreiben und auch verschlüsseln, vorausgesetzt wir haben den öffentlichen Schlüssel einer anderen Person mit der wir kommunizieren wollen (→ Grundlagen!).

Die erste signierte Email

Auf die übliche Art eine Nachricht verfassen, und dann unter “S/MIME” (mit dem Schloss) sicherstellen, dass “Nachricht unterschreiben” angehakt ist:

sign

Dann erscheint auch unten rechts, je nach verwendetem Theme, ein entsprechendes Symbol.
Nachricht verschlüsseln” kann nur sinnvoll verwendet werden, wenn wir im Besitz des öffentlichen Schlüssels des Kommunikationspartners sind, also schon mindestens einmal eine signierte Email von ihm erhalten haben.

Zertifikate der Kommunikationspartner

Eins ist klar: zum Versenden verschlüsselter Emails braucht Thunderbird den öffentlichen Schlüssel der Kommunikationspartner (→ Grundlagen!). Den sackt Thunderbird stillschweigend ein, sobald eine digital signierte Email eingeht. Nachgucken, welche öffentlichen Schlüssel Thunderbird schon kassiert hat, kann man unter: Extras → Einstellungen → Erweitert → Zertifikate → Zertifikate… → “Zertifikate anderer Personen”.
Nur an diese Personen kann verschlüsselte Nachrichten versenden.

Signierte Emails erkennen
Wenn man eine signierte Email erhält, wird das ebenfalls deutlich erkennbar angezeigt. Ein klick auf das Briefkuvert offenbart Details der digitalen Signatur und auch, welchen Status der “Web of Trust”-Nutzer hat. Steht dort
Unterschreiben von: Thawte Freemail Member
hat der Sender noch keinen vertrauenswürdigen Status erreicht (→ Wer traut wem?).

receive

Wer traut wem?

Eine digitale Signatur dient nicht zur dazu, dass der Empfänger verschlüsselt antworten kann, sondern es auch darum dem Absender und seiner Nachricht zu vertrauen. Auf technischer Seite wird vom Root-Zertifikat (→ Grundlagen) sichergestellt, dass das Zertifikat des Absenders gültig ist. Aber wer bestätigt, dass der Absender derjenige ist, der er vorgibt zu sein?

Gegenseitig vertrauen - Das Web of Trust

Im Web of Trust werden Nutzer durch Vertrauenspunkte beglaubigt bzw. akkreditiert. Ein Web of Trust Nutzer braucht mind. 50 Punkte, um vertrauenswürdig zu sein. Diese erhält er, indem er sog. Web of Trust Notaren vorstellig wird und sich dort mit einem offiziellen Dokument ausweißt. Hat er 50 Punkte erreicht, wird sein echter Name ins Zertifikat aufgenommen. Bis dahin muss er sich zufrieden geben “Thawte Freemail Member” zu heißen. Wer 100 Punkte erreicht, wird selbst Notar und kann anderen Vertrauenspunkte geben.

Woher bekomme ich Trust-Points?

WOT NotaryVon einem Web of Trust Notary. Eigentlich sind sogar mehrere nötig. Du brauchst mind. 50 Punkte,aber ein Notary kann max. 35 Punkte vergeben, manche Notare können nur 10 Punkte vergeben. Findest Du in der Web of Trust Notary Map einen Notar in Deiner Nähe, dann kontaktierst Du ihn. Notare sollten die Beglaubigung kostenlos durchführen. Jedenfalls gibt es genügend, die es tun. Findest Du einen, der Dir 15 Punkte und einen, der Dir 35 Punkte gutschreibt, bist Du schon ein “trusted member” und Dein Echter Name erscheint im Zertifikat - Deine Identität ist verifiziert. Ach ja, und bevor ich’s vergesse: Ich bin auch ein Web of Trust Notary und kann Dir Punkte geben. Dazu musst Du mir persönlich vorstellig werden und eine Kopie eines offiziellen Dokuments (sowie das Original) mitbringen.

Grundlagen

Wer sich die Grundlagen schenken will, liest gleich weiter unten weiter, soll sich aber nicht wundern, wenn’s irgendwo hakt. Eine kleine Denkaufgabe zum Beginn:

Alice möchte Bob ein Schriftstück verschlossen in einer Kiste zukommen lassen. Alice und Bob können sich nie persönlich treffen. Es darf nie ein Schlüssel ausgetauscht werden. Wie schaffen es Alice und Bob dennoch die Kiste im verschlossenen Zustand zu versenden und Bob die geheime Nachricht zukommen zu lassen?
Tipp: Nicht anfangen sich in Matrojschka Überlegungen zu verstricken.”

Was hat eine digitale Unterschrift / Signatur mit Verschlüsselung zu tun?
Bei der hier vorgestellten Methode zur Signierung und Verschlüsselung handelt es sich um ein sogenanntest PKI-Verfahren. Hierbei existieren private und öffentliche Schlüssel.

Mit dem privaten Schlüssel können Nachrichten signiert und entschlüsselt werden. Mit dem öffentlichen Schlüssel kann eine Nachricht verschlüsselt werden und überprüft werden, ob die Nachricht seit dem Versand verändert wurde. Der private Schlüssel wird niemals ausgetauscht bzw. versendet. Den öffentlichen Schlüssel darf jeder kennen, er ist öffentlich. (Der öffentliche Schlüssel entspricht der digitalen Signatur. Der private Schlüssel entspricht dem digitalen Zertifikat.) Bitte in den Kopf hämmern!

Digital signieren - dem Empfänger und der Nachricht vertrauen
Diese Tatsachen sind extrem wichtig. Jetzt kommen die Hintergründe. Arbeiten wir weiterhin mit Alice und Bob. Beide wollen vertrauensvoll (signiert) und verschlüsselt miteinander per Email kommunizieren. Beide besitzen ein digitales Zertifikat. Das digitale Zertifikat ist durch ein starkes Passwort geschützt. Alice verfasste eine Email an Bob. Mit ihrem digitalen Zertifikat, dem privaten Schlüssel, unterzeichnet Alice die Email. Dabei wird unter Zuhilfenahme des privaten Schlüssels der öffentliche Schlüssel erzeugt und ein Hash-Wert aus dem Nachrichteninhalt errechnet. Der öffentliche Schlüssel zusammen mit dem Hashwert wird an die Email angehängt (macht sich manchmal als .s7m-Anhang bemerkbar). Dieser Vorgang ist eine Einbahnstrasse. Nur der Besitzer des privaten Schlüssels kann den Hashwert erzeugen, der zum zugehörigen öffentlichen Schlüssel passt. Bob, der Empfänger, kann mit Hilfe des öffentlichen Schlüssels Richtigkeit des Hashwertes überprüfen. Kein Verfahren der Welt (auch kein öffentlicher Schlüssel) kann denselben Hashwert berechnen bwz. den Hashwert fälschen. Nur, wenn die Nachricht nicht verändert wurde, also im Originalzustand bei Bob eintrifft, stimmen der mitgelieferte Hashwert (aus privaten Schlüssel bei Alice berechnet) und der von Bob berechnete Hashwert (öffentlicher Schlüssel) überein. Geschafft! Alice hat Bob also eine vertrauensvolle Email zugesendet und Bob kann sicher sein, dass dies die Nachricht ist, wie sie Alice geschrieben hat und ganz wichtig: Er kann sicher sein, dass die Email wirklich von Alice kommt!

Verschlüsseln - die Nachricht bleibt geheim
Bob hat neben der Nachricht jetzt auch den öffentlichen Schlüssel von Alice erhalten. Jetzt kann Bob eine Nachricht an Alice verfassen. Die Nachricht mit seinem privaten Schlüssel digital signieren und danach mit Hilfe des öffentlichen Schlüssels von Alice auch noch verschlüsseln. Damit ist das “Schnappschloss” eingerastet. Nicht einmal Bob kann die Nachricht jetzt wieder entschlüsseln. Nur Alice, die ja den privaten Teil zu ihrem öffentlichen Schlüssel hat, kann die Nachricht wieder entschlüsseln. Mit der Nachricht erhält Alice nun auch den öffentlichen Schlüssel von Bob. Von nun an können beide vertrauensvoll und verschlüsselt kommunizieren. Und, wenn sie nicht gestorben sind …

… Moment mal! Wer garantiert hier überhaupt, dass Alice wirklich Alice und Bob wirklich Bob ist? Das erledigt die Zertifizierungs-Autorität (certification authority → CA). Diese hat nämlich den öffentlichen Schlüssel der beiden, und somit die digitale Signatur, mit ihrem Schlüssel ebenfalls digital signiert. Also die CA unterschreibt die öffentlichen Schlüssel, um die Authentizität der Kommunikationspartner zu garantieren. Ganz oben in der Signatur-Hierarchie steht eine Root-CA (z.B. Thawte, DFN, etc.)

Was haben wir daraus gelernt?

  • Vor dem Empfang der ersten verschlüsselten Nachricht muss der öffentliche Schlüssel versendet werden.
  • Der private Schlüssel ist das Allerheiligste und sollte entsprechend geschützt werden.
  • Wenn sich niemand Zugriff auf den privaten Schlüssel verschaffen kann, kann auch niemand die abgefangenen Nachrichten dechiffrieren.

Appendix - Der Blinddarm

Weiterführende Informationen zum Thema und Antworten auf Fragen, wie z.B. “Wie sicher ist das denn jetzt?” oder “Gibt es nur Thawte als Anbieter?”.

Fußangel Webmail

Verschlüsselte Emails können nur in einem Email-Programm mit entsprechendem privaten Schlüssel entschlüsselt werden. Wer also über ein Webmail-Interface auf seine Emails zugreift, sieht nur den verschlüsselten Buchstabensalat. Einige Webmailer (z.B. Horde) können mit dem S/MIME-Verfahren umgehen. Bleibt wieder die Frage nach der Sicherheit. Denn dazu muss natürlich der private Schlüssel auf dem Webserver rumtümpeln und dort auch benutzt werden. Abhilfe schafft es hier sich den Thunderbird-Portable aus den Portable Apps entsprechend mit Zertifikaten zu versehen und auf einem USB-Stick mit sich herum zu tragen.

S/MIME vs. PGP (GnuPG)

Letztendlich ist das eine Einstellungsfrage. Ich persönlich bevorzuge für die verschlüsselte Email-Kommunikation das hier vorgestellte S/MIME Verfahren, da bei diesem Verfahren nicht nur der Text der Email, sondern auch der Anhang mit verschlüsselt wird. Außerdem integriert sich S/MIME nahtlos in gängige Email-Programme, man benötigt kein Zusatzprogramm (oder Erweiterung), und die Verifikation des Absenders erfolgt per Root-Zertifkat (das gegenseitige Unterzeichnen wie bei PGP entfällt. Nach einer erfolgreichen Installation ist die vertrauensvolle Kommunikation per S/MIME einfacher zu handhaben. Dagegen hat PGP den Vorteil, dass damit nicht nur Emails, sondern jeglicher Text verschlüsselt werden kann, sogar ganze Dateien (auf der Festplatte). Dateien können auch signiert werden. Großes Problem hierbei: Entweder man vertraut dem öffentlichen Schlüssel des Kommunikationspartners einfach so oder man muss sich einmal persönlich treffen, um die öffentlichen Schlüssel gegenseitig zu tauschen. Aber wer reist schon gerne in der Welt umher, nur um die digitalen Signaturen seiner Kommunikationspartner zusammen zu sammeln?

Andere Anbieter digitaler Signaturen

Der Anbieter einer digitalen Signatur muss so bekannt sein, dass sein Root-Zertifikat in allen gängigen Email-Clients vorinstalliert ist. Sonst kann der Email-Client die Authentizität des Absenders nicht überprüfen. So bietet z.B. WEB.DE digitale Signaturen an. Diese sind aber nur vom WEB.DE Trust-Center unterschrieben. D.h. man müsste dem Empfänger von signierten Email immer erst auffordern die Root-Zertifikate von WEB.DE nachzuinstallieren. Ein Ding der Unmöglichkeit. Wiederum andere Anbieter, wie z.B. Verisign bieten zwar persönliche Zertifikate für Email-Kommunikation an, aber nur gegen Geld. Also für den privaten Gebrauch weniger geeignet. Ein Liste mit Anbietern habe ich bei Mozilla gefunden.

Wie sicher ist das Verfahren?

Bei der Signierung und Verschlüsselung kommt ein 2048bit langer Schlüssel mit RSA zum Einsatz. Zum Thema Knackbarkeit am besten den Abschnitt Sicherheit von RSA bei Wikipedia lesen. Aber vorweg: Ja, es ist sicher.

Weiterführende Literatur

Technobubble , , , ,

Leave a Reply