【Node.js24.x】Object::randomBytes()メソッドの使い方
randomBytesメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
randomBytesメソッドは、Node.jsの環境において、オブジェクトに属するメソッドの一つで、暗号学的に強力な乱数バイト列を生成するために使われる重要な機能です。このメソッドは、主にNode.jsのcryptoモジュールを通じて提供されており、高いセキュリティが求められる場面で特に役立ちます。例えば、パスワードのハッシュ化に必要なソルトの生成、セッションID、認証トークン、暗号鍵などの生成において、予測不可能な安全な乱数が必要な場合に利用されます。
このメソッドは、引数として生成したい乱数バイトの長さを指定します。その結果として、指定された長さの乱数バイトを含むBufferオブジェクトを返します。処理は非同期的に実行されることが推奨されており、コールバック関数を渡すことで、乱数生成が完了した後に処理を続けることができます。また、コールバック関数を省略した場合は同期的に乱数を生成することも可能ですが、システムの応答性を保つためには非同期処理が望ましいとされています。randomBytesメソッドは、Node.jsアプリケーションの情報セキュリティを確保するための基盤となる、非常に信頼性の高い乱数生成手段を提供します。
構文(syntax)
1import { randomBytes } from 'node:crypto'; 2 3async function generateSecureRandomData() { 4 const buffer = await randomBytes(32); // 32バイトの乱数を生成 5 console.log(buffer.toString('hex')); // 16進数文字列に変換して表示 6} 7 8generateSecureRandomData();
引数(parameters)
size, callback
- size: number: 生成するランダムバイトのバイト数を指定する数値
- callback: Function: ランダムバイトの生成が完了した後に呼び出されるコールバック関数
戻り値(return)
Buffer
指定されたバイト数だけランダムなデータを持つBufferオブジェクトを返します。