假设我有一个包含 n 个某种类型(例如长度可变的二进制数据文件)对象(x1、x2、...,xn)的有序列表。
每个对象都被安全哈希(例如 SHA1)以生成一个 m 位哈希码(h1、h2、...,hn)。
现在,我希望将这些哈希码组合成一个复合码,以唯一且安全地(忽略可忽略的碰撞概率)识别有序列表。
(假设对象很大,无法再次读取它们的实际数据)
一种天真和不正确的方法是将哈希码进行XOR运算。这样做的不良后果是(x1、x2)与(x2、x1)将具有相同的复合码。
有没有哪种算法可以将哈希码组合起来以满足所需的属性呢?
每个对象都被安全哈希(例如 SHA1)以生成一个 m 位哈希码(h1、h2、...,hn)。
现在,我希望将这些哈希码组合成一个复合码,以唯一且安全地(忽略可忽略的碰撞概率)识别有序列表。
(假设对象很大,无法再次读取它们的实际数据)
一种天真和不正确的方法是将哈希码进行XOR运算。这样做的不良后果是(x1、x2)与(x2、x1)将具有相同的复合码。
有没有哪种算法可以将哈希码组合起来以满足所需的属性呢?