回答

3

號哈希是單向函數。您可以輸入密碼brute-force,直到您猜出正確的密碼,但您無法解密它們。

+1

Alex W是正確的。使用哈希密碼和salt,確認給定的密碼是否正確。但是,您不能(輕易地)弄清楚原始密碼是什麼,只有哈希密碼和salt。 – mti2935

+0

謝謝你們。 – NoviceDeveloper

+0

@NoviceDeveloper - 正如Alex所說,你不能解密一個散列,但是你可以用通用硬件每秒鐘對[3千兆](http://hashcat.net/oclhashcat/#performance)SHA1哈希進行蠻力操作。這意味着SHA *不適合散列密碼,而應該使用慢密鑰派生函數,如BCrypt或PBKDF2。 – martinstoeckli

1

簡短的回答是沒有。 SHA1是單向散列算法。理論上你可以找到其他也產生相同散列(衝突)的單詞,但是這會花費大量的時間和計算資源。

+1

對於那些好奇的碰撞,你可以看到[這個答案](http://stackoverflow.com/questions/1867191/probability-of-sha1-collisions)關於它們的概率。 –

+0

感謝您的信息。 – NoviceDeveloper