首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EMV Pidion BIP 1300

EMV Pidion BIP 1300
EN

Stack Overflow用户
提问于 2011-10-25 07:45:02
回答 1查看 1.4K关注 0票数 1

我目前正在使用PIDION BIP-1300,有谁有如何检索智能卡芯片的值的示例吗?

我使用的是C#和BB_EMV.dll...我找不到任何文件...

这就是我正在使用的东西:

代码语言:javascript
复制
EMV emv = new EMV();
byte[] DE_5A;
DE_5A = emv.GetData("DE_5A");

我收到的只是一个满是零的字节数组。

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2012-06-15 06:34:29

好吧,我不知道BB_EMV是什么,也从来没有听说过它,但是从智能卡中读取EMV数据并不容易,我现在就告诉你。

首先,您需要一个良好的托管库,它允许您对有问题的卡进行APDU级别的访问,我使用这个库:http://www.smartcard-api.com/index.shtml

一旦你有了它,就像添加任何其他托管库一样添加对它的引用,该工具包中有示例,所以我不会详细介绍它,让你自己的代码运行起来并不困难。

我有代码,但它是我为之编写的客户的版权,所以我不能给你。

一旦你可以开始向卡发送命令,如果是支持标准EMV结构的卡,你要做的第一件事就是选择PSE,通常有两种方法可以做到这一点。

1)使用AID选择

从您准备接受的AID (应用程序ID)列表中,向该卡发送以下命令:

0x00、0xA4、0x04、0x00

后面跟着你想要选择的AID,对于签证借记,这通常是

0xA0、0x00、0x00、0x00、0x03、0x10、0x10

在上面的APDU数据之后是一个数据块,后跟0x07 (数据长度)

你应该得到的要么是

0x9000或0x6100 (如果你得到一个61代码,这意味着你必须用修改过的参数重做请求,这超出了我在这里写的范围)

如果您在SW1和SW2 (卡片寄存器)中得到0x9000,那么您已经成功地选择了该AID,并准备好对其进行EMV调用。

2)使用DDF名称选择所需的支付应用程序,本质上是使用标准的卡选择命令来选择"1PAY.SYS.DDF01“,如果是接触式芯片和引脚,则选择"2PAY.SYS.DDF02”,如果是非接触式,则称为使用PPSE卡选择。

一旦你选择了一个支付应用程序,然后你需要从卡中读取处理选项,这将告诉你一些信息,关于什么是可用的和在哪里寻找。

这是通过发出如下所示的读取GPO命令来完成的:

0x80、0xA8、0x00、0x00、0x83、0x00

这将返回一个TLV结构,您必须解析该结构以获取详细信息。

TLV是一个非常简单的概念,您的数据流分为3组a

标签

长度

价值

因此TLV,

TLV标签的长度可以在1到3个字节之间变化,但通常您看到的长度永远不会超过2个字节。如果与0x1F进行add运算的第一个字节大于31 (即设置了第6位或第7位),则有一个16位标记,在这种情况下,您需要将刚接收到的字节左移8位,然后添加序列中的下一个字节。

就像wise的下一个字节,如果将它与128进行and运算得到128,那么你就有一个介于1到15位之间的2字节长度,一旦你有了标签和长度,剩下的下一个字节就是有效载荷。

该有效负载可以嵌套,事实上,您很可能会在TLV结构中找到TLV结构,因此需要编写一个好的递归解析器。

在解析来自GPO对象的数据后,您可以使用它来查找实际的卡数据,这是您开始阅读PAN和track2等效数据的地方。请注意,虽然有标准,但并不是所有的标准都是100%相同的。大多数卡都有一个自定义数据区,还请注意,PIN和CVV号码不能直接从卡中获得,相反,您将发现在大多数情况下会有一个加密的PIN或CVV块,这被设计为与卡的适当证书一起发送回发行商,然后发行商将报告输入的pin是否正确。

一些卡可以进行离线PIN验证但是,wolfgang站点提供了大量关于可用的各种标准函数和数据调用的信息,主要是在GSM SIM卡上,但他也涵盖了EMV。您可以在此处找到他的站点:

http://www.wrankl.de/

这个主题比我在这里描述的要多得多,这只是冰山一角,但是自从你6个多月前发布了这篇文章以来,我猜你现在可能已经自己取得了一些进展,如果没有的话,我希望这篇文章能有所帮助。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7883215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档