S/Mime oder PGP

Von der Seite Verschlüsseln und Signieren ist die Verschlüsselung mit symmetrischen und asymmetrischen Verfahren bekannt, aber trotzdem gibt es noch viele Feinheiten in der Art der Codierung. DES, 3DES, MD5, SHA1 und andere Begriffe fallen hier. Aber viel schlimmer ist, dass es zwei quasi Standards gibt:

Auch wenn es zwei Verfahren gibt, so hat nach meiner Einschätzung S/MIME die Nase vorne. Zwar sind dazu Zertifikate erforderlich, aber jedes moderne Mailsystem kann ohne Installation weiterer Plugins damit arbeiten. Selbst PGP unterstützt ebenfalls SMIME.

Doch schauen wir uns die beiden Optionen genauer an

S/MIME

SMTP ist sehr viel älter als S/MIME. S/MIME ist eine Erweiterung der MIME-Spezifikation um die Definition zur Verschlüsselung und Signierung. Primär ist S/MIME also eine Formatbeschreibung, wie eine signierte oder verschlüsselte Mail auszusehen hat. Da eine Mail sei je her aus den Bestandteilen Envelope, Header und Body besteht (Siehe auch Envelope und Header und SMTP Grundlagen), muss eine entsprechende Erweiterung auch rückwärtskompatibel sein. Aber es ist schon einige Jahre her, dass eine Mail nur aus einem "Textbody" bestand und Anlagen in dem Text als UUNECODE-Block eingebettet waren.

MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="msxfaq"

This is a message with multiple parts in MIME format.
--msxfaq
Content-Type: text/plain

Dies ist der Textbody der Mail.

--msxfaq
Content-Type: text/html

<html>
<head></head>
<body><p>Dies ist der HTML-body der Mail.</p></body>
</html>

--msxfaq
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64

ABCABC  Hier koennte eine BASE64 codierte Anwendung angehaengt sein ABC
--msxfaq--

Eine signierte Mail sieht dann reicht einfach aus.

MIME-Version: 1.0
Content-Type: multipart/signed;
	protocol="application/x-pkcs7-signature";
	micalg=SHA1;
	boundary="----=_NextPart_000_0061_01CA8E2C.B0385EF0"

This is a multi-part message in MIME format.

------=_NextPart_000_0061_01CA8E2C.B0385EF0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

Testbody


------=_NextPart_000_0061_01CA8E2C.B0385EF0
Content-Type: application/x-pkcs7-signature;
	name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
	filename="smime.p7s"

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIMgDCCA1ww
......
cyDdy4enMHykUHApaPkbKzqQPtO8ds1Fg0o1xeftv7pkyP1QkEOAGNUX7m1TDAqcA0fLErwe1hlJ
GFpC1MMR7Vi5fGwOKqMUzQAAAAAAAA==

------=_NextPart_000_0061_01CA8E2C.B0385EF0--

Sie sehen, dass es sich um eine TEXT-Mail handelt, die mit SHA1 signiert wurde. Die Signatur selbst ist BASE64 encodiert und habe ich zur Lesbarkeit verkürzt.

S/MIME ist einfach eine MIME Erweiterung, bei der die Mail selbst in einem Block eingefasst wird, welcher diesen Teil als "signiert" betrachtet. Ein weiterer Block enthält das Zertifikat usw. Ein entsprechender Client, der MIME und S/MIME versteht, kann direkt ohne Zusatzsoftware oder Drittprodukte diese Mails empfangen, die Signatur überprüfen, gegebenenfalls entschlüsseln und anzeigen. Dazu zählen unter anderem:

Die Liste der Programme die von Hause aus S/MIME unterstützen ist deutlich länger als der direkt PGP-Support (Cyrusoft Mulberry). Im Gegensatz zu PGP nutzt S/MIME immer "richtige" Zertifikaten.. Jeder Teilnehmer muss daher ein Zertifikat besitzen und installieren. Das Zertifikat ist nichts anderes als der öffentliche Schlüssel, welcher von einer CA (Certificate Authority) unterschrieben worden ist. Es ist allerdings nicht zwingend vorgeschrieben, dass Sie sich ein offizielles Zertifikat "kaufen" müssen. Auch hier könnten Sie sich selbst ein Zertifikat errechnen. Der Empfänger wird aber eine Warnung erhalten, bis her ihrem Zertifikat oder der ausstellenden CA vertraut.

S/MIME ist ein etablierter Standard, welcher die sichere Übertragung von Nachrichten über SMTP erlaubt. Normalerweise handelt es sich dabei um eine Client zu Client Verschlüsselung, d.h. die Programme der Anwender verschlüsseln die Daten und senden diese über die Mailsysteme. Exchange sieht wie jedes andere Mailprogramm nur die codierten Nachrichten, d.h. eine gültige Mail mit Absender und Empfänger aber dann nur noch Sonderzeichen. Allerdings gibt es auch Gateways, die das Verschlüsseln und Signieren dem Client abnehmen und z.B. an der Schnittstelle zwischen Internet und eigenem Mailserver arbeiten.

PGP

PGP ist ein Acronym für gleich drei Dinge:

Insofern war PGP in der Anfangszeit des Mailverkehr eine effektive und sichere Möglichkeit, Nachrichten ohne zentrale Stelle (CA) zu signieren und zu verschlüsseln. Dies wäre aber per S/MIME und Selbstzertifikaten heute natürlich genau so möglich.

Weitere Informationen hierzu erhalten Sie z.B. bei:

Anhänge mit Kennwort schützen

Unabhängig von den beiden Verfahren gibt es eine einfache Lösung, schnell zumindest Anlagen zu sichern:

Sie können z.B. mit Office mit Hilfe der integrierten Kennworte die Dokumente schützen. Allerdings ist der Schutz nicht sonderlich hoch und gerade bei älteren Versionen leicht zu knacken. Alternativ können die Dateien sehr effektiv mit einem Komprimierungstool gepackt und dabei auch direkt mit einem Kennwort versehen werden. Wird solch eine Datei als Anlage einer Mail versandt, ist der einfache Zugriff schon erschwert, sofern das Kennwort nicht gerade in der Email beschrieben wird. In der Mail selbst steht dann z.B. nur, dass die eigentliche Information in der mit Kennwort versehenen Anlage zu finden ist.

Beide Versionen sind symmetrische Verschlüsslungen, welche den Austausch des Kennworts zwischen den Anwendern erfordern und zudem ein Mehr an Arbeit beim Versenden bedeuten. Wie Sie dann aber das Kennwort übertragen (Telefonanruf etc.) bleibt ihr Geheimnis. Ebenso schützt dieses Verfahren nicht gegen die Fälschung von Absendern.

Digital Rights Management / Rights Management Server

Oft geht allein das sichere Übertragen von Nachrichten nicht weit genug. Es kann durchaus sein, dass damit zwar der Weg bis zum Empfänger gesichert ist, aber als Absender haben Sie keine Kontrolle darüber, wie der Empfänger mit der Information umgeht. Oft wird gefordert, dass überlassene Dokumente nicht nur sicher übertragen werden, sondern auch beim Empfänger weiteren Einschränkungen unterliegen z.B.: das dieser das Dokument nicht weiterleiten oder drucken kann. Solche Anforderungen gehen über S/MIME aber auch PGP hinaus. und sind eine Aufgabe wie den Rights Management Server

Keywords:SMIME PGP