Mifare desfire apdu 命令
Posted
技术标签:
【中文标题】Mifare desfire apdu 命令【英文标题】:Mifare desfire apdu command 【发布时间】:2020-07-03 07:36:23 【问题描述】:我有一张包含 Mifare Desfire EV1 非接触式芯片的智能卡,我正尝试向非接触式部分 (Mifare Desfire) 发送带有主密钥的身份验证请求,因此我发送此命令:
-- Auth Req with Master key
>>> cmd = 90 AA 00 00 01 00 00
<<< data =
<<< sw = 68 84
我不知道为什么会收到此错误代码,似乎该命令已发送到联系船?
您能帮我找出问题所在吗?在“激活”到非接触部分之前有什么步骤吗?
顺便说一句:我尝试了这些读者:Omnikey5321v2 和 ACR122U-A9
谢谢!
【问题讨论】:
【参考方案1】:我不确定您得到的响应状态 (SW = 0x68 84
) 究竟意味着什么。但是,您的命令中似乎缺少 LE
字节。
原生 MIFARE DESFire EV1 APDU 的封装:
CLA | INS | P1 | P2 | LC | Data | LE 0x90 MIFARE 0x00 0x00 Length of MIFARE 0x00 DESFire wrapped DESFire EV1 EV1 CMD data command Code parameter(s)
与P1
和P2
一样,LE
字节应始终存在并设置为0x00
,并且不允许使用任何其他值。
所以你的身份验证命令实际上应该是:
cmd = 90 AA 00 00 01 00 00 00
【讨论】:
以上是关于Mifare desfire apdu 命令的主要内容,如果未能解决你的问题,请参考以下文章
使用 javax.smartcardio 时 DESfire EV1 为 PPS 命令包装 APDU 的问题
APDU 响应 910B 对 DESFire EV2 卡意味着啥?