我是智能卡新手。我有一些智能卡(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获得的响应类似于“找不到文件”,“参数错误”等。 我的问题是在智能卡上有没有通用的读写方式。 我可以读取或写入供应商规格未知的智能卡。
答案 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/
基本上,您需要知道修改数据需要哪种数据和命令,以及在执行进一步操作之前需要执行哪种类型的身份验证。