如何阅读或编写智能卡

时间:2016-01-19 06:07:54

标签: smartcard pcsc

我是智能卡新手。我有一些智能卡(ISO 7816-4支持),但没有规格和omnikey读卡器。我正在使用pcsc sharp。我只能成功传输获取挑战指令。我也可以阅读ATR。我的一张卡ATR是3B-DB-94-00-80-31-FE-45-00-31-C0-64-20-27-02-00-00-90-00-45。但是不能传输任何其他指令。 sw1和sw2获得的响应类似于“找不到文件”,“参数错误”等。 我的问题是在智能卡上有没有通用的读写方式。 我可以读取或写入供应商规格未知的智能卡。

3 个答案:

答案 0 :(得分:1)

试试这些Apdu的

选择MF APDU:

  

00 A4 00 00 00

创建EF APDU(传输文件ID为0X3F01的二进制文件):

  

00 E0 00 00 09 62 07 83 02 3F 01 82 01 01

写入数据APDU(数据 - 0102030405):

  

00 D0 00 00 05

读取5字节数据:

  

00 B0 00 00 05

答案 1 :(得分:0)

网络上提供了一个SDK,它专门针对dot NET

此处http://www.smartcard-api.com/download.shtml

您可以从上面的链接下载完整的代码,作为响应,您可以获得卡ATR和UID值

我能够读取卡片值,仍然在寻找如何将数据写入非接触式卡片。

答案 2 :(得分:-1)

现在大多数智能卡遵循全球平台标准,即使在内部它也可能不是Java卡。

因此,您需要知道验证卡的密钥,并使用一些基于全球平台的工具来访问卡。

一个选项工具,如:

https://github.com/martinpaljak/GlobalPlatformPro

还有另一个基于javascript的shell可用于进行一些交互式编写:

http://www.openscdp.org/scsh3/

基本上,您需要知道修改数据需要哪种数据和命令,以及在执行进一步操作之前需要执行哪种类型的身份验证。