2012-06-17 39 views
1

什麼是登錄用戶的最佳方式:用JavaScript獲取密碼的哈希值,然後將其發送到服務器

1)獲取使用javascript密碼的第一個散列值,將其發送到服務器和然後將它與存儲在數據庫中的散列進行比較。

2)以純文本形式發送密碼到服務器,獲取散列,然後將其與數據庫中存儲的散列進行比較。

+0

[你試過了什麼?](http://whathaveyoutried.com) –

+0

Duplicate:http://stackoverflow.com/questions/768268/how-to-calculate-md5-hash-of-a-file-使用-javascript – craig1231

+5

如果你用你的密碼散列(如你應該),那麼你應該做哈希服務器端,否則鹽必須可以訪問您的JavaScript使它不那麼安全。你應該在所有登錄屏幕上使用SSL,以便密碼不會以純文本形式發送 –

回答

3

首先獲取密碼的哈希與JavaScript,發送到服務器,然後將其與存儲在數據庫中的哈希比較。

。如果這樣做,那麼輸入到服務器的密碼與存儲在數據庫中的密碼相同,並且它是不安全的。

以純文本形式發送密碼到服務器,獲取散列,然後將其與數據庫中存儲的散列進行比較。

否使用SSL,以便使用公鑰加密發送密碼。然後將其散列在服務器上(使用salt)並將其與數據庫中的密碼進行比較。

+0

什麼是不使用SSL的最佳方式(我不能在簡單網站上使用SSL)? – xRobot

+0

不使用SSL的最佳方式與僅以純文本發送的密碼完全相同。 (沒有什麼會阻止你使用SSL來做簡單的網站,只是爲了el cheapo網站)。 – Quentin

+0

即使SSL不是100%安全的,結賬SSLSTRIP ... – HamZa

相關問題