JavaTM Platform
Standard Ed. 6

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  cipher)
          암호화된 데이터로부터 암호화된 PKCS8EncodedKeySpec 객체를 추출해 돌려줍니다.
 PKCS8EncodedKeySpec getKeySpec (Key  decryptKey)
          암호화된 데이터로부터 암호화된 PKCS8EncodedKeySpec 객체를 추출해 돌려줍니다.
 PKCS8EncodedKeySpec getKeySpec (Key  decryptKey, Provider  provider)
          암호화된 데이터로부터 암호화된 PKCS8EncodedKeySpec 객체를 추출해 돌려줍니다.
 PKCS8EncodedKeySpec getKeySpec (Key  decryptKey, String  providerName)
          암호화된 데이터로부터 암호화된 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 암호화 아키텍쳐(architecture) 레퍼런스 가이드」의 부록 A 를 참조
encryptedData - 암호화된 데이터 이 객체의 구축시에,encrypedData 의 내용이 후속의 변경에 영향을 받지 않게 카피된다
예외:
NullPointerException - algName 또는 encryptedData 가 null 의 경우
IllegalArgumentException - encryptedData 가 빈 상태(empty) (길이 0)의 경우
NoSuchAlgorithmException - 지정된 algName 가 지원되어 있지 않은 경우

EncryptedPrivateKeyInfo

public EncryptedPrivateKeyInfo(AlgorithmParameters  algParams,
                               byte[] encryptedData)
                        throws NoSuchAlgorithmException 
암호화 알고리즘 파라미터와 암호화된 데이터로부터 EncryptedPrivateKeyInfo 를 구축합니다.

파라미터:
algParams - 암호화 알고리즘의 알고리즘 파라미터. algParams.getEncoded() 는,EncryptedPrivateKeyInfo 형의 AlgorithmIdentifer 컴퍼넌트의 parameters 필드의 ANS. 1 의 암호화된 바이트를 돌려주는
encryptedData - 암호화된 데이터 이 객체의 구축시에,encrypedData 의 내용이 후속의 변경에 영향을 받지 않게 카피된다
예외:
NullPointerException - algParams 또는 encryptedData 가 null 의 경우
IllegalArgumentException - encryptedData 가 빈 상태(empty) (길이 0)의 경우
NoSuchAlgorithmException - 지정된 algParams 파라미터의 지정된 algName 가 지원되어 있지 않은 경우
메소드의 상세

getAlgName

public String  getAlgName()
암호화 알고리즘을 돌려줍니다.  

주:이러한 매핑이 유효한 때에는, 생성자 으로 지정된 이름은 아니고 표준명이 돌려주어집니다. 표준의 Cipher 알고리즘명에 대해서는, 「Java 암호화 아키텍쳐(architecture) 레퍼런스 가이드」의 부록 A 를 참조

반환값:
암호화 알고리즘명

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

public PKCS8EncodedKeySpec  getKeySpec(Key  decryptKey,
                                      String  providerName)
                               throws NoSuchProviderException ,
                                      NoSuchAlgorithmException ,
                                      InvalidKeyException 
암호화된 데이터로부터 암호화된 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 인코딩의 구축시에 에러가 발생했을 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.