Today is Mittwoch, 23rd Mai 2018

ISO 14443, ISO 18092, Type-A, Type-B, Type-F, Felica, Calypso NFCIP, NFC … – HELP!

You are trying to start with NFC Development? You are familiarly with coding and have devices and Tags? But nothing is working? Well then, this might be due to the different RF-layers that are used in the Domains of proximity Technology.

Well, all of the terms mentioned above have something to do with contactless technology, which might be integrated into handsets for “Near Field Communication”. Today I’d like to focus on the very low layers and why there some systems not talking to each other.

Let’s start of with ISO/IEC 14443. This is actually the standard for contactless smartcards and is divided into four parts, giving details on the physical characteristics, the RF-modulation and the format for data exchange, namely APDUs. But during standardization, two major players could not agree on how the RF modulation (in Part 2) should be implemented. There for the standards includes two completely different options for the RF modulation, named Type-A and Type-B. Where as smartcard usually only support one type, an ISO/IEC 14443 reader (also referred to as PCD – Proximity Coupling Device) needs to be able to support both types. The layers no top (3 & 4) are the same then for both Types. Type-B cards are mainly used in France and francophone countries. More details on the different types can be found in the table below as well as in the RFID-Handbook by Klaus Finkenzeller (which is the reference book for Contactless Technology)

RF Layers

Type AT Type B Type F
Communciation Speed 106 kbit 106 kbit 212, 424 kbit
Coding 100 % ASK, Manchester Coding 10% ASK, NRZ Coding 8 – 30 % ASK, Manchester Coding
Example App Oyster Calypso Suica

Mifare (Classic) – a product of NXP Semiconductors – is a contactless smartcard based on ISO/IEC 14443-A. But in this case, the layer 4 (APDUs) is not implemented but a proprietary cryptographic algorithms (CRYPTO-1) used to encrypt this connection. A Mifare card can hold 1 or 4 KB of Memory to store data. Other products of NXP are Desfire (using no or 3DES encryption, 4 KB of memory) and Mifare Ultralight (96+ Bytes of memory, no encryption). Mifare is actually the most popular contactless smartcard in the world with more that 1,5 billion pieces sold around the world. Lot’s of public transport schemas such as Oyster (Transport for London) use Mifare for Ticketing. Also the RFID-Ticktes for the Football World Champion Ship 2006 in Germany were based on Mifare Technology.

Calypso – also referred to as Type-B‘. Calypso is a transport application implemented by the Calypso network. On RF-Layer, B‘ is aquivilant to ordinary type B, but the protocoll on top is proprietary. Allthough there is a Calypso implementation on Java Cards as well, which would allow to load this applcation in to ordinary JavaCards or Secure Element of NFC Devices (which then should support Type-B for the Modulation)

Felica is a contactless cards produced by Sony, which is mainly used in Japan. Felica is used in public transport (Suica/Japan Rail), for contactless micro payments and room keys in hotels. Felica is neither based on type-a nor Type-B, but has its own modulation schema (sometimes also referred to as type-F). For the communication with Felica cards, a reader has to send so called “F-Frames” to the card, which are similar to APDUs. For the communication with Felica cards, there are different modes (mode-0, -1) allowing also unencrypted communication, but unfortunately there is no documentation available on that. Felica used a 3DES for the encryption of the communication, but as the protocol itself is proprietary one else then Sony is able to build these cards. Until 2007 Sony sold about 200 million pieces of Felica Cards.

So how does NFC fit in here now? Well, lets’ have a closer look at ISO/IEC 18092 (NFC is also standardized in EMCA340/380) first, which is the standard for NFCIP-1. In this standard it is defined, that Type-A is used for communication between active and passive device for a communication speed with 106 kbit and then use Type-F for communication speeds 212 and 424 kbit. An ISO/IEC 18092 compliant device thus is able to act as a ISO/IEC 14443-A Target or Reader as well as read and emulate Felica cards (at least establish a connection on physical layer). So know can I emulate a ISO14443 card or a Felica card without the according smartcard chip? Well the solutions quite simple: just send the according Frames over the RF-Layer and the reader outside will believe he is talking to a smartcard. But in order to do so, you will need to have low-level access to the communication interfaces of the NFC-Chip. Such “tricks” are not possible with the JSR257 as this is a high level API. This ISO/IEC 18092 standard also defines a protocol – NFCIP1 – which allows two devices (there a device also could be a passive tag!) to exchange data, which then actually “real” Near Field Communication according to this standard.

So, is there no Type-B in the World of NFC you might ask? Good question. For a physical layer perspective – no. This is due to take fact, that NFC (ISO 18092!) was invented jointly by NXP and Sony and therefore only their needs are covered in this standard. As the specification of the integration of NFC-Technology (which covers ISO 18092 as well as ISO 14443 in active and passive mode) into devices is driven by the NFC-Forum, it is likely that also Type-B will be support by “NFC-Forum-Compliant” devices.

A nice overview is given here: Philips-NFC-vs-ISO14443-vs-Felica-SLIDES.pdf

Welcome at