WA-SDK
3.0.4.0
WA-SDK
|
CMP (인증서 관리 프로토콜) 더 자세히 ...
데이터 구조 | |
struct | CERTANDKEY |
인증서와 개인키를 갖는 구조체 더 자세히 ... | |
struct | PKIMESSAGE |
PKIMessage에 대한 컨텍스트 더 자세히 ... | |
struct | PKICONTEXT |
PKIMessage 생성시에 각 함수들이 공유하여 사용하는 자료들을 모은 구조체 더 자세히 ... | |
struct | PKIKEYPOLICIES |
인증서 키생성을 위한 정책을 저장하는 구조체 더 자세히 ... | |
struct | PKICERTREQS |
인증서 생성요청들을 담고있는 구조체 더 자세히 ... | |
struct | PKICERTREPS |
인증서 생성 응답들을 갖고 있는 구조체 더 자세히 ... | |
struct | PKICERTREVREQS |
인증서 폐지요청들을 담고있는 구조체 더 자세히 ... | |
struct | PKICERTREVREPS |
인증서 폐지 응답들을 갖고 있는 구조체 더 자세히 ... | |
함수 | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_AskInitialCert (CERTANDKEY **cert_and_key_array, int *size, char *error_msg, int buf_len, char *raip, short raport, const char *user_id, const char *authcode, const char *resident_num, CERTIFICATE *ra_cert, CERTIFICATE *ca_cert) |
인증코드를 통하여 CA/RA에게 전송할 인증서 발급을 요청한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_AskInitialCert2 (CERTANDKEY **cert_and_key_array, int *size, char *error_msg, int buf_len, char *raip, short raport, char *user_id, char *user_dn, CERTIFICATE *admin_cert, PRIVATEKEY *admin_prikey, const char *resident_num, CERTIFICATE *ra_cert, CERTIFICATE *ca_cert) |
관리자의 인증서를 통하여 CA/RA에게 전송할 인증서 발급을 요청한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_AskKeyUpdate (CERTANDKEY **out_cert_and_key_array, int *out_size, char *error_msg, int buf_len, char *raip, short raport, CERTANDKEY *in_cert_and_key_array, int in_size, const char *resident_num, CERTIFICATE *ra_cert, CERTIFICATE *ca_cert) |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_AskKeyUpdate2 (CERTANDKEY **out_cert_and_key_array, int *out_size, char *error_msg, int buf_len, char *raip, short raport, CERTANDKEY *in_cert_and_key_array, int in_size, const char *resident_num, CERTIFICATE *admin_cert, PRIVATEKEY *admin_key, CERTIFICATE *ra_cert, CERTIFICATE *ca_cert) |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_DeleteCERTANDKEYarray (CERTANDKEY **cank_array, int size) |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_Create (PKIMESSAGE *pkimsg) |
PKIMESSAGE 구조체를 초기화한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_Delete (PKIMESSAGE *pkimsg) |
PKIMESSAGE 에 할당된 메모리를 해제한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_GetMsgType (int *msg_type, char *err_str, int err_str_max, PKIMESSAGE *pkimsg) |
수신한 PKIMESSAGE의 TYPE을 알아냄. 또한 type이 ERROR일 경우 에러 메시지를 리턴 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_GetSenderId (char *sender_id, int sender_id_max, PKIMESSAGE *pkimsg) |
수신한 PKIMESSAGE에서 송신자의 id를 구해냄 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_GetSenderName (char *sender_name, int sender_name_max, PKIMESSAGE *pkimsg) |
수신한 PKIMESSAGE에서 송신자의 DN을 구해냄 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICONTEXT_Create (PKICONTEXT *pkictx) |
PKICONTEXT 구조체를 생성 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICONTEXT_Delete (PKICONTEXT *pkictx) |
PKICONTEXT 구조체를 삭제 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Create (PKIKEYPOLICIES *key_policy) |
PKIKEYPOLICIES type을 생성 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Delete (PKIKEYPOLICIES *key_policy) |
PKIKEYPOLICIES type을 메모리에서 삭제 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Read_File (PKIKEYPOLICIES *key_policy, const char *filename) |
PKIKEYPOLICIES type을 파일에서 읽어들임 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Write_File (const char *filename, PKIKEYPOLICIES *key_policy) |
PKIKEYPOLICIES type을 파일에 저장 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Read_Memory (PKIKEYPOLICIES *key_policy, const void *buffer, int buffer_len) |
PKIKEYPOLICIES type을 메모리에서 읽어들임 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Write_Memory (void *buffer, int *buffer_len, int buffer_alloc_len, PKIKEYPOLICIES *key_policy) |
PKIKEYPOLICIES type을 메모리에 저장 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Get (char *name, int name_max, char *id, int id_max, int *algorithm, int *key_bit_len, char *parameter, int parameter_len, PKIKEYPOLICIES *key_policies, int index) |
PKIKEYPOLICIES 의 내용을 가져온다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_GetExt (int *valid_year, int *valid_month, int *valid_day, int *valid_hour, char *ldap_att, int ldap_att_max, char *extensions, int extensions_max, int *ra_issuance_allowed, PKIKEYPOLICIES *key_policies, int index) |
PKIKEYPOLICIES에 포함되어 있는 부가 정보들을 가져온다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIKEYPOLICIES_Add (PKIKEYPOLICIES *key_policies, const char *name, const char *id, int algorithm, int key_bit_len, const char *parameter) |
PKIKEYPOLICIES에 신규 정책을 하나 추가함 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_Create (PKICERTREQS *pkicertreqs) |
PKICERTREQS 구조체를 생성 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_Delete (PKICERTREQS *pkicertreqs) |
PKICERTREQS 구조체를 삭제 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_AddCertReq (PRIVATEKEY *privatekey, PKICERTREQS *pkicertreqs, PKIKEYPOLICIES *pkikeypolicies, int keypolicy_index, CERTIFICATE *old_cert, PRIVATEKEY *old_key, CERTIFICATE *ca_cert) |
신규 키쌍을 생성하고, PKICERTREQS 구조체에 신규 인증서 생성 요청을 추가 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_AddCertReqEx_UDK (PRIVATEKEY *privatekey, PKICERTREQS *pkicertreqs, int algorithm, int key_bit_len, char *parameter, char *key_policy_id, CERTIFICATE *old_cert, PRIVATEKEY *old_key_unused, CERTIFICATE *ca_cert, char *inputVal, int inputLen) |
신규 키쌍을 생성하고, PKICERTREQS 구조체에 신규 인증서 생성 요청을 추가 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_AddCertReqEx (PRIVATEKEY *privatekey, PKICERTREQS *pkicertreqs, int algorithm, int key_bit_len, char *parameter, char *key_policy_id, CERTIFICATE *old_cert, PRIVATEKEY *old_key_unsued, CERTIFICATE *ca_cert) |
신규 키쌍을 생성하고, PKICERTREQS 구조체에 신규 인증서 생성 요청을 추가 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_SetSubject (PKICERTREQS *pkicertreqs, const char *pSubjectName) |
PKICERTREQS의 인증서 생성 요청에 subject DN 이름을 추가한다. (RA용) 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_SetResidentNumber (PKICERTREQS *pkicertreqs, const char *pResidentNumber) |
PKICERTREQS의 인증서 생성 요청에 사용자의 주민등록번호를 추가한다. (RA용) 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_GetResidentNumber (char *pResidentNumber, int residentNumber_max, PKICERTREQS *pkicertreqs) |
PKICERTREQS의 인증서 생성 요청에서 사용자의 주민등록번호를 구한다. (RA용) 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREQS_SetEncryptedVID (PKICERTREQS *pkicertreqs, PRIVATEKEY *privatekey, int index, const char *pIdn, CERTIFICATE *ca_cert) |
사용자의 비공개키에 160bit 길이의 난수를 추가하고 이 난수를 사용하여 PKICERTREQS의 인증서 생성 요청에 사용자의 VID 정보를 추가한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREPS_Create (PKICERTREPS *pkicertreps) |
PKICERTREPS 구조체를 생성 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREPS_Delete (PKICERTREPS *pkicertreps) |
PKICERTREPS 구조체를 삭제 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREPS_Resolve (CERTIFICATE *certificate, char *err_message, int errmsg_max, PKICERTREPS *pkicertreps, int index) |
PKICERTREPS 구조체에서 발급받은 인증서를 꺼냄 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREVREQS_Create (PKICERTREVREQS *pkicertreqs) |
PKICERTREVREQS 구조체를 생성 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREVREQS_Delete (PKICERTREVREQS *pkicertreqs) |
PKICERTREVREQS 구조체를 삭제 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREVREQS_Add (PKICERTREVREQS *pkicertrevreqs, CERTIFICATE *certificate, int revocation_reason) |
폐지할 인증서를 PKICERTREVREQS에 추가 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREVREPS_Create (PKICERTREVREPS *pkicertrevreps) |
PKICERTREPS 구조체를 생성 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREVREPS_Delete (PKICERTREVREPS *pkicertrevreps) |
PKICERTREPS 구조체를 삭제 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKICERTREVREPS_Resolve (int *revocation_status, char *err_str, int err_str_max, PKICERTREVREPS *pkicertreps, int index) |
PKICERTREVREPS의 내용을 획득 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeInitialReq (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, PKICERTREQS *pkicertreqs, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key, const char *sender_id, const char *sender_authcode, CERTIFICATE *recip_cert) |
CA/RA에게 전송할 인증서 발급을 위한 IR 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveInitialReq (PKICERTREQS *pkicertreqs, PKICONTEXT *pkictx, PKIMESSAGE *pkimsg, CERTIFICATE *recip_cert, CERTIFICATE *sender_cert, char *sender_authcode, time_t nowTime) |
RA/Client로부터 받은 IR 메시지를 검증/해석한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeInitialRep (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, PKICERTREPS *pkicertreps, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key) |
RA/Client로 보낼 IP 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveInitialRep (PKICERTREPS *pkicertreps, PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, time_t nowTime) |
CA/RA로부터 받은 IP 메시지를 해석한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeKeyUpdateReq (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, PKICERTREQS *pkicertreqs, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key, CERTIFICATE *recip_cert) |
CA/RA에게 전송할 인증서 갱신을 위한 KUR 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveKeyUpdateReq (PKICERTREQS *pkicertreqs, PKICONTEXT *pkictx, PKIMESSAGE *pkimsg, CERTIFICATE *recip_cert, CERTIFICATE *sender_cert, time_t nowTime) |
RA/Client로부터 받은 KUR 메시지를 해석한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeKeyUpdateRep (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, PKICERTREPS *pkicertreps, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key) |
RA/Client에게 전송할 인증서 갱신한 KUP 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveKeyUpdateRep (PKICERTREPS *pkicertreps, PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, time_t nowTime) |
CA/RA로부터 받은 KUP 메시지를 해석한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeRevocationReq (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, PKICERTREVREQS *pkicertrevreqs, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key, CERTIFICATE *recip_cert) |
CA/RA에게 전송할 인증서 폐지을 위한 RR 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveRevocationReq (PKICERTREVREQS *pkicertrevreqs, PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, CERTIFICATE *recip_cert, CERTIFICATE *sender_cert, time_t nowTime) |
RA/Client로부터 받은 RR 메시지를 해석한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeRevocationRep (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, PKICERTREVREPS *pkicerrevtreps, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key) |
RA/Client로 보낼 RP 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveRevocationRep (PKICERTREVREPS *pkicertrevreps, PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, time_t nowTime) |
CA/RA로부터 받은 RP 메시지를 해석한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeConfirm (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx) |
CA/RA에 전송할 CONFIRM 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveConfirm (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, CERTIFICATE *recip_cert, CERTIFICATE *sender_cert, char *sender_authcode, time_t nowTime) |
RA/Client로부터 수신한 Confirm 메시지를 검증한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeError (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, int status, const char *status_msg, int error_code, const char *error_msg, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key) |
RA/Client에 전송할 ERROR 메시지를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveError (int *status, char *status_msg, int status_msg_max, int *err_code, char *err_msg, int err_msg_max, PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, time_t nowTime) |
CA/RA로부터 수신한 ERROR 메시지를 검증하고 내용을 구한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeKeyPoliciesReqMsg (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, char *user_id, char *user_authcode, CERTIFICATE *user_cert, PRIVATEKEY *user_key, int rauser_flag, CERTIFICATE *recip_cert, CERTIFICATE *ca_cert) |
CA/RA에게 PKIKEYPOLICIES 정보를 묻기 위한 PKI request message를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveKeyPoliciesReqMsg (char *requester_id, int requester_id_max, PKICONTEXT *pkictx, PKIMESSAGE *pkimsg, CERTIFICATE *recip_cert, CERTIFICATE *sender_cert, char *sender_authcode) |
Client에게 받은 PKIKEYPOLICIES 정보 request message를 해석 및 검증한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_MakeKeyPoliciesResMsg (PKIMESSAGE *pkimsg, PKICONTEXT *pkictx, PKIKEYPOLICIES *key_policies, CERTIFICATE *sender_cert, PRIVATEKEY *sender_key) |
Client에게 리턴할 PKIKEYPOLICIES 정보를 담은 PKI response message를 생성한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_CMP_ResolveKeyPoliciesResMsg (PKIKEYPOLICIES *key_policies, PKIMESSAGE *pkimsg, PKICONTEXT *pkictx) |
CA/RA가 리턴한 PKI response message에서 PKIKEYPOLICIES 정보를 얻는다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_SOCKET_Init () |
Network를 초기화한다(Win32) 더 자세히 ... | |
WA_SDK_API SOCKET FUNCCALL | ISSAC_SOCKET_Connect (const char *ip, int port) |
주어진 ip와 port값을 이용하여 socket을 생성하여 서버와 연결한 뒤, 해당 socket값을 리턴한다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_SOCKET_Connect2 (const char *ip, int port, SOCKET *pSocket) |
주어진 ip와 port값을 이용하여 socket을 생성하여 서버와 연결한 뒤, 해당 socket값을 리턴한다. 더 자세히 ... | |
WA_SDK_API SOCKET FUNCCALL | ISSAC_SOCKET_CreateAcceptSock (int port) |
ISSAC_SOCKET_Accept() 에서 사용할 SOCKET을 생성한다. 더 자세히 ... | |
WA_SDK_API SOCKET FUNCCALL | ISSAC_SOCKET_Accept (SOCKET sock) |
주어진 port에서 accept 더 자세히 ... | |
WA_SDK_API void FUNCCALL | ISSAC_SOCKET_Close (SOCKET sock) |
ISSAC_SOCKET_Connect()에 의해 생성된 연결을 끊는다. 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_Send (SOCKET sock, PKIMESSAGE *pPKIMessage) |
PKIMESSAGE를 전송한다. RFC2510(March 1999) 5.2 참조 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_SendError (SOCKET sock, const char *pszErrorMsg) |
PKIMessage 대신 human readable direct ERROR message를 전송한다. RFC2510(March 1999) 5.2 참조 더 자세히 ... | |
WA_SDK_API ISSAC_RETURN FUNCCALL | ISSAC_PKIMESSAGE_Receive (PKIMESSAGE *pPKIMessage, SOCKET sock, char *pszErrorMsgBuf, int nMaxBufLen) |
PKIMESSAGE를 수신한다. RFC2510(March 1999) 5.2 참조 더 자세히 ... | |
WA_SDK_API char *FUNCCALL | GetVersionString (int *pMajorVersion, int *pMinorVersion) |
CMP 모듈의 버전을 출력한다. 더 자세히 ... | |
CMP (인증서 관리 프로토콜)
enum ISSACAPI_CP_RETURN |
enum ISSAC_CMP_PKISTATUS |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_AskInitialCert | ( | CERTANDKEY ** | cert_and_key_array, |
int * | size, | ||
char * | error_msg, | ||
int | buf_len, | ||
char * | raip, | ||
short | raport, | ||
const char * | user_id, | ||
const char * | authcode, | ||
const char * | resident_num, | ||
CERTIFICATE * | ra_cert, | ||
CERTIFICATE * | ca_cert | ||
) |
인증코드를 통하여 CA/RA에게 전송할 인증서 발급을 요청한다.
cert_and_key_array | [OUT] 발급된 인증서와 비공개키 |
size | [OUT] 발급된 인증서의 갯수 |
error_msg | [OUT] 에러 메세지 |
buf_len | [OUT] 에러 메세지 길이 |
raip | [IN] 수신 Authority(CA or RA)의 IP Address |
raport | [IN] 수신 Authority(CA or RA)의 Port |
user_id | [IN] 발급 대상자의 ID |
authcode | [IN] 인증코드 |
resident_num | [IN] 발급 대상자의 주민번호(선택 사항) |
ra_cert | [IN] 수신 Authority(CA or RA)의 인증서 |
ca_cert | [IN] CA의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_AskInitialCert2 | ( | CERTANDKEY ** | cert_and_key_array, |
int * | size, | ||
char * | error_msg, | ||
int | buf_len, | ||
char * | raip, | ||
short | raport, | ||
char * | user_id, | ||
char * | user_dn, | ||
CERTIFICATE * | admin_cert, | ||
PRIVATEKEY * | admin_prikey, | ||
const char * | resident_num, | ||
CERTIFICATE * | ra_cert, | ||
CERTIFICATE * | ca_cert | ||
) |
관리자의 인증서를 통하여 CA/RA에게 전송할 인증서 발급을 요청한다.
cert_and_key_array | [OUT] 발급된 인증서와 비공개키 |
size | [OUT] 발급된 인증서의 갯수 |
error_msg | [OUT] 에러 메세지 |
buf_len | [OUT] 에러 메세지 길이 |
raip | [IN] 수신 Authority(CA or RA)의 IP Address |
raport | [IN] 수신 Authority(CA or RA)의 Port |
user_id | [IN] 발급 대상자의 ID |
user_dn | [IN] 발급 대상자의 DN |
admin_cert | [IN] 송신자(관리자)의 인증서 |
admin_prikey | [IN] 송신자(관리자)의 비공개키 |
resident_num | [IN] 발급 대상자의 주민번호(선택 사항) |
ra_cert | [IN] 수신 Authority(CA or RA)의 인증서 |
ca_cert | [IN] CA의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_AskKeyUpdate | ( | CERTANDKEY ** | out_cert_and_key_array, |
int * | out_size, | ||
char * | error_msg, | ||
int | buf_len, | ||
char * | raip, | ||
short | raport, | ||
CERTANDKEY * | in_cert_and_key_array, | ||
int | in_size, | ||
const char * | resident_num, | ||
CERTIFICATE * | ra_cert, | ||
CERTIFICATE * | ca_cert | ||
) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_AskKeyUpdate2 | ( | CERTANDKEY ** | out_cert_and_key_array, |
int * | out_size, | ||
char * | error_msg, | ||
int | buf_len, | ||
char * | raip, | ||
short | raport, | ||
CERTANDKEY * | in_cert_and_key_array, | ||
int | in_size, | ||
const char * | resident_num, | ||
CERTIFICATE * | admin_cert, | ||
PRIVATEKEY * | admin_key, | ||
CERTIFICATE * | ra_cert, | ||
CERTIFICATE * | ca_cert | ||
) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_DeleteCERTANDKEYarray | ( | CERTANDKEY ** | cank_array, |
int | size | ||
) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_Create | ( | PKIMESSAGE * | pkimsg | ) |
PKIMESSAGE 구조체를 초기화한다.
pkimsg | [IN,OUT] 초기화 할 PKIMESSAGE |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_Delete | ( | PKIMESSAGE * | pkimsg | ) |
PKIMESSAGE 에 할당된 메모리를 해제한다.
pkimsg | [IN,OUT] ISSAC_PKIMESSAGE_Create() 를 호출하여 초기화 된 DLCONTEXT |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_GetMsgType | ( | int * | msg_type, |
char * | err_str, | ||
int | err_str_max, | ||
PKIMESSAGE * | pkimsg | ||
) |
수신한 PKIMESSAGE의 TYPE을 알아냄. 또한 type이 ERROR일 경우 에러 메시지를 리턴
msg_type | [OUT] PKIMESSAGE의 type |
err_str | [OUT] PKIMESSAGE가 ERROR일 때, 에러문자열을 리턴 |
err_str_max | [IN] err_str 벼퍼의 최대 길이 |
pkimsg | [IN] type을 구하려는 PKIMESSAGE |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_GetSenderId | ( | char * | sender_id, |
int | sender_id_max, | ||
PKIMESSAGE * | pkimsg | ||
) |
수신한 PKIMESSAGE에서 송신자의 id를 구해냄
sender_id | [OUT] |
sender_id_max | [IN] |
pkimsg | [IN] |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_GetSenderName | ( | char * | sender_name, |
int | sender_name_max, | ||
PKIMESSAGE * | pkimsg | ||
) |
수신한 PKIMESSAGE에서 송신자의 DN을 구해냄
sender_name | [OUT] |
sender_name_max | [IN] |
pkimsg | [IN] |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICONTEXT_Create | ( | PKICONTEXT * | pkictx | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICONTEXT_Delete | ( | PKICONTEXT * | pkictx | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Create | ( | PKIKEYPOLICIES * | key_policy | ) |
PKIKEYPOLICIES type을 생성
key_policy | [IN] 생성할 PKIKEYPOLICIES type |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Delete | ( | PKIKEYPOLICIES * | key_policy | ) |
PKIKEYPOLICIES type을 메모리에서 삭제
key_policy | [IN] 삭제할 PKIKEYPOLICIES type |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Read_File | ( | PKIKEYPOLICIES * | key_policy, |
const char * | filename | ||
) |
PKIKEYPOLICIES type을 파일에서 읽어들임
key_policy | [IN] 읽어올 PKIKEYPOLICIES type |
filename | [IN] 읽어올 PKIKEYPOLICIES 파일의 경로 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Write_File | ( | const char * | filename, |
PKIKEYPOLICIES * | key_policy | ||
) |
PKIKEYPOLICIES type을 파일에 저장
filename | [IN] 출력할 PKIKEYPOLICIES 파일의 경로 |
key_policy | [IN] 출력할 PKIKEYPOLICIES type |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Read_Memory | ( | PKIKEYPOLICIES * | key_policy, |
const void * | buffer, | ||
int | buffer_len | ||
) |
PKIKEYPOLICIES type을 메모리에서 읽어들임
key_policy | [IN] PKIKEYPOLICIES |
buffer | [IN] 입력 버퍼 |
buffer_len | [IN] 입력 버퍼 크기 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Write_Memory | ( | void * | buffer, |
int * | buffer_len, | ||
int | buffer_alloc_len, | ||
PKIKEYPOLICIES * | key_policy | ||
) |
PKIKEYPOLICIES type을 메모리에 저장
buffer | [OUT] 출력 버퍼 |
buffer_len | [OUT] 실제 출력 크기 |
buffer_alloc_len | [IN] 출력 버퍼 크기 |
key_policy | [IN] 저장할 PKIKEYPOLICIES type |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Get | ( | char * | name, |
int | name_max, | ||
char * | id, | ||
int | id_max, | ||
int * | algorithm, | ||
int * | key_bit_len, | ||
char * | parameter, | ||
int | parameter_len, | ||
PKIKEYPOLICIES * | key_policies, | ||
int | index | ||
) |
PKIKEYPOLICIES 의 내용을 가져온다.
name | [OUT] Key Policy의 이름 |
name_max | [IN] name 버퍼의 최대 길이 |
id | [OUT] Key Policy의 id |
id_max | [IN] id 버퍼의 최대 길이 |
algorithm | [OUT] Key Policy의 공개키 종류 |
key_bit_len | [OUT] Key Policy의 공개키 bit 길이 |
parameter | [OUT] Key Policy의 공개키 도메인 파라메터 |
parameter_len | [IN] parameter 버퍼의 최대 길이 |
key_policies | [IN] 필요한 key policy를 꺼낼 PKIKEYPOLICIES type |
index | [IN] PKIEKYPOLICIES에서 꺼낼 key policy의 index |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_GetExt | ( | int * | valid_year, |
int * | valid_month, | ||
int * | valid_day, | ||
int * | valid_hour, | ||
char * | ldap_att, | ||
int | ldap_att_max, | ||
char * | extensions, | ||
int | extensions_max, | ||
int * | ra_issuance_allowed, | ||
PKIKEYPOLICIES * | key_policies, | ||
int | index | ||
) |
PKIKEYPOLICIES에 포함되어 있는 부가 정보들을 가져온다.
valid_year | [OUT] 유효기간 (연) |
valid_month | [OUT] 유효기간 (월) |
valid_day | [OUT] 유효기간 (일) |
valid_hour | [OUT] 유효기간 (시) |
ldap_att | [OUT] 사용자 인증서의 LDAP attribute 값 |
ldap_att_max | [IN] ldap_att 버퍼의 최대 길이 |
extensions | [OUT] 인증서에 들어갈 extensions들의 내용 |
extensions_max | [IN] extensions 버퍼의 최대 길이 |
ra_issuance_allowed | [OUT] 현 RA에게 사용자 인증서 발급이 허용되었는지의 여부 |
key_policies | [IN] 필요한 key policy를 꺼낼 PKIKEYPOLICIES type |
index | [IN] PKIEKYPOLICIES에서 꺼낼 key policy의 index |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIKEYPOLICIES_Add | ( | PKIKEYPOLICIES * | key_policies, |
const char * | name, | ||
const char * | id, | ||
int | algorithm, | ||
int | key_bit_len, | ||
const char * | parameter | ||
) |
PKIKEYPOLICIES에 신규 정책을 하나 추가함
key_policies | [OUT] 필요한 key policy를 꺼낼 PKIKEYPOLICIES type |
name | [IN] Key Policy의 이름 |
id | [IN] Key Policy의 id |
algorithm | [IN] Key Policy의 공개키 종류 |
key_bit_len | [IN] Key Policy의 공개키 bit 길이 |
parameter | [IN] Key Policy의 공개키 도메인 파라메터 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_Create | ( | PKICERTREQS * | pkicertreqs | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_Delete | ( | PKICERTREQS * | pkicertreqs | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_AddCertReq | ( | PRIVATEKEY * | privatekey, |
PKICERTREQS * | pkicertreqs, | ||
PKIKEYPOLICIES * | pkikeypolicies, | ||
int | keypolicy_index, | ||
CERTIFICATE * | old_cert, | ||
PRIVATEKEY * | old_key, | ||
CERTIFICATE * | ca_cert | ||
) |
신규 키쌍을 생성하고, PKICERTREQS 구조체에 신규 인증서 생성 요청을 추가
privatekey | [OUT] 생성된 비공개키 |
pkicertreqs | [IN,OUT] 신규 인증서 생성 요청이 추가될 PKICERTREQS |
pkikeypolicies | [IN] CA/RA에게서 받은 인증서의 공개키를 위한 Key Policies |
keypolicy_index | [IN] pkikeypolicies에서 인증서 생성 요청에 사용할 policy의 index 번호 |
old_cert | [IN] 인증서 갱신 시에 사용할 이전 사용자 인증서. 등록 시에는 NULL 가능 |
old_key | [IN] 인증서 갱신 시에 사용할 이전 사용자 비공개키. 등록 시에는 NULL 가능 |
ca_cert | [IN] CA의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_AddCertReqEx_UDK | ( | PRIVATEKEY * | privatekey, |
PKICERTREQS * | pkicertreqs, | ||
int | algorithm, | ||
int | key_bit_len, | ||
char * | parameter, | ||
char * | key_policy_id, | ||
CERTIFICATE * | old_cert, | ||
PRIVATEKEY * | old_key_unused, | ||
CERTIFICATE * | ca_cert, | ||
char * | inputVal, | ||
int | inputLen | ||
) |
신규 키쌍을 생성하고, PKICERTREQS 구조체에 신규 인증서 생성 요청을 추가
privatekey | [OUT] 생성된 비공개키 |
pkicertreqs | [IN,OUT] 신규 인증서 생성 요청이 추가될 PKICERTREQS |
algorithm | [IN] |
key_bit_len | [IN] |
parameter | [IN] |
key_policy_id | [IN] |
old_cert | [IN] 인증서 갱신 시에 사용할 이전 사용자 인증서. 등록시에는 NULL 가능 |
old_key_unused | [IN] 인증서 갱신 시에 사용할 이전 사용자 비공개키. 등록시에는 NULL 가능 (사용안함) |
ca_cert | [IN] CA의 인증서 |
inputVal | [IN] user input value. ex) id, pass |
inputLen | [IN] user input value length |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_AddCertReqEx | ( | PRIVATEKEY * | privatekey, |
PKICERTREQS * | pkicertreqs, | ||
int | algorithm, | ||
int | key_bit_len, | ||
char * | parameter, | ||
char * | key_policy_id, | ||
CERTIFICATE * | old_cert, | ||
PRIVATEKEY * | old_key_unsued, | ||
CERTIFICATE * | ca_cert | ||
) |
신규 키쌍을 생성하고, PKICERTREQS 구조체에 신규 인증서 생성 요청을 추가
privatekey | [OUT] 생성된 비공개키 |
pkicertreqs | [IN,OUT] 신규 인증서 생성 요청이 추가될 PKICERTREQS |
algorithm | [IN] 생성할 키쌍의 알고리즘 |
key_bit_len | [IN] 생성할 키쌍의 키 길이 (bit 단위) |
parameter | [IN] 생성한 키쌍의 도메인 파라메터. 알고리즘이 RSA인 경우에는 NULL을 주는 것이 가능 |
key_policy_id | [IN] KeyPolicy의 ID. NULL을 주는 것이 가능 |
old_cert | [IN] 인증서 갱신 시에 사용할 이전 사용자 인증서. 등록시에는 NULL 가능 |
old_key_unsued | [IN] 인증서 갱신 시에 사용할 이전 사용자 비공개키. 등록시에는 NULL 가능 (사용안함) |
ca_cert | [IN] CA의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_SetSubject | ( | PKICERTREQS * | pkicertreqs, |
const char * | pSubjectName | ||
) |
PKICERTREQS의 인증서 생성 요청에 subject DN 이름을 추가한다. (RA용)
pkicertreqs | [IN,OUT] 신규 subject name이 추가될 PKICERTREQS |
pSubjectName | [IN] 신규 subject name (ex:"cn=user1,c=kr") |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_SetResidentNumber | ( | PKICERTREQS * | pkicertreqs, |
const char * | pResidentNumber | ||
) |
PKICERTREQS의 인증서 생성 요청에 사용자의 주민등록번호를 추가한다. (RA용)
pkicertreqs | [IN,OUT] 주민등록번호 정보가 추가될 PKICERTREQS |
pResidentNumber | [IN] 주민등록번호 (ex:"770111-1234567") |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_GetResidentNumber | ( | char * | pResidentNumber, |
int | residentNumber_max, | ||
PKICERTREQS * | pkicertreqs | ||
) |
PKICERTREQS의 인증서 생성 요청에서 사용자의 주민등록번호를 구한다. (RA용)
pResidentNumber | [OUT] 주민등록번호 (ex:"770111-1234567") |
residentNumber_max | [IN] pResidentNumber 변수 버퍼의 최대 길이 |
pkicertreqs | [IN] 주민등록번호 정보를 가진 PKICERTREQS |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREQS_SetEncryptedVID | ( | PKICERTREQS * | pkicertreqs, |
PRIVATEKEY * | privatekey, | ||
int | index, | ||
const char * | pIdn, | ||
CERTIFICATE * | ca_cert | ||
) |
사용자의 비공개키에 160bit 길이의 난수를 추가하고 이 난수를 사용하여 PKICERTREQS의 인증서 생성 요청에 사용자의 VID 정보를 추가한다.
pkicertreqs | [IN,OUT] 특정 요청에 EncryptedVID 정보가 추가될 PKICERTREQS |
privatekey | [IN,OUT] EncryptedVID가 추가될 요청에 대응하는 비공개키. 내부에 난수가 추가됨 |
index | [IN] pkicertreqs중 EncryptedVID가 추가될 요청의 index |
pIdn | [IN] 사용자 식별번호. 주민등록번호 등등 (ex:"770111-1234567") |
ca_cert | [IN] CA의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREPS_Create | ( | PKICERTREPS * | pkicertreps | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREPS_Delete | ( | PKICERTREPS * | pkicertreps | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREPS_Resolve | ( | CERTIFICATE * | certificate, |
char * | err_message, | ||
int | errmsg_max, | ||
PKICERTREPS * | pkicertreps, | ||
int | index | ||
) |
PKICERTREPS 구조체에서 발급받은 인증서를 꺼냄
certificate | [OUT] 발급받은 인증서 |
err_message | [OUT] 요청한 인증서의 발급이 실패한 경우에 CA/RA가 보낸 에러 메시지. 성공 시에는 "". |
errmsg_max | [IN] err_message 버퍼의 최대 길이 |
pkicertreps | [IN] 인증서 생성 응답을 담고 있는 PKICERTREPS 구조체 |
index | [IN] pkicertreps에 들어있는 여러 인증서 응답들 중 몇번째 인증서를 꺼낼 것인지를 지정 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREVREQS_Create | ( | PKICERTREVREQS * | pkicertreqs | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREVREQS_Delete | ( | PKICERTREVREQS * | pkicertreqs | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREVREQS_Add | ( | PKICERTREVREQS * | pkicertrevreqs, |
CERTIFICATE * | certificate, | ||
int | revocation_reason | ||
) |
폐지할 인증서를 PKICERTREVREQS에 추가
pkicertrevreqs | [OUT] 폐지 요청을 추가할 PKICERTREVREQS 구조체 |
certificate | [IN] 폐지할 인증서 |
revocation_reason | [IN] 폐지 사유 (bitwise OR 사용 가능) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREVREPS_Create | ( | PKICERTREVREPS * | pkicertrevreps | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREVREPS_Delete | ( | PKICERTREVREPS * | pkicertrevreps | ) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKICERTREVREPS_Resolve | ( | int * | revocation_status, |
char * | err_str, | ||
int | err_str_max, | ||
PKICERTREVREPS * | pkicertreps, | ||
int | index | ||
) |
PKICERTREVREPS의 내용을 획득
revocation_status | [OUT] |
err_str | [OUT] |
err_str_max | [IN] |
pkicertreps | [IN] |
index | [IN] |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeInitialReq | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
PKICERTREQS * | pkicertreqs, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key, | ||
const char * | sender_id, | ||
const char * | sender_authcode, | ||
CERTIFICATE * | recip_cert | ||
) |
CA/RA에게 전송할 인증서 발급을 위한 IR 메시지를 생성한다.
pkimsg | [OUT] 생성된 IR PKIMessage |
pkictx | [OUT] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
pkicertreqs | [IN] 인증서 발급 요청 메시지 |
sender_cert | [IN] 송신자(RA/Client)의 인증서. ID 사용시 NULL 가능 |
sender_key | [IN] 송신자(RA/Client)의 비공개키. ID 사용시 NULL 가능 |
sender_id | [IN] 송신자(Client)의 ID, 인증서 사용시 NULL 가능 |
sender_authcode | [IN] 송신자(Client)의 인증코드, 인증서 사용시 NULL 가능 |
recip_cert | [IN] 수신 Authority(CA/RA)의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveInitialReq | ( | PKICERTREQS * | pkicertreqs, |
PKICONTEXT * | pkictx, | ||
PKIMESSAGE * | pkimsg, | ||
CERTIFICATE * | recip_cert, | ||
CERTIFICATE * | sender_cert, | ||
char * | sender_authcode, | ||
time_t | nowTime | ||
) |
RA/Client로부터 받은 IR 메시지를 검증/해석한다.
pkicertreqs | [OUT] 보내온 pki message에서 구한 PKICERTREQS |
pkictx | [OUT] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
pkimsg | [IN] 수신한 IR PKIMESSAGE |
recip_cert | [IN] 수신자(CA/RA)의 인증서 |
sender_cert | [IN] 송신자(RA/Client)의 인증서. 인증코드 사용시 NULL 가능 |
sender_authcode | [IN] 송신자(Client)의 인증코드. 인증서 사용시 NULL 가능 |
nowTime | [IN] 검증 시간. 0을 주면 현재 시간으로 검증 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeInitialRep | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
PKICERTREPS * | pkicertreps, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key | ||
) |
RA/Client로 보낼 IP 메시지를 생성한다.
pkimsg | [OUT] 생성된 IP PKIMessage |
pkictx | [IN] ISSAC_CMP_ResolveInitialReq()에서 구한 PKICONTEXT |
pkicertreps | [IN] 생성한 인증서를 담고 있는 PKICERTREPS 구조체 |
sender_cert | [IN] 송신자(CA/RA)의 인증서 |
sender_key | [IN] 송신자(CA/RA)의 비공개키 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveInitialRep | ( | PKICERTREPS * | pkicertreps, |
PKIMESSAGE * | pkimsg, | ||
PKICONTEXT * | pkictx, | ||
time_t | nowTime | ||
) |
CA/RA로부터 받은 IP 메시지를 해석한다.
pkicertreps | [OUT] CA가 발급한 사용자의 인증서 응답들 |
pkimsg | [IN] CA/RA가 보낸 IP PKIMessage |
pkictx | [IN] ISSAC_CMP_MakeInitialReq()에서 구한 PKICONTEXT |
nowTime | [IN] 현재 시각 (0이면 System의 현재 시간값 사용) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeKeyUpdateReq | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
PKICERTREQS * | pkicertreqs, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key, | ||
CERTIFICATE * | recip_cert | ||
) |
CA/RA에게 전송할 인증서 갱신을 위한 KUR 메시지를 생성한다.
pkimsg | [OUT] 생성된 KUR PKIMessage |
pkictx | [OUT] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
pkicertreqs | [IN] 인증서 발급 요청 메시지 |
sender_cert | [IN] 송신자(RA/Client)의 인증서. ID 사용시 NULL 가능 |
sender_key | [IN] 송신자(RA/Client)의 비공개키. ID 사용시 NULL 가능 |
recip_cert | [IN] 수신 Authority(CA or RA)의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveKeyUpdateReq | ( | PKICERTREQS * | pkicertreqs, |
PKICONTEXT * | pkictx, | ||
PKIMESSAGE * | pkimsg, | ||
CERTIFICATE * | recip_cert, | ||
CERTIFICATE * | sender_cert, | ||
time_t | nowTime | ||
) |
RA/Client로부터 받은 KUR 메시지를 해석한다.
pkicertreqs | [OUT] 보내온 pki message에서 구한 PKICERTREQS |
pkictx | [OUT] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
pkimsg | [IN] 수신한 pki message |
recip_cert | [IN] 수신자의 인증서 |
sender_cert | [IN] 송신자(RA/Client)의 인증서. ID 사용시 NULL 가능 |
nowTime | [IN] 검증 시간. 0을 주면 현재 시간으로 검증 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeKeyUpdateRep | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
PKICERTREPS * | pkicertreps, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key | ||
) |
RA/Client에게 전송할 인증서 갱신한 KUP 메시지를 생성한다.
pkimsg | [OUT] 생성된 IP PKIMessage |
pkictx | [IN] ISSAC_CMP_ResolveKeyUpdateReq()에서 구한 PKICONTEXT |
pkicertreps | [IN] 생성한 인증서를 담고 있는 PKICERTREPS 구조체 |
sender_cert | [IN] 송신자(CA/RA)의 인증서 |
sender_key | [IN] 송신자(CA/RA)의 비공개키 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveKeyUpdateRep | ( | PKICERTREPS * | pkicertreps, |
PKIMESSAGE * | pkimsg, | ||
PKICONTEXT * | pkictx, | ||
time_t | nowTime | ||
) |
CA/RA로부터 받은 KUP 메시지를 해석한다.
pkicertreps | [OUT] CA가 발급한 사용자의 인증서 응답들 |
pkimsg | [IN] CA가 보낸 KUP PKIMessage |
pkictx | [IN] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
nowTime | [IN] 현재 시각 (0이면 System의 현재 시간값 사용) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeRevocationReq | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
PKICERTREVREQS * | pkicertrevreqs, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key, | ||
CERTIFICATE * | recip_cert | ||
) |
CA/RA에게 전송할 인증서 폐지을 위한 RR 메시지를 생성한다.
pkimsg | [OUT] 생성된 RR PKIMessage |
pkictx | [OUT] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
pkicertrevreqs | [IN] 인증서 폐지 요청 정보가 들어있는 PKICERTREVREQS |
sender_cert | [IN] 송신자(RA/Client)의 인증서 |
sender_key | [IN] 송신자(RA/Client)의 비공개키 |
recip_cert | [IN] 수신자(CA/RA)의 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveRevocationReq | ( | PKICERTREVREQS * | pkicertrevreqs, |
PKIMESSAGE * | pkimsg, | ||
PKICONTEXT * | pkictx, | ||
CERTIFICATE * | recip_cert, | ||
CERTIFICATE * | sender_cert, | ||
time_t | nowTime | ||
) |
RA/Client로부터 받은 RR 메시지를 해석한다.
pkicertrevreqs | [OUT] 폐지하고자 하는 인증서의 정보 PKCERTREVREQS |
pkimsg | [IN] RA/Client가 보낸 RR PKIMessage |
pkictx | [IN] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
recip_cert | [IN] PKIMESSAGE를 보낸 RA/Client의 인증서 |
sender_cert | [IN] CA의 인증서 |
nowTime | [IN] 현재 시각(0이면 System의 현재 시간값 사용) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeRevocationRep | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
PKICERTREVREPS * | pkicerrevtreps, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key | ||
) |
RA/Client로 보낼 RP 메시지를 생성한다.
pkimsg | [OUT] 생성된 RP PKIMessage |
pkictx | [OUT] ISSAC_CMP_ResolveRevocationReq()에서 구한 PKICONTEXT |
pkicerrevtreps | [IN] 인증서 폐지 응답 정보가 들어있는 PKICERTREVREPS |
sender_cert | [IN] 송신자(RA/Client)의 인증서 |
sender_key | [IN] 송신자(RA/Client)의 비공개키 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveRevocationRep | ( | PKICERTREVREPS * | pkicertrevreps, |
PKIMESSAGE * | pkimsg, | ||
PKICONTEXT * | pkictx, | ||
time_t | nowTime | ||
) |
CA/RA로부터 받은 RP 메시지를 해석한다.
pkicertrevreps | [OUT] CA의 인증서 폐지 응답들 |
pkimsg | [IN] CA가 보낸 IP PKIMessage |
pkictx | [IN] ISSAC_CMP_MakeRevocationReq()에서 구한 PKICONTEXT |
nowTime | [IN] 현재 시각(0이면 System의 현재 시간값 사용) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeConfirm | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx | ||
) |
CA/RA에 전송할 CONFIRM 메시지를 생성한다.
pkimsg | [OUT] 생성된 PKICONFIRM 메시지 |
pkictx | [IN] PKIMessage 처리시에 필요한 데이터들을 저장하고 있는 구조체 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveConfirm | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
CERTIFICATE * | recip_cert, | ||
CERTIFICATE * | sender_cert, | ||
char * | sender_authcode, | ||
time_t | nowTime | ||
) |
RA/Client로부터 수신한 Confirm 메시지를 검증한다.
pkimsg | [OUT] 검증할 CONFIRM 메시지 |
pkictx | [IN] PKIMessage 처리시에 필요한 데이터들을 저장하고 있는 구조체 |
recip_cert | [IN] 수신자 인증서 |
sender_cert | [IN] 송신자 인증서 |
sender_authcode | [IN] 인증코드 |
nowTime | [IN] 현재시각 (0이면 system의 현재 시간값 사용) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeError | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
int | status, | ||
const char * | status_msg, | ||
int | error_code, | ||
const char * | error_msg, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key | ||
) |
RA/Client에 전송할 ERROR 메시지를 생성한다.
pkimsg | [OUT] 생성된 PKI 메시지 |
pkictx | [IN] PKIMessage 처리시에 필요한 데이터들을 저장하고 있는 구조체 |
status | [IN] 상태 정보 |
status_msg | [IN] 상태 정보 메시지, NULL 가능 |
error_code | [IN] 에러 코드 |
error_msg | [IN] 에러 메시지, NULL 가능 |
sender_cert | [IN] 송신자(CA/RA)의 인증서. |
sender_key | [IN] 송신자(CA/RA)의 비공개키 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveError | ( | int * | status, |
char * | status_msg, | ||
int | status_msg_max, | ||
int * | err_code, | ||
char * | err_msg, | ||
int | err_msg_max, | ||
PKIMESSAGE * | pkimsg, | ||
PKICONTEXT * | pkictx, | ||
time_t | nowTime | ||
) |
CA/RA로부터 수신한 ERROR 메시지를 검증하고 내용을 구한다.
status | [OUT] 상태 정보 |
status_msg | [OUT] 상태 정보 메시지 |
status_msg_max | [IN] 상태 정보 메시지의 최대 크기 |
err_code | [OUT] 에러 코드 |
err_msg | [OUT] 에러 메시지 |
err_msg_max | [IN] 에러 메시지의 최대 크기 |
pkimsg | [IN] 검증할 ERROR 메시지 |
pkictx | [IN] PKICONTEXT |
nowTime | [IN] 현재시각 (0이면 system의 현재 시간값 사용) |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeKeyPoliciesReqMsg | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
char * | user_id, | ||
char * | user_authcode, | ||
CERTIFICATE * | user_cert, | ||
PRIVATEKEY * | user_key, | ||
int | rauser_flag, | ||
CERTIFICATE * | recip_cert, | ||
CERTIFICATE * | ca_cert | ||
) |
CA/RA에게 PKIKEYPOLICIES 정보를 묻기 위한 PKI request message를 생성한다.
pkimsg | [OUT] 생성된 KeyPolicy request PKIMessage |
pkictx | [OUT] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
user_id | [IN] 사용자의 ID 정보. user_cert를 쓸 경우에는 NULL 가능 |
user_authcode | [IN] 사용자의 인증코드. user_cert를 쓸 경우에는 NULL 가능 |
user_cert | [IN] 사용자의 인증서. user_id를 쓸 경우에는 NULL 가능 |
user_key | [IN] 사용자의 비공개키. user_id를 쓸 경우에는 NULL 가능 |
rauser_flag | [IN] 요청자가 RA일 경우, 이 값을 1로 주면 요청자 자신의 PKIKEYPOLICIES 정보가 아니라, RA 요청자가 자신의 사용자들에게 mapping 해줄 수 있는 PKIKEYPOLICIES를 요청하게 된다. |
recip_cert | [IN] 수신자 인증서 |
ca_cert | [IN] CA 인증서 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveKeyPoliciesReqMsg | ( | char * | requester_id, |
int | requester_id_max, | ||
PKICONTEXT * | pkictx, | ||
PKIMESSAGE * | pkimsg, | ||
CERTIFICATE * | recip_cert, | ||
CERTIFICATE * | sender_cert, | ||
char * | sender_authcode | ||
) |
Client에게 받은 PKIKEYPOLICIES 정보 request message를 해석 및 검증한다.
requester_id | [OUT] 어떤 정책들 mapping되었는지 알고자하는 사용자의 identifier. Reference number 혹은 DN 값이 된다. |
requester_id_max | [IN] requester_id 버퍼의 최대 길이 한도 |
pkictx | [OUT] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
pkimsg | [IN] 수신한 IR PKIMESSAGE |
recip_cert | [IN] 수신자(RA)의 인증서 |
sender_cert | [IN] 송신자(Client)의 인증서. 인증코드 사용시 NULL 가능 |
sender_authcode | [IN] 송신자(Client)의 인증코드. 인증서 사용시 NULL 가능 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_MakeKeyPoliciesResMsg | ( | PKIMESSAGE * | pkimsg, |
PKICONTEXT * | pkictx, | ||
PKIKEYPOLICIES * | key_policies, | ||
CERTIFICATE * | sender_cert, | ||
PRIVATEKEY * | sender_key | ||
) |
Client에게 리턴할 PKIKEYPOLICIES 정보를 담은 PKI response message를 생성한다.
pkimsg | [OUT] 정책정보를 담은 PKIMessage |
pkictx | [IN] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
key_policies | [IN] CA/RA가 리턴한 사용자의 PKIKEYPOLICIES 정보 |
sender_cert | [IN] 메시지를 생성하는 CA/RA의 인증서 |
sender_key | [IN] 메시지를 생성하는 CA/RA의 비공개키 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_CMP_ResolveKeyPoliciesResMsg | ( | PKIKEYPOLICIES * | key_policies, |
PKIMESSAGE * | pkimsg, | ||
PKICONTEXT * | pkictx | ||
) |
CA/RA가 리턴한 PKI response message에서 PKIKEYPOLICIES 정보를 얻는다.
key_policies | [OUT] CA/RA가 리턴한 사용자의 PKIKEYPOLICIES 정보 |
pkimsg | [IN] CA/RA가 보낸 IP PKIMessage |
pkictx | [IN] PKIMessage 처리시에 필요한 데이터들을 저장하는 구조체 |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_SOCKET_Init | ( | ) |
Network를 초기화한다(Win32)
WA_SDK_API SOCKET FUNCCALL ISSAC_SOCKET_Connect | ( | const char * | ip, |
int | port | ||
) |
주어진 ip와 port값을 이용하여 socket을 생성하여 서버와 연결한 뒤, 해당 socket값을 리턴한다.
ip | [IN] 서버의 IP |
port | [IN] 서버의 port |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_SOCKET_Connect2 | ( | const char * | ip, |
int | port, | ||
SOCKET * | pSocket | ||
) |
주어진 ip와 port값을 이용하여 socket을 생성하여 서버와 연결한 뒤, 해당 socket값을 리턴한다.
ip | [IN] 서버의 IP |
port | [IN] 서버의 port |
pSocket | [OUT] 소켓 설명자 |
WA_SDK_API SOCKET FUNCCALL ISSAC_SOCKET_CreateAcceptSock | ( | int | port | ) |
WA_SDK_API SOCKET FUNCCALL ISSAC_SOCKET_Accept | ( | SOCKET | sock | ) |
주어진 port에서 accept
sock | [IN] 소켓 설명자 |
WA_SDK_API void FUNCCALL ISSAC_SOCKET_Close | ( | SOCKET | sock | ) |
ISSAC_SOCKET_Connect()에 의해 생성된 연결을 끊는다.
sock | [IN] ISSAC_SOCKET_Connect()에 의해 생성된 socket |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_Send | ( | SOCKET | sock, |
PKIMESSAGE * | pPKIMessage | ||
) |
PKIMESSAGE를 전송한다. RFC2510(March 1999) 5.2 참조
sock | [IN] ISSAC_SOCKET_Connect()에 의해 생성된 socket |
pPKIMessage | [IN] 전송할 PKIMESSAGE |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_SendError | ( | SOCKET | sock, |
const char * | pszErrorMsg | ||
) |
PKIMessage 대신 human readable direct ERROR message를 전송한다. RFC2510(March 1999) 5.2 참조
sock | [IN] ISSAC_SOCKET_Connect()에 의해 생성된 socket |
pszErrorMsg | [IN] 전송할 error message |
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_PKIMESSAGE_Receive | ( | PKIMESSAGE * | pPKIMessage, |
SOCKET | sock, | ||
char * | pszErrorMsgBuf, | ||
int | nMaxBufLen | ||
) |
PKIMESSAGE를 수신한다. RFC2510(March 1999) 5.2 참조
pPKIMessage | [OUT] 수신된 PKIMESSAGE |
sock | [IN] ISSAC_SOCKET_Connect()에 의해 생성된 socket |
pszErrorMsgBuf | [IN] 에러 메시지(0x06)가 수신된 경우, 추가 메시지가 저장될 버퍼 (pszErrorMsgBuf가 NULL이면 저장하지 않음). 이때 return 값은 ER_CMP_ERRORMSG_RECEIVED이 된다. |
nMaxBufLen | [IN] pszErrorMsgBuf의 최대 크기 |
WA_SDK_API char* FUNCCALL GetVersionString | ( | int * | pMajorVersion, |
int * | pMinorVersion | ||
) |
CMP 모듈의 버전을 출력한다.
pMajorVersion | [OUT] Major 버전 (3) |
pMinorVersion | [OUT] Minor 버전 (1) |