【问题标题】:Authentication failure for Mifare 1K NFC tag using ACR122U NFC reader使用 ACR122U NFC 读取器的 Mifare 1K NFC 标签身份验证失败
【发布时间】:2016-06-02 06:38:39
【问题描述】:

我在使用ACR122U工具验证Mifare 1K NFC标签时总是得到失败结果,但我可以使用Android手机读取/写入这个标签。

ACR122U Load Authentication Keys
< FF 82 00 00 06 FF FF FF FF FF FF 
> 90 00 
< Key Structure: 00    < Key Number: 00
< Key: FF FF FF FF FF FF
Load Authentication Keys Success

ACR122U Authentication
< FF 86 00 00 05 01 00 00 60 00 
> 63 00 
Operation failed

【问题讨论】:

    标签: nfc


    【解决方案1】:

    您关于 Android 手机能够读取和写入此标签的评论表明它已格式化为包含 NDEF 数据。您可以尝试将 MIFARE 应用程序目录密钥 0xA0A1A2A3A4A5 用于第一个扇区(块 0-3),并将 NFC 论坛密钥 0xD3F7D3F7D3F7 用于以下扇区,而不是出厂默认密钥 0xFFFFFFFFFFFF。详情请见NFC Type MIFARE Classic Tag Operation

    【讨论】:

    • 感谢您的回复!我已经尝试过你的建议,但仍然失败。 ACR122U 加载认证密钥 90 00 63 00 操作失败 ACR122U Load Authentication Keys 90 00 63 00 我必须重新检查 PDF...
    【解决方案2】:

    使用安卓的“NFC TagInfo”应用程序。您可以使用该应用程序读取十六进制数据并找出正确的密钥。在每个扇区的末尾都会有“keya, access, keyb”数据。前 6 个字节(12 个十六进制字符)是密钥 a,最后 6 个字节(又是 12 个十六进制字符)是密钥 b。使用新密钥读取和写入卡。

    【讨论】:

      【解决方案3】:

      MF Classic 1k 卡的身份验证失败可能有多种原因。

      1. 错误的密钥

        一个。长度:应为 6 个字节(12 个十六进制字符)。

        b.密钥匹配:密钥将是传输模式下的十六进制 FFFFFFFFFFFF(默认情况下),并且可以由提供卡的供应商更改。您必须从供应商处获得确切的密钥。

      2. 密钥类别:访问条件(所有扇区的第 3 块的 6-9 个字节)将说明您必须使用哪个密钥来验证特定内存操作的相应扇区。要了解更多详细信息,请参阅

      http://www.nxp.com/documents/data_sheet/MF1S50YYX.pdf

      【讨论】:

        【解决方案4】:

        在 Mifare Classic 1K 标签中有 16 个扇区,每个扇区包含 4 个块,每个块包含 16 个字节。从页面读取或写入之前您必须使用密钥 A 或密钥 B 验证扇区。验证完成后,您可以读取或写入。这是使用该密钥作为密钥 A (60) 来验证扇区 0 的身份验证命令:

        FF 86 0000 05 01 0000 60 00
        

        或使用该密钥作为密钥 B(61) 验证扇区 0:

        FF 86 0000 05 01 0000 61 00
        

        或者使用这个命令你也可以验证扇区 0

        byte[] authenticationByte = new byte[10];
            authenticationByte = new byte[] { (byte) 0xFF, (byte) 0x86, (byte) 0x00,
         (byte) 0x00, (byte) 0x05, (byte) 0x00,(byte) 0x00, (byte) 0x04, 
                                            (byte) 0x60,(byte) 0x00 };
        

        更多详情可以关注this answer

        【讨论】:

          【解决方案5】:

          我为一些 ACR 读卡器写了an utility,而带有 Mifare 经典卡的 ACR 122U 遇到了某种错误。相同的代码适用于 ACR 1222L。

          但是 Mifare Classic 卡很垃圾,所以我建议换卡来解决这个问题。

          【讨论】:

            猜你喜欢
            • 2017-11-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多