Welche Verschlüsselungsstruktur soll gewählt werden?
S/MIME
MIME (Multipurpose Internet Mail Extensions) ist ein
weitverbreiteter Standard für
die Formatierung von eMails, begründet auf RFC 822. S/MIME
(Security MIME)
erweitert nach RFC 1847 die MIME Struktur um kryptographische
Elemente, um eine
eMail zu verschlüsseln oder zu signieren.
Der z. Zt. noch in Arbeit stehende Standard PGP/MIME (RFC 2015)
erweitert den PGP
Standard mit der RFC 1847 um ebenfalls zu verschlüsseln und zu
signieren.
S/MIME benötigt zwingend eine hierarchische Struktur, da die
oberste Signatur
Instanz eine Trusted Certificate Authority (CA) sein muß, und
die Schlüssel
streng hierarchisch signiert werden.
OpenPGP
Pretty Good Privacy wurde '91 am MIT von P. Zimmermann entwickelt.
Er wollte eine
einfache und sichere KryptoSoftware schaffen, die sich im
chaotischen INet
durchsetzen könne. Er gab das Proggy als Freeware frei und
legte glücklicherweise
die Sourcen offen.
Nach der Gründung einer eigenen Firma und deren Aufkauf durch
Network Associates
wurde PGP immer weiter verbreitet. Schließlich sogar soweit,
daß es durch die IETF
in der RFC 1991 festgeschrieben wurde.
Mitte '96 begannen NetworkAssociate und andere an der Entwicklung
des neuen
Standards OpenPGP, welcher zu PGP abwärts kompatibel ist, aber
einige neue
KryptoAlgos einbaute. (RFC 2440)
_Open_PGP bedeutet aber nur offener Standard nicht OpenSource!
Deshalb entwickelt
die GUUG den GnuPrivacyGuard (GPG)
S/MIME ./. OpenPGP
Aufgrund der verschiedenen Nachrichtenautauschformate ist es nicht
möglich S/MIME
oder OpenPGP Nachrichten auszutauschen, selbst wenn beide Programme
den selben
Algo verwenden würden.
Aber nicht nur das Austauschverfahren ist unterschiedlich, auch die
Schlüsselringe
sind verschieden
S/MIME verwendet X.509-formatierte Keyrings, welche im Zertifikat
(bei PGP heißt
das Public Key ) verschiedene Optionen speichert. So ist es in
einem Zertifikat
nur möglich einen PK abzulegen, welcher ebenfalls nur von
einer CA signiert werden
kann. Eine eMailadresse ist nur in den erweiterten 3er Standards
vorgesehen.
OpenPGP Keys können hingegen mehrere Schlüssel mit
mehreren Signaturen tragen und
sind sogar noch Eigenzertifiziert (tragen also die Unterschrift des
eigenen geheimen
Schlüssels). Die ID ist keine zugeteilte Seriennummer wie bei
X.509 sondern ein
Teil eines SchlüsselHashs.
OpenPGP verwendet zum Signieren das sogenannte Web of Trust,
welches eine Abbildung
des archaischen INets darstellt. Trotzdem kann in PGP auch eine
strenge Hierarchie
eingehalten werden, welche gerade im professionellen Umfeld sehr
günstig ist.
Public Key Infrastructure
PGP hat mit dem pgp.net den unschlagbaren Vorteil von zentralen
Sammelstellen
für Öffentliche Schlüssel, über den X.509 nicht
verfügt.
Der Nachteil der HTTP-Server ist allerdings der Pflegeaufwand,
welcher im X.509
Einsatz unter LDAP nicht so hoch ist. Allerdings arbeitet die IETF
schon an einer
OpenPGPsolution für LDAP.
Widerrufene Schlüssel werden von PGP auch im Server abgelegt,
allerdings mit einer
speziellen Signatur versehen. S/MIME setzt hierzu Negativlisten
ein, welche nicht
immer Aktuell sind und zu dem nur ungültige Schlüssel
kennzeichnet. Desweitern ist
hier der Pflegaufwand auch sehr hoch anzusehen.
Einsatzumgebung
Soll eine homogenes Netz eingesetzt werden sind beide Standards
verwertbar.
Doch wo gibt es heute noch homogene Netze? Also ist PGP/GPG/OpenPGP
schlicht und
ergreifend das Mittel der Wahl.