クラスEncryptedPrivateKeyInfo
java.lang.Object
javax.crypto.EncryptedPrivateKeyInfo
- すべての実装されたインタフェース:
DEREncodablePREVIEW
公開非シール・クラスEncryptedPrivateKeyInfo ObjectがDEREncodablePREVIEWを実装する拡張
このクラスは、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) 指定された暗号化されたPKCS#8 ASN.1エンコーディングからEncryptedPrivateKeyInfoを構築します。EncryptedPrivateKeyInfo(String algName, byte[] encryptedData) 暗号化アルゴリズム名と暗号化されたデータからEncryptedPrivateKeyInfoを構築します。EncryptedPrivateKeyInfo(AlgorithmParameters algParams, byte[] encryptedData) 暗号化アルゴリズム・パラメータと暗号化されたデータからEncryptedPrivateKeyInfoを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明static EncryptedPrivateKeyInfoencrypt(DEREncodablePREVIEW de, char[] password) Preview.指定されたDEREncodableを暗号化してEncryptedPrivateKeyInfoを作成します。static EncryptedPrivateKeyInfoencrypt(DEREncodablePREVIEW de, char[] password, String algorithm, AlgorithmParameterSpec params, Provider provider) Preview.指定されたDEREncodableを暗号化してEncryptedPrivateKeyInfoを作成します。static EncryptedPrivateKeyInfoencrypt(DEREncodablePREVIEW de, Key encryptKey, String algorithm, AlgorithmParameterSpec params, Provider provider, SecureRandom random) Preview.指定されたDEREncodableを暗号化してEncryptedPrivateKeyInfoを作成します。暗号化アルゴリズムを返します。暗号化アルゴリズムで使用されるアルゴリズム・パラメータを返します。byte[]このオブジェクトのASN.1エンコーディングを返します。byte[]暗号化されたデータを返します。getKey(char[] password) Preview.指定されたパスワードを使用して、囲まれたPrivateKeyを抽出して返します。Preview.指定された復号化キーおよびプロバイダを使用して、囲まれたPrivateKeyを抽出して返します。getKeyPair(char[] password) Preview.指定されたパスワードを使用して、囲まれたKeyPairを抽出して返します。getKeyPair(Key decryptKey, Provider provider) Preview.指定された復号化キーおよびプロバイダを使用して、囲まれたKeyPairを抽出して返します。getKeySpec(Key decryptKey) 暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。getKeySpec(Key decryptKey, String providerName) 暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。getKeySpec(Key decryptKey, Provider provider) 暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。getKeySpec(Cipher cipher) 暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。クラスオブジェクトで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait修飾子と型メソッド説明protected Objectclone()このオブジェクトのコピーを作成して、返します。booleanこのオブジェクトと他のオブジェクトが等しいかどうかを示します。protected voidfinalize()削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。最終決定は非推奨であり、将来のリリースで削除される可能性があります。final Class<?> getClass()このObjectの実行時クラスを返します。inthashCode()このオブジェクトに対するハッシュ・コード値を返します。final voidnotify()このオブジェクトのモニターで待機中のスレッドを1つ再開します。final voidこのオブジェクトのモニターで待機中のすべてのスレッドを再開します。toString()オブジェクトの文字列表現を返します。final voidwait()現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。final voidwait(long timeoutMillis) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。final voidwait(long timeoutMillis, int nanos) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
-
コンストラクタの詳細
-
EncryptedPrivateKeyInfo
public EncryptedPrivateKeyInfo(byte[] encoded) throws IOException 指定された暗号化されたPKCS#8 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- 暗号化されたデータ。encryptedDataの内容は、このオブジェクトの作成時に以降の変更から保護するためにコピーされます。- スロー:
NullPointerException-algNameまたはencryptedDataがnullの場合。IllegalArgumentException-encryptedDataが空(長さ0)の場合。NoSuchAlgorithmException- 指定されたalgNameがサポートされていない場合。- 外部仕様
-
EncryptedPrivateKeyInfo
public EncryptedPrivateKeyInfo(AlgorithmParameters algParams, byte[] encryptedData) throws NoSuchAlgorithmException 暗号化アルゴリズム・パラメータと暗号化されたデータからEncryptedPrivateKeyInfoを構築します。- パラメータ:
algParams- 暗号化アルゴリズムのアルゴリズム・パラメータ。algParams.getEncoded()は、EncryptedPrivateKeyInfoタイプのAlgorithmIdentifierコンポーネントのparametersフィールドのASN.1エンコード・バイトを返します。encryptedData- 暗号化されたデータ。encryptedDataの内容は、このオブジェクトの作成時に以降の変更から保護するためにコピーされます。- スロー:
NullPointerException-algParamsまたはencryptedDataがnullの場合。IllegalArgumentException-encryptedDataが空(長さ0)の場合。NoSuchAlgorithmException- 指定されたalgParamsパラメータの指定されたalgNameがサポートされていない場合。
-
-
メソッドの詳細
-
getAlgName
public String getAlgName()暗号化アルゴリズムを返します。ノート: このようなマッピングが有効なときには、コンストラクタで指定された名前ではなく標準名が返されます。 標準Cipherアルゴリズム名については、「Javaセキュリティ標準アルゴリズム名」ドキュメントを参照してください。
- 戻り値:
- 暗号化アルゴリズム名
- 外部仕様
-
getAlgParameters
-
getEncryptedData
public byte[] getEncryptedData()暗号化されたデータを返します。- 戻り値:
- 暗号化されたデータ。 このメソッドが呼び出されるたびに新しい配列を返す。
-
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Cipher cipher) throws InvalidKeySpecException 暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。
ノート: 内包されたPKCS8EncodedKeySpecオブジェクトを正常に取得するには、暗号化されたデータの生成に使用する場合と同じキーとパラメータを使用して、cipherをCipher.DECRYPT_MODEまたはCipher.UNWRAP_MODEのいずれかに初期化する必要があります。- パラメータ:
cipher- 暗号化されたデータの復号化に使用される初期化されたCipherオブジェクト。- 戻り値:
- PKCS8EncodedKeySpecオブジェクト
- スロー:
NullPointerException-cipherがnullの場合。InvalidKeySpecException- 指定された暗号が暗号化されたデータに不適切な場合、または暗号化されたデータが壊れていて復号化できない場合。
-
encrypt
public static EncryptedPrivateKeyInfo encrypt(DEREncodablePREVIEW de, char[] password, String algorithm, AlgorithmParameterSpec params, Provider provider) encryptは、JavaプラットフォームのプレビューAPIです。プログラムでencryptを使用できるのは、プレビュー機能が有効な場合のみです。プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。指定されたDEREncodableを暗号化してEncryptedPrivateKeyInfoを作成します。 有効なパスワードベースの暗号化(PBE)アルゴリズムおよびパスワードを指定する必要があります。PBEアルゴリズム文字列の形式については、Java Security Standard Algorithm Names Specificationの「暗号アルゴリズム」の項を参照してください。
- パラメータ:
de- 暗号化するDEREncodable。 サポートされているタイプには、PrivateKey、KeyPairおよびPKCS8EncodedKeySpecがあります。password- PBE暗号化に使用されるパスワード。 この配列は、使用前にクローニングされます。algorithm- PBE暗号化アルゴリズムparams- 暗号化に使用されるAlgorithmParameterSpec。nullの場合、プロバイダのデフォルト・パラメータが適用されます。provider-SecretKeyFactoryおよびCipher操作のProvider。nullの場合、プロバイダのデフォルトが使用されます。- 戻り値:
EncryptedPrivateKeyInfo- スロー:
NullPointerException-de、passwordまたはalgorithmがnullの場合IllegalArgumentException-deがサポートされていないDEREncodableの場合、PBEキーの生成中にエラーが発生した場合、algorithmまたはparamsがプロバイダでサポートされていない場合、または暗号化中にエラーが発生した場合。- 導入されたバージョン:
- 26
-
encrypt
public static EncryptedPrivateKeyInfo encrypt(DEREncodablePREVIEW de, char[] password) encryptは、JavaプラットフォームのプレビューAPIです。プログラムでencryptを使用できるのは、プレビュー機能が有効な場合のみです。プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。指定されたDEREncodableを暗号化してEncryptedPrivateKeyInfoを作成します。 有効なパスワードを指定する必要があります。 デフォルトのパスワードベースの暗号化(PBE)アルゴリズムおよびプロバイダが使用されます。- 実装上のノート:
jdk.epkcs8.defaultAlgorithmセキュリティ・プロパティは、デフォルトの暗号化アルゴリズムを定義します。AlgorithmParameterSpecのデフォルトはプロバイダによって決まります。- パラメータ:
de- 暗号化するDEREncodable。 サポートされているタイプには、PrivateKey、KeyPairおよびPKCS8EncodedKeySpecがあります。password- PBE暗号化に使用されるパスワード。 この配列は、使用前にクローニングされます。- 戻り値:
EncryptedPrivateKeyInfo- スロー:
NullPointerException-deまたはpasswordがnullの場合IllegalArgumentException-deがサポートされていないDEREncodableの場合、PBEキーの生成中にエラーが発生した場合、またはデフォルトのアルゴリズムが正しく構成されていない場合- 導入されたバージョン:
- 26
-
encrypt
public static EncryptedPrivateKeyInfo encrypt(DEREncodablePREVIEW de, Key encryptKey, String algorithm, AlgorithmParameterSpec params, Provider provider, SecureRandom random) encryptは、JavaプラットフォームのプレビューAPIです。プログラムでencryptを使用できるのは、プレビュー機能が有効な場合のみです。プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。指定されたDEREncodableを暗号化してEncryptedPrivateKeyInfoを作成します。 有効な暗号化アルゴリズムとKeyを指定する必要があります。アルゴリズム文字列の形式については、Java Security Standard Algorithm Names Specificationの「暗号アルゴリズム」の項を参照してください。
- パラメータ:
de- 暗号化するDEREncodable。 サポートされているタイプには、PrivateKey、KeyPairおよびPKCS8EncodedKeySpecがあります。encryptKey- エンコーディングの暗号化に使用されるキーalgorithm- パスワードベースの暗号化(PBE)アルゴリズムなどの暗号化アルゴリズムparams- 暗号化に使用されるAlgorithmParameterSpec。nullの場合、プロバイダのデフォルト・パラメータが適用されます。provider-Cipher操作のProvider。nullの場合は、デフォルトのプロバイダ・リストが使用されます。random- 暗号化時に使用されるSecureRandomインスタンス。nullの場合は、デフォルトが使用されます。- 戻り値:
EncryptedPrivateKeyInfo- スロー:
NullPointerException-de、encryptKeyまたはalgorithmがnullの場合IllegalArgumentException-deがサポートされていないDEREncodableの場合、encryptKeyが無効な場合、algorithmまたはparamsがプロバイダでサポートされていない場合、または暗号化中にエラーが発生した場合- 導入されたバージョン:
- 26
-
getKey
パブリック PrivateKey getKey(char[] password)はNoSuchAlgorithmException、InvalidKeyExceptionをスローします getKeyは、JavaプラットフォームのプレビューAPIです。プレビュー機能が有効になっている場合のみ、プログラムでgetKeyを使用できます。プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。指定されたパスワードを使用して、囲まれたPrivateKeyを抽出して返します。- パラメータ:
password- PBE復号化に使用されるパスワード。 配列は、使用前にクローニングされます。- 戻り値:
- 復号化された
PrivateKey - スロー:
NullPointerException-passwordがnullの場合NoSuchAlgorithmException- 復号化アルゴリズムがサポートされていない場合InvalidKeyException- 解析、復号化またはキー生成中にエラーが発生した場合- 導入されたバージョン:
- 25
-
getKey
パブリック PrivateKey getKey(Key decryptKey、 Provider provider)はNoSuchAlgorithmException、InvalidKeyExceptionをスローします getKeyは、JavaプラットフォームのプレビューAPIです。プレビュー機能が有効になっている場合のみ、プログラムでgetKeyを使用できます。プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。指定された復号化キーおよびプロバイダを使用して、囲まれたPrivateKeyを抽出して返します。- パラメータ:
decryptKey- 復号化キー。nullにはできません。provider-Cipher復号化およびPrivateKey生成のProvider。nullの場合は、デフォルトのプロバイダ構成が使用されます。- 戻り値:
- 復号化された
PrivateKey - スロー:
NullPointerException-decryptKeyがnullの場合NoSuchAlgorithmException- 復号化アルゴリズムがサポートされていない場合InvalidKeyException- 解析、復号化またはキー生成中にエラーが発生した場合- 導入されたバージョン:
- 25
-
getKeyPair
パブリック KeyPair getKeyPair(char[] password)はNoSuchAlgorithmException、InvalidKeyExceptionをスローします getKeyPairは、JavaプラットフォームのプレビューAPIです。プログラムでgetKeyPairを使用できるのは、プレビュー機能が有効な場合のみです。プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。指定されたパスワードを使用して、囲まれたKeyPairを抽出して返します。 エンコードされたデータに公開キーと秘密キーの両方が含まれていない場合は、InvalidKeyExceptionがスローされます。- パラメータ:
password- PBE復号化に使用されるパスワード。 配列は、使用前にクローニングされます。- 戻り値:
- 復号化された
KeyPair - スロー:
NullPointerException-passwordがnullの場合NoSuchAlgorithmException- 復号化アルゴリズムがサポートされていない場合InvalidKeyException- エンコードされたデータに公開キーがない場合、または解析、復号化またはキー生成中にエラーが発生した場合- 導入されたバージョン:
- 26
-
getKeyPair
パブリック KeyPair getKeyPair(Key decryptKey、 Provider provider)はNoSuchAlgorithmException、InvalidKeyExceptionをスローします getKeyPairは、JavaプラットフォームのプレビューAPIです。プログラムでgetKeyPairを使用できるのは、プレビュー機能が有効な場合のみです。プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。指定された復号化キーおよびプロバイダを使用して、囲まれたKeyPairを抽出して返します。 エンコードされたデータに公開キーと秘密キーの両方が含まれていない場合は、InvalidKeyExceptionがスローされます。- パラメータ:
decryptKey- 復号化キー。nullにはできません。provider-Cipher復号化およびキー生成のProvider。nullの場合は、デフォルトのプロバイダ構成が使用されます。- 戻り値:
- 復号化された
KeyPair - スロー:
NullPointerException-decryptKeyがnullの場合NoSuchAlgorithmException- 復号化アルゴリズムがサポートされていない場合InvalidKeyException- エンコードされたデータに公開キーがない場合、または解析、復号化またはキー生成中にエラーが発生した場合- 導入されたバージョン:
- 26
-
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey) throws NoSuchAlgorithmException, InvalidKeyException 暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。- パラメータ:
decryptKey- 暗号化されたデータの復号化に使用されるキー。- 戻り値:
- PKCS8EncodedKeySpecオブジェクト
- スロー:
NullPointerException-decryptKeyがnullの場合。NoSuchAlgorithmException- 暗号化されたデータの復号化に適切な暗号を見つけることができない場合。InvalidKeyException- 暗号化されたデータの復号化にdecryptKeyを使用できない場合、または復号化の結果が有効なPKCS8KeySpecでない場合。- 導入されたバージョン:
- 1.5
-
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey, String providerName) throws NoSuchProviderException, NoSuchAlgorithmException, InvalidKeyException 暗号化されたデータから内包されているPKCS8EncodedKeySpecオブジェクトを抽出して返します。- パラメータ:
decryptKey- 暗号化されたデータの復号化に使用されるキー。providerName- 暗号実装を使用するプロバイダの名前。- 戻り値:
- 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- 暗号実装を使用するプロバイダの名前。- 戻り値:
- 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エンコーディングの構築時にエラーが発生した場合。
-