【Node.js24.x】Object::pseudoRandomBytes()メソッドの使い方
pseudoRandomBytesメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
pseudoRandomBytesメソッドは、指定された長さの擬似乱数バイト列を生成するメソッドです。これはNode.jsの組み込みモジュールであるcryptoモジュールによって提供されており、主に暗号学的に安全な乱数を必要としない非暗号用途に利用されます。例えば、一時的なセッションIDの生成やテストデータの作成など、セキュリティ要件が低い場面での利用が想定されています。
このメソッドは、引数として生成したいバイト数(size)を受け取ります。sizeのみを指定した場合、メソッドは同期的に動作し、生成されたバイト列を格納したBufferオブジェクトを直接返します。これにより、処理結果をすぐに利用できます。
一方、sizeに加えてコールバック関数を引数に渡すことも可能です。この場合、メソッドは非同期的に動作し、擬似乱数の生成が完了した後に指定されたコールバック関数を呼び出します。コールバック関数は、エラーが発生した場合はそのエラーオブジェクトを、成功した場合は生成されたBufferオブジェクトを受け取ります。非同期版を利用することで、特に大量の乱数を生成する際にアプリケーションのメインスレッドをブロックせずに処理を進めることができます。
暗号用途にはcrypto.randomBytesメソッドなど、より強力な乱数生成器を使用する必要がある点にご注意ください。
構文(syntax)
1const crypto = require('crypto'); 2const size = 16; 3const buffer = crypto.pseudoRandomBytes(size); 4console.log(buffer.toString('hex'));
引数(parameters)
size, callback
- size: number: 生成するランダムバイト列のバイト数を指定する数値
- callback: Function: ランダムバイト列が生成された後に呼び出されるコールバック関数。引数としてエラーオブジェクト(error)と生成されたバッファ(buf)を受け取ります。
戻り値(return)
戻り値なし
戻り値はありません