Hans Peter Luhn发明了哈希。他是 IBM 的一名尽职尽责的科学家,研究计算机科学和信息科学领域。他贡献了一种更著名的算法——Luhn 算法。 Luhn 出生在德国,但战后他不得不搬到美国,因为他在纺织领域工作。在纺织领域,他发明了仍在使用的 Lunometer。光度计是一种线程计数设备。
1941 年,他决定加入 IBM,担任高级研究工程师。他很快就得到了经理的职位,并领导了信息检索研究部。 James Perry 和 Malcolm Dyson 于 1947 年给 IBM 的这个部门带来了一个问题。挑战是搜索以编码形式存储的化合物。这是 Luhn 第一次被引入信息和文献科学的实验领域。他曾经提供解决方案,但当时可用的机器也有其局限性。然后他不得不寻找新的方法来克服这些限制。
1950 年代到来了,这是“计算机时代”。 Luhn 已经开始在信息检索系统的挑战上花费大量时间。 1953 年,Luhn 有了将所有信息放入一个桶中的想法。他预测这将使搜索速度更快。这些信息可以由数字和文本组成。 Luhn 的发明被下一代科学家进一步塑造和修改。哈希算法在今天已经变得必不可少,尤其是在密码学、云服务、文本工具、数据密集型研究等领域。 Luhn 的另外两个伟大发明是 KWIC 和 SDI 系统。
散列的重要性
- 与任何其他数据结构相比,散列提供了一种更安全、更可调整的数据检索方法。它比搜索列表和数组更快。在这个范围内,Hashing 可以恢复 1.5 探针中的数据,任何保存在树中的数据。与其他数据结构不同,散列不定义速度。散列时必须保持时间和空间之间的平衡。有两种方法可以保持这种平衡。
- 通过选择要为哈希表分配的空间来控制速度
- 通过选择恢复速度来控制空间
- 散列密码不能被修改、窃取或危害。不存在可被滥用的公认且有效的密钥或加密方案。此外,无需担心哈希码是否被盗,因为它无法应用于其他任何地方。
- 可以通过散列轻松比较两个文件的相等性。无需单独打开这两个文档。散列逐字比较它们,计算出的散列值会立即告诉它们是否不同。此优势可用于在文件转移到新位置后对其进行验证。它是 SyncBack 的一个例子,它是一个文件备份程序。