Hash
在 PBKDF2 中使用相同的密鑰和鹽時是否存在已知漏洞?
為獲得最佳安全性,應為 PBKDF2 選擇隨機鹽。
我遇到了一個場景,我生成了一個隨機文件的雜湊值作為“密碼”。由於文件的性質,這與“普通”密碼具有相似的熵問題。
如果我決定也採用與鹽相同的(低熵)雜湊,現在會發生什麼?對此是否有已知的攻擊?當然,在這種情況下,鹽將被保密。但是,由於它不是完全隨機的,這是否會損害整體安全性,如果是這樣,有多嚴重?我知道例如“key as IV”會嚴重破壞某些密碼,所以我擔心它在這種情況下也會造成傷害。
使用密碼本身(或任何類似的可預測的)而不是獨立的隨機值,因為鹽否定了鹽的全部好處:
- 相同的密碼(密碼片語)現在提供相同的密鑰,而不是不同的密鑰。因此,如果兩個使用者碰巧選擇了相同的最喜歡的圖像作為他們的密碼,他們將獲得相同的密鑰,因此攻擊者可以利用這一事實更容易獲得密鑰。
- 如果攻擊者暴力破解您的“密碼”數據庫,他可以並行攻擊多個密碼,因為它們不使用不同的(獨立的)鹽。
如果您有辦法生成高質量的隨機數(每台普通個人電腦都應該如此),請生成一個隨機鹽並將其放在加密文件的開頭(如普通初始化向量)。