パスワード組み合わせ計算ツールとは?
このツールは、使用できる文字種の数とパスワードの長さをもとに、作成できるパスワードが何通りあるか(組み合わせの総数)を計算します。あわせて、パスワード強度の標準的な指標であるエントロピーをビット単位で表示します。組み合わせの数が多いほど、総当たり攻撃(ブルートフォース)で破られにくいパスワードといえます。
使い方
まず文字種の数を入力します。これは使用できる文字の種類の数で、たとえば数字のみなら10、英小文字のみなら26、英大小文字+数字なら62、記号を含めると約94になります。次にパスワードの長さ(文字数)を入力します。これだけで、組み合わせの総数とエントロピーが表示されます。
計算式の解説
組み合わせの総数は、文字種の数をパスワードの長さで累乗するだけで求められます。式にすると
$$\text{Combinations} = \text{Charset Size}^{\,\text{Length}}$$です。L個の各位置には、それぞれ独立してN種類の文字のいずれかを置けるため、すべてを掛け合わせた数になります。エントロピーは
$$\text{Entropy} = \text{Length} \cdot \log_{2}\!\left(\text{Charset Size}\right) \ \text{bits}$$で求められ、探索空間の大きさをビット数で表します。エントロピーが1ビット増えるごとに、総当たりに必要な手間は2倍になります。
計算例
たとえば英小文字+数字(\(N = 62\))を使い、8文字のパスワード(\(L = 8\))を作る場合を考えます。組み合わせは \(62^{8} = 218{,}340{,}105{,}584{,}896\)、つまり218兆通りを超えます。エントロピーは \(8 \times \log_{2}(62) \approx 47.63\) ビットで、これは中程度の強度です。重要なアカウントでは、専門家はしばしば60ビット以上を推奨しています。
よくある質問
文字種の数はいくつにすればよいですか? パスワードに含まれ得るすべての文字の種類数を入力してください。数字のみなら10、英字(大小どちらか)なら26、英大小文字なら52、英大小文字+数字なら62、よく使う記号も加えるなら約94が目安です。
エントロピーは何ビットあれば「強い」といえますか? 一般的な目安として、日常的なアカウントでは50〜60ビット、機密性の高い情報には80ビット以上が望ましいとされています。文字種を増やすよりも、パスワードを長くするほうがエントロピーは速く増えます。
このツールでパスワードの安全性は保証されますか? いいえ。これはあくまで理論上の総当たり耐性を測るものです。推測されやすい単語の使用、使い回し、漏えいなどがあれば、エントロピーの高いパスワードでも破られる可能性があります。