ランダム文字列生成ツール|長さ指定・記号・URL安全対応【無料】

無料Webアプリ - ランダム文字列生成ツール|長さ指定・記号・URL安全対応【無料】 データ変換ツール
無料Webアプリ - ランダム文字列生成ツール|長さ指定・記号・URL安全対応【無料】
スポンサーリンク

ランダム文字列生成ツール

ランダム文字列生成ツールの使い方

このツールは、ランダム文字列を生成します。

各設定を選択すると、リアルタイムで生成して表示します。

ランダム文字列とは

ランダム文字列(Random String) とは、予測不可能なアルゴリズムによって生成された文字の列です。「ランダム」の品質は用途によって求められる水準が異なり、大きく次の2種類に分かれます。

種別特徴主な用途
疑似乱数(PRNG)高速。シード値から再現可能テストデータ、ゲーム
暗号論的乱数(CSPRNG)予測不可能・再現不可パスワード、トークン、鍵生成

セキュリティが求められる場面では必ず CSPRNG を使用してください。本ツールはブラウザの crypto.getRandomValues() API を利用しており、暗号論的に安全な乱数を生成します。

生成方法の仕組み

ステップ1:文字プールの構築

まず使用可能な文字の集合(プール)を定義します。

英小文字 : abcdefghijklmnopqrstuvwxyz  (26文字)
英大文字 : ABCDEFGHIJKLMNOPQRSTUVWXYZ  (26文字)
数字     : 0123456789                   (10文字)
記号     : !@#$%^&*()-_=+[]{}|;:,.<>?  (26文字)

→ 全種類有効時のプール: 88文字

プールが大きいほど、同じ長さの文字列でも取りうる組み合わせ数(エントロピー)が増大します。

ステップ2:エントロピー計算

エントロピー(ビット数) は文字列の「推測困難さ」を数値化したものです。

エントロピー = log₂(プールサイズ) × 文字数

実例(プールサイズ88文字の場合):

文字数エントロピー解読耐性の目安
8文字約50 bit弱い(短命用途のみ)
12文字約75 bit一般的なパスワード
16文字約100 bit推奨(長期保存)
24文字約151 bit暗号鍵・APIトークン

ステップ3:文字の選択

javascriptの場合、Math.random() は暗号論的に安全ではないため、crypto.getRandomValues() を使用します。

// NG
const index = Math.floor(Math.random() * pool.length);

// OK
function secureRandom(max) {
  const arr = new Uint32Array(1);
  crypto.getRandomValues(arr);
  return arr[0] % max;
}

プリセット解説

パスワード

全文字種を有効にし、エントロピーを最大化します。英字・数字・記号を組み合わせることで、多くのパスワードポリシーを満たします。推奨長:16〜24文字以上

英数字のみ

a-z A-Z 0-9 のみを使用。記号を含まないため、入力しやすく多くのシステムと互換性があります。推奨長:20文字以上

数字のみ

PIN コードや数値のみを受け付けるフォームに最適。6〜8桁の数値 ID 生成に使います。

URL安全(URL-safe)

a-z A-Z 0-9 - _ のみ使用。URLパラメータやファイル名にそのまま使用できます。Base64 の + / = を含まないため、エンコード不要です。

Base64風

a-z A-Z 0-9 + / を使用。厳密な Base64 ではありませんが、同様の文字セットで短いトークンを生成したいときに便利です。

HEX

0-9 a-f のみ使用。UUID 風の識別子や、カラーコード、ハッシュ値の代替として利用できます。

よくある用途

  • APIキー(URL安全・32文字)・Bearerトークン(英数字・48文字)を生成したい
  • ユニットテストやE2Eテストで重複しないユーザー名・メールアドレスを生成したい
  • シークレットキー・暗号化キーを生成したい

注意点

プライバシーについて

本ツールはブラウザ上で処理を行うため、入力されたデータが外部サーバーに送信されることはありません。

タイトルとURLをコピーしました