🔐

パスワード強度計算機

エントロピー・100億回/秒でのブルートフォース時間

パスワード強度計算機とは?

パスワード強度計算機は、あなたが設定したパスワードがどれほど安全かを数値で可視化するツールです。エントロピー(ビット数)総当たり攻撃(ブルートフォース)への耐性時間を、毎秒100億回の試行という現実的な攻撃速度を基準に算出します。直感だけに頼らず、科学的な指標でパスワードの強さを把握できます。

「大文字・小文字・数字・記号を混ぜれば安全」という一般的なアドバイスは正しい方向性ですが、実際にどれほど安全かは計算してみないとわかりません。このツールを使えば、パスワードを変更するたびにリアルタイムで安全性を確認できます。

パスワードエントロピーとは何か

エントロピーとは、パスワードの予測困難さをビット単位で表した値です。エントロピーが高いほど、攻撃者がパスワードを推測するために必要な試行回数が増えます。

  • 28ビット未満:非常に弱い。数秒で解読される可能性あり
  • 28〜35ビット:弱い。短時間で突破される危険性が高い
  • 36〜59ビット:普通。一般的な用途には使えるが推奨はしない
  • 60〜127ビット:強い。現実的な攻撃に対して十分な耐性を持つ
  • 128ビット以上:非常に強い。現代のコンピュータでは解読不可能に近い

エントロピーの計算式は E = log₂(C^L) です。Cは使用可能な文字種の数、Lはパスワードの文字数を表します。たとえば英小文字26種類のみで8文字のパスワードを作ると、エントロピーは約37.6ビットになります。

総当たり攻撃(ブルートフォース)の解読時間とは

総当たり攻撃とは、あらゆる文字の組み合わせを機械的に試し続けてパスワードを特定する攻撃手法です。現代のGPUクラスターを使えば、毎秒100億回(10^10回)以上の試行が現実的に可能です。

この計算機では、そのような高速な攻撃を想定した上で「平均解読時間」を算出します。具体的には、考えられる全組み合わせ数をエントロピーから求め、毎秒100億回で割ることで解読までの秒数を計算します。結果は秒・分・時間・日・年などわかりやすい単位で表示されます。

文字種が解読時間に与える影響

使用する文字の種類を増やすと、組み合わせ数が爆発的に増加します。

  • 数字のみ(10種):8桁で約0.001秒
  • 英小文字のみ(26種):8文字で約0.004秒
  • 英大文字+小文字(52種):8文字で約5分
  • 英大小文字+数字(62種):8文字で約7時間
  • 英大小文字+数字+記号(95種):8文字で約143日
  • 英大小文字+数字+記号(95種):12文字で約数百万年

このように、文字数を増やすことと文字種を増やすことの両方が、パスワードの強度を飛躍的に高める効果を持ちます。

強いパスワードを作るためのポイント

強固なパスワードを作る際は、以下の原則を守ることが重要です。

  • 最低12文字以上:文字数はエントロピーに直結します。8文字より12文字、12文字より16文字の方が格段に安全です
  • 4種類の文字を混在させる:英大文字・英小文字・数字・記号をすべて含めましょう
  • 辞書に載っている単語を避ける:「password」「12345678」「qwerty」などは最初に試される単語です
  • 個人情報を使わない:誕生日・名前・電話番号などは推測されやすいため絶対に避けてください
  • サービスごとに異なるパスワード:一つのサービスから漏洩した場合、他のサービスへの被害を防ぐために使い回しは厳禁です
  • パスフレーズの活用:複数の無関係な単語を組み合わせた長いフレーズは、覚えやすく強固です

パスワードマネージャーの活用を推奨

強いパスワードを複数管理するのは非常に困難です。そこで活用したいのがパスワードマネージャーです。1Passwordや Bitwarden、Dashlaneなどのツールを使えば、複雑なパスワードを自動生成・保存・入力してくれるため、すべてのサービスで強固かつ異なるパスワードを使い続けられます。

マスターパスワード(パスワードマネージャー自体のパスワード)は特に強固なものを設定し、このツールで強度を確認することをおすすめします。

二要素認証との組み合わせ

どれほど強いパスワードでも、フィッシング詐欺やデータ漏洩によって盗まれる可能性はゼロではありません。二要素認証(2FA)を設定することで、万が一パスワードが漏洩しても不正アクセスを防ぐ追加の防御層を設けられます。重要なアカウントには必ず有効化しましょう。

よくある質問(FAQ)

このツールにパスワードを入力しても安全ですか?

はい、安全です。この計算機はすべての処理をあなたのブラウザ内(ローカル)で行います。入力したパスワードはサーバーに送信されることは一切なく、外部に漏洩する心配はありません。

エントロピーが高ければ必ず安全ですか?

エントロピーは総当たり攻撃への耐性を示しますが、それだけが安全の指標ではありません。辞書攻撃(よく使われる単語やパターンを使った攻撃)や、サービス側のデータ漏洩には、エントロピーだけでは対応できません。高いエントロピーを保ちつつ、推測されにくいランダムな文字列を使うことが最善策です。

毎秒100億回という前提はなぜですか?

現代の高性能GPUを複数台使用したクラスター環境では、ハッシュアルゴリズムにもよりますが毎秒数十億〜数千億回の試行が可能です。MD5などの古いハッシュでは特に速く、BCryptなどの強化されたアルゴリズムでは遅くなります。この計算機では現実的かつ保守的な基準として100億回/秒を採用しています。

パスワードは定期的に変更すべきですか?

過去には定期変更が推奨されていましたが、現在の専門家の見解では漏洩の疑いがある場合サービスからの漏洩通知を受けた場合にのみ変更することを推奨しています。むしろ、強固なパスワードを維持し、二要素認証を設定する方が効果的です。

パスフレーズはランダムな文字列より劣りますか?

必ずしもそうではありません。「correct-horse-battery-staple」のように、無関係な4つ以上の単語を組み合わせたパスフレーズは、エントロピーが非常に高く、かつ覚えやすい優れた選択肢です。ただし単純な辞書単語の組み合わせは避け、できればランダムに選ばれた単語を使いましょう。

関連

🌐 サブネット計算機 ⏱ Unixタイムスタンプ変換 🔵 カラーコンバーター 🖥️ 画面サイズ計算機