【Node.js24.x】Object::createHmac()メソッドの使い方
createHmacメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
createHmacメソッドは、暗号学的なハッシュ関数と秘密鍵を組み合わせて、データの認証コード(HMAC)を生成するためのオブジェクトを作成するメソッドです。HMACとは、Hash-based Message Authentication Codeの略で、メッセージが途中で改ざんされていないこと(データの完全性)や、メッセージが信頼できる送信元から送られてきたこと(送信元の認証)を確認するために用いられる仕組みです。
このメソッドを使用すると、まずHMACの計算処理を行うためのHmacオブジェクトが生成されます。その際に、どのようなハッシュアルゴリズム(例えば、sha256やmd5など)を使用するかと、HMACの計算に不可欠な秘密鍵を指定します。生成されたHmacオブジェクトに対してデータを渡すことで、指定された秘密鍵とアルゴリズムを用いて計算されたHMAC値を得ることができます。
createHmacメソッドは、Node.jsのcryptoモジュールに属しており、Webアプリケーションにおけるユーザー認証のセッショントークン生成や、データの署名、APIリクエストの認証など、様々なセキュリティ関連の機能において重要な役割を果たします。データの信頼性と安全性を保証するために、このメソッドは幅広く利用されています。
構文(syntax)
1const crypto = require('node:crypto'); 2 3const algorithm = 'sha256'; 4const key = 'your-secret-key'; 5const dataToHash = 'This is the message to hash.'; 6 7const hmac = crypto.createHmac(algorithm, key); 8hmac.update(dataToHash); 9const digest = hmac.digest('hex'); 10 11console.log(digest);
引数(parameters)
algorithm, key, options = {}
- algorithm: string: 生成するHMACのアルゴリズム名(例: 'sha256', 'md5')
- key: string | Buffer | KeyObject: HMACの生成に使用する秘密鍵
- options: object = {}: HMAC生成に関する追加オプション(デフォルトは空オブジェクト)
戻り値(return)
Hmac
createHmacメソッドは、指定されたアルゴリズムとキーを使用してHMAC(Hash-based Message Authentication Code)オブジェクトを生成し、そのHmacオブジェクトを返します。このHmacオブジェクトは、メッセージの認証コードを計算するために使用されます。