Package com.penta.sdk.se
Class IssacSECONTEXT
- java.lang.Object
-
- com.penta.sdk.se.IssacSECONTEXT
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class IssacSECONTEXT extends java.lang.Object implements java.io.Closeable비밀키 암호화를 위한 함수들을 설명하는 클래스비밀키 암호화를 위한 정보를 담고 있는 secontext를 생성하고, 생성된 secontext를 이용하여 메시지를 암호화/복호화하는 함수들을 제공한다.
메시지와 암호문 입출력으로 메모리 형태와 파일 형태를 지원한다.
-
-
Field Summary
-
Constructor Summary
Constructors Constructor Description IssacSECONTEXT()생성자
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidclose()voidCopy(IssacSECONTEXT Secontext)다른 IssacSECONTEXT 객체에서 비밀키 암복호화 정보를 복사한다.byte[]Decrypt(byte[] ciphertext)입력된 암호문을 복호화한다.byte[]Decrypt(byte[] ciphertext, int pad_type)입력된 암호문을 복호화한다.byte[]Decrypt_Auth(byte[] ciphertext, byte[] authdata, byte[] iv, int tagLen)입력한 암호문을 CCM/GCM 방식으로 복호화한다.byte[]Decrypt_CMS(byte[] ciphertext)입력받은 PKCS#7 EncryptedData 를 복호화하여 원문을 가져온다.voidDecrypt_File(java.lang.String plaintext_file, java.lang.String ciphertext_file)입력된 파일을 복호화한다.voidDecrypt_File(java.lang.String plaintext_file, java.lang.String ciphertext_file, int buffer_size)입력된 파일을 복호화한다.voidDelete()Deprecated.Resource Leak 의 효율적인 관리를 위해 close() 를 사용할 것을 권장함.byte[]Encrypt(byte[] plaintext)입력된 원문을 암호화한다.byte[]Encrypt(byte[] plaintext, int pad_type)입력된 원문을 암호화한다.byte[]Encrypt_Auth(byte[] plaintext, byte[] authdata, byte[] iv, int tagLen)입력한 원문을 CCM/GCM 방식으로 암호화한다.byte[]Encrypt_CMS(byte[] plaintext)입력받은 원문을 암호화하여 PKCS#7 EncryptedData 를 생성한다.voidEncrypt_File(java.lang.String ciphertext_file, java.lang.String plaintext_file)입력된 파일을 암호화한다.voidEncrypt_File(java.lang.String ciphertext_file, java.lang.String plaintext_file, int buffer_size)입력된 파일을 암호화한다.byte[]getSecontext()Deprecated.참조값은 바이너리 데이터가 아니므로 외부에선 절대 사용하지 않도록 한다!static byte[]MakeRandom(int keyLen)랜덤값(의사난수배열)을 생성한다.static byte[]PBKDF_PKCS12_GetKey(int keyLen, byte[] pin)입력된 PIN을 기반으로 암복호화용 키를 생성(유도)한다.static byte[]PBKDF_PKCS12_GetKey(int keyLen, java.lang.String pin)입력된 PIN을 기반으로 암복호화용 키를 생성(유도)한다.static byte[]PBKDF_PKCS12_GetKey_Advanced(int keyLen, byte[] pin, int keyType, byte[] salt, int iterations, int hashType)입력된 값들을 기반으로 키를 생성(유도)한다.static byte[]PBKDF_PKCS12_GetKey_Advanced(int keyLen, java.lang.String pin, int keyType, byte[] salt, int iterations, int hashType)입력된 값들을 기반으로 키를 생성(유도)한다.static byte[]PBKDF2_GetKey(int keyLen, byte[] pin, byte[] salt, int iterations, int hashType)입력된 값들을 기반으로 키를 생성(유도)한다.static byte[]PBKDF2_GetKey(int keyLen, java.lang.String pin, byte[] salt, int iterations, int hashType)입력된 값들을 기반으로 키를 생성(유도)한다.voidSet(byte[] key, byte[] iv, int mode, int cipher_id)비밀키 암복호화에 필요한 값들을 설정한다.voidSet(byte[] key, int cipher_id)비밀키 암복호화에 필요한 값들을 설정한다.voidSet(byte[] key, int mode, int cipher_id)비밀키 암복호화에 필요한 값들을 설정한다.voidSet(char[] key, char[] iv, int mode, int cipher_id)비밀키 암복호화에 필요한 값들을 설정한다.voidSet(char[] key, int cipher_id)Deprecated.
-
-
-
Field Detail
-
ISSACAPI_PACA
public static final int ISSACAPI_PACA
- See Also:
- Constant Field Values
-
ISSACAPI_SEED
public static final int ISSACAPI_SEED
- See Also:
- Constant Field Values
-
ISSACAPI_DES
public static final int ISSACAPI_DES
- See Also:
- Constant Field Values
-
ISSACAPI_TDES
public static final int ISSACAPI_TDES
- See Also:
- Constant Field Values
-
ISSACAPI_NEAT
public static final int ISSACAPI_NEAT
- See Also:
- Constant Field Values
-
ISSACAPI_RIJNDAEL
public static final int ISSACAPI_RIJNDAEL
- See Also:
- Constant Field Values
-
ISSACAPI_AES128
public static final int ISSACAPI_AES128
- See Also:
- Constant Field Values
-
ISSACAPI_BLOWFISH
public static final int ISSACAPI_BLOWFISH
- See Also:
- Constant Field Values
-
ISSACAPI_IDEA
public static final int ISSACAPI_IDEA
- See Also:
- Constant Field Values
-
ISSACAPI_ARIA
public static final int ISSACAPI_ARIA
- See Also:
- Constant Field Values
-
ISSACAPI_ARIA192
public static final int ISSACAPI_ARIA192
- See Also:
- Constant Field Values
-
ISSACAPI_ARIA256
public static final int ISSACAPI_ARIA256
- See Also:
- Constant Field Values
-
ISSACAPI_RIJNDAEL256
public static final int ISSACAPI_RIJNDAEL256
- See Also:
- Constant Field Values
-
ISSACAPI_AES256
public static final int ISSACAPI_AES256
- See Also:
- Constant Field Values
-
ISSACAPI_ARIA_GPKI
public static final int ISSACAPI_ARIA_GPKI
- See Also:
- Constant Field Values
-
ISSACAPI_LEA128
public static final int ISSACAPI_LEA128
- See Also:
- Constant Field Values
-
ISSACAPI_LEA192
public static final int ISSACAPI_LEA192
- See Also:
- Constant Field Values
-
ISSACAPI_LEA256
public static final int ISSACAPI_LEA256
- See Also:
- Constant Field Values
-
ISSACAPI_SE_ECB_MODE
public static final int ISSACAPI_SE_ECB_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_CBC_MODE
public static final int ISSACAPI_SE_CBC_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_CFB_MODE
public static final int ISSACAPI_SE_CFB_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_CFB_BYTE_MODE
public static final int ISSACAPI_SE_CFB_BYTE_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_OFB_MODE
public static final int ISSACAPI_SE_OFB_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_OFB_BYTE_MODE
public static final int ISSACAPI_SE_OFB_BYTE_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_CTS_MODE
public static final int ISSACAPI_SE_CTS_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_CFB1_MODE
public static final int ISSACAPI_SE_CFB1_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_CTR_MODE
public static final int ISSACAPI_SE_CTR_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_MCFB_MODE
public static final int ISSACAPI_SE_MCFB_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_GCM_MODE
public static final int ISSACAPI_SE_GCM_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_CCM_MODE
public static final int ISSACAPI_SE_CCM_MODE
- See Also:
- Constant Field Values
-
ISSACAPI_SE_PBKDF_ENCKEY
public static final int ISSACAPI_SE_PBKDF_ENCKEY
- See Also:
- Constant Field Values
-
ISSACAPI_SE_PBKDF_IV
public static final int ISSACAPI_SE_PBKDF_IV
- See Also:
- Constant Field Values
-
ISSACAPI_SE_PBKDF_MACKEY
public static final int ISSACAPI_SE_PBKDF_MACKEY
- See Also:
- Constant Field Values
-
ISSACAPI_NPAD
public static final int ISSACAPI_NPAD
- See Also:
- Constant Field Values
-
ISSACAPI_PAD_PKCS7
public static final int ISSACAPI_PAD_PKCS7
- See Also:
- Constant Field Values
-
ISSACAPI_PAD_X9_23
public static final int ISSACAPI_PAD_X9_23
- See Also:
- Constant Field Values
-
ISSACAPI_PAD_ZERO
public static final int ISSACAPI_PAD_ZERO
- See Also:
- Constant Field Values
-
ISSACAPI_PAD
public static final int ISSACAPI_PAD
- See Also:
- Constant Field Values
-
SHA1
public static final int SHA1
- See Also:
- Constant Field Values
-
SHA256
public static final int SHA256
- See Also:
- Constant Field Values
-
HAS160
public static final int HAS160
- See Also:
- Constant Field Values
-
KEYUSAGE_ENC
public static final int KEYUSAGE_ENC
- See Also:
- Constant Field Values
-
KEYUSAGE_IV
public static final int KEYUSAGE_IV
- See Also:
- Constant Field Values
-
KEYUSAGE_MAC
public static final int KEYUSAGE_MAC
- See Also:
- Constant Field Values
-
ERROR_CIS_NOT_READY
public static final int ERROR_CIS_NOT_READY
암호 모듈의 초기화를 하지 않음- See Also:
- Constant Field Values
-
ERROR_INVALID_STATE
public static final int ERROR_INVALID_STATE
암호모듈의 현재 상태가 ERROR 상태임- See Also:
- Constant Field Values
-
ERROR_REQUEST_TOO_LONG_RANDOM
public static final int ERROR_REQUEST_TOO_LONG_RANDOM
생성 가능한 난수 크기(16384 비트)보다 큰 난수 요청- See Also:
- Constant Field Values
-
ERROR_CONDITIONAL_SELFTEST
public static final int ERROR_CONDITIONAL_SELFTEST
조건부자가시험 실패- See Also:
- Constant Field Values
-
ERROR_FAULT_DETECTION_RBG
public static final int ERROR_FAULT_DETECTION_RBG
오류탐지 시험 실패- See Also:
- Constant Field Values
-
ERROR_INVALID_HASH_ALG
public static final int ERROR_INVALID_HASH_ALG
올바르지 않은 해시 함수를 난수발생기가 구성됨- See Also:
- Constant Field Values
-
-
Constructor Detail
-
IssacSECONTEXT
public IssacSECONTEXT() throws IssacSDKException생성자Note: 사용이 끝나면 close()를 호출해야 한다.
- Throws:
IssacSDKException- 오류 발생- See Also:
close()
-
-
Method Detail
-
MakeRandom
public static byte[] MakeRandom(int keyLen) throws IssacSDKException랜덤값(의사난수배열)을 생성한다.- Parameters:
keyLen- [IN] 생성할 랜덤값의 크기- Returns:
- 랜덤값
- Throws:
IssacSDKException- 랜덤값 생성 실패. returnedValue() 로 에러코드를 확인할 수 있다.- See Also:
ERROR_CIS_NOT_READY,ERROR_INVALID_STATE,ERROR_REQUEST_TOO_LONG_RANDOM,ERROR_CONDITIONAL_SELFTEST,ERROR_FAULT_DETECTION_RBG,ERROR_INVALID_HASH_ALG
-
PBKDF_PKCS12_GetKey
public static byte[] PBKDF_PKCS12_GetKey(int keyLen, byte[] pin) throws IssacSDKException입력된 PIN을 기반으로 암복호화용 키를 생성(유도)한다. (PKCS#12 v1.0 Appendix. B)- Parameters:
keyLen- [IN] 생성할 암복호화용 키의 길이 (bytes)pin- [IN] 암복호화용 키 생성에 사용할 PIN- Returns:
- 생성된 암복호화용 키
- Throws:
IssacSDKException- 오류 발생
-
PBKDF_PKCS12_GetKey_Advanced
public static byte[] PBKDF_PKCS12_GetKey_Advanced(int keyLen, byte[] pin, int keyType, byte[] salt, int iterations, int hashType) throws IssacSDKException입력된 값들을 기반으로 키를 생성(유도)한다. (PKCS#12 v1.0 Appendix. B)- Parameters:
keyLen- [IN] 생성할 키의 길이 (bytes)pin- [IN] 키 생성에 사용할 PINkeyType- [IN] 키의 용도 [1: 암복호화, 2: IV, 3: MAC]salt- [IN] salt (표준 참고)iterations- [IN] iterations (표준 참고)hashType- [IN] 키 유도 과정에 사용되는 해시 알고리즘 [ SHA1(0), SHA256(1), HAS160(2) ]- Returns:
- 생성된 키
- Throws:
IssacSDKException- 오류 발생
-
PBKDF2_GetKey
public static byte[] PBKDF2_GetKey(int keyLen, byte[] pin, byte[] salt, int iterations, int hashType) throws IssacSDKException입력된 값들을 기반으로 키를 생성(유도)한다. (PKCS#5 - PBKDF2)- Parameters:
keyLen- [IN] 생성할 키의 길이 (bytes)pin- [IN] 키 생성에 사용할 PINsalt- [IN] salt (표준 참고)iterations- [IN] iterations (표준 참고)hashType- [IN] 키 유도 과정에 사용되는 해시 알고리즘 [ SHA1(0), SHA256(1), HAS160(2) ]- Returns:
- 생성된 키
- Throws:
IssacSDKException- 오류 발생
-
Encrypt_CMS
public byte[] Encrypt_CMS(byte[] plaintext) throws IssacSDKException입력받은 원문을 암호화하여 PKCS#7 EncryptedData 를 생성한다.- Parameters:
plaintext- [IN] 암호화 대상 원문- Returns:
- PKCS#7 EncryptedData
- Throws:
IssacSDKException- 오류 발생
-
Decrypt_CMS
public byte[] Decrypt_CMS(byte[] ciphertext) throws IssacSDKException입력받은 PKCS#7 EncryptedData 를 복호화하여 원문을 가져온다.- Parameters:
ciphertext- [IN] PKCS#7 EncryptedData- Returns:
- 복호화 된 원문
- Throws:
IssacSDKException- 오류 발생
-
getSecontext
public byte[] getSecontext()
Deprecated.참조값은 바이너리 데이터가 아니므로 외부에선 절대 사용하지 않도록 한다!IssacSECONTEXT 객체의 참조값을 가져온다.- Returns:
- IssacSECONTEXT 객체의 참조값
-
Set
public void Set(char[] key, char[] iv, int mode, int cipher_id) throws IssacSDKException비밀키 암복호화에 필요한 값들을 설정한다.- Parameters:
key- [IN] 비밀키iv- [IN] CBC, CFB 등에 필요한 초기값. 입력하지 않으면 0x00,... 으로 처리된다.mode- [IN] 블록 암호 알고리즘의 운영 모드 선택 입력. [1: ECB, 2: CBC, 3: CFB, ...]cipher_id- [IN] 블록 암호 알고리즘. [1: PACA, 2: SEED, 6: AES128, 9: ARIA128]- Throws:
IssacSDKException- 오류 발생- See Also:
Copy(IssacSECONTEXT)
-
Set
@Deprecated public void Set(char[] key, int cipher_id) throws IssacSDKExceptionDeprecated.비밀키 암복호화에 필요한 값들을 설정한다. (동작 확인 필요 - 자체 IV 길이 문제 있을 것으로 보임)- Parameters:
key- [IN] 비밀키cipher_id- [IN] 블록 암호 알고리즘. [1: PACA, 2: SEED, 6: AES128, 9: ARIA128]- Throws:
IssacSDKException- 오류 발생- See Also:
Copy(IssacSECONTEXT)
-
Set
public void Set(byte[] key, byte[] iv, int mode, int cipher_id) throws IssacSDKException비밀키 암복호화에 필요한 값들을 설정한다.- Parameters:
key- [IN] 비밀키iv- [IN] CBC, CFB 등에 필요한 초기값. 입력하지 않으면 0x00,... 으로 처리된다.mode- [IN] 블록 암호 알고리즘의 운영 모드 선택 입력. [1: ECB, 2: CBC, 3: CFB, ...]cipher_id- [IN] 블록 암호 알고리즘. [1: PACA, 2: SEED, 6: AES128, 9: ARIA128]- Throws:
IssacSDKException- 오류 발생- See Also:
Copy(IssacSECONTEXT)
-
Set
public void Set(byte[] key, int mode, int cipher_id) throws IssacSDKException비밀키 암복호화에 필요한 값들을 설정한다. (IV: 0000...00)- Parameters:
key- [IN] 비밀키mode- [IN] 블록 암호 알고리즘의 운영 모드 선택 입력. [1: ECB, 2: CBC, 3: CFB, ...]cipher_id- [IN] 블록 암호 알고리즘. [1: PACA, 2: SEED, 6: AES128, 9: ARIA128]- Throws:
IssacSDKException- 오류 발생- See Also:
Copy(IssacSECONTEXT)
-
Set
public void Set(byte[] key, int cipher_id) throws IssacSDKException비밀키 암복호화에 필요한 값들을 설정한다. (동작 확인 필요 - 자체 IV 길이 문제 있을 것으로 보임)- Parameters:
key- [IN] 비밀키cipher_id- [IN] 블록 암호 알고리즘. [1: PACA, 2: SEED, 6: AES128, 9: ARIA128]- Throws:
IssacSDKException- 오류 발생- See Also:
Copy(IssacSECONTEXT)
-
Copy
public void Copy(IssacSECONTEXT Secontext) throws IssacSDKException
다른 IssacSECONTEXT 객체에서 비밀키 암복호화 정보를 복사한다.- Parameters:
Secontext- [IN] 복사할 IssacSECONTEXT- Throws:
IssacSDKException- 오류 발생- See Also:
Set(char[], char[], int, int),Set(char[], int),Set(byte[], byte[], int, int),Set(byte[], int)
-
Encrypt
public byte[] Encrypt(byte[] plaintext) throws IssacSDKException입력된 원문을 암호화한다.- Parameters:
plaintext- [IN] 암호화 될 원문 메시지- Returns:
- 암호화 된 메시지
- Throws:
IssacSDKException- 오류 발생- See Also:
Decrypt(byte[]),Encrypt_File(String, String)
-
Decrypt
public byte[] Decrypt(byte[] ciphertext) throws IssacSDKException입력된 암호문을 복호화한다.- Parameters:
ciphertext- [IN] 암호화 된 메시지- Returns:
- 복호화된 원문 메시지
- Throws:
IssacSDKException- 오류 발생- See Also:
Encrypt(byte[]),Decrypt_File(String, String)
-
Encrypt
public byte[] Encrypt(byte[] plaintext, int pad_type) throws IssacSDKException입력된 원문을 암호화한다.- Parameters:
plaintext- [IN] 암호화 될 원문 메시지pad_type- [IN] 패딩 타입 [0: NoPadding, 1: Padding]- Returns:
- 암호화 된 메시지
- Throws:
IssacSDKException- 오류 발생- See Also:
Decrypt(byte[]),Encrypt_File(String, String)
-
Decrypt
public byte[] Decrypt(byte[] ciphertext, int pad_type) throws IssacSDKException입력된 암호문을 복호화한다.- Parameters:
ciphertext- [IN] 암호화 된 메시지pad_type- [IN] 패딩 타입- Returns:
- 복호화된 원문 메시지
- Throws:
IssacSDKException- 오류 발생- See Also:
Encrypt(byte[]),Decrypt_File(String, String)
-
Encrypt_File
public void Encrypt_File(java.lang.String ciphertext_file, java.lang.String plaintext_file) throws IssacSDKException입력된 파일을 암호화한다.- Parameters:
ciphertext_file- [IN] 생성될 암호문 파일의 경로plaintext_file- [IN] 암호화 될 원문 파일의 경로- Throws:
IssacSDKException- 오류 발생- See Also:
Decrypt_File(String, String),Encrypt(byte[])
-
Decrypt_File
public void Decrypt_File(java.lang.String plaintext_file, java.lang.String ciphertext_file) throws IssacSDKException입력된 파일을 복호화한다.- Parameters:
plaintext_file- [IN] 생성될 복호문 파일의 경로ciphertext_file- [IN] 암호화 된 파일의 경로- Throws:
IssacSDKException- 오류 발생- See Also:
Decrypt(byte[]),Encrypt_File(String, String)
-
Encrypt_File
public void Encrypt_File(java.lang.String ciphertext_file, java.lang.String plaintext_file, int buffer_size) throws IssacSDKException입력된 파일을 암호화한다.- Parameters:
ciphertext_file- [IN] 생성될 암호문 파일의 경로plaintext_file- [IN] 암호화 될 원문 파일의 경로buffer_size- [IN] 내부에서 사용할 버퍼의 크기- Throws:
IssacSDKException- 오류 발생- See Also:
Decrypt_File(String, String, int),Encrypt(byte[])
-
Decrypt_File
public void Decrypt_File(java.lang.String plaintext_file, java.lang.String ciphertext_file, int buffer_size) throws IssacSDKException입력된 파일을 복호화한다.- Parameters:
plaintext_file- [IN] 생성될 복호문 파일의 경로ciphertext_file- [IN] 암호화 된 파일의 경로buffer_size- [IN] 내부에서 사용할 버퍼의 크기- Throws:
IssacSDKException- 오류 발생- See Also:
Decrypt(byte[]),Encrypt_File(String, String, int)
-
Encrypt_Auth
public byte[] Encrypt_Auth(byte[] plaintext, byte[] authdata, byte[] iv, int tagLen) throws IssacSDKException입력한 원문을 CCM/GCM 방식으로 암호화한다.- Parameters:
plaintext- [IN] 암호화 대상 원문authdata- [IN] CCM/GCM의 추가 데이터iv- [IN] GCM의 iv, CCM의 nonce [CCM : 7 ≤ nonceLen ≤ 13, GCM : 12 ≤ ivLen]tagLen- [IN] 메시지 인증 태그의 길이 [CCM : 4 ≤ tagLen ≤ 16, GCM : tagLen ≤ 16]- Returns:
- 암호문
- Throws:
IssacSDKException- 오류 발생- See Also:
Decrypt_Auth(byte[], byte[], byte[], int)
-
Decrypt_Auth
public byte[] Decrypt_Auth(byte[] ciphertext, byte[] authdata, byte[] iv, int tagLen) throws IssacSDKException입력한 암호문을 CCM/GCM 방식으로 복호화한다.- Parameters:
ciphertext- [IN] 암호문authdata- [IN] CCM/GCM의 추가 데이터iv- [IN] GCM의 iv, CCM의 nonce [CCM : 7 ≤ ivLen ≤ 13, GCM : 12 ≤ ivLen]tagLen- [IN] 메시지 인증 태그의 길이 [CCM : 4 ≤ tagLen ≤ 16, GCM : tagLen ≤ 16]- Returns:
- 복호화 된 원문
- Throws:
IssacSDKException- 오류 발생- See Also:
Encrypt_Auth(byte[], byte[], byte[], int)
-
PBKDF_PKCS12_GetKey
public static byte[] PBKDF_PKCS12_GetKey(int keyLen, java.lang.String pin) throws IssacSDKException입력된 PIN을 기반으로 암복호화용 키를 생성(유도)한다. (PKCS#12 v1.0 Appendix. B)- Parameters:
keyLen- [IN] 생성할 암복호화용 키의 길이 (bytes)pin- [IN] 암복호화용 키 생성에 사용할 PIN- Returns:
- 생성된 암복호화용 키
- Throws:
IssacSDKException- 오류 발생
-
PBKDF_PKCS12_GetKey_Advanced
public static byte[] PBKDF_PKCS12_GetKey_Advanced(int keyLen, java.lang.String pin, int keyType, byte[] salt, int iterations, int hashType) throws IssacSDKException입력된 값들을 기반으로 키를 생성(유도)한다. (PKCS#12 v1.0 Appendix. B)- Parameters:
keyLen- [IN] 생성할 키의 길이 (bytes)pin- [IN] 키 생성에 사용할 PINkeyType- [IN] 키의 용도 [1: 암복호화, 2: IV, 3: MAC]salt- [IN] salt (표준 참고)iterations- [IN] iterations (표준 참고)hashType- [IN] 키 유도 과정에 사용되는 해시 알고리즘 [ SHA1(0), SHA256(1), HAS160(2) ]- Returns:
- 생성된 키
- Throws:
IssacSDKException- 오류 발생
-
PBKDF2_GetKey
public static byte[] PBKDF2_GetKey(int keyLen, java.lang.String pin, byte[] salt, int iterations, int hashType) throws IssacSDKException입력된 값들을 기반으로 키를 생성(유도)한다. (PKCS#5 - PBKDF2)- Parameters:
keyLen- [IN] 생성할 키의 길이 (bytes)pin- [IN] 키 생성에 사용할 PINsalt- [IN] salt (표준 참고)iterations- [IN] iterations (표준 참고)hashType- [IN] 키 유도 과정에 사용되는 해시 알고리즘 [ SHA1(0), SHA256(1), HAS160(2) ]- Returns:
- 생성된 키
- Throws:
IssacSDKException- 오류 발생
-
Delete
public void Delete() throws IssacSDKExceptionDeprecated.Resource Leak 의 효율적인 관리를 위해 close() 를 사용할 것을 권장함.비밀키 정보를 메모리에서 삭제한다.- Throws:
IssacSDKException- 오류 발생- See Also:
IssacSECONTEXT()
-
close
public void close() throws IssacSDKException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
IssacSDKException
-
-