WA-SDK
3.0.4.0
WA-SDK
issacapi_ac.h
이 파일의 문서화 페이지로 가기
1
/*
2
Copyright (C) 2002 PENTA SECURITY SYSTEMS, INC.
3
All rights reserved
4
5
THIS IS UNPUBLISHED PROPRIETARY
6
SOURCE CODE OF PENTA SECURITY SYSTEMS, INC.
7
8
The copyright notice above does not evidence any actual or intended
9
publication of such source code.
10
11
Filename : issac_ac.h
12
*/
13
14
#ifndef _issac_ac_h
15
#define _issac_ac_h
16
17
#include "
issacapi_ac_attcert.h
"
18
23
25
26
#endif
/* _issac_ac.h */
27
28
//테스트 코드이므로 리턴값 체크 코드는 없음
29
/*
30
int main(int argc, char **argv) {
31
CERTIFICATE cert;
32
PRIVATEKEY priKey;
33
ATTCERT ac;
34
ATTSROLES roles;
35
time_t now;
36
37
//0. 초기화
38
ISSAC_CERTIFICATE_Create(&cert);
39
ISSAC_PRIVATEKEY_Create(&prikey);
40
ISSAC_ATTSROLES_Create(&roles);
41
ISSAC_ATTCERT_Create(&ac);
42
43
//1. 현재 시각
44
time(&now);
45
46
//2. 발급자 인증서 및 비공개키
47
ISSAC_CERTIFICATE_Read_File( &cert, "a_sig.cer" ) ;
48
ISSAC_PRIVATEKEY_Read_File(&prikey, "a_sig.key", "abcdefg" );
49
50
//3. RAAC내용. 즉, 역할 목록
51
ISSAC_ATTSROLES_Add(&roles, "role_1234");
52
ISSAC_ATTSROLES_Add(&roles, "role_1235");
53
ISSAC_ATTSROLES_Add(&roles, "role_1236");
54
ISSAC_ATTSROLES_Add(&roles, "role_1237");
55
56
//4. RAAC 생성
57
ISSAC_ATTCERT_Gen(&ac, "holdername", "issuername", now, now + 24 * 3600, &roles, &prikey, null, SHA1, &cert);
58
59
//5. RAAC 서명 검증
60
if ( ISSAC_SUCCESS == ISSAC_ATTCERT_VerifySign(&ac, &cert, null) ) {
61
printf("서명 검증 성공\n");
62
} else {
63
printf("서명 검증 실패\n");
64
}
65
66
//6. RAAC 유효 기간 검증
67
if ( ISSAC_SUCCESS == ISSAC_ATTCERT_VerifyTime(&ac, &now) ) {
68
printf("유효 기간 검증 성공\n");
69
} else {
70
printf("유효 기간 검증 실패\n");
71
}
72
73
//7. RAAC 역할 목록 얻기
74
ISSAC_ATTSROLES_Delete(&roles);
75
ISSAC_ATTSROLES_Create(&roles);
76
ISSAC_ATTCERT_GetATTSROLES(&roles, &cert);
77
{
78
int cnt = 0;
79
char role[100];
80
ISSAC_ATTSROLES_GetCount(&cnt, &roles);
81
for ( int i = 0; i < cnt; i++ ) {
82
ISSAC_ATTROLE_Read_ATTSROLES(role, 100, roles, i);
83
printf("ROLE %d : '%s'\n", (i + 1), role);
84
}
85
}
86
87
//final 정리.
88
ISSAC_ATTCERT_Delete(&ac);
89
ISSAC_ATTSROLES_Delete(&roles);
90
ISSAC_CERTIFICATE_Delete(&cert);
91
ISSAC_PRIVATEKEY_Create(&prikey);
92
93
return 0;
94
}
95
*/
96
issacapi_ac_attcert.h
api
srcs
issacapi_ac.h
생성시간 : 금 1월 14 2022 21:02:05, 프로젝트명 : WA-SDK, 생성자 :
1.9.1