JavaTM 2
Platform
Std. Ed. v1.4.0

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
関連項目:
PKCS8EncodedKeySpec

コンストラクタの概要
EncryptedPrivateKeyInfo(AlgorithmParameters algParams, byte[] encryptedData)
          暗号化アルゴリズムパラメータと暗号化されたデータから EncryptedPrivateKeyInfo を構築します。
EncryptedPrivateKeyInfo(byte[] encoded)
          その ASN.1 エンコーディングから EncryptedPrivateKeyInfo を構築 (つまり解析) します。
EncryptedPrivateKeyInfo(String algName, byte[] encryptedData)
          暗号化アルゴリズム名と暗号化されたデータから EncryptedPrivateKeyInfo を構築します。
 
メソッドの概要
 String getAlgName()
          暗号化アルゴリズムを返します。
 AlgorithmParameters getAlgParameters()
          暗号化アルゴリズムで使用されるアルゴリズムパラメータを返します。
 byte[] getEncoded()
          このオブジェクトの ASN.1 エンコーディングを返します。
 byte[] getEncryptedData()
          暗号化されたデータのコピーを返します。
 PKCS8EncodedKeySpec getKeySpec(Cipher c)
          暗号化されたデータから暗号化された 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 を構築します。

注: このオブジェクトの構築時に encrypedData が複製されます。暗号化アルゴリズムに関連パラメータがある場合は、AlgorithmParameters を持つコンストラクタをパラメータとして使用します。

パラメータ:
algName - アルゴリズム名
encryptedData - 暗号化されたデータ
例外:
NullPointerException - algName または encryptedData が null の場合
IllegalArgumentException - encryptedData が空 (長さ 0) の場合
NoSuchAlgorithmException - 指定された algName がサポートされていない場合

EncryptedPrivateKeyInfo

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

注: このオブジェクトの構築時に encrypedData が複製されます。

パラメータ:
algParams - 暗号化アルゴリズムのアルゴリズムパラメータ。algParams.getEncoded() は、EncryptedPrivateKeyInfo 型の AlgorithmIdentifer コンポーネントの parameters フィールドの ANS.1 の暗号化されたバイトを返す
encryptedData - 暗号化されたデータ
例外:
NullPointerException - algParams または encryptedData が null の場合
IllegalArgumentException - encryptedData が空 (長さ 0) の場合
NoSuchAlgorithmException - 指定された algParams パラメータの指定された algName がサポートされていない場合
メソッドの詳細

getAlgName

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

戻り値:
アルゴリズム名

getAlgParameters

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

戻り値:
アルゴリズムパラメータ

getEncryptedData

public byte[] getEncryptedData()
暗号化されたデータのコピーを返します。

戻り値:
暗号化されたデータのコピー

getKeySpec

public PKCS8EncodedKeySpec getKeySpec(Cipher c)
                               throws InvalidKeySpecException
暗号化されたデータから暗号化された PKCS8EncodedKeySpec オブジェクトを抽出して返します。

戻り値:
PKCS8EncodedKeySpec オブジェクト
例外:
InvalidKeySpecException - 指定された暗号が暗号化されたデータに不適切な場合、または暗号化されたデータが壊れていて復号化できない場合

getEncoded

public byte[] getEncoded()
                  throws IOException
このオブジェクトの ASN.1 エンコーディングを返します。

戻り値:
ASN.1 エンコーディング
例外:
IOException - その ASN.1 エンコーディングの構築時にエラーが発生した場合

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.