Pinpad Readers

OpenSC supports two types of pinpad readers: PC/SC and CT-API.

PC/SC functionality is based on PC/SC v2 part 10 v2.02.05 and is supported by drivers on Windows (check your hardware manufacturer for latest drivers), Linux and Mac OS X Leopard with the open source CCID driver (CCID spec). Make sure that you have the latest released versions (or SVN snapshots) of all relevant software: operating system, pcsc-lite, reader driver, reader firmware.

CT-API drivers are most used and available on Windows.

Pinpads tend to be buggy and not all combinations of cards and readers and PIN formats or pinpad reader features (such as displays) have been tested so far, so make sure you report issues to the MailingLists (opensc-devel)

Known and tested pinpad readers with CT-API drivers on Windows

Please feel free to add your hardware and experiences here.

Class 2 readers have a pinpad for secure pin entry. Sometimes they are plugged between computer and keyboard so they use the keyboard for pin entry but capture the keystrokes before they reach the computer.

Class 3 readers have pinpad and a display.

Reader OS Type CT-API library Comments
SCM STR 391 "CashMouse?" Win32 Class 3 USB CTRSRW32.dll Works fine with Win32, no Unix support planned
Cherry G83-6700 Smartboard Win32 Class 2 PS/2 CTMGR.DLL A keyboard integrated reader which uses the keyboard for pin entry. Buggy CT-API driver, I got it working but not without patching OpenCT. No known Unix support
Reiner SCT cyberJack pinpad Win32 Class 2 USB CTRSCT32.DLL According to the manufacturer's website it should also run on Linux, but I haven't managed it.
Reiner SCT cyberJack keyboard Win32 Class 2 PS/2 CTRSCT32.DLL A cheap class 2 solution. It uses the keyboard for pin entry. No known Unix support.
SCM SPR 332, 532 "Chipdrive Pinpad" Win32 & Linux Class 2 USB CTPCSC32.dll A widely used CCID compliant reader. I also got it working on Linux following Martin's CardReaders?/SPR532 suggestions
Xiring XiPass Win32 Class 3 PS/2 PC/SC only Works well with Win32, pinpad entry works with EstEID CSP, no official Unix support, still there is an openct driver for it.
Reiner SCT cyberjack pinpad Mac OS XClass 2 USBwith pcscdIf you start the pcscd per hand it works well with the Drivers provided by Reiner SCT. I haven't managed to entry the pin with the Reader's keyboard
Reiner SCT cyberJack pinpad LinuxClass 2 USB Reiner SCT CT-API driverClass 2 Smartcard reader with official LGPL drivers (packages for most linux distributions). Pinpad fully supported (tested on SuSE 10.2). Good Linux support!

Kobil and OmniKey also offer pinpad readers, if someone could test one of those with OpenSC feedback would be appreceated.

Testing Pinpad

In opensc source you will find src/tools/pintest tool. It allows you to test if your card+reader combination support pinpad. FIXME: add more details.