我在一個項目上工作&我熱衷於保持密碼存儲安全的一開始。在想法階段,但這大概是我打算使用的。在PHP中使用多哈希
class Crypto {
public function hash1($string, $salt) {
return hash('sha512', $string . $salt);
}
public function hash2($string, $salt) {
return hash('sha512', $salt . $string);
}
public function compareToHash($string, $salt, $hash1, $hash2) {
return($this->hash1($string, $salt) === $hash1 && $this->hash2($string, $salt) === $hash2);
}
}
正如你所看到的,我試圖避免碰撞。這是一種有效的方式,它看起來非常簡單,我不知道我是否錯過了一些東西。
謝謝。
「避免碰撞」是什麼意思? – Baba
在兩個單獨的字符串中返回相同的散列 – CDCM
SHA521中'碰撞'的可能性是'2^256'你認爲你可以在你的密碼哈希中擊敗? – Baba