【Node.js24.x】Object::generateKeyPair()メソッドの使い方
generateKeyPairメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
generateKeyPairメソッドは、公開鍵暗号方式で利用される公開鍵と秘密鍵のペアを非同期に生成するメソッドです。このメソッドはNode.jsの暗号化機能を提供するcryptoモジュールに属し、データの暗号化、デジタル署名、セキュアな通信など、セキュリティが要求される多様なアプリケーションにおいて、その基盤となる鍵ペアを作成するために不可欠な役割を果たします。
サポートする暗号アルゴリズムはRSA、DSA、EC (楕円曲線) など多岐にわたり、生成する鍵のタイプや鍵長、公開指数といった詳細なオプションを柔軟に指定することができます。鍵生成処理は計算コストが高くなることがありますが、generateKeyPairメソッドは非同期で実行されるため、鍵の生成中にメインスレッドがブロックされることなく、他の処理をスムーズに続行できる利点があります。
鍵ペアの生成が完了すると、結果は指定されたコールバック関数を通じて取得されるか、Promiseとして処理されます。生成された鍵は、一般的にPEM形式などの標準的なフォーマットでエクスポートでき、公開鍵は安全に共有され、秘密鍵は厳重に保管される必要があります。秘密鍵の漏洩はセキュリティ上の深刻な脅威となるため、その取り扱いには常に細心の注意を払うことが求められます。このメソッドを通じて、Node.jsアプリケーションに堅牢なセキュリティ機能を追加することが可能になります。
構文(syntax)
1import { generateKeyPair } from 'node:crypto'; 2 3try { 4 const { publicKey, privateKey } = await generateKeyPair( 5 'rsa', 6 { 7 modulusLength: 2048, 8 publicKeyEncoding: { 9 type: 'spki', 10 format: 'pem' 11 }, 12 privateKeyEncoding: { 13 type: 'pkcs8', 14 format: 'pem' 15 } 16 } 17 ); 18} catch (err) { 19 // エラー処理 20}
引数(parameters)
type, options, callback
- type: string: 生成するキーペアのタイプを指定します。例: 'rsa', 'ec', 'dsa'。
- options: object: キーペア生成に関する追加オプションを指定します。
- callback: function: キーペア生成完了後に呼び出されるコールバック関数。エラーと生成されたキーペアを引数に取ります。
戻り値(return)
戻り値なし
戻り値はありません