在TTTD分块算法中使用的哈希函数?

时间:2014-06-02 12:28:46

标签: algorithm hash

有人能告诉我在哪里可以找到TTTD(双门限二分)基于内容的分块算法的实现吗?基本上我想知道这个中使用的哈希函数?我无法在互联网上找到任何有用的链接。

1 个答案:

答案 0 :(得分:3)

TTTD chunking algorithm与基于它的基本滑动窗口分块算法一样,需要计算文件上每个 n 字节窗口的哈希值。

因此,为了获得最大性能,期望选择散列函数,该散列函数允许在窗口向前移位一个字节时有效地更新散列值。例如,如果窗口大小为8个字节,则窗口的当前内容为foobarba,下一个字节为z,我们希望能够有效地计算H(oobarbaz )基于H(foobarba)。

有几个rolling hash functions可以用于此目的,但显然通常的方法,如上面链接的TTTD文件中提到的,是Rabin fingerprinting,它基于有限域算法。我链接的维基百科页面提供了算法的简要概述,并包含其他材料的链接。