パスワード統計

パスワードの文字数、UTF-8バイト数、大文字、小文字、数字、記号、ユニークな文字数、連続数を数え、シャノンエントロピーとプールのエントロピーも表示します。

上にパスワードを入力すると分析します。どこにも送信されません。

すべてブラウザ内で実行されます。データがアップロードされることはありません。

パスワード統計ツールとは?

パスワードを数値に分解します。Unicode文字数、UTF-8バイト数、UTF-16コードユニット数、文字種ごとの数、ユニークな文字数、最頻出の文字、最長の連続、シャノンエントロピーとプールのエントロピー、hashcatマスク、16進バイトです。

パスワード統計ツールの使い方

  1. パスワード欄にパスワードを入力または貼り付けます。
  2. 統計のグリッドを確認します。値は入力に合わせて更新されます。
  3. システムがバイト数でパスワードを制限している場合は、UTF-8 バイト数を確認します。
  4. 正確なバイト列が必要なら、16進数の値をコピーします。

例

入力
Tr0ub4dor&3
出力
Length 11, UTF-8 bytes 11, unique 10, uppercase 1, lowercase 6, digits 3, symbols 1, most frequent "r" × 2, pool entropy 72.1 bits

パスワード統計ツールを使うべき場面

バイト数の上限の確認(bcryptは最初の72バイトしか使いません)や、システムがパスワードを拒否する理由のデバッグなど、正確な数が必要なときに使います。強度の判定には強度チェッカーを使ってください。

パスワード統計ツールの仕組み

パスワードはUnicodeコードポイント単位で走査されます。各文字は、大文字A–Z、小文字a–z、数字、ASCII記号、スペース、その他のUnicodeに分類されます。バイト数は TextEncoder(UTF-8)で数えます。シャノンエントロピーは文字の出現頻度についての −Σ p·log2(p)、プールのエントロピーは 長さ × log2(文字種ごとのサイズの合計) です。

一般的な使用例

  • パスフレーズのbcryptの72バイト上限に対する確認
  • 文字の数え方が異なるパスワードルールのデバッグ
  • 「数字を2つ以上」などのポリシー要件の検証
  • 絵文字やアクセント付き文字を含むパスワードの調査

よくある質問

文字数とUTF-8バイト数が違うのはなぜですか?

ASCII以外の文字はUTF-8で2〜4バイトを使います。たとえばéは2バイト、ほとんどの絵文字は4バイトです。

何が記号として数えられますか?

印刷可能なASCIIの句読点32文字です。それ以外のASCII外の文字は「その他のUnicode」として数えられます。

UTF-16の数は何のためにありますか?

JavaScriptやJavaは文字列の長さをUTF-16コードユニットで測るため、maxlength属性や一部のAPIがこの数を使います。

他のカテゴリを見る