Archiv Hardware perfekt konfigurieren 12.949 Themen, 54.079 Beiträge

Kartenlese und schreibgerät

Maik28 / 8 Antworten / Flachansicht Nickles

Hallo, ich habe einen Kartenleser(und Schreiber). Er ist angeschlossen an com1 und mit Strom über Netzteil. Auf dem Gerät steht nur VeroCard drauf. Ich finde weder Hersteller noch Treiber. Software habe ich auch keine. Ich habe Win XP SP2. Bitte dringend um Hilfe. Jeder Tip wird dankend angenommen. MfG Maik

Herid Junior Maik28 „Kartenlese und schreibgerät“
Optionen

Hallo Maik,

ich habe deine Message erhalten, der Einfachheit halber antworte ich auf diesem Wege.
Da sind wir leider schon zwei, die sich mit diesen Smartcards so gar nicht auskennen. Alles, was ich darüber weiß, stammt aus dem Novemberheft der Elektronikzeitschrift elektor, das ich rein zufällig in unserer Stadtbücherei in die Hand bekommen habe. Darin fanden sich zwei Artikel, einer über die technischen Grundlagen der Smartcard, einer über die Konstruktion eines Smartcard-Readers (wobei "Reader" etwas irreführend ist, mit dem Ding kann man die Smartcard halt auch beschreiben).

Eins vorneweg: wenn es dir nur darum geht, die Chipkarten aufzuladen und Kaffee zu kochen, ist die einfachste Methode, den Hersteller der Kaffeemaschine (! nicht des Kartenlesers) aufzustöbern und von ihm eine Bezahleinheit zu beziehen. Dabei dürfte es sich sinnvollerweise um ein separates Gerät (hauptsächlich Kartenschacht und Münzeinwurf) handeln, ähnlich wie Schranke und Bezahlautomat im Parkhaus (sonst könnte man ja auch gleich eine Münzautomatik in die Kaffeemaschine einbauen und sich die Elektronik sparen). Für den Kaffeeautomaten solltest du dann keine weitere Software brauchen, da müßte es genügen, den Chipkartenleser anzuschließen.

Falls du trotzdem willens bist, den Zugriff über den PC zu versuchen, folgen hier ein paar grundlegende Überlegungen, die dir wenigstens die grobe Richtung weisen sollten (selber habe ich, wie gesagt, gar keine Erfahrung mit Chipkartenprogrammierung).

Grundsätzlich besteht so eine Chipkarte (siehe dazu auch diesen Wikipedia-Artikel aus einem Mikroprozessor, Speicherbaustein und einigen optionalen Komponenten (bei neueren Modellen z.B. ein Kryptographie-Coprozessor). Den Kontakt zum Lesegerät stellen acht goldfarbige Flächen dar, die zu einem Quadrat angeordnet sind. Über diese Kontakte und das Lesegerät kann eine dritte Maschine mit der Karte Daten austauschen - z.B. deine Kaffeemaschine oder ein PC. Um vollen Zugriff auf die Karte zu haben, mußt du folgende Aufgaben lösen:

1. muß man wissen, um was für einen Kartentyp es sich genau handelt, d.h. welcher Mikroprozessor und welche weiteren Bauteile drinstecken
2. braucht man einen Cardreader/Writer, der einem standardgemäßen Zugriff gewährt
3. braucht man eine Software, die die Kommunikation mit der Karte übernimmt. Ein gewiefter Programmierer, der sich mit den entsprechenden Schnittstellenprotokollen auskennt (wohlgemerkt: ich bin keiner), könnte den Kartenleser und damit die Karte wohl auch direkt auslesen bzw. beschreiben, aber mit einem entsprechenden Programm geht es natürlich ungleich einfacher.
4. ist der eigentliche Knackpunkt: man muß wissen, oder womöglich aus den vorgefundenen Daten ableiten, um was für eine Anwendung es sich handelt (in deinem Fall: Bezahlsystem für eine Kaffeemaschine), und wie die Daten organisiert sind, gegebenenfalls auch ob und wie sie verschlüsselt sind (gerade bei einem Bezahlsystem zu erwarten).

Punkt 1 sollte sich notfalls herausfinden lassen, wenn du - vermutlich über den Hersteller - an Spezifikationen und Datenblätter der VeroCard gelangst. Im besten Fall wird die Karte sogar automatisch von der Programmiersoftware erkannt, so daß du dich um Einzelheiten gar nicht zu kümmern brauchst (siehe Punkt 3).

Punkt 2 könnte zum Problem werden, da dein Cardreader ja offenbar als Lesegerät zum Steuern der Kaffeemaschine gedacht ist, und nicht als Universalschnittstelle für einen Programmierer. Ich vermute, wie gesagt, daß zu dem Kaffeeautomat mit Kartenleser ein Bezahlautomat gehört, an dem man seine Karte aufladen kann. Wenn du also mit einem der genannten Programme versuchst, auf den Kartenleser zuzugreifen, wirst du wahrscheinlich nur Lesezugriff bekommen - und wenn du Pech hast, nicht mal den. Für vollen Zugriff wirst du dir wahrscheinlich einen Smartcard-Reader zum Anschluß an den PC besorgen müssen, die gibt es zum Glück auch fertig zu kaufen - im Idealfall mit entsprechender Software. (Das Problem ist allerdings, das nicht alle Lese/Schreibgeräte für alle Smartcard-Typen geeignet sind, da wirst du herausfinden müssen, zu welchem Kartentyp die VeroCard genau gehört).

Punkt 3: Die Programme, die ich dir genannt habe, sind laut elektor-Artikel für Leute gedacht, die eigene Anwendungen mit Smartcards entwickeln wollen, seien es Arbeitszeitkontrollsysteme, Bezahlsysteme (wie bei deiner Kaffeemaschine) oder Zugangskontrollen für Atomwaffenbunker ;-). Sie sind also für Leute gedacht, die eine gewisse Erfahrung im Programmieren und im Ansteuern von Schnittstellen mitbringen, und für die sind die Programme wahrscheinlich sogar weitgehend selbsterklärend. Wenn du Lust hast, entsprechend viel Arbeit in die Angelegenheit zu investieren, gibt es auch Bücher über das Thema (dieses zum Beispiel).

Richtig knifflig wird es allerdings bei Punkt 4, Organisation der Informationen auf der Karte und Verschlüsselung. Da es sich bei Verocard um eine kommerzielle Anwendung handelt, wird der Hersteller kaum bereit sein, die Interna der Karte und die sicherlich vorhandene Verschlüsselung offenzulegen. Wenn du also vorhast, die Karten "von Hand" am PC aufzuladen, müßtest du quasi eine Art Reverse Engineering betreiben, d.h. mit Hilfe entsprechender Software die Karten versuchsweise beschreiben und durch Versuch und Irrtum herausfinden, was dann der Kaffeeautomat für einen Kontostand auf der Karte anzeigt. Für private Zwecke ist sowas meines Wissens durchaus erlaubt, aber halt eine Menge Arbeit.

Langer Rede kurzer Sinn: wenn es dir nur um´s Kaffeetrinken geht, dann besorge dir die dazugehörige Bezahleinheit vom Hersteller des Kaffeeautomaten, das ist bei weitem das einfachste. Wenn du aber Blut geleckt hast, besorge dir einen passenden Smartcard-Reader/Writer, entsprechende Software und geeignete Lektüre - als Lohn winkt dir lebenslang kostenloser Kaffee...! ;-)
HTH