乱数ジェネレーター
暗号学的に安全な乱数生成器で整数を作成——範囲や個数を自由に設定し、重複なしの値のみを抽出、10進数/2進数/8進数/16進数で出力できます。
使い方
- 1 最小値(Min)・最大値(Max)・個数(Count)を設定します。
- 2 「重複なし」をオンにすると、非復元抽出(重複しないサンプリング)になります。
- 3 進数(10進数/2進数/8進数/16進数)と区切り文字(separator)を選択します。
このツールを使う理由
- 暗号学的に安全 — Math.random() ではなく Web Crypto API を使用。
- 重複なしモードは棄却サンプリング(rejection sampling)を採用 — 範囲全体で均一な分布を実現。
- 4種類の進数で出力 — そのままコードに貼り付け可能。
- 完全にクライアント側で完結 — 生成された数値がブラウザの外に送信されることはありません。
よくある質問
この乱数はどのくらいランダムなのですか?
<code class="font-mono text-xs">crypto.getRandomValues()</code> を使い、偏りのない均一サンプリング手法で生成しています——モジュロバイアス(modulo-bias)は生成時点で除去されます。
最大でいくつまで生成できますか?
1回の生成につき最大10,000個です。「重複なし」モードの場合、個数(count)は範囲のサイズ(range)以下である必要があります。
なぜ負の数を入力できるのですか?
最小値(Min)と最大値(Max)は符号付き整数なので、任意の整数範囲を指定できます。
乱数ジェネレーター とは?
乱数ジェネレーター(Random Number Generator)は、ブラウザ上で暗号学的に強力な乱数源を使い、ランダムな整数を生成するツールです。範囲と個数を自由に設定できるほか、結果を重複のない値のみに限定したり、10進数・2進数・8進数・16進数で表示したりできます。生成処理はすべてクライアント側で完結し、登録もサーバーとの通信も一切不要です。
機能
暗号学的に強力なランダム性
crypto.getRandomValues()を使用して候補ごとに64ビットを取得し、範囲の最大の倍数を超える値を棄却することで、単純なMath.random() * range方式で生じるモジュロバイアスを回避します。
10進数、2進数、8進数、16進数での出力
生成された各整数は、10進数(base 10)、2進数(0bプレフィックス)、8進数(0oプレフィックス)、16進数(0xプレフィックス、大文字表記)のいずれかの形式で出力できます。
ユニークのみモード
出力内の重複値を防ぎます。100,000までの範囲ではメモリ内でFisher-Yatesシャッフルを使用し、それより大きい範囲では、要求された個数の異なる値が集まるまでSetによるreservoir samplingにフォールバックします。
個数と区切り文字を設定可能
1回の実行で1個から10,000個までの数値を生成し、改行、カンマ、スペースのいずれかで区切って出力ボックスから直接コピーできます。
例
Input
min=1, max=100, count=10, unique=true, base=10, separator=comma
Output
7, 42, 88, 15, 63, 29, 91, 3, 56, 74 (10 unique integers between 1 and 100, comma-separated)
主な用途
-
1
抽選会・プレゼント企画の当選番号抽出
既知の範囲内で重複のないユニークな当選チケット番号のセットを生成します。
-
2
サンプリングとテストデータ生成
テストフィクスチャの初期化、負荷テスト用ID、統計サンプリングのために、10進数または16進数のランダムな整数のバッチを生成します。
-
3
ゲーム・テーブルトップツール
範囲(例:1-6、1-20)でのダイスロールを繰り返し行ったり、宝くじ形式のゲーム用に重複しない固定数の数値を抽出したりできます。
ブラウザのWeb Crypto API(crypto.getRandomValues)を使用し、Math.random()ではなく棄却サンプリング(rejection sampling)による偏りのない一様な出力で、ユーザー指定の[min, max]範囲内のランダムな整数を生成します。1回の実行で最大10,000個の値に対応し、オプションでユニークのみモード(100,000までの範囲にはFisher-Yatesシャッフル、それ以上の範囲にはSetによるreservoir samplingを使用)、および10進数、2進数、8進数、16進数形式での出力をサポートします。すべての処理はJavaScriptによりクライアント側で実行され、数値がサーバーに送信されることはありません。
- カテゴリ
- クリエイター
- 料金
- 無料
- プライバシー
- ブラウザベース
- 登録
- 不要
参考文献
- Crypto: getRandomValues() メソッド — MDN Web Docs
- Web Crypto API — MDN Web Docs
- BigInt — MDN Web Docs
プライバシー
明記されない限り、データがブラウザの外に送信されることはありません。乱数ジェネレーター は完全にクライアント側で動作します — サーバーへのアップロードなし、ログなし、入力内容のトラッキングなし。
関連ツール
YouTubeサムネイルダウンローダー
YouTube動画のサムネイルを利用可能なすべての解像度でダウンロードできます。動画URLを貼り付けるだけです。
ツールを開くOpen Graphプレビュー
URLをSNSでシェアしたときにどう表示されるか確認できます。Facebook、Twitter、LinkedIn、Slackでのシェアカードをプレビューします。
ツールを開く単語数・文字数カウント
単語数、文字数、文の数、段落数を瞬時にカウント。読書時間、朗読時間、頻出キーワードも同時に表示します。
ツールを開くLorem Ipsumジェネレーター
Lorem Ipsumのダミーテキストを段落・文・単語単位で生成します。HTMLタグで囲むオプションつき。
ツールを開くZerethon Social で作成・共有・成長しよう
無料登録。ポイントを獲得し、実績を集め、世界中のクリエイターとつながりましょう。