将 EM4x02 ID 转换为 Hitag2 值

Convert EM4x02 ID to Hitag2 Value

我一直致力于一个 RFID 项目,以生产我们自己的 RFID 卡,以在我们现有的时钟和阅读器上工作。

我已经完成了大部分工作,并且已经能够使用另一张卡的第 4 页和第 5 页的值成功写入 Hitag2 卡(因此基本上是复制卡)然后更改配置位,这使得它就像一个 EM4x02,允许我们的读者阅读它。

我正在努力解决的问题是尝试将 page4/5 上的十六进制代码与您作为 EM4x 扫描时获得的输出相关联..

第 4/5 页的 hitag 值为 FF800000/003EDF10。当作为 EM4x 读取时,这将转换为 0000001EBC。

有人知道这个翻译是如何完成的吗?我试过使用 RFIDIOT 中的方法,但这似乎对此不起作用。

在找到 1999 年的 hitag2 数据表(我能找到的唯一一个解释了 hitag 处于 public 模式 A 时的位)后,我设法找到了这是如何完成的)

首先将EM4卡上你想要的数字转换成十六进制。

将十六进制转换为二进制。

将二进制文件分成4位块,然后计算出每个部分的偶校验并将其添加到每个块的末尾。 (所以你最终会得到每个块 5 位)

然后,计算出数据中每一列的偶校验(即所有块的第一个字符,然后是第二个字符等等。但忽略您添加的奇偶校验位)并将这 4 个字节添加到二进制字符串中。

然后在开头添加正确数量的零以确保数据部分有 50 位。

对数据部分进行排序后,将 9 位的 1 添加到二进制文件的开头 (header),并将最后的 0 添加到二进制文件的末尾。

你的整个二进制字符串应该是 64 位长。

将其转换为十六进制并将其分成两半。然后您可以将这些写到 Hitag2 卡的第 4/5 页。

然后您需要将配置位更改为 0x02,以便标签在 public 模式 a 下工作。

只是想我会把它的工作原理图发给你。Em4X tag data