乱数生成
乱数生成とは
乱数生成(RNG)とは、予測可能なパターンを持たない数列を生成する処理です。コンピュータは通常、決定的なアルゴリズムで擬似乱数を生成しますが、このツールはWeb Crypto API(crypto.getRandomValues)を使用し、OSのエントロピープールから暗号学的に安全な乱数を取得します。生成される数値は真に予測不可能で、セキュリティが求められる用途にも適しています。
使い方
最小値と最大値を設定し、生成する個数を選択して「生成」をクリックしてください。「整数のみ」を有効にすると整数だけが生成されます。「重複を許可」で同じ数値の出現を制御できます。
暗号学的な乱数
このツールはcrypto.getRandomValues()を使用して暗号学的に安全な乱数を生成します。結果は真に予測不可能で、高品質な乱数が必要なあらゆる用途に適しています。
主な用途
- ゲームや抽選 — ランダムな当選者の選出やゲーム要素の生成
- 統計的サンプリング — 母集団からランダムにサンプルを選択
- ソフトウェアテスト — テストデータやエッジケースの生成
- 教育 — 確率の概念や分布の実演
- 意思決定 — 特に好みがない場合のランダムな選択
ヒント
重複なしで数値を生成する場合、範囲が生成個数より大きい必要があります。例えば、1から5の範囲で10個のユニークな整数を生成することはできません。抽選には、重複なしで対象の番号範囲を設定してください。特定の小数精度が必要な場合は、大きな範囲で整数を生成してから割り算する方法もあります。
プライバシー
すべての処理はブラウザ内で完結します。データがサーバーに送信されることはありません。
よくある質問
このツールの乱数は、よくあるMath.randomと何が違いますか?
Math.randomは決定的なアルゴリズムによる擬似乱数ですが、このツールはWeb Crypto API(crypto.getRandomValues)を使い、OSのエントロピープールから暗号学的に安全な乱数を取得します。そのため結果は真に予測不可能で、セキュリティが求められる用途にも適しています。
生成された乱数はサーバーに記録されますか?
いいえ。乱数の生成はすべてブラウザ内で完結し、結果や設定がサーバーに送信・保存・記録されることは一切ありません。
一度に何個まで生成できますか?整数と小数の両方に対応していますか?
個数を指定して複数の乱数をまとめて生成できます。「整数のみ」を有効にすると整数だけ、無効にすると小数も生成されます。最小値・最大値で範囲を自由に指定できます。
重複なしで生成するときの注意点はありますか?
重複なしの場合、範囲が生成個数より広い必要があります。たとえば1〜5の範囲で10個のユニークな整数は作れず、その場合は「重複なしの個数に対して範囲が不足しています」というエラーが表示されます。
抽選やくじ引きにはどう設定すればよいですか?
対象の番号範囲を最小値・最大値に設定し、「重複を許可」をオフにして当選個数を指定すれば、重複のない当選番号が得られます。各番号が等確率で選ばれるため公平な抽選になります。