メインコンテンツまでスキップ

4. Applications of HKDF (HKDF の応用)

4. Applications of HKDF (HKDF の応用)

HKDF は, さまざまな KDF アプリケーションでの使用を目的としています。これには, 不完全なランダム性のソース (物理乱数生成器 (random number generator, RNG) など) から疑似乱数生成器を構築すること, システムイベントやユーザーのキー入力などから収集されたエントロピーなどの弱いランダム性ソースから疑似ランダム性を生成すること, 鍵合意プロトコルでの共有 Diffie-Hellman 値からの暗号鍵の導出, ハイブリッド公開鍵暗号方式からの対称鍵の導出, 鍵ラッピングメカニズムのための鍵導出などが含まれます。これらすべてのアプリケーションは, HKDF のシンプルさと多目的な性質, およびその分析的基盤から恩恵を受けることができます。

一方で, 特定の運用要件により一部のアプリケーションは HKDF を"そのまま"使用できない, またはそれを使用できてもスキームの完全な利点を得られない可能性があることが予想されます。重要な例の1つは, ユーザーのパスワードなどの低エントロピーソースからの暗号鍵の導出です。HKDF の抽出ステップは既存のエントロピーを集中できますが, エントロピーを増幅することはできません。パスワードベースの KDF の場合, 主な目標は, ソルト値と鍵導出計算の意図的な減速という2つの要素を使用して辞書攻撃を遅らせることです。HKDF は自然にソルトの使用に対応していますが, 減速メカニズムはこの仕様の一部ではありません。パスワードベースの KDF に関心のあるアプリケーションは, たとえば [PKCS5] が HKDF よりもそのニーズをよりよく満たすかどうかを検討する必要があります。