WA-SDK  3.0.4.0
WA-SDK
ISSAC-API (HMAC)

HMAC (Hashed MAC) 더 자세히 ...

ISSAC-API (HMAC)에 대한 협력 다이어그램:

데이터 구조

struct  HMAC_CONTEXT
 HMAC (Hashed MAC) 컨텍스트 더 자세히 ...
 

함수

WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_CONTEXT_Create (HMAC_CONTEXT *context)
 HMAC_CONTEXT 구조체를 초기화한다. 더 자세히 ...
 
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_CONTEXT_Delete (HMAC_CONTEXT *context)
 HMAC_CONTEXT 에 할당된 메모리를 해제한다. 더 자세히 ...
 
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_Initialize (HMAC_CONTEXT *context, const void *key, int keyLen, int hashAlg)
 HMAC 생성에 사용할 비밀키와 해시 알고리즘을 설정한다. 더 자세히 ...
 
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_Update (HMAC_CONTEXT *context, const void *message, int messageLen)
 HMAC 생성에 사용할 원문 메시지를 업데이트한다. 더 자세히 ...
 
WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_Finalize (void *hmac, int *hmacLen, int hmacAllocLen, HMAC_CONTEXT *context)
 HMAC 을 생성한다. 더 자세히 ...
 

상세한 설명

HMAC (Hashed MAC)

함수 문서화

◆ ISSAC_HMAC_CONTEXT_Create()

WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_CONTEXT_Create ( HMAC_CONTEXT context)

HMAC_CONTEXT 구조체를 초기화한다.

주의
사용 후 반드시 ISSAC_HMAC_CONTEXT_Delete() 를 호출하여 할당된 메모리를 해제해야 한다.
반환값
ISSAC_SUCCESS : 성공
ER_INVALID_INPUT : 입력값 오류
ER_CAN_NOT_ALLOC_MEMORY : 메모리 할당 실패
그 외 : 라이선스 오류 (ISSAC_LICENSE_ERR)
매개변수
context[IN,OUT] 초기화 할 HMAC_CONTEXT
예제
issacapi/hmac/sample_hmac_basic.c.

◆ ISSAC_HMAC_CONTEXT_Delete()

WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_CONTEXT_Delete ( HMAC_CONTEXT context)

HMAC_CONTEXT 에 할당된 메모리를 해제한다.

반환값
ISSAC_SUCCESS : 성공
매개변수
context[IN,OUT] ISSAC_HMAC_CONTEXT_Create() 를 호출하여 초기화 된 HMAC_CONTEXT
예제
issacapi/hmac/sample_hmac_basic.c.

◆ ISSAC_HMAC_Initialize()

WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_Initialize ( HMAC_CONTEXT context,
const void *  key,
int  keyLen,
int  hashAlg 
)

HMAC 생성에 사용할 비밀키와 해시 알고리즘을 설정한다.

반환값
ISSAC_SUCCESS : 성공
ISSAC_FAIL : HMAC 설정 실패 (암호모듈에서 발생한 오류. 비밀키 크기 확인)
ER_INVALID_INPUT : 입력값 오류
ER_INVALID_ALGORITHM : 해시 알고리즘 오류
그 외 : 라이선스 오류 (ISSAC_LICENSE_ERR)
매개변수
context[IN,OUT] ISSAC_HMAC_CONTEXT_Create() 를 호출하여 초기화 된 HMAC_CONTEXT
key[IN] 비밀키
keyLen[IN] 비밀키 크기. 해시 알고리즘의 출력크기보다 커야한다. (KCMVP 필수 요구사항)
hashAlg[IN] 해시 알고리즘 [ ISSACAPI_SHA1, ISSACAPI_SHA256, ISSACAPI_SHA384, ISSACAPI_SHA512, ISSACAPI_HAS160, ISSACAPI_RIPEMD160, ISSACAPI_MD5 ]
예제
issacapi/hmac/sample_hmac_basic.c.

◆ ISSAC_HMAC_Update()

WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_Update ( HMAC_CONTEXT context,
const void *  message,
int  messageLen 
)

HMAC 생성에 사용할 원문 메시지를 업데이트한다.

반환값
ISSAC_SUCCESS : 성공
ER_INVALID_INPUT : 입력값 오류
매개변수
context[IN,OUT] ISSAC_HMAC_Initialize() 를 호출하여 비밀키와 해시 알고리즘이 설정된 HMAC_CONTEXT
message[IN] 원문 메시지
messageLen[IN] 원문 메시지 크기
예제
issacapi/hmac/sample_hmac_basic.c.

◆ ISSAC_HMAC_Finalize()

WA_SDK_API ISSAC_RETURN FUNCCALL ISSAC_HMAC_Finalize ( void *  hmac,
int *  hmacLen,
int  hmacAllocLen,
HMAC_CONTEXT context 
)

HMAC 을 생성한다.

반환값
ISSAC_SUCCESS : 성공
ISSAC_FAIL : HMAC 생성 실패 (암호모듈에서 발생한 오류)
ER_INVALID_INPUT : 입력값 오류
ER_INSUFFICIENT_ALLOC_LEN : 출력 버퍼 크기 부족
매개변수
hmac[OUT] 출력 버퍼
hmacLen[OUT] 실제 출력 크기
hmacAllocLen[IN] 출력 버퍼 크기
context[IN] 원문 메시지 업데이트까지 끝난 HMAC_CONTEXT
예제
issacapi/hmac/sample_hmac_basic.c.