user3730197
user3730197

Reputation: 21

how to differentiate between contactless card and smart phone when performing a payment via NFC?

I'm working on a university project, where we need to customize a POS terminal when a transaction is successfully completed and approved via NFC.

When processing a transaction using a smart phone, the POS device will be customized to perform an extra task. Therefore, the terminal should differentiate between a contactless card and a smart phone when performing the payment.

Any idea how to identify whether it is a smart phone or a contactless card?

Thank you in advance.

Upvotes: 2

Views: 1010

Answers (1)

Michael Roland
Michael Roland

Reputation: 40821

Typically, you won't be able to distinguish between a contactless card in plastic card formafactor and mobile phone formfactor. Both speak the same protocol (EMV contactless).

However, you might be able to distinguish (not quite reliably though) between a mobile phone and a plastic card by looking at certain protocol parameters.

  • For instance, many Android mobile phones will have the NFCIP-1 flag set in the select acknowledge (SAK) byte indicating that they also support peer-to-peer mode. So if you have access to the SAK byte, you could get a rough estimate. Unfortunately, there are many situations where NFCIP-1 support is not reported in the SAK byte even by a mobile phone (e.g. on Android when the screen is off or locked).

  • Moreover, some EMV Contactless Kernes define a flag in the application interchange profile (AIP) that indicates if the device is a mobile device or not (Kernel 2: AIP Byte 1, Bit 2; Kernel 3-5: AIP Byte 2, Bit 7). However, even if some kernels refer to this bit as an indication of whether the device is a mobile phone or not, its exact meaning is usually if the device supports on-device cardholder verification or not. Hence, if a mobile phone does not support on-device CVM it also won't have that flag set. Similarly, if some other device besides a mobile phone does support on-device CVM (an EMV token with display and PIN pad?), it will have that flag set.

Upvotes: 2

Related Questions