web-dev-qa-db-ja.com

ダイスウェアのフレーズを文に変換すると、セキュリティが低下しますか?

ダイスウェアのパスフレーズの長さは 急上昇 -現在最大6語または7語です。パスフレーズを覚えるのが簡単であるという古い格言は、短いフレーズには当てはまるかもしれませんが、6つの真にランダムな単語を覚えるのは難しい場合があります。一方、完全な文は覚えやすい人もいるでしょう。

たとえば、Dicewareが生成したパスフレーズtracy optic renown acetic sonic kudoを見てみましょう。それをTracy's optics were renowned, but her acetic sonic cost her kudos.のような(無意味な)文に変えることができます

ダイスウェアパスフレーズのエントロピーは、攻撃者が6つのダイスウェアワード( 1ワードあたり12.9 )を使用していることがわかっている場合は77.4であり、そうでない場合は107.219( この計算機 による)です。ない文の形式のエントロピーは(計算機によると)255.546です。ただし、完全にランダムではなくなりました。これは、Dicewareアプローチの大きな利点の1つと考えられています。

攻撃者がこのパスフレーズ生成方法を使用していることを何らかの形で知っていると想定すると、文の形式によってパスフレーズのセキュリティが何らかの形で低下しますか?例、おそらく彼らは英語の文の構造のある種の分析を使用して、必要な推測を絞り込むことができますか?


上記の答えが「いいえ、文の形式はセキュリティを低下させません」であると仮定すると、ここで別の考慮事項があります。

文の形式の1つの利点は、非常に長く、アルファベット以外の文字(たとえば、アポストロフィやコンマ)が含まれていることです。ただし、モバイルデバイスで入力しようとする場合、それは明確な欠点です。ダイスウェアフレーズを3つの単語-tracy optic renown-に短縮し、それを[a-z]文-tracy is optically renownedまたはおそらくtracy is optically renowned worldwideに変換するとします(Dicewareワードリストとさらに区別するため) )。

3つのDicewareワードを使用し、攻撃者がDicewareを使用していることを知っている場合、エントロピーは38.7になります。ただし、tracy is optically renowned worldwideは、計算機によると100.504ビットのエントロピーです。

3つのワードダイスウェアフレーズと短い文の形式の違いを考えると、エントロピーの計算はより正確です-ダイスウェアの計算(つまり、違いが軽微すぎる)または電卓の計算(辞書/ブルートフォースなど) ?

注:パスワードには、任意の長さまたは文字の組み合わせが受け入れられると想定します

29
mayhewluke

セキュリティは低下しません。実際に起こっていることは、あなたの「エントロピー計算機」があなたにエントロピーの誤った測定を与えているということです。結局のところ、それはおおよその見積もりを与えることができるだけです。それがどのように構築されたかについて知らなければ、テキストの特定の文字列のエントロピーの量を実際に知ることができないことを示す実際に興味深い証拠があります。抵抗ノイズネットワークのような「物理乱数ジェネレータ」によって作成された1000ワードのパス文字列は、パスと同じ量のエントロピーを持つように表示されます。 Mersene Twisterを使用して生成された1000ワードの文字列。MerseneTwisterが実際にすべてのシード情報を624の値の連続ブロックでリークすることがわかるまで。エントロピー計算機は、データが実際にどれほどランダムであるかについてヒューリスティックな仮定のみを行うことができます。

もちろん、これが私たちがDicewareを持っている理由です。ランダム性がプロセスに組み込まれているため、エントロピーを証明[過小評価]できます。あなたが見ているような合格文のセキュリティを証明するために、Oracleテストを検討してください。 Dicewareを使用して一連の単語を選択し、それらから文を作成します。次に、それらから文章を構成するOracleを提供します。 OracleにDicewareから選択した正しい単語のセットを提供すると、私が使用した文が正確に提供されることが保証されます。他のすべての単語セットについては、それらを使用して任意の文を生成します。私のパスワードのエントロピーが、私が選択したDicewareの単語に組み込まれたエントロピーよりも低くなる可能性がないことを確認するのは簡単です。この非常に強力なOracleが人間による文章形成のプロセスを無にしても、ダイスウェアによる無作為性はそのまま残ります。私が選択したDiceware単語の元のセットを推測するよりも速く私のパスワードを推測することはできません。

現在、いくつかの注意点があります。後の例のように、使用するダイスウェアワードが少ない場合、ダイスウェアレイヤーから得られるエントロピーのビットが少なくなります。これは、前述のOracleが文ベースのパスワードを破るのにますます役立つことを意味します。また、ダイスウェアから取得する単語のセットの一部は、文章に変換することが特に難しい場合があります。パス文作成プロセスの一部として一連のダイスウェア単語を拒否拒否する場合、ダイスウェアが依存する完全なランダム性に疑問を投げかけています。

では、なぜオラクル攻撃なのか? Oracleは、暗号理論をテストするための非常に強力なツールです。実際には、tracy is optically renowned worldwideは実際にはおそらくダイスウェアの単語からの38.7ビットよりもかなり強力ですtracy optic renown。エントロピー計算機がヒューリスティックに推定する100.504ビットのフルビットではないかもしれませんが、その文を壊すことは単語よりも多くの作業を必要とします。 つまり、どれほど強力か?わかりません。それがOracle攻撃のポイントです。 Oracle攻撃では、「これはプロセスオファーの一部を計算するのが難しいと仮定しましょうzeroセキュリティが向上しました。まったくありません。プロセスはまだ安全ですか?」この極端な仮定の下で安全であれば、攻撃者が魔法のように強力なOracleを自由に使えるとは限らない現実の攻撃に対して明らかに安全です。

27
Cort Ammon

(文を作ることができる何かが見つかるまで回転するのではなく)どんな単語でも転がり、それらが転がされた順序でそれらを使用すると仮定して(より良い文を作るためにそれらを並べ替えない)、このスキーム- できませんエントロピーを減らします。それは増加します。しかし、どの程度まで定量化するのは困難です。

最悪の場合、攻撃者がこのスキームを使用していることを知っていると想定します。ダイスウェアワードのエントロピーは変更されていません。これらの単語のみを使用している場合、攻撃者はすべてのタプルのダイスウェア単語を試す必要があります。しかし今度は、攻撃者は各タプルを取り、いくつかの可能な文形式の1つに挿入する必要があります。

文法的に意味のある文型は、ダイスウェアの単語の品詞によって異なります。複数の品詞をとる人もいます。 「年次」は、形容詞や名詞などです。また、意図的に誤った文法を使用する可能性もあります。

したがって、可能なパスフレーズの数が増加し、エントロピーも増加しています。ただし、エントロピーの増加量を定量化するのは難しいため、ゼロと見なして、このスキームなしで使用するのと同じ数のサイコロ文字を使用します。定量化できる利点は、拡張されたフレーズが覚えやすくなることです。

5
Tom Zych

ダイスウェアは、ワードあたりのエントロピーのビット数にセキュリティがあります。まず、特定の順序でランダムに単語を選択したという前提から始めます。

間に単語を追加してそれを文にしても、エントロピーは同じであるため、安全です。 (コンピューターのフォームに入力したパスワードに追加した単語を含めると、ここで問題が発生する可能性があります。単語が「ピザイート」である場合、パスワードの半分をクラックした誰かにヒントを提供する可能性があるためです。 「ピザは私が食べるもの」と入力しますが、その全体を入力して誰かが「ピザは私が食べるものだ...」とわかった場合、「食べる」を推測するのは難しくありませんが、「ピザ」と入力するだけなら、その問題はありません)

ただし、単語を並べ替えると、Wordごとのオプションの数が少ないため、セキュリティが低下します(各Wordのオプションの数を、次のWordで適切に機能するオプションに人工的に制限するため)。 「pizza eat」などのオプションは意味をなさないため削除します。したがって、最初のWordのオプションの数は、「pizza」がそれらの1つではなくなるため、少なくなります。

3
iAdjunct

tl; dr:Q1:少し、Q2:元のダイスウェアのエントロピーについて

より長いバージョン

文字がランダムでなくても、純粋に文字を追加しても、パスフレーズの強さを抽象的に損なうことはありません。

しかし、いくつかの懸念があります。最も重要なのは、ここに多分:あなたのテクニックについての知識を与えられた攻撃者は、おそらくあなたがあなたのパスフレーズを入力することから推測できるでしょう:

  • あなたが始めたサイコロの長さ
  • そこから文を生成するために追加された単語です(一般的に短いため)
  • 位置がより可能性が高い単語(文法;ダイスウェア辞書にないすべての単語(もちろん辞書によって異なります)は、文の構造に適合する単語に変更できるため)

この最後のポイントは、攻撃者が考慮に入れることができる、開始可能な組み合わせを減らします。そこから、パスフレーズの一部がすでに漏えいしている可能性があります。その間の単語は厳密な文法規則に従っているため、比較的簡単に推測できます。

これは、2番目の質問に対する答えでもあります。有効な文を作成するために追加するエントロピーは低く、ほとんどが構文の余地が少ないためです。したがって、電卓はあなたの構造をはるかに過大評価しています。

それでも、ここで何かを見落とさない限り、変更されたダイスウェアの結果の全体的な強度は、通常、元のダイスウェアと同等であるはずです。

2
Tobi Nary