- using sc_transmit_apdu instead of my_transmit_apdu. fixing the opensc error is the better solution than implementing it twice (see http://www.opensc-project.org/opensc/ticket/209) git-svn-id: https://vsmartcard.svn.sourceforge.net/svnroot/vsmartcard@75 96b47cad-a561-4643-ad3b-153ac7d7599c
68 lines
2.3 KiB
Plaintext
68 lines
2.3 KiB
Plaintext
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. Some fragments of the source code is based
|
|
on the GadgetFS example at http://www.linux-usb.org/gadget/ and on the source
|
|
code of the OpenSC tools.
|
|
|
|
|
|
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).
|
|
|
|
If you only use PACE for testing your card, you don't need gadgetfs.
|
|
|
|
|
|
HINTS ON OPENSC
|
|
-----------------
|
|
|
|
If ccid runs into a checking error, because the Le field of the APDU is 0 (as
|
|
set for the General Authenticate APDU during PACE), you need to patch libopensc
|
|
(see http://www.opensc-project.org/opensc/ticket/209)
|
|
|
|
|
|
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 <morgner@informatik.hu-berlin.de>
|