NXP Contactless Smart Card, MIFARE Mini, 1K, 4K, Ultralight, Ultralight C, Plus, Plus, Plus, DESFire, JCOP, eMRTD Application note

NXP Contactless Smart Card, MIFARE Mini, 1K, 4K, Ultralight, Ultralight C, Plus, Plus, Plus, DESFire, JCOP, eMRTD Application note

Below you will find brief information for MIFARE Mini, MIFARE 1K, MIFARE 4K, MIFARE Ultralight, MIFARE Ultralight C, MIFARE Plus, MIFARE DESFire, JCOP, eMRTD. This document explores the selection process that is key to establishing communication between electronic devices and contactless smart cards.

advertisement

Assistant Bot

Need help? Our chatbot has already read the manual and is ready to assist you. Feel free to ask any questions about the device, but providing details will make the conversation more productive.

MIFARE, MIFARE Mini, MIFARE 1K, MIFARE 4K, MIFARE Ultralight, MIFARE Ultralight C, MIFARE Plus, MIFARE DESFire, JCOP, eMRTD  Application Note  | Manualzz
AN10834
MIFARE ISO/IEC 14443 PICC Selection
Rev. 3.0 — 26 June 2009
130830
Application note
PUBLIC
Document information
Info
Content
Keywords
Activate Card, MIFARE, Select Card
Abstract
This Application Note shows the elementary communication for selecting
a Contactless Smart Card according to the ISO/IEC 14443, and how to
use this communication to guarantee proper functionality in different
applications.
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
Revision history
Rev
Date
Description
3.0
20090626
Third version. Correction of wording.
2.0
20090518
Second version
(supersedes AN130810 MIFARE ISO/IEC 14443 PICC Selection, Rev. 1.0,
17 October 2006)
Contact information
For additional information, please visit: http://www.nxp.com
For sales office addresses, please send an email to: [email protected]
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
2 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
1. Introduction
A smart card has to be properly selected, before data can be exchanged between a
reader (system) and the card. This card selection process (card activation) is described
in the ISO14443-3 for contactless proximity systems. The dramatic increase in
contactless applications has made the correct selection of one single contactless card
out of a possible number of cards in the reader field become more and more important.
This was foreseen when the ISO standard was developed and therefore the standard
describes in detail how the applications need to process them.
1.1 How to use this document
The card selection process can be divided into 2 parts: at first the communication layer
describes how to select a single PICC (whatever type of card or application). This is
important because the ISO standard, which specifies the contactless smartcard
communication, only describes this communication layer, independent of the application.
More and more different types of cards and applications can be found in the field, which
all use the ISO/IEC 14443.
The second step, after a single card has been selected, is to select the correct
application, to handle multiple applications (or cards), or to properly ignore foreign
applications (or cards).
Section 2 of this document describes how the ISO/IEC 14443 process to select a single
card. The anti-collision procedure is mandatory for both type A and type B cards.
In addition to the card activation procedure the system itself has to ensure that the PCD
can select the correct application, either with more than one application on one single
card, or with different applications on different cards. In many systems it is recommended
to let the system select the correct application, but not the user, which guarantees a fast
and secure transaction. This is shown in section 3.
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
3 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
2. Card activation according to the ISO/IEC14443
The ISO/IEC 14443-3 describes how to select (“activate”) a single card. This card
activation procedure is generally independent of the number of cards in the field, and of
the number of applications:
•
This procedure guarantees that a single card is properly selected, independent
on the number of cards available in the field during the card activation.
•
This procedure guarantees that a single card is properly selected, independent
on the number of cards moved into the field during the whole card activation or
card transaction.
•
This procedure guarantees that a single card keeps being properly selected,
independent on the number of cards moved into the field during the whole card
activation or card transaction.
Note: For convenience reasons in many contactless systems the cards are continuously
moved into the field and then removed from the field. So in such systems it usually
cannot be guaranteed, that a transaction will be completed. This is not at all related to
the card activation procedure or the use of multiple cards in a single reader field.
Some additional measures have to be taken into account to guarantee the proper
function during the whole card transaction: Either a card slot has to be used similarly to
the contact card reader slots, or the application (either on the card or in the system) has
to offer a recovery procedure (tear protection or back-up management) for those cases,
where the transaction can be interrupted.
2.1 Polling for cards
The ISO/IEC 14443 specifies that cards following the ISO/IEC 14443A shall not interfere
cards following the ISO/IEC 14443B, and vice versa. In any case the card activation
procedure starts with a Request command (REQA or REQB), which is used only to
check whether there is at least one card in the reader field. The REQA or REQB has to
be send after the carrier is switched on, waiting 5ms at minimum before starting the
transmission. This procedure is shown in Fig 1.
Note: The minimum required time between a REQA and REQB or REQB and REQA is
5ms acc. to [8].
Note: For NFC devices there has to be another block between “Card Polling” and
“Switch on RF”, because NFC devices need to check whether there is already a field
available or not. If an external field is detected the reader is not allowed to switch on its
own RF field.
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
4 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
(1) “Activate Card”: Card Activation as described in section 2.2.
(2) After the transaction the PCD is required to perform a Halt or Deselect.
Fig 1. Card Polling
In some applications it might be required to reset the RF regularly, in some others the
carrier is switched on only for a short time anyway. In all cases every communication
starts with a REQA (or REQB). If an ATQA (or ATQB) is received, the “Activate Card”
procedure as described in section 2.2 selects the detected card. If no ATQA (or ATQB) is
received, the REQB (or REQA) is used.
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
5 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
If the system requires only one card with the relevant application to be allowed in the
field, the PCD has to select all relevant cards, and then deselect the ones with foreign
applications. The remaining cards with correct applications have to be checked: if more
than one of such cards are presented, the PCD has to refuse the transaction. This is not
part of the communication layer and is described in section 3.
2.2 Activate Card
The Card activation selects a single card, after an ATQA or ATQB has been received.
2.2.1 Anti-collision procedure acc. ISO/IEC14443A
The anti-collision procedure is mandatory for ISO/IEC 14443A compliant PICCs. All the
NXP MIFARE products support the anti-collision according to ISO/IEC14443 A.
The “Activate Card” includes the anti-collision and Card selection of a single card (for
both type A or type B). For ISO/IEC 14443-4 compliant PICCs (like MIFARE DESFire,
cards for contactless payment, electronic passports, etc.) the Activate Card includes the
proper setup of the transmission protocol as shown in Fig 2.
(1) This “Card Activation” requires a proper REQA/ATQA before the Anti-collision Loop.
(2) The bit numbering of the ISO/IEC 14443 starts with LSB = bit1!
Fig 2. ISO/IEC 14443-4 compliant Card Activation (like MIFARE Plus, MIFARE DESFire or
JCOP)
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
6 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
According to the SAK coding the MIFARE cards like MIFARE Mini, MIFARE 1K, MIFARE
4K, MIFARE Ultralight or Ultralight C (and MIFARE Plus in Security Level 1 or 2) can be
clearly separated and selected as shown in Fig 3.
MIFARE 1K, 4K or UL
Card Activation
Anticollision Loop
SAK bit 2 = 1?
Yes
RFU
No
SAK bit 4 = 1?
Yes
MIFARE Mini card
selected
No
SAK bit 5 = 1?
Yes
No
SAK bit 5 = 1?
SAK bit 6 = 1?
No
Yes
No
MIFARE 1K card
selected
MIFARE 4K card
selected
MIFARE UL card
selected
SAK bit 1 = 1?
No
Yes
SAK bit 1 = 1?
Yes
Yes
RATS
+ PSS, if required
No
ISO/IEC14443-4
card selected
MIFARE Plus 2K
card SL2 selected
MIFARE Plus 4K
card SL2 selected
(1) This “Card Activation” requires a proper REQA/ATQA before the anti-collision Loop.
(2) The bit numbering of the ISO/IEC 14443 starts with LSB = bit1!
(3) The MIFARE Plus in Security Level 3 fully supports the ISO/IEC 14443-4.
(4) SAK bit 2 is reserved for future use, i.e. bit 2 = 1 might give a different meaning to all other
SAK bits.
Fig 3. MIFARE Mini, 1K, 4K, UL or ULC or MIFARE Plus Card Activation
Note: It is not recommended to use the ATQA to determine card parameters due to
possible collisions.
Note: The MIFARE Ultralight C uses the same ATQA and SAK as the MIFARE Ultralight.
Note: The MIFARE Plus in the SL3 uses the ATS or the card capabilities to distinguish
between different card types.
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
7 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
2.2.2 Anti-collision procedure acc. ISO/IEC14443B
For coding the REQB command (and all other ISO/IEC 14443 B commands) the
“Mf500PiccExchangeBlock” (refer to [10]) together with the MF RC531 or CL RC632 can
be used, if
•
all the relevant reader IC registers are set correctly for ISO/IEC 14443 B
communication (refer to [6] or [7]), and
•
the CRC is coded correctly. The CRC Enable / Disable functionality of
“Mf500PiccExchangeBlock “ of the original Basic Function Library ([10])
overwrites the ISO/IEC 14443 B settings in the ChannelRedundancy register.
Instead of overwriting the complete 8 bit of the register, only the RxCRCEn and
TxCRCEn should be masked and set or reset, without changing the rest of that
register.
If an ATQB is received with communication errors, the anti-collision procedure according
to [8] has to solve the collisions, and select one single card.
The Card Activation uses ATQB and the ATTRIB command including answer to establish
the protocol layer of the ISO/ IEC 14443 for an ISO/IEC 14443 B compliant card.
Note: For more details and IP related issues regarding Type B check [8].
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
8 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
3. Selecting the correct application
Due to the fact, that in a standard system there can be more than one PICC in the active
PCD field, the system has to select the right one – and has to deselect all the other ones.
In any case the system has to be able to separate cards with foreign applications from
card with the own application – and properly exclude the “foreign card” from the own
selection process. The system has to be able to exclude cards containing foreign
applications especially in those cases, where the system requires the operation being
limited to “one single card”.
Note: This selection process is related to the application, but not to the communication!
The principle of this selection is always the same: every card in the field is selected and
queried to check if it contains the relevant application or not. If more than one card in the
field contains the relevant application, the system either has to prioritize the cards or
refuse the transaction.
If only one card contains the relevant application, the system has to perform the
transaction – independent of the number of cards in the field.
The following sections describe how to properly select the relevant application, if only
one type of cards is used in the system (e.g. MIFARE Standard only). However, the
process can of course be extended to operate applications using different type of cards,
too.
3.1 Selecting a MIFARE standard application
In many cases the system needs to select one MIFARE standard card (like MIFARE 1K
or MIFARE 4K or MIFARE Ultralight). In all those cases the PCD does not use the
transmission protocol, but just selects the card according to ISO/IEC 14443-3. Afterwards
the application runs the application related commands (like the Authentication for the
MIFARE 1K or MIFARE 4K or Read for the MIFARE Ultralight).
The process for selecting a MIFARE 1K or 4K as shown in Fig 4 (without MAD) or Fig 5
(using MAD) uses the Activate Card without activating the transmission protocol. Every
ISO/IEC14443-4 compliant card is selected and properly halted in this process. A dual
interface card providing both a MIFARE Emulation as well as an ISO/IEC14443-4
protocol layer is automatically correctly activated as a MIFARE standard card here.
This process returns an error if more then one MIFARE standard card with the relevant
application is in the field.
“Reactivate Card” uses the WUPA, and the Select command.
Note: The same process as shown in Fig 4 can be used for the MIFARE Ultralight, if a
Read command instead of the Authentication is used.
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
9 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
(1) “Card Activation” is shown in section 2 (incl. the REQA).
Fig 4. Selecting one single MIFARE Mini, 1K or 4K application without MAD
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
10 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
MIFARE
Standard
application
Card polling
Yes
N=0?
N=0
No card
Card Activation
Card Selected
Read & Check
MAD
Fail
Reactivate Card
Halt
AID existing
N=N+1
Card Selected
No
N = 1?
Yes
Halt
No
Card Activation
No card in the field
Reactivate Card
Run Application
Error message!
-> more than 1
card!
(1) “Card Activation” is shown in section 2 (incl. the REQA).
Fig 5. Selecting one single MIFARE Mini, 1K or 4K application with MAD
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
11 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
3.2 Selecting an ISO14443-4 compliant application
In many applications using ISO/IEC 14443-4 compliant cards the proper selection of one
card out of a number of cards is required. Even if the transaction requires more than one
card to be addressed, usually every system uses a transaction flow which addresses
cards sequentially. So every card should be activated (and deactivated) separately, even
though the ISO/IEC 14443 protocol activation allows the use of CIDs and several cards
in parallel.
Note: For better communication stability it is recommended to only activate and select
the card that is being used in the current transaction, if not otherwise required.
Fig 6 shows the selection of an application on a DESFire card as an example. Every
other card that does not contain the relevant application is ignored from the system (i.e.
properly deselected). If more than one DESFire card with such a relevant application is
presented to the reader, the systems refuses the transaction.
“Reactivate Card” uses the WUPA, and the Select command.
The same principle can be used to select other applications on other type of cards, e.g. a
ticketing application on a MIFARE Plus SL3 card, a payment application on a JCOP card
or a electronic passport application on an eMRTD.
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
12 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
(1) “Card Activation” is shown in section 2 (incl. the REQA).
(2) The same principle applies for MIFARE Plus SL3 and other ISO/IEC 14443-4 compliant
cards.
Fig 6. Selecting one single MIFARE DESFire card
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
13 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
3.3 Using multiple cards during one transaction
In some cases the system might require to handle two ore more cards in parallel during
the same transaction. In such a case the system can use the CID of the protocol to
activate and address each card during one transaction.
The selection process is the same as shown in Fig 6, and can be processed as many
times as cards are in the field, using different CIDs to select each card.
4. Terms and Abbreviations
Table 1.
Abbreviations
Acronym
Description
application
here: the application on the card
ATQA
Answer To reQuest type A (refer to [8])
ATQB
Answer To reQuest type B (refer to [8])
ATTRIB
PICC Selection command ISO/IEC 14443 B (refer to [8])
card
here: PICC acc. to the ISO/IEC 14443 (contactless proximity smart card)
CID
Card IDentifier (refer to [8])
eMRTD
electronic Machine Readable Travel Document (“ICAO compliant ePassport”)
ICAO
International Civil Aviation Organization
MAD
MIFARE Multi Application Directory (refer to [12])
NFC
Near Field Communication
PCD
Proximity Coupling Device (“Reader”)
PPS
Protocol Parameter Selection (refer to [8])
RATS
Request for Answer To Select (refer to [8])
reader
here: PCD acc. to the ISO/IEC 14443 (refer to [8])
SL
MIFARE Plus Security Level (0, 1, 2, or 3)
SAK
Select AcKnowledge (refer to [8])
system
here: the system application
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
14 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
5. References
[1]
MIFARE (14443A) 13,56 MHz RFID Proximity Antennas; Application Note
[2]
ISO/IEC 14443 higher bit rates with MICORE; Application Note
[3]
Data Sheet; SL RC400 I Code Reader IC
[4]
MIFARE MF RC500; Highly Integrated ISO 14443A Reader IC
[5]
MIFARE MF RC 530 ISO14443A reader IC
[6]
MIFARE MF RC531; ISO 14443 Reader IC
[7]
MIFARE and I Code CL RC632 Multiple protocol contactless reader IC
[8]
ISO/IEC14443 Identification cards - Contactless integrated circuit(s) cards Proximity cards
[9]
ISO10373-6 Identification cards — Test methods part 6: Proximity cards
[10] Sample Source Code, Basic Function Library MF RC5xx
[11] MIFARE Interface Platform Type Identification Procedure
[12] MIFARE Application Directory MAD
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
15 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
6. Legal information
6.1 Definitions
Draft — The document is a draft version only. The content is still under
internal review and subject to formal approval, which may result in
modifications or additions. NXP Semiconductors does not give any
representations or warranties as to the accuracy or completeness of
information included herein and shall have no liability for the consequences
of use of such information.
Export control — This document as well as the item(s) described herein
may be subject to export control regulations. Export might require a prior
authorization from national authorities.
6.3 Licenses
ICs with DPA Countermeasures functionality
NXP ICs containing functionality
implementing countermeasures to
Differential Power Analysis and Simple
Power Analysis are produced and sold
under applicable license from
Cryptography Research, Inc.
6.2 Disclaimers
General — Information in this document is believed to be accurate and
reliable. However, NXP Semiconductors does not give any representations
or warranties, expressed or implied, as to the accuracy or completeness of
such information and shall have no liability for the consequences of use of
such information.
Right to make changes — NXP Semiconductors reserves the right to make
changes to information published in this document, including without
limitation specifications and product descriptions, at any time and without
notice. This document supersedes and replaces all information supplied prior
to the publication hereof.
Suitability for use — NXP Semiconductors products are not designed,
authorized or warranted to be suitable for use in medical, military, aircraft,
space or life support equipment, nor in applications where failure or
malfunction of a NXP Semiconductors product can reasonably be expected
to result in personal injury, death or severe property or environmental
damage. NXP Semiconductors accepts no liability for inclusion and/or use of
NXP Semiconductors products in such equipment or applications and
therefore such inclusion and/or use is for the customer’s own risk.
6.4 Trademarks
Notice: All referenced brands, product names, service names and
trademarks are property of their respective owners.
MIFARE — is a trademark of NXP B.V.
MIFARE Plus — is a trademark of NXP B.V.
MIFARE Ultralight — is a trademark of NXP B.V.
DESFire — is a trademark of NXP B.V.
Applications — Applications that are described herein for any of these
products are for illustrative purposes only. NXP Semiconductors makes no
representation or warranty that such applications will be suitable for the
specified use without further testing or modification.
AN10834_30
Application note
© NXP B.V. 2009. All rights reserved.
Rev. 3.0 — 26 June 2009
16 of 17
AN10834
NXP Semiconductors
MIFARE ISO/IEC 14443 PICC Selection
7. Contents
1.
1.1
2.
2.1
2.2
2.2.1
2.2.2
3.
3.1
3.2
3.3
4.
5.
6.
6.1
6.2
6.3
6.4
7.
Introduction .........................................................3
How to use this document ..................................3
Card activation according to the ISO/IEC14443 4
Polling for cards .................................................4
Activate Card......................................................6
Anti-collision procedure acc. ISO/IEC14443A ....6
Anti-collision procedure acc. ISO/IEC14443B ....8
Selecting the correct application .......................9
Selecting a MIFARE standard application ..........9
Selecting an ISO14443-4 compliant
application ........................................................12
Using multiple cards during one transaction.....14
Terms and Abbreviations .................................14
References .........................................................15
Legal information ..............................................16
Definitions ........................................................16
Disclaimers.......................................................16
Licenses ...........................................................16
Trademarks ......................................................16
Contents.............................................................17
Please be aware that important notices concerning this document and the product(s)
described herein, have been included in the section 'Legal information'.
© NXP B.V. 2009. All rights reserved.
For more information, please visit: http://www.nxp.com
For sales office addresses, email to: [email protected]
Date of release: 26 June 2009
Document identifier: AN10834_30

advertisement

Key Features

  • Card selection
  • Anti-collision procedure
  • ISO/IEC 14443-4 compliant card activation
  • MIFARE standard application selection
  • MIFARE DESFire card selection
  • Using multiple cards

Frequently Answers and Questions

How do I select a single card from multiple cards in the field?
The ISO/IEC 14443-3 standard describes the card activation procedure, which involves polling for cards, sending a Request command (REQA or REQB) and performing an anti-collision process to identify and select a specific card.
What is the role of the anti-collision procedure?
The anti-collision procedure, mandatory for ISO/IEC 14443A compliant cards, ensures that only one card is selected, even if multiple cards are present in the reader field. It involves sending specific commands and analyzing the responses to resolve any collisions.
How do I select the correct application on a card?
After a card is activated, you need to select the correct application. This involves sending a Select command and checking the response to ensure it matches the desired application. The system must also handle the scenario where multiple cards with the relevant application are present.
Can I use multiple cards during a single transaction?
Yes, you can use multiple cards concurrently during a transaction by using the CID (Card Identifier) in the protocol. Each card is activated separately and addressed using a different CID.
What types of cards are supported by the ISO/IEC 14443 standard?
The ISO/IEC 14443 standard supports both Type A and Type B cards. Type A cards are commonly used for MIFARE products, while Type B cards are used in other contactless applications.

Related manuals

Download PDF

advertisement