Smartcard 读取EMV卡的公共数据

Smartcard 读取EMV卡的公共数据,smartcard,apdu,contactless-smartcard,emv,Smartcard,Apdu,Contactless Smartcard,Emv,假设我想阅读EMV卡的公共元素。 我将列出我认为涉及的一些步骤 1. First, select application In order to select application we must: (1) find out AID of application using PSE (if present) (2) Try existing AID list. 现在,假设我使用上述两种方法之一成功地选择了应用程序 我的问题是:我必须采取哪些步骤来进一步阅读公共元素 EM

假设我想阅读EMV卡的公共元素。 我将列出我认为涉及的一些步骤

1. First, select application
   In order to select application we must: 
   (1) find out AID  of application using PSE (if present)
   (2) Try existing AID list.
现在,假设我使用上述两种方法之一成功地选择了应用程序

我的问题是:我必须采取哪些步骤来进一步阅读公共元素 EMV卡的使用?更准确地说:我需要提供PDOL卡并获得AIP和AFL吗 () 使用GET处理选项,然后读取记录

或者在像我最初提到的那样选择应用程序后,我可以直接进行类似的操作(读取记录):

支付系统的EMV规范可在网站上公开获取。这些规范包含符合EMV的支付终端如何从卡中读取数据的详细流程和流程,因此您可以简单地实现这些规范的相关部分

总之,您通常会做什么来获取存储在卡上的静态数据:

  • 查找应用程序(如您所示)
  • 通过其辅助选择应用程序
  • 使用读取记录命令读取数据文件(通常前几个文件的前几个记录包含感兴趣的数据)。到目前为止,在我尝试过的卡上,不需要先发出GET PROCESSING OPTIONS命令,但您只能通过发出GPO命令并评估卡发送的AFL来获得与交易相关的实际文件/记录的列表。但您仍然可以使用蛮力方法来查找与您相关的记录
  • 使用GET data命令读取数据元素(当然,您需要知道要查找哪些数据元素)

  • 再加上Michel出色的回答:-

    • 在选择支付应用程序的帮助之前,您不需要选择PSE或PPSE,但这样做您应该会得到卡上存在的支付应用程序列表。如果愿意,您可以安全地跳过此步骤
    • GET DATA确实可以读取Nicolas Riousset提到的数据,以及来自Visa和MasterCard的大量专有数据。您需要一份Visa或MC规范来了解这些专有数据的标签
    • GPO读取AFL和AIP是没有必要的,但如果你不使用它,你需要使用蛮力并检查所有SFI和记录。AFL不是更容易吗?PDOL不需要向卡提供真实数据-只需向卡请求的标记提供请求长度的“00”字节值

    嗨,迈克尔,谢谢。您确定要使用“获取数据”命令吗?我第一次听说了???注:这里确实如此:还说可以尝试读取所有记录,而无需使用“获取处理选项”。但是你提到的这个GET DATA命令我不知道这是否是标准的一部分,但是到目前为止我测试过的所有MasterCard和Visa芯片应用程序都包含几个可读的数据元素(尽管它们可能是应用程序个性化的结果)。试着用几个EMV DOs,看看你的卡是否有结果。我的意思是我没听说过这些命令。我只知道读取记录和选择命令。还要检查我链接的问题的答案,它也没有提到GET DATA。GET DATA只是另一个ISO/IEC 7816-4命令(如读取记录、选择和许多其他命令)。根据EMV 4.3第3册(7.3数据可通过GET DATA命令检索)的定义,GET DATA只能检索应用程序事务计数器(ATC)、PIN尝试计数器、,最后一次在线ATC登记,以及记录格式。该卡仅强制提供ATC支持。例如,您将无法使用GET DATA检索卡号和所有者。通过获取处理选项和读取记录将是正确的方式。嗨,谢谢。是的,我刚才提到了使用PSE选择应用程序可能比使用预定义的辅助列表选择应用程序有优势(例如,哪个可以阅读更多卡片?)。我想我可能不需要获取数据,我只想阅读基本信息,如持卡人姓名、有效期等。一些非常旧的卡可能没有PSE,在这种情况下,您需要检查援助清单,但大多数情况下,PSE是了解卡上内容的最佳方式。如果您只需要持卡人姓名、有效期和一些磁道等效数据,则可以使用读取记录。请注意,从芯片上读取的磁道等价物不能用于真正的磁条。芯片中存储的CVV与实际磁条中的CVV不同。不,我有非接触式读卡器。只需要基本信息,所以直接使用预定义的艾滋病列表