on
21.09.18 DPoS 위임 지분 증명
21.09.18 DPoS 위임 지분 증명
DPoS Delegated Proof of Stake 위임 지분 증명 합의 알고리즘
DPoS 체인: 이오스, 아크,
블록생성과정
라운드로빈* 방식으로 블록 생성함.
1. 일반 노드에서 N개의 블록 생성 노드 (Block Producer, 이하 BP)를 선출한다.
2. 임의의 i번째 BP가 i번째 블록을 서명한다. (i = 1; i <=N; i++)
까지 한 라운드이며, BP의 2/3가 투표하면 블록 하나가 확정된다.
DPoS 체인 별 N 수
EOS: 21
BitShares: 101
Steemit: 21
Lisk: 101
Ark: 51
PoS와의 차이점
PoS: 일정 기준의 지분을 가지고 있는 일반 노드가 모두 블록 생성 권한 즉, 투표권이 생긴다.
DPoS: 일정 기준의 지분을 가지고 있는 일반 노드가 블록 생성 노드를 선출하는 투표권이 생기고
선출된 블록 생성 노드는 차례대로 블록에 투표를 한다.
*라운드 로빈 방식
CPU 스케쥴링 알고리즘으로 한 프로세스가 할당받은 시간동안 작업을 하다가 끝내지 못하면 준비 큐의 맨 뒤로 가서 차례를 기다리는 방식으로 프로세스들이 작업을 완료할 때까지 계속 순환한다. (해시넷 참고)
이 라운드 로빈 방식을 적용한 블록 생성 과정으로 내가 이해한 바는 다음과 같다.
블록 투표가 완료되지 않은 경우(i≠N), N개의 노드 중 i번째 노드의 블록 투표가 진행 중일 때
시간을 할당하고 이 안에 투표를 끝내지 못하면 다른 노드들 중 i번째 블록 투표를 진행 완료한 다음
즉, i+1번째 노드의 투표로 진행 순서가 넘어가게 되는 형식인 것 같다!
아니면 댓글 고고
참고문서 링크
DPoS 설명
https://medium.com/loom-network-korean/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EA%B8%B0%EB%B3%B8-%EC%9B%90%EB%A6%AC-%EC%9D%B4%ED%95%B4-%EC%A0%9C3%EB%B6%80-%EC%9C%84%EC%9E%84-%EC%A7%80%EB%B6%84-%EC%A6%9D%EB%AA%85-dpos-4fc585e42b9f
라운드 로빈
http://wiki.hash.kr/index.php/%EB%9D%BC%EC%9A%B4%EB%93%9C_%EB%A1%9C%EB%B9%88
DPoS 백서에 대한 이오스 개발자 댄의 추가 글
https://steemit.com/dpos/@dantheman/dpos-consensus-algorithm-this-missing-white-paper
from http://jemerald.tistory.com/79 by ccl(A) rewrite - 2021-09-19 02:27:00