我正在尝试在信用卡上阅读名称,卡号,到期日期等。但是,呼叫SCardTransmit
时始终返回6d00
。
我正在使用预定辅助工具,我已经用谷歌搜索以有效(如果我错了,请纠正我)。这是:
AID_LIST = {
"A0000000421010",
"A0000000422010",
"A0000000031010",
"A0000000032010",
"A0000000041010",
"A0000000042010",
"A00000006900",
"A0000001850002"
}
预先感谢。
我对您正在使用的此API不熟悉,但是您必须发送以下APDU命令的顺序:
- 选择PSE(用于联系卡),由EMV在第1册中的11.3中指定。一个示例是" 00A404000E315041592E5359532E44444444444444444444444444444444444444444444446303100"
- 返回SFI后,您可以阅读记录以找出受支持的艾滋病。但是,您可以使用指定的预定辅助工具来通过"反复试验"来执行此操作,并按照第1册第1、12.3.3号的指南。 。
- 您可以调用命令"获取处理选项",以查看可阅读的记录,或者您可以读取所有可能的记录,称为"读取记录"命令,以扫描可能的记录。在其中一个记录中,您将拥有要寻找的数据。
通常,在同一记录中,您将存储持卡人名称,PAN和TRACK 2 DIPTAIRARY数据(其中包含到期日期)。
标签在第3本书中列出。
应用程序主帐号(PAN)-5A持卡人名称-5F20轨道2酌处数据-9F20
有关轨道2的有用信息:http://en.wikipedia.org/wiki/magnetic_stripe_card
以上序列的样本:http://code.google.com/p/javaemvreader/wiki/exampleOutput
EMV规格:http://www.emvco.com/specifications.aspx?id=223
在ISO 7816中列出了可能的返回代码,例如61xx,9000等。这是一个很好的概述:http://www.cardwerk.com/smartcards/smartcard/smartcard_iso7816-4_5_5_basic_organizations.basic_organizations.aspxeaspxeaspxeaspxeaspxepxepxe.paspxepxpeass.usaspxepxe.p.>
您需要查找/购买ISO 7816,EMV规格和您的供应商卡规格,否则您不知道自己在做什么。