例如,在Wikipedia中,“一致性哈希”和“完美哈希函数”单击“哈希”,然后直接指向“哈希函数”的链接,因此看起来它们具有相同的含义,但是为什么又存在另一个含义?使用“哈希”或“哈希函数”时有什么区别吗?可以将“一致哈希”称为“一致哈希函数”吗?谢谢!
答案 0 :(得分:0)
您可以编写哈希函数,其作用是将密钥哈希到容器。
换句话说,哈希函数正在执行哈希。
我希望可以澄清这一点。
答案 1 :(得分:0)
哈希表是一种数据结构,其中给定值与特定键进行映射,以更快地访问元素。 -填充此数据结构的过程称为哈希。
要进行哈希处理,您需要一个函数,该函数将提供用于将值映射到键的逻辑。此功能是哈希函数
我希望这可以澄清您的疑问。
答案 2 :(得分:0)
哈希函数获取一些输入数据(通常是一堆二进制字节,但是可以是任何东西,无论您要写什么),并计算哈希值,通常是整数(但可以是任意数)。进行此操作的过程称为哈希。
无论输入看起来如何,哈希值的大小始终相同。好吧,我想您可以冷作一个具有可变大小输出的哈希函数,但是我还没见过一个。这不是很实用。因此,就其本质而言,哈希通常是单向计算。通常,您无法从哈希值取回原始数据,因为可能的输入数据组合比可能的哈希值还要多。
主要优点是:
如果您具有加密哈希函数,那么您还将获得另一个优势:
哈希函数的结果可以多种方式使用。如其他答案所述,哈希表是一种常见的用例。验证数据完整性是另一种情况-例如,您下载文件,然后对其进行哈希处理,然后将哈希值与从中下载文件的网页中指定的值进行比较。如果不匹配,则文件下载不正确。如果将哈希值与公钥密码术结合使用,则可以获得数字签名。而且我敢肯定,该原则还有其他用途。