5. Key Derivation Functions (鍵導出関数)
5. Key Derivation Functions (鍵導出関数)
鍵導出関数は、基本鍵と他のパラメータから導出鍵を生成します。パスワードベース鍵導出関数では、基本鍵はパスワードであり、他のパラメータはセクション3で概説されたように、ソルト値と反復回数です。
ここで定義されるパスワードベース鍵導出関数の主なアプリケーションは、セクション6の暗号化スキームとセクション7のメッセージ認証スキームです。他のアプリケーションも確実に可能であるため、これらの関数を独立して定義します。
このセクションでは、PBKDF1 と PBKDF2 の2つの関数を規定します。PBKDF2 は新しいアプリケーションに推奨されます。PBKDF1 は既存のアプリケーションとの互換性のためにのみ含まれており、新しいアプリケーションには推奨されません。
ここで定義される鍵導出関数の典型的なアプリケーションには、以下のステップが含まれる可能性があります:
-
セクション4で概説されているように、ソルト S と反復回数 c を選択します。
-
導出鍵の長さをオクテット単位で選択します、dkLen。
-
鍵導出関数を、パスワード、ソルト、反復回数、および鍵長に適用して、導出鍵を生成します。
-
導出鍵を出力します。
セクション3で説明されているように、ソルトを変更することで、パスワードから任意の数の鍵を導出できます。