目前,我正在使用我在網上找到的代碼加密輸入數據庫的數據,並作爲該主題的介紹。我的問題來自兩篇WikiHow文章(特別是這些文章):一篇關於login加密;另一個在session security。兩篇文章看起來相當不錯;然而,這兩者之間存在一個關鍵的區別:前者聲明所用的hasing算法的JavaScript定義($password = hash('sha512', $password . $salt)
是PHP所必需的,它本身可以工作)在變量上使用加密(哈希算法)
即使包含PHP hash()
方法在這兩篇文章),第一狀態的筆者,'sha512'
加密本身必須是外部使用另一種語言(筆者提出的JavaScript)來定義。
從閱讀PHP文檔,我的印象是hash()
能處理由標識符識別的一系列預定義哈希算法,例如whirpool
,sha512
等。這些PHP標識符可以通過hash_algos()
獲取(或者您可以閱讀文檔)。
我錯在認爲特定的預定義散列算法的外部定義是不必要的?
散列在Javascript是唯一真正企圖在通過不安全的HTTP協議傳輸之前保護密碼。密碼實際上只能通過HTTPS發送。 – Jonathon 2014-10-17 13:53:49
@Jonathon這就是我的想法。所以,真的,JavaScript需要的唯一原因是轉移不安全? – Thomas 2014-10-17 14:07:22
有點咆哮,但他讓公平點> http://matasano.com/articles/javascript-cryptography/ – Dennis 2014-10-17 14:07:40