web-dev-qa-db-ja.com

パスワードとして文または文の最初の文字を持っている方が良いですか?

これらの2つのタイプのパスワード間の任意のタイプのブルートフォースを防止するためのマスターKeePassパスワードはどちらが優れていますか。

  • ユーザーが発明した完全な文:私はチーズバーガー、トマト、フライドポテトが好きです! :)

  • 小文字と大文字の単語の最初の各文字:Ilcb、tAf!:)

編集:私のためらいは、実際には文が長いという事実から来ていますが、辞書から取得できる実際の単語で構成されています。

短い回答:

@ Royce Williams のおかげで、最良のパスワード生成方法は、次のような文字を含むランダムな単語であると結論付けることができます。

靴、トマト!食事コンピュータカー

2
Anonyme

どちらも-通常、実質的に同等です。

それの訳は:

  1. パスワードクラッカーは、ランダムではない、人間が理解できるパスフレーズを非常に認識しており、高速で両方のサブタイプをエミュレートできます

  2. 「!」のような覚えやすい追加シーケンスを注入する「:)」もよく知られており、「シミュレーション可能」であり、

  3. 効果的ないずれかの種類のパスフレーズベースの構築手法のエントロピー手法が攻撃者に知られるとほぼ同一

ここで最も重要なレッスンは#3であり、生のブルートフォースが無関係である理由:このメソッドの効果的なエントロピー-実際の攻撃者が実行しなければならない作業量- bruteforceエントロピーよりも劇的に小さい。これは、単純なパスワード記憶戦略の心理学が攻撃者によく知られているためです。

特定の方法論では、パスワードを覚えるために8つのことだけ覚えておけばよいのです。

  • パスフレーズをまったく使用しているという事実(クラスとしてパスフレーズを攻撃するため、これは攻撃者にとっては無料です)
  • 元のフレーズの大まかな意味の構成要素(好み、食べ物、および2つの食べ物、おそらく約4つの情報)(フレーズは文法的に意味があるので、これの多くは攻撃者にとっても簡単です)
  • 最初の文字に対して単語全体を使用したか使用しなかったという事実(ここにはいくつかのオプションしかないため、攻撃者が両方のバリアントを使い果たすのは難しくありません)
  • 2つの追加アイテムの配置と場所(攻撃者は、人々が最後に特殊文字の「余分な」ものを置く傾向があることを知っています)

攻撃者がパスワード心理学の歴史の中で誰もがこれを行うとはまったく考えていなかった場合、あなたはかなり良い状態にあるでしょう。しかし、攻撃者は、人々がどのようにパスワードを考えパスワードを考え、それらを「覚えやすい」コンポーネントに「チャンク」するために何をするかをよく知っています。 (つまり、あなたの方法論は Kerkhoffsの原則 に準拠していません)。

したがって、攻撃者は心理的に可能性のある効果的なパスワードのエントロピーを「総当たり」するだけで済みます。攻撃者は、長さXのすべての可能な文字を総当たりにする必要はありません。代わりに、劇的に覚えやすくするために同じ可能性を試すだけで、推測する必要があるものを減らすことができます 。

対照的に、最も効果的なパスフレーズはrandomパスフレーズです。たとえば、20,000ワード以上(20,000 ^ 5、または3.2x10)のワードリストから純粋にランダムに抽出された5または6ワード^ 21)。攻撃者があなたが知っているすべて構築方法についてを知っている場合-リストにある単語の数と正確な方法多くの単語を選択し、それらをどのように分離したかなど-膨大な可能性がブルートフォースに耐性があります。 5つの単語を覚えるだけでよいのですが、それらは非常に多くの可能性があるため、すべてを試すには非常に長い時間がかかります。これを計算すれば、すぐに理解し始めるでしょう。

(そして、「辞書での単語の使用」に関する懸念は、人々が辞書から単一の単語を使用することを防止しようとしていた古いパスワードの複雑さの要件からの残り物です。基本原理- 「推測可能性」の回避-良いことですが、たまたま辞書にあるrandom単語を大量に使用してもまったく問題ありません)

強度が大量のランダム性のみに基づいているパスワードシステムは、常にそうでないものよりも強力です。

4
Royce Williams