Freitag, 8. Juni 2007

Zertifikatsverwandlung

Zum verschlüsselten Zugriff auf Webseiten wird SSL verwendet. Für eine sichere Verbindung ist es notwendig zu wissen, ob man die korrekten Schlüssel verwendet, oder ob diese auf dem Web zum Browser verändert wurden. Dies wird über Zertifikate geregelt, die die Authentizität eines Schlüssels gewährleisten. Die Zertifikate selbst müssen jedoch auch authentisiert werden, womit sich ein Henne-Ei-Problem stellt. Aus diesem Grund kommen alle Browser mit einer vorinstallierten Liste von SSL-Zertifikaten daher, die zu unterschiedlichen Firmen gehören. Diese bestätigen - gegen Zahlung eines entsprechenden Obulus - die Echtheit eines SSL-Schlüssels.

Wer das Geld sparen will, erzeugt sein eigenes Zertifikat und importiert dies in seinen Browser. Um die Sache nicht zu einfach zu machen, gibt es mehrere Formate für Schlüssel: PEM, DER, Netscape und PKCS #12. Konqueror ist in der Lage, alle Formate zu importieren, aber Firefox besteht darauf, ein PKCS #12 Zertifikat zu erhalten. Hat man nur ein PEM-Zertifikat, so muss man dieses konvertieren. Dies geht mit Hilfe von OpenSSL, das üblicherweise bei einer Linux-Distribution enthalten ist:

openssl pkcs12 -nokeys -export -in z.pem -out z.p12

Hierbei wird man nach einem Password gefragt, das man frei wählen kann und beim Importieren wieder angeben muss. Die Option -nokeys unterbindet das Schreiben der geheimen Schlüssel, die man bei einem SSL-Zertifikat üblicherweise nicht hat. Will man ein Zertifikat für einen Server konvertieren, das den geheimen Schlüssel enthält, so lässt man die Option weg.

Keine Kommentare: