1. SSI (Self Sovereignty Identity)

🔑 SSI (자기 주권 신원)
"자신 스스로 권한을 부여한 신원"
서비스 제공자나 제 3의 기관이 아닌 개인 스스로 주권을 가지고 자신의 신원을 관리 및 활용할 수 있는 체제

신원 확인 개인 정보를 블록체인 등의 분산원장에 기록한다. 사용자는 개인 정보가 필요할 때 개인 정보 발급자에게 신원 정보를 받아서 검증자에게 정보를 공유하여 신원을 증명한다. 신원 정보가 분산 저장되기 때문의 정보의 가용성과 무결성이 높은 편이다. 사용자가 정보의 주권을 가지는 만큼 책임과 의무가 강해진다.


1-1. 신원 모델 유형

본문 이미지 1

(1) 개별 신원 모델 (Siloed Identities)

여러 인터넷 사이트에서 각각 아이디/비밀번호를 발급받아 사용하는 모델로 아이디/비밀번호가 분실되면 번거롭다. 여러 사이트에 단일한 아이디/비밀번호를 사용한다면 개인 정보 위험이 증가한다.

(2) 연합 신원 모델 (Federated Identities)

오픈 아이디(OpenID), OAuth 등을 기반으로 기존 소셜 미디어 계정으로 다른 사이트에 로그인하는 방식이다. 특정 서비스에 개인 정보가 집중되어 개인정보 유출시 위험이 상당하다.

(3) 자기주권 신원 모델 (Self Sovereignty Identities)

개인 정보를 사용자가 직접 본인의 단말기로 관리한다. 단말기 분실시 위험할 수 있다.


1-2. SSI를 형성하는 요소

식별자 (Identifier)

SSI를 위해서는 디지털 환경에서 내가 '나'임을 증명하기 위한 식별자가 필요하다. 분산 ID(DID)가 해당된다.

Identity Data

'나'라는 개체가 어떤 정보/속성을 가지고 있는지를 제시하고 증명하는 정보이다. Claim, VC, VP가 해당된다.


2. DID (Decentralized Identity)

DID (분산 신원 확인, 탈중앙화 신원 확인)
기존 신원 확인 방식과 달리 중앙 시스템에 의해 통제되지 않으며 개개인이 자신의 정보에 완전한 통제권을 가질 수 있게 하는 기술로 데이터의 주권이 중앙화된 기관이 아닌 개인에게 있다.

본문 이미지 2

DID는 SSI를 디지털 방식으로 실현하기 위한 방식으로 볼 수 있다. 개인 정보 주권 개념에서 시작한 탈중앙화 본인 인증 기술이다. 이를 위해서는 디지털 정보의 무결성과 보안성과 관련된 위변조 문제의 해결이 필요했고, 탈중앙화된 블록체인 분산원장기술은 이러한 문제를 해결할 수 있는 좋은 방안이 되었다.

사용자가 본인 단말기에 저장된 DID 정보를 토대로 신원인증 기관에 인증을 요청하면 기관에서 신원 확인 서명이 담긴 정보를 돌려준다. 검증자는 이 정보를 신뢰할 수 있는 공통 블록체인 데이터베이스에서 비교 검증하여 문제가 없다면 인증을 진행하는 방식이다.

현재 DID 기술은 W3C(World Wide Web Consortium)에서 표준화를 진행하고 있다. 글로벌 시장조사기업 자이온마켓리서치(Zion Market Research)에서는 전 세계 DID 시장이 연평균 80% 성장해 2024년 약 34억 5천만 달러(4조 1,500억원)에 달할 것으로 전망한다.

본문 이미지 3


2-1. W3C Decentralized Identifiers

블록체인 분산원장에 기반한 DID는 신원을 증명하는 특정한 주체가 없기 때문에 다양한 곳에서 사용하기 위한 표준화가 필수적이며 W3C에서 이를 진행했다.

본문 이미지 4


DID Syntax

SSI를 실현하기 위해서는 각 개체를 구분하는 식별자가 필요하다. W3C에서 표준화한 탈중앙화 식별자(DID)의 구조는 아래와 같다. DID는 전 세계적으로 구분되는 식별자이다.

본문 이미지 5
  • DID Scheme
    문자열이 DID임을 나타내는 prefix로, 항상 did로 표기된다.

  • DID Method
    DID, DID document가 어떻게 생성되고 업데이트되는지를 정의한 DID Method의 이름이 정의된다. DID 플랫폼마다 부여된 고유의 심볼값이다. 무조건 소문자여야 한다.

  • DID Method-Specific Identifier
    이 DID Method 내에서 사용되는 식별자를 의미하며 DID document가 어디에 있는지를 나타낸다.


DID Document

DID에 의해 식별되는 주체인 DID Subject를 설명하는 JSON 형태의 데이터이다. id, 공개키, 인증정보, 서비스 등을 담고 있으며 개인 정보는 저장되지 않는다. DID Subject는 DID Document를 통해 자신의 신원을 증명할 수 있다.

본문 이미지 6
  • id
    해당 DID Subject에 대한 DID 식별값

  • publicKey
    인터랙션 과정에서 암호학적 증명이 필요한 경우 사용되는 키

  • authentication
    인증 방식에 대한 정보

  • services
    DID subject와의 인터랙션을 위한 Service-endpoints 정보를 확인


Verifiable Data Registry

DID와 DID document를 담기 위한 저장소이다. 즉 데이터를 기록하기 위한 신뢰할 수 있는 블록체인 데이터베이스를 의미한다. Registry가 항상 블록체인일 필요는 없지만 많은 경우에서 블록체인을 기반으로 하고 있다.


DID Resolver

DID를 DID document로 전환하는 역할을 하는 컴포넌트이다.


✔️ DIF (Decentralized Identity Foundation)
전 세계 사용자들이 DID를 쉽게 이용하도록 2017년 만들어진 글로벌 비영리 조직으로 Sovrin, MS, IBM, Master Card 등 수십개의 회원사가 가입되어 있다. Universal Resolver를 오픈소스로 공개하여 DID 생태계의 상호 교환 가능한 기술을 협력 개발하고자 한다.

본문 이미지 7


3. W3C Verifiable Credential Data Model

🪪 Credential
신원 확인에 필요한 정보이다. 주민등록증, 운전면허증 등의 신분증은 물리적인 Credential이라고 할 수 있다.

디지털 환경에서 자신의 신원을 증명하고 Credential의 유효성을 보장하기 위해 W3C Verifiable Credential Data Model(검증 가능한 데이터 모델)을 표준으로 사용한다. 이 모델은 Claim, VC, VP 등으로 구성된다.


3-1. Claim

대상(DID Subject)의 특성에 대한 설명/정보이다. 대상(subject) - 특성(property) - 정보(value) 관계료 표현된다. 개별적인 클레임들이 결합하여 대상에 대한 더 많은 내용을 설명할 수도 있다.

본문 이미지 8

본문 이미지 9


3-2. VC (Verifiable Credential)

VC는 디지털 세계에서 물리적인 Credential과 동일한 역할을 한다. 탈중앙 신원 체계에서는 단순히 Credential로 표현하지 않고 검증가능한(Verifiable) Credential로 표현한다. 기본적으로 주체에 대한 클레임들을 포함하고 있고, 해당 크리덴셜을 해석할 수 있도록 설명해주는 메타데이터와 이 크리덴셜을 검증 가능하도록 만들어주는 암호학적 요소들이 포함된 증명(Proofs)이 포함된다.

본문 이미지 10


3-3. VP (Verifiable Presentation)

자기 주권 신원은 최소한의 정보 공개를 원칙으로 한다. 증명이 필요한 정보들로만 새롭게 구성된 새로운 형식을 검증 가능한 프레젠테이션(VP)이라고 한다. 기존에 가지고 있던 VC를 다양한 방법으로 조합하여 만들 수 있다. 예를 들어 운전면허증과 학생증에 대한 VC를 가지고 있다면, 이를 선택적으로 조합한 VP로 학생 대상으로 할인된 렌터카를 빌리는 서비스에 활용할 수 있다.

본문 이미지 11


3-4. Verifiable Credential 생태계 구조

본문 이미지 12
  • Holder (보유자)
    Issuer에게 VC를 받아서 필요한 정보만 선택적으로 담아 VP 형태로 Verifier에게 보낸다.

  • Issuer (발행자)
    VC를 발행하는 주체로 VC의 유효성을 확인할 수 있는 ID와 스키마 발급내역을 블록체인에 기록한다.

  • Verifier (검증자)
    Holder로부트 VP(Verifiable Presentation)를 받아서 블록체인 데이터(발급 내역, 스키마)와 VP 내용을 확인하고 VP의 진위 여부를 검증한다.

  • Credential
    Issuer가 검증할 수 있는 Claim의 집합이다.

  • Presentation
    Holder가 Credential을 기반으로 Claim 중 일부를 조합하여 새로 생성한 정보이다.


📌 Reference
https://fortheneedy.medium.com/%EC%9E%90%EA%B8%B0-%EC%A3%BC%EA%B6%8C-%EC%8B%A0%EC%9B%90%EA%B3%BC-%EA%B5%AC%EC%84%B1-%EC%9A%94%EC%86%8C-self-sovereign-identity-452df0e36936
https://brunch.co.kr/@metadium/126
http://www.2e.co.kr/news/articleView.html?idxno=301030
https://www.bloter.net/newsView/blt202008050024
https://www.comworld.co.kr/news/articleView.html?idxno=49899
https://comart.io/blog/%ED%83%88%EC%A4%91%EC%95%99%ED%99%94-%EC%8B%A0%EC%9B%90%EC%A6%9D%EB%AA%85-did-w3c-dids
https://medium.com/@adam_14796/understanding-decentralized-ids-dids-839798b91809
https://medium.com/luniverse/did-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98%EB%A5%BC-%ED%8C%8C%ED%97%A4%EC%B3%90-%EB%B3%B4%EC%9E%90-b93357e96c16
https://benny-jung.medium.com/did-%EB%8F%99%ED%96%A5-dif-decentralized-identity-foundation-%EC%86%8C%EA%B0%9Cv-acd5009b2f2c
https://fortheneedy.medium.com/w3c%EC%9D%98-%ED%91%9C%EC%A4%80%EC%9C%BC%EB%A1%9C-did-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-2-6e6db874677c