목차

모바일 NPKI API

개요

스마트 기기에 대한 수요가 증가하고 공공기관, 금융기관 등 스마트 기기에 대한 지원이 증가함에 따라 PC에서 사용하고 있던 NPKI에 대하여 모바일에서의 접근이 필요하게 되었다. 이에 하이브리드 앱 환경에서 공인 인증서를 이용한 인증 서비스 운영이 가능하도록 전저정부용으로 NPKI 디바이스 API를 제공한다.
모바일 NPKI 인증은 크게 인증 단계, 하이브리드 디바이스 인증관리, 서버사이드 보안표준 인증처리 로 구성되어 있다.

npki%EA%B5%AC%EC%84%B1%EB%8F%84.jpg

단계세부단계기능
인증 단계인증기관사용자의 공개키 인증서를 발행/취소/폐기, 상호 인증서를 발행
사용자에게 자신의 공개키와 상위 기관의 공개키를 전달
등록기관공개키와 인증서 소유자 사이의 관계를 확인
사용자가 인증서 신청 시 인증기관 대신 신분과 소속을 확인 후 인증서 발급을 의뢰
인증서 중계 서비스인증서 모바일 기기로 이동을 위한 중계 서비스
하이브리드 디바이스 인증관리Directory인증서와 사용자 관련 정보, 상호 인증서 쌍, CRL 등을 저장하고, 검색하는 장소
NPKI Device API모바일 NPKI 인증서의 이동, 관리, 인증을 위한 NPKI 모듈
서버사이드 보안표준 인증 처리전자정부 표준 보안 API인증기관으로 부터 인증서 인증을 위한 전자정부용 표준 보안 API

주요개념

모바일용 보안인증 모듈을 디바이스 API 실행환경에 적용하여 인증서 관리, 인증서 서명 그리고 서명된 인증서 검증을 수행한다. 최초 모바일용 인증서 인증을 위해서는 기존에 인증기관으로 부터 발급받은 공인 인증서를 인증서 중계 서비스를 이용하여 모바일 기기로 이동한다. 이동된 공인 인증서를 NPKI 모듈을 이용하여 서명하고 서명값을 전자정부 표준 보안 API에 전송하여 인증기관에 인증을 확인한다.

npki%EA%B8%B0%EB%8A%A5%ED%9D%90%EB%A6%84.jpg

NPKI 모듈에서 제공되는 기능은 아래와 같다.

기능명세부기능기능설명
인증서 모바일 기기 저장인증서버에서 인증번호 수신
인증서 저장 및 인증서 정보 조회
인증서 이동 기능
올레인증서 인스톨 여부 확인
올레인증서에 인증서를 요청하여 인증서 저장
올레인증서 연동을 위한 기능
인증서 관리인증서 리스트 조회저장된 인증서 리스트와 내용을 조회
인증서 삭제인증서를 삭제
인증서 비밀번호 변경인증서의 비밀번호를 변경
인증서 비밀번호 확인입력한 인증서 비밀번호를 검증
인증서 서명전자서명전자서명을 수행하여 서명값을 반환
인증서 검증인증서 유효성 검증인증서의 유효성을 검증(CRL 검증)

사용된 오픈소스

서비스버전라이선스
Android SDKrevision 18Apache License 2.0
PhoneGap(cordova)Cordova 2.9.0MIT License
javaScript Framework전자정부 표준프레임워크
사용자 경험(UX) 기능
Apache License 2.0
표준보안API(gpkiapi) V1.5.1 C++/JAVA

설명

NPKI 디바이스 API 가이드 프로그램에서 보안모듈 회사에서 보유한 NPKI Native 모듈은 제외되어 배포되지만 활용 가능한 소스 코드를 배포하기 때문에 추후 해당 보안모듈 회사와의 계약을 통해 개발이 가능 하다.

구분내용
Native Library보안모듈 회사에서 보유한 디바이스 NPKI Native 모듈은 제외
PhoneGap PluginNative Library 사용을 위한 PhoneGap Class 및 JavaScript 는 개발자의 이해를 돕기 위해 배포
디바이스 API 가이드 프로그램전자정부 표준 보안 API가 적용된 서버 사이드 및 디바이스 API 가이드 프로그램 배포되지만 NPKI Native 모듈은 제외 되기 때문에 컴파일되지 않음

관련기능

모바일 NPKI 디바이스 API 가이드의 기능은 인증서 조회, 인증서 선택, 인증서 서명, 인증서 인증, 인증로그 조회 단계로 구성된다.

인증서 조회인증서 선택 및 서명인증로그 조회

참고자료

표준보안API 발급 : http://www.gpki.go.kr
인증서 이동 서비스 : olleh 인증서