據我所知,SHA1()是不安全的,但我的客戶的網站使用這樣的哈希密碼:使用與鹽SHA1()安全嗎?
$salt = '123abckkk';
$hash = sha1($salt.$password);
現在我猜,如果有人闖入數據庫竊取的哈希值,那麼他們將不能夠破解他們,因爲沒有一個哈希將有來自常用詞,因爲他們有「123abckkk」在這混了。
不知道這是如何工作的,但如果這是不是一種安全的方法,那麼請告訴我爲什麼。
據我所知,SHA1()是不安全的,但我的客戶的網站使用這樣的哈希密碼:使用與鹽SHA1()安全嗎?
$salt = '123abckkk';
$hash = sha1($salt.$password);
現在我猜,如果有人闖入數據庫竊取的哈希值,那麼他們將不能夠破解他們,因爲沒有一個哈希將有來自常用詞,因爲他們有「123abckkk」在這混了。
不知道這是如何工作的,但如果這是不是一種安全的方法,那麼請告訴我爲什麼。
You should not use md5
or sha1
to hash passwords,改用password_hash
。
哈希值應該是隨機的,而不是一組字符串,如123abckkk
。
鹽應該是唯一的,但不一定是隨機的。 – Gumbo
是的。鹽可能會順序進入。如'aa','ab','ac'等 –
鹽需要是隨機的。 –
那麼你是說攻擊者會弄清楚鹽分,並且能夠將密碼中的鹽分開? –
另外閱讀[爲什麼常見的散列函數,如md5()和sha1()不適合密碼?](http://www.php.net/manual/en/faq.passwords.php#faq.passwords.fasthash ) –