PinPad AKA SPR532 and OpenSC mini-howto

To get feedback as early as possible, here's a small tutorial how to get going with SPR532 and pinpad. There are other PinpadReaders and other interfaces but the given interface makes use of PC/SC version 2.0 spec Part 10.

Things you need to try it out:

  • get yourself a SPR532 reader from www.scmmicro.com
  • upgrade the firmware to the latest (at least 5.05) version using stuff from here: http://www.scmmicro.com/support/pcs_downloads.html?PID=70&s1=6&s2
    • Note that this upgrade will make your reader's pinpad unusable under Windows if your application only supports the older and broken firmware!
  • install pcsc-lite (version 1.3.3 or later)
  • install ccid driver (version 1.2.1 or later)
  • install the latest opensc trunk
    • After installation, make sure you have opensc.conf in the location told by configure and make sure that enable_pinpad is set to 'true'

Notes:

What you can do:

  1. test and provide feedback
  2. help to argue how things should look like in different places and how we shall solve some issues - see DesignDiscussion

Known issues:

  1. It is known to work with SPR532 under Linux as well as Windows XP (latest firmware and PCSC drivers, at least for pin verification)
  2. Support for pinpad operations in general might lag behind your needs. Patches most welcome :)
  3. It should work with many newer pinpad readers that provide the right driver on Windows, but currently only SPR 532 has been tested. If you have a nice reader on windows, try out the latest SCB to see it it works!

Open questions:

  1. SCM seems to also offer a CCID driver for LINUX: http://www.scmmicro.com/support/pcs_product_drivers.html Has anyone tested it? Does it work? martin: the usual 'binary only' whining applies. Also, there should be no difference from the pcsc v2 part 10 point of view. (I tried SCMs CCID-"driver" on april 3rd 2007 - it's just a link to Ludovics site!!)