1. 哈希函数名词解释
哈希函数名词解释是一种将任意长度的输入消息压缩成某一固定长度的消息摘要的函数。
哈希函数的特点:
1、免碰撞
即不会出现输入xfy,但是H(X)=H(y)的情况,其实这个特点在理论上并不成立,比如目前比特币使用的SHA256算法,会有2^256种输出,如果进行2256+1次输入,那么必然会产生一次碰撞。
事实上,通过理论证明,通过2^130次输入就会有99%的可能性发生一次碰撞,不过即使如此,即便是人类制造的所有计算机自宇宙诞生开始一直运算到今天,发生一次碰撞的几率也是极其微小的。
2、隐匿性
也就是说,对于一个给定的输出结果H(X),想要逆推出输入,在计算上是不可能的,如果想要得到H(x)的可能的原输入,不存在比穷举更好的方法。hash算法的原理是试图将一个空间的数据集映射到另外一个空间(通常比原空间要小)。
并利用质数将数据集能够均匀的映射。目前主流的hash算法有md4、md5、sha系列。