본문 바로가기
개발 학습/블록체인

S4: DID / SSI

by StelthPark 2021. 12. 2.

DID란 데이터의 주권이 개개인에게 있고, 필요할때 중앙화된 시스템을 거치지 않고 증명하는 기술이다.

SSI는 DID를 이용해 중앙화된 인증방식이 아닌 탈중앙화 된 인증방식으로 신원증명권한이 자신이 갖도록하는 것이다.

 

W3C는 플랫폼기업이 사용자의 데이터를 중앙화하여 가지게 되는것을 서비스의 연동이 불가능하게 때문이라고 했다.

데이터 탈중앙의 가장 중요한 부분은 데이터연동이다. 

 

중앙화 되지 않은 저장소에 데이터를 저정하는데는 데이터의 무결성과 보안성이 중요해졌고 블록체인을 기술을 활용하기 시작했다.

 

DID문서는 특정DID가 어떻게 사용하는지에 대해 설명해놓은 문서이다. 여기에는 인증정보가 들어가 있으며

 

DID 형식은

did는 DID스키마를 따를것을 나타낸다.

example은 did를 어떤 메소드로 처리할지 메소드이름이다.

12345~는 did메소드안에서 사용되는 고유아이디이다. 이 아이디는 DID문서가 어디있는지 알려준다.

 

DID 문서 내용은

  • id : 이 did문서를 설명하고 있는 아이디입니다.
  • 공개키 : 이 아이디와 관련된 공개키 리스트입니다.
  • 인증정보 : 이 아이디의 소유권을 증명하기 위한 정보입니다.
  • 서비스 : 이 아이디와 상호작용이 가능한 서비스들의 리스트입니다.

어떤 개인정보도 저장되지 않는다.

 

 

검증순서

Issuer

  • Issuer는 holder에 대한 검증가능한 크리덴셜(VC)을 발급하여 전달합니다.
  • VC의 유효성을 확인할 수 있는 ID(Identifiers)와 Schema(스키마)의 발급내역을 블록체인에 기록합니다.

Holder

  • Issuer에게 VC를 받고, 자신이 증명서를 받았다는 내용과 스키마정보 가져옵니다.
  • 검증자가 필요로 하는 정보를 담아 VP형태로 보냅니다.
  • Issuer에게 받을 때는 VC 형태, Verifier에게 보낼 때는 VP형태입니다.

Verifier

  • Verifier는 Holder에게 받은 VP 내용 확인합니다.
    • 블록체인에서 다음 내용을 확인합니다.
      • 발급 내역
      • Schema(스키마)
    • VP내용을 확인합니다.
      • Issuer DID
      • Holder DID
  • 위의 내용들을 검증하여, VP내용의 진위여부를 검증합니다.

 

'개발 학습 > 블록체인' 카테고리의 다른 글

S4: 다른컨트랙트 와 상호작용하기  (0) 2021.12.02
S4: public/private/internal/external  (0) 2021.12.02
S4: KIP17 ganache와 baobab에 배포  (0) 2021.12.01
S4: mintNFT함수 (NFT 발행)  (0) 2021.11.30
S4: ERC-721 함수  (0) 2021.11.30

댓글