10

パスワードで保護されたファイルのパスワード回復がどのように機能するかについて興味があります。And I want to know the exact flow of the 7-zip encryption mechanism.

7-zipファイルまたはフォルダーを暗号化するために、CBC モードで AES-256 暗号化アルゴリズムを使用します。キーは、SHA-256 ハッシュ関数に基づいて、ユーザーが指定したパスフレーズから生成されます。SHA-256 は 2 19 (524,288) 回実行され、網羅的な検索のコストが増加します。また、辞書攻撃のリスクを軽減するために、ハッシュを生成する前に元のパスフレーズにソルトが追加されます。

私の最初の質問はhow does key_derivation function work to generate a 256-bit key?AES CBC モードの IV の重要性とその生成方法は?

2 つ目most important questionは、7-zip アーカイブを復号化するためにキーを検証する方法です。つまり、key_verification 関数はどのように機能するのでしょうか?

4

1 に答える 1

5

キー派生関数は file のソースにあり7zAes.cpp、次のように呼ばれます。

void CKeyInfo::CalculateDigest()

そして、独自の(かなり鈍い)メカニズムを使用してキーを作成します。

key_verificationメソッドが存在する場合、まだメソッドを見つけることができませんでした。見つけたらお知らせします。

于 2012-09-18T08:47:10.430 に答える