Limitations of the i.MX SIM Controller to Pass the EMV Certification

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Limitations of the i.MX SIM Controller to Pass the EMV Certification

Limitations of the i.MX SIM Controller to Pass the EMV Certification

Introduction


EMV stands for Europay, MasterCard and VISA, and is a global standard for inter-operation of integrated circuit cards (ICC) and ICC reader terminals (like point of sale (POS) terminals, automated teller machines (ATMs)) for authenticating credit and debit payment cards transactions.
Any IC card reader must be certified to be EMV compliant.

The EMV standard defines the interaction at the physical, electrical, data and application levels between the IC cards and IC card terminal.
For the contact smartcards it is based on standard ISO/IEC 7816.

Some of the i.MX embeds a Subscriber Identification Module (SIM) which was designed to facilitate the communication to a mobile phone SIM card.
It could be used to communicate indirectly with a banking smartcard due to the listed limitations in regards to the EMV requirements.

Electrical Limitations


The POS terminal must support 1.8V, 3.3V, and 5V smartcards.
Depending on the i.MX, 1.8V or 3.3V could be supported but not both, and 5V is definitely out of
the range of the I/O supplies.
=> a level adapter component is required between the i.MX and the smartcard.

Protocol Limitations


The communication between the IC card and the reader is asynchronous (almost a UART), but based on a common clock for synchronous operation.
The ISO7816 standard defines the following:
1 ETU = F / D * 1 / f

ETU is Elementary Time Unit, which is somehow the nominal time to transmit a bit (0 or 1).
F or Fi is the clock rate conversion integer.
D or Di is the baud rate adjustment integer.
f is the frequency of the communication clock used between the controller and the smartcard.

Below is a partial list of what the controller must support to pass the EMV certification, and the known limitations of the SIM controller:
- baud rate at x1 (Fi/Di=372/1) => default speed for all smart cards =>  supported.
- baud rate at x2 (Fi/Di=372/2 = 186/1) => a higher speed for some smart cards => not supported.
- baud rate at x4 (Fi/Di=372/4 93/1) => a higher speed for some smart cards => not supported.
- message length of 12ETU => specified for T=0 type smart card => supported.
- error of -0.2ETU on message length of 12ETU => 11.8ETU smart card => not supported.
- message length of 11ETU => specified for T=1 type smart card => supported.
- error of -0.2ETU on message length of 11ETU => 10.8ETU smart card => not supported.

Conclusion


For these reasons, the i.MX SIM controller does not allow to pass the EMV certification without the usage of an external controller that must care of all these missing features.
The SIM can still be used to communicate with that external controller such Atmel AT83C26, NXP TDA8023, Terridian, or On Semi.

Freescale does not have driver neither reference design to support that configuration.

This company has the expertise to work with EMV certification for the i.MX258 + a companion smartcard controller:

http://www.alcineo.com

Labels (1)
Comments

Hi Florent / Paul,

Can you please share more details about the protocol limitations? What is the root cause for not supporting the following items mentioned in your post?

- baud rate at x2 (Fi/Di=372/2 = 186/1) => a higher speed for some smart cards => not supported.

- baud rate at x4 (Fi/Di=372/4 93/1) => a higher speed for some smart cards => not supported.

- error of -0.2ETU on message length of 12ETU => 11.8ETU smart card => not supported.

- error of -0.2ETU on message length of 11ETU => 10.8ETU smart card => not supported.

Thanks,

Shenwei

It is not possible to configure SIM clocks properly (exactly as needed).

No ratings
Version history
Last update:
‎10-29-2012 10:21 AM
Updated by: