Enum Class PcscCardCommunicationProtocol
- All Implemented Interfaces:
Serializable
,Comparable<PcscCardCommunicationProtocol>
,Constable
Each enum value associates a protocol or technology with a specific ATR pattern. These patterns follow the PC/SC standard Part 3 for contactless card identification.
The ATR patterns can identify both physical cards and virtual cards emulated by NFC devices.
See PC/SC Workgroup for more details.
- Since:
- 2.5.0
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionCalypso cards using Innovatron B Prime protocol.Any ISO 14443-4 compliant card or device (both Type A and Type B).ISO 7816-3 Card (contact communication protocol)NXP MIFARE Ultralight technologies.STMicroelectronics ST25/SRT512 memory tags. -
Method Summary
Modifier and TypeMethodDescriptionReturns the enum constant of this class with the specified name.static PcscCardCommunicationProtocol[]
values()
Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
ISO_14443_4
Any ISO 14443-4 compliant card or device (both Type A and Type B).According to PC/SC specifications, ISO 14443-4 contactless cards have a specific ATR structure:
- TS (Initial character): 0x3B - Direct convention
- T0 (Format character): 0x8X - Where X varies based on the number of historical bytes
- TD1: 0x80 - Indicates protocol T=0 at first level and presence of TD2
- TD2: 0x01 - Indicates final protocol T=1
This structure allows for recognition of both Type A and Type B ISO 14443-4 cards, regardless of the number of historical bytes they contain.
Excludes Innovatron B Prime cards which have their own specific category.
Default rule =
3B8.8001(?!.*5A0A).*
- Since:
- 2.5.0
-
INNOVATRON_B_PRIME
Calypso cards using Innovatron B Prime protocol.According to PC/SC Part 3, B Prime cards use a specific ATR format:
- Starting with 3B8 followed by any hex digit - Indicating direct convention with a variable number of historical bytes
- Followed by 8001 - Indicating TD1=0x80 and TD2=0x01 (protocol T=1)
- Followed immediately by the specific B Prime signature 5A0A in the first historical bytes
Default rule =
3B8.8001(80)?5A0A.*
- Since:
- 2.5.0
-
MIFARE_ULTRALIGHT
NXP MIFARE Ultralight technologies.According to PC/SC Part 3 Supplemental Document:
- Initial bytes: 3B8F8001804F0CA0000003
- Card protocol: 0603 (ISO 14443 A part 3)
- Card type: 0003 (for Mifare UL)
Default rule =
3B8F8001804F0CA0000003060300030.*
- Since:
- 2.5.0
-
ST25_SRT512
STMicroelectronics ST25/SRT512 memory tags.According to PC/SC Part 3 Supplemental Document:
- Initial bytes: 3B8F8001804F0CA0000003
- Card protocol: 0605, 0606, 0607 (ISO 14443 B part 1/2/3)
- Card type: 0007 (ST25 tag)
Default rule =
3B8F8001804F0CA0000003060(5|6|7)0007.*
- Since:
- 2.5.0
-
ISO_7816_3
ISO 7816-3 Card (contact communication protocol)Default rule =
3.*
- Since:
- 2.5.0
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum class has no constant with the specified nameNullPointerException
- if the argument is null
-