Disclosure: As an Amazon Associate, CardWise earns from qualifying purchases at no additional cost to you. This does not affect our recommendations.

ATR Parser Comparison — Which Tool Decodes Your Smart Card?

Every smart card, from your SIM to your credit card's chip, announces its identity with an ATR (Answer To Reset) — a byte string sent when the card is reset or powered on. Parsing the ATR is the first step in any smart card application: it tells you the protocol (T=0 or T=1), supported clock frequencies, historical bytes, and status information. Several online tools decode ATR strings, but they differ in depth, accuracy, and usability.

What an ATR Contains

An ATR is a sequence of bytes structured per ISO 7816-3:

3B 7F 96 00 00 80 31 E0 73 66 21 13 57 4A 23 64 00 00 00 80
 |  |___________|  |  |___________|  |_______________|  |
 TS         T0     T1-Ti          Historical bytes     TCK
 |          |      Interface bytes
 Initial    Format
 Character  byte
ByteNameFunction
TSInitial CharacterDirect/inverse convention (3B or 3F)
T0Format CharacterIndicates which interface bytes (TA1, TB1, TC1, TD1) follow
TA1-TD1Interface BytesClock frequency, protocol type, guard time, waiting time
T1-TKHistorical BytesCard-specific info (manufacturer, OS, card type)
TCKCheck CharacterXOR checksum (only for T=1 protocol)

ATR Parser Comparison

FeatureCardWise ATR Decodersmartcard-atr GitHubPC/SC Workbench
PlatformWeb (browser-based, no install)GitHub (Python script)Desktop (Windows)
Ease of UsePaste ATR → instant decodeCommand-line, requires PythonGUI, requires PC/SC reader
Real-time Card ReadYes (WebUSB + reader)No (manual input)Yes (requires physical reader)
Interface Byte ParsingFull (TA1-TD4)FullFull
Historical Byte InterpretationVendor-aware (NXP, Gemalto, Infineon)Raw + common patternsRaw + card-specific DB
Protocol DetectionT=0, T=1, T=15T=0, T=1, T=15T=0, T=1, T=15
PrivacyClient-side parsing (no data uploaded)Local (CLI)Local (desktop)
Card DatabaseBuilt-in known-ATR lookupCommunity-maintained listBundled with PC/SC

How to Use the CardWise ATR Decoder

The CardWise ATR Decoder runs entirely in your browser — no data is sent to a server. Here is how to use it:

  1. Get the ATR from your card: Use an NFC reader (like the ACR122U) and a PC/SC tool to send a warm reset. The card responds with the ATR bytes.
  2. Paste the ATR: Enter the hex string (with or without spaces) into the input field on the ATR Decoder page.
  3. Review the decode: The tool shows each byte, its meaning per ISO 7816-3, the detected protocol, and any vendor-specific historical byte patterns it recognizes.
Example ATR decode: 3B 7F 96 00 00 80 31 E0 73 66 21 13 57 4A 23 64 00 00 00 80 decodes as:
• TS = 3B (direct convention)
• T0 = 7F (historical bytes = 15 bytes, TA1/TB1/TC1/TD1 present)
• TD1 = 80 (T=0 protocol for the first interface)
• Historical bytes = 31 E0 73 66 21 13 57 4A 23 64 00 00 00 (NXP JCOP card)
• TCK = 80 (checksum valid for T=1; absent for T=0)

Common ATR Patterns

Card TypeTypical ATR PrefixWhat It Means
MIFARE DESFire EV33B 8F 80 01 80 4F 0C...ISO 14443-4, DESFire application
Java Card (JCOP)3B 7F 96 00 00 80 31 E0...T=0, JCOP OS, GlobalPlatform capable
SIM/USIM3B 9F 95 80 1F C3 80...T=0, 3G/4G SIM with USIM app
YubiKey 5 (PIV)3B F5 18 00 00 81 31 FE 45...T=1, PIV application active
French eID3B 7E 94 00 00 80 31...T=0, French national eID
ACR122U Smart Card Reader ACR122U Smart Card Reader — Read ATR from any ISO 7816 or ISO 14443 card. PC/SC compatible, works with the CardWise ATR Decoder for instant smart card identification. — Check Price on Amazon

Why ATR Parsing Matters

ATR parsing is not just academic. It has practical applications:

Related Comparisons

Summary

ATR parsing is the gateway to smart card development. The CardWise ATR Decoder offers browser-based, client-side parsing with vendor-aware historical byte interpretation and no data upload. For command-line workflows, the smartcard-atr Python script is a solid alternative. For integrated card testing with a physical reader, PC/SC Workbench provides the most complete environment but requires installation.

Ready to decode an ATR? Try our ATR Decoder now.