我想了解二进制哈希是什么.我的理解是,你将你的信息分成四个部分,D1-D4,然后你可以单独获得每个部分,并获得H1-H4.然后哈希H1 + H2和H3 + H4以创建H5和H6.然后哈希H5和H6来生成最终的哈希值H.这是正确的吗?如果不是,请告诉我哪里出错了,谢谢!
看看这个描述 CRC32 的页面 -好旧的维基百科
这可能是最简单的哈希算法(当然不是最好的!),但它应该让您大致了解哈希的工作原理。
所有其他哈希算法基本上都做同样的事情,但算法要么更难逆转(sha256 等),要么给出更均匀的结果分布和更小的冲突可能性(perlhash 等)。
哪个最好取决于您想要哈希的目的:
这是一篇优秀的文章,描述了 Perl 编程语言bob burtle's hash使用的哈希函数