web-dev-qa-db-ja.com

辞書攻撃でダイスウェアのパスフレーズを解読できますか?

誰もが Diceware パスワードで使用されている単語を知っています(すべての6 ^ 5 = 7776の単語は published )-それらはすべて一般的な単語です。 「辞書攻撃」は単一の辞書単語を迅速に推測できるため、パスワードに辞書単語を使用することは想定されていないことを誰もが知っているようです。したがって、辞書攻撃もダイスウェアのパスフレーズをかなり迅速に推測できるという結論に飛ぶのは理にかなっているようです。

現在実装されている辞書攻撃(2012)は、2033年以前にDicewareパスフレーズをクラックできますか?

特に、Dicewareページの主張は、「7ワードのパスフレーズは、2033年までパスフレーズへの攻撃を実行不可能にするものと考えられています。」です。正確?

攻撃者が私が常にDicewareパスフレーズを使用していることを知っていて、どの言語を使用しているのか知っていても、それは本当ですか?

5ワードのダイスウェアパスフレーズは、9つの「完全にランダムに見える意味不明な」文字の一般的な推奨とどのように比較されますか?

(関連する質問 パスフレーズ-小文字と辞書の単語 および XKCD#936:短い複雑なパスワード、または長い辞書のパスフレーズなので、私はDicewareページの推奨事項について非常に具体的な質問をしています。 ? は、実際にはDicewareパスフレーズではないものに追い込まれているようです)。

31
David Cary

5ダイスウェアワード= 77765 = 28430288029929701376考えられる等確率パスフレーズ。

9つのランダムな文字= 949 = 572994802228616704考えられる同等確率のパスワード。

5つのDiceware単語は、9つのランダムな文字より49.617倍優れています。一方、ランダムな10文字は、5つのDicewareの単語のほぼ2倍になります(ただし、Dicewareの単語の方が覚えやすいでしょう)。 (私はあなたの「意味不明な文字」はASCIIスペースを除いた印刷可能な文字であると想定しています。)

7ワードの場合、可能なパスフレーズと可能性のあるパスフレーズの数は2より少し多い90、それは確かにかなり高いです。採用されているパスワードハッシュスキームがひどくおかしくなっている(塩分がない、単純なハッシュ)場合でも、これは現在のテクノロジーで実行できる許容範囲を超えています。

重要な言葉はequiprobableです。これにより、上記の分析が可能かつ正確になります。これは、Dicewareの単語と9つの「ランダムに見える意味不明な文字」の両方が、サイコロなどの真にランダムな均一なプロセスで選択されていることを前提としています。そしてまったくない脳のプライバシーの中にいる人間によって、彼は純粋な思考からランダムな選択を行うことができると想像します(さらに悪いことに、機知に富んだ非ランダムな選択)。人間は無作為にひどいだけです。

37
Thomas Pornin

Dicewareのセキュリティを納得させる最も簡単な方法は、辞書にこだわらないで、代わりにdice rollsに集中することだと思います。この観点から見たダイスウェアの考え方は次のとおりです。

  • n-Word Dicewareパスフレーズを解読できるアルゴリズムがある場合、同じアルゴリズムを簡単に適合させて、ユーザーのn×5連続したサイコロが同じ時間にロールします。どうして?なぜなら、ダイスウェアのパスフレーズは、実際にはそれらのサイコロの出目を表すニーモニックにすぎないからです。彼らのパスフレーズをうまく推測できた場合、公開辞書を使用すると、彼らが何を転がしたかを推測できます。
  • 逆も当てはまります。ダイスロール推測アルゴリズムは、ダイスウェアのパスフレーズをクラックする場合にも同様に機能します。ユーザーのサイコロが振れると推測できる場合、公開辞書は、ユーザーのパスフレーズも推測できることを意味します。

したがって、n-Word Dicewareパスフレーズの解読は正確にn×5連続したサイコロの出目を推測するのと同じくらい難しい。そしてこれは、すでにをかなり知っている攻撃者を想定しています:

  1. パスフレーズがDicewareで生成されたこと。
  2. 使用された正確な辞書。
  3. パスフレーズの正確な単語数。

では、サイコロの目を推測するのはどれほど難しいのでしょうか。まあ、サイコロのシーケンスを予測するための賢い方法はありません。なぜなら、サイコロが一様にランダムだからです。可能なすべての結果が等しく可能性があります。だからあなたができることはすべての組み合わせを試すことだけです。また、推測の順序をいじってみると(人間が選択したパスワードを推測するときに効果的です)、サイコロの振る舞いが早い段階で成功する可能性は高くなりません。

または、言い換えると、辞書攻撃は人間が選択したパスワードに対して機能します。これは、より可能性が高いパスワードがよりも優先されるためです可能性が高いもので、正しい推測に到達するまでの平均時間を短縮します。しかし、すべてのパスワードが等しく可能性がある場合(Dicewareが保証するように)、辞書攻撃はまったく役に立ちません。

9
Luis Casillas

Dicewareリストは7776文字のリストと考えてください。 7776文字または94文字のリストから選択しますか? (94は、一般的なキーボードの文字数です。)

あなたが文字の長いリストでダイスウェアのリストについて考えるとき、ダイスウェアの言葉が提供する長さは打ち負かすのが難しいシステムです。コンピュータがより強力に、より速くなるにつれて、1つか2つの単語を追加するだけです。

2