iOS

1. 개요

헤카테 DID 서비스를 적용하기 위한 사용자용 Client 라이브러리 API입니다.

2. HDMSConfig API

setLogLevel ( 라이브러리 로그 설정 )

HDMSConfig.setLogLevel(level: logLevel)
  • 로그 표시 정도를 설정합니다.

Example: Swift

HDMSConfig.setLogLevel(level: .DETAIL)

Example: Objective-c

[HDMSConfig setLogLevelWithLevel:logLevelDETAIL];

setJweAlgorithmType ( JWE 알고리즘 설정 )

HDMSConfig.setJweAlgorithmType(jweAlgorithm: jweAlgorithm)
  • JWE 암호화 알고리즘 설정한다.

Example: Swift

HDMSConfig.setJweAlgorithmType(jweAlgorithm: .A128CBCHS256)

Example: Objective-c

[HDMSConfig setJweAlgorithmTypeWithJweAlgorithm:jweAlgorithmA256CBCHS512];

setUseHexEncode ( HexEncode 설정 )

HDMSConfig.setUseHexEncode(use: boolean)
  • SecretKey 의 HexEncode 여부를 설정한다.

Example: Swift

HDMSConfig.setUseHexEncode(use:  false)

Example: Objective-c

[HDMSConfig setUseHexEncodeWithUse:NO];

setUseJWEEncrypt ( JWE 암호화 설정 )

HDMSConfig.setUseJWEEncrypt(use: boolean)
  • 전문 통신시 JWE암호화 사용 여부를 설정한다.

Example: Swift

HDMSConfig.setUseJWEEncrypt(use:  false)

Example: Objective-c

[HDMSConfig setUseJWEEncryptWithUse:NO];

3. DID API

sharedInstance ( 객체 생성 )

DiDManager.sharedInstance
  • DID 객체를 생성하여 사용합니다.

  • 객체는 싱글톤으로 사용되며 생성후 DID 서버 도메인 설정을 수행해야 합니다.

Example: Swift

let didManager = DiDManager.sharedInstance

Example: Objective-c

DiDManager *didManager = [DiDManager sharedInstance];

setDIDServerDomain ( 서버 설정 )

DiDManager.sharedInstance.setDIDServerDomain(url)
  • DID 서버 도메인을 설정합니다.

Parameters
  • url (String) – DID 서버 주소

Example: Swift

DiDManager.sharedInstance.setDIDServerDomain("http://192.168.0.1:9999")

Example: Objective-c

[[DiDManager sharedInstance] setDIDServerDomainWithStrURL:@"http://192.168.0.1:9999"];

existDID ( DID 유무 확인 )

DiDManager.sharedInstance.existDID()
  • DID 발급 유무를 확인합니다.

Returns

true: 있음, false: 없음

Return type

Boolean

Example: Swift

if !DiDManager.sharedInstance.existDID() {
    // 발급받은 DID 무
}else{
    // 발급받은 DID 유
}

Example: Objective-c

if(![[DiDManager sharedInstance] existDID]){
    // 발급받은 DID 무
}else{
    // 발급받은 DID 유
}

registerDID ( DID 발급 )

DiDManager.sharedInstance.registDID(userHash: String!, jsonOther: String!, authType: String?, secretHash: String?, didName: String?, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • DID 발급 요청을 수행한다

Parameters
  • userHash (String) – 사용자 식별 정보

  • jsonOther (String) – 사용자 기타 정보 (없을경우 Dummy 설)

  • authType (String) – “01”: Pin, “02”: 지문

  • secretHash (String) – 비밀번호 Hash값

  • didName (String) – DID 별명으로 설정되는 값

  • successBlock (BlockHandler) – 발급 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급 실패시 호출 (결과코드, 메시지)

  • jsonOther 구성

Key

Type

Description

name

String

이름

email

String

이메일

birthday

String

생년월일

mobile

String

휴대폰번호

Example: Swift

DiDManager.sharedInstance.registDID(
    userHash: userHash,
    jsonOther: jsonOther,
    authType: authType ,
    secretHash: secretHash,
    didName: didName,
    successBlock: { code, msg in
        //성공
        print("success : \(code) : \(msg)")
    },
    failBlock: { code, msg in
        //실패
        print("fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[DiDManager sharedInstance] registDIDWithUserHash:userHash
                                         jsonOther:jsonOther
                                          authType:authType
                                        secretHash:secretHash
                                           didName:didName
                                      successBlock:^(NSString *code, NSString *msg) {
                                                      //성공
                                                      NSLog(@"success : %@ : %@", code, msg);}
                                         failBlock:^(NSString *code, NSString *msg) {
                                                      //실패
                                                      NSLog(@"fail : %@ : %@", code, msg);}
];

getDIDInfo ( DID 정보 조회 )

DiDManager.sharedInstance.getDIDInfo()
  • DID 정보를 조회 한다.

Returns

DID 정보 값

Return type

String

Example: Swift

let result = DiDManager.sharedInstance.getDIDInfo()
print("result : \(result)")

Example: Objective-c

NSString *result = [[DiDManager sharedInstance] getDIDInfo];
NSLog(@"result : %@", result);

getDIDName ( DID 별명 조회 )

DiDManager.sharedInstance.getDIDName()
  • DID 발급시 설정했던 별명값을 조회 한다.

Returns

DID 별명 값

Return type

String

Example: Swift

let result = DiDManager.sharedInstance.getDIDName()
print("result : \(result)")

Example: Objective-c

NSString *result = [[DiDManager sharedInstance] getDIDName];
NSLog(@"result : %@", result);

getDIDList ( DID 리스트 조회 )

DiDManager.sharedInstance.getDIDList()
  • 발급받은 DID 리스트를 조회 한다.

Returns

발급받은 DID 리스트

Return type

Array

Example: Swift

let result = DiDManager.sharedInstance.getDIDList()
print("result : \(result)")

Example: Objective-c

NSArray *result = [[DiDManager sharedInstance] getDIDList];
NSLog(@"result : %@", result);

unRegisterDID ( DID 폐기 )

DiDManager.sharedInstance.unRegistDID(_ unRegType: String?, authType: String?, secretHash: String?, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • DID를 폐기한다.

Parameters
  • unRegType (String) – 폐기 주체

  • authType (String) – “01”: Pin, “02”: 지문

  • secretHash (String) – 비밀번호 Hash값

  • successBlock (BlockHandler) – 발급 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급 실패시 호출 (결과코드, 메시지)

  • unRegType

Value

Description

0

사용자 폐기

1

발급기관 폐기

2

검증기관 폐기

3

검증자 폐기

Example: Swift

DiDManager.sharedInstance.unRegistDID( unRegType,
    authType: authType ,
    secretHash: secretHash,
    successBlock: { code, msg in
        //성공
        print("success : \(code) : \(msg)")
    },
    failBlock: { code, msg in
        //실패
        print("fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[DiDManager sharedInstance] unRegistDID:unRegType
                                authType:authType
                              secretHash:secretHash
                            successBlock:^(NSString *code, NSString *msg) {
                                            //성공
                                            NSLog(@"success : %@ : %@", code, msg);}
                               failBlock:^(NSString *code, NSString *msg) {
                                            //실패
                                            NSLog(@"fail : %@ : %@", code, msg);}
];

deleteDID ( DID 로컬 삭제 )

DiDManager.sharedInstance.deleteDID()
  • 로컬에 발급 받은 DID를 삭제한다.

  • 사용자가 PIN번호를 분실했을 경우 DID를 삭제하는 용도로 사용

Example: Swift

DiDManager.sharedInstance.deleteDID()

Example: Objective-c

[[DiDManager sharedInstance] deleteDID];

changePin ( 핀번호 변경 )

DiDManager.sharedInstance.changePin(oldPinHash: String?, newPinHash: String?)
  • 개인키를 암호화한 PIN번호를 변경한다.

Parameters
  • oldPinHash (String) – 이전 PIN번호

  • newPinHash (String) – 신규 PIN번호

Returns

true: 변경 성공, false: 변경 실패

Return type

Boolean

Example: Swift

if DiDManager.sharedInstance.changePin(oldPinHash: oldPinHash, newPinHash: newPinHash) {
    // PIN번호 변경 성공
}else{
    // PIN번호 변경 실패
}

Example: Objective-c

if([[DiDManager sharedInstance] changePinWithOldPinHash: oldPinHash newPinHash: newPinHash]){
    // PIN번호 변경 성공
}else{
    // PIN번호 변경 실패
}

4. VC API

sharedInstance ( 객체 생성 )

VCManager.sharedInstance
  • VC 객체를 생성하여 사용합니다.

  • 객체는 싱글톤으로 사용되며 DIDManager에서 설정된 서버 도메인을 기준으로 동작합니다.

Example: Swift

let vcManager = VCManager.sharedInstance

Example: Objective-c

VCManager *vcManager = [VCManager sharedInstance];

getIssuer ( 발급 가능 기관 조회 )

VCManager.sharedInstance.getIssuer(successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 증명서(VC) 발급 가능한 발급기관 목록을 요청한다.

  • 조회 성공시 메시지에 발급기관 목록이 전달된다.

  • 발급기관 목록

Key

Type

Description

did

String

발급기관 DID

name

String

발급기관 이름

Parameters
  • successBlock (BlockHandler) – 발급기관 목록 조회 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급기관 목록 조회 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.getIssuer(
    successBlock: { code, msg in
        print("getIssuer success : \(code) : \(msg)")
        if let data:Data = msg.data(using: .utf8) as Data?
        {
            if let ret:Array = try? JSONSerialization.jsonObject( with: data, options: .allowFragments) as? Array<Any> {
                print("Issuer Array : \(ret)")
            }
            else{
                 print("Json failed : \(msg)")
            }
        }
        else{
             print("msg Error : \(msg)")
        }
    },
    failBlock: { code, msg in
        //실패
        print("getIssuer fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] getIssuerWithSuccessBlock:^(NSString *code, NSString *msg) {
    //성공
    NSLog(@"getIssuer success : %@ : %@", code, msg);
    NSDate *data = [msg dataUsingEncoding:NSUTF8StringEncoding];
    NSArray *ret = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];
    NSLog("Issuer Array : %@", ret);
} failBlock:^(NSString * _Nonnull code, NSString * _Nonnull msg) {
    //실패
    NSLog(@"getIssuer fail : %@ : %@", code, msg);
}];

getIssuerVCType ( 발급 가능한 VC 타입 조회 )

VCManager.sharedInstance.getIssuerVCType(issuerDID: String, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 발급기관에서 발급 가능한 증명서(VC) 타입을 조회한다.

  • 조회 성공시 메시지에 발급 가능한 증명서 타입 목록이 전달된다.

  • 증명서타입 목록

Key

Type

Description

issueType

String

발급기관 DID

craimFormat

String

발급기관 이름

name

String

발급 가능 증명서 이름

type

String

발급 가능 증명서 타입

Parameters
  • issuerDID (String) – 발급기관 DID, getIssuer에서 조회한 발급기관 정보 사용

  • successBlock (BlockHandler) – 발급기관 목록 조회 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급기관 목록 조회 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.getIssuerVCType(
    issuerDID: issuerDID ,
    successBlock: { code, msg in
        print("getIssuerVCType success : \(code) : \(msg)")
        if let data:Data = msg.data(using: .utf8) as Data?
        {
            if let ret:Array = try? JSONSerialization.jsonObject( with: data, options: .allowFragments) as? Array<Any> {
                print("vcType Array : \(ret)")
            }
            else{
                 print("Json failed : \(msg)")
            }
        }
        else{
             print("msg Error : \(msg)")
        }
    },
    failBlock: { code, msg in
        //실패
        print("getIssuerVCType fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] getIssuerVCTypeWithIssuerDID:issuerDID
successBlock:^(NSString *code, NSString *msg) {
    //성공
    NSLog(@"getIssuerVCType success : %@ : %@", code, msg);
    NSDate *data = [msg dataUsingEncoding:NSUTF8StringEncoding];
    NSArray *ret = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];
    NSLog("vcType Array : %@", ret);
} failBlock:^(NSString * _Nonnull code, NSString * _Nonnull msg) {
    //실패
    NSLog(@"getIssuerVCType fail : %@ : %@", code, msg);
}];

existVC ( VC 유무 확인 )

VCManager.sharedInstance.existVC()
  • 증명서(VC) 발급 유무를 확인합니다.

Returns

true: 있음, false: 없음

Return type

Boolean

Example: Swift

if !VCManager.sharedInstance.existVC() {
    // 발급받은 VC 무
}else{
    // 발급받은 VC 유
}

Example: Objective-c

if(![[VCManager sharedInstance] existVC]){
    // 발급받은 VC 무
}else{
    // 발급받은 VC 유
}

registVC ( VC 발급 )

VCManager.sharedInstance.registVC(issuerDID: String?, vcType: String?, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 증명서(VC) 발급 요청을 수행한다

Parameters
  • issuerDID (String) – 기관 DID

  • vcType (String) – 증명서 타입

  • successBlock (BlockHandler) – 발급 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.registVC(
    issuerDID: issuerDID,
    vcType: vcType,
    successBlock: { code, msg in
        //성공
        print("success : \(code) : \(msg)")
    },
    failBlock: { code, msg in
        //실패
        print("fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] registVCWithIssuerDID:issuerDID
                                           vcType:vcType
                                     successBlock:^(NSString *code, NSString *msg) {
                                                     //성공
                                                     NSLog(@"success : %@ : %@", code, msg);}
                                        failBlock:^(NSString *code, NSString *msg) {
                                                     //실패
                                                     NSLog(@"fail : %@ : %@", code, msg);}
];

getVCStatus ( VC 상태 조회 )

VCManager.sharedInstance.getVCStatus(vcId: String?, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 증명서(VC) 상태를 조회한다.

Parameters
  • vcId (String) – 증명서 아이디

  • successBlock (BlockHandler) – 조회 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 조회 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.getVCStatus(
    vcId: vcId,
    successBlock: { code, msg in
        //성공
        print("success : \(code) : \(msg)")
    },
    failBlock: { code, msg in
        //실패
        print("fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] getVCStatusWithVcId:vcId
                                   successBlock:^(NSString *code, NSString *msg) {
                                                   //성공
                                                   NSLog(@"success : %@ : %@", code, msg);}
                                      failBlock:^(NSString *code, NSString *msg) {
                                                   //실패
                                                   NSLog(@"fail : %@ : %@", code, msg);}
];

getALLVCList ( VC 리스트 조회 )

VCManager.sharedInstance.getALLVCList()
  • 발급받은 증명서(VC) 리스트를 조회 한다.

Returns

발급받은 증명서 리스트

Return type

VCredential Array

Example: Swift

let result = VCManager.sharedInstance.getALLVCList()

print("result : \(result)")

Example: Objective-c

NSString *result = [[VCManager sharedInstance] getALLVCList];
NSLog(@"result : %@", result);

getVCDetailInfo ( VC 상세 조회 )

VCManager.sharedInstance.getVCDetailInfo(vcId: String!)
  • 증명서(VC) 상세정보를 조회 한다.

Returns

발급받은 증명서 상세내역

Return type

VCredential

Example: Swift

let vc:VCredential result = VCManager.sharedInstance.getVCDetailInfo(vcId: vcId)

print("vc Detail : \(vc)")

Example: Objective-c

VCredential *vc = [[VCManager sharedInstance] getVCDetailInfoWithVcID:vcId];
NSLog(@"vc Detail : %@", result);

showVC ( VC 전시 )

VCManager.sharedInstance.showVC(vcId: String?, submitPurpose: String?, crtfcTy: String?, verifyTy: String?, authType: String?, secretHash: String?, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 증명서(VC) 전시에 필요한 정보를 요청한다.

  • QR데이터 요청

  • 호출전 증명서(VC) 상태조회 체크

Parameters
  • vcId (String) – 증명서 아이디

  • submitPurpose (String) – 요청 정보 메시지 (“사용자 VP 검증 요청”)

  • crtfcTy (String) – 비밀번호 타입 ( 0 = PIN, 1 = 생체인증 )

  • verifyTy (String) – “ATA”

  • authType (String) – “01”: Pin, “02”: 지문

  • secretHash (String) – 비밀번호 Hash값

  • successBlock (BlockHandler) – 발급 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.showVC(
    vcId: vcId,
    submitPurpose: submitPurpose,
    crtfcTy: crtfcTy,
    verifyTy: verifyTy,
    authType: authType ,
    secretHash: secretHash,
    successBlock: { code, msg in
        //성공
        print("success : \(code) : \(msg)")
    },
    failBlock: { code, msg in
        //실패
        print("fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] showVCWithVcId: vcId
                             submitPurpose: submitPurpose,
                                   crtfcTy: crtfcTy,
                                  verifyTy: verifyTy,
                                  authType: authType ,
                                secretHash: secretHash,
                              successBlock:^(NSString *code, NSString *msg) {
                                              //성공
                                              NSLog(@"success : %@ : %@", code, msg);}
                                 failBlock:^(NSString *code, NSString *msg) {
                                              //실패
                                              NSLog(@"fail : %@ : %@", code, msg);}
];

unRegistVC ( VC 폐기 )

VCManager.sharedInstance.unRegistVC(vcId: String?, authType: String?, secretHash: String?, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 증명서(VC) 를 폐기한다.

Parameters
  • vcId (String) – 증명서 아이디

  • authType (String) – “01”: Pin, “02”: 지문

  • secretHash (String) – 비밀번호 Hash값

  • successBlock (BlockHandler) – 발급 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.unRegistVC(
    vcId: vcId,
    authType: authType ,
    secretHash: secretHash,
    successBlock: { code, msg in
        //성공
        print("success : \(code) : \(msg)")
    },
    failBlock: { code, msg in
        //실패
        print("fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] unRegistVCWithVcId: vcId
                                      authType: authType ,
                                    secretHash: secretHash,
                                  successBlock:^(NSString *code, NSString *msg) {
                                                  //성공
                                                  NSLog(@"success : %@ : %@", code, msg);}
                                     failBlock:^(NSString *code, NSString *msg) {
                                                  //실패
                                                  NSLog(@"fail : %@ : %@", code, msg);}
];

getVCRegistHistory ( VC 발급 이력 조회 )

VCManager.sharedInstance.getVCRegistHistory(successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 증명서(VC) 발급 이력을 조회한다.

  • 조회 성공시 메시지에 발급 이력 목록이 전달된다.

  • 발급이력 Object

Key

Type

Description

issuerDID

String

발급기관 DID

autoConfirm

String

자동 승인 여부

name

String

증명서 이름

holderDID

String

사용자 DID

id

String

증명서 아이디

type

String

증명서 타입

status

String

증명서 상태

registDate

String

등록일

Parameters
  • successBlock (BlockHandler) – 발급이력 목록 조회 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급이력 목록 조회 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.getVCRegistHistory(
    successBlock: { code, msg in
        print("success : \(code) : \(msg)")
        if let data:Data = msg.data(using: .utf8) as Data?
        {
            if let ret:Array = try? JSONSerialization.jsonObject( with: data, options: .allowFragments) as? Array<Any> {
                print("History Array : \(ret)")
            }
            else{
                 print("Json failed : \(msg)")
            }
        }
        else{
             print("msg Error : \(msg)")
        }
    },
    failBlock: { code, msg in
        //실패
        print("getIssuer fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] getVCRegistHistoryWithSuccessBlock:^(NSString *code, NSString *msg) {
    //성공
    NSLog(@"getIssuer success : %@ : %@", code, msg);
    NSDate *data = [msg dataUsingEncoding:NSUTF8StringEncoding];
    NSArray *ret = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];
    NSLog("History Array : %@", ret);
} failBlock:^(NSString * _Nonnull code, NSString * _Nonnull msg) {
    //실패
    NSLog(@"getIssuer fail : %@ : %@", code, msg);
}];

getVCType ( VC 타입 확인 )

VCManager.sharedInstance.getVCType(vcID: String!)
  • 증명서(VC) ID로 증명서 타입을 조회한다.

Parameters
  • vcId (String) – 증명서 아이디

Returns

증명서 타입

Return type

String

Example: Swift

let vcType = VCManager.sharedInstance.getVCType(vcID: vcID)
print("증명서 타입 : \(vcType)")

Example: Objective-c

NSString *vcType = [VCManager sharedInstance] getVCTypeWithvcID: vcID];
NSLog(@"증명서 타입 : %@", vcType);

getVCID ( VC 아이디 조회 )

VCManager.sharedInstance.getVCID(issuerDID: String!, vcType: String!)
  • 기관 DID와 증명서 타입으로 증명서(VC) 아이디를 조회한다.

Parameters
  • issuerDID (String) – 기관 DID

  • vcType (String) – 증명서 타입

Returns

증명서 아이디

Return type

String

Example: Swift

let vcID = VCManager.sharedInstance.getVCID(issuerDID: issuerDID, vcType: vcType)
print("증명서 아이디 : \(vcID)")

Example: Objective-c

NSString *vcID = [VCManager sharedInstance] getVCIDWithIssuerDID: vcID];
NSLog(@"증명서 아이디 : %@", vcID);

getSavedVCTypeList ( VC 타입 조회 )

VCManager.sharedInstance.getSavedVCTypeList()
  • 단말에 저장된 증명서(VC)들의 타입을 조회한다.

Returns

증명서 타입

Return type

Array

Example: Swift

let result4 = VCManager.sharedInstance.getSavedVCTypeList()

let typeArray = VCManager.sharedInstance.getSavedVCTypeList()
print("증명서 타입 : \(typeArray)")

Example: Objective-c

NSArray *typeArray = [VCManager sharedInstance] getSavedVCTypeList];
NSLog(@"증명서 타입 : %@", typeArray);

authMulti ( 멀티 인증 요청 )

VCManager.sharedInstance.authMulti(certType: String?, certNumber: String?, vcId: String?, authType: String?, secretHash: String?, successBlock: (String, String) -> Void, failBlock: (String, String) -> Void)
  • 멀티 인증 요청을 수행한다.

Parameters
  • certType (String) – 인증타입 (“qr”)

  • certNumber (String) – 인증번호 (6자리)

  • vcId (String) – 증명서 아이디

  • authType (String) – “01”: Pin, “02”: 지문

  • secretHash (String) – 비밀번호 Hash값

  • successBlock (BlockHandler) – 발급 성공시 호출 (결과코드, 메시지)

  • failBlock (BlockHandler) – 발급 실패시 호출 (결과코드, 메시지)

Example: Swift

VCManager.sharedInstance.authMulti(
    certType: certType,
    certNumber: certNumber,
    vcId: vcId,
    authType: authType ,
    secretHash: secretHash,
    successBlock: { code, msg in
        //성공
        print("success : \(code) : \(msg)")
    },
    failBlock: { code, msg in
        //실패
        print("fail : \(code) : \(msg)")
    }
)

Example: Objective-c

[[VCManager sharedInstance] authMultiWithCertType: certType
                                       certNumber: certNumber,
                                             vcId: vcId,
                                         authType: authType ,
                                       secretHash: secretHash,
                                     successBlock:^(NSString *code, NSString *msg) {
                                                     //성공
                                                     NSLog(@"success : %@ : %@", code, msg);}
                                        failBlock:^(NSString *code, NSString *msg) {
                                                     //실패
                                                     NSLog(@"fail : %@ : %@", code, msg);}
];