Randomness
帶有隨機密碼學的雜湊如何工作?
我是這個密碼學世界的新手,在閱讀一些文章時,我陷入了一些我沒有正確理解的東西:基於隨機密碼學的雜湊的使用。
據我所知,當我使用任何需要身份驗證的程序時,該程序使用雜湊將密碼保存到數據庫中,然後當使用者嘗試訪問該程序時,它會獲取使用者插入某個文本框中的密碼,使用與保存密碼相同的加密技術,並將插入結果與保存在數據庫中的結果進行比較。
如果密碼學是隨機的,這怎麼可能呢?
就像我在評論中所說的那樣,我認為您的意思是用隨機鹽散列密碼。鹽是一個隨機字元串。最好超過 128 個字元。
通常,攻擊者使用彩虹表來破解雜湊。彩虹表幾乎是所有可能的字元串及其屬性的列表。每天,強大的電腦都會向這些表格添加更多的字元串。目前,每個 8 個或更少字元的密碼都可以在幾秒鐘內被破解。
假設 Alice 想登錄“Bob Bank”的網站。她的瀏覽器從文本框中獲取她的六個字母密碼,對其進行雜湊處理並將其發送到伺服器。邪惡的 Edvard 攔截了這些密碼,並在幾秒鐘內找到了密碼。聽起來不太好。
用鹽情況看起來更好。Alice 在開戶時,銀行已分配了一個 128 字元長的字元串。銀行伺服器將此字元串發送到瀏覽器。邪惡的愛德華看得出來。Alices 瀏覽器將此字元串添加到密碼中,然後對其進行雜湊處理。但是現在雜湊不是 6 個字元的密碼,而是 134 個。Edvards 彩虹表沒用。他必須製造新的。這個過程可能需要幾個月的時間。
如果另一個使用者也使用相同的密碼,他的鹽仍然會不同,Edvard 獲得的雜湊也會不同。他必須計算彩虹表