Zertifikate bestätigen die Zugehörigkeit eines kryptografischen Schlüssels zu:
- einer Person/Firma/Institution (z.B. bei der PGP-Verschlüsselung von Dateien oder E-Mails),
- einer Maschine (z.B. bei der SSL-Verschlüsselung von Website-Traffic).
Dadurch können Authentizität, Vertraulichkeit und Integrität von Daten gegenüber Dritten garantiert werden.
Übersicht
Um beim Einsatz von asymmetrischen Kryptosystemen den Einsatz falscher (z.B. untergeschobener) Schlüssel zu verhindern, wird ein Nachweis benötigt, dass der verwendete öffentliche Schlüssel auch zum designierten Empfänger der verschlüsselten Nachricht bzw. zum Sender einer elektronisch signierten Nachricht gehört. Diesen Nachweis stellt eine vertrauenswürdige Stelle in Form eines digitalen Zertifikates aus.
Man kann sich also ein Zertifikat wie einen Personalausweis in digitaler Form vorstellen: Beim Personalausweis garantiert die vertrauenswürdige Stelle "Meldeamt", dass die Unterschrift, die sich auf dem Ausweis befindet, auch tatsächlich zu der Person gehört, deren Stammdaten und Passbild sich auf dem Ausweis befinden.
Im Gegensatz zum Personalausweis werden Zertifikate aber von vielen verschiedenen Zertifizierungstellen (z.B. GlobalSign,Verisign, Trust Center, CAcert, u.a.) und in vielen verschiedenen Qualitätsstufen ausgegeben. Es ist Sache des Benutzers zu entscheiden, ob er dem Herausgeber des Zertifikates vertraut.
Ein Zertifikat enthält Informationen über den Namen des Inhabers, dessen öffentlichen Schlüssel, eine Seriennummer, eine Gültigkeitsdauer und den Namen der Zertifizierungsstelle. Diese Daten sind in der Regel mit dem privaten Schlüssel der Zertifizierungsstelle signiert und können somit mit dem öffentlichen Schlüssel der Zertifizierungsstelle überprüft werden. Zertifikate für Schlüssel, die nicht mehr sicher sind, können über eine so genannte Zertifikatsperrliste (certificate revocation list) gesperrt werden.
Um die Echtheit des Zertifikates zu garantieren, wird dem Zertifikat eine digitale Signatur einer vertrauenswürdigen Organisation oder Instanz (z.B. eine Behörde) aufgeprägt. Durch dessen Signatur kann die Integrität und Echtheit des Zertifikates nachgewiesen werden. Da auch der öffentliche Schlüssel einer Zertifizierungsstelle schließlich mittels eines Zertifikats überprüfbar sein muss, ergibt sich die Notwendigkeit einer obersten Zertifizierungsinstanz. In Deutschland übernimmt die Bundesnetzagentur für Elektrizität, Gas, Telekommunikation, Post und Eisenbahnen (ehemals RegTP) diese Aufgabe. Die Bundesnetzagentur führt eine Liste aller akkreditierten Zertifizierungsdiensteanbieter.
Beispiel
Text-Darstellung eines X.509v3-Zertifikats (eigentlich sind Zertifikate gemäß ASN.1 kodiert):
Certificate: Data: Version: 3 (0x2) Serial Number: 1 (0x1) Signature Algorithm: md5WithRSAEncryption Issuer: C=XY, ST=Austria, L=Graz, O=TrustMe Ltd, OU=Certificate Authority, CN=CA/Email=ca@trustme.dom Validity Not Before: Oct 29 17:39:10 2000 GMT Not After : Oct 29 17:39:10 2001 GMT Subject: C=DE, ST=Austria, L=Vienna, O=Home, OU=Web Lab, CN=anywhere.com/Email=xyz@anywhere.com Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public Key: (1024 bit) Modulus (1024 bit): 00:c4:40:4c:6e:14:1b:61:36:84:24:b2:61:c0:b5: d7:e4:7a:a5:4b:94:ef:d9:5e:43:7f:c1:64:80:fd: 9f:50:41:6b:70:73:80:48:90:f3:58:bf:f0:4c:b9: 90:32:81:59:18:16:3f:19:f4:5f:11:68:36:85:f6: 1c:a9:af:fa:a9:a8:7b:44:85:79:b5:f1:20:d3:25: 7d:1c:de:68:15:0c:b6:bc:59:46:0a:d8:99:4e:07: 50:0a:5d:83:61:d4:db:c9:7d:c3:2e:eb:0a:8f:62: 8f:7e:00:e1:37:67:3f:36:d5:04:38:44:44:77:e9: f0:b4:95:f5:f9:34:9f:f8:43 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Subject Alternative Name: email:xyz@anywhere.com Netscape Comment: mod_ssl generated test server certificate Netscape Cert Type: SSL Server Signature Algorithm: md5WithRSAEncryption 12:ed:f7:b3:5e:a0:93:3f:a0:1d:60:cb:47:19:7d:15:59:9b: 3b:2c:a8:a3:6a:03:43:d0:85:d3:86:86:2f:e3:aa:79:39:e7: 82:20:ed:f4:11:85:a3:41:5e:5c:8d:36:a2:71:b6:6a:08:f9: cc:1e:da:c4:78:05:75:8f:9b:10:f0:15:f0:9e:67:a0:4e:a1: 4d:3f:16:4c:9b:19:56:6a:f2:af:89:54:52:4a:06:34:42:0d: d5:40:25:6b:b0:c0:a2:03:18:cd:d1:07:20:b6:e5:c5:1e:21: 44:e7:c5:09:d2:d5:94:9d:6c:13:07:2f:3b:7c:4c:64:90:bf: ff:8e
Bedeutung des Status der Zertifizierungsstellen
Zertifizierungsstellen können akkreditiert oder nicht-akkreditiert sein. Eine Zertifizierungstelle, die das Akkreditierungverfahren gemäß SigG erfolgreich durchlaufen hat, wird als akkreditiert eingestuft und darf gemäß § 15 Abs. 1 Satz 3 SigG ein entsprechendes Gütesiegel tragen. Die Zertifizierungstellen werden von Bestätigungsstellen (derzeit drei; Stand Okt. 2005) auf technische Sicherheit und langfristige Eignung umfassend geprüft. Bei akkreditierten Zertifizierungsstellen ist durch die Bundesnetzagentur (ehemals RegTP) sichergestellt, dass selbst bei Betriebseinstellung der Zertifizierungsstelle die Unterschriften (Zertifikate) weiterhin durch alle Beteiligten prüfbar bleiben. Wichtig ist dieses vor allem, da viele Dokumente (in Papier oder elektronischer Form) per Gesetz viele Jahre aufbewahrt werden müssen. Wären Unterschriften nach Jahren nicht mehr prüfbar, hätte dieses fatale Folgen.
Ausstellung eines Zertifikates durch ein Web-of-Trust-Mitglied
Die Verschlüsselungssoftware PGP und die OpenSource-Variante Gnu Privacy Guard nutzen ebenfalls Zertifikate. Diese bestätigen die Echtheit und Unverfälschtheit der zertifizierten Schlüssel. PGP und GnuPG basieren auf OpenPGP und sind kompatibel zueinander. Ein Zertifikat kann von jedem Benutzer (Web-of-Trust-Mitglied) erzeugt werden. Glaubt ein Benutzer daran, dass ein öffentlicher Schlüssel tatsächlich zu der Person gehört, die ihn veröffentlicht, so erstellt er ein Zertifikat, indem er diesen öffentlichen Schlüssel signiert. Andere Benutzer können aufgrund dieses Zertifikates entscheiden, ob auch sie darauf vertrauen wollen, dass der Schlüssel zum angegebenen Benutzer gehört oder nicht. Je mehr Zertifikate an einem Schlüssel hängen, desto sicherer kann man sich sein, dass dieser Schlüssel tatsächlich dem angegebenen Eigentümer gehört. Ein Zertifikat kann (muss aber nicht) auch von einer Zertifizierungsstelle erzeugt werden. Es ist anzuraten, eine Zertifizierungstelle zu nutzen, da diese Zertifikate ein hohes Maß an Vertrauen in der breiten Masse der Nutzer genießen.
Zertifikatstypen nach deutschem Signaturgesetz / EU-Richtlinie
Der ursprüngliche Text vermengt die Begriffe Zertifikate und Signatur und stellt insgesamt eine unrichtige Beschreibung dar. Da die Korrekturen umfangreicher sind benötigen wir einige Zeit um den Text zu aktualisieren (16.02.2005 - GlobalSign / Cybertrust - RA, globalsign.wis.de, Th.Wiesinger CCO)
Der originäre Text aus dem deutschem Signaturgesetz (SigG) lautet hierzu:
Begriffsdefinitionen nach § 2 SigG DE (Auszug):
1. "elektronische Signaturen" Daten in elektronischer Form, die anderen elektronischen Daten beigefügt oder logisch mit ihnen verknüpft sind und die zur Authentifizierung dienen,
2. "fortgeschrittene elektronische Signaturen" elektronische Signaturen nach Nummer 1, die a) ausschließlich dem Signaturschlüssel-Inhaber zugeordnet sind, b) die Identifizierung des Signaturschlüssel-Inhabers ermöglichen,
3. "qualifizierte elektronische Signaturen" als elektronische Signaturen nach Nummer 2, die a) auf einem zum Zeitpunkt ihrer Erzeugung gültigen qualifizierten Zertifikat beruhen und b) mit einer sicheren Signaturerstellungseinheit erzeugt werden.
...
6. "Zertifikate" elektronische Bescheinigungen, mit denen Signaturprüfschlüssel einer Person zugeordnet werden und die Identität dieser Person bestätigt wird,
7. "qualifizierte Zertifikate" elektronische Bescheinigungen nach Nr. 6 für natürliche Personen, die die Voraussetzungen des § 7 erfüllen und von Zertifizierungsdiensteanbietern ausgestellt werden, die mindestens die Anforderungen nach den §§ 4 bis 14 oder § 23 dieses Gesetzes und der sich darauf beziehenden Vorschriften der Rechtsverordnung nach § 24 erfüllen.
Das deutsche Signaturgesetz (SigG, www.netlaw.de/gesetze/sigg.htm) bzw. die EU-Richtlinie bewerten die Qualität von Zertifikaten in acht Stufen, von denen nur drei für eine nähere Betrachtung von Bedeutung sind:
- einfaches digitales Zertifikat
- fortgeschrittenes digitales Zertifikat
- qualifiziertes digitales Zertifikat
- akkreditiertes digitales Zertifikat
Einfache und fortgeschrittene Zertifikate: Die einfachen und fortgeschrittenen digitalen Zertifikate sind völlig unreguliert und finden z.B. bei PGP, GnuPG, uws. Anwendung. Je nach Zertifizierungstelle werden andere Informationen in ein einfaches bzw. fortgeschrittenes Zertifikat integriert. Beispielsweise:
- E-Mail-Adresse des Zertifikatinhabers
- erweiterte textliche Informationen, z.B. Anschrift des Zertifikat-Inhabers
Diese Zertifikate werden vom Gesetzgeber nicht mit einer eigenhändigen Unterschrift gleichgesetzt.
Qualifizierte Zertifikate: Qualifizierte Zertifikaten sind der eigenhändigen Unterschrift gleichgestellt. Der Begriff "qualifiziertes Zertifikat" ist eine Abkürzung für fortgeschrittene Signaturen, die mit einer sicheren Signaturerstellungseinheit erstellt wurden, die sich in der alleinigen Verfügung des Inhabers befindet. Bei qualifizierten Zertifikaten sind die gesetzlichen Vorgaben exakt. Unter anderem:
- biometrische Daten
- Meldeanschrift des Zertifikat-Inhabers
Einher gehen auch höhere Ansprüche an die Speicherung (Sicherung) des qualifizierten Zertifikats auf besonderen Medien, wie z.B. auf SmartCards oder Token.
Akkreditierte Zertifikate: Teilweise wird auch der Begriff "akkreditierte digitale Zertifikate" genutzt - die Akkreditierung bezieht sich hierbei jedoch nicht auf das Zertifikat, sondern auf die Zertifizierungsstelle. Dies ist somit kein eigener Zertifikat-Typ: Es sind faktisch qualifizierte Zertifikate, deren Zertifizierungsstelle akkreditiert wurde. Nähere Informationen sind unter dem Punkt "Bedeutung des Status der Zertifizierungsstellen" zu finden.
Probleme und Lösungen
Zertifikate werden von vielen Stellen ausgegeben. Damit ein Zertifikat als gültig betrachtet wird, muss man der Zertifizierungsstelle vertrauen. In Webbrowsern sind aus diesem Grund schon viele Zertifizierungsstellen als vertrauenswürdig eingestuft. (z.B. im Internet-Explorer: "Extras" --> "Internetoptionen" --> "Inhalte" --> "Zertifikate" --> "vertrauenswürdige Stammzertifizierungsstellen" oder im Mozilla Firefox: "Extras" --> "Einstellungen" --> "Erweitert" --> "Zertifikate" --> "Zertifikate verwalten")
Allerdings sind dies oft Firmen, von denen man als Benutzer noch nie etwas gehört hat, geschweige denn ihnen vertraut. Natürlich gründet sich das Vertrauen in diese Stellen darin, dass es ihr Geschäft ist, sorgsam mit Zertifikaten umzugehen. Dennoch ist es so, dass der Webbrowser oder das Mailprogramm automatisch einer Liste von unbekannten Stellen vertraut, ohne dass der Benutzer Informationen darüber hat, wo sich diese Firmen befinden, nach welchen Regeln sie Zertifikate erstellen oder wie die Registrierung abläuft: Man gründet sein Vertrauen in digitale Unterschriften implizit auf unbekannte Stellen. Anmerkung: siehe hierzu auch Hinweise unter Lösung 1
Ein zweites Problem ist, dass dem Zertifikat selbst nur schwer anzusehen ist, unter welchen Qualitätsansprüchen die Registrierung zustande gekommen ist. Anmerkung: siehe hierzu auch Hinweise unter Lösung 1
Abschreckendes Beispiel ist die Ausstellung von Microsoft-Zertifikaten durch VeriSign an Personen, die sich fälschlicherweise als Microsoft-Mitarbeiter ausgegeben hatten. Mit diesen Zertifikaten hatten die Betrüger nun eine vertrauenswürdige Garantie, dass sie zur Firma Microsoft gehören. Es wäre z.B. möglich gewesen, authentische Mails im Namen von Microsoft zu verschicken oder signierten Programmcode im Namen von Microsoft ausführen zu lassen.
Obwohl diese Zertifikate sofort zurückgezogen wurden, nachdem der Fehler bemerkt wurde, ist dieser Fall ein Zeichen dafür, dass man sich nicht immer auf die Vertrauenswürdigkeit von Zertifizierungsstellen verlassen kann. Obendrein sind viele Browser so eingestellt, dass sie nicht ständig überprüfen, ob Zertifikate zurückgezogen wurden. In diesen Fällen würde die Sperrung gar nicht bemerkt und die falschen Zertifikate würden immer noch als echt angesehen.
(Wer nachsehen möchte: Im Internet Explorer sind die beiden zurückgezogenen Zertifikate unter "Extras"->"Internetoptionen"->"Inhalte"->"Zertifikate"->"Nicht vertrauenswürdige Herausgeber" zu sehen. Sie sind als "Fraudulent, NOT Microsoft" gekennzeichnet.)
Lösung 1: Sichtung der Ausstellerzertifikate und Klasse
Jedes Zertifikat wird von einer Zertifizierungsstelle ausgegeben. Sofern diese Zertifizierungsstelle ein eingeführtes (bekanntes) TrustCenter ist können öffentlich über die sog. Zertifizierungsdienste Informationen zu den Zertifizierungsbestimmungen (CPS) und auch Informationen über die Aktualität des Zertifikates, über Zertifikatswiderrufslisten (CRL) oder Onlineprüfungen (OSCP) abgerufen werden.
Das Zertifikat des Endnutzers ist entweder direkt über sog. Zwischenzertifikate an das Stammzertifikat des TrustCenters (Root CA) gebunden. Dieser "Baum" wird als Zertifikatshirachie bezeichnet:
- GlobalSign Root CA - GlobalSign Primary PersonalSign Class3 CA - GlobalSign PersonalSign Class3 CA - Endnutzerzertifikat (Name Vorname)
In dieser Struktur ist die Klasse des Zertifikates abgelegt, in diesem Fall ein Klasse 3 Zertifikat (ebenso Klasse 2 oder Klasse 1 möglich).
Die Klasse des Zertifikates gibt die Art der Prüfung bei Ausstellung des Zertifikates wieder: Klasse 1: keine Prüfung, nur E-Mail-Adresse verifiziert Klasse 2: schriftliche Dokumente, Vorlage und Prüfung Ausweiskopie Klasse 3: persönliche Prüfung, Ausweisprüfung, Dokumente
Zertifikate der Klasse 2 und Klasse 3 können weitere Angaben zur Firma/Organisation führen, zu der die Person angehört. Diese Information sind hilfreich, wenn z.B. Verträge elektronisch signiert werden sollen. Soll eine Firma/Organisation im Zertifikat benannt werden, wird diese und sowie auch die Zugehörigkeit der Person zu dieser überprüft.
Lösung 2: Modifikation des Zertifikatsspeichers
Wenn ein Nutzer nur Zertifikaten einer bestimmten Klasse und/oder einer bestimmten Zertifizierungsstelle vertraut, können unerwünschte Aussteller aus dem Zertifikatsspeicher entfernt werden.
Anbieter
kostenlose E-Mail-Zertifikate (einfache Signatur, ohne Identitätsbestätigung)
- Thawte
- GlobalSign / Cybertrust (30 Tage Demozertifikat)
- CACert Community zu Vergabe von Zertifikaten
Zertifikate für einfache Signatur
- CACert (Klasse 0, keine Zertifizierung nur Vertrauensstatus der CACert Community)
Zertifikate für fortgeschrittene Signatur (E-Mail, Vertragsunterzeichnung, PDF-Signatur, ..)
- GlobalSign / Cybertrust (Zertifizierung nach Klasse 2 und 3, optional mit Angabe Firma/Organisation)
Zertifizierungsdiensteanbieter ohne Anbieterakkreditierung, vertrauenswürdige Anbieter:
Zertifizierungsdiensteanbieter mit Anbieterakkreditierung nach SigG, DE
- Authentidate International AG, Düsseldorf (Zeitstempel)
- D-Trust GmbH, Berlin (Zertifikat + Zeitstempel)
- DATEV e.G., Nürnberg (Zertifikat + Zeitstempel)
- Deutsche Post Com GmbH, GF SignTrust, Bonn (Zertifikat + Zeitstempel)
- Deutsche Telekom AG, GF TeleSec, Netphen (Zertifikat + Zeitstempel)
- TC TrustCenter AG, Hamburg (Zertifikat + Zeitstempel) - siehe auch globalsign.wis.de
- weitere Rechtsanwalts-, Steuerberater- oder Wirtschaftsprüferkammern (i.d.R. Zertifikat + Zeitstempel)
Trustcenter zertifiziert nach Bundesgesetz über die elektronische Signatur (ZertES) und internationalen Standards (ETSI), CH
- Swisscom Digital Certificate Service, Zürich (Consulting, Professional Services und Enterprise RA für qualifizierte und fortgeschrittene Zertifikate + Zeitstempel-Dienst)
Ausländische TrustCenter:
- GlobalSign, BE (Zertifikate für die fortgeschrittene Signatur in DE nutzbar)