분산 ID: Difference between revisions

From CS Wiki
No edit summary
 
(15 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[분류:블록체인]]
;Decentralized IDs, DIDs
;Decentralized IDs, DIDs


분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 신원 증명 체계
분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 '''[[자기주권 신원]]''' 증명 체계
 
==개요==
 
===개념===
'''온라인상에서 분산원장을 기반으로 사용자가 스스로 신원<ref>사용자의 이름, 나이, 개인 고유 식별정보, 학력·자격, 인증정보 등</ref> 등에 대한 증명 관리, 신원정보 제출 범위 및 제출대상 통제 등을 수행할 수 있도록 하는 신원관리 체계'''
 
*전통적인 서버-클라이언트 모델 신원관리 체계와는 달리, 사용자가 자신의 [[자기주권 신원|신원정보에 주권(Self-Sovereignty)]] 행사 가능
 
===등장 배경===
'''전 세계적으로 개인의 프라이버시를 보호하고자 하는 움직임과 더불어 각 서비스 제공기관 마다 사용자 인증정보 및 개인정보를 관리함에 따른 위험성 및 불편함 인지'''
 
*'''(신원정보 과다 집중)''' 사용자의 신원정보가 글로벌 서비스 제공자에게로 집중됨으로써 발생하는 프라이버시 침해<ref>서비스제공자는 사용자의 동의 없이 사용자 서비스 이용 내역 등을 파악 가능</ref> 가능성에 우려
**구글, 페이스북 등 글로벌 기업에서, 여러 제3자 서비스에서 하나의 인증을 사용할 수 있도록 통합 인증 서비스 제공 중
*'''(신원정보 복제·분산)''' 서비스제공기관마다 사용자의 신원정보 관리 시, 해킹 등 전자적 침해에 따른 대량의 개인정보 유・노출 사고 발생 가능
*'''(인증정보 관리 불편)''' 사용자입장에서 개별 서비스마다 인증정보를 다르게 설정・관리하기에 한계
**이에, 사용자는 여러 서비스에 동일한 인증정보를 설정할 가능성이 높으며, 이를 이용한 [[크리덴셜 스터핑|'''크리덴셜 스터핑(Credential Stuffing)''']] 공격 위협
 
{| class="wikitable"
|'''▶ 실생활에서 사용자가 주민등록증 등 신원증명을 관리하는 것처럼, 온라인에서도 개별 서비스 제공기관이 아닌 사용자 스스로 자신의 신원정보를 관리・통제할 수 있도록 하는 새로운 인증체계 필요'''
|}
 
===특징===
 
*'''(지속성)''' 사용자는 외부환경의 변화와는 관계없이 자신의 신원정보를 지속적으로 사용 가능
**서비스제공자에 의해 신원정보가 관리되지 않으므로, 서비스제공자의 서비스 운영 중지 등 외부적 요인이 발생하더라도 신원정보의 유효성은 유지
*'''(피어(PEER)기반)''' 신원정보의 발행・검증은 특정기관에 종속적이지 않고, 피어기반으로 독립적으로 운영
**서버‑클라이언트 모델과는 달리, 누구나 필요한 신원정보를 생성・이용 가능
**단, 사용자의 신원을 최초로 검증할 수 있는 최소한의 신뢰된 기관(Trust Anchor) 필요
***(예) 금융기관 등에서 사용자 본인확인 절차(대면확인 등)를 거쳐 발행한 신원정보를 기반으로, 타 기관에서 다른 용도(운전가능여부 등)의 신원정보 발행 가능
*'''(휴대성)''' 신원증명이 필요한 경우 언제든 사용자는 스스로 신원정보를 선택 후 제공
**사용자의 휴대성을 위해 스마트폰 등을 이용한 모바일ID, 칩이 내장된 실물카드 형태의 ID카드 등으로 이용 가능
**이를 통해 언제든 필요시, 신원정보를 선택하여 서비스제공자에게 제공 가능
*'''(개인정보 보호)''' 개인의 명시적인 동의 없이는 서비스제공자의 개인정보의 활용 등이 제한
**사용자가 신원정보를 스스로 관리하므로, 서비스제공자는 서비스에 필요한 정보 이외의 개인정보 및 타 기관에서의 사용자 서비스 이용 내역 등은 확인 불가
**또한, 분산원장 기반의 신뢰된 ID저장소 내에는 개인정보를 평문으로 저장하지 않으며, 개인정보가 포함된 신원정보는 암호화 등의 조치를 수행하거나, 분산원장 밖에서(Off-Chain) 저장
 
==기존 인증 체계와의 비교==
{| class="wikitable"
!구분
!공인인증
!블록체인 공동인증
!분산ID
|-
!개요
|
*신뢰된 공인인증기관(CA) 기반 인증체계
|
*업권별(은행, 증권 등) 블록체인 기반 인증체계
|
*기관의 개입 없는 분산원장 기반 인증체계
|-
!신원정보 생성 및 등록
|
*공인인증기관
|
*각 금융회사 등
|
*필요시, 누구나 가능
|-
!신원정보의 신뢰성 기반
|
*국가 공인 시스템의 신뢰성 기반
*공인된 인증기관의 신뢰성·인프라 기반
|
*업권별로 운영되는 블록체인의 신뢰성 기반
|
*발급자의 신뢰성 기반
*이용하는 분산원장의 신뢰성 기반<ref>어떤 분산원장도 사용 가능하지만, 신뢰성이 보장되지 않는 분산 원장 사용 시 이를 이용하는 분산 ID의 신뢰성 또한 보장될 수 없음</ref>
|-
!신원정보 저장·관리
|
*중앙기관에서 모든 사용자의 신원정보 관리
|
*각 참여사 DB에 저장(또는 공동 DB 이용<ref>이론적으로 가능한 모델이나 아직까지 국내 컨소시엄 중에선 이 형태로 운영하는 경우는 없음</ref>)
*블록체인을 통해 동기화
|
*사용자가 원하는 곳에 저장 가능
*개인 디바이스나 지갑 서비스 등에 저장
*블록체인에 검증 정보 저장
|-
!신원정보 이용형태
|
*공인된 하나의 ID 이용
|
*하나의 ID 이용
|
*사용자 필요시마다 생성하여 이용<ref>나이 증명용 ID, 학력 증명용 ID 등 생성 가능</ref>
|-
!공동 이용 근거
|
*전자서명법
|
*컨소시엄 규약(협약, 계약)
|
*없음
*신원정보의 신뢰성에 기반
|-
!예시
|
*공동인증서<ref>기존 공인인증서가 전자서명법 개정('19.12)에 따라 공동인증서로 변경됨</ref>
|
*금융투자업권 체인ID
*은행업권 금융인증서<ref>기존 은행연합회 뱅크사인에서 금융결제원 금융인증서로 변경됨</ref>
|
*Sovrin
*uPort
|}
 
==참여자 및 구성요소==
{| class="wikitable"
!'''구성 요소'''
!'''설명'''
|-
!'''DID'''
|
*주체나 신원을 가리키는 고유한 식별자
|-
!'''[[DID 문서]]'''
 
'''[[DID 문서|(DID Document)]]'''
|
*DID를 식별자(Key)로 하여 식별하고자 하는 대상을 설명한 문서
|-
!'''검증 가능한 신분증'''
 
'''(Verifiable Credential)'''
|
*증명하고자 하는 자격이 담겨있는 '''텍스트 기반'''<ref>W3C 표준은 [[JSON-LD]]로 표현되어 있으나 포맷엔 제한 없음</ref>'''의 인증서'''  (나이 + 이름 + 학력이 기재된 증명서)
*암호학적인 방법으로 증명 가능한 구조
|-
!'''신원(Claim)'''
|
*증명이 대상이 되는 신원(나이, 이름 등)
|-
!'''발급자(Issuer)'''
|
*신원을 확인하고 DID를 발급하는자
|-
!'''주체(Subject)'''
|
*신원의 주체가 되는 자
|-
!'''보유자(Holder)'''
|
*증명서를 보유하고 있으며 제시하는 자
|-
!'''검증자(Verifier)'''
|
*자격 증명자로, 일반적으로 자격을 확인하고자 하는 니즈가 있는 서비스 제공자  (ex. 술담배 판매를 위해 신원증명 주체가 ‘성인’인지 여부를 알고싶어 하는 편의점주)
|-
!'''해석기(Resolver)'''
|
*블록체인 및 전자서명 기술을 이용하여 증명 가능한 신원을 검증하는 도구
|-
!'''지갑(Wallet)'''
|
*증명서를 저장하고 제시하기 위한 애플리케이션
|-
!'''분산 원장'''
 
'''(Distributed Ledger)'''
|
*신원증명의 검증 값을 보관하는 신뢰된 분산원장
*기존의 알려진 원장을 이용할 수도 있고 컨소시엄 등에서 별도의 원장을 구축할 수도 있음
|-
!'''DID 컨소시엄'''
|
*분산원장을 운영하거나 표준·규격 등을 협의하기 위한 기업·기관 협의체
|-
!'''정책 기관'''
|
*금융위원회, 방송통신위원회 등 정책기관
*분산 ID 관련 법제도 및 인증기준 등 마련
|-
!'''표준(Standard)'''
|
*DID 구조, 프레임워크, 신원증명 방법 등을 통일
|-
!'''매체 규격'''
 
'''(DID Method Spec)'''
|
*사용하는 분산원장 및 신원증명 수단별로 세부 사항을 규정한 규격서
|}
 
==기반 기술==
{| class="wikitable"
!구분
!설명
|-
!'''[[블록체인]]'''
|
*분산원장의 신뢰성을 위한 자료 구조
|-
!'''[[전자서명]]'''
|
*공개키를 이용한 부인방지 및 인증 수단
|-
!'''[[영지식 증명]]'''
|
*선택적 신원증명을 위해 사용되는 기술
*정보를 드러내지 않고 정보의 인지 여부, 옳고 그름을 증명하기 위한 암호학적 기술
|-
!'''[[JSON-LD]]'''
|
*DID 문서, 신원, 증명서를 표현하기 위한 표기 규칙
|-
!'''[[URI]]'''
|
*DID를 표현하기 위한 표현 규칙 기반
*서비스 엔드 포인트를 가리키기 위한 주소
|}
 
==동작 절차==
 
#홍길동은 입사지원을 위해 대학교에 학위 증명서 발급을 요청한다.
#대학교는 "홍길동은 석사이다"라는 내용의 증명서를 발급한다.
#*증명서엔 다음의 내용이 포함된다.
##DID: 증명서 고유 ID
##발급 정보: 발급한 대학교 명
##자격 정보: "홍길동은 석사이다"라는 사실
##검증 정보: 대학교의 개인키로 생성한 서명값([[전자 서명|대학교의 공개키로 검증 가능]])
#대학교는 발급한 증명서 고유 ID와 공개키를 블록체인에 올려둔다.
#홍길동은 입사지원 시 증명서를 제출한다.
#입사지원을 받는 회사는 증명서의 고유 ID(DID)로 블록체인을 조회한다.
#조회된 공개키를 이용해 전자 서명값을 검증하여 대학교에서 발급한 증명서가 맞는지 확인한다.
 
==관련 표준==
 
*[https://w3c-ccg.github.io/did-spec/ W3C, ecentralized Identifiers (DIDs)]
*[https://www.w3.org/TR/verifiable-claims-data-model/ W3C, Verifiable Credentials Data Model]
*[https://www.w3.org/TR/verifiable-claims-use-cases/ W3C, Verifiable Claims Use Cases]
*[http://www.tta.or.kr/data/ttas_view.jsp?rn=1&pk_num=TTAK.KO-12.0359-Part1 금융보안원, 분산ID를 활용한 신원관리 프레임워크]
*[https://www.iso.org/standard/80805.html 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)
 
==국내외 사례 및 동향향==
 
===국내===
 
*국가 디지털 신분증 구축사업을 ‘디지털 정부혁신 기본계획 및 발전계획’ ‘한국판 뉴딜 종합계획’의 주요 과제로 선정해 추진
*'''(관계부처 합동)''' 블록체인 기술 확산 전략(2020.6)에 DID 관련 내용 포함
*'''(행안부)''' '모바일 공무원증' 도입 (2021년 초)
**오프라인 : 정부 청사 출입, 도서관 등 지역 서비스 이용
**온라인 : 공무원 업무시스템 로그인, 공무원 증빙서류 제출 등
**운전면허증('21년 말)과 장애인등록증 등도 순차적으로 도입 예 정
*'''(금융위)''' 비대면 금융거래 활성화를 위해 블록체인 기반의 탈중 앙화 신원인증(DID) 규제를 완화 (2019.6)
**금융결제원은 블록체인 기반의 모바일신분증(분산ID) 모델의 금융위원회 혁신금융서비스 지정
 
===해외===
 
*'''유럽연합'''
**모바일 신분증의 자기주권 신원관리를 위한 프레임워크 ESSIF 발표 (‘20.06)
**유럽 국경에 걸쳐 신원을 생성하고 제어
*'''UN'''
**난민을 위한 블록체인기반 ID 발행을 추진 중
**2030년까지 전세계의 인류에게 아이디를 발행할 계획(2020~2030)
*'''네덜란드'''
**자기주권적 신분증 (2018~)
**최소한의 개인정보로 신원확인 하도록 블록체인 기반 디지털 ID 개발
*'''두바이'''
**국제공항에 출입국 심사 간편화를 위해 블록체인 기반 여권 도입 계획 발표(2017.6)
 
==고려사항 및 해결 방안==
 
*
 
{| class="wikitable"
!'''구분'''
!'''고려사항'''
!'''설명'''
!'''해소방안'''
|-
! rowspan="4" |기술·
 
보안
|선택적 노출
|
*프라이버시 보호, 진정한 자기 주권을 위해선 신원주체의 선별적 신원 제시 필요
|
*영지식 증명
*Credential Level
|-
|식별자 문제
|
*동일 DID를 범용적, 반복적으로 사용할 경우 고유식별자적 성격으로 변질 가능성
*매번 새로운 식별자 발급을 위한 성능 부하, 증명값이 블록으로 쌓이는 지연시간
|
*영지식 증명
*실시간 발급
|-
|폐기·재발급 등
|
*중앙 관리 기관 부재로 도용, 폐기, 재발급 등에 대한 관리 체계 부족
|
*관련 세부 규격 마련
*가이드라인 제시 등
|-
|확장성·
 
완결성 문제
|
*블록체인이 가지고 있는 고유한 확장성(Scalability), 완결성(Finality) 문제
|
*스케일링, 샤딩
*Checkpoint, PBFT
|-
! rowspan="2" |법률·
 
제도
|개인정보
 
보호법제
|
*분산ID 식별자에 대한 개인정보 해석 가능성
*분산 원장 인프라에 대한 개인정보 위수탁, 제3자 제공 해석
|
*관련 부처의 유권해석
|-
|제도 기반
|
*본인확인, 실지명의 확인 등 기존 제도화된 인증 체계와 충돌
*전자서명 인정사업자 등 법적인 기관 위주의 시장 진입 어려움
*블록체인의 안정성에 대한 평가·검증 어려움
|
*관련 법률 개정
*블록체인 제도화 및 관리
*정부 주도 실증 서비스 출시
|-
! rowspan="5" |시장
|거버넌스
|
*범국가적 거버넌스, 통일된 체계 부재
*DID 얼라이언스, MyID 얼라이언스, 이니셜 DID 연합 등 난립
|
*관련 부처 중심으로 거버넌스 쳬계 확립
*얼라이언스간 협의체 마련
|-
|신뢰된 원장
|
*비트코인 등 공개 소프트웨어 기반 분산 원장 사용의 적절성 이슈
*컨소시엄 블록체인 외 이종 산업간 범용 가능한 분산원장 부재
|
*신뢰 기관을 중심으로 개방 원장 구축
*블록체인 제도화 및 관리
*DID 통합 해석기 구축 지원
|-
|공통 표준
 
부재
|
*(국내) 금융보안원과 TTA의 표준에도 불구, 한국은행에서 새로운 표준화 추진
*(해외) ISO, ITU, W3C, 하이퍼레저 인디 등 다양한 프레임워크가 제시됨
|
*업계 간 이해관계 조율
*공통 표준화 참여
|-
|인프라·인식 부족
|
*신원학인을 원하는 서비스 제공자, 영업점 등의 인프라 보급에 시일 소요
*개념 확립, 블록체인의 검증 값을 이용한 신원 인증 대한 사회적 이해 필요
|
*SW, 단말기 등 인프라 보급
*관련 교육, 홍보
|-
|신뢰성 보장
|
*신뢰된 CA, RA 없이 이루어지는 신원 증명 발급에 대한 신뢰 기준 부재
|
*계층적 인정 기준 마련
|}
 
==국내 책 추진 현황==
'''블록체인 기술 확산 전략(2020.6)'''
 
*정책 원칙 마련


== 기본 용어 ==
#국민이 공공분야 제증명 서비스 이용 시 부처별 DID 서비스를 불편없이 이용 가능하도록 지원
* 이슈어(Issuer): 자격 증명 발급자
#DID 서비스의 혁신성을 지속적으로 유지하기 위해 민간 생태계를 최대한 활용
* 주체(Subject): 자격을 가진 주체
#국민이 체감할 수 있는 혁신적인 DID 서비스가 만들어질 수 있도록 민간 서비스 발굴 지원
* 보유자(Holder): 자격 증명 소지자
** 주체와 보유자는 다를 수도 있기 때문에 구분한다. '예를 들어 홍길동의 학력은 석사다' 라는 자격 증명을 임꺽정이 가질수도 있다. cf. 국내의 법정대리인, 위임자 개념
* 검증자(Inspector): 자격 증명 검증자


== 동작 절차 ==
{| class="wikitable"
# 홍길동은 입사지원을 위해 대학교에 학위 증명서 발급을 요청한다.
!추진 전략
# 대학교는 "홍길동은 석사이다"라는 내용의 증명서를 발급한다.
!설명
#* 증명서엔 다음의 내용이 포함된다.
!계획 일정
## DID: 증명서 고유 ID
|-
## 발급 정보: 발급한 대학교 명
|공공 플랫폼
## 자격 정보: "홍길동은 석사이다"라는 사실
|
## 검증 정보: 대학교의 개인키로 생성한 서명값([[전자 서명|대학교의 공개키로 검증 가능]])
*공공부문 DID 서비스 이용 시 통합 이용 가능한 공공플랫폼 구축
# 대학교는 발급한 증명서 고유 ID와 공개키를 블록체인에 올려둔다.
*민간의 DID 플랫폼과 연계 될 수 있도록 추진
# 홍길동은 입사지원 시 증명서를 제출한다.
|2021년
# 입사지원을 받는 회사는 증명서의 고유 ID(DID)로 블록체인을 조회한다.
|-
# 조회된 공개키를 이용해 전자 서명값을 검증하여 대학교에서 발급한 증명서가 받는지 확인한다.
|DID 간 연동
|
*여러 다른 DID 서비스를 편리하게 이용할 수 있는 통합 해석기 개발 지원
|2021년
|-
|표준·가이드라인
|
*DID 플랫폼 상호 간 연동문제 해결을 위한 요구 사항 도출 및 표준화 추진
*상호호환성을 확보하기 위해 준수해야하는 표준 규격, 기술·보안 등 안내
|2021년
|-
|타 인증수단 연계
|
*기존 인증수단([[공개키 기반 구조|PKI]], [[FIDO]] )과 연계 활용할 수 있는 시스템 개발 지원
|2025년
|-
|신규 서비스 발굴
|
*사람의 자격증명 외 분야의 혁신적 DID 서비스를 발굴 시범사업 추진
*의료정보, 전자계약, 사물제어 등
|2021년
|-
|거버넌스 구축
|
*관계부처· 전문기관·기업이 참여하는 민관 합동 DID 협의체 구성·운영
*상호운용성 확보 및 서비스 활성화를 위한 정책 방안 등 논의
|2020년 下
|}


== 구성 요소 ==
*범부처 통합 공공플랫폼 구축
=== 저장소 ===
*DID 간 연동지원 및 타 인증수단 연계
*미래 비대면 사회 대응을 위한 혁신 서비스 발굴 및 적용
*DID 생태계 활성화를 위한 거버넌스 구축


=== DID 문서 ===
<br />
;did documents
* 블록체인에 올라가는 자격 증명을 검증할 수 있는 문서
* 개인정보는 포함하지 않고 검증 체계, 공개키 등만 포함
<pre>
{
  "@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/"
  }]
}
</pre>


=== 인증서 지갑 ===
*
=== 자격 증명 ===
;Verifiable Claims에서 Verifiable Credentials로 변경
* 증명하고자 하는 자격이 담겨있는 '''텍스트 기반의 인증서'''이다.
* 암호학적인 방법으로 증명 가능하게 되어 있다.
** 이슈어를 명시하고, 이슈어의 개인키로 서명한 값을 포함한다.
** 블록체인 등 신뢰되는 저장소에서 공개키를 조회 해 검증할 수 있다.
* 표준은 [[JSON-LD]]로 표현되어 있으나 포맷엔 제한이 없다.
* 예시는 아래와 같다.
<pre>
{
  "@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="
  }
}
</pre>


== 관련 표준 ==
==각주==
;W3C에서 표준화를 진행중
<references />
* [https://w3c-ccg.github.io/did-spec/ Decentralized Identifiers (DIDs)]
* [https://www.w3.org/TR/verifiable-claims-data-model/ Verifiable Credentials Data Model]
* [https://www.w3.org/TR/verifiable-claims-use-cases/ Verifiable Claims Use Cases]

Latest revision as of 01:57, 12 December 2023


Decentralized IDs, DIDs

분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 자기주권 신원 증명 체계

개요[edit | edit source]

개념[edit | edit source]

온라인상에서 분산원장을 기반으로 사용자가 스스로 신원[1] 등에 대한 증명 관리, 신원정보 제출 범위 및 제출대상 통제 등을 수행할 수 있도록 하는 신원관리 체계

등장 배경[edit | edit source]

전 세계적으로 개인의 프라이버시를 보호하고자 하는 움직임과 더불어 각 서비스 제공기관 마다 사용자 인증정보 및 개인정보를 관리함에 따른 위험성 및 불편함 인지

  • (신원정보 과다 집중) 사용자의 신원정보가 글로벌 서비스 제공자에게로 집중됨으로써 발생하는 프라이버시 침해[2] 가능성에 우려
    • 구글, 페이스북 등 글로벌 기업에서, 여러 제3자 서비스에서 하나의 인증을 사용할 수 있도록 통합 인증 서비스 제공 중
  • (신원정보 복제·분산) 서비스제공기관마다 사용자의 신원정보 관리 시, 해킹 등 전자적 침해에 따른 대량의 개인정보 유・노출 사고 발생 가능
  • (인증정보 관리 불편) 사용자입장에서 개별 서비스마다 인증정보를 다르게 설정・관리하기에 한계
▶ 실생활에서 사용자가 주민등록증 등 신원증명을 관리하는 것처럼, 온라인에서도 개별 서비스 제공기관이 아닌 사용자 스스로 자신의 신원정보를 관리・통제할 수 있도록 하는 새로운 인증체계 필요

특징[edit | edit source]

  • (지속성) 사용자는 외부환경의 변화와는 관계없이 자신의 신원정보를 지속적으로 사용 가능
    • 서비스제공자에 의해 신원정보가 관리되지 않으므로, 서비스제공자의 서비스 운영 중지 등 외부적 요인이 발생하더라도 신원정보의 유효성은 유지
  • (피어(PEER)기반) 신원정보의 발행・검증은 특정기관에 종속적이지 않고, 피어기반으로 독립적으로 운영
    • 서버‑클라이언트 모델과는 달리, 누구나 필요한 신원정보를 생성・이용 가능
    • 단, 사용자의 신원을 최초로 검증할 수 있는 최소한의 신뢰된 기관(Trust Anchor) 필요
      • (예) 금융기관 등에서 사용자 본인확인 절차(대면확인 등)를 거쳐 발행한 신원정보를 기반으로, 타 기관에서 다른 용도(운전가능여부 등)의 신원정보 발행 가능
  • (휴대성) 신원증명이 필요한 경우 언제든 사용자는 스스로 신원정보를 선택 후 제공
    • 사용자의 휴대성을 위해 스마트폰 등을 이용한 모바일ID, 칩이 내장된 실물카드 형태의 ID카드 등으로 이용 가능
    • 이를 통해 언제든 필요시, 신원정보를 선택하여 서비스제공자에게 제공 가능
  • (개인정보 보호) 개인의 명시적인 동의 없이는 서비스제공자의 개인정보의 활용 등이 제한
    • 사용자가 신원정보를 스스로 관리하므로, 서비스제공자는 서비스에 필요한 정보 이외의 개인정보 및 타 기관에서의 사용자 서비스 이용 내역 등은 확인 불가
    • 또한, 분산원장 기반의 신뢰된 ID저장소 내에는 개인정보를 평문으로 저장하지 않으며, 개인정보가 포함된 신원정보는 암호화 등의 조치를 수행하거나, 분산원장 밖에서(Off-Chain) 저장

기존 인증 체계와의 비교[edit | edit source]

구분 공인인증 블록체인 공동인증 분산ID
개요
  • 신뢰된 공인인증기관(CA) 기반 인증체계
  • 업권별(은행, 증권 등) 블록체인 기반 인증체계
  • 기관의 개입 없는 분산원장 기반 인증체계
신원정보 생성 및 등록
  • 공인인증기관
  • 각 금융회사 등
  • 필요시, 누구나 가능
신원정보의 신뢰성 기반
  • 국가 공인 시스템의 신뢰성 기반
  • 공인된 인증기관의 신뢰성·인프라 기반
  • 업권별로 운영되는 블록체인의 신뢰성 기반
  • 발급자의 신뢰성 기반
  • 이용하는 분산원장의 신뢰성 기반[3]
신원정보 저장·관리
  • 중앙기관에서 모든 사용자의 신원정보 관리
  • 각 참여사 DB에 저장(또는 공동 DB 이용[4])
  • 블록체인을 통해 동기화
  • 사용자가 원하는 곳에 저장 가능
  • 개인 디바이스나 지갑 서비스 등에 저장
  • 블록체인에 검증 정보 저장
신원정보 이용형태
  • 공인된 하나의 ID 이용
  • 하나의 ID 이용
  • 사용자 필요시마다 생성하여 이용[5]
공동 이용 근거
  • 전자서명법
  • 컨소시엄 규약(협약, 계약)
  • 없음
  • 신원정보의 신뢰성에 기반
예시
  • 공동인증서[6]
  • 금융투자업권 체인ID
  • 은행업권 금융인증서[7]
  • Sovrin
  • uPort

참여자 및 구성요소[edit | edit source]

구성 요소 설명
DID
  • 주체나 신원을 가리키는 고유한 식별자
DID 문서

(DID Document)

  • DID를 식별자(Key)로 하여 식별하고자 하는 대상을 설명한 문서
검증 가능한 신분증

(Verifiable Credential)

  • 증명하고자 하는 자격이 담겨있는 텍스트 기반[8]의 인증서 (나이 + 이름 + 학력이 기재된 증명서)
  • 암호학적인 방법으로 증명 가능한 구조
신원(Claim)
  • 증명이 대상이 되는 신원(나이, 이름 등)
발급자(Issuer)
  • 신원을 확인하고 DID를 발급하는자
주체(Subject)
  • 신원의 주체가 되는 자
보유자(Holder)
  • 증명서를 보유하고 있으며 제시하는 자
검증자(Verifier)
  • 자격 증명자로, 일반적으로 자격을 확인하고자 하는 니즈가 있는 서비스 제공자 (ex. 술담배 판매를 위해 신원증명 주체가 ‘성인’인지 여부를 알고싶어 하는 편의점주)
해석기(Resolver)
  • 블록체인 및 전자서명 기술을 이용하여 증명 가능한 신원을 검증하는 도구
지갑(Wallet)
  • 증명서를 저장하고 제시하기 위한 애플리케이션
분산 원장

(Distributed Ledger)

  • 신원증명의 검증 값을 보관하는 신뢰된 분산원장
  • 기존의 알려진 원장을 이용할 수도 있고 컨소시엄 등에서 별도의 원장을 구축할 수도 있음
DID 컨소시엄
  • 분산원장을 운영하거나 표준·규격 등을 협의하기 위한 기업·기관 협의체
정책 기관
  • 금융위원회, 방송통신위원회 등 정책기관
  • 분산 ID 관련 법제도 및 인증기준 등 마련
표준(Standard)
  • DID 구조, 프레임워크, 신원증명 방법 등을 통일
매체 규격

(DID Method Spec)

  • 사용하는 분산원장 및 신원증명 수단별로 세부 사항을 규정한 규격서

기반 기술[edit | edit source]

구분 설명
블록체인
  • 분산원장의 신뢰성을 위한 자료 구조
전자서명
  • 공개키를 이용한 부인방지 및 인증 수단
영지식 증명
  • 선택적 신원증명을 위해 사용되는 기술
  • 정보를 드러내지 않고 정보의 인지 여부, 옳고 그름을 증명하기 위한 암호학적 기술
JSON-LD
  • DID 문서, 신원, 증명서를 표현하기 위한 표기 규칙
URI
  • DID를 표현하기 위한 표현 규칙 기반
  • 서비스 엔드 포인트를 가리키기 위한 주소

동작 절차[edit | edit source]

  1. 홍길동은 입사지원을 위해 대학교에 학위 증명서 발급을 요청한다.
  2. 대학교는 "홍길동은 석사이다"라는 내용의 증명서를 발급한다.
    • 증명서엔 다음의 내용이 포함된다.
    1. DID: 증명서 고유 ID
    2. 발급 정보: 발급한 대학교 명
    3. 자격 정보: "홍길동은 석사이다"라는 사실
    4. 검증 정보: 대학교의 개인키로 생성한 서명값(대학교의 공개키로 검증 가능)
  3. 대학교는 발급한 증명서 고유 ID와 공개키를 블록체인에 올려둔다.
  4. 홍길동은 입사지원 시 증명서를 제출한다.
  5. 입사지원을 받는 회사는 증명서의 고유 ID(DID)로 블록체인을 조회한다.
  6. 조회된 공개키를 이용해 전자 서명값을 검증하여 대학교에서 발급한 증명서가 맞는지 확인한다.

관련 표준[edit | edit source]

  • 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)

국내외 사례 및 동향향[edit | edit source]

국내[edit | edit source]

  • 국가 디지털 신분증 구축사업을 ‘디지털 정부혁신 기본계획 및 발전계획’ ‘한국판 뉴딜 종합계획’의 주요 과제로 선정해 추진
  • (관계부처 합동) 블록체인 기술 확산 전략(2020.6)에 DID 관련 내용 포함
  • (행안부) '모바일 공무원증' 도입 (2021년 초)
    • 오프라인 : 정부 청사 출입, 도서관 등 지역 서비스 이용
    • 온라인 : 공무원 업무시스템 로그인, 공무원 증빙서류 제출 등
    • 운전면허증('21년 말)과 장애인등록증 등도 순차적으로 도입 예 정
  • (금융위) 비대면 금융거래 활성화를 위해 블록체인 기반의 탈중 앙화 신원인증(DID) 규제를 완화 (2019.6)
    • 금융결제원은 블록체인 기반의 모바일신분증(분산ID) 모델의 금융위원회 혁신금융서비스 지정

해외[edit | edit source]

  • 유럽연합
    • 모바일 신분증의 자기주권 신원관리를 위한 프레임워크 ESSIF 발표 (‘20.06)
    • 유럽 국경에 걸쳐 신원을 생성하고 제어
  • UN
    • 난민을 위한 블록체인기반 ID 발행을 추진 중
    • 2030년까지 전세계의 인류에게 아이디를 발행할 계획(2020~2030)
  • 네덜란드
    • 자기주권적 신분증 (2018~)
    • 최소한의 개인정보로 신원확인 하도록 블록체인 기반 디지털 ID 개발
  • 두바이
    • 국제공항에 출입국 심사 간편화를 위해 블록체인 기반 여권 도입 계획 발표(2017.6)

고려사항 및 해결 방안[edit | edit source]

구분 고려사항 설명 해소방안
기술·

보안

선택적 노출
  • 프라이버시 보호, 진정한 자기 주권을 위해선 신원주체의 선별적 신원 제시 필요
  • 영지식 증명
  • Credential Level
식별자 문제
  • 동일 DID를 범용적, 반복적으로 사용할 경우 고유식별자적 성격으로 변질 가능성
  • 매번 새로운 식별자 발급을 위한 성능 부하, 증명값이 블록으로 쌓이는 지연시간
  • 영지식 증명
  • 실시간 발급
폐기·재발급 등
  • 중앙 관리 기관 부재로 도용, 폐기, 재발급 등에 대한 관리 체계 부족
  • 관련 세부 규격 마련
  • 가이드라인 제시 등
확장성·

완결성 문제

  • 블록체인이 가지고 있는 고유한 확장성(Scalability), 완결성(Finality) 문제
  • 스케일링, 샤딩
  • Checkpoint, PBFT
법률·

제도

개인정보

보호법제

  • 분산ID 식별자에 대한 개인정보 해석 가능성
  • 분산 원장 인프라에 대한 개인정보 위수탁, 제3자 제공 해석
  • 관련 부처의 유권해석
제도 기반
  • 본인확인, 실지명의 확인 등 기존 제도화된 인증 체계와 충돌
  • 전자서명 인정사업자 등 법적인 기관 위주의 시장 진입 어려움
  • 블록체인의 안정성에 대한 평가·검증 어려움
  • 관련 법률 개정
  • 블록체인 제도화 및 관리
  • 정부 주도 실증 서비스 출시
시장 거버넌스
  • 범국가적 거버넌스, 통일된 체계 부재
  • DID 얼라이언스, MyID 얼라이언스, 이니셜 DID 연합 등 난립
  • 관련 부처 중심으로 거버넌스 쳬계 확립
  • 얼라이언스간 협의체 마련
신뢰된 원장
  • 비트코인 등 공개 소프트웨어 기반 분산 원장 사용의 적절성 이슈
  • 컨소시엄 블록체인 외 이종 산업간 범용 가능한 분산원장 부재
  • 신뢰 기관을 중심으로 개방 원장 구축
  • 블록체인 제도화 및 관리
  • DID 통합 해석기 구축 지원
공통 표준

부재

  • (국내) 금융보안원과 TTA의 표준에도 불구, 한국은행에서 새로운 표준화 추진
  • (해외) ISO, ITU, W3C, 하이퍼레저 인디 등 다양한 프레임워크가 제시됨
  • 업계 간 이해관계 조율
  • 공통 표준화 참여
인프라·인식 부족
  • 신원학인을 원하는 서비스 제공자, 영업점 등의 인프라 보급에 시일 소요
  • 개념 확립, 블록체인의 검증 값을 이용한 신원 인증 대한 사회적 이해 필요
  • SW, 단말기 등 인프라 보급
  • 관련 교육, 홍보
신뢰성 보장
  • 신뢰된 CA, RA 없이 이루어지는 신원 증명 발급에 대한 신뢰 기준 부재
  • 계층적 인정 기준 마련

국내 책 추진 현황[edit | edit source]

블록체인 기술 확산 전략(2020.6)

  • 정책 원칙 마련
  1. 국민이 공공분야 제증명 서비스 이용 시 부처별 DID 서비스를 불편없이 이용 가능하도록 지원
  2. DID 서비스의 혁신성을 지속적으로 유지하기 위해 민간 생태계를 최대한 활용
  3. 국민이 체감할 수 있는 혁신적인 DID 서비스가 만들어질 수 있도록 민간 서비스 발굴 지원
추진 전략 설명 계획 일정
공공 플랫폼
  • 공공부문 DID 서비스 이용 시 통합 이용 가능한 공공플랫폼 구축
  • 민간의 DID 플랫폼과 연계 될 수 있도록 추진
2021년
DID 간 연동
  • 여러 다른 DID 서비스를 편리하게 이용할 수 있는 통합 해석기 개발 지원
2021년
표준·가이드라인
  • DID 플랫폼 상호 간 연동문제 해결을 위한 요구 사항 도출 및 표준화 추진
  • 상호호환성을 확보하기 위해 준수해야하는 표준 규격, 기술·보안 등 안내
2021년
타 인증수단 연계
  • 기존 인증수단(PKI, FIDO 등)과 연계 활용할 수 있는 시스템 개발 지원
2025년
신규 서비스 발굴
  • 사람의 자격증명 외 분야의 혁신적 DID 서비스를 발굴 시범사업 추진
  • 의료정보, 전자계약, 사물제어 등
2021년
거버넌스 구축
  • 관계부처· 전문기관·기업이 참여하는 민관 합동 DID 협의체 구성·운영
  • 상호운용성 확보 및 서비스 활성화를 위한 정책 방안 등 논의
2020년 下
  • 범부처 통합 공공플랫폼 구축
  • DID 간 연동지원 및 타 인증수단 연계
  • 미래 비대면 사회 대응을 위한 혁신 서비스 발굴 및 적용
  • DID 생태계 활성화를 위한 거버넌스 구축


각주[edit | edit source]

  1. 사용자의 이름, 나이, 개인 고유 식별정보, 학력·자격, 인증정보 등
  2. 서비스제공자는 사용자의 동의 없이 사용자 서비스 이용 내역 등을 파악 가능
  3. 어떤 분산원장도 사용 가능하지만, 신뢰성이 보장되지 않는 분산 원장 사용 시 이를 이용하는 분산 ID의 신뢰성 또한 보장될 수 없음
  4. 이론적으로 가능한 모델이나 아직까지 국내 컨소시엄 중에선 이 형태로 운영하는 경우는 없음
  5. 나이 증명용 ID, 학력 증명용 ID 등 생성 가능
  6. 기존 공인인증서가 전자서명법 개정('19.12)에 따라 공동인증서로 변경됨
  7. 기존 은행연합회 뱅크사인에서 금융결제원 금융인증서로 변경됨
  8. W3C 표준은 JSON-LD로 표현되어 있으나 포맷엔 제한 없음