전자서명(복수) API

네이버 앱을 사용하여 이용자의 개인정보(이름, 생년월일, 휴대폰번호)로 최대 50건의 계약 체결 수단으로 사용하는 네이버 전자서명 API 입니다. 개발하는 웹/앱 방식에 따라 네이버 앱으로 푸시(Push) 인증 메시지를 전송하여 인증하는 “푸시(Push) 인증”과 이용기관 앱에서 네이버 앱을 실행하여 네이버 인증 메시지 전송없이 비밀번호 입력만으로 인증하는 “앱투앱 인증” 방식 중 선택하여 연동할 수 있습니다.

1. RequestMultiSign - 전자서명(복수) 요청

  • 네이버 이용자에게 복수(최대 50건) 문서의 전자서명을 요청합니다.

def requestMultiSign(self, clientCode, multiSign):

Parameter

순번 변수명 타입 길이 필수 설명
clientCode str 12 Y 이용기관 코드
multiSign MultiSign - Y 전자서명 요청 정보

Return MultiSignReceipt Throws BarocertException

2. GetMultiSignStatus - 전자서명(복수) 상태확인

  • 전자서명(복수) 요청 후 반환받은 접수아이디로 인증 진행 상태를 확인합니다.

def getMultiSignStatus(self, clientCode, receiptID):

Parameter

순번 변수명 타입 길이 필수 설명
clientCode str 12 Y 이용기관 코드
receiptID str 32 Y 접수 아이디

Return MultiSignStatus Throws BarocertException

3. VerifyMultiSign - 전자서명(복수) 검증

  • 완료된 전자서명을 검증하고 전자서명값(signedData)을 반환 받습니다.

  • 네이버 보안정책에 따라 검증 API는 1회만 호출할 수 있습니다. 재시도시 오류가 반환됩니다.

  • 전자서명 만료일시 이후에 검증 API를 호출하면 오류가 반환됩니다.

이용기관 서버에서는 전자서명 검증을 통해 반환받은 이용자정보(CI, 성명, 생년월일 등)와 전자서명 요청 이용자정보를 비교해 올바른 이용자인지 검증해야 합니다.
def verifyMultiSign(self, clientCode, receiptID):

Parameter

순번 변수명 타입 길이 필수 설명
clientCode str 12 Y 이용기관 코드
receiptID str 32 Y 접수 아이디

Return MultiSignResult Throws BarocertException

4. 객체정보

4.1. BarocertException

순번 변수명 타입 길이 필수 설명
Code int - Y API 처리에 대한 응답코드
message str - Y API 처리에 대한 응답메시지

4.2. MultiSign

순번 변수명 타입 길이 필수 설명
receiverHP str 11 Y 수신자 휴대폰번호
→ 하이픈(-) 제외하고 입력
receiverName str 80 Y 수신자 성명
receiverBirthday str 8 Y 수신자 생년월일
→ 형식: yyyyMMdd
reqTitle str 40 Y 인증요청 메시지 제목
reqMessage str 500 Y 인증요청 메시지 내용
callCenterNum str 12 Y 고객센터 연락처
expireIn int 4 Y 요청 만료시간
→ 최대: 1000초(s) / 권장: 300초(s)
token List<MultiSignTokens> 50 Y 원문
appUseYN bool - N 앱투앱 인증 방식 이용 여부
  • True앱투앱 인증
  • False푸시(Push) 인증 : 기본값
deviceOSType str 7 조건부 모바일장비 운영체제
  • ANDROID
  • IOS

appUseYN=True 경우 필수

returnURL str 1000 조건부 복귀 URL
→ 앱투앱 인증 이용시 호출할 URL 또는 앱스킴
→ "http", "https"등의 웹프로토콜 사용 불가

appUseYN=True 경우 필수

4.3. MultiSignTokens

순번 변수명 타입 길이 필수 설명
tokenType str 4 Y 원문 유형
  • TEXT원문 텍스트 데이터
  • HASH원문을 해쉬한 데이터
token str 2800 Y 원문

tokenType="HASH" 경우,

Hash(SHA-256), Base64(URL Safe No Padding)

4.4. MultiSignReceipt

순번 변수명 타입 길이 필수 설명
receiptID str 32 Y 접수아이디
scheme str - N 앱스킴

appUseYN=True 경우 반환

marketUrl str - N 앱 다운로드 URL

appUseYN=True 경우 반환

4.5. MultiSignStatus

순번 변수명 타입 길이 필수 설명
receiptID str 32 Y 접수아이디
clientCode str 12 Y 이용기관 코드
state int 1 Y 상태
  • 0대기
  • 1완료
  • 2만료
expireDT str 14 Y 전자서명 만료일시
→ 형식: yyyyMMddHHmmss

4.6. MultiSignResult

순번 변수명 타입 길이 필수 설명
receiptID str 32 Y 접수아이디
state int 1 Y 상태
  • 0대기
  • 1완료
  • 2만료
receiverName str 80 Y AES 암호화 수신자 성명
receiverYear str 4 Y AES 암호화 수신자 출생년도
→ 형식 : yyyy
receiverDay str 4 Y AES 암호화 수신자 출생월일
→ 형식 : MMdd
receiverHP str 11 Y AES 암호화 수신자 휴대폰번호
receiverGender str 1 Y AES 암호화 수신자 성별
  • M남성
  • F여성
receiverEmail str - Y AES 암호화 수신자 이메일
receiverForeign str 1 Y AES 암호화 외국인 여부
  • Y외국인
  • N내국인
MultiSignedData List<str> 50 Y 전자서명값
ci str - N AES 암호화 CI