Chipkarten-Leser #

Chipkarten werden für verschiedene Zwecke eingesetzt. Zumeist handelt es sich um Identitätsnachweise durch Karten mit Verschlüsselungsfunktion (HBCI-Karte, Pay-TV-Karte), oder Guthabenkarten (Geldkarte, Telefonkarte) aber auch Speicherkarten mit einigen Kilobyte Daten (Krankenkassen-Karte) sind erhältlich. Meine eigene Intention war die Nutzung von OpenHBCI, um HomeBanking damit zu betreiben.

Die Grundlage, um Chipkarten unter Linux lesen zu können, ist die libchipcard. Auf deren Homepage steht auch eine Liste der unterstützten Kartenleser. Ich habe bisher Erfahrung mit folgenden Geräten, die bei mir gut liefen:

  • Towitoko Chipdrive micro (serieller Anschluss mit Stromversorgung über PS/2-Stecker)

Die Bibliothek unterstützt serielle und USB-Leser und hat auch Unterstützung für Klasse-2-Leser (mit Tastatur zur PIN-Eingabe). (Erst Klasse-2-Leser bieten die 100%ige Sicherheit z.B. bei HomeBanking per HBCI).

Installation #

Das Problem mit nicht getesteten Chipkarten-Lesern ist, daß es einen (unter Linux lauffähigen) Hardware-Treiber geben muss, der eine sog. CT-API Schnittstelle zur Verfügung stellt. Für Towitoko-Geräte findet sich ein solcher Treiber Opensource unter http://www.geocities.com/cprados/. Also vor dem Kauf eines neuen Lesers eventuell dort mal nachsehen, welche Geräte unterstützt werden.

Unter Debian-Linux habe ich nun insgesamt die folgenden Pakete installiert:

  apt-get install libtowitoko2 chipcard-tools libchipcard20 libchipcard-doc

Konfiguration #

Auf der Webseite http://www.libchipcard.de gibt es auch Konfigurations- und Anzeigeprogramme für KDE. Leider sind diese nicht als Debian-Paket verfügbar. Deshalb habe ich es von Hand gemacht. Dafür habe ich in der Datei /etc/libchipcard/libchipcardd.conf folgende Änderungen vorgenommen:

  enabled="1"
  port="COM1"     (mein Leser sitzt an der ersten seriellen Schnittstelle)

Danach habe ich mit /etc/init.d/chipcard-tools restart den Chipcard-Server neu gestartet.

Nun kann man z.B. eine Geldkarte nehmen (hat wohl jeder in Form der EC-Karte, eignet sich also gut zum testen) und mit geldkarte loaded den enthaltenen Betrag ansehen. Wer keine Geldkarte hat, kann auch eine Krankenkassen-Karte mit memcard read -s 128 lesen. In dem Zeichensalat sollte der Name der Krankenkasse auftauchen. Wer soweit ist, hat auch schon gewonnen.

Probleme #

Bei Schwierigkeiten lohnt sich ein Blick mit dpkg -L chipcard-tools, welche Programme alle mitgeliefert werden. Dabei ist auch z.B. readertest, mit dem man den Reader ohne den Server testen kann (nicht vergessen, diesen vorher zu beenden) oder auch ctfstool, mit dem man Speicherkarten lesen und schreiben kann.

Unter Umständen kann es auch einfacher sein, die graphischen Konfigurationsprogramme zu benutzen. Bis man diese unter Debian selbst kompiliert hat, hat man IMHO jedoch schneller die Kommandozeilentools "besiegt". Wer eine andere Distribution hat, kann jedoch mal nach <nowiki>KCardSetup</nowiki> suchen und dieses benutzen.

-- ThomasBayen