Enter an ATR (Answer To Reset) and I will parse it for you.
Parsing ATR:
TS = 0x3B | Direct Convention |
---|---|
T0 = 0xD3 | Y(1): b1101, K: 3 (historical bytes) |
TA(1) = 0x96 | Fi=512, Di=32, 16 cycles/ETU (250000 bits/s at 4.00 MHz, 312500 bits/s for fMax=5 MHz) |
TC(1) = 0xFF | Extra guard time: 255 (special value) |
TD(1) = 0x81 | Y(i+1) = b1000, Protocol T=1 |
---- | |
TD(2) = 0xB1 | Y(i+1) = b1011, Protocol T=1 |
---- | |
TA(3) = 0xFE | IFSC: 254 |
TB(3) = 0x45 | Block Waiting Integer: 4 - Character Waiting Integer: 5 |
TD(3) = 0x1F | Y(i+1) = b0001, Protocol T=15 |
---- | |
TA(4) = 0x07 | Clock stop: not supported - Class accepted by the card: (3G) A 5V B 3V C 1.8V |
---- | |
Historical bytes | 80 81 05 |
Category indicator byte: 0x80 | (compact TLV data object) Tag: 8, Len: 1 (status indicator) LCS (life card cycle): 5 |
TCK = 0x2D | correct checksum |
Possibly identified card:
3B D3 96 FF 81 B1 FE 45 1F 07 80 81 05 2D
German public health insurance card (Elektronische Gesundheitskarte eGK), 2nd generation (G2) (HealthCare)
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.