S/MIME steht für „Secure / Multipurpose Internet Mail Extensions“ und ist ein Standard für die Verschlüsselung und Signierung von E-Mails mit einem hybriden Verschlüsselungssystem. Neben dem S/MIME-Verfahren findet noch das OpenPGP-Verfahren größere Anwendung bei der Verschlüsselung von E-Mails. Sie funktionieren beide nach ähnlichen Verfahren, sind aber nicht kompatibel. Da S/MIME bereits von vielen E-Mail Programmen unterstützt wird, stelle ich hier dieses Verfahren vor.
Funktionsweise
Mit S/MIME kann relativ einfach die E-Mail-Kommunikation absichert werden. Alles, was dafür benötigt wird, ist eine Kombination aus einem privaten und einem öffentlichen Schlüssel mit einem Zertifikat. Dahinter steckt ein mathematisches Verfahren bzw. ein asymmetrisches Kryptosystem, dies wird auch als Public-/Private-Key-Verfahren bezeichnet. Mit dem Zertifikat wird über eine Zertifizierungsstelle die Identität eines Benutzers nachgewiesen. Eine E-Mail kann damit sowohl signiert, verschlüsselt oder signiert und verschlüsselt werden.
Signierung
Durch das Signieren per S/MIME kann der Empfänger sicher sein, dass die E-Mail tatsächlich vom Absender stammt und dass die Nachricht bei der Übertragung nicht manipuliert worden ist. Eine Signatur besteht im Allgemeinen aus dem Zertifikat des Absenders inklusive Zertifikatskette, dem Signaturalgorithmus und dem verschlüsselten Hash-Wert. Der Hash-Wert repräsentiert den Inhalt der E-Mail mit einer eindeutigen Zeichenkette, der durch einen Algorithmus generiert worden ist.
Die E-Mail liegt auch weiterhin noch im Klartext vor. Was den Vorteil hat, dass E-Mail Programme ohne S/MIME Unterstützung die E-Mails auch weiterhin noch anzeigen können. Sie zeigen die E-Mail wie gewöhnlich an, mit der Signatur-Datei im p7s-Format als Anhang. Es gibt noch ein weiteres Verfahren, die Opak-Signatur. Hier wird die komplette E-Mail als signierter Anhang gespeichert und kann dadurch nicht mehr von Programmen ohne S/MIME gelesen werden. Dieses Verfahren findet aber nur selten Verwendung.
Signierte E-Mails werden automatisch von der E-Mail-Anwendung überprüft und entsprechend mit einem Icon markiert. Mit einem Klick auf das Icon werden weitere Details eingeblendet.
Verschlüsselung
Um eine E-Mail verschlüsseln zu können, wird der öffentliche Schlüssel des Empfängers benötigt. Dieser wird automatisch übertragen, sobald eine signierte E-Mail empfangen wird. S/MIME verschlüsselt dann mit einem Hybridverfahren die Nachricht. Eine E-Mail enthält den symmetrisch verschlüsselten Inhalt und den asymmetrisch verschlüsselten Schlüssel. Das bedeutet, dass der einmalig gültige Schlüssel mit dem öffentlichen Schlüssel des Empfängers verschlüsselt wird. Dieser kann den Schlüssel mit seinem privaten Schlüssel entschlüsseln und so die komplette Nachricht entschlüsseln.
Anwendung von S/MIME
Um nun E-Mails per S/MIME zu signieren und zu verschlüsseln, wird zuerst ein Zertifikat benötigt.
Erstellung eines Zertifikates
Bei S/MIME geben zentrale Zertifizierungsstellen, die Certificate Authorities (CA), nach einer Kontrolle der Benutzerdaten ein Zertifikat aus. Das Format der S/MIME-Zertifikate ist im ITU-Standard X.509v3 definiert und diese werden daher häufig auch als X.509 Zertifikate bezeichnet. Die CA beglaubigt nach einer Prüfung die Schlüssel des Kunden und stellt ihm als Beleg ein digitales Zertifikat aus. Dieses muss anschließend im Betriebssystem oder E-Mail- Programm importiert werden.
Die Zertifikate werden in vier unterschiedlichen Klassen angeboten. Sie unterscheiden sich im Umfang der Überprüfung der Daten und damit in der Vertrauenswürdigkeit, die einem Zertifikat entgegengebracht werden kann. Bei Klasse-1-Zertifikaten wird die Anschrift einer Plausibilitätsprüfung unterzogen und getestet, ob der Antragsteller Zugriff auf die angegebene E-Mail-Adresse hat. Diese werden zum Teil auch kostenlos angeboten. Bei der 2. Klasse werden der Namen und die Firma im Zertifikat mit aufgenommen und mit einer Ausweiskopie verifiziert. Bei Klasse-3-Zertifikaten erfolgt eine persönliche Authentifizierung über das Postident-Verfahren. Bei der 4. Klasse muss die Authentifizierung persönlich vor Ort erfolgen, sie findet durch den hohen Aufwand und den Kosten keine konkrete Anwendung.
Die Firma StartCom Ltd. (Start Commercial Limited) bietet das kostenlose Klasse-1-Zertifikat „StartSSL Free“ an, welches ein Jahr gültig ist. Um ein Zertifikat zu erhalten, muss man angemeldet sein. Dazu klickt man rechts oben auf das Icon mit den Schlüsseln. Nach der erfolgreichen Registrierung muss ein Bestätigungscode eingeben werden, welcher parallel per E-Mail versendet wird. Anschließend muss die Stärke des privaten Schlüssels ausgewählt werden. Am besten wählt man „2048 (High Grade)“. Danach wird mit einem Klick auf „Continue“ und im nächsten Dialog auf „Install“ das Zertifikat im Web-Browser bzw. Betriebssystem installiert.
Um das Zertifikat in Outlook zu verwenden, muss es zunächst exportiert werden. Für die Registrierung habe ich Google Chrome verwendet, daher bezieht sich die Anleitung auf diesen Web-Browser. Rechts oben das Menü „Einstellungen“ auswählen und anschließend ganz unten auf „Erweiterte Einstellungen anzeigen“ klicken. Nun wählt man unterhalb von „HTTP/SSL“ „Zertifikate verwalten …“ aus. Hier wird das neue Zertifikat angezeigt, man muss es auswählen und auf „Exportieren …“ klicken. Im nachfolgenden Assistenten auf „Weiter“ klicken und die Option „Ja, privaten Schlüssel exportieren“ auswählen. Im nächsten Dialog noch „Alle erweiterten Eigenschaften exportieren“ auswählen und ein Passwort vergeben. Im letzten Dialog muss noch ein Pfad für den Speicherort angegeben werden und mit „Weiter“ gelangt man zum letzten Dialog, den man mit „Fertig stellen“ beendet.
Konfiguration von Outlook
Um nun das Zertifikat in Outlook zu importieren, klickt man links oben auf „Datei“, dann auf „Optionen“ und wählt links unten „Trust Center“ aus und klickt danach auf „Einstellungen für das Trust Center …“. Im folgenden Fenster wählt man nun „E-Mail-Sicherheit“ aus. Im Abschnitt „Digitale IDs (Zertifikate)“ wählt man nun „Importieren/Exportieren…“ aus. Dort muss man die exportierte Zertifikatsdatei auswählen und das vorhin vergebene Passwort eingeben und den Import bestätigen.
Nun wählt man die Optionen „Ausgehenden Nachrichten digitale Signatur hinzufügen“ und „Signierte Nachrichten als Klartext senden“ aus und klickt auf den Button „Einstellungen“. Um einen möglichst hohen Sicherheitsstandard zu erreichen, wählt man nun bei „Hashalgorithmus“ die Option „SHA512“ und bei „Verschlüsselungsalgorithmus“ die Option „AES (256-bit)“ aus.
Nun hat man die S/MIME-Einstellungen erfolgreich konfiguriert und kann beim Erstellen einer E-Mail unter „Optionen“ auswählen, ob die Mail per S/MIME verschlüsselt oder signiert werden soll.
[…] E-Mails verschlüsselt und signiert werden können. Ich beschäftige mich zur Zeit auch mit der S/MIME-Verschlüsselung. Dazu werde ich in den nächsten Tagen auch einen Blog-Beitrag veröffentlichen. Passend dazu – […]