web-dev-qa-db-ja.com

ダイスウェアを考えると、なぜパスワードに大文字、数字、句読点を含める必要があるのですか?

強力なダイスウェアパスワードの例:

Widow stout harvey crest zomba zloty butyl

このパスワードは、Outlook.comなどのほとんどのサイトで拒否されます。 (注目すべき例外:Gmail、Stackoverflow、これはまさにこのパスワードを受け入れているようです(テスト済み))

ほとんどのサイトで受け入れられる変更されたダイスウェアパスワードの例:

Widow stout harvey crest zomba zloty butyl1.

このパスワードは元のパスワードよりも強力ですか?私は疑う。

ほとんどのサイトで受け入れられるパスワードの例(元のパスワードを拒否したOutlookで確認):

zxcvPOIU

このパスワードは、最初に拒否されたパスワードよりもかなり弱いようです。

それでも-私の経験では、これはほとんどのサイトでまだ必要なものです。

mostにはGoogleもStackoverflowも含まれていません-この要件は単に古くなっていますが、ほとんどのサイトはまだ追いついていませんか?それとも小文字/大文字/数字/句読点が依然として必要とされる実際の理由はありますか?

2
gaazkam

まず第一に、goodパスワードとは異なる基準があります。

Facebookは大文字と小文字を逆にしてパスワードを使用できるようにします。他の人はそれで眉をひそめるでしょう。数年前は、Outlook.comでは16文字を超えるパスワードを使用できませんでした。サイトごとに異なるパスワードポリシーが設定されている可能性があり、そのため実装が異なります。シンボルを必要とするサイトもあれば、長いパスワードで十分だと考えるサイトもあります。

ただし、主な問題は、サイトがパスワードの生成方法を知らないことです。ダイスウェアで生成された「Widow stout harvey crest zomba zloty butyl」は、約90ビットのエントロピーを持っています。一方、「これはスタック交換用の私のパスワードです」の方がはるかに少なくなります(特に、Outlookで「これはoutloo.comの私のパスワードです」を使用していることがわかっている場合は!)。

したがって、パスワードメーター(これらのサイトに埋め込まれた検証など)は、パスワードのエントロピーを推定する手段をとります。一般に、大文字や記号を追加するとパスワードのスペースが増えるため、「パスワードが解読されにくくなる」の代わりとして、小文字、大文字、記号をパスワードに含めることをお勧めします(または必須とします)。これは、それを行うための一般的な提案によって強化されています。

通常、システムがパスワード(アクセストークンなど)を生成できる場合は、すべてが必要ではありません)。パスワードはサーバーによって生成されるので、サーバーはそれがどのように生成されているかを知っており、十分なエントロピーを持っています。

最後に、システムによっては、特定の長さまたはタイプの文字が必要になる実際の理由がある場合があることに注意してください。主にそれらを必要とするシステムに使用(コピー)されるため、または規制上の理由により、それほど重要ではない場合でも必要が必要です。

2
Ángel

簡単に言えば、エントロピーが増加するためです。

Word Widowは次のように書くことができます:

  • Widow
  • Widow
  • wid0w
  • w1dow
  • w!d0W
  • ...

Hashcatの単純なルールにはこれらの例がすべて含まれていると主張するかもしれませんが、そうですが、実行可能な組み合わせを含める必要があるため、クラッキング時間は長くなります。

攻撃者が今やパスワードの大部分が小文字のみで構成されると合理的に予想できる場合、ほとんどの順列を削除するだけでクラック時間を大幅に短縮できます。

そのため、大文字と小文字の混合と照合は依然として確実なアドバイスです。たとえば、すべてのWordの2番目の文字を大文字にして、

Widow sTout hArvey cRest zOmba zLoty bUtyl

攻撃者は、上記で例示したルールを選択しただけで、たとえそのすべてのコンポーネントとその順序を知っていても、このダイスウェアのパスワードを解読することはできません。

0
MechMK1