README 2.57 KB
Newer Older
Ludovic Rousseau's avatar
Ludovic Rousseau committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
HandlerTest
===========

This program send commands to a card through the reader.

The card must implement the test application. The application is
provided as a JavaCard applet.

The tester dynamically load the driver. pcscd must be stopped (unless
you know what you do) to avoid interferences with the drivers/readers
already used by pcscd.

The tester will only find and use the first USB reader found by the
reader. If you have multiple readers managed by the same driver you must
test them one after the other.


Authors:
========

- Jean-Luc Giraud for the JavaCard applet
- Ludovic Rousseau for the host part


Licence:
========

Ludovic Rousseau's avatar
Ludovic Rousseau committed
28 29 30 31 32 33 34 35
Host part
  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation; either version 2 of the License, or (at
  your option) any later version.

JavaCard part
  BSD-like licence. See JavaCard/COPYING
Ludovic Rousseau's avatar
Ludovic Rousseau committed
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67


Tested commands:
================

Case 1, APDU:
Cmd  = CLA INS P1 P2
L(Cmd) = 4

Case 1, TPDU:
Cmd  = CLA INS P1 P2 P3 (=0)
L(Cmd) = 5

Case 2:
Cmd  = CLA INS P1 P2 Le
L(Cmd) = 5
-> No difference between TPDU and APDU (T=0)

Case 3:
Cmd  = CLA INS P1 P2 Lc Data
L(Cmd) = 5 + Lc
-> No difference between TPDU and APDU (T=0)   

Case 4, APDU:
Cmd  = CLA INS P1 P2 Lc Data Le
L(Cmd) = 5 + Lc +1

Case 4, TPDU:
Cmd  = CLA INS P1 P2 Lc Data
L(Cmd) = 5 + Lc
-> TPDU, treat as Case 3 and return 61 xx, and perform GET RESPONSE

Ludovic Rousseau's avatar
Ludovic Rousseau committed
68 69 70 71
Time Request
This is not a command per se but the card will send time requests (0x60)
to the reader.

Ludovic Rousseau's avatar
Ludovic Rousseau committed
72 73 74 75

History
=======

Ludovic Rousseau's avatar
Ludovic Rousseau committed
76 77 78 79 80
0.3.2 - 26 March 2014, Ludovic Rousseau
    - add support of Mac OS X
    - new test scripts to test extended APDU and contactless cards
    - minor bugs fixed

Ludovic Rousseau's avatar
Ludovic Rousseau committed
81 82 83
0.3.1 - 30 May 2006, Ludovic Rousseau
    - add -e to test extended APDU

Ludovic Rousseau's avatar
Ludovic Rousseau committed
84 85 86 87 88 89 90 91 92 93 94 95
0.3.0 - 2 April 2006, Ludovic Rousseau
    - Java Card applet:
      - the INS byte shall not be odd. It is forbidden by ISO 7816-4 ch.
        5.4.2 Instruction byte. Instead of using INS from 21 to 25 we
        now use from 30 to 3E with only even values.
      - add VERIFY PIN command
      - add VERIFY PIN dump command
      - manage an (unsecure) retryCounter
    - support of TPDU
    - support of T=1
    - support of IFDHCreateChannelByName (ifd handler API v3.0)

Ludovic Rousseau's avatar
Ludovic Rousseau committed
96 97 98 99 100
0.2.0 - 4 September 2003, Ludovic Rousseau
    - add support of time request (reported by CCID readers)
    - include the JavaCard applet source code written by Jean-Luc Giraud
    - add scripts to send commands (to be used with scriptor(1))

Ludovic Rousseau's avatar
Ludovic Rousseau committed
101 102 103 104 105
0.1.0 - 11 August 2003, Ludovic Rousseau
    - first public release

$Id$
 vim:ts=20