java.lang.Object
javax.crypto.KEM.Decapsulator
- 含まれているクラス:
- KEM
public static final class KEM.Decapsulator extends Object
KEMレシーバ側の
KEM.newDecapsulator(java.security.PrivateKey)によって生成されるデカプセレータ。
このクラスは、KEMの主要なデ・カプセル化関数を表します。 decapsulateメソッドを起動すると、キーのカプセル化メッセージから秘密キーがリカバリされます。
- APIのノート:
- このクラスは、Java SE 17 Maintenance Release 1で定義されています。
- 導入されたバージョン:
- 17
-
メソッドのサマリー
修飾子と型メソッド説明decapsulate(byte[] encapsulation) キーのデ・カプセル化機能。decapsulate(byte[] encapsulation, int from, int to, String algorithm) キーのデ・カプセル化機能。intキー・カプセル化メッセージのサイズを返します。プロバイダの名前を返します。int共有シークレットのサイズを返します。
-
メソッドの詳細
-
providerName
public String providerName()プロバイダの名前を返します。- 戻り値:
- プロバイダの名前
-
decapsulate
public SecretKey decapsulate(byte[] encapsulation) throws DecapsulateException キーのデ・カプセル化機能。このメソッドは
decapsulate(encapsulation, 0, secretSize(), "Generic")と同等です。 この引数の組合せは、すべての実装でサポートされる必要があります。生成された秘密キーは通常、キー導出関数(KDF)に入力キーイング・マテリアルとして渡されます。
- パラメータ:
encapsulation- センダーからのキー・カプセル化メッセージ。 サイズは、encapsulationSize()によって返される値と等しくする必要があり、そうでない場合、DecapsulateExceptionがスローされます。- 戻り値:
- アルゴリズム名"一般"を持つ
SecretKeyとしての共有シークレット - throws:
DecapsulateException- デ・カプセル化プロセス中にエラーが発生した場合NullPointerException-encapsulationがnullの場合
-
decapsulate
public SecretKey decapsulate(byte[] encapsulation, int from, int to, String algorithm) throws DecapsulateException キーのデ・カプセル化機能。このメソッドを起動すると、キーのカプセル化メッセージから秘密キーがリカバリされます。
実装では、
from、toおよびalgorithmの任意の組合せをサポートしないことを選択できます。- パラメータ:
encapsulation- センダーからのキー・カプセル化メッセージ。 サイズは、encapsulationSize()によって返される値と等しくする必要があり、そうでない場合、DecapsulateExceptionがスローされます。from- 返される共有シークレット・バイト配列の初期インデックス(両端を含む)to- 返される共有シークレット・バイト配列の最終インデックス、排他的algorithm- 返される秘密キーのアルゴリズム名- 戻り値:
fromからtoまでのシークレットのバイトを含むSecretKeyとしての共有シークレットの一部、排他的、および指定されたアルゴリズム名。 たとえば、decapsulate(encapsulation, secretSize() - 16, secretSize(), "AES")は、共有シークレットの最後の16バイトを128ビットのAESキーとして使用します。- throws:
DecapsulateException- デ・カプセル化プロセス中にエラーが発生した場合IndexOutOfBoundsException-from < 0、from > toまたはto > secretSize()の場合NullPointerException-encapsulationまたはalgorithmがnullの場合UnsupportedOperationException-from、to、およびalgorithmの組み合わせがデカプセレータによってサポートされない場合
-
secretSize
public int secretSize()共有シークレットのサイズを返します。このメソッドをコールして、
decapsulateがコールされる前に共有シークレットの長さを調べるか、取得したSecretKeyが抽出可能でないかを確認できます。- 戻り値:
- 共有シークレットのサイズ
-
encapsulationSize
public int encapsulationSize()キー・カプセル化メッセージのサイズを返します。このメソッドは、上位レベルのプロトコルによって長さ情報が提供されない場合に、長いバイト配列からカプセル化メッセージを抽出するために使用できます。
- 戻り値:
- キー・カプセル化メッセージのサイズ
-