RandomSource.getRandomValues() メソッドは、暗号強度の強い乱数値を取得します。引数に与えた配列は、すべて乱数 (暗号的な意味でランダムに) で埋められます。

十分なパフォーマンスを保証するため、実装は真の乱数生成器を用いませんが、疑似乱数生成器が十分なエントロピーを持つシード値を使用します。他のある実装とは異なる PRNG が使われますが、暗号化に使うには適当なものです。実装には、システムレベルのエントロピーソースのように、十分なエントロピーを持つシード値を使う必要があります。

構文

cryptoObj.getRandomValues(typedArray);

引数

typedArray
整数値を基数とした TypedArrayInt8Array または Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array。配列内のすべての要素は乱数で上書きされます。

例外

/* window.crypto.getRandomValues が利用可能であると想定 */

var array = new Uint32Array(10);
window.crypto.getRandomValues(array);

console.log("Your lucky numbers:");
for (var i = 0; i < array.length; i++) {
    console.log(array[i]);
}

仕様

仕様書 策定状況 備考
Web Cryptography API 勧告 初期定義

ブラウザーの実装状況

機能 Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
基本サポート 11.0 (有) 21.0 11.0 15.0 3.1
機能 Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
基本サポート 4.4 23.0 (有) 21.0 11.0 37 6.1

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: Marsf
 最終更新者: Marsf,