クラスHKDFParameterSpec.Builder

java.lang.Object
javax.crypto.spec.HKDFParameterSpec.Builder
含まれているインタフェース:
HKDFParameterSpecPREVIEW

public static final class HKDFParameterSpec.Builder extends Object
Builderは、JavaプラットフォームのプレビューAPIです。
プレビュー機能が有効な場合のみ、プログラムでBuilderを使用できます。
プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。
このBuilderは、ExtractおよびExtractThenExpandオブジェクトをビルドします。

Builderは、HKDFParameterSpecofExtractメソッドを介して初期化されます。 クラスの説明に示されているように、addIKMまたはaddSalt(あるいはその両方)を必要に応じてコールできます。 最後に、ExtractおよびExtractThenExpandのユースケースに対してextractOnlyまたはthenExpandをそれぞれコールすることで、オブジェクトは"built"です。 Builderはスレッド・セーフではないことに注意してください。

導入されたバージョン:
24
  • メソッドの詳細

    • extractOnly

      public HKDFParameterSpec.ExtractPREVIEW extractOnly()
      Builderの現在の状態からExtractオブジェクトを作成します。
      戻り値:
      不変のExtractオブジェクト
    • thenExpand

      public HKDFParameterSpec.ExtractThenExpandPREVIEW thenExpand(byte[] info, int length)
      Builderの現在の状態からExtractThenExpandオブジェクトを作成します。
      実装上のノート:
      HKDFの実装では、長さが255 * HMACの長さを超えないようにします。 HKDF実装では、 {code null} 情報値が長さ0バイト配列として扱われることも強制されます。
      パラメータ:
      info - オプションのコンテキストおよびアプリケーション固有の情報(null)。バイト配列は、後続の変更を防ぐためにクローニングされます
      length - 出力キーイング材料の長さ (0より大きくする必要があります)
      戻り値:
      不変のExtractThenExpandオブジェクト
      スロー:
      IllegalArgumentException - lengthが0より大きくない場合
    • addIKM

      入力キーイング・マテリアル(IKM)をビルダーに追加します。

      ユーザーは、入力キーイング・マテリアル値をピース・ミールで組み立てる場合、またはIKMの一部をハードウェア暗号化デバイスによって提供する場合に、addIKMを複数回コールできます。 ExtractオブジェクトまたはExtractThenExpandオブジェクトのikms()メソッドは、組み立てられた入力キーイング・マテリアルをSecretKeyオブジェクトのリストとして返します。

      パラメータ:
      ikm - 入力キーイング・マテリアル(IKM)値
      戻り値:
      このビルダー
      スロー:
      NullPointerException - ikm引数がnullの場合
    • addIKM

      public HKDFParameterSpec.BuilderPREVIEW addIKM(byte[] ikm)
      入力キーイング・マテリアル(IKM)をビルダーに追加します。 長さ0のikmバイト配列は破棄されることに注意してください。

      ユーザーは、入力キーイング・マテリアル値をピース・ミールで組み立てる場合、またはIKMの一部をハードウェア暗号化デバイスによって提供する場合に、addIKMを複数回コールできます。 ExtractオブジェクトまたはExtractThenExpandオブジェクトのikms()メソッドは、組み立てられた入力キーイング・マテリアルをSecretKeyオブジェクトのリストとして返します。

      パラメータ:
      ikm - 入力キーイング・マテリアルの(IKM)値。ikmバイト配列はSecretKeySpecに変換されます。これは、バイト配列がSecretKeySpecコンストラクタ内でクローニングされることを意味
      戻り値:
      このビルダー
      スロー:
      NullPointerException - ikm引数がnullの場合
    • addSalt

      ビルダーに塩を加えます。

      ユーザーがaddSaltを複数回コールできるのは、salt値をピース・ミールにアセンブルする場合、またはsaltの一部をハードウェア暗号化デバイスから提供する場合です。 後で構築されるExtractまたはExtractThenExpandオブジェクトのsalts()メソッドは、アセンブルされたsaltをSecretKeyオブジェクトのリストとして返します。

      パラメータ:
      salt - 塩の値
      戻り値:
      このビルダー
      スロー:
      NullPointerException - saltがnullの場合
    • addSalt

      public HKDFParameterSpec.BuilderPREVIEW addSalt(byte[] salt)
      ビルダーに塩を加えます。 長さ0のsaltバイト配列は破棄されることに注意してください。

      ユーザーがaddSaltを複数回コールできるのは、salt値をピース・ミールにアセンブルする場合、またはsaltの一部をハードウェア暗号化デバイスから提供する場合です。 後で構築されるExtractまたはExtractThenExpandオブジェクトのsalts()メソッドは、アセンブルされたsaltをSecretKeyオブジェクトのリストとして返します。

      パラメータ:
      salt - salt値。saltバイト配列はSecretKeySpecに変換されます。これは、バイト配列がSecretKeySpecコンストラクタ内でクローニングされることを意味
      戻り値:
      このビルダー
      スロー:
      NullPointerException - saltがnullの場合