関数の概要
crypto.randomBytesは、Node.jsの暗号モジュールで提供される関数であり、乱数を生成するために使用されます。主な目的は、セキュリティ目的でのランダムなバイト列の生成や、暗号鍵の生成などです。
パラメータの説明
引数 | 型 | 用途 |
---|---|---|
size | number | 生成するランダムなバイト数を指定 |
callback | Function | ランダムなバイト列が生成された後に呼び出されるコールバック関数 |
戻り値
crypto.randomBytesはBufferオブジェクトを返します。非同期的に動作し、ランダムなバイト列が生成された後にコールバック関数が呼び出されます。
使用例
ランダムな16バイトのバイト列を生成する例:
const crypto = require('crypto');
crypto.randomBytes(16, (err, buf) => {
if (err) throw err;
console.log(buf.toString('hex'));
});
32バイトのランダムなバイト列を生成して16進数に変換する例:
crypto.randomBytes(32, (err, buf) => {
if (err) throw err;
console.log(buf.toString('hex'));
});
関連する関数
crypto.randomFillSync: 同期的にランダムなデータを生成する関数
crypto.randomBytesSync: 同期的にランダムなバイト列を生成する関数
まとめ
crypto.randomBytesはセキュリティ目的でのランダムなバイト列生成に利用される関数であり、非同期的に動作することに注意が必要です。十分なランダム性を確保するために、適切なバイト数を指定することが重要です。