暗号・乱数用語集
疑似乱数 - 暗号・乱数用語集
(Pseudo Random Number)
疑似乱数(PRNG:Pseudo Random Number)とは、コンピューターのアルゴリズムによって生成される、一見ランダムに見える数値列です。
初期値となる「シード値」をもとに決められた計算を行うことで、ランダムに見える数値を高速かつ大量に生成できます。
ただし、物理現象から生まれる真性乱数とは異なり、同じアルゴリズムとシード値を使用すれば、原理的には同じ数列を再現できます。
疑似乱数が使われるケース
疑似乱数は、大量の乱数を高速に必要とする用途で広く利用されています。
たとえば、シミュレーション、統計解析、ゲーム、抽選処理などです。
同じシード値を使えば同じ乱数列を再現できるため、実験やシミュレーション結果を再現したい場合にも適しています。
「疑似」乱数ではないものは?
疑似乱数と対になる乱数として、真性乱数(TRNG)があります。
疑似乱数がアルゴリズムによる計算で生成されるのに対し、真性乱数は熱雑音や量子現象などの物理現象を利用して生成されます。
簡単にまとめると「計算によって生成する乱数」が疑似乱数、「予測困難な物理現象を利用する乱数」が真性乱数、といえます。