Authentication
客戶端密碼拉伸 - 鹽公開的危險?
如果使用客戶端密碼拉伸(加上伺服器上的單個雜湊) - 當然,伺服器需要在身份驗證之前發送鹽。
雖然鹽不被認為是真正的“秘密”,但公開鹽是否是拒絕這種方法的認真考慮(即客戶端密碼拉伸)?
這個答案(有超過 600 個贊成票)說保密很重要。我知道很難衡量某件事的重要性,但如果你能給我一些想法,那會很有幫助。在客戶端這樣做的原因是為了減輕 DDOS 攻擊。
雖然鹽不被認為是真正的“秘密”,但公開鹽是否是拒絕這種方法的認真考慮(即客戶端密碼拉伸)?
是的,salt 最好保密,但是攻擊者即使知道破壞前的salt,仍然必須執行完整的離線暴力搜尋,只是這個搜尋可以在破壞之前進行然後在違反之後,查找只需要對每個條目進行對數工作。如果他們不了解鹽,那麼暴力破解開始的“計時器”就會被推回到數據庫洩漏的地方。
現在這種精確的攻擊,在實際違規之前預先計算基於真實鹽的密碼雜湊的能力是OPAQUE的部分原因,目前最先進的非對稱密碼認證密鑰交換(aPAKE) 存在,因為以前沒有aPAKE 防禦過這種攻擊。
所以 TL;DR:隱藏鹽更好,但實際上這樣做可能被認為工作量太大,如果鹽洩漏,這不是世界末日。