I’m a beta tester a crypto stick from GPF.

The crypto stick is an USB card to secure gpg keys on a smartcard.

cryptostick

The card was tested under some Linux and Windows systems successfully.

Running under MacOS Snow Leopard (Jan 2010) brought some issue with the card driver.

Current progress can be followed in the gnupg-users mailing-list.


Running pcscd in debug mode

Following the debug hint from driver developer’s page


LIBCCID_ifdLogLevel=0x0007
export LIBCCID_ifdLogLevel
ps -ef | grep pcsc
pcscd --foreground --debug --apdu

Inserting the cryptostick to the USB port, i get two different debug outputs:

Variante 1: debug output after inserting the card (card red light is blinking)


bash-3.2# pcscd --foreground --debug --apdu
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:240:DebugLogSetLevel() debug level=debug
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:269:DebugLogSetCategory() Debug options: APDU
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:585:main() pcsc-lite 1.4.0 daemon ready.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:1545:ReaderCheckArchitecture() Send respawn signal to pcscd (pid=275)
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:678:signal_respawn() Got signal to respawn in 32 bit mode
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:294:SVCServiceRunLoop() Preparing to exit...
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:1048:RFCleanupReaders() entering cleaning function
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:240:DebugLogSetLevel() debug level=debug
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:269:DebugLogSetCategory() Debug options: APDU
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:585:main() pcsc-lite 1.4.0 daemon ready.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:781:RFInitializeReader() Attempting startup of Gemplus GemPC Twin 00 00 using /usr/libexec/SmartCardServices/drivers/ifd-ccid.bundle
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:507:RFBindFunctions() Binding driver functions
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:643:RFBindFunctions() Loading IFD Handler 3.0
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:1323:init_driver() Driver version: 1.3.8
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:1346:init_driver() LogLevel from LIBCCID_ifdLogLevel: 0x0007
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:1356:init_driver() DriverOptions: 0x0000
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:81:IFDHCreateChannelByName() lun: 0, device: Gemplus GemPC Twin
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:158:OpenUSBByName() Reader index: 0, Device: Gemplus GemPC Twin
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:236:OpenUSBByName() Manufacturer: Ludovic Rousseau (ludovic.rousseau@free.fr)
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:246:OpenUSBByName() ProductString: Generic CCID driver
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:252:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version.
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:311:OpenUSBByName() Checking device: 003/004-08e6-3437-00-00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:361:OpenUSBByName() Trying to open USB bus/device: 003/004-08e6-3437-00-00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:408:OpenUSBByName() Found Vendor/Product: 08E6/3437 (Gemplus GemPC Twin)
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:410:OpenUSBByName() Using USB bus/device: 003/004-08e6-3437-00-00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:836:ControlUSB() request: 0x03
receive: 01 2A 00 00 01 38 00 00 09 3D 00 00 34 43 00 00 61 51 00 00 01 54 00 00 8E 5B 00 00 CE 64 00 00 02 70 00 00 12 7A 00 00 02 7E 00 00 69 86 00 00 97 98 00 00 C3 A2 00 00 03 A8 00 00 1B B7 00 00 73 CB 00 00 03 D2 00 00 04 E0 00 00 24 F4 00 00 04 FC 00 00 D1 0C 01 00 05 18 01 00 2D 31 01 00 85 45 01 00 06 50 01 00 36 6E 01 00 E7 96 01 00 07 A4 01 00 07 C0 01 00 48 E8 01 00 08 F8 01 00 09 30 02 00 5A 62 02 00 0B 8B 02 00 0B A0 02 00 0E 48 03 00 0F 80 03 00 90 D0 03 00 16 40 05 00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 10753 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 14337 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 15625 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 17204 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 20833 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 21505 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 23438 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 25806 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 28674 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 31250 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 32258 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 34409 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 39063 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 41667 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 43011 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 46875 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 52083 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 53763 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 57348 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 62500 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 64516 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 68817 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 71685 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 78125 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 83333 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 86022 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 93750 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 104167 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 107527 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 114695 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 125000 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 129032 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 143369 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 156250 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 166667 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 172043 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 215054 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 229391 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 250000 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:816:get_data_rates() declared: 344086 bps
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:307:IFDHGetCapabilities() lun: 0, tag: 0xFAE
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:353:IFDHGetCapabilities() Reader supports 1 slot(s)
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:924:IFDHPowerICC() lun: 0, action: PowerUp
-> 000000 62 00 00 00 00 00 04 01 00 00
<- 000000 80 00 00 00 00 00 04 41 03 00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/commands.c:203:CmdPowerOn error on byte 3
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:964:IFDHPowerICC() PowerUp failed
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/eventhandler.cpp:314:EHStatusHandlerThread() Error powering up card: -2146435050 0x80100016
^C/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:662:signal_trap() Preparing for suicide
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:294:SVCServiceRunLoop() Preparing to exit...
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:1048:RFCleanupReaders() entering cleaning function
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:1057:RFCleanupReaders() Stopping reader: Gemplus GemPC Twin 00 00
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/eventhandler.cpp:177:EHDestroyEventHandler() Stomping thread.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/eventhandler.cpp:194:EHDestroyEventHandler() Thread stomped.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:832:RFUnInitializeReader() Attempting shutdown of Gemplus GemPC Twin 00 00.
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:226:IFDHCloseChannel() lun: 0
-> 000000 63 00 00 00 00 00 1C 00 00 00
<- 000000 81 00 00 00 00 00 1C 01 00 00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:569:CloseUSB() Closing USB device: 003/004-08e6-3437-00-00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:584:CloseUSB() Last slot closed. Release resources
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:675:RFUnBindFunctions() Unbinding driver functions
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:687:RFUnloadReader() Unloading reader driver.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:690:RFUnloadReader() --- closing dynamic library
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:611:at_exit() cleaning /var/run

Variante 2: insert card another time (card red light is permanent on)


bash-3.2# pcscd --foreground --debug --apdu
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:240:DebugLogSetLevel() debug level=debug
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:269:DebugLogSetCategory() Debug options: APDU
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:585:main() pcsc-lite 1.4.0 daemon ready.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:1545:ReaderCheckArchitecture() Send respawn signal to pcscd (pid=389)
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:678:signal_respawn() Got signal to respawn in 32 bit mode
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:294:SVCServiceRunLoop() Preparing to exit...
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:1048:RFCleanupReaders() entering cleaning function
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:240:DebugLogSetLevel() debug level=debug
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/debuglog.c:269:DebugLogSetCategory() Debug options: APDU
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/pcscdaemon.c:585:main() pcsc-lite 1.4.0 daemon ready.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:781:RFInitializeReader() Attempting startup of Gemplus GemPC Twin 00 00 using /usr/libexec/SmartCardServices/drivers/ifd-ccid.bundle
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:507:RFBindFunctions() Binding driver functions
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:643:RFBindFunctions() Loading IFD Handler 3.0
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:1323:init_driver() Driver version: 1.3.8
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:1346:init_driver() LogLevel from LIBCCID_ifdLogLevel: 0x0007
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:1356:init_driver() DriverOptions: 0x0000
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:81:IFDHCreateChannelByName() lun: 0, device: Gemplus GemPC Twin
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:158:OpenUSBByName() Reader index: 0, Device: Gemplus GemPC Twin
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:236:OpenUSBByName() Manufacturer: Ludovic Rousseau (ludovic.rousseau@free.fr)
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:246:OpenUSBByName() ProductString: Generic CCID driver
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:252:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version.
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:311:OpenUSBByName() Checking device: 003/004-08e6-3437-00-00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:361:OpenUSBByName() Trying to open USB bus/device: 003/004-08e6-3437-00-00
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ccid_usb.c:402:OpenUSBByName() Can't claim interface 003/004-08e6-3437-00-00: Unknown error: 0
/SourceCache/SmartcardCCID/SmartcardCCID-35253/ccid/ccid/src/ifdhandler.c:99:IFDHCreateChannelByName() failed
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:820:RFInitializeReader() Open Port 6400000 Failed (Gemplus GemPC Twin)
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:675:RFUnBindFunctions() Unbinding driver functions
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:687:RFUnloadReader() Unloading reader driver.
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:690:RFUnloadReader() --- closing dynamic library
/SourceCache/SmartCardServices/SmartCardServices-36160/src/PCSC/readerfactory.c:261:RFAddReader() RFAddReader: Gemplus GemPC Twin init failed: -2146435067

Tags: ,



Reader's Comments

  1. Tim Stoop | October 21st, 2010 at 12:39 pm

    Hey there,

    Did you ever get it to work?

  2. steademy | December 14th, 2010 at 12:35 pm

    yes, Cryptostick works with MacOS Snow Leopard.

  3. steademy | December 14th, 2010 at 12:40 pm

    yes, cryptostick works under MacOS.

Leave a Comment