/[pcsclite]/tags/ccid/ccid-1.4.5/README
ViewVC logotype

Contents of /tags/ccid/ccid-1.4.5/README

Parent Directory Parent Directory | Revision Log Revision Log


Revision 862 - (show annotations) (download)
Wed May 12 12:09:09 2004 UTC (9 years ago) by rousseau
Original Path: trunk/Drivers/ccid/README
File size: 8603 byte(s)
move debug configuration from INSTALL to README since it is dynamic now
1 USB CCID IFD Handler
2 ====================
3
4 This package provides the source code for a generic USB CCID
5 (Chip/Smart Card Interface Devices) driver. See [1] for the USB CCID
6 specifications from the USB working group.
7
8
9 Authors:
10 ========
11
12 - Ludovic Rousseau <ludovic.rousseau@free.fr>
13 - Carlos Prados for the TPDU T=1 code (taken from his towitoto driver)
14
15
16 Supported CCID readers:
17 =======================
18
19 (in alphabetical order)
20 - C3PO LTC31 [8]
21 - Gemplus GemPC 433 SL [2]
22 - Gemplus GemPC Key [3]
23 - Gemplus GemPC Twin [4]
24 - OmniKey CardMan 3121 [5]
25 - SCM Micro SCR 331 [6]
26 - SCM Micro SCR 335 [7]
27
28
29 Should work but untested by me:
30 ===============================
31
32 I would like to get these readers to perform test and validation and
33 move them in the supported list above. If you are one of the
34 manufacturers, please, contact me.
35
36 - ActivCard USB reader 2.0 [10]
37 - C3PO LTC32 [13]
38 - SCM Micro SCR 331-DI [11]
39 - SCM Micro SCR 333 [15]
40 - SCM Micro SPR 532 [9]
41 - Silitek SK-3105 keyboard [12] or C3PO TLTC2USB [14]
42
43
44 Unsupported CCID readers:
45 =========================
46
47 None known.
48
49
50 Supported operating systems:
51 ============================
52
53 - GNU/Linux (libusb 0.1.7)
54 - MacOS X/Darwin (libusb 0.1.8beta, CVS snapshot. See "Known problems")
55 to libusb)
56
57
58 Debug informations:
59 ===================
60
61 The driver uses the debug function provided by pcscd. So if pcscd sends
62 its debug to stdout (pcscd --foreground) then the CCID will also send
63 its debug to stdout. If pcscd sends its debug to syslog (by default)
64 then the CCID will also send its debug to syslog.
65
66 You can change the debug level using the Info.plist configuraion file.
67 The Info.plist is installed, by default, in
68 /usr/local/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist
69
70 The debug level is set in the ifdLogLevel field. It is a binary OR
71 combinaison of 4 different levels.
72 - 1: critical: important error messages
73 - 2: info: informative messages like what reader was detected
74 - 4: periodic: periodic info when pcscd test if a card is present (every
75 1/10 of a second)
76 - 8: comm: a dump of all the bytes exchanged between the host and the
77 reader
78
79 By default the debug level is set to 3 (1 + 2) and correspond to the
80 critical and info levels.
81
82 You have to restart the driver so it read the configuration file again
83 and use the new debug level value. To restart the driver you just need
84 to unplug all your CCID readers so the the driver is unloaded and then
85 replug your readers. You can also restart pcscd.
86
87
88 Known problems:
89 ===============
90
91 *BSD
92 libusb
93 """"""
94 The libusb does not yet support USB interrupt endpoints. You will
95 notice that the driver will stop working as soon as you insert a
96 card in the reader.
97 A new version of libusb should fix this bug.
98
99
100 Licence:
101 ========
102
103 This program is free software; you can redistribute it and/or modify
104 it under the terms of the GNU General Public License as published by the
105 Free Software Foundation; either version 2 of the License, or (at your
106 option) any later version.
107
108 This program is distributed in the hope that it will be useful, but
109 WITHOUT ANY WARRANTY; without even the implied warranty of
110 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
111 General Public License for more details.
112
113 You should have received a copy of the GNU General Public License
114 along with this program; if not, write to the Free Software Foundation,
115 Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
116
117
118 History:
119 ========
120
121 0.4.1 - 14 February 2004, Ludovic Rousseau
122 - distribute missing files readers/supported_readers.txt and
123 src/create_Info_plist.pl
124 'make install' failed because of this.
125
126 0.4.0 - 13 February 2004, Ludovic Rousseau
127 - support of T=1 with TPDU readers. A lot of the T=1 code comes from
128 Carlos Prados towitoko driver.
129 My code is GNU GPL, his code is GNU LGPL so the global driver is
130 GNU GPL
131 - PPS negotiation if the reader does not do it automatically
132 - add support for the Silitek SK-3105 keyboard. It's a USB device
133 with multiple interfaces
134 - use the create_Info_plist.pl script to generate the installed
135 Info.plist from an Info.plist template and a list of supported
136 readers. The Info.plist was too "complex" to maintain by hand
137 since it now contains 11 entries
138 - add support of IFDHCreateChannelByName to avoid wrong reader
139 enumeration. This is not complete if you have multiple _identical_
140 readers. You need to use a > 1.2.0 pcsc-lite version (not yet
141 released at that time)
142 - build but do not install the serial ccidtwin driver by default
143 since it is useless on computers without a serial port or without
144 this reader for example.
145 - read and write timeouts are not symmetric. write timout can be
146 shorter since the reader and card is not supposed to do anything
147 before receiving (write) a command
148 - do not try to find usb.h and other libusb files if
149 --disable-libusb is used. Needed if you only want to build the
150 serial driver. Thanks to Niki Waibel for the patch
151 - add a --enable-ccidtwindir argument to ./configure to specify the
152 serial GemPC Twin installation directory
153 - debug and code improvements and simplifications
154
155 0.3.2 - 4 November 2003, Ludovic Rousseau
156 - src/commands.c: correct a stupid bug that occurs with an APDU with
157 2 bytes response.
158 - Info.plist: add SPR 532 in list of supported readers
159 - parse.c: do not exit if the InterfaceClass is 0xFF (proprietary).
160 It is the case with old readers manufactured before the final
161 release of the CCID specs.
162 - move LTC31 reader from unsupported to supported reader list. It
163 was my f ault since in used odd INS byte in my test applet and odd
164 INS bytes are forbidden by ISO 7816-4 ch. 5.4.2 Instruction byte.
165 Thanks to Josep Moné s Teixidor for pointing the problem.
166 - src/commands.c: comment out the automatic GET RESPONSE part. I
167 don't think it should be in the driver. Maybe in pcscd instead?
168
169 0.3.1 - 23 September 2003, Ludovic Rouseau
170 - add --enable-multi-thread (enabled by default) for thread safe
171 support an APDU multiplexing. You will need pcsc-lite-1.2.0-rc3 or
172 above to use this feature.
173 - add --enable-libusb=PATH option is your libusb is not installed in
174 /usr or /usr/local
175 - honor DESTDIR in install rules (closes [ #300110 ]). Thanks to
176 Ville Skyttä for the patch.
177 - src/ccid.c: do not switch the GemPC Key and GemPC Twin in APDU
178 mode since it also swicth in EMV mode and may not work with non
179 EMV cards
180 - src/ccid_serial.c: complete reimplementation of the Twin serial
181 protocol using a finite state automata (code much simpler)
182
183 0.3.0 - 10 September 2003, Ludovic Rousseau
184 - support of GemPC Twin connected to a serial port. Thanks to Niki
185 W. Waibel for a working prototype.
186 - support of auto voltage at power up if the reader support it
187 instead of forcing a 5V in all cases.
188 - support of APDU mode instead of just TPDU if the reader support
189 it. Thanks to Jean-Luc Giraud for the idea and inspiration I got
190 from his "concurrent" driver.
191 - support of "time request" from the card.
192 - parse: new indentation for more readability of supported features.
193 - switch the GemPC Key and GemPC Twin in APDU mode since they
194 support it but do not announce it in the dwFeatures.
195 - new build process using autoconf/automake.
196
197 0.2.0 - 26 August 2003, Ludovic Rousseau
198 - Works under MacOS X
199 - Info.plist: use an <array></array> for the alias enumeration
200 - Makefile rework for *BSD and MacOS X
201
202 0.1.0 - 13 August 2003, Ludovic Rousseau
203 - First public release
204
205
206 Bibliography:
207 =============
208
209 [1] http://www.usb.org/developers/devclass_docs/ccid_classspec_1_00a.pdf
210 [2] http://www.gemplus.com/products/gempc433/
211 [3] http://www.gemplus.com/products/gempckey/
212 [4] http://www.gemplus.com/products/gempctwin/
213 [5] http://www.omnikey.com/en/produkt_details.php3?produkt=1&variante=47
214 [6] http://www.scmmicro.com/security/SCR331.html
215 [7] http://www.scmmicro.com/security/SCR335.html
216 [8] http://www.c3po.es/ltc31.html
217 [9] http://www.scmmicro.com/security/SPR532.html
218 [10] http://www.activcard.com/products/usb_reader.html
219 [11] http://www.scmmicro.com/security/SCR331-DI.html
220 [12] http://www.silitek.com/prod/getProduct.do?xml_id=4_2&menu_id=4_2_8&cid=1_8_5
221 [13] http://www.c3po.es/ltc32.html
222 [14] http://www.c3po.es/tltc2usb.html
223 [15] http://www.scmmicro.com/security/SCR333.html
224
225 $Id$
226
227 vim:ts=20

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.5