web-dev-qa-db-ja.com

256ビット暗号化でアーカイブを総当たりにする確率はどのくらいですか?

ファイルがあります(スタンドアロンアーカイブ)。パスワードを忘れましたが、256ビットの暗号化を使用して暗号化されています。パスワードは、20奇数文字(英数字以外の文字を含む)です。

ブルートフォースができる確率はどのくらいですか?

問題のアーカイブはWinAceで作成され、あいまいな拡張機能*.xef。ただし、一般的な回答も歓迎します。

5
Count Zero

ブルートフォーシングは、「ゆっくりと機知に富んだゴリラのすべての繊細さでシステムを攻撃する」ことを意味します。ここでは、「20奇数文字」の可能なすべてのパスワードを試すことを意味します。英数字(小文字26文字、大文字26文字、および10桁)に制限したとしても、62です。20 可能性、つまり2に近い119。それから、それはそれぞれの試行のコストに依存します。システムで使用されているパスワード導出スキームが適切であれば、一方向関数のネストされた呼び出しが多数使用されます。つまり、1回の試行で、たとえば10億クロックサイクルが必要になります。パスワード導出スキームが悪い場合、それはより少なく、おそらく数十サイクルまで必要になります(AES暗号化と最近のIntelプロセッサーによって提供されるハードウェアサポートを使用)。プロセッサが3 GHzで動作し、4つのコアを備えているとすると、たとえば、最大2つまで試してみるとよいでしょう。30 1秒あたりのパスワード(ただし、現実的にはそうしません)。したがって、ほんの数百億の数十億年で完了します。

それに直面しよう:あなたの本名がBarack Obamaであっても、2119 リーグをはるかに上回っています。

したがって、あなたの最善のチャンスはnon-brutal攻撃を行うことです:最初に、yoが選択できる可能性のあるパスワードのリストを確立しようとします(おそらく大きなリスト)数千または数百万のパスワードを含むが、2は含まない119)。

11
Thomas Pornin

総当たり攻撃を行う場合、3つのことが重要になります。

  1. 1つのキーのテストに必要な時間。
  2. キースペースのサイズ。
  3. キーをテストする順序。

WinAce FAQは 160bit Blowfish を使用することを示唆しているようです。Blowfishのキー設定は遅いため、Blowfishで暗号化されたものを総当りで強制すると、単純に暗号化するよりも遅くなります残念ながら、マシンで1秒間にチェックできるキーの数を推測することはできません。

キースペースのサイズはいくつかの要因に依存します。あなたはパスワードが20奇数文字で記号を含んでいることを知っています。これは最初は悪いように聞こえますが、20文字未満のパスワードは無視でき、20文字を超えるパスワードは無視できます。数字のみまたは文字のみを含むパスワードを無視することもできます。これはキースペースをsmallにするつもりはありませんが、追加の情報を知らなかった場合よりも、確かにかなり小さくなります。パスワードについて。残念ながら、キースペースのサイズに関しては、パスワードの長さが非常に長い時間で複雑さを上回っています。このパスワードに数字のみを使用した場合でも、キースペースは20文字で、数字、記号、大文字と小文字の両方を使用した10文字のパスワードとほぼ同じサイズになります。

キーをテストする順序が最も重要な部分です。最初に正しいキーを確認すると、ブルートフォース攻撃の試行には数ミリ秒かかります。チェックする予定の最後のキーが正しいキーである場合、数千年かかります。正しいキーをチェックするキーの先頭に近づける方法はどれも価値があります。

もしあなたが考えるパスワードについて何か知っているなら、それらを最初に移動するためにパスワードを試す順序を変更すると、クラッキングが速くなる可能性があります。 'e'をタイプするという漠然とした記憶、または末尾近くに '0'があったという記憶がすべての違いを生む可能性があります。

データ復旧会社が行うことは、ハードドライブ全体をスキャンし、見つかったすべてのASCII文字列を使用して、最初にファイルをクラックするために使用する辞書を作成することです。キー管理を正しく行うことは困難であり、問​​題のパスワードがハードドライブ上にある時点で存在する可能性はほとんどありません。これはおそらく数日しかかからず、非常に価値があります。

1秒あたり10億回の試行(非現実的)が可能で、正確に20文字の長さのパスワードのみを含めることができると想定して、キースペースサイズ全体を使い尽くすのにかかる時間を簡単に計算しましたが、残念ながら私はしませんt私が思いついた年数のSI接頭辞さえ知っています。ハードドライブ文字列のアイデアが機能しない場合は、最初からファイルを再作成する方が早くて簡単だと思います。

4
Ladadadada

有利に使用できるパスワードについて特定の知識がない場合、または使用した暗号化システムに特定の弱点がある場合を除き、運が悪かったと思います:-)

大文字と小文字を使用した場合、数字と非英字では、パスワードに70の使用可能な文字が使用されていると想定できます。次に、パスワードには約8e36である70 ^ 20の可能な順列があります。

リグが毎秒100億の順列をチャーンできると仮定すると(i5で実行できるよりもはるかに多い)、順列の完全なセットを使い果たすのにかかる時間は2.5e19年であり、これは時間よりも約50億倍長い太陽が私たちの太陽系を消費するまで。

3
Versile