IssacEASIG
Objective-C
@interface IssacEASIG : NSObject
Swift
class IssacEASIG : NSObject
개체 인증 관련 기능
-
단방향 또는 양방향 인증을 위해 도전값을 생성한다.
도전값을 생성하기 위해 Nonce-A를 생성한다. 도전값은 임의로 생성된 난수 Nonce-A와 검증자(또는 PeerA)의 인증서로 이루어진다.
Declaration
Objective-C
- (nullable NSData *)makeChallenge;Swift
func makeChallenge() -> Data? -
단방향 또는 양방향 인증을 위해 증명값(response)을 생성한다.
Declaration
Objective-C
- (nullable NSData *)makeResponse:(nonnull NSData *)challenge priKey:(nonnull IssacPRIVATEKEY *)priKey cert:(nonnull IssacCERTIFICATE *)cert hashAlg:(HashAlg)hashAlg;Swift
func makeResponse(_ challenge: Data, priKey: IssacPRIVATEKEY, cert: IssacCERTIFICATE, hashAlg: HashAlg) -> Data?Parameters
challenge도전값
priKey전자서명용 개인키
cert증명값을 생성하는 쪽의 인증서(주장자 또는 PeerB)
hashAlg해시 알고리즘
-
단방향 또는 양방향 인증을 위한 증명값 검증 함수이다.
검증자(또는 PeerA)는 자신이 만든 도전값과 주장자(또는 PeerB)가 만든 response값을 이용해 인증 여부를 판단한다. 이때 검증 과정은 증명값 내에 Nonce값이 일치하는지, 서명값이 올바른지, 인증서가 유효한지의 세단계로 이루어진다. 모든 단계에서 문제가 없으면 인증은 성공을 리턴한다.
Declaration
Objective-C
- (BOOL)authenticatePeer:(nonnull NSData *)challenge response:(nonnull NSData *)response caCerts:(nonnull IssacCERTIFICATES *)caCerts trustedCerts:(nonnull IssacCERTIFICATES *)trustedCerts policies:(nonnull IssacPOLICY *)policies crl:(nonnull IssacCRL *)crl nowtime:(nonnull NSDate *)nowtime verifyOption:(VerifyOption)verifyOption;Swift
func authenticatePeer(_ challenge: Data, response: Data, caCerts: IssacCERTIFICATES, trustedCerts: IssacCERTIFICATES, policies: IssacPOLICY, crl: IssacCRL, nowtime: Date, verifyOption: VerifyOption) -> BoolParameters
challenge자신이 만든 도전값
response상대로부터 받은 응답값
caCerts검증에 필요한 CA 의 인증서들
trustedCerts신뢰할 수 있는 인증서들
policies인증서 검증 정책
crl인증서 폐기 목록
nowtime검증하고자 하는 시간
verifyOption경로 검증 설정
-
증명자가 보낸 메시지만을 검증한다.
Declaration
Objective-C
- (BOOL)authenticatePeer:(nonnull NSData *)challenge response:(nonnull NSData *)response;Swift
func authenticatePeer(_ challenge: Data, response: Data) -> BoolParameters
challenge자신이 만든 도전값
response상대로부터 받은 응답값
-
개체 인증 과정을 성공적으로 수행한 후에 인증에 참여한 상대방의 인증서를 얻어내는 함수이다.
Declaration
Objective-C
- (nullable IssacCERTIFICATE *)getPeerCertificate;Swift
func getPeerCertificate() -> IssacCERTIFICATE?
IssacEASIG Class Reference