Class IssacPRIVATEKEY
- java.lang.Object
-
- com.penta.sdk.bs.IssacPRIVATEKEY
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class IssacPRIVATEKEY extends java.lang.Object implements java.io.Closeable개인키 객체를 처리하는 클래스개인키를 암호화된 파일로부터 읽어오는 함수, 주어진 인증서와 개인키가 쌍이 맞는 지를 확인하는 함수, 그리고 암호화된 개인키 파일의 복호화용 패스워드 PIN을 변경하는 함수를 포함한다.
-
-
Constructor Summary
Constructors Constructor Description IssacPRIVATEKEY()생성자IssacPRIVATEKEY(byte[] privatekey)Deprecated.참조값은 바이너리 데이터가 아니므로 외부에선 절대 사용하지 않도록 한다!
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static voidChangePIN_File(java.lang.String filename, byte[] pin_before, byte[] pin_after, int cipher_id)암호화 된 개인키 파일의 비밀번호를 변경한다.static voidChangePIN_File(java.lang.String filename, java.lang.String pin_before, java.lang.String pin_after, int cipher_id)암호화 된 개인키 파일의 비밀번호를 변경한다.intCheckPair(IssacCERTIFICATE cert)인증서와 개인키의 쌍이 맞는지 확인한다.voidclose()voidCopy(IssacPRIVATEKEY srcPriKey)다른 개인키 객체의 내용을 이 객체로 복사한다.voidDelete()Deprecated.Resource Leak 의 효율적인 관리를 위해 close() 를 사용할 것을 권장함.byte[]getPrivatekey()Deprecated.참조값은 바이너리 데이터가 아니므로 외부에선 절대 사용하지 않도록 한다!voidRead_File(java.lang.String filename, byte[] pin)암호화 된 개인키 파일에서 개인키를 가져온다.voidRead_File(java.lang.String filename, java.lang.String pin)암호화 된 개인키 파일에서 개인키를 가져온다.voidRead_Memory(byte[] buffer)주어진 메모리 블록으로부터 개인키를 가져온다.voidRead_Memory(byte[] buffer, byte[] pin)주어진 메모리 블록으로부터 개인키를 가져온다.voidRead_Memory(byte[] buffer, byte[] wrappedPin, IssacWrapper wrapper)개인키를 읽어들인다.voidRead_Memory(byte[] buffer, java.lang.String pin)주어진 메모리 블록으로부터 개인키를 가져온다.voidWrite_File(java.lang.String filename, byte[] pin, int cipher_id)개인키를 암호화한 후에 파일로 저장한다.voidWrite_File(java.lang.String filename, java.lang.String pin, int cipher_id)개인키를 암호화한 후에 파일로 저장한다.byte[]Write_Memory()개인키 버퍼를 생성한다.byte[]Write_Memory(byte[] pin, int cipher_id)개인키를 암호화하여 암호화 된 개인키 버퍼를 생성한다.byte[]Write_Memory(java.lang.String pin, int cipher_id)개인키를 암호화하여 암호화 된 개인키 버퍼를 생성한다.byte[]Write_Memory_As_RSAPrivateKey()개인키에서 RSA 개인키 형식의 데이터를 가져온다.
-
-
-
Constructor Detail
-
IssacPRIVATEKEY
public IssacPRIVATEKEY() throws IssacSDKException생성자Note: 사용이 끝나면 close()를 호출해야 한다.
- Throws:
IssacSDKException- 오류 발생- See Also:
close()
-
IssacPRIVATEKEY
public IssacPRIVATEKEY(byte[] privatekey) throws IssacSDKExceptionDeprecated.참조값은 바이너리 데이터가 아니므로 외부에선 절대 사용하지 않도록 한다!생성자 (JNI 내부에서 생성하기 위해 사용)- Parameters:
privatekey- [IN] Native에서 생성된 객체의 참조값- Throws:
IssacSDKException- 오류 발생- See Also:
getPrivatekey()
-
-
Method Detail
-
getPrivatekey
public byte[] getPrivatekey()
Deprecated.참조값은 바이너리 데이터가 아니므로 외부에선 절대 사용하지 않도록 한다!개인키 참조값을 가져온다.- Returns:
- 개인키 참조값
-
Read_File
public void Read_File(java.lang.String filename, java.lang.String pin) throws IssacSDKException암호화 된 개인키 파일에서 개인키를 가져온다.개인키가 파일 형태(또는 소프트웨어 형태)로 저장되는 경우에는 대부분 암호화되어 있기 때문에 이를 읽어들이기 위해서는 복호화 과정이 요구된다.
pin은 암호화 된 개인키 파일의 복호화를 위해 필요하다.- Parameters:
filename- [IN] 암호화된 개인키 파일의 경로pin- [IN] 개인키를 암호화된 파일로부터 얻기 위한 암호- Throws:
IssacSDKException- 오류 발생- See Also:
Write_File(String, String, int),IssacCERTIFICATE.Read_File(String),IssacCRL.Read_File(String)
-
Read_File
public void Read_File(java.lang.String filename, byte[] pin) throws IssacSDKException암호화 된 개인키 파일에서 개인키를 가져온다.개인키가 파일 형태(또는 소프트웨어 형태)로 저장되는 경우에는 대부분 암호화되어 있기 때문에 이를 읽어들이기 위해서는 복호화 과정이 요구된다.
pin은 암호화 된 개인키 파일의 복호화를 위해 필요하다.- Parameters:
filename- [IN] 암호화된 개인키 파일의 경로pin- [IN] 개인키를 암호화된 파일로부터 얻기 위한 암호- Throws:
IssacSDKException- 오류 발생- See Also:
Write_File(String, String, int),IssacCERTIFICATE.Read_File(String),IssacCRL.Read_File(String)
-
Write_File
public void Write_File(java.lang.String filename, java.lang.String pin, int cipher_id) throws IssacSDKException개인키를 암호화한 후에 파일로 저장한다.개인키가 파일 형태(또는 소프트웨어형태)로 저장되는 경우에는 대부분 암호화되어야 하기 때문에 이를 위한 암호화 과정이 요구되며, pin은 암호화를 위한 비밀키 생성을 위해 필요하다.
- Parameters:
filename- [IN] 암호화될 개인키 파일의 경로pin- [IN] 개인키 암호화에 사용할 비밀번호cipher_id- [IN] 개인키 암호화에 사용할 암호 알고리즘. PACA는 1, SEED는 2, DES는 3, Triple-DES는 4를 사용한다.- Throws:
IssacSDKException- 오류 발생- See Also:
Read_File(String, String),IssacCERTIFICATE.Write_File(String),IssacCRL.Write_File(String)
-
Write_File
public void Write_File(java.lang.String filename, byte[] pin, int cipher_id) throws IssacSDKException개인키를 암호화한 후에 파일로 저장한다.개인키가 파일 형태(또는 소프트웨어형태)로 저장되는 경우에는 대부분 암호화되어야 하기 때문에 이를 위한 암호화 과정이 요구되며, pin은 암호화를 위한 비밀키 생성을 위해 필요하다.
- Parameters:
filename- [IN] 암호화될 개인키 파일의 경로pin- [IN] 개인키 암호화에 사용할 비밀번호cipher_id- [IN] 개인키 암호화에 사용할 암호 알고리즘. PACA는 1, SEED는 2, DES는 3, Triple-DES는 4를 사용한다.- Throws:
IssacSDKException- 오류 발생- See Also:
Read_File(String, String),IssacCERTIFICATE.Write_File(String),IssacCRL.Write_File(String)
-
Read_Memory
public void Read_Memory(byte[] buffer) throws IssacSDKException주어진 메모리 블록으로부터 개인키를 가져온다. (암호화되지 않은 개인키)- Parameters:
buffer- [IN] 개인키 정보가 담긴 메모리 블록- Throws:
IssacSDKException- 오류 발생- See Also:
Write_Memory(String, int),IssacCERTIFICATE.Read_Memory(byte[]),IssacCRL.Read_Memory(byte[])
-
Read_Memory
public void Read_Memory(byte[] buffer, java.lang.String pin) throws IssacSDKException주어진 메모리 블록으로부터 개인키를 가져온다.개인키가 소프트웨어 형태(또는 파일 형태)로 저장되는 경우에는 언제나 암호화되어 있기 때문에 이를 읽어들이기 위해서는 복호화 과정이 요구된다.
pin은 복호화를 위한 비밀키 생성을 위해 필요하다. pin이 빈 문자열인 경우 복호화과정 없이 개인키를 읽어들인다.
이것은 응용 프로그램에서 특수한 목적을 위해 사용할 경우를 위한 것이다. 개인키의 저장 용도로는 사용해서는 안된다.
Write_Memory함수를 입력 pin을 new String()로 하여 암호화과정 없이 사용한 경우와 대칭된다.- Parameters:
buffer- [IN] 개인키 정보가 담긴 메모리 블록pin- [IN] 개인키를 암호화된 파일로부터 얻기 위한 암호- Throws:
IssacSDKException- 오류 발생- See Also:
Write_Memory(String, int),IssacCERTIFICATE.Read_Memory(byte[]),IssacCRL.Read_Memory(byte[])
-
Read_Memory
public void Read_Memory(byte[] buffer, byte[] pin) throws IssacSDKException주어진 메모리 블록으로부터 개인키를 가져온다.개인키가 소프트웨어 형태(또는 파일 형태)로 저장되는 경우에는 언제나 암호화되어 있기 때문에 이를 읽어들이기 위해서는 복호화 과정이 요구된다.
pin은 복호화를 위한 비밀키 생성을 위해 필요하다. pin이 빈 문자열인 경우 복호화과정 없이 개인키를 읽어들인다.
이것은 응용 프로그램에서 특수한 목적을 위해 사용할 경우를 위한 것이다. 개인키의 저장 용도로는 사용해서는 안된다.
Write_Memory함수를 입력 pin을 new String()로 하여 암호화과정 없이 사용한 경우와 대칭된다.- Parameters:
buffer- [IN] 개인키 정보가 담긴 메모리 블록pin- [IN] 개인키를 암호화된 파일로부터 얻기 위한 암호- Throws:
IssacSDKException- 오류 발생- See Also:
Write_Memory(String, int),IssacCERTIFICATE.Read_Memory(byte[]),IssacCRL.Read_Memory(byte[])
-
Read_Memory
public void Read_Memory(byte[] buffer, byte[] wrappedPin, IssacWrapper wrapper) throws IssacSDKException개인키를 읽어들인다. (PKCS#8 개인키)- Parameters:
buffer- [IN] PKCS#8 개인키wrappedPin- [IN] wrapping 된 비밀번호wrapper- [IN] wrapping 기능을 제공하는 객체- Throws:
IssacSDKException- 오류 발생
-
Write_Memory
public byte[] Write_Memory() throws IssacSDKException개인키 버퍼를 생성한다. (암호화되지 않은 개인키)- Returns:
- 개인키 버퍼
- Throws:
IssacSDKException- 오류 발생- See Also:
Read_Memory(byte[], String),IssacCERTIFICATE.Write_Memory(),IssacCRL.Write_Memory()
-
Write_Memory
public byte[] Write_Memory(java.lang.String pin, int cipher_id) throws IssacSDKException개인키를 암호화하여 암호화 된 개인키 버퍼를 생성한다.개인키는 소프트웨어 형태(또는 파일 형태)로 저장되는 경우에는 대부분 암호화되어야 하기 때문에 이를 위한 암호화 과정이 요구되며, pin은 암호화를 위한 비밀키 생성을 위해 필요하다.
pin이 빈 문자열인 경우, 암호화 과정이 없이 PKCS#8 privateKeyInfo 타입으로 메모리에 로딩된다.
이것은 응용프로그램의 특수한 용도를 위한 것이며, 개인키의 저장용도로는 사용해서는 안된다.- Parameters:
pin- [IN] 개인키 암호화에 사용할 비밀키 생성을 위한 암호cipher_id- [IN] 개인키 암호화에 사용할 암호 알고리즘. PACA는 1, SEED는 2, DES는 3, Triple-DES는 4를 사용한다.- Returns:
- 암호화 된 개인키 버퍼
- Throws:
IssacSDKException- 오류 발생- See Also:
Read_Memory(byte[], String),IssacCERTIFICATE.Write_Memory(),IssacCRL.Write_Memory()
-
Write_Memory
public byte[] Write_Memory(byte[] pin, int cipher_id) throws IssacSDKException개인키를 암호화하여 암호화 된 개인키 버퍼를 생성한다.개인키는 소프트웨어 형태(또는 파일 형태)로 저장되는 경우에는 대부분 암호화되어야 하기 때문에 이를 위한 암호화 과정이 요구되며, pin은 암호화를 위한 비밀키 생성을 위해 필요하다.
pin이 빈 문자열인 경우, 암호화 과정이 없이 PKCS#8 privateKeyInfo 타입으로 메모리에 로딩된다.
이것은 응용프로그램의 특수한 용도를 위한 것이며, 개인키의 저장용도로는 사용해서는 안된다.- Parameters:
pin- [IN] 개인키 암호화에 사용할 비밀키 생성을 위한 암호cipher_id- [IN] 개인키 암호화에 사용할 암호 알고리즘. PACA는 1, SEED는 2, DES는 3, Triple-DES는 4를 사용한다.- Returns:
- 암호화 된 개인키 버퍼
- Throws:
IssacSDKException- 오류 발생- See Also:
Read_Memory(byte[], String),IssacCERTIFICATE.Write_Memory(),IssacCRL.Write_Memory()
-
Write_Memory_As_RSAPrivateKey
public byte[] Write_Memory_As_RSAPrivateKey() throws IssacSDKException개인키에서 RSA 개인키 형식의 데이터를 가져온다.- Returns:
- RSA 개인키 형식의 데이터
- Throws:
IssacSDKException- 오류 발생
-
CheckPair
public int CheckPair(IssacCERTIFICATE cert) throws IssacSDKException
인증서와 개인키의 쌍이 맞는지 확인한다.인증서에 포함되어 있는 공개키와 개인키가 서로 쌍이 맞는 것인지를 확인해 볼 수 있다.
인증서 검증은 하지 않는다.
- Parameters:
cert- [IN] 공개키를 포함한 인증서- Returns:
- 0: 성공
- Throws:
IssacSDKException- 오류 발생
-
ChangePIN_File
public static void ChangePIN_File(java.lang.String filename, java.lang.String pin_before, java.lang.String pin_after, int cipher_id) throws IssacSDKException암호화 된 개인키 파일의 비밀번호를 변경한다.포함된 개인키는 바뀌지 않지만 filename으로 주어진 파일의 내용은 변경된다.
기존의 패스워드 pin_before가 올바르지 않은 경우 이 함수는 해당하는 에러코드를 리턴한다.- Parameters:
filename- [IN] 암호화 된 개인키 파일의 경로pin_before- [IN] 변경 전 암호pin_after- [IN] 변경 후 암호cipher_id- [IN] 대칭키 암호 알고리즘- Throws:
IssacSDKException- 오류 발생- See Also:
Read_File(String, String)
-
ChangePIN_File
public static void ChangePIN_File(java.lang.String filename, byte[] pin_before, byte[] pin_after, int cipher_id) throws IssacSDKException암호화 된 개인키 파일의 비밀번호를 변경한다.포함된 개인키는 바뀌지 않지만 filename으로 주어진 파일의 내용은 변경된다.
기존의 패스워드 pin_before가 올바르지 않은 경우 이 함수는 해당하는 에러코드를 리턴한다.- Parameters:
filename- [IN] 암호화 된 개인키 파일의 경로pin_before- [IN] 변경 전 암호pin_after- [IN] 변경 후 암호cipher_id- [IN] 대칭키 암호 알고리즘- Throws:
IssacSDKException- 오류 발생- See Also:
Read_File(String, String)
-
Copy
public void Copy(IssacPRIVATEKEY srcPriKey) throws IssacSDKException
다른 개인키 객체의 내용을 이 객체로 복사한다.- Parameters:
srcPriKey- [IN] 새로운 값으로 설정될 다른 개인키 객체- Throws:
IssacSDKException- 오류 발생- See Also:
IssacPRIVATEKEY()
-
Delete
public void Delete() throws IssacSDKExceptionDeprecated.Resource Leak 의 효율적인 관리를 위해 close() 를 사용할 것을 권장함.개인키 객체를 메모리에서 삭제한다.- Throws:
IssacSDKException- 오류 발생- See Also:
IssacPRIVATEKEY()
-
close
public void close() throws IssacSDKException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
IssacSDKException
-
-