标签:#散列函数

共 5 篇文章

Identicon

Identicon是一种基于用户信息的哈希值生成图像的技术,通常使用用户登录时的IP地址作为输入值,并作为生成新建用户时的初始化头像用于保护用户隐私。其雏形是由九个方格构成的图案,现在第三方开发还有其他类型的生成模式。 起源 这个理念最早由Don Park于2007年时提出: 译文: 释出版本 最早期v0.1版本是基于服务器端的Java版本,v0.2就整理了代码,修正并完善一些功能,包括一个颜色生成漏洞,添加缓存机制,增加了一些文档,并…

SimHash

SimHash是一种局部敏感的散列算法,由Moses Charikar提出。例如,当两个字符串只有细微差别时,它们的Simhash散列值同样会非常接近,这种特征就称为局部敏感。因此,Simhash可用于检查两项内容的相似程度,如文档去重、检测垃圾邮件和近似重复内容、被Google爬虫用于查找近似重复页面等。在2021年,谷歌宣布决定在新发布的FLoC系统中使用该算法。 参考文献

散列函數

散列函数()又称-{zh-cn:散列算法、哈希函数; zh-tw:雜湊演算法}-,是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据计算成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值(又叫哈希值)(,,,或)的指纹。散列值通常用一个短的随机字母和数字组成的字符串来代表。好的散列函数在输入域中很少出现散列冲突。如果在散列表和数据处理中,不抑制冲突来区别数据,会使得数据库记录更…

Murmur哈希

MurmurHash 是一种非加密型哈希函数,适用于一般的哈希检索操作。由Austin Appleby在2008年发明, 并出现了多个变种, 都已经发布到了公有领域(public domain)。与其它流行的哈希函数相比,对于规律性较强的key,MurmurHash的随机分布特征表现更良好。 变种 当前的版本是MurmurHash3, 能够产生出32-bit或128-bit哈希值。 较早的MurmurHash2能产生32-bit或64-…

旋转哈希

旋转哈希(也称为滚动哈希、递归哈希、滚动校验和或滑动哈希)是一种哈希函数,输入的内容在一个窗口中进行移动哈希。 少数哈希函数允许快速计算滚动哈希值 — 只给出旧的哈希值,新的哈希值被快速计算出来,旧的值从窗口中移除,新的值添加到窗口中 — 类似于移動平均函数的计算方式,比其他低通滤波器更快。 主要应用之一是Rabin–Karp字符串搜索算法,该算法使用下面描述的滚动哈希。另一个流行的应用是rsync程序,它使用基于Mark Adler的…