このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

HkdfParams

ウェブ暗号化 APIHkdfParams 辞書は、HKDF アルゴリズムを用いる際、SubtleCrypto.deriveKey() の引数 algorithm として渡すオブジェクトを表します。

インスタンスプロパティ

name

文字列です。HKDF に設定してください。

hash

文字列、もしくは単一の文字列値プロパティ name を持つオブジェクトです。これは用いるダイジェストアルゴリズムを表す識別子です。以下のいずれかを指定してください。

  • SHA-256: SHA-256 アルゴリズムを選択します。
  • SHA-384: SHA-384 アルゴリズムを選択します。
  • SHA-512: SHA-512 アルゴリズムを選択します。

警告: SHA-1 にも対応していますが、SHA-1 アルゴリズムは脆弱とされており、もう使用しないべきです。

salt

ArrayBufferTypedArrayDataView のいずれかです。HKDF の仕様書では、salt を加えることで「HKDF の強度を大幅に向上させる」としています。salt は、ダイジェスト関数の出力と同じ長さのランダム値または疑似ランダム値とするのが理想です。deriveKey() に渡す入力キーマテリアルと違って、salt は秘密にしておく必要はありません。

info

ArrayBufferTypedArrayDataView のいずれかで、アプリケーション固有のコンテキスト情報を表します。これにより、導出される鍵をアプリケーションやコンテキストに紐づけ、入力キーマテリアルが同じでも異なるコンテキスト用に異なるキーを導出できるようになります。これは、入力キーマテリアル自体とは独立にするのが重要です。このプロパティは必須ですが、空のバッファーを使用できます。

SubtleCrypto.deriveKey() の例を参照してください。

仕様書

Specification
Web Cryptography Level 2
# dfn-HkdfParams

ブラウザーの互換性

SubtleCrypto.deriveKey() メソッドで "HKDF" アルゴリズムに対応しているブラウザーは、この型に対応しているはずです。

関連情報