Title : ccid Authors : Frank Morgner Version : 1.0.0 27 Jul 2009 License : See file COPYING Tested Platforms : Linux 2.6 (Debian, Ubuntu, Om 2008) Welcome to ccid. The purpose of ccid is to forward a PCSC smartcard reader as a standard USB CCID reader. If the host system is in USB device mode, ccid forwards the local reader via USB to an other device. If in USB host mode, ccid virtually plugges in a USB CCID reader to the host system. ccid has support for Password Authenticated Connection Establishment (PACE) using OpenPACE (see http://sourceforge.net/projects/openpace/). PACE is experimental and disabled by default. See file INSTALL how to compile it. ccid is implemented using GadgetFS. The source code is based on the GadgetFS example at http://www.linux-usb.org/gadget/. INSTALLATION ------------ See file INSTALL. HINTS ON GADGETFS ----------------- To create an USB Gadget in both USB host and USB client mode, you need to load the kernel module gadgetfs. A guide focused on Debian based systems to run and compile gadgetfs, you can find here: http://wiki.openmoko.org/wiki/Building_Gadget_USB_Module On OpenMoko it is likely, that you need to patch your kernel (see http://docs.openmoko.org/trac/ticket/2206). If you also want to switch multiple times between gadgetfs and g_ether an other patch is needed (see https://docs.openmoko.org/trac/ticket/2240). USAGE ----- When testing PACE with either PIN, CAN, MRZ or PUK, the program will be in interactive mode. Here you can enter APDUs which are to be converted according to the secure messaging parameter and to be sent to the card. Herefor insert the APDU in hex with a colon to separate the bytes or without it. So to read the current selected file both of these forms would be valid: 00:b0:02:00:00 00B0020000 QUESTIONS --------- For questions, please email me at: Frank Morgner