我已经从亚马逊购买了一些MIFARE Ultralight贴纸。他们所有人的页面3都设置为E1 10 6D 00
我的理解是,我现在无法设置已经设置的这10位,所以现在只有22位可以在OTP页面中有效使用。实际上,我尝试将其设置为0,但是没有用(这是有道理的,因为文档指出它们将在编写之前进行“或”运算。)
碰巧对我来说,使用它们的用途并不重要,但我想至少在Amazon评论中指出这一点,以供其他可能要使用OTP页面并购买的人使用从这个卖家那里。
我是NFC的新手,所以不确定会发生什么,但是我觉得自己已经卖到了达芙产品。您可以确认我希望第3页为00 00 00 00
吗?
答案 0 :(得分:0)
这在很大程度上取决于您要购买的商品和实际收到的商品。
如果您以“ MIFARE Ultralight”标签的形式购买了这些标签,则通常会期望OTP区域处于出厂状态(即全零)。
但是,如果您以 NFC 标签(或NFC论坛2类标签或NTAG)的形式购买它们,则OTP区域的初始内容在某种程度上是有意义的。您在OTP区域中找到的值是“功能容器”,它表示该标签是根据NFC论坛2类标签规范进行格式化的(即已预先格式化为NFC标签)。通常,还会有一些数据已写入下一页(在您的情况下可能是03 00 FE 00
)。 NFC(论坛)标签不会将OTP区域用作单向计数器,因此,将它们设置并用作功能容器没有问题。
我所描述的内存内容出现的问题是功能容器中指示的数据区域大小。 0x6D表示872个字节的数据存储器。如果该标签不是MIFARE Ultralight标签,而是NTAG216,它具有完全可用的数据存储量,并且始终处于这种预格式化状态,则很好。
但是,如果标签实际上是MIFARE Ultralight标签(芯片MF0ICU1),则此功能容器将指定比标签实际更多的数据存储空间。这将导致该标签无法用于正确的NDEF消息处理,并且由于无法清除OTP位,因此无法将指示的大小更改为实际可用的值(48字节= 0x06)。
注意:根据OP的评论,这些标签确实是NTAG216(可从www.amazon.co.uk/gp/product/B075RXBVKM购买)。因此,内存内容非常好。