SSL-Zertifikate von myOpenID

Der OpenID-Provider myOpenID stellt für OpenID-Accounts auch Client-SSL-Zertifikate aus. Seine Zertifikate kann man unter Kontoeinstellungen –> Authentication settings verwalten und anlegen.

SSL-Zertifikat für Client erzeugen
Mit Safari unter Mac OS X 10.5.2 hatte ich Schwierigkeiten mich mit dem im Schlüsselmanager gespeicherte Zertifikat anzumelden. Zwar weist myOpenID auf Schwierigkeiten im Zusammenspiel mit Safari hin, die aber keine Gemeinsamkeiten mit meinen hatten. Ich musste im Schlüsselmanager das Zertifikat immer mit der Login-URL von myOpenID verbinden. Da die URL aber bei jeder Anmeldung mit einem Hash versehen wird, ist dieses unmöglich. Meine Wahl des Standardbrowsers fällt also wieder zu Firefox zurück, da dieser (eigentlich leider) ein eigenes Zertifikatsmodul mit sich bringt.

Dauerhaftes Einloggen mit SSL-Zertifikat
Beim ersten Einloggen mit dem Client-Zertifikat kann man myOpenID mitteilen, dass man immer eingeloggt sein möchte. Wenn man den Haken setzt, muss man bei Anmeldevorgängen nur noch seine OpenID dem jeweiligen Dienst angeben. Es sind keine weiteren Angaben oder Klicks nötig. Das Zertifikat wird an myOpenID übertragen, authentifiziert und bestätigt. Und schon ist man angemeldet.

OpenID und SSL-Zertifikate

Einen großen Nachteil hat OpenID als Identifizierungsmethode: das Stehlen des Accounts mittels Phishing.
Der normale Anmeldeprozess einer Website über OpenID leitet einen an den zuständigen OpenID-Provider weiter, an dem man sich authentifizieren muss. Diese Weiterleitung liegt in der Verantwortung der Website, an der man sich anmelden möchte. Es ist also problemlos möglich, die verschiedenen Anmeldeseiten der OpenID-Provider nachzubauen, um so den Usernamen und Passwort abzufangen.
Mit diesen Daten hat der Dieb Zugriff auf alle Identitäten, die in der OpenID enthalten sind.

Um dem Phishing zu entgehen, gibt es verschiedene Ansätze, die man mit OpenID kombinieren kann. Information Card/CardSpace ist zum Beispiel eine Technologie, mit der man sich anhand von Identitätskarten authentifizieren kann. Vergleichbar mit den unzähligen Mitgliedschaftskarten im EC-Format, die man so im Portemonnaie mit sich herumträgt. Auf solch einer Karte ist ein persönliches Zertifikat hinterlegt, die gesamte Karte wird von einer Zertifizierungsstelle mit einem Zertifikat versehen. Die Angabe von Usernamen und Passwort wird mit Information Cards hinfällig.

Einen ähnlichen Weg verfolgen Client-SSL-Zertifikate. Mit solch einem Zertifikat identifiziert man sich bei seinem OpenID-Provider und muss keinerlei Passwortinformationen mitteilen. Der Client sendet das Zertifikat und der Provider nach erfolgreicher Authentifizierung die Bestätigung. Und schon ist man angemeldet. Einfacher geht es eigentlich nicht mehr. Nachteil ist nur noch, dass jeder Client ein eigenes Zertifikat benötigt. Aber dieser Umstand sollte einem die eigene Sicherheit schon wert sein.