[[Vorlage(archiviert)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Paketquellen freischalten: Bearbeiten von Paketquellen] [:Packprogramme: Archive entpacken] [:Editor: Ein Editor öffnen] [:Programme_kompilieren: Pakete aus dem Quellcode erstellen] [:Terminal: Ein Terminalfenster öffnen] }}} [[Inhaltsverzeichnis]] Dieser Artikel beschreibt die Installation des [http://www.scmmicro.com/security/view_product_de.php?PID=9 SCM SCR 243 PCMCIA SmartCard-Readers] unter [:Ubuntu:] zur Verwendung als [:HBCI_Kartenleser:] in der [:Finanzverwaltung:]. Da der Hersteller nur einen PCSC-Treiber für ältere Kernel anbietet, muß der Sourcecode geringfügig angepasst werden. Weiterhin muß ein [http://sourceforge.net/projects/pcsc-ctapi/ PCSC-CTAPI-Wrapper] installiert werden zur Verwendung mit Anwendungen, die die CTAPI benötigen z.B. [http://matrica.de/produkte/produktmpx.html Moneyplex] {de}. = Getestete Kartenleser = * SCM SCR 243 PCMCIA SmartCard-Reader = Installation benötigter Pakete = Folgende Pakete werden benötigt [1] * '''build-essential''' * '''autoconf''' * '''libusb-0.1-4 ''' * '''libpcsclite1 ''' * '''libpcsclite-dev''' * '''pcscd''' (''universe'', [2]) * '''pcsc-tools ''' (''universe'') * '''libccid''' (''universe'') [[Vorlage(Pakete, libusb-0.1-4, libpcsclite1, libpcsclite-dev, pcscd, pcsc-tools, build-essential, autoconf, libccid)]] = Installation des PCSC-Treibers = Jetzt kann man den Treiber von [http://www.scmmicro.com/support/pcs_downloads.php?lang=en dieser Seite] {en} herunterladen, wobei man darauf achten muss, die Datei für den richtigen Kernel (also 2.6.x) auszuwählen. Das heruntergeladen Archiv wird entpackt [3], wobei einige Unterverzeichnisse entstehen. Hier wechselt man innerhalb der entstandenen Struktur ins Unterverzeichnis '''/src''', öffnet dort die Datei '''includes.h''' mit einen Editor mit Root-Rechten [4] und nimmt folgende Änderungen vor: {{{ .... #include // <-- dies ist die 1.Änderung ( vorher: #include ) #include #include #include #include #include // copy_to_user et al #include //#include #include #include #include #include #include #include #include //#include // <-- dies ist die 2. Änderung ( vorher: #include ) .... }}} Jetzt kann das '''src'''-Verzeichnis verlassen werden. Im Verzeichnis darüber sollte sich die Datei '''install''' befinden, die man nun mit Root-Rechten ausführt, z.B. im Terminal mittels [6] {{{#!vorlage Befehl sudo ./install }}} Der Treiber legt kein Device-File an, deshalb muss die von Hand erledigt werden [6]: {{{#!vorlage Befehl cd /dev sudo mknod SCR24x0 c 251 0 cd /lib/udev/devices sudo mknod SCR24x0 c 251 0 }}} Jetzt kann man die PCMCIA-Karte einstecken (incl. HBCI-Karte ) und startet PCSC-Daemon neu: {{{#!vorlage Befehl sudo /etc/init.d/pcscd restart }}} Testen, ob alles richtig läuft, kann man im Terminal mit den folgenden Befehlen: {{{#!vorlage Befehl lspcmcia -v }}} sollte folgende Ausgabe ergeben: {{{ Socket 0 Bridge: [yenta_cardbus] (bus ID: 0000:06:09.0) Configuration: state: on ready: unknown Voltage: 5.0V Vcc: 5.0V Vpp: 0.0V Socket 0 Device 0: [scr24x_cs] (bus ID: 0.0) Configuration: state: on Product Name: SCR243 PCMCIA Smart Card Reader Identification: manf_id: 0xffff card_id: 0x0001 prod_id(1): "SCR243 PCMCIA" (0x2054e8de) prod_id(2): "Smart Card Reader" (0xf5a90d5d) prod_id(3): --- (---) prod_id(4): --- (---) }}} Der Aufruf von {{{#!vorlage Befehl pcsc_scan }}} sollte folgende Ausgabe ergeben: {{{ PC/SC device scanner V 1.4.14 (c) 2001-2008, Ludovic Rousseau Compiled with PC/SC lite version: 1.4.99 Scanning present readers 0: SCR24x Smart Card Reader 00 00 Tue Dec 30 16:09:42 2008 Reader 0: SCR24x Smart Card Reader 00 00 Card state: Card inserted, ATR: 3B FF 18 00 FF 81 31 FE 45 65 63 11 06 40 02 50 00 10 54 30 03 09 05 00 6B ATR: 3B FF 18 00 FF 81 31 FE 45 65 63 11 06 40 02 50 00 10 54 30 03 09 05 00 6B + TS = 3B --> Direct Convention + T0 = FF, Y(1): 1111, K: 15 (historical bytes) TA(1) = 18 --> Fi=372, Di=12, 31 cycles/ETU (115200 bits/s at 3.57 MHz) TB(1) = 00 --> VPP is not electrically connected TC(1) = FF --> Extra guard time: 255 (special value) TD(1) = 81 --> Y(i+1) = 1000, Protocol T = 1 ----- TD(2) = 31 --> Y(i+1) = 0011, Protocol T = 1 ----- TA(3) = FE --> IFSC: 254 TB(3) = 45 --> Block Waiting Integer: 4 - Character Waiting Integer: 5 + Historical bytes: 65 63 11 06 40 02 50 00 10 54 30 03 09 05 00 Category indicator byte: 65 (proprietary format) + TCK = 6B (correct checksum) Possibly identified card (using /usr/share/pcsc/smartcard_list.txt): 3B FF 18 00 FF 81 31 FE 45 65 63 11 06 40 02 50 00 10 54 30 03 09 05 00 6B 3B FF 18 00 FF 81 31 .. 45 65 63 .. .. .. .. .. .. .. .. .. .. .. .. .. .. Geldkarte (generic ATR) }}} \\ = Installation des PCSC-CTAPI-Wrappers = Der Download des Wrappers erfolgt auf der Sourceforge [http://sourceforge.net/projects/pcsc-ctapi Projektseite] {en}. Nun entpackt man das Archiv [3], wechselt in das entstandene Verzeichnis ('''pcsc-ctapi-wrapper-0.3''', ggf. Versionsnummer anpassen) und kompiliert dort das Programm wie gewohnt [5] mittels ``make`` und ``make install``, auf den ``configure``-Schritt kann man verzichten. Der [:HBCI_Kartenleser:] kann nun über die CTAPI '''/usr/local/lib/libpcsc-ctapi-wrapper.so''' angesprochen werden. = Links = * dieser Artikel basiert auf: http://ubuntuforums.org/showthread.php?p=6335064 {en} #tag: System, Hardware, Onlinebanking, Chipkarte