1 个不稳定版本
0.0.1 | 2021年4月21日 |
---|
#28 在 #rolling
用于 fixity
13KB
176 行
fbuzhash
**注意:此软件包是 https://github.com/silvasur/buzhash 的移植版,并将专注于子集的奇偶性和正确性。我期望添加的唯一内容是一些黄金主测试,以确保移植代码的奇偶性。其他内容都不在范围内。
包 buzhash 实现了使用此定义的 buzhash 算法 http://en.wikipedia.org/wiki/Rolling_hash#Cyclic_polynomial。
滚动哈希
Buzhash 是一个滚动哈希函数,这意味着当前哈希值是最后 n 个消费字节的和。
示例
- 消息 1:
This is a stupid example text to demonstrate buzhash.
- 消息 2:
Another text to demonstrate buzhash.
当使用 n=16 的 buzhasher 对这两个消息进行哈希处理时,两个消息将具有相同的哈希值,因为最后 16 个字符 (nstrate buzhash.
) 是相同的。
这在搜索大型文件中的数据片段时很有用,不知道片段的内容(只知道其哈希值)。这在二进制差异工具中得到了应用,例如 rdiff
(尽管它们使用不同的滚动哈希函数)。
依赖项
~87KB