SigmoiD avatar

clique

sigmoid

Published: 20 Apr 2019 › Updated: 20 Apr 2019clique

clique

Ethereum PoA 합의 알고리즘은 문서가 부족하다.
코드를 분석하면서, 간단한 흐름도를 작성해 보았다.

PoA이기 때문에 authority라는 block producer리스트를 관리한다.
이 리스트는 투표를 통해 업데이트 할수 있고, 초기에 최소 1개의 프로듀서가 설정되어 있어야 한다.

생성자의 입장에서
기본적으로 마이닝 쓰레드는 계속 동작하지만, 내 순서가 아니기때문에 최종 블록이 생성되지 않는다. 내순서가 되면, 블록의 헤더를 생성하게 되는데 부모의 시간 + 나의 시간이 duration보다 작으면 wait을 호출하여 헤더 생성을 잠시 멈추는 방식으로 block duration을 조절한다.
이 후 블록이 Finalize되고 bloadcasting 된다.

수신자의 입장에서는 블록의 서명자가 authority리스트에 있으면 블록을 검증하고 추가한다.
투표내용이 있다면 수집하여 과반수 이상의 투표가 집계되면 인증자 리스트를 업데이트 한다.

도표1.png

Leave clique to:

Written by

Dsrv Labs.

Read more #clique posts


Best Posts From SigmoiD

We have not curated any of sigmoid's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.

More Posts From SigmoiD