gpt4 book ai didi

smartcard - 处理方法未从主机接收完整的 APDU 命令?

转载 作者:行者123 更新时间:2023-12-03 08:17:01 25 4
gpt4 key购买 nike

主机发送以下命令给小程序选择EF文件

00 A4 02 00 02 40 01

目的是选择 ID 为 40 01(在命令的数据字段中指定)的 EF 文件。

但是当我调试 process(APDU apdu) 方法时,APDU 缓冲区只包含前 5 个字节 00 A4 02 00 02 。数据字段设置为 00 00 。所以我的小程序无法使用 EF ID 选择 EF。

你能告诉我上面的 APDU 命令有什么问题吗?

最佳答案

根据卡(或仿真器)的不同,APDU 缓冲区可能仅包含 APDU 头字段(CLA、INS、P1、P2、Lc)。即使某些卡自动将命令 APDU 的数据部分填充到 APDU 缓冲区中,您也不能依赖这种行为。

相反,您必须通过调用 APDU 对象上的 setIncomingAndReceive() 方法明确指示卡(或模拟器)检索数据部分。但请注意,只能为 case 3 和 case 4 APDU(即包含命令数据部分的 APDU 命令)调用此方法。如果没有命令数据字段,则不应调用此方法(案例 1 和案例 2 APDU)。

关于smartcard - 处理方法未从主机接收完整的 APDU 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34149458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com