nfcemvcalypso

Detect calypso card from other EMV type B cards?


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?


Solution

  • 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.