분산 ID
From IT위키
- Decentralized IDs, DIDs
분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 신원 증명 체계
기본 용어
- 이슈어(Issuer): 자격 증명 발급자
- 주체(Subject): 자격을 가진 주체
- 보유자(Holder): 자격 증명 소지자
- 주체와 보유자는 다를 수도 있기 때문에 구분한다. '예를 들어 홍길동의 학력은 석사다' 라는 자격 증명을 임꺽정이 가질수도 있다. cf. 국내의 법정대리인, 위임자 개념
- 검증자(Inspector): 자격 증명 검증자
동작 절차
- 홍길동은 입사지원을 위해 대학교에 학위 증명서 발급을 요청한다.
- 대학교는 "홍길동은 석사이다"라는 내용의 증명서를 발급한다.
- 증명서엔 다음의 내용이 포함된다.
- DID: 증명서 고유 ID
- 발급 정보: 발급한 대학교 명
- 자격 정보: "홍길동은 석사이다"라는 사실
- 검증 정보: 대학교의 개인키로 생성한 서명값(대학교의 공개키로 검증 가능)
- 대학교는 발급한 증명서 고유 ID와 공개키를 블록체인에 올려둔다.
- 홍길동은 입사지원 시 증명서를 제출한다.
- 입사지원을 받는 회사는 증명서의 고유 ID(DID)로 블록체인을 조회한다.
- 조회된 공개키를 이용해 전자 서명값을 검증하여 대학교에서 발급한 증명서가 맞는지 확인한다.
구성 요소
저장소
DID 문서
- did documents
- 블록체인에 올라가는 자격 증명을 검증할 수 있는 문서
- 개인정보는 포함하지 않고 검증 체계, 공개키 등만 포함
{ "@context": "https://w3id.org/did/v1", "id": "did:example:123456789abcdefghi", "authentication": [{ // used to authenticate as did:...fghi "id": "did:example:123456789abcdefghi#keys-1", "type": "RsaVerificationKey2018", "controller": "did:example:123456789abcdefghi", "publicKeyPem": "-----BEGIN PUBLIC KEY...END PUBLIC KEY-----\r\n" }], "service": [{ // used to retrieve Verifiable Credentials associated with the DID "type": "VerifiableCredentialService", "serviceEndpoint": "https://example.com/vc/" }] }
인증서 지갑
자격 증명
- Verifiable Claims에서 Verifiable Credentials로 변경
- 증명하고자 하는 자격이 담겨있는 텍스트 기반의 인증서이다.
- 암호학적인 방법으로 증명 가능하게 되어 있다.
- 이슈어를 명시하고, 이슈어의 개인키로 서명한 값을 포함한다.
- 블록체인 등 신뢰되는 저장소에서 공개키를 조회 해 검증할 수 있다.
- 표준은 JSON-LD로 표현되어 있으나 포맷엔 제한이 없다.
- 예시는 아래와 같다.
{ "@context": [ "https://www.w3.org/2018/credentials/v1", "https://www.w3.org/2018/credentials/examples/v1" ], "id": "http://example.gov/credentials/3732", "type": ["VerifiableCredential", "UniversityDegreeCredential"], "issuer": "https://example.edu", "issuanceDate": "2010-01-01T19:73:24Z", "credentialSubject": { "id": "did:example:ebfeb1f712ebc6f1c276e12ec21", "degree": { "type": "BachelorDegree", "name": "<span lang='fr-CA'>Baccalauréat en musiques numériques</span>" } }, "proof": { "type": "RsaSignature2018", "created": "2018-06-18T21:19:10Z", "verificationMethod": "https://example.com/jdoe/keys/1", "signatureValue": "BavEll0/I1zpYw8XNi1bgVg/sCneO4Jugez8RwDg/+ MCRVpjOboDoe4SxxKjkCOvKiCHGDvc4krqi6Z1n0UfqzxGfmatCuFibcC1wps PRdW+gGsutPTLzvueMWmFhwYmfIFpbBu95t501+rSLHIEuujM/+PXr9Cky6Ed +W3JT24=" } }
관련 표준
- W3C, ecentralized Identifiers (DIDs)
- W3C, Verifiable Credentials Data Model
- W3C, Verifiable Claims Use Cases
- 금융보안원, 분산ID를 활용한 신원관리 프레임워크
- ISO TC307, ISO/DTR 23249 Overview of existing DLT systems for identity management
- ITU-T SG17 Q.14(Distributed Ledger Technology)
- Security guidelines for using distributed ledger technology for decentralized identity management
- ITU-T Recommendation X.509 (10/2019) The Directory: Public-key and attribute certificate frameworks
- Amendment to Rec. ITU-T X.509 | ISO/IEC 9594-8 - Design considerations for a Decentralized PKI (2019)
동향
국내
- 국가 디지털 신분증 구축사업을 ‘디지털 정부혁신 기본계획 및 발전계획’ ‘한국판 뉴딜 종합계획’의 주요 과제로 선정해 추진
- (행안부) '모바일 공무원증' 도입 (2021년 초)
- 오프라인 : 정부 청사 출입, 도서관 등 지역 서비스 이용
- 온라인 : 공무원 업무시스템 로그인, 공무원 증빙서류 제출 등
- 운전면허증('21년 말)과 장애인등록증 등도 순차적으로 도입 예 정
- (금융위) 비대면 금융거래 활성화를 위해 블록체인 기반의 탈중 앙화 신원인증(DID) 규제를 완화 (2019.6)
- 금융결제원은 블록체인 기반의 모바일신분증(분산ID) 모델의 금융위원회 혁신금융서비스 지정
해외
- 유럽연합
- 모바일 신분증의 자기주권 신원관리를 위한 프레임워크 ESSIF 발표 (‘20.06)
- 유럽 국경에 걸쳐 신원을 생성하고 제어
- UN
- 난민을 위한 블록체인기반 ID 발행을 추진 중
- 2030년까지 전세계의 인류에게 아이디를 발행할 계획(2020~2030)
- 네덜란드
- 자기주권적 신분증 (2018~)
- 최소한의 개인정보로 신원확인 하도록 블록체인 기반 디지털 ID 개발
- 두바이
- 국제공항에 출입국 심사 간편화를 위해 블록체인 기반 여권 도입 계획 발표(2017.6)
고려사항 및 해결 방안
구분 | 고려사항 | 설명 | 해결방안 |
---|---|---|---|
기술·보안 | 오라클 문제 |
|
|
식별자 문제 |
|
||
영지식 증명 구현 |
|
||
폐기·재발급 등 |
|
| |
법률·제도 | 개인정보 보호법제 |
|
|
제도 기반 부족 |
|
| |
시장 | 거버넌스 부재 |
|
|
신뢰된 원장 부재 |
| ||
공통 표준 부재 |
| ||
인프라·인식 부족 |
|
| |
신뢰성 보장 |
|
관련 표준
- W3C에서 표준화를 진행중
각주
- ↑ 현재 CI와 유사한 사례로, CI는 온라인에서 사용되는 주민등록번호와 같아 방통위 등에서 사용을 통제 중
- ↑ 금융결제원, 금융투자협회 등
- ↑ 신원 인증 전용 분산원장은 ICON, 메타디움 등 개별 코인 발행 업체(스타트업)에서 운영
- ↑ '금융보안원표 분산ID' 정보통신 단체표준으로 채택('20.12., 서울경제)
- ↑ 한은, 디지털화폐 발행 모의실험…분산ID 표준안도 추진('21.4., 매일경제)