モジュール java.base
パッケージ javax.crypto

クラスEncryptedPrivateKeyInfo

java.lang.Object
javax.crypto.EncryptedPrivateKeyInfo

public class EncryptedPrivateKeyInfo extends Object
このクラスは、PKCS#8で定義されているEncryptedPrivateKeyInfo型を実装します。

そのASN.1定義は次のとおりです。

 EncryptedPrivateKeyInfo ::=  SEQUENCE {
     encryptionAlgorithm   AlgorithmIdentifier,
     encryptedData   OCTET STRING }

 AlgorithmIdentifier  ::=  SEQUENCE  {
     algorithm              OBJECT IDENTIFIER,
     parameters             ANY DEFINED BY algorithm OPTIONAL  }
 

導入されたバージョン:
1.4
関連項目:
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    EncryptedPrivateKeyInfo(byte[] encoded)
    そのASN.1エンコーディングからEncryptedPrivateKeyInfoを構築(つまり解析)します。
    EncryptedPrivateKeyInfo(String algName, byte[] encryptedData)
    暗号化アルゴリズム名と暗号化されたデータからEncryptedPrivateKeyInfoを構築します。
    EncryptedPrivateKeyInfo(AlgorithmParameters algParams, byte[] encryptedData)
    暗号化アルゴリズム・パラメータと暗号化されたデータからEncryptedPrivateKeyInfoを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    暗号化アルゴリズムを返します。
    暗号化アルゴリズムで使用されるアルゴリズム・パラメータを返します。
    byte[]
    このオブジェクトのASN.1エンコーディングを返します。
    byte[]
    暗号化されたデータを返します。
    getKeySpec(Key decryptKey)
    暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
    getKeySpec(Key decryptKey, String providerName)
    暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
    getKeySpec(Key decryptKey, Provider provider)
    暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
    暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • EncryptedPrivateKeyInfo

      public EncryptedPrivateKeyInfo(byte[] encoded) throws IOException
      そのASN.1エンコーディングからEncryptedPrivateKeyInfoを構築(つまり解析)します。
      パラメータ:
      encoded - このオブジェクトのASN.1エンコーディング。 この配列の内容は、後続の変更に影響されないようにコピーされる。
      例外:
      NullPointerException - encodedがnullの場合
      IOException - ASN.1エンコーディングの解析時にエラーが発生した場合。
    • EncryptedPrivateKeyInfo

      public EncryptedPrivateKeyInfo(String algName, byte[] encryptedData) throws NoSuchAlgorithmException
      暗号化アルゴリズム名と暗号化されたデータからEncryptedPrivateKeyInfoを構築します。

      ノート: このコンストラクタは、アルゴリズム・パラメータの値としてnullを使用します。 暗号化アルゴリズムがnull以外の値のパラメータを持つ場合は、EncryptedPrivateKeyInfo(AlgorithmParameters, byte[])など別のコンストラクタを使用するようにしてください。

      パラメータ:
      algName - 暗号化アルゴリズム名。 標準Cipherアルゴリズム名については、「Javaセキュリティ標準アルゴリズム名」ドキュメントを参照してください。
      encryptedData - 暗号化されたデータ。 このオブジェクトの構築時に、encrypedDataの内容が後続の変更に影響されないようにコピーされる。
      例外:
      NullPointerException - algNameまたはencryptedDataがnullの場合
      IllegalArgumentException - encryptedDataが空(長さ0)の場合。
      NoSuchAlgorithmException - 指定されたalgNameがサポートされていない場合。
    • EncryptedPrivateKeyInfo

      public EncryptedPrivateKeyInfo(AlgorithmParameters algParams, byte[] encryptedData) throws NoSuchAlgorithmException
      暗号化アルゴリズム・パラメータと暗号化されたデータからEncryptedPrivateKeyInfoを構築します。
      パラメータ:
      algParams - 暗号化アルゴリズムのアルゴリズム・パラメータ。algParams.getEncoded()は、EncryptedPrivateKeyInfo型のAlgorithmIdentiferコンポーネントのparametersフィールドのASN.1の暗号化されたバイトを返す。
      encryptedData - 暗号化されたデータ。 このオブジェクトの構築時に、encrypedDataの内容が後続の変更に影響されないようにコピーされる。
      例外:
      NullPointerException - algParamsまたはencryptedDataがnullの場合
      IllegalArgumentException - encryptedDataが空(長さ0)の場合。
      NoSuchAlgorithmException - 指定されたalgParamsパラメータの指定されたalgNameがサポートされていない場合。
  • メソッドの詳細

    • getAlgName

      public String getAlgName()
      暗号化アルゴリズムを返します。

      ノート: このようなマッピングが有効なときには、コンストラクタで指定された名前ではなく標準名が返されます。 標準Cipherアルゴリズム名については、「Javaセキュリティ標準アルゴリズム名」ドキュメントを参照してください。

      戻り値:
      暗号化アルゴリズム名
    • getAlgParameters

      public AlgorithmParameters getAlgParameters()
      暗号化アルゴリズムで使用されるアルゴリズム・パラメータを返します。
      戻り値:
      アルゴリズム・パラメータ
    • getEncryptedData

      public byte[] getEncryptedData()
      暗号化されたデータを返します。
      戻り値:
      暗号化されたデータ。 このメソッドが呼び出されるたびに新しい配列を返す。
    • getKeySpec

      public PKCS8EncodedKeySpec getKeySpec(Cipher cipher) throws InvalidKeySpecException
      暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
      ノート: 内包されたPKCS8EncodedKeySpecオブジェクトを正常に取得するには、暗号化されたデータの生成に使用する場合と同じキーとパラメータを使用して、cipherをCipher.DECRYPT_MODEまたはCipher.UNWRAP_MODEのいずれかに初期化する必要があります。
      パラメータ:
      cipher - 暗号化されたデータの復号化に使用される、初期化された暗号オブジェクト。
      戻り値:
      PKCS8EncodedKeySpecオブジェクト
      例外:
      NullPointerException - cipherがnullである場合。
      InvalidKeySpecException - 指定された暗号が暗号化されたデータに不適切な場合、または暗号化されたデータが壊れていて復号化できない場合。
    • getKeySpec

      public PKCS8EncodedKeySpec getKeySpec(Key decryptKey) throws NoSuchAlgorithmException, InvalidKeyException
      暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
      パラメータ:
      decryptKey - 暗号化されたデータの復号化に使用されるキー。
      戻り値:
      PKCS8EncodedKeySpecオブジェクト
      例外:
      NullPointerException - decryptKeyがnullである場合。
      NoSuchAlgorithmException - 暗号化されたデータの復号化に適切な暗号を見つけることができない場合。
      InvalidKeyException - 暗号化されたデータの復号化にdecryptKeyを使用できない場合、または復号化の結果が有効なPKCS8KeySpecでない場合。
      導入されたバージョン:
      1.5
    • getKeySpec

      暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
      パラメータ:
      decryptKey - 暗号化されたデータの復号化に使用されるキー。
      providerName - 使用されるCipherの実装を持つプロバイダの名前。
      戻り値:
      PKCS8EncodedKeySpecオブジェクト
      例外:
      NullPointerException - decryptKeyまたはproviderNameがnullの場合
      NoSuchProviderException - providerNameで指定されたプロバイダが登録されていない場合。
      NoSuchAlgorithmException - 暗号化されたデータの復号化に適切な暗号を見つけることができない場合。
      InvalidKeyException - 暗号化されたデータの復号化にdecryptKeyを使用できない場合、または復号化の結果が有効なPKCS8KeySpecでない場合。
      導入されたバージョン:
      1.5
    • getKeySpec

      public PKCS8EncodedKeySpec getKeySpec(Key decryptKey, Provider provider) throws NoSuchAlgorithmException, InvalidKeyException
      暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
      パラメータ:
      decryptKey - 暗号化されたデータの復号化に使用されるキー。
      provider - 使用されるCipherの実装を持つプロバイダの名前。
      戻り値:
      PKCS8EncodedKeySpecオブジェクト
      例外:
      NullPointerException - decryptKeyまたはproviderがnullの場合
      NoSuchAlgorithmException - provider内の暗号化されたデータの復号化に適切な暗号を見つけることができない場合。
      InvalidKeyException - 暗号化されたデータの復号化にdecryptKeyを使用できない場合、または復号化の結果が有効なPKCS8KeySpecでない場合。
      導入されたバージョン:
      1.5
    • getEncoded

      public byte[] getEncoded() throws IOException
      このオブジェクトのASN.1エンコーディングを返します。
      戻り値:
      ASN.1エンコーディング このメソッドが呼び出されるたびに新しい配列を返す。
      例外:
      IOException - そのASN.1エンコーディングの構築時にエラーが発生した場合。