首页 文章

与NFC设备通信 - 安卓设备 - ISO 7816-4

提问于
浏览
0

由于ISO 7816-4标准,Android中是否有可以与NFC设备通信的库?我的意思是准备好实现APDU的命令,并且不需要手动发送字节?

或者也许唯一的方法是从APDU发送到我的设备字节?如果是这样,如何构造适当的APDU并找出字段值(CLA,INS等...)?

我的目的是进入卡上的目录并从卡中读取文件 .

感谢您提前分享您的知识:)

1 回答

  • 2

    我不知道标准库(既不是Android也不是任何其他平台),并且找到一个标准库的概率很低,因为卡具有如此不同的命令和功能子集 . 统一库有什么好处,如果不确定的话,生成的APDU会起作用?因此,大多数解决方案都使用中间件,该中间件使用显示支持功能的描述文件,有时与一些活动代码组合以重新格式化命令或通过一系列APDU组成所需功能 . 由于这种解决方案的巨大努力,其中大多数都是严格的目标导向,如PKCS#11 . 因此,要么您的解决方案针对存在这样一个框架的小扇区,要么您必须自己组合这些字节 . 对于7816指针,请查看this answer,其中第4部分,第8部分和第9部分是最重要的,或者搜索ISO 24727(也是多部分标准),它也尝试统一前端而不是来自不同制造商的卡 .

    您的具体问题是,没有标准化的“目录”命令(通常存在专有命令) . 虽然有EF.DIR,它只是卡上的应用程序列表(由它们的AID表示),这是一个高于文件的级别,因此您还需要应用程序规范 . 此外,阅读可能需要访问权限,因此之前需要进行某种身份验证(PIN或质询 - 响应测试) .

相关问题