개인정보 침해와 유출사고가 빈번해짐에 따라 전세계적으로 개인정보 보호의 중요성에 대한 인식이 확산되어지고 있으며, 이에 “신원(Identity)” 모델이 진화
자기주권 신원 모델이란 기업이 개인정보를 통제하는 방식이 아닌, 개인이 직접 개인 정보와 관련된 증명 발급과 제출을 수행하는방식
자기주권신원 구현과 확산을 위해 국제 웹 표준기구인 W3C 주도로 분산 신원(DID-Decentaliezed Identifiers) 모델에 대한 표준화가 진행
국제 웹 표준기구인 W3C 주도로 분산 신원(DID-Decentaliezed Identifiers) 모델에 대한 표준화가 진행 (https://w3c-ccg.github.io/did-spec/)
Holder | 설명 |
---|---|
Holder | 사용자, 자기주권신원 대상자 |
Issuer | 자격증명서 발급기관 |
Verifier | 자격증명서 검증기관(Service Provider라고도 불림) |
DID | (중앙 집중식 등록 기관이 필요하지 않은) 분산 원장 기술 또는 다른 형태의 분산 네트워크에 등록되어 있는 글로벌 고유 식별자 디지털 세상에서 ‘내’가 ‘나’임을 증명하기 위한 식별자 DID 규격 : 일반적인 DID 체계는 ‘RFC3986’을 준수하는 URI 체계 ( “did:” + method-name + “:” + method-specific-id ) |
DID Subject | DID로 식별되고 DID문서에 의해 설명되는 entity (하나 또는 그 이상의 검증 가능한 자격증명의 대상) |
DID Registry | DID와 연관되어있는 DID Document가 특정 분산 원장이나 네트워크에서 생성, 리딩, 업데이트되고 비활성화되는 메커니즘(블록체인) |
DID Document | DID Subject가 자신을 인증하고 DID와의 연관성을 증명하는 데 필요한 데이터 집합(공개 키 및 생체 인식과 같은 메커니즘을 포함) 주제를 설명하는 다른 포함하는 속성이나 클레임도 포함 JSON-LD를 사용하여 표현되는 그래프 기반 데이터 구조 |
Credential | 자격 증명 데이터 Holder가 Issuer에게 자격증명 요청하는 최초 데이터 형태 |
Verifiable Credential | 자격증명서 HOLDER의 DID 및 공개키 발급기관 DID, 서명값 Claims(Subject의 속성) |
DID Method | DID Registry와 연동하는 메서드 |
나의 개인정보를 내 단말에 저장하고, 필요 시 직접 제출할 수 있는 서비스 신뢰기반의 증명서 발행과 증명서 검증이 가능한 DID 블록체인 인프라 증명 발행과 증명 확인 기관 간의 직접적인 연결을 제거함으로써 개인의 프라이버시 보호
Hecate DID 서비스는 국제 웹 표준기구인 W3C DID 표준을 지키고 있으며, Private 환경에서 신뢰있고 폭넓은 DID 서비스를 구현할 수 있는 개발환경을 제공
다양한 Blockchain Platform과 연계가 가능한 Blockchain SDK 및 기업 업무와 연계하는 Legacy 연동 SDK, DID 관리를 하는 Manager Service와 Admin으로 구성되어 있으며, UI 인터페이스는 앱/웹 SDK를 제공
사용자 앱, 검증자 앱, 레거시, 어드민에서 제공하는 기능 리스트
구분 | 기능명 | 대상 | 내용 | 비고 |
---|---|---|---|---|
DID 발급 | 사용자 DID 발급 | 사용자앱 | 개인의 DID를 발급한다.(발급 시 본인인증 필요) | 블록체인 저장 |
기관 DID 발급 | 어드민, 레거시 | 기관의 DID를 발급한다.(발급기관 or 검증기관 구분) | 블록체인 저장 | |
DID 폐기 | 사용자 DID 폐기 | 사용자앱 | 사용자 인증 후 폐기를 진행한다. | 블록체인 폐기 |
기관 DID 폐기 | 어드민 | 어드민(관리자 권한) 인증 후 폐기를 진행한다. | 블록체인 폐기 | |
Credential 발급 | 기관 등록 | 사용자앱, 레거시 | 기관에 최초 요청 시 개인DID를 기관원장에 맵핑한다. | |
Credential 발급 요청 | 사용자앱, 레거시 | 사용자가 기관에 Credential 발급 요청을 한다. (기관은 claim을 생성 및 서명한 후 Verifiable Credential을 생성) | 블록체인 발급정보 저장 | |
Credential 저장 | 사용자앱 | Keystore or Keychain에 저장한다. | ||
Credential 발급 이력 | 사용자앱, 어드민 | Credential 발급 이력을 조회한다. | ||
Credential 제출 | Credential 제출 | 사용자앱 | 개인이 인증 후 Credential 제출 화면을 생성한다.(QR코드 포함) | |
Credential 검증 | Credential 검증 요청 | 검증자앱 | QR View을 통해 QR을 인식 후 증명서 검증을 진행한다. | 블록체인내 공개키 조회 |
Credential 검증 결과 | 검증자앱 | 증명서 검증 결과를 표시한다. | ||
Credential 검증 이력 | 검증자앱, 어드민 | Credential 검증 이력을 조회한다. | ||
Credential 폐기 | Credential 폐기 요청 | 사용자앱, 어드민 | 사용자 인증 후 폐기를 진행한다. 관리자 (발급기관 권한) 인증 후 폐기를 진행한다. |
|
공통 | DID 유효성 체크 | All | DID 유효성을 체크한다. | 블록체인 조회 |
Credential 유효성 체크 | All | Credential 유효성을 체크한다. | 블록체인 조회 |
사용자(HOLDER)에 대한 DID 발급 프로세스
- 앱을 통하여 DID 발급을 진행
사용자(HOLDER)에 대한 DID 재발급 프로세스 (폐기를 요청하지 않고 앱을 삭제한 경우)
- 앱을 통하여 DID 발급을 진행
사용자(HOLDER)에 대한 DID 폐기 프로세스
앱을 통하여 DID 폐기
증명서 수동 발급 프로세스
- 수동 승인 시 관리자가 승인한 사용자는 Push 메시지를 통해 증명서를 전달
증명서 자동 발급 프로세스 - 증명서 발급 요청 후 바로 기관의 서명이 추가된 증명서를 응답
증명서 제출 프로세스
사용자(HOLDER)이 앱을 통하여 제출용 증명서를 생성
제출용 증명서 검증 프로세스
- 사용자(HOLDER)이 검증 기관(VERIFIER) 에 제출용 증명서를 전달하고 이를 검증 기관(VERIFIER)은 블록체인 데이터를 조회하여 검증
발급받은 인증서 폐기
블록체인에 폐기 결과 값을 저장
기관(ISSUER)에 대한 DID 발급 프로세스
발급기관(ISSUER) SDK를 통하여 DID 발급
기관(ISSUER)에 대한 DID 폐기 프로세스
기관(ISSUER) ADMIN 에서 요청 후 통합 ADMIN을 통하여 DID 폐기