Cryptography 96位输出哈希函数

Cryptography 96位输出哈希函数,cryptography,rfid,Cryptography,Rfid,我试图对EPC Gen 2 RFID标签的内容进行加密,但大多数常见的哈希函数占用的空间远远大于我的可用空间(数据库中的96位)。有没有现成的库或映射到此空间的好方法?您可以选择任何输出大于96位的哈希算法,并且只使用结果的96位。只需确保您的一致性,例如,始终使用最少的符号96位。在走这条路之前,确保您了解所需内容的安全含义。您是要加密还是要散列?正如Reid所建议的,96位对于安全散列来说是相当短的加密。密码学中常用的方法是取最左边的位,在考虑大端数时,这将是“最重要”的位(大多数情况下用作

我试图对EPC Gen 2 RFID标签的内容进行加密,但大多数常见的哈希函数占用的空间远远大于我的可用空间(数据库中的96位)。有没有现成的库或映射到此空间的好方法?

您可以选择任何输出大于96位的哈希算法,并且只使用结果的96位。只需确保您的一致性,例如,始终使用最少的符号96位。

在走这条路之前,确保您了解所需内容的安全含义。您是要加密还是要散列?正如Reid所建议的,96位对于安全散列来说是相当短的加密。密码学中常用的方法是取最左边的位,在考虑大端数时,这将是“最重要”的位(大多数情况下用作公共端数)。当然,由于散列通常不是一个数字,所以谈论取最不重要的值是没有意义的。事实上,我可以说是“最左边的”或“最右边的”,但一致性是关键所在。任何合理的散列算法在其输出的所有比特中都有统一的熵。这是真的,但我知道的每个散列函数、每个MAC和每个KDF都使用最左边的字节,因此我强烈建议保持这种特殊的标准。@owlstead还有HOTP/TOTP,它使用随机位置。有些人喜欢不必要的复杂性…@CodesInChaos-Sheesh。如何显示你不懂密码。我一直在与协议的复杂性作斗争,我认为你的例子有助于说明你应该遵守标准,甚至是特别的标准。