Keypad für Kobil Trib@nk mit libchipcard

 
Eckaaaaaat
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 11 / 2008
Betreff:

Keypad für Kobil Trib@nk mit libchipcard

 · 
Gepostet: 19.11.2008 - 17:52 Uhr  ·  #1
Hallo,

ich schaffe es nicht, den Kartenleser so einzurichten, daß ich dessen Tastatur für die Pineingabe benutzen kann. Vielleicht kann mir da ja jemand helfen.

ich habe das libchipcard 4.2.0 Paket meiner Distribution (Mandriva 2009.0) installiert. Durch kopieren der Readerdefinition aus den 4.2.3 Quellen in ccid_ifd.xml wird er auch erkannt.

Code
5:2008/11/19 17-20-03:chipcardd(10321):devicemanager.c: 3215: AUTOCONFIG: Created new reader "auto1-ko_kaan_tribank_usb" (UsbRaw/0d46/3010)
5:2008/11/19 17-20-03:chipcardd(10321):devicemanager.c: 3251: Assigned device path "usb:0d46/3010:libusb:003:002" to reader "auto1-ko_kaan_tribank_usb"


chipcard-tool check liefert dann
Code
  Readers:
  - auto1-ko_kaan_tribank_usb (ko_kaan_tribank_usb, port 0): up


Allerdings scheint es unstimmigkeiten darüber zu geben, wie die Pin eingegeben wird. Denn es kommt sofort zum Abbruch. Im Log vom AqBanking-Wizard erscheint beim Versuch die Accounts zu bestimmen:

Code

3:2008/11/19 17-36-37:chipcard3-client(25937):clientlcc_cmd.c:  483: Command error -100 (Unknow error code)
3:2008/11/19 17-36-37:chipcard3-client(25937):clientlcc_cmd.c:  532: Error response for request "commandCard"
3:2008/11/19 17-36-37:chipcard3-client(25937):ct_card.c:  476: sw1=ffffffff sw2=ffffffff (Unknow error code)
3:2008/11/19 17-36-37:chipcard3-client(25937):ddvcard.c:  425: Error in PIN input
3:2008/11/19 17-36-37:chipcard3-client(25937):ddvcard.c: 1006: Error on pin entry (-103)


Entferne ich das Flag keypad in der ccid_ifd.xml, dann funktioniert alles betsens, außer das ich die Pin jetzt natürlich am PC eingebe.

Ich habe auch ein wenig in den Source-Dateien rumgestöbert und konnte rausfinden, daß die Flags vermutlich korrekt gelesen werden, denn bei einem unsinnigen Flag gibt es eine Fehlermeldung. Allerdings sollte die Ausgabe von chipcard-tool check dem Quellcode nach so aussehen:

- auto1-ko_kaan_tribank_usb (ko_kaan_tribank_usb, port 0, keypad): up

Ich habe natürlich versucht die 4.2.3 Pakete aus Cooker zu installieren bzw. selbst zu bauen. Allerdings wird der Reader dann erst gar nicht mehr erkannt.

Gruß
Alex
Eckaaaaaat
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 11 / 2008
Betreff:

Re: Keypad für Kobil Trib@nk mit libchipcard

 · 
Gepostet: 21.11.2008 - 12:21 Uhr  ·  #2
Inzwischen habe ich es geschaft, Version 4.2.3 zu bauen und zu benutzen - erstmal ohne HAL-Unterstützung. Außerdem habe ich AqBanking in 3.8.1 installiert.
CCID habe ich auch auf 3.1.9 aktualisiert.

Die Symptome sind nach wie vor die gleichen. Inzwischen habe ich aber rausgefunden, daß beim Abrufen der Accounts libchipcard tatsächlich versucht, die PIN von der Tastatur des Readers zu lesen. Jedenfalls schließe ich das aus der Meldung
Code
3:2008/11/21 12-01-57:chipcard3-client(852):ct_card.c:  476: sw1=ffffffff sw2=ffffffff (Unknow error code)


Das chipcard-tool nichts vom Keypad anzeigt, ist also wohl eher ein kosmetisches Problem.

Gruß
Alex
aquamaniac
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Hamburg
Homepage: aqbanking.de/
Beiträge: 642
Dabei seit: 03 / 2005
Betreff:

Re: Keypad für Kobil Trib@nk mit libchipcard

 · 
Gepostet: 29.11.2008 - 20:24 Uhr  ·  #3
Hallo,

kannst Du vor dem Aufruf mal die Umgebungsvariable "LC_LOGLEVEL=info" setzen? Dann tauchen wesentlich mehr Meldungen auf der Konsole auf, die eventuell hilfreicher sind.

Ich selbst betreibe hier jedenfalls auch so einen Leser, und da klappt die sichere Pin-Eingabe...


Gruss
Martin
Eckaaaaaat
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 11 / 2008
Betreff:

Re: Keypad für Kobil Trib@nk mit libchipcard

 · 
Gepostet: 01.12.2008 - 13:34 Uhr  ·  #4
Ich hab das neulich schon mit LC_LOGLEVEL=debug gemacht.

Code
...
7:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  260: Searching for extended card "card"
7:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  271: Searching in parent "card"
6:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  133: Searching in "card" (ccid_ifd/ko_kaan_tribank_usb)
7:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  146: Searching for ccid_ifd/ko_kaan_tribank_usb/IsoPerformVerification_Fpin2
7:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  167: Searching for ccid_ifd/IsoPerformVerification_Fpin2
7:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  175: Found command in ccid_ifd
6:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  864: - determining target
6:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  881: - building APDU
7:2008/11/28 02-31-46:chipcard3-client(15433):msgengine.c:  576: Supporting type "byte"
7:2008/11/28 02-31-46:chipcard3-client(15433):msgengine.c:  648: Supporting type "dword"
7:2008/11/28 02-31-46:chipcard3-client(15433):msgengine.c:  576: Supporting type "byte"
6:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  893: - sending APDU, waiting for answer
6:2008/11/28 02-31-46:chipcard3-client(15433):client.c:  642: Sending:
6:2008/11/28 02-31-46:chipcard3-client(15433):String size is 37
6:2008/11/28 02-31-46:chipcard3-client(15433):0000: 06 00 00 00 00 00 00 89 47 04 08 04 02 00 00 00 ........G.......
6:2008/11/28 02-31-46:chipcard3-client(15433):0010: 00 00 00 00 0d 00 00 00 00 20 00 81 08 20 ff ff ......... ... ..
6:2008/11/28 02-31-46:chipcard3-client(15433):0020: ff ff ff ff ff                                  .....
7:2008/11/28 02-31-46:chipcard3-client(15433):clientlcc.c:  946: Sending waiting request 492f49f1
7:2008/11/28 02-31-46:chipcard3-client(15433):clientlcc.c: 1571: Got a response to request 492f49f1
7:2008/11/28 02-31-46:chipcard3-client(15433):clientlcc.c: 1571: Got a response to request 492f49f1
3:2008/11/28 02-31-46:chipcard3-client(15433):clientlcc_cmd.c:  483: Command error -100 (Unknow error code)
3:2008/11/28 02-31-46:chipcard3-client(15433):clientlcc_cmd.c:  532: Error response for request "commandCard"
6:2008/11/28 02-31-46:chipcard3-client(15433):clientlcc.c:  279: here (3)
6:2008/11/28 02-31-46:chipcard3-client(15433):client_cmd.c:  902: here (3)
7:2008/11/28 02-31-46:chipcard3-client(15433):card_iso.c:  574: ExecCommand returned 3
6:2008/11/28 02-31-46:chipcard3-client(15433):card_iso.c:  576: here (3)
3:2008/11/28 02-31-46:chipcard3-client(15433):ct_card.c:  476: sw1=ffffffff sw2=ffffffff (Unknow error code)
6:2008/11/28 02-31-46:chipcard3-client(15433):ct_card.c:  684: Error in pin input
3:2008/11/28 02-31-46:chipcard3-client(15433):ddvcard.c:  467: Error in PIN input
3:2008/11/28 02-31-46:chipcard3-client(15433):ddvcard.c: 1048: Error on pin entry (-103)
3:2008/11/28 02-31-46:aqhbci(15433):msgcrypt_ddv.c:  332: Could not sign data with medium of user "00112643520011264352" (-103)
3:2008/11/28 02-31-46:aqhbci(15433):jobqueue.c:  429: Could not encode message (-103)
3:2008/11/28 02-31-46:aqhbci(15433):outbox.c: 1351: Error performing queue (-1)
3:2008/11/28 02-31-46:aqhbci(15433):provider.c: 1004: Job has errors
3:2008/11/28 02-31-46:qt3_wizard(15433):cfgtabpageuserhbci.cpp:  490: Error getting accounts


Der zugehörige Teil des Logs von chipcardd sieht so aus:

Code

7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  332: Working on CardCommand request
7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  246: Working on ExecApdu request
7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  272: Sending response to CommandCard
  String size is 193:
  0000: 69 70 63 20 7b 0a 63 68 61 72 20 69 64 3d 22 32 ipc {.char id="2
  0010: 35 22 0a 63 68 61 72 20 63 6d 64 3d 22 43 6c 69 5".char cmd="Cli
  0020: 65 6e 74 25 35 46 43 6f 6d 6d 61 6e 64 43 61 72 ent%5FCommandCar
  0030: 64 22 0a 7d 0a 64 61 74 61 20 7b 0a 63 68 61 72 d".}.data {.char
  0040: 20 63 61 72 64 69 64 3d 22 30 30 30 30 30 30 30  cardid="0000000
  0050: 32 22 0a 62 69 6e 20 20 64 61 74 61 3d 22 30 36 2".bin  data="06
  0060: 30 30 30 30 30 30 30 30 30 30 30 30 38 39 34 37 0000000000008947
  0070: 30 34 30 38 30 34 30 32 30 30 30 30 30 30 30 30 0408040200000000
  0080: 30 30 30 30 30 30 30 44 30 30 30 30 30 30 30 30 0000000D00000000
  0090: 32 30 30 30 38 31 30 38 32 30 46 46 46 46 46 46 2000810820FFFFFF
  00a0: 46 46 46 46 46 46 46 46 22 0a 63 68 61 72 20 74 FFFFFFFF".char t
  00b0: 61 72 67 65 74 3d 22 72 65 61 64 65 72 22 0a 7d arget="reader".}
  00c0: 0a                                              .
7:2008/11/28 02-31-46:chipcardd(15431):devicemanager.c: 1927: Command "Client_CommandCard" not handled by device manager
5:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:   88: Client 492f49be: ExecApdu [LC_Crypt_TokenDDV/nobody]
7:2008/11/28 02-31-46:chipcardd(15431):lockmanager.c:  284: slot currently locked by "492f49e5" (wanted: 492f49e5)
5:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  231: Enqueued ExecApdu request for card "00000002" and client "492f49be"
7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  332: Working on CardCommand request
7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  246: Working on ExecApdu request
  String size is 192:
  0000: 69 70 63 20 7b 0a 63 68 61 72 20 69 64 3d 22 32 ipc {.char id="2
  0010: 30 22 0a 63 68 61 72 20 72 65 66 69 64 3d 22 31 0".char refid="1
  0020: 39 22 0a 63 68 61 72 20 63 6d 64 3d 22 44 72 69 9".char cmd="Dri
  0030: 76 65 72 25 35 46 43 61 72 64 43 6f 6d 6d 61 6e ver%5FCardComman
  0040: 64 52 65 73 70 6f 6e 73 65 22 0a 7d 0a 64 61 74 dResponse".}.dat
  0050: 61 20 7b 0a 69 6e 74 20 20 63 6f 64 65 3d 22 2d a {.int  code="-
  0060: 31 30 30 22 0a 63 68 61 72 20 74 65 78 74 3d 22 100".char text="
  0070: 55 6e 6b 6e 6f 77 20 65 72 72 6f 72 20 63 6f 64 Unknow error cod
  0080: 65 22 0a 63 68 61 72 20 72 65 61 64 65 72 49 64 e".char readerId
  0090: 3d 22 34 39 32 66 34 39 62 64 22 0a 69 6e 74 20 ="492f49bd".int 
  00a0: 20 73 6c 6f 74 6e 75 6d 3d 22 30 22 0a 69 6e 74  slotnum="0".int
  00b0: 20 20 63 61 72 64 6e 75 6d 3d 22 32 22 0a 7d 0a   cardnum="2".}.
7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  332: Working on CardCommand request
7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  246: Working on ExecApdu request
7:2008/11/28 02-31-46:chipcardd(15431):clr_execapdu.c:  272: Sending response to CommandCard


Da ich nicht wußte, habe ob es für diesen Fall von Belang war, habe ich auch die Änderung für die Puffergröße im ccid-Treiber ausprobiert. Da die Log-Meldungen gleich bleiben ist dies anscheinend aber nicht der Fall.

Gruß
Alex
aquamaniac
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Hamburg
Homepage: aqbanking.de/
Beiträge: 642
Dabei seit: 03 / 2005
Betreff:

Re: Keypad für Kobil Trib@nk mit libchipcard

 · 
Gepostet: 01.12.2008 - 13:42 Uhr  ·  #5
Zitat geschrieben von Eckaaaaaat

Code
...
6:2008/11/28 02-31-46:chipcard3-client(15433):client.c:  642: Sending:
6:2008/11/28 02-31-46:chipcard3-client(15433):String size is 37
6:2008/11/28 02-31-46:chipcard3-client(15433):0000: 06 00 00 00 00 00 00 89 47 04 08 04 02 00 00 00 ........G.......
6:2008/11/28 02-31-46:chipcard3-client(15433):0010: 00 00 00 00 0d 00 00 00 00 20 00 81 08 20 ff ff ......... ... ..
6:2008/11/28 02-31-46:chipcard3-client(15433):0020: ff ff ff ff ff                                  .....



Hmm, die APDU erscheint mir nicht korrekt... Die enthaelt scheinbar nur den Datenteil...


Gruss
Martin
Eckaaaaaat
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 11 / 2008
Betreff:

Re: Keypad für Kobil Trib@nk mit libchipcard

 · 
Gepostet: 07.04.2009 - 22:07 Uhr  ·  #6
Ich möchte mal ein kurzes Update geben:

nachdem ich ccid auf 1.3.10, gwenhywfar auf 3.8.0 und libchipcard auf 4.2.6 aktualisiert habe, funktioniert alles prima. Die PIN kann ich jetzt über das Keypad eingeben. :thup:
Gewählte Zitate für Mehrfachzitierung:   0