繁体   English   中英

如何在Android上对MIFARE Ultralight C进行身份验证

[英]How to do authentication for MIFARE Ultralight C on Android

我使用Android APP(NXP的NFC标签信息)来读取我的MIFARE Ultraglith C标签,它显示标签有NXP默认密钥“BREAKMEIFYOUCAN!” 在页面0x2C到0x2F。 但我仍然无法使用此密钥验证此标记。

    // NXP default key: BREAKMEIFYOUCAN! (16 bytes)
    byte[] mifareULCDefaultKey = { (byte) 0x49, (byte) 0x45,
            (byte) 0x4D, (byte) 0x4B, (byte) 0x41, (byte) 0x45,
            (byte) 0x52, (byte) 0x42, (byte) 0x21, (byte) 0x4E,
            (byte) 0x41, (byte) 0x43, (byte) 0x55, (byte) 0x4F,
            (byte) 0x59, (byte) 0x46 };

详细说明,我得到以下结果:

第一验证命令:1A00

第1认证命令的响应:AFCCF489BFB7B98605

ek(RndB):CCF489BFB7B98605

IV 1:0000000000000000

RndB:6183511C5B7EF046

RndA:6E262630E299F94F

RndB':83511C5B7EF04661

RndA || RndB':6E262630E299F94F83511C5B7EF04661

IV 2:CCF489BFB7B98605

ek(RndA || RndB'):AB7AF6C6E76675F52B9FF40021A8E2D6

第二验证命令:AFAB7AF6C6E76675F52B9FF40021A8E2D6

但是在发送第二个认证命令后,我仍然遇到“Transceive failed”IOException。 在发送第二个验证命令之前,我确定标签仍然连接。

我在这个问题上花费了8个多小时,但仍然无法继续前进。 有人可以帮忙吗?

我有同样的问题。 问题是您使用错误的Diversified Key进行身份验证。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM