web-dev-qa-db-ja.com

このパスワードスキームは合法ですか?

ITセキュリティフェアへの招待状を受け取りました( https://www.it-sa.de/en )。

さらに、パスワード「クリプトナイザー」を提供しました。これは、次のキーチェーンに掛ける小さなカードです(例の値、私の翻訳):

多くの場合、ハッカーが個人情報を取得するのは簡単すぎます。理由:簡単に思い出せるパスワードは暗号化されていません。多くの場合、「スノーデン」や「アドミン」などの一般的な名前や単語です。このカードは、パスワードを覚えやすくすることでこれを修正しようとします。

Input   Start  ABC  DEF  GHI  JKL  MNO  PQRS  TUV  WXYZ
Output  4uR=?  x    1    F    3    Y    i     #    9

ドイツ語のオリジナルバージョン:

ヒンターグルント:Passwort-Hackern wird der Zugang zupersönlichenDaten im Internethäufigviel zu leicht gemacht。 Der Grund liegt auf der Hand:Passwörter、die wir uns merkenkönnen、sind meistens nicht besonders kryptisch、sondern orientieren sich angängigenNamen oderWörternwie "Snowden" oder "Admin"。

出力からのすべては、すべてのカード(ランダムに選択できる66の異なる文字)ごとにランダムです。ここで、「簡単な」パスワード(8文字以上を推奨)を選択する必要があります。

Input:  HELLOWORLD
Output: 4uR=?F133Y9Yi31

また、カードを紛失した場合は、このカードを1つのパスワードのみに使用して変更することをお勧めします。

このパスワードスキームは良いですか?多くの専門家による大きなセキュリティフェアから来ています。

私の初心者の推測では、8つの異なる文字(+1の開始シーケンス)のためにエントロピーが減少しますが、カードが不明なままである限り、攻撃者はこの事実を利用できません。

51
izlin

完全な開示:私はそのようなカードを配布する会社で働いています。しかし、この答えは、私自身の個人的な意見です。


これらのカードの考え方は、一部のユーザーはパスワードやパスフレーズを覚えるのが非常に苦手だということです。単純なアプローチは、ユーザーに「パスワードを覚えるのが上手になる」と伝えることですが、経験から、このようなアドバイスは一部のユーザーにとって逆効果になることがわかっています。

彼らの記憶は、おそらく彼らの仕事と何らかの関係がある単純な言葉だけを思い出すためにハードワイヤードされているようです。したがって、自動車工場で働いている誰かがEngineのような単語を覚えているかもしれません。

Engineはもちろん、長さとエントロピーの両方でひどいパスワードです。したがって、「クリプトナイザー」または同様の名前のカードは、それらの両方を追加しようとします。

長さは接頭辞4uR=?によって追加されます。この場合は。パスワードの長さがすぐに5文字増え、6文字のパスワードが最大11文字のパスワードになります。完璧ではありませんが、改善です。

エントロピーは、各文字をランダムに選択された文字で置き換えることによって追加されます。厳密に1:1の代替ではありませんが、十分に近いです。各カードは一意であるため、各辞書の句をいじくる方法について事前に作成されたルールを構築することはできません。

この例では、Engine4uR=?1YFFY1に変わります。これは良いパスワードですか?おそらく素晴らしいとは言えませんが、確かにEngineよりはるかに優れています。

このスキームの問題

もちろん、それは完璧なシステムではありません。良いパスフレーズは、小さな紙のカードで置き換えることはできません。 3つの入力文字が1つの出力文字にマッピングされるため、結果として得られるパスワードはエントロピーを取得する代わりに失います。正味のエントロピーの増加は、攻撃者が辞書攻撃を簡単に使用できなくなったことです。そのためには、マッピングにアクセスするか、徹底的な検索を実行する必要があります。攻撃者は、そのようなカードが使用されたことを知っていれば、これを利用して徹底的な検索を高速化できます。

さらに、ユーザーは自分のカードをそのままにしておくことが期待されており、多くの場合、カードを机の上、キーボードの下、または同様の悪い場所に置いておくでしょう。カードを紛失すると、パスワードも紛失する可能性があります。彼らは新しいカードを必要とし、パスワードも変更しますが、これは使い勝手にとってはあまり良くありません。

概要

それで、これは良いシステムですか?結局、あなたはそれが何をするように設計されているかという文脈の中でそれを判断しなければならないでしょう。これは、さもなければひどい恐ろしいパスワードを使用する特定のユーザーグループの助けになります。そして、ユーザーがほんのわずかなコストでわずかに優れたパスワードを選択できるようにすることは、私の意見では良いことです。もちろん、資格情報の保存と生成の問題を魔法のように解決するのは、特効薬ではありません。

可能であれば、常にパスワードマネージャーを使用して、エントロピーの長い長いパスワードを生成し、安全な方法で保管してください。

これができない場合(OSログインなど)、 Diceware を使用するか、TheGreenLightFromOurEyesShinesThroughTheMirrorOfTime.などの意味のない長い文を作成することをお勧めします。そのような文章が本や映画から引用されたものでないことを確認してください。

85
MechMK1

それは常にあなたがそれを何と比較するかに依存します!このカードを使用する代わりに、ユーザーが実際に使用する現実的な方法は何ですか?

明らかに、4uR=?F133Y9Yi31HELLOWORLDよりもはるかに優れたパスワードです。良いパスワードを選択したり、パスワードマネージャーを使用したりしない技術者以外にこのカードを渡した場合、それは改善です。

一方、このシステムを使用することは、決して覚えていないランダムな16文字のパスワードを選択してパスワードマネージャーに保存するよりもはるかに悪いです。カードに記載されている文字を知っている攻撃者(たとえば、同じユーザーから漏えいしたパスワードを見るなど)は、簡単にそれを解読できます-突然、HELLOWORLDに勝るのです!

これは、パスワードマネージャーを使用する可能性のある人にとって良いアイデアでしょうか。いいえ、まったく違います。おじいちゃんは?多分!善の敵を完璧にさせないでください。

64
Anders

説明から100%明確ではありませんが、2行目はカードごとにランダムに独立して生成されることを理解しています。私はその仮定から働きます。私はさらにそれを仮定します:

  • 攻撃者はあなたのパスワードを推測しようとしています。
  • 攻撃者は、そのようなカードを使用してパスワードを生成したことを知っています。
  • 攻撃者は、カードに固有のランダムなコンテンツを知りません。
  • 攻撃者は推測を効率的にテストする手段を持っています。たとえば、パスワードのハッシュでパスワードデータベースエントリを盗んだためです。

攻撃者が成功するのはどれくらい難しいですか?

まず、5つのランダムな開始シンボルを推測する必要があります。あなたが言うようにそれらが66の文字のセットから選ばれた場合、それぞれは約ログを持っています2(66)≈6ビットのエントロピー、合計で6×5 = 30ビット-有名なTr0ub4dor&3とほぼ同じ強さ。

2番目:カードを使用するプロセスの一部として、人間のパスワードを選択します。しかし、カードはアルファベットをeightのグループに分け、各グループの文字が互いに同等の選択肢として扱われるようにします。これは、グループ化した後、人間のパスワードの各文字がログ以外のものを提供できないことを意味します2(8)= 3ビットのエントロピーですが、実際にはそれより少なくなります。

  • 一部のグループの手紙は他のグループより頻繁です。
  • 一部の単語は他の単語より頻繁です。
  • 一部の人間のパスワード(例:PASSWORD)は、他のパスワードよりも悲惨なほど頻繁です。

3番目:これらの各グループには、66のセットからランダムに選択された文字が割り当てられます。これらの選択のそれぞれは、約6ビットのエントロピーであり、その場合、8つのグループは48ビットのように聞こえます...しかし、攻撃者はカードのテーブル全体をクラックします。人間のパスワードは8つのグループのサブセットを「トリガー」するだけであり、「休止」グループに割り当てられた記号を推測する必要がないためです。 8個のセットからランダムに8個のアイテムを置き換えて選択すると、約5個の異なるアイテム( source )が描画されると予想されます。これは、8文字の人間のパスワードが持つテーブルのエントロピーの量を意味しますトリガーする可能性が最も高いのは30ビットです。しかし、一部の人間のパスワードは、より少ないグループをトリガーし、いくつかはより多くのグループをトリガーします。

英語のテキストの統計パターンとカードのグループ間の相互作用を分析することは、読者にとって退屈な課題として残されています。このカード方式は明らかに壊れていないと暫定的に結論付けることができると思います。これにより、少なくとも36ビットのエントロピー(開始文字に30、1つのグループのみをトリガーに6)が保証されたパスワードが生成されます。人間のパスワードからエントロピーを数えなくても、54ビット(開始文字は30ビット、4つのグループをトリガーするには24ビット)を表示します。

この方法でうまくいかなくても驚かないと思います。結局のところ、上の説明は、各カードに78ビットのエントロピーが含まれていることを示しています。最初の5ビットから30ビット、グループへの文字のランダム割り当てから48ビットです。 78ビットは、12文字のランダムに印刷可能なASCII文字列(12×ログ2(95))。このくらいのエントロピーを小さなカードに詰め込むのは素晴らしいアイデアです。このスキームの弱点は、このスキームのすべてを確実に活用できないことです(「休止」グループの問題)。


もう1つのシナリオは、これです。攻撃者が生成したパスワードを盗んだ(たとえば、プレーンテキストとして保存しているWebサイトから)とします。人間のパスワードやカードのランダムな値を推測するために、それらを逆に利用できますか?さて、その場合、最初の5つのランダムな文字が絶望的に​​危険にさらされ、人間のパスワードを解読することは、モノアルファベットの置換暗号を解読することとほぼ同じに見えるため、見栄えがよくありません。しかし、私はこれに注意します:

また、カードを紛失した場合は、このカードを1つのパスワードのみに使用して変更することをお勧めします。

...そして、あなたが彼らの推奨に従うならば、1つのカードの内容の侵害はそのカードへの入力として提供された1つの人間のパスワードのみを侵害することができます。複数のカードで同じ人間のパスワードを再利用しないでください。

18
Luis Casillas

私には非常に非現実的に見えます。短所(面倒な計算、カードを失う必要がない、パスワードを覚える必要がある)は、長所(強力なパスワード)を上回ります。

このスキームのユースケースを見つけることができません:

  • 知識のないユーザー(おじいちゃん)にとっては、ロックされた引き出しに保管されているノートブックにパスワードを書き留めておく方がはるかに実用的です。

  • 精通したユーザー(このブログの読者)は、マスターパスワードで暗号化されたパスワードマネージャーアプリを使用することをお勧めします。

5
dr_

エントロピーは減少しますが[...]、カードが不明なままである限り、攻撃者はこの事実を利用できません

カードが不明のままである場合、完全なパスワードをカードに書き込んでも、攻撃者はそれを悪用することはできません。ただし、これは非常に悪い仮定です。これは、パスワードを書き留めることが悪いのと同じ理由からです。

携帯電話にパスワードマネージャーをインストールし、携帯電話をパスワードのチートシートとして使用することは、はるかに理にかなっています。

4

私の初心者の推測では、8つの異なる文字(+1の開始シーケンス)のためにエントロピーが減少します。

必ずしも。

英語のアルファベット(大文字)と小文字の文字を使用したパスワードを比較してみましょう。長さnのパスワードには、可能な値が(2 * 26)**nです(実際には、対象読者がパスワードの真ん中に大文字と小文字を混在させることはないため、実際にはそれよりはるかに小さくなります)。

一方、生成されたパスワードには、約(8**n) * (66**5)の可能な値があります。

  • 元のパスワードの各文字は、8つの値のいずれかにマップされますn回。
  • 選択できる文字は66回あり、5回繰り返されます。

52**n(8**n) * (94**5)の比較については直感的ではないので、いくつかの値を試してみましょう。 8文字のパスワード(n= 8)の場合、次のようになります。

  • 53,459,728,531,456(オリジナル)
  • 21,010,654,131,388,416( "クリプトン化")

「クリプトン化」バージョンには桁の大きさより多くの可能性があります。

11文字のパスワードの場合:

  • 7,516,865,509,350,965,248(オリジナル)
  • 10,757,454,915,270,868,992( "クリプトン化")

12文字のパスワードの場合:

  • 390,877,006,486,250,192,896(オリジナル)
  • 86,059,639,322,166,951,936(「クリプトン化」)

したがって、11文字以下のパスワードの場合、「クリプトン化」バージョンが可能な値の点で勝ちます。 (元のパスワードが単一のケースのみを使用すると想定する場合、「クリプトン化」バージョンは17文字以下のパスワードを優先します。)

マッピングされる8つの可能な文字はおそらくランダムであることを考慮していませんが、実際には重要ではないと思います。これから学ぶべきことは、パスワードの長さを増やすことは、文字セットのサイズを増やすことよりもはるか優れているということです。

1
jamesdlin

適切なパスワードスキームは、エントロピーだけではありません。パスワードを再利用しても、世界中のすべてのエントロピーがあなたを保護するわけではありません。必要なのは、パスワードを平文で保存する1つのサイトだけです。

適切なスキームは、パスワードの再利用を阻止する必要もあります。この場合、カードの使用方法によって異なります。

ユーザーが「今は非常に安全なパスワードを持っている」と考えて、その1つのパスワードを再利用すると、脆弱になります。適度に良いパスワードを再利用することは、弱いパスワードを再利用することよりも優れていますが、全体ではありません。私はこれがそれが使用される可能性が最も高い方法であると考えています。

アカウントについて何か、おそらくドメイン名をハッシュするためにそれを使ってユニークなパスワードを作成している賢いユーザーを見ることができます。 google.comのパスワードは4uR=?FYY31xYY。セキュリティの専門家は、このスキームをさまざまな理由で非難しますが、それは正しいことですが、それ以外の場合よりも強力なパスワードの多様性が大きくなります。ただし、これがカードの一般的な使用方法であるとは思いません。

カードのユーザーは少数のパスワードを再利用する可能性が高いため、私はこのスキームを弱く評価しますが、何もしないよりはましです。


改善されたスキーム(私はセキュリティの専門家ではありません)は、強力なパスワードのリストを、それぞれの横に空白スペースを付けて印刷することです。ユーザーが新しいアカウントを必要とするとき、彼らは次の無料のパスワードを使用し、それが自分のメールアドレスでない場合は、ドメイン名とユーザー名を書き留めます。これにより、アカウントの数が多すぎない限り、再利用なしで強力なパスワードが保証されます。

もちろん、これは物理的な攻撃に対して脆弱です。カードを盗む、コピーする、または写真を撮る。その人がすでにパスワードを書き留めている場合、またはさらに悪いことにそれをファイルに入れている場合、このスキームは大幅に改善されます。恩恵を受ける人はたくさんいると思います。

それはトレードオフです。私は、物理的および標的型攻撃のリスクを、再利用や脆弱なパスワードよりもはるかに低く評価しています。物理的な攻撃よりも、ランダムなサイトへの侵入で弱められ、再利用されたパスワードがフーバーアップされる可能性がはるかに高くなります。

そしてもちろん、これは優れたパスワードマネージャを使用するよりもはるかに弱いです。

0
Schwern