Passwords
7zip 的 KDF 不使用任何鹽是真的嗎?
此問題聲稱 7zip 的密鑰派生函式不使用任何鹽:https ://github.com/magnumripper/JohnTheRipper/issues/1679
如果這是真的,那是不是意味著您可以以很少的額外成本破解多個 7z 文件?
從查看原始碼或 7zip 來看似乎是這樣。正如 SEJPM 的連結所示,該格式有一個鹽的位置。它在密鑰之前混合到自製的迭代 SHA-256 雜湊中。7zip 解碼器甚至似乎支持鹽。但是,編碼器從不使用鹽。
奇怪的是,甚至還有生成隨機 4 字節鹽的程式碼,但它被註釋掉了。至少在最新版本的程式碼中:我不知道以前的版本是否啟用了它。
例如,下面是編碼器的鹽生成部分(來自 7zAes.cpp)。呼叫它的程式碼也已在各個地方註釋掉。
/* STDMETHODIMP CEncoder::ResetSalt() { _key.SaltSize = 4; g_RandomGenerator.Generate(_key.Salt, _key.SaltSize); return S_OK; } */