Hello,
The latest opensc (svn) secure pin verify does not work at least with my
fineid card and the Chipdrive/SPR532 reader.
My setup is pcsclite 1.3.1 and libccid 1.0.1 driver in Linux (I installed just
the debian packages). So I use the pcsc reader (I have not installed openct).
However, there is some helpful code for testing the secure pin with the ccid
and that works fine with my pindpad - so my card and reader should be sane.
I made a dump of the pin verify block + VERIFY APDU in each case and the
opensc seems to fail because of an invalid apdu.
I checked out the opensc svn sources and made a small fix to the
src/libopensc/reader-pcsc.c for myself:
+++ my/src/libopensc/reader-pcsc.c 2006-04-26 19:40:26.000000000 +0300
@@ -911,6 +911,9 @@
/* Copy data if not Case 1 */
if (data->pin1.length_offset != 4) {
+ /* FIX:[2006-04-26/ms] Lc was not set -> invalid apdu! */
+ pin_verify->abData[offset++] = apdu->datalen;
+ /* FIX: end */
memcpy(&pin_verify->abData[offset], apdu->data,apdu->datalen);
offset += apdu->datalen;
}
With this change the pinpad verification works (for both pin1 and pin2).
I have tested this with the src/tests/pintest and some other tools, also in
the firefox browser.
In firefox, however, the pkcs#11 module or something
keeps asking the pin2 code several times although the authentication key needs
only pin1. I try to figure that out later.
_______________________________________________
opensc-devel mailing list
[email protected]
http://www.opensc-project.org/mailman/listinfo/opensc-devel