我正在做一个项目,目的是从Mifare经典射频识别卡(nrf52832(基于Cortex™-M4F)和TRF7970A (多协议完全集成13.56MHz NFC / rfid收发器IC)中读取/写入数据。
预认证部分按照is 14443-3标准(如图所示)完成,工作良好( nrf52832和TRF7970A之间的通信通过SPI完成) 图像预认证部分。
但是在这部分之后,我遇到了一个身份验证问题。
如果TRF7970A不支持MIFARE卡,则需要根据TI PDF "Using Special Direct Mode With the TRF7970A"通过特殊直接模式继续通过TRF7970A <-> MIFARE进行通信(由于新用户的堆栈溢出限制,无法链接)
一切都是根据TI PDF配置的,但我仍然不能通过3阶段认证。
为了显示问题,附3张图片。验证过程由逻辑分析器捕获。
捕获信号上图片--通过auth1级的尝试失败。(TRF在从卡发送响应之前发送IRQ )
中间图-通过auth1阶段的成功尝试。(代码保持不变,只是有时通过了一个阶段,有时却没有。)
底部图片-在auth1成功通过之后,它来到了auth 2,在那里我从来没有看到to 7970/Mifare经典卡的答案。
密码部分取自sdm mifare lib on trf7970AEVM
可能有人对出了什么问题有任何想法,或者有人可以指导我做类似的项目。
发布于 2017-12-28 16:50:14
我怀疑在主机端和卡端用于密码生成的密码密钥是不同的。这就是为什么你没有看到任何回应从卡。
确保钥匙是一样的。
https://stackoverflow.com/questions/46093327
复制相似问题