PN7150/NCI:无法使用自定义嵌入式键B更新 MIFARE Classic 1K 扇区尾部NXP社区的各位朋友,大家好!
我正在使用MIFARE Classic 1K卡和 NXP PN7150 NFC 控制器,它们运行在标准的 NCI 协议层上。我正在尝试实现一个配置功能,将自定义密钥密码写入目标扇区(扇区 7 )的密钥 B ,但卡芯片始终拒绝写入命令。
以下是我的卡片的确切状态和实现细节:
- 当前第 7 区状态:该区目前为空白/未格式化。读取转储显示它处于出厂默认状态,访问位为FF078069 ,密钥 A 和键B 都设置为 0xFFFFFFFFFFFF。
- 目标:我希望保留密钥 A 作为读取密钥,保留开放访问位布局,并将密钥 B 替换为个人自定义密钥有效载荷(0x01 0x02 0x03 0x04 0x05 0x06)。
- 问题:当我尝试将 16 字节的原始块布局字符串( FFFFFFFFFFFFFF078069010203040506 )写入块 3 (扇区 7 尾部)时,写入事务失败。
注意:我使用应用程序对卡进行了 NDEF 格式化,访问字节显示为7F078840
非常感谢您的指导!
此致
Re: PN7150/NCI: Unable to update MIFARE Classic 1K Sector Trailer with Custom Embedded Key B你好@Saqib1
希望你一切都好。
请注意,PN7150 不建议用于新设计;我们建议改用PN7160 。此外,也不建议在新设计中使用 MIFARE Classic;可以考虑使用MIFARE DESFire Light 。
在发送写入命令之前,请确保使用密钥 A (FFFFFFFFFFFFh) 对块 1Fh(第 7 扇区尾部)进行身份验证已成功执行。
现在,在对块 1Fh 进行身份验证后,请验证写入命令是否按照MIFARE Classic EV1 1K数据手册第 12.3 节中描述的步骤发送。WRITE 操作由两个部分组成,必须按顺序发送:
第 1 部分:发送命令字节和块地址,包括 CRC:A0 + XX + CRC,其中 XX 是块地址(例如,1Fh 表示第 7 扇区尾部)。卡片必须先回复 ACK 才能继续执行。
第 2 部分:只有在收到 ACK 后,才发送包含 CRC 的 16 字节数据:[16 字节有效载荷] + CRC。该卡将以最终的 ACK 响应,以确认写入操作已被接受。
问候,
爱德华多。