ランダム文字列生成|文字数・文字種・IDを指定
1〜100文字・最大20個まで、用途に合わせたランダム文字列を無料生成
英大文字・小文字・数字・記号、似た文字の除外を指定して、パスワードやランダムIDの候補を作れます。 Web Crypto APIを使い、生成からコピーまですべてブラウザ内で処理します。
生成設定
生成結果
ランダム文字列がここに表示されます
設定を選択して「生成」ボタンを押してください
パスワード
アカウントやシステムのパスワード生成に。記号を含めてセキュリティを向上。
🎫 APIトークン
API認証やセッション管理用のトークン生成に。英数字で長めに設定。
認証コード
二要素認証やワンタイムパスワードに。似た文字を除外して誤読防止。
🆔 一意ID
ログインID候補や一時的な識別子に。永続的な一意性が必要ならUUID生成を利用。
ランダム文字列生成ツールの使い方
文字数、生成数、文字種を指定して、パスワードやログインID、テストデータに使うランダム文字列を作れます。乱数にはブラウザのWeb Crypto APIを使用し、入力内容と生成結果をサーバーへ送信しません。
用途を選択
プリセットボタン(パスワード・APIトークン・認証コード・ログインID設定)から用途に合った設定を選択するか、手動で設定をカスタマイズできます。
文字列長を設定
スライダーで1〜100文字の範囲で文字列の長さを調整します。パスワードなら16文字以上、APIトークンなら32文字以上が推奨です。
文字種を選択
大文字・小文字・数字・記号の組み合わせを選択します。セキュリティを高めるには、すべての文字種を含めることが重要です。
生成・コピー
「ランダム文字列を生成」ボタンで一括生成し、個別または一括でクリップボードにコピーできます。生成数は1〜20個まで設定可能です。
ランダム文字列は何文字にすべきか(用途別の早見表)
「ランダムな文字列を作りたい」といっても、パスワード・APIトークン・ID・認証コードでは適切な長さと文字種が違います。迷ったら次の目安から選び、プリセットボタンで一括設定してください。
| 用途 | 推奨文字数 | 文字種 | 対応プリセット |
|---|---|---|---|
| Webサービスのパスワード | 12〜16文字 | 英大文字+小文字+数字+記号 | 「パスワード設定」 |
| 重要アカウント・管理者権限 | 16文字以上(20〜32推奨) | 英大文字+小文字+数字+記号 | 「パスワード設定」+文字数を延長 |
| APIトークン・セッション値 | 32文字以上 | 英大文字+小文字+数字(記号なし) | 「APIトークン設定」 |
| ランダムID・一時的な識別子 | 8〜16文字 | 英数字+「似た文字を除外」 | 「ログインID設定」 |
| 認証コード・ワンタイムコード | 6〜8文字 | 数字のみ、または英大文字+数字+「似た文字を除外」 | 「認証コード設定」 |
| クーポン・シリアルコード | 8〜12文字 | 英大文字+数字+「似た文字を除外」 | 手動設定 |
人が画面を見て入力したり、紙に印刷して配ったりするコード(認証コード・クーポンなど)では、「似た文字を除外」をオンにすると i / l / 1 / L / o / 0 / O の読み間違いを防げます。逆に、システム同士が受け渡すだけのトークンやIDでは、除外せず文字種を多く使ったほうが後述の「組み合わせ数」が大きくなり有利です。
文字数と文字種で「強さ」が決まる(組み合わせ数の目安)
ランダム文字列の推測されにくさは、取りうる値の総数=「文字種の数 の 文字数乗」で決まります。文字数を1増やすと総数は文字種の数の倍率で一気に増えるため、強くしたいときはまず文字数を伸ばすのが効果的です。
| 文字種 | 8文字 | 12文字 | 16文字 | 32文字 |
|---|---|---|---|---|
| 数字のみ(10種) | 約108 | 約1012 | 約1016 | 約1032 |
| 英小文字+数字(36種) | 約1012 | 約1018 | 約1024 | 約1049 |
| 英大文字+小文字+数字(62種) | 約1014 | 約1021 | 約1028 | 約1057 |
| 記号も含む(88種) | 約1015 | 約1023 | 約1031 | 約1062 |
たとえば「英大文字+小文字+数字」で12文字なら 6212 = 約3.2×1021(22桁)通りあり、総当たりでの推測は現実的に困難です。 表の「88種」は本ツールが記号として使う !@#$%^&*()_+-=[]{}|;:,.<>? の26種を英数字62種に加えた場合です。 なお本ツールは乱数にブラウザの Web Crypto API を使い、剰余による偏りを避けて1文字ずつ選ぶため、上の組み合わせがほぼ均等に出現します。
ランダムIDを作るときの注意
「重複しないID」がほしくてランダム文字列を使う場合、生成した瞬間に一意性が保証されるわけではない点に注意してください。ランダムIDはあくまで「偶然ぶつかりにくい値」です。
- 短いほど衝突(重複)しやすい。 文字数が少なく、生成する個数が多いほど、同じ値が偶然重なる確率が上がります(いわゆる誕生日問題)。IDとして使うなら、上の早見表を目安に8〜16文字を確保してください。
- 保存側でも重複対策を。 データベースの主キーや外部公開IDに使うなら、列に UNIQUE 制約を付け、万一重複したら再生成する作りにしておくと安全です。
- 確実に一意な識別子が必要なら UUID を。 形式が標準化され、実質的に重複しない識別子が必要な場合は、ランダム文字列より UUID生成ツール が向いています。人が読み書きする短いコードにはランダム文字列、システム内部の識別子には UUID、と使い分けると失敗しにくくなります。
- 人が転記するIDは「似た文字を除外」。 会員番号や引換コードのように人が目で見て入力するIDは、似た文字除外オプションで誤読を防げます。機械だけが扱うIDなら除外は不要です。
実際の使用例
強力なパスワード生成
Webサービスのログイン用に、大文字・小文字・数字・記号を含む16文字のパスワードを生成
INPUT
文字列長: 16 大文字: ON 小文字: ON 数字: ON 記号: ON 似た文字除外: ON
OUTPUT
K9$mPx2@nWqR7&vD
APIトークン生成
REST APIの認証トークンとして、英数字のみ32文字のトークンを生成
INPUT
文字列長: 32 大文字: ON 小文字: ON 数字: ON 記号: OFF
OUTPUT
a8Kx2mNp4Qr7Wv9BcDfGhJnTyUz3Ls5
ワンタイムパスワード生成
メール認証やSMS認証用の6文字数字コードを生成
INPUT
文字列長: 6 大文字: OFF 小文字: OFF 数字: ON 記号: OFF
OUTPUT
483927
よくある質問
生成された文字列の乱数は安全ですか?
ブラウザが提供するWeb Crypto API(crypto.getRandomValues)を使用し、剰余による偏りも避けて文字を選びます。ただし、実際のアカウントではサービスの要件を確認し、生成後は信頼できるパスワードマネージャーで管理してください。
生成した文字列はサーバーに保存されますか?
いいえ、すべての処理はお使いのブラウザ内で完結します。生成された文字列がサーバーに送信されたり保存されたりすることは一切ありません。
パスワードの推奨文字数は?
一般的なWebサービスでは12文字以上、重要なアカウントでは16文字以上が推奨されます。大文字・小文字・数字・記号をすべて含めることで、総当たり攻撃への耐性が大幅に向上します。
ランダムIDとUUIDはどう使い分けますか?
人が入力するログインID候補や短いテストデータには、文字数と文字種を指定できるランダム文字列が便利です。システム上で重複しにくい識別子が必要な場合は、形式が定まったUUID生成ツールを利用し、保存時にも重複チェックを行ってください。
似た文字を除外する機能とは?
「i」と「l」と「1」、「o」と「0」と「O」など、見た目が似ている文字を除外する機能です。認証コードなど、人が読み取る必要がある場面で誤読を防ぐために使用します。
カスタム文字とは何ですか?
標準の文字種(大文字・小文字・数字・記号)に加えて、独自の文字を追加できる機能です。「カスタム文字のみ使用」をオンにすると、指定した文字だけでランダム文字列を生成できます。
役立つTips
パスワードは使い回さない
異なるサービスには異なるパスワードを使用してください。このツールで複数のパスワードを一度に生成できます。
APIトークンは提供元で発行する
「APIトークン設定」は開発・テスト用のランダム値を作るプリセットです。実サービスの認証トークンは、そのサービスの管理画面や公式APIから発行してください。
二要素認証コードは短く読みやすく
認証コードは6〜8文字で、似た文字除外オプションを有効にすると、ユーザーが入力しやすくなります。
パスワードマネージャーの活用
生成した強力なパスワードは、パスワードマネージャーに保存して管理することをお勧めします。