9. Consensus in Plasma vs Traditional Blockchain
기존의 합의 기반 블록체인(PoW, PoS, DPoS..)
→ 문제가 생기지 않도록 인센티브 구조를 설계
플라즈마 블록체인(commit - challenge)
→ 문제가 생길 경우, 마지막으로 기록(확정)된 블록 해시를
바탕으로 데이터를 보존
12. Traditional Plasma, Pros and Cons
장점(Pros)
- 트랜잭션 수수료를 없애거나 낮출 수 있다
- 성능을 높일 수 있다
- 데이터 가용성 문제 해결(Plasma Cash 계열)
단점(Cons)
- 단순 전송(토큰)만 사용 가능 → 기능적 제약이 있다
- 플라즈마에서 사용할 스마트 컨트랙트 언어, 개발환경,
도구 등을 다시 만들어야 함
13. Tokamak Plasma’s Point of View
이더리움 체인과 플라즈마체인의 스펙을 동일하게 만들어,
전통 플라즈마의 장점을 살리고 단점을 개선
- 이더리움 커뮤니티 파워를 빌려올 수 있다
- 기존에 발행된 ERC20토큰 활용
- 이미 만들어진 개발툴, 개발방법론
- 이미 동작하는 Dapp등의 포팅
- 다양한 수수료 구조 채택 가능
- 수수료 위임(Stamina)
- 수수료 대출
- Dapp에 특화된 체인으로 커스터마이징
- 고연산, 고성능, 고용량
14. Plasma EVM : Core of Tokamak
2019년 5월
Plasma EVM Latest (Kor/Eng)
2018년 8월
ethresear.ch를 통해서 영문/국문판 공개
2018년 10월
최소기능플라즈마EVM소스 오픈
15. Plasma EVM at
오늘, 지금 (5/27)
- 플라즈마 EVM의 기본적 구조와 데이터 가용성 이슈
내일(5/28)
- 11:15 플라즈마는 어떻게 체인간 글로벌 상태의 일관성을
유지하는가?
- 14:10 플라즈마는 어떻게 데이터 가용성을 확보하는가?
16. Plasma EVM : How does it work?
ORB
플라즈마 체인
루트 체인
(이더리움 메인체인)
#n
요약 기록
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
Tx Root,
State Root
NULL-ADDRESS가
상태변경에 개입
17. Plasma EVM : How does it work?
ORB
NRB
#n
#n+1
요약 기록
요약 기록
Tx Root,
State Root
유저들의
트랜잭션이
담기는 블록
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
ORB
플라즈마 체인
루트 체인
(이더리움 메인체인)
#n
요약 기록
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
Tx Root,
State Root
NULL-ADDRESS가
상태변경에 개입
18. Plasma EVM : How does it work?
ORB
NRB
ORB
#n
#n+1
#n+2
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
19. Plasma EVM : How does it work?
ORB
NRB
ORB
NRB
#n
#n+1
#n+2
#n+3
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
20. Plasma EVM : How does it work?
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
21. Plasma EVM : Double Spending & Exit
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
double
spending?
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
22. Plasma EVM : Double Spending & Exit
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
double
spending?
탈출(exit)
Tx Root,
State Root
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
23. Plasma EVM : Computation Challenge
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
24. Plasma EVM : Computation Challenge
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root
Wrong
State Transition
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
25. Plasma EVM : Computation Challenge
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root
challenge
Wrong
State Transition
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
26. Plasma EVM : Data Availability
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
27. Plasma EVM : Data Availability
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root
Block
Withhold
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
28. Plasma EVM : Computation Challenge
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root?
challenge?
Block
Withhold
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
29. Plasma EVM : Computation Challenge
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root?
challenge?
Block
Withhold
tx가 없다..
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
30. Plasma EVM : Computation Challenge
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root?
Block
Withhold
exit?
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
31. Plasma EVM : Computation Challenge
ORB
NRB
ORB
NRB
ORB
#n
#n+1
#n+2
#n+3
#n+4
요약 기록
요약 기록
요약 기록
요약 기록
요약 기록
Tx Root,
State Root
Tx Root,
State Root?
Block
Withhold
exit?
non-
atomic
transaction/
state
ORB
NRB
루트체인에서
정의한 상태를
강제하는 블록
플라즈마 체인
자체적으로 생긴
트랜잭션이 담긴
블록
플라즈마 체인
루트 체인
(이더리움 메인체인)
37. Balance
up-front cost
= value + gasLimit*gasPrice
value
value cost
= value
refunded
gas-up-front cost
= gasLimit*gasPrice
gasUsed *
gasPrice
실제 잔액 소모량
38. Implementations : go-ethereum, py-evm
구현 문서
https://hackmd.io/s/HJrS5IxIm
블로그
https://medium.com/onther-tech/transaction-fee-gas-delegated-ex
ecution-model-in-py-evm-f2d57cea1008
39.
40. Economic Model and its Applications
3가지 어젠더
- Transaction Fee(트랜잭션 수수료)
- Challenge and Chain Deposit(챌린지와 체인디파짓)
- Currency and Issuence : Seignorage(토큰과 발행모델 :
시뇨리지)
41. Transaction Fee - Fixed Price and MGP
- 고정 가스 가격(Fixed Gas Price)
- 트랜잭션이 먼저 마이닝되기 위해서 높은 가스를 지불할
필요가 없음
- 유저들의 UX개선(가스가격을 신경쓸 필요가 없음)
- first price auction의 문제
- 최소 가스 가격(Minimum Gas Price)
42. Chain Deposit : Prize and Punishment
- 플라즈마 체인을 열기 위해서 메인체인에 자산을 예치
- 체인을 올바르지 못하게 운영하면 예치금은 상금이 됨
예치금 예치금
예치금 예치금