Der billigste Smartcard Reader der Welt

by whynot

Hier also die Beschreibung meines auf dem CCC von Darvad prästentierten "Billigsten Smartcard Reader der Welt". Dieser Reader ist innerhalb einer einzigen Nacht "erfunden" und mit Software zum Lesen von Telefonkarten ausgestattet worden - das Teil ist also keineswegs ausgereift. Ich möchte hier zwei Versionen dieses Readers vorstellen: Die Light-Version, welche wirklich nur simpelste Speicherkarten (z.B. Telefonkarten) auslesen kann und eine auf Darvads Empfehlung erweitere Version, welche (mit der richtigen Software) sogar asynchrone Protokolle beherschen sollte.


1) BSCRWD Light

2) Erweiterte Version


1) BSCRWD Light

WARNUNG:
Bitte achtet darauf euren Parallelport nicht zu beschädigen: Niemals die Kontakte des an den Parports angeschlossenen Kabels einfach so zusammenhalten - mindestens einer Person hat es beim Bau des BSCRDW schon selbigen gegrillt.

Da dieser Reader nichts weiter ist, als ein SC-Connector, dessen Kabel hinten in den Parallelport gesteckt werden, empfehle ich zunächst die Anleitung zum Selberbauen eines SC-Connectors zu lesen und sich diesen zu bauen. Habt ihr diese Hürde erfolgreich genommen, dann müßt ihr nur noch die Kabel richtig mit dem Parallelport verbinden:

ISO7816 Pinbelegung
     ___________________________
    / C1          | C5          \
    | VCC (+5V)   | GND (0V)    |
    |_____________|_____________|
    | C2          |             |
    | RESET       |     N.C.    |
    |_____________|_____________|
    | C3          | C7          |
    | CLOCK       | DATA (I/O)  |
    |_____________|_____________|
    |             |             |
    |   RFU       |     RFU     |
    \_____________|_____________/

C1 (VCC)   ---> Pin 9  (D7)    
C2 (Reset) ---> Pin 2  (D0)    
C3 (Clock) ---> Pin 3  (D1)    
C5 (GND)   ---> Pin 20 (GND)   
C7 (Data)  ---> Pin 1  (STROBE)

Habt ihr dies erledigt fehlt nur noch die richtige Software. Auf vielfache Nachfrage habe ich jetzt meine bisherige quick&dirty-nach-drei-Bier Version der Soft ein wenig überarbeitet und stelle sie sowohl in einer Dos als auch in einer Linux-Version zum Download bereit (incl. Quellcode):

Dos-Version

Linux-Version


Hier noch ein paar Bilder des "originalen" BSCRDW.


Überblick. Sorry für die Unordnung auf meinem Computertisch =)



Nahaufnahme mit Telefonkarte


2) Erweiterte Version

Diese Version wurde von Darvad vorgeschlagen. Der wesentliche Vorteil ist, daß bei dieser Version die Data-Leitung bidirektional funktioniert, so dass dieser Reader auch Informationen auf die Karten schreiben kann bzw. alle Protokolle kann, welche diese Eigenschaft zwingend benötigen (z.B. 2-Wire/I2C etc.). Dieser Reader beherrscht, wenn er entsprechend programmiert wird, sogar asynchrone Protokolle.

Hier also seine Pläne:



    Parallelport                                Chipkarte

    PIN 02 O-----------------------------------------O PIN 2 (Reset)
    PIN 03 O-----------------------------------------O PIN 3 (Clock)
    
    PIN 12 O----------------------+------------+-----O PIN 7 (Data)
                                  | C          |
                              B |/             |
    PIN 05 O------------||||----|  T1          |
                        10k0    |\|            |
                                 ~| E          |
                                  |            |                 
                                 ---           |
                                         10k0  |
    PIN 08 O------------|>|---+        +-||||--+
                         D1   |        |
    PIN 09 O------------|>|---+--------+-------------O PIN 1 (Power)
                         D2
    
    PIN 11 O-----------------------------------------O  evtl. Switch fuer
                                                        "richtigen"
                                                        Karteneinschub
                         
    PIN 18 O------+----------------------------------O PIN 5 (GND)
                  |
    PIN 19 O------+



    10k0 = 10 Kiloohm Widerstand
D1, D2 = einfache Schaltdioden
T1 = im Grunde genommen beliebiger NPN-Typ (z.B. 100mA, 65V)



by whynot, last change: Dec 30th