パスワードの強さを調べる
総当たりで何通りあるかと、弱くしている原因を出します。入力はこの機器から出ません。
入れた文字はこの画面の中だけで調べています。通信はしていないので、 いま使っているパスワードをそのまま入れても、どこにも送られません。
- 総当たりにかかる時間1秒に100億回試されると仮定した場合の平均
- 1秒もかからない
- 何通りあるか2を底とした桁数(ビット)
- 10ビット
- 長さと文字の種類長さのほうが効きます
- 10文字 / 94種類
弱くしている原因
- 単独で使うには短い
- 15文字未満です。これ1つでログインする用途なら、NIST は15文字以上を求めています。長さは、文字種を増やすことよりずっと効きます。
- よく使われる語
- 漏れたパスワードの一覧に載っている語で始まっています。この種の語は総当たりの前に真っ先に試されるので、長さや文字種に関係なく危険です。
ここに出している時間は上限であって、保証ではありません。 計算しているのは「その長さと文字の種類で完全な乱数だったら何通りか」で、 人が考えた文字列はそのごく一部にかたよっているため、 実際にはこの数字よりずっと早く破られます。 1秒あたり100億回という前提も、 攻撃する側の機材によって何桁も変わります。
よくある質問
入れたパスワードは送信されますか?
されません。強さの計算はすべてこの画面の中(お使いの機器の中)で行っていて、通信は一切していません。いま使っているパスワードをそのまま入れても、この機器から出ることはありません。ただし画面に表示している以上、共有の端末や人目のある場所では「隠す」を使ってください。
「Password1!」はなぜ弱いのですか?
大文字・小文字・数字・記号をすべて使った10文字なので、素朴に数えると強く見えます。しかしこれは、複雑さの規則を課された人がいちばん選びやすい形です。NIST の文書も、password を選ぼうとした人が Password1、さらに Password1! にする例をそのまま挙げています。攻撃側の辞書には当然入っているので、総当たりを待つまでもなく試されます。
出てきた時間はあてになりますか?
上限だと思ってください。計算しているのは「その長さと文字の種類で完全な乱数だったら何通りか」です。人が考えた文字列はそのごく一部にかたよっているので、実際にはずっと早く破られます。また1秒あたり何回試せるかは攻撃する側の機材で何桁も変わりますし、保管の仕方(ハッシュの種類)でも変わります。短く出たら確実に危ない、長く出ても安心とは限らない、という読み方が正しいです。
漏れているかどうかは分かりますか?
この道具では分かりません。漏れた一覧と照合するには入力を外に送る必要があり、それはこのサイトの作り(何も送らない)と両立しないためです。よく使われる語のうち代表的なものだけは、この機器の中で照合しています。実際に漏れているかを確かめたい場合は、お使いのブラウザやパスワード管理ソフトの漏えい確認機能を使ってください。
どうすれば強くなりますか?
長くすることです。総当たりの手間は「文字の種類数の、長さ乗」なので、長さは指数のほうに乗ります。小文字だけ16文字(約75ビット)は、4種類すべてを使った8文字(約52ビット)よりずっと強くなります。覚える必要があるなら、記号を混ぜるより、関係のない語をいくつも並べて長くするほうが、覚えやすさと強さの両方で勝ちます。
この道具は「解読」をしません
ここでやっているのは、数を数えることだけです。 入力の長さと使われている文字の種類から「総当たりなら何通りか」を計算し、 よくある形(辞書に載っている語、キーの並び、西暦、繰り返し)に 当てはまらないかを見ています。
実際にパスワードを破る機能は持っていませんし、作る予定もありません。 自分のパスワードの弱さに気づくにはこれで足りますし、 他人のものを破る役には立ちません。
強さの区切り
| 呼び名 | 目安 |
|---|---|
| とても弱い28ビット未満 | 辞書に載っている語や、数字だけの短いもの |
| 弱い28〜40ビット | 短い英数字。いまの機材ならすぐ試し切られます |
| ふつう40〜60ビット | 4種類すべてを使った8文字がこのあたり(約52ビット)。 二段階認証と組み合わせる前提なら |
| 強い60〜80ビット | 小文字だけでも16文字あればここに届きます(約75ビット) |
| とても強い80ビット以上 | 4種類すべてを使った20文字で約131ビット。 これ1つでログインするならここを目指します |
区切りは、米国 NIST のガイドライン(SP 800-63B)が求めている長さに合わせています。 単独で使うパスワードは15文字以上、二段階認証と組み合わせる場合でも8文字以上です。