Encryption

重複使用相同密碼對 WinRAR 卷的攻擊?

  • September 18, 2015

我有很多 WinRAR 卷都使用相同的密碼加密。密碼很長且不可破解,但我最近讀到 WinRAR 使用 PBDKF2 作為其密鑰派生函式,而不是像 TrueCrypt 那樣每次都生成一個新的捲密鑰,這意味著本質上所有這些卷都具有相同的 256 位密鑰。

這是否意味著如果攻擊者掌握了這些卷,他們可以使用類似於嬰兒床拖動的技術來提取主密碼?此外,這些攻擊是否實用(即是否有發布此類攻擊的成功案例)?我嘗試在 Google 上搜尋,但沒有找到與我想要的內容相近的東西。

RAR5 存檔格式在 CBC 模式下使用 AES 加密文件數據,並使用 PBDKF2-HMAC-SHA256 生成 256 位密鑰(預設為 32768 次迭代?)。

如果攻擊者能夠查看許多使用相同密鑰以這種方式加密的文件,則攻擊是從密文中恢復密鑰。這不是一件容易的事,即使 IV 被重複使用。在 WinRAR 中,IV 應該是偽隨機的,防止相同(或相似)明文生成相同的密文塊。

此外,在密鑰生成期間提供了一個 128 位的鹽,這應防止生成的密鑰對於 2 個不同的存檔相同,即使密碼相同。為了解密,鹽是從存檔頭中提取的。

雖然我找不到任何文件明確說明鹽和 IV 是偽隨機的,但我認為它是,這意味著對於給定的文件/密碼組合,存檔密文相同的機會接近 0。

RARLAB 澄清它們的確切生成方式將有所幫助。在 Windows UnRAR 實用程序中,從 CryptGenRandom 回退到使用系統時間生成隨機字節,這在存檔創建期間是不可接受的,但在解壓縮期間無論出於何種原因可能是合理的。密碼數據在記憶體中加密並使用適當的方法清除。我也很好奇為什麼文件記錄頭中有一個單獨的鹽值,因為存檔頭中的鹽值應該用於 KDF。

引用自:https://crypto.stackexchange.com/questions/29230