ハッシュ/暗号

パスワードジェネレーター

長さと文字種を設定できる、暗号学的に安全なランダムパスワード。

This generator draws from a cryptographically secure source of randomness (the Web Crypto API) right in your browser. No password ever leaves your device or reaches a server.

How to use it

What makes a password strong

Strength comes from entropy — length and the size of the character set — not from how "complicated" a password looks to a person. A long password made only of lowercase letters is often stronger than a short one mixing every character type.

Where it's supported, turning on two-factor authentication does more for an account's security than relying on password length alone.

Things to keep in mind

Don't reuse the same password across services — a breach on one account shouldn't put the others at risk.

Store passwords in a password manager, not in a text file or notes app.

このツールに関する記事: パスワード生成ツール:パスワードを本当に強くするものは何か

よくある質問

生成されたパスワードを実際に強くしているものは何ですか?

複雑さよりも長さの方が重要です。大きな文字セットから作られた長いパスワードは可能な組み合わせが多く、珍しい記号がなくても総当たりを難しくします。

実際のアカウントのパスワード生成にこれを使っても安全ですか?

はい。パスワードは暗号学的に安全な乱数源を使ってブラウザ内でローカルに生成されます。サーバーには何も送信されず、どこにも保存されません。

l、1、O、0のような紛らわしい文字を除外するのはなぜですか?

これらの文字は一部のフォントで同じに見えることがあり、パスワードの入力や読み上げでミスが起きやすくなります。除外することで多少エントロピーは下がりますが、転記ミスは減ります。

単語によるパスフレーズはランダムな文字より優れていますか?

パスワードマネージャーに保存されるパスワードについては、ランダムな文字の方が1文字あたりのエントロピーは高くなります。しかし、自分で覚えておく必要がある「マスターパスワード」については、複数のランダムな単語からなるパスフレーズの方が実用的なことが多いです——同等かそれ以上のエントロピーでありながら覚えやすいためです。

ブラウザやパスワードマネージャーに組み込まれたパスワード生成機能は信頼できますか?

はい、Web Crypto APIなどの暗号学的に安全な乱数源を使用している場合は信頼できます。通常のMath.random()のような、セキュリティ用途に適さない疑似乱数生成器を使っている場合は信頼できません。

記事: ハッシュ/暗号

Hash Generator:MD5、SHA-1、SHA-256はどう違うのか

MD5が今もファイルの整合性検証に使われるが、パスワードには使われない理由。

Checksum Verifier:ファイルが壊れていないか確認する方法

一致するチェックサムがファイルの整合性を確認する一方、誰が作成したかは確認しない理由。

HMAC:鍵付きハッシュが通常のハッシュとどう違うか

通常のSHA-256がメッセージの改ざんから保護しない理由と、HMACがそれを可能にする理由。

Bcrypt:パスワードが速くではなく遅くハッシュ化される理由

速いSHA-256がパスワードに向かない理由と、遅いbcryptが適切な選択である理由。

UUID:ほとんど重複しない識別子はどう生成されるか

UUID v4が数百万台のマシンで独立して、衝突リスクなしに生成できる理由。

AES:共通鍵暗号の仕組み

AESで同じ鍵がデータの暗号化と復号の両方に使われる理由と、それが公開鍵暗号とどう違うか。

Argon2:このアルゴリズムがパスワードハッシュコンペティションで優勝した理由

Argon2が古いパスワードハッシュ化アルゴリズムよりGPUを使った攻撃に対してどう優れた防御を行うか。

Scrypt:このアルゴリズムがなぜこれほど多くのメモリを必要とするか

scryptがASICデバイスでのクラッキングを困難にするために意図的に大量のメモリを要求する理由。

TOTP:認証アプリのワンタイムコードはどう機能するか

Google Authenticatorのコードがインターネットなしで動作し、時刻だけでサーバーと同期する理由。

PBKDF2:最も古い鍵ストレッチング標準

PBKDF2の推奨反復回数が毎年増え続ける理由。

X.509:SSL証明書の中身は何か

緑色の錠前を表示する前に、ブラウザがサイトの証明書で正確に何をチェックしているか。

PGP:公開鍵と秘密鍵による暗号化の仕組み

PGPの公開鍵は自由に共有できるが、秘密鍵は決して共有してはいけない理由。