Chipkartenleser sind Geräte, die Chipkarten ansteuern. Dabei werden nicht nur Daten gelesen, sondern auch geschrieben oder Applikationen auf der Chipkarte angesteuert; daher spricht man auch von einem Chipkartenterminal.
Die Geräte versorgen die Chipkarte mit Strom, takten sie und etablieren die Kommunikation gemäß der unterstützten Parameter der Karte, welche die Karte über die ATR (Answer to Reset) dem Leser mitteilt. Ob nun Lese-, Schreib- oder Rechenbefehle, sogenannte APDUs, an die Karte gesendet werden, bestimmt die Hostsoftware. Dennoch werden die angebotenen Chipkartenleser häufig nach dem Haupteinsatzgebiet unterschieden. So bietet der Markt neben den Modellen für Verwaltung und Finanzen auch solche für den Mobilfunk, die üblicherweise zusätzlich über Kontaktiereinrichtungen für die kleinen Chipkartentypen (ISO 7816, ID-000) verfügen.
Die Ansteuerung kann über an die Kontakte angelegte Stromsignale erfolgen. In Anwendungsgebieten, bei denen kontaktbehaftete Chipkarten nicht vorteilhaft sind, werden sie mit RFID zu Transponderkarten verbunden.
Für sicherheitsrelevante Anwendungen wie etwa Internetbanking werden Kartenleser gemäß einer DK-Spezifikation in vier Sicherheitsklassen eingeteilt:
Kartenlesegeräte gibt es sowohl als externe als auch als interne Form. Die externe Form ist ein kleines Kästchen, das meistens mit einem USB-Kabel an den PC angeschlossen wird. Auch der Anschluss über eine serielle Schnittstelle ist je nach Bauart möglich. Die interne Form befindet sich im PC-Gehäuse und ist über ein Kabel mit der Hauptplatine des PC verbunden.
Mittlerweile haben einige normale Haushaltsgeräte einen integrierten Kartenleser: Alle Mobiltelefone verfügen über ein Gerät zum Ansteuern einer SIM-Karte und Digitalkameras oder MP3-Spieler lesen und beschreiben Speicherkarten.
Lange Zeit waren Kartenlesegeräte nur über proprietäre Schnittstellen ansprechbar. Dies machte es für Software-Entwickler schwer, da sie nicht nur die Besonderheiten der Chipkarte sondern auch die des Lesers berücksichtigt mussten. Für den Anwender bedeutete dies, dass er an eine bestimmte Kombination aus Leser und Chipkarte gebunden war.
Ein erster Ansatz für eine standardisierte Anwendungsschnittstelle (API) war die CT-API. Diese wurde im Rahmen der deutschen Krankenversichertenkarte entwickelt und besteht aus einer dynamischen Bibliothek (DLL) mit einer definierten einheitlichen Schnittstelle, die jeweils vom Hersteller des Kartenlesers bereitzustellen ist. International hat sich die CT-API nicht durchgesetzt und blieb so im Wesentlichen auf den deutschen Markt begrenzt.
Ein international erfolgreicher Ansatz zur Standardisierung ist der PC/SC-Standard. Dieser wurde von der PC/SC Workgroup erarbeitet und unter anderen von Microsoft im Windows PC-Betriebssystem implementiert. Bei diesem Ansatz muss der Hersteller einen Gerätetreiber bereitstellen, auf den dann das Betriebssystem zugreift und die einheitliche Anwendungsschnittstelle bereitstellt. Alle Funktionsnamen dieser API beginnen mit dem Präfix-Text "SCard". Implementierungen gibt es neben Windows auch für Linux. Einer der Nachteile der gängigen PC/SC-Implementierungen ist die fehlende Unterstützung für Speicher-Chipkarten.
Der vom deutschen Zentralen Kreditausschuss (ZKA) entwickelte Secoder-Standard erlaubt das Laden von Geldkarten via Internet.[1] Der Secoder zeichnet sich durch besondere Sicherheitsmerkmale aus, die ihn von herkömmlichen Kartenlesern unterscheiden: Er verfügt über eine eingebaute Firewall, die die Karte und die Geheimzahl des Nutzers schützt, sowie ein Display, welches die Transaktionsdaten zur Kontrolle anzeigt, womit jede Manipulation auffällig wird.[2] Außerdem ist die Eingabe der PIN auf dem Lesegerät zwingend. Angriffsversuche durch Schadsoftware wie Trojaner oder Keylogger soll der Secoder durch die Firewall abwehren, wodurch die Anwendungssoftware selbst keinen unmittelbaren Zugriff auf das Gerät erhält.[3] Da der Secoder-Standard zwingend Tastatur und Display vorsieht, entsprechen derartige Kartenleser immer auch mindestens der Sicherheitsklasse 3.
Open Smart Card Development Platform
Dieser Artikel basiert auf dem Artikel Kartenlesegerät aus der freien Enzyklopädie Wikipedia und ist unter der Lizenz Creative Commons Attribution/Share Alike verfügbar. Zusätzliche Bedingungen können anwendbar sein. In der Wikipedia ist eine Liste der Autoren verfügbar. |