Hibiscus: Experimenteller PC/SC-Support!
Geschrieben von Olaf Willuhn am
Vor fast zwei Jahren hatte ich mich schonmal daran versucht, neben dem existierenden Support für Kartenleser mit CTAPI-Treiber auch solche mit PC/SC-Treiber zu unterstützen (siehe auch mein Mailinglisten-Posting). Leider war ich damals an der PIN-Abfrage gescheitert. Volker - ein Hibiscus-User - hatte sich die Sache jetzt mal angeschaut und mit Protokoll-Traces des pcsc-ctapi-wrappers verglichen. Dabei haben wir festgestellt, dass nur ein paar einzelne Bytes falsch waren. Der größte Teil war schon korrekt. Nach etwas Nacharbeit und Bugfixing hat er mir vorhin Erfolg gemeldet. Er konnte die Umsätze seines Kontos via PC/SC in Hibiscus abrufen! Da ich noch nicht weiss, ob das jetzt bei allen Kartenlesern mit PC/SC und auf allen Betriebssystemen funktioniert, sind mutige Tester gefragt. Falls ihr also bisher euren Kartenleser nicht nutzen konntet, weil es keine CTAPI-Treiber gibt oder weil der pcsc-ctapi-wrapper bei euch nicht funktioniert habt, dann könnt ihr mit dem aktuellen Nightly-Build (Windows und Linux ab sofort, für OS X ist der Support erst ab morgen im Nightly-Build) mal testen. Legt hierzu in der Kartenleser-Konfiguration einen neuen Bank-Zugang an und wählt als Kartenleser "PC/SC-Kartenleser". Das Feld "Name des PC/SC-Kartenlesers" muss nur ausgefüllt werden, falls ihr mehrere Kartenleser parallel angeschlossen habt. Die PC/SC-Konfiguration kann parallel zu einer existierenden CTAPI-Konfiguration verwendet werden.
Ich bin auf eure Rückmeldungen gespannt.
PS: Der neue Support betrifft nur den Kartenleser bzw. dessen Treiber. Es werden jedoch nach wie vor nur DDV-Chipkarten unterstützt, wie sie beispielsweise von den Sparkassen verwendet werden. Keine RDH-Chipkarten.
Danke an der Stelle nochmal an Volker fürs Testen!
Ich bin auf eure Rückmeldungen gespannt.
PS: Der neue Support betrifft nur den Kartenleser bzw. dessen Treiber. Es werden jedoch nach wie vor nur DDV-Chipkarten unterstützt, wie sie beispielsweise von den Sparkassen verwendet werden. Keine RDH-Chipkarten.
Danke an der Stelle nochmal an Volker fürs Testen!
Trackbacks
Trackback-URL für diesen EintragDieser Link ist nicht aktiv. Er enthält die Trackback-URI zu diesem Eintrag. Sie können diese URI benutzen, um Ping- und Trackbacks von Ihrem eigenen Blog zu diesem Eintrag zu schicken. Um den Link zu kopieren, klicken Sie ihn mit der rechten Maustaste an und wählen "Verknüpfung kopieren" im Internet Explorer oder "Linkadresse kopieren" in Mozilla/Firefox.
Keine Trackbacks
Die Kommentarfunktion wurde vom Besitzer dieses Blogs in diesem Eintrag deaktiviert.
Kommentare
Ansicht der Kommentare: Linear | VerschachteltUwe am :
Nach der Erstinstallation und der Anlage eines neuen Bankzugangs wurde ich vom Chipkartenleser einmalig zur Eingabe einer PIN aufgefordert. Danach nimmermehr.
Bei "KonfigurationTesten" erscheint jetzt:
Teste Sicherheits-Medium...
Kein CTAPI-Treiber in der Kartenleser-Konfiguration angegeben
Kubuntu 12.04 64-bit
Der pcsc_scan liefert folgende Werte:
$ pcsc_scan
PC/SC device scanner
V 1.4.18 (c) 2001-2011, Ludovic Rousseau
Compiled with PC/SC lite version: 1.7.4
Using reader plug'n play mechanism
Scanning present readers...
0: KOBIL EMV CAP - SecOVID Reader III (SD101318933) 00 00
Sun Jun 23 08:05:29 2013
Reader 0: KOBIL EMV CAP - SecOVID Reader III (SD101318933) 00 00
Card state: Card inserted,
ATR: 3B FF 18 00 FF 81 31 FE 45 65 63 11 08 66 01 56 00 11 57 10 03 05 06 20 4B
Vielleicht hilft diese Rückmeldung weiter.
Olaf am :
Kasper am :
Oracle Java 7 64-Bit
Cherry GmbH SmartTerminal ST-2xxx 0
Cherry SmartCard Package V3.2 Build 2
läuft :)
Uwe am :
http://www.wlsoft.de/sites/default/files/bilder/hibiscus_250.png
Olaf am :
Uwe am :
unter Hibiscus - Über steht:
Software-Version: 2.5.1-nightly
Datenbank-Version: 42
Build: 570 [Datum 20130623]
Olaf am :
Uwe am :
Wenn ich keinen PCSC-Namen eingebe kommt die Meldung:
Teste Sicherheits-Medium...
Kein CTAPI-Treiber in der Kartenleser-Konfiguration angegeben
Wenn ich als PCSC-Namen "Reader 0" eintrage
Teste Sicherheits-Medium...
Fehler beim Testen des Sicherheits-Mediums.
Aufgetretene Fehlermeldungen:
-----------------------------
error while opening chipcard; nested exception is:
Kartenleser "Reader 0" nicht gefunden
Kartenleser "Reader 0" nicht gefunden
-----------------------------
Olaf am :
Olaf am :
Wie gesagt - Nightly-Build ab morgen frueh.
Uwe am :
Kubuntu 12.04 LTS
KAAN TriBank V79.23
Olaf am :
jürgen am :
ich teste gerade mit reiner sct komfort auf debian wheezy 64 und bekomme die fehlermeldung:
[27.06.2013 17:12:04] Teste Sicherheits-Medium...
[27.06.2013 17:12:04] open ddv passport
[27.06.2013 17:12:04] pcsc name: REINER SCT cyberJack RFID komfort (1079944751) 00 00
[27.06.2013 17:12:04] soft pin: false
[27.06.2013 17:12:04] entry index: 1
[27.06.2013 17:12:04] passport type: DDVPCSC
[27.06.2013 17:12:04] Bitte legen Sie die Chipkarte in das Lesegerät
[27.06.2013 17:12:04] found card terminals:
[27.06.2013 17:12:04] REINER SCT cyberJack RFID komfort (1079944751) 00 00
[27.06.2013 17:12:14] card type: T=1
[27.06.2013 17:12:14] using: org.kapott.hbci.smartcardio.DDVCardService1
[27.06.2013 17:12:14] querying features
[27.06.2013 17:12:14] FEATURE_VERIFY_PIN_DIRECT: 42000db2
[27.06.2013 17:12:14] FEATURE_MODIFY_PIN_DIRECT: 42000db3
[27.06.2013 17:12:14] FEATURE_MCT_READER_DIRECT: 42000db4
[27.06.2013 17:12:14] FEATURE_MCT_UNIVERSAL: 42000db5
[27.06.2013 17:12:14] Fehler beim Testen des Sicherheits-Mediums.
[27.06.2013 17:12:14] Aufgetretene Fehlermeldungen:
[27.06.2013 17:12:14] -----------------------------
[27.06.2013 17:12:14] error while opening chipcard; nested exception is:
[27.06.2013 17:12:14] org.kapott.hbci.exceptions.HBCI_Exception
[27.06.2013 17:12:14] 32
[27.06.2013 17:12:14] -----------------------------
hbci version ist 2.2
kannst du damit was anfangen?
Olaf am :
Uwe am :
openSUSE 12.3 (Dartmouth) (x86_64)
KAAN TriBank V79.23
Clio am :
auch hier verlief der Test erfolgreich.
Debian Sid, Kernel 3.10.0 mit ReinerSCT e-com plus.
Mal wieder ganz hervorragende Arbeit, vielen Dank dafür.
Gruß
Clio
David am :
pcscd und libifd-cyberjack6 mit allen Abhaengigkeiten installiert
Jameica & Hibiscus nightly vom 24.7.2013
ReinerSCT cyberJack RFID comfort (dual interface smartcard reader)
* Sparkassen DDV-Karte
Resultat: Klappt einwandfrei. Leser wird bei automatischer Suche (nach PIN-Eingabe) erkannt und kann danach wie ueblich genutzt werden.
Olaf am :
MAK am :
unter FreeBSD 8.3 wird der Kartenleser von Hibiscus nicht gefunden. Unter pcsc_scan taucht der Leser auf:
PC/SC device scanner
V 1.4.21 (c) 2001-2011, Ludovic Rousseau
Compiled with PC/SC lite version: 1.8.8
Using reader plug'n play mechanism
Scanning present readers...
0: KOBIL KAAN Advanced (E_071102426) 00 00
Gruss,
Martin
Olaf am :
Weiterhin: Hibiscus kann nur mit DDV-Karten umgehen, wie sie etwa von den Sparkassen verwendet werden. Falls du eine RDH-Karte hast (wie sie z.Bsp. von den Volksbanken genutzt werden), kann die auch mit PCSC nicht in Hibiscus genutzt werden.
MAK am :
Aber kann es sein, dass bei der Einstellung "PC/SC-Kartenleser" immer "Index des HBCI-Zugangs" = 1 verwendet wird, egal was im zugehörigen Eingabefeld steht?
Olaf am :
Norbert am :
nun erkennt hibiscus meinen Kartenleser ReinerSCT. Leider bin ich Künder einer Volksbank und die benutzen wohl RDH-Karten. Fehlermeldung:
[02.09.2013 18:07:05] Fehler beim Testen des Sicherheits-Mediums: SCARD_E_INVALID_PARAMETER
[02.09.2013 18:07:05] Aufgetretene Fehlermeldungen:
[02.09.2013 18:07:05] card type: T=1
[02.09.2013 18:07:05] -----------------------------
[02.09.2013 18:07:05] error while opening chipcard; nested exception is:
[02.09.2013 18:07:06] org.kapott.hbci.exceptions.HBCI_Exception
[02.09.2013 18:07:06] transmitControlCommand() failed
[02.09.2013 18:07:06] SCARD_E_INVALID_PARAMETER
[02.09.2013 18:07:06] -----------------------------
Dann muss ich mir wohl ein anderes Banking-Programm und eine andere Vereinsverwaltung (Verein) zulegen.
Schade.
Viele Grüße,
N.D.
Olaf am :
Allerdings bieten die Volksbanken inzwischen auch alle die neuen TAN-Verfahren smsTAN und chipTAN an, wobei letzteres als mindestens genau so sicher gilt, wie Chipkarte. Die Sicherheit ist eher noch hoeher, weil auf dem Display des TAN-Generator der abzusendende Auftrag nochmal zur Bestaetigung angezeigt wird. Diese Verfahren unterstuetzt auch Hibiscus.
Gerald am :
Hallo, ich würde gern Hibiscus nutzen, habe allerdings obige HBCI-Chipkarten. Worin liegt die Schwierigkeit auch diesen Kartentyp zu unterstützen?
Gruß Gerald
Olaf am :
> zu unterstützen?
Es ist halt komplex und umfangreich.Und es gibt derzeit erheblich dringendere Themen - wie etwa SEPA.
lateiner am :
Bei mir wird der Kartenleser (REINER SCT cyberJack RFID standard) nicht gefunden. Mit
Build: 598 [Datum 20130718] funktioniert es einwandfrei.
Olaf Willuhn am :
Oeffne mal die Kartenleser-Config und stelle die explizit auf "HBCI 2.1" und speichere.
Wenn es danach wieder geht, gib Bescheid. Dann aendere ich den Default-Wert wieder.
Doc am :
das Testen eines REINER SCT cyberJack RFID standard unter Linux Mint Maya (13) 64-bit (entspricht Ubuntu Precise) mit Nightly-builds vom 23.11.13 (Jameica und Hibiscus) ergibt nur "Kein Kartenleser gefunden". pcsc_scan, cyberjack und fxcyberjack in der Konsole ergibt erkannten Leser und keine Fehler. Liegt es evtl. am 64-bit System?
Olaf Willuhn am :
Doc am :
Sebastian am :
Kann man auf die ältere Version zurückgreifen? Im Sommer scheint es ja mal funktioniert zu haben?!
lateiner am :
Wenn man die Zeilen 12 und 13 in der jameica.sh auskommentiert, funktioniert es einwandfrei. Das sind die beiden Zeilen nach "# Ergänzung für PCSC"
@Olaf vielleicht wäre es ganz klug vorher zu prüfen, ob es die libpcsclite überhaupt unter diesem Pfad gibt, bevor man das setzt. Besser noch man vertraut darauf, dass der Pfad für die shared library für Java richtig eingestellt ist.
Olaf Willuhn am :
> aktuellen Version wird der Pfad für die libpcsclite
> shared library beim Start an Java übergeben.
Oha! Prima. Dann kriegen wir damit wohl auch http://www.onlinebanking-forum.de/forum/topic.php?t=16599 geloest.
> Das ist natürlich Supper, wenn der übergebene Pfad
> überhaupt nicht vorhanden ist. Debian und seine
> Derivaten legen auch 64 Bit Libs unter /usr/lib/ und
> nicht unter /usr/lib64/ ab.
Das ist dann aber von Distribution zu Distribution unterschiedlich. Bei OpenSuSE z.Bsp. wird /usr/lib64 verwendet.
> Wenn man die Zeilen 12 und 13 in der jameica.sh
> auskommentiert, funktioniert es einwandfrei. Das sind
> die beiden Zeilen nach "# Ergänzung für PCSC"
Ich werde das aus dem Shell-Script wieder entfernen. Allerdings wird es dann wieder bei den anderen Usern nicht mehr funktionieren, bei denen genau dieser Parameter noetig war.
> @Olaf vielleicht wäre es ganz klug vorher zu prüfen,
> ob es die libpcsclite überhaupt unter diesem Pfad gibt,
> bevor man das setzt.
So einfach ist das leider nicht. Insbesondere dann, wenn man ein gemischtes System hat, auf dem 32- und 64Bit installiert sind und unter Umstaenden beide Versionen der Lib installiert sind. Und selbst dann weiss ich z.Bsp. in /usr/lib nicht, ob das die 32- oder 64-Bit-Version ist. Ich werde es daher besser komplett aus dem Shell-Script entfernen.
> Besser noch man vertraut darauf, dass der Pfad für
> die shared library für Java richtig eingestellt ist.
Leider kann man aber nicht immer darauf vertrauen, dass das ueberall funktioniert. Daher hab ich das ja erst hinzugefuegt. Siehe die Kommentare weitere oben in diesem Blog-Beitrag. Z.Bsp. Kommentar 7.1.1. Mir schrieb auch noch ein User mit Mageia-Linux, bei dem dieser Parameter ebenfalls noetig war.
Olaf am :
lateiner am :
die Diskussion habe ich in der Tat überlesen gehabt und war deshalb etwas genervt "Warum patch er was kaputt das doch schon ging" ;)
Mit diesen Bashzeilen sollte es für alle zufriedenstellend Funktionieren. Wenn die Lib unter /usr/lib* liegt wird der Pfad gesetzt sonst bleibt er einfach leer und wir hoffen mal das die Lib dann im java lib pfad liegt:
# Ergänzung für PCSC
_PCSCparam="-Dsun.security.smartcardio.library="
_PCSClib64="/usr/lib64/libpcsclite.so.1"
_PCSClib32="/usr/lib/libpcsclite.so.1"
if [ -f $_PCSClib64 ]; then
_PCSC64=$_PCSCparam$_PCSClib64
fi
if [ -f $_PCSClib32 ]; then
_PCSC32=$_PCSCparam$_PCSClib32
fi
Ich sollte mir wohl doch mal einen github Account anlegen :/
Olaf am :
Wenn bei jemandem der Parameter noetig ist, kann er ihn auch selbst gemaess Doku setzen.
Kilian am :
Ich habe versucht meinen im Laptop eingebauten Kartenleser zu verwenden. Leider Schlägt der Konfig test mit „Unknown error 0x1“ Fehl. Mit Starmony funktioniert dieser Kartenleser als PC/SC.
Hat jemand ne idee? Würde gerne auf Jameica/Hibiscus umstellen.
Schon mal Vielen Dank
Jameica:
Version: 2.7.0-nightly
SWT-Version: 4332 / win32
Java-Version: 1.7.0_09 / Windows 7 amd64
Build: 540 [Datum 20140106]
Hibiscus:
2.7.0-nightly
Datenbank-Version: 49
Build: 364
Kartenleser: Broadcom Corp Contacted SmartCard
Bank: Frankfurter Sparkasse (1822direkt)
OS: Win 7 64Bit
[06.01.2014 09:53:46] Teste Sicherheits-Medium...
[06.01.2014 09:53:46] creating progress monitor for GUI
[06.01.2014 09:53:46] activating progress monitor
[06.01.2014 09:53:46] open ddv passport
[06.01.2014 09:53:46] pcsc name:
[06.01.2014 09:53:46] soft pin: false
[06.01.2014 09:53:46] entry index: 1
[06.01.2014 09:53:46] passport type: DDVPCSC
[06.01.2014 09:53:46] found card terminals:
[06.01.2014 09:53:46] Broadcom Corp Contacted SmartCard 0
[06.01.2014 09:53:46] Mobile Broadband SIM Card Reader 0
[06.01.2014 09:53:46] card type: T=1
[06.01.2014 09:53:46] using: org.kapott.hbci.smartcardio.DDVCardService1
[06.01.2014 09:53:46] querying features
[06.01.2014 09:53:46] Fehler beim Testen des Sicherheits-Mediums: Unknown error 0x1
[06.01.2014 09:53:46] Aufgetretene Fehlermeldungen:
[06.01.2014 09:53:46] -----------------------------
[06.01.2014 09:53:46] error while opening chipcard; nested exception is:
org.kapott.hbci.exceptions.HBCI_Exception
[06.01.2014 09:53:46] transmitControlCommand() failed
[06.01.2014 09:53:46] Unknown error 0x1
[06.01.2014 09:53:46] -----------------------------
Olaf am :
Die Blog-Kommentare sind eigentlich nicht als Support-Plattform gedacht.