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系列。