我需要一个适合 24 位字的短字符串(比如 16 到 256 字节)的校验和/指纹函数。有什么众所周知的算法吗?
问问题
800 次
2 回答
2
我建议使用 24 位 CRC 作为简单的解决方案。CRC 有各种长度,并且总是易于计算。维基百科有一个匹配的条目。质量远好于模减少和,因为交换字符很可能会产生不同的 CRC。
下一步(如果具有相同校验和的错误字符串是真正的威胁)将是像 CMAC 这样的加密 MAC。虽然这本书太长了,但可以通过取前 24 位来减少它。
于 2012-07-10T09:29:44.913 回答
-1
最简单的事情是一个基本的校验和 - 将字符串中的字节相加,mod (2^24)。
但是,在转换为字节时,您必须注意字符集问题,因此每个人都同意将字符编码为字节。
于 2011-11-30T19:09:14.930 回答