0

How to detect Calypso card from other emv type B cards.

Calypso type cards which is a PICC compliant with ISO/IEC 14443-4 type B cards.

We would like to detect the card is not a EMV card, before processing by the EMV kernel.

from the ATQB structure of the Calypso card, is there a way we can find?

We read ATQB from calypso card,

`            .cardType         = CARDTYPE_TYPE_B (6)          
             .atqb             = 12:{50AA0701 AB000000 00004191}
             .ata              = 1:{00}
`

for a Visa card that is type B

`  .cardType          = CARDTYPE_TYPE_B (6)             
   .atqb             = 12:{50C5D69F 00000000 00006183}
   .ata              = 1:{00}`

So we cant find a tangible difference between PICC of calypso or Visa card. How to identify the card on detect and accept only EMV and not further process calypso card?

buddy
  • 805
  • 1
  • 15
  • 30

1 Answers1

2

You can recognize an EMV by sending a select PSSE command to the card:

a4 04 00 0e 32 50 41 59 2e 53 59 53 2e 44 44 46 30 31 00

a4: select command

Try to select 2PAY.SYS.DDF

If 2PAY.SYS.DDF is in the card response, the card is an EMV card.

Joshit
  • 1,238
  • 16
  • 38
  • Are you shure that "2PAY.SYS.DDF is in the card response", ? Usually an EMV card responds with a "File Control Information (FCI) Template" that starts with "6F 3A .." but never responses the "2PAY.SYS.DDF" data. – Michael Fehr Mar 28 '23 at 06:10
  • In the File Control Information Template, you can find the Dedicated File name For example, https://emvlab.org/tlvutils/?data=6F2F840E325041592E5359532E4444463031A51DBF0C1A61184F07A0000000031010500A564953412044454249548701019000 – Laurent fagot Mar 28 '23 at 07:32
  • Thanks, I never mentioned that 84 Dedicated File (DF) Name contains "2PAY.SYS.DDF" :-) – Michael Fehr Mar 28 '23 at 11:25
  • If we give EMV Select with 2PAY.SYS.DDF01, If the directory is present on the card, the card will send back in ADPU-response PPSE SW1/SW2 = 9000 (ОК) If the directory is missing on the card, in the APDU-R SW1/SW2 will be = 6A82 (File not found). If the file Not Found, we can identify as non EMV cards – buddy Jun 23 '23 at 07:11
  • That's not so easy, some Desfire cards respond 9000 but don't have 2PAY.SYS.DDF01 in the response – Laurent fagot Jun 24 '23 at 14:31