web-dev-qa-db-ja.com

パスワード-拡張辞書と辞書攻撃

Dicewareやその他のパスフレーズジェネレーターからインスピレーションを得て、2万語の英語の単語の辞書を取り、スクリプトを使用してそれらのタイプミスを生成しました。その結果、700万の「単語」が生成され、Dicewareの12.9と比較して1単語あたり22.7ビットのエントロピーが得られました。それらのうちの5つは私の新しいマスターパスワードの一部になりました(タイプミスのない9つの単語よりも覚えやすく、わずかに弱いだけです)。 TORブリッジの背後にある設定からアイデアが得られました。これを極限まで考え、非常に大きな辞書を使用してパスフレーズジェネレーターを作成し、それが壊れないようにしました...細かい説明を読んでください。

質問を明確にするために、これが実際にどれほど効果的であるかを尋ねています。努力する価値がある場合は、友達に感染させて、正しい馬のバッテリーの定番をこれに交換させます。


アイデアは、各ユーザーがすでに大きな一般的な英語(または別の言語)の単語の辞書のコピーを個人辞書として取り、次に自分の単語を追加するというものです-珍しい単語、タイプミス、名前、他の言語の単語、短いフレーズ、数字、疑似単語、彼らが考えることができるものは何でも(それが彼ら自身の個人的な独裁者であり、それが思い出に残るものでなければ、それは彼らの責任です)。もちろん、個々のユーザーは、個人辞書のエントロピーを大幅に高めるのに十分な単語を思い付くのが難しいでしょう。そのため、辞書を友達と混ぜて大きくします。彼らの辞書に単語を追加し、私たちは彼らのいくつかを私たちの辞書に追加します。少なくとも他の人と共有するまで、多くのユーザーの辞書にある単語の大部分と一意であるいくつかの単語で、単語の希少性のスペクトルがあります。

結局のところ、これらすべての混合により、私たちは自分の個人用辞書にいくつかのエントロピーを追加することに成功したかもしれません。これは、1つの追加のDicewareWordに相当する可能性があります。しかし、標的型攻撃を見ると、少し良くなります。

  • 彼らが私たちの個人辞書を知っている場合でも、標準の辞書が含まれているので、少なくとも同等の数のDiceware単語と同じくらい強力であり、すでに安全です*。ケルコフの原則は依然として守られており、単語が追加されるにつれて、セットアップは時間とともに強くなるだけです。

  • 彼らが私たちの個人辞書を知らない場合...パスフレーズにまれな単語が1つでもあり、攻撃者が使用する辞書に含まれていない場合、彼らは私たちのパスワードを推測することはありません。これを回避するために、攻撃者は私たちの珍しい単語を含む辞書を見つけることを期待して他の人の辞書を手に入れるかもしれません。彼らはどの単語が珍しい単語であるかを知らないので、結合された辞書をフィルタリングする方法はありません。この結合された辞書には、個人辞書にない単語がさらに多く含まれ、辞書攻撃を遅くするだけです。エントロピーの推測は、パスフレーズの推測の難しさに基づいているため、この場合、個人辞書ではなく、それを解読するために必要な結合辞書の(推定)サイズに基づいており、この結合辞書ははるかに大きくなります私たちの個人辞書より。

* しかし、それがすでに安全である場合、なぜより多くのセキュリティを追加するのですか? 6、5、または4(巨大な辞書を使用)の単語を使用しながら、十分なエントロピーを確保できます。現在安全と見なされているもののしきい値以上。標準の辞書が同じサイズで、ユーザーの単語が追加されていない場合にのみ、Dicewareと同等です。


私はDicewareを参照しています。これは、最も人気のあるパスフレーズジェネレーターのようであり、少なくとも私が指摘したものです。

1
EPICI

このアプローチは、不必要な複雑さを追加します。さらに重要なことは、Dicewareスタイルのパスワードの主要な目的を無効にすることです。つまり、個々の単語を覚えておくだけで、それらについての奇妙なものは必要ありません。

まず、複雑さを説明するために、計算を行いましょう。 (提案されたパスワードスキームの場合、リスクのモデルに基づいて計算を行うと、ほとんどの答えが自動的に得られます。)

極端な最悪のケースを想定-基本の20,000語の辞書から始めて、攻撃者が推測できる100兆 1秒あたりのパスワード(これはほぼ確実に現在の国民国家の能力を超えています)を想定し、さらにあなたは自分のパスワードが100年間クラッキングに抵抗することを望みます-必要なのは次のものだけです:

ceil(log base 20000 of(100000000000000 * 100 * 31556926))

... とにかく6語。 (Jeremi Gosneyに感謝します 数学を説明する方法を教えてくれます )。

そして、それは仮想的に進んだ将来の国民国家の攻撃者のためのものです-それはあなたが心配すべき人ではないことはほぼ間違いありません。数学と物理学に関する現在の理解に基づくと、ほとんどの実際のリスクモデルでは、Diceware辞書の何百万もの単語は完全に不要です。

第二に、Dicewareの要点は、覚えやすいパスワードを作成することです。数百万のタイプミスを導入すると、認識の負担が管理できなくなります。これらのタイプミスを覚えようとすると、大文字にした文字、「A」を「@」に変えた文字などを覚えようとするのと同じくらい悪いでしょう。トレードオフの価値はありません。正確には、Dicewareの発明者であるArtReinholdが望んでいたことです。避ける。

代わりに、20,000語の辞書の場合、単にWordを追加する方がはるかに良いでしょう。これは覚えやすいだけでなく正確に ...自動的に(そして簡単に!)パスフレーズを解読するコストが増加します20,000倍

または、一部のLinuxで配布されている163,730語のamerican-english-large辞書を使用することもできます。それは私たちの極端なケースを5語に落とすでしょう。そして、タイプミスのバリエーションを覚えるのにエネルギーを浪費する代わりに、あなたはあなたの語彙を改善することができます! :)

3
Royce Williams