Enter an ATR (Answer To Reset) and I will parse it for you.
Parsing ATR:
TS = 0x3B | Direct Convention |
---|---|
T0 = 0xFC | Y(1): b1111, K: 12 (historical bytes) |
TA(1) = 0x18 | Fi=372, Di=12, 31 cycles/ETU (129032 bits/s at 4.00 MHz, 161290 bits/s for fMax=5 MHz) |
TB(1) = 0x00 | VPP is not electrically connected |
TC(1) = 0x00 | Extra guard time: 0 |
TD(1) = 0x81 | Y(i+1) = b1000, Protocol T=1 |
---- | |
TD(2) = 0x31 | Y(i+1) = b0011, Protocol T=1 |
---- | |
TA(3) = 0x80 | IFSC: 128 |
TB(3) = 0x45 | Block Waiting Integer: 4 - Character Waiting Integer: 5 |
---- | |
Historical bytes | 90 67 46 4A 01 00 20 05 00 00 00 00 |
Category indicator byte: 0x90 | (proprietary format) "gFJ.. ....." |
TCK = 0x4E | correct checksum |
Possibly identified card:
3B FC 18 00 00 81 31 80 45 90 67 46 4A 01 00 20 05 00 00 00 00 4E
Feitian A40 (JavaCard)
http://www.smartcardfocus.com/shop/ilp/id~711/javacos-a40-dual-interface-java-card-64k/p/index.shtml
The parsing code is part of pyscard and is available at parseATR.py.
The list of known ATR is also available online at smartcard_list.txt.
My blog contains a serie of artickes about ATR bytes.