[Blockchain] 검증가능한 크리덴셜 (VC, Verifiable Credential)
VC / Credential / Claim / VP
VC (Verifiable Credential, 검증가능한 크리덴셜)
- VC를 만든 목적은 디지털 세계에서의 크리덴셜이 신분증과 동일한 정보를 제공하려는 것이다
👉 핵심은 검증가능해야 한다는 점
Credential (크리덴셜)
Credential(크리덴셜)은 신원 확인에 필요한 정보 👉 ex) 주민등록증 / 운전면허 / 여권 등
신분증의 주체를 식별할 수 있는 정보 👉 (이름, 사진, 주민등록번호 등)
신분증의 발급기관 정보 👉 (행정안전부, 경찰청, 외교부 등)
발급기관이 보증하는 정보 👉 (생년월일, 면허, 국적 등)
신분증의 용도 👉 (주민등록증, 운전면허증, 여권 등)
신분증의 제약조건 정보 👉 (유효기관 등)
VC (Verifiable Credential) 구성요소
-
Credential Metadata 👉 Credential을 해석할 수 있도록 설명해주는 메타데이터
-
Claim(s) 👉 주체에 대한 Claim이 포함
-
Proofs 👉 Credential을 검증가능하도록 만드는 암호학적 요소들이 포함된 증명
Claim (발행)
- 클레임은 Credential의 개인 정보 데이터(각각의 단위 데이터) 이다
- 클레임은
주체 - 속성 값
의 구조를 가진다클레임은 연결해서 정보를 구성할 수 있다
👉대상(subject) - 특성(property) - 정보(value)
관계로 표현된다👉 개별적인 클레임들이 결합하여 대상에 대한 더 많은 내용을 설명할수 있다
VP (Verifiable Presentation, 검증가능한 프레젠테이션)
-
VP는 여러 개의 VC를 한꺼번에 넘기는 방법이다
-
인증서를 원하는 정보만 선택적으로 공개할 수 있다
편의점에서 맥주를 구매한다고 할 때 신분증에는 19세이상, 이름, 주소 등 다양한 개인정보가 들어 있음, 자신의 정보가 노출되어 위험해질 수 있는데, VP를 통해 선택적으로 19세이상인 것의 진위여부만 선택적으로 공개할 수 있다
VC 생태계 (Ecosystem)
-
Holder (보유자) Issuer에게 VC를 받아서 필요한 정보만 선택적으로 담아 VP 형태로 Verifier에게 보낸다
-
Issuer (발행자) VC를 발행하는 주체로 VC의 유효성을 확인할 수 있는 ID와 스키마 발급내역을 블록체인에 기록한다
-
Verifier (검증자) Holder 로부터 VP 를 받아서 블록체인 데이터 (발급 내역 / 스키마)와 VP 내용을 확인하고 VP의 진위 여부를 검증한다
-
Credential Issuer가 검증할 수 있는 Claim의 집합이다
-
Presentation Holder가 Credential을 기반으로 Claim 중 일부를 조합하여 새로 생성한 정보이다
참고 했던 사이트 🖥
https://velog.io/@yooni/Blockchain-SSI-DID