这是对此答案的跟进。
答案非常好,它让我思考和做一些研究。我在这个网站上找到了另一个很好的解释。
在某些时候,作者说:
如果明文集是 [0123456789]{6}(我们想要一个包含所有长度为 6 的数字密码的彩虹表),并且散列函数是 MD5(),那么明文的散列可能是 MD5("493823") - > “222f00dc4b7f9131c89cff641d1a8c50”。在这种情况下,归约函数 R() 可能就像从哈希中获取前六个数字一样简单;R(“222f00dc4b7f9131c89cff641d1a8c50”)->“222004”。我们现在已经从前一个明文的哈希中生成了另一个明文,这就是归约函数的目的。
但是,我似乎没有掌握减少的用途,因为它看起来很随意。将哈希减少到它的第一个数字如何帮助检索明文。减少的选择(即选择散列的前几个数字)真的是任意的吗?我可以不使用前六个数字,而是使用后六个数字吗?