哈希函數是一個數學方程式,它可用文本(如電子郵件信息)來生成稱為信息摘要的代碼。著名的哈希函數如:MD4,MD5,SHS。
用於數字鑒別的哈希函數必須有特定的屬性,使它在密碼使用方面有足夠的安全性。尤其是,下面的內容一定不能被發現:
用來哈希出特定值的文本。也就是說,如果你知道信息摘要,你應該不能解出信息的內容。
用來哈希出相同值的兩個不同的信息。
如果能夠發現用來哈希出特定值的某個信息,攻擊者就能夠用假信息替代經過簽名的真信息。而有些人也能夠聲稱自己實際上簽名了哈希出相同值的一個不同的信息,以此虛假地否認這條信息。這樣就破壞了數字簽名的無法否認的屬性。
如果能夠發現用來哈希出相同值的兩個不同的信息,攻擊者就能夠給一個信息簽名,這個信息和另一個信息都可以哈希出相同值,但二者的意思卻是完全不同。