W3C HTML5 컨퍼런스 2020에 대한 정보는 다음에서 확인 가능합니다.
- https://www.openbooth.space/exhibition/html5
SSI Meetup Korea에서 번역 활동 참여 경험 및 DID 관련 프로젝트 진행에 대한 경험을 살려 W3C HTML5 컨퍼런스에서 블록체인 상의 DID 구현에 대한 발표를 하였습니다.
2. whoami
• 오효근
https://www.benjioh5.com
• KITRI Best of the Best 4기, 취약점 분석 트랙 수료
• SSIMeetup Korea, W3C DID v1.0 문서 번역 참여
https://ssimeetupkorea.github.io/did-core/
• 블록체인 스타트업 SCVSoft (2018.2 ~)
4. Blockchain in real world
• 타원곡선 암호, keccak3 (SHA-3), 머클 패트리샤 트리, DHT ...
• 영지식증명 (zk-snark, zk-stark ...)
• Layer 2 스케일링, zkrollup, zksync, PLASMA ...
• 분산처리, 분산 파일 시스템, P2P 네트워크, pubsub ...
• 탈중앙화 신원증명 (DID)
• Web3, IPFS, DAT, Smart contract ...
5. Blockchain in 30 sec
• Transaction (Tx) : Git처럼 데이터를 Hash 기반으로 형상 관리
• P2P : Torrent처럼 Tx 데이터를 공유
• VM : Gameboy 에뮬레이터와 동급 수준의 VM (EVM) 을 통한 Tx 처리
• Block : 유효한 Tx들을 담을 블록을 주기적으로 생성 후 P2P로 전파
• 합의: 최종적으로 전 세계의 블록체인 노드들이 하나의 신규 State로 업데이트
6. Blockchain in 5 min
Git
https://git-scm.com/book/ko/v2/Git%EC%9D%98-%EB%82%B4%EB%B6%80-Git-%EA%B0%9C%EC%B2%B4
이더리움
https://blog.ethereum.org/2015/11/15/merkling-in-ethereum/
7. Blockchain in 5 min
Torrent 이더리움
https://blog.ethereum.org/2015/04/02/implementing-vitaliks-vision/
21. 이더리움과 Smart contract
• Q : 상호 작용한 이더리움 주소, 그리고 컨트랙트는 어떻게 짜여져있는가?
• A : Javascript에 Ethereum 기능을 확장한 Solidity라는 언어를 사용해서 만든
코드와 상호작용한다.
https://etherscan.io/address/
0x6b175474e89094c44da98b954eedeac495271d0f#code
22. 이더리움과 Smart contract
• Q : 상호 작용한 이더리움 주소, 그리고 컨트랙트는 어떻게 짜여져있는가?
• A : Javascript에 Ethereum 기능을 확장한 Solidity라는 언어를 사용해서 만든
코드와 상호작용한다.
https://etherscan.io/address/
0x6b175474e89094c44da98b954eedeac495271d0f#code
23. 이더리움과 Smart contract
• Q : 상호 작용한 이더리움 주소, 그리고 컨트랙트는 어떻게 짜여져있는가?
• A : Javascript에 Ethereum 기능을 확장한 Solidity라는 언어를 사용해서 만든
코드와 상호작용한다.
https://etherscan.io/address/
0x6b175474e89094c44da98b954eedeac495271d0f#code
24. 이더리움과 Smart contract
• Q : 상호 작용한 이더리움 주소, 그리고 컨트랙트는 어떻게 짜여져있는가?
• A : Javascript에 Ethereum 기능을 확장한 Solidity라는 언어를 사용해서 만든
코드와 상호작용한다.
https://etherscan.io/address/
0x6b175474e89094c44da98b954eedeac495271d0f#code
25. 이더리움과 Smart contract
• Q : 상호 작용한 이더리움 주소, 그리고 컨트랙트는 어떻게 짜여져있는가?
• A : Javascript에 Ethereum 기능을 확장한 Solidity라는 언어를 사용해서 만든
코드와 상호작용한다.
https://etherscan.io/address/
0x6b175474e89094c44da98b954eedeac495271d0f#code
26. 이더리움에 개인정보 저장하기
• ERC-725, 735 관련 표준이 제정되어 작업 중
• uPort 등의 프로젝트 등 블록체인 기반 로그인 프로젝트 등 생성
• W3C DIDs v1.0 등 블록체인에 데이터를 저장하기 위한 표준이 제정
• 다양한 브라우저/모바일 지갑이 인증/서명/트랜젝션 생성 기능 지원
27. 이더리움에 개인정보 저장하기
• ERC-725, 735 관련 표준이 제정되어 작업 중
• uPort 등의 프로젝트 등 블록체인 기반 로그인 프로젝트 등 생성
• W3C DIDs v1.0 등 블록체인에 데이터를 저장하기 위한 표준이 제정
• 다양한 브라우저/모바일 지갑이 인증/서명/트랜젝션 생성 기능 지원
28. 이더리움에 개인정보 저장하기
• ERC-725, 735 관련 표준이 제정되어 작업 중
• uPort 등의 프로젝트 등 블록체인 기반 로그인 프로젝트 등 생성
• W3C DIDs v1.0 등 블록체인에 데이터를 저장하기 위한 표준이 제정
• 다양한 브라우저/모바일 지갑이 인증/서명/트랜젝션 생성 기능 지원
https://github.com/decentralized-identity/ethr-did-resolver
29. 한계 및 개선점 - 간편 로그인
https://github.com/MichalSzorad/react-social-login-buttons https://w3c.github.io/did-spec-registries/#did-methods
30. 한계 및 개선점 - 간편 로그인
https://github.com/MichalSzorad/react-social-login-buttons https://w3c.github.io/did-spec-registries/#did-methods
메인넷 1개 == DID registries 1개 (이상)
31. 한계 및 개선점 - 간편 로그인
https://www.dego.financehttps://github.com/MichalSzorad/react-social-login-buttons
이더리움 지갑 서비스만 20종이 넘어감 =>
32. 한계 및 개선점 - 표준화 진행 중
• 이기종 블록체인간 호환성 및 라이브러리간 호환성 부재
• 블록체인 Wallet(지갑) 표준 규격 미존재
• DID Silo간 데이터 동기화 및 공유 규격 부재 (W3C DIDs)
• W3C DID JSON-LD 스키마 규격이 모든 사용례를 충족 시키지 못 함
• (그 외에도 수 많은 문제들)
33. 블록체인의 미래?
• IPFS, DAT 등의 분산 스토리지와의 매끄러운 연동 -> P2P 기반의 Web 환경
• 타원곡선암호에 기반한 전자 서명 및 암호화 -> 더 나은 (웹) 보안 제공
• 경량 노드의 보급 및 라이브러리 성숙화 -> 블록체인 기반 무신뢰 서비스
• 표준화, 규격 통일, wasm 도입, 3rd party 서비스 증가 -> 개선된 유저 경험
• 이기종 블록체인간 연결을 위한 인터체인 도입 등등 더 많은 시도들 ...