ACR1252U无法加载Mifare银行卡密钥,疑与SAK=38标签不兼容
问题描述
我有两款读卡器(MicroEM和ACR1252U)以及两张卡片:
- Mifare 4K卡
- 带Mifare功能的银行卡
使用自带驱动(非PCSC)的MicroEM读卡器可正常完成以下操作:
- 获取UID
- 加载密钥
FFFEFDFCFBFA - 认证扇区33
- 读取块5/12
参考ACR1252U官方文档修正命令实现差异后,使用PCSC驱动的ACR1252U仍存在问题:
- 读取银行卡UID正常,但加载密钥返回
63 00错误 - 读取Mifare 4K卡则全部操作正常
2024年8月16日更新
使用SDK工具测试发现:
- 银行卡的SAK值为
38(仿真标签),Mifare 4K卡的SAK值为08 - 查询得知部分读卡器仅支持SAK=18或28
- 读取扇区0块0信息显示两者的SAK、ATQ等标识存在差异
疑问
ACR1252U读卡器是否不支持SAK=38类型的标签?若找到修改SAK或让ACR读取仿真标签的方法,我会更新问题。
测试代码及数据
1. MicroEM 使用自带驱动(非PcSc)运行正常 1.1. 获取UID 1.2. 加载密钥 FFFEFDFCFBFA 1.3. 认证扇区33 1.4. 读取块5 / 12 全部成功
## 测试银行卡 requestUid = {FF, CA, 00, 00, 00}; 返回正确UID = 8073EB8A8B7B00 requestLoadKey = {FF, 82, 00, 00, 06, FF, FE, FD, FC, FB, FA} 返回 63 00 ## 测试Mifare 4K卡 requestUid = {FF, CA, 00, 00, 00}; 返回正确UID = 8073EF1A457B00 requestLoadKey = {FF, 82, 00, 00, 06, FF, FE, FD, FC, FB, FA} 返回 90 00
银行卡 ATR = 3B 86 80 01 4B 4F 4E 41 13 21 3E Mifare 4K卡 ATR = 3B 8F 80 01 80 4F 0C A0 00 00 03 06 03 00 36 00 00 00 00 5D
银行卡 UID, ATQ = 0044, **SAK = 38** Mifare 4K卡 UID, ATQ = 0044, **SAK = 08**
银行卡 : UID 38 4400 810000002321 (SAK, ATQ, 厂商信息) Mifare 4K卡 : UID 08 4400 010111002118
内容的提问来源于stack exchange,提问作者Yura Sultanov
相关产品推荐
相关产品推荐

