Smartcard-Verwendung in Webbrowsern

Die normale Nutzung der Smartcard beim Surfen im Netz ist die Authentifizierung mittels des Zertifikats (und privaten Schlüssels) auf der Karte. Die Zertifikats-Authentifizierung muss von Webservern angefordert werden, der Kartentreiber muss aber im Browser eingebungen sein, was vom verwendeten Betriebssystem und Webbrowser abhängt (s.u.).

Zudem ist grundsätzlich auch das Erzeugen von Schlüsseln und das Installieren von Zertifikaten über den Browser möglich, jedoch unterstützen wir das derzeit nicht, da es nicht zuverlässig funktioniert.

INTERNET-EXPLORER (WINDOWS)

Der Internet-Explorer verwendet für die Behandlung von Zertifikaten den in Windows eingebauten Zertifikats-Speicher. Mit den für die Smartcard installierten Windows-Treibern ist die Karte daher im Internet-Explorer sofort verwendbar.

MOZILLA FIREFOX

In Mozilla erfolgt der Zugriff auf die Karte unabhängig vom verwendeten Betriebssystem über die PKCS#11-Schnittstelle. Diese wird wie folgt eingebunden:

  • Im Menü den Punkt "Einstellungen" wählen,
  • im Einstellungs-Fenster das Symbol "Advanced" (ganz rechts) anklicken,
  • Karteireiter "Zertifikate" wählen.
  • Dort den Knopf "Kryptographie-Mudule" betätigen.
  • Im erscheinenden "Kryptographie-Modul-Manager" den Knopf "Laden" betätigen.
  • Im erscheinenden Fenster "PKCS#11-Einrichtung laden" die Einbindung vornehmen:
    • Modulname setzen, z.B. "OpenSC",
    • als Modul-Dateiname die OpenSC-PKCS#11-Datei auswählen (Pfad hängt vom Betriebssystem ab, s.u.).
  • Nach dem Bestätigen mit dem "OK"-Knopf sollte OpenSC eingebunden sein.

CHROMIUM

Das geht nicht über die Einstellungen in der GUI, auch nicht per Kommandozeilen-Optionen. Man benötigt die Tools für die von Chromium (bzw. Chrome) verwendete SSL-Bibliothek NSS. Mit diesen Tools kann man dann die PKCS11-Schnittstelle von OpenSC einem bereits existierenden Chromium-Profil, genauer des darin angelegten Zertifikatsspeichers ("security database") zufügen.

Unter Ubuntu-Linux-64-Bit z.B.:
sudo apt-get install libnss3-tools
modutil -dbdir ~/.pki/nssdb/ -add "OpenSC" \
  -libfile /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so

Für diese eher händische, umständliche Installation können wir keinen Support leisten. Bitte greifen Sie lieber auf Firefox zurück.

PFAD ZUR PKCS#11-DATEI

Der Pfad zur PKCS#11-Datei hängt nicht nur vom Betriebssytem ab, sondern auch von der Frage, ob die Anwendung eine 32-Bit- oder 64-Bit-Anwendunge ist. Details entnehmen Sie auch den Seiten zur Einrichtung der Treiber, hier die Pfadangaben als Übersicht:

  • Windows 32-Bit mit OpenSC bis Version 0.17:
    • 32-Bit-PKCS#11: C:\Windows\system32\opensc-pkcs11.dll
  • Windows 32-Bit mit OpenSC ab Version 0.18:
    • 32-Bit-PKCS#11: C:\Programme\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll
  • Windows 64-Bit mit OpenSC bis Version 0.17:
    • 32-Bit-PKCS#11: C:\Windows\SysWOW64\opensc-pkcs11.dll
    • 64-Bit-PKCS#11: C:\Windows\system32\opensc-pkcs11.dll
  • Windows 64-Bit mit OpenSC ab Version 0.18:
    • 32-Bit-PKCS#11: C:\Programme (x86)\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll
    • 64-Bit-PKCS#11: C:\Programme\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll
  • Ubuntu ab 14.04, Debian nach wheezy:
    • 32-Bit-PKCS#11: /usr/lib/i386-linux-gnu/opensc-pkcs11.so
    • 64-Bit-PKCS#11: /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so