MCPで接続 →

計算を入力してください

公式

広告

結果

推定解析時間(総当たり攻撃)
208.83
文字種の数 26
組み合わせの総数 208,827,064,576
時間に換算 0.06
日に換算 0
年に換算 0

このツールでできること

パスワード解析時間計算ツールは、攻撃者がすべての組み合わせを試す「総当たり攻撃(ブルートフォース)」でパスワードを破るのに、どれくらいの時間がかかるかを推定します。計算はキースペース(パスワードの全組み合わせ数)の大きさと攻撃者の試行速度だけにもとづいており、「文字数を増やす」「文字種を多くする」ことが、どれほどパスワードの強度を高めるのかを手早く実感できます。

使い方

パスワードの文字数を入力し、パスワードに使われている文字種にチェックを入れ、攻撃者の1秒あたりの試行回数を設定します。最新のGPUを搭載したマシンであれば、高速ハッシュなら毎秒およそ10億回(1,000,000,000回)の試行が可能で、これがおおよその初期値の目安となります。結果には、キースペース全体を試し尽くすまでの最悪ケースの時間が、秒・時間・日・年の単位で表示されます。

計算式の仕組み

パスワードの全組み合わせ数は、文字種の数(N)を文字数(L)乗したものになります:$$C = N^{L}$$これを攻撃者の毎秒の試行回数で割れば、すべてを試し終えるまでの時間が求められます:$$t = \frac{N^{L}}{G}$$文字種の数Nは合算で決まり、小文字(26)、大文字(26)、数字(10)、記号(32)をすべて組み合わせると \(N = 94\) になります。

パスワード長が増えると解読時間が急上昇する指数曲線
1文字増えるごとに組み合わせ数が倍増するため、解読時間は長さに対して指数関数的に増加します。
文字種数N、パスワード長L、推測速度Gと解読時間の関係を示す図
解読時間は、文字種数をパスワード長で累乗し、攻撃者の推測速度で割った値に比例して増加します。

具体例で見てみる

小文字8文字のパスワード(\(N = 26\)、\(L = 8\))を、毎秒10億回の試行を行う攻撃者が狙うケースを考えてみましょう。組み合わせ数は $$26^{8} = 208{,}827{,}064{,}576$$ 解析時間は $$208{,}827{,}064{,}576 \div 1{,}000{,}000{,}000 \approx 208.83\ \text{秒}$$ つまり4分足らずです。ここに大文字・数字・記号を加える(\(N = 94\))と、同じ8文字でも $$94^{8} \approx 6.1 \times 10^{15}$$ 通りに跳ね上がり、解析にはおよそ70日かかる計算になります。

よくある質問(FAQ)

この数値は正確ですか? いいえ。あくまで純粋な総当たり攻撃における理論上の最大値です。実際の攻撃者は辞書攻撃、流出したパスワードリスト、よくあるパターンなどを利用するため、推測されやすいパスワードはこの推定値よりはるかに速く破られます。

試行速度はどの値を使えばいいですか? ハッシュの種類によって変わります。高速なハッシュ(MD5やソルトなしのもの)なら毎秒数十億回も可能ですが、低速なハッシュ(bcrypt、Argon2)では毎秒数千回程度に抑えられます。\(G\) が小さいほど、解析時間は大幅に長くなります。

強いパスワードを作るには? 複雑さよりも「長さ」が効きます。文字を1つ増やすごとにキースペースは \(N\) 倍になるため、長いパスフレーズは、短く複雑なパスワードよりもはるかに破られにくくなります。

最終更新: