Pbkdf2Params
ウェブ暗号化 API の Pbkdf2Params 辞書は、PBKDF2 アルゴリズムを用いる際に SubtleCrypto.deriveKey() の引数 algorithm に渡すオブジェクトを表します。
インスタンスプロパティ
name-
文字列です。
PBKDF2に設定してください。 hash-
文字列、または単一の文字列値プロパティ
nameを持つオブジェクトです。これは、用いるダイジェストアルゴリズムを表す識別子です。以下のいずれかを設定してください。警告:
SHA-1はほとんどの暗号アプリケーションでは脆弱とされていますが、PBKDF2 ではまだ安全とされています。とはいえ、全ての使用を移行することが推奨されるので、SHA-1を使う必要がなければ使わないでください。かわりに他のダイジェストアルゴリズムを使用してください。 salt-
ArrayBuffer、TypedArray、DataViewのいずれかです。16 バイト以上のランダム値または疑似ランダム値を設定するべきです。deriveKey()に渡す入力キーマテリアルと違って、saltは秘密にしておく必要はありません。 iterations-
Numberで、deriveKey()内でハッシュ関数を実行する回数を表します。これにより、deriveKey()の処理の計算コストがどのくらい高くなるか (すなわち、遅くなるか) を決定します。ここでは、攻撃者が鍵に対して辞書攻撃を行う際のコストが上がるため、遅いことは良いことです。一般的な助言としては、アプリケーションのパフォーマンスが許容できる範囲で、できるだけ多い回数を用いてください。
例
SubtleCrypto.deriveKey() の例を参照してください。
仕様書
| Specification |
|---|
| Web Cryptography Level 2> # dfn-Pbkdf2Params> |
ブラウザーの互換性
SubtleCrypto.deriveKey() メソッドで "PBKDF2" アルゴリズムに対応しているブラウザーは、この型に対応しているはずです。