メインコンテンツへスキップ
Z

乱数ジェネレーター

暗号学的に安全な乱数生成器で整数を作成——範囲や個数を自由に設定し、重複なしの値のみを抽出、10進数/2進数/8進数/16進数で出力できます。

無料 登録不要 クライアントサイド プライバシーに配慮 Updated

使い方

  1. 1 最小値(Min)・最大値(Max)・個数(Count)を設定します。
  2. 2 「重複なし」をオンにすると、非復元抽出(重複しないサンプリング)になります。
  3. 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. 1

    抽選会・プレゼント企画の当選番号抽出

    既知の範囲内で重複のないユニークな当選チケット番号のセットを生成します。

  2. 2

    サンプリングとテストデータ生成

    テストフィクスチャの初期化、負荷テスト用ID、統計サンプリングのために、10進数または16進数のランダムな整数のバッチを生成します。

  3. 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によりクライアント側で実行され、数値がサーバーに送信されることはありません。

カテゴリ
クリエイター
料金
無料
プライバシー
ブラウザベース
登録
不要

参考文献

プライバシー

明記されない限り、データがブラウザの外に送信されることはありません。乱数ジェネレーター は完全にクライアント側で動作します — サーバーへのアップロードなし、ログなし、入力内容のトラッキングなし。

関連ツール

Zerethon Social で作成・共有・成長しよう

無料登録。ポイントを獲得し、実績を集め、世界中のクリエイターとつながりましょう。

Zerethon を無料で試す