확률적 지분증명 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
1번째 줄: 1번째 줄:
 
[[파일:로커스체인 글자.png|썸네일|300픽셀|'''[[로커스체인]]'''(Locus Chain)]]
 
[[파일:로커스체인 글자.png|썸네일|300픽셀|'''[[로커스체인]]'''(Locus Chain)]]
  
'''확률적 지분증명'''<!--확률적지분증명, 확률적 지분 증명-->(SPoS; Stochastic PoS; Stochastic Proof of Stake)이란 합의에 참여할 커미티를 [[랜덤]]하게 선출하되 코인 보유량 등에 비례하여 선출될 확률이 높아지는 [[합의 알고리즘]]이다. 이것은 [[알고랜드]](Algorand)의 무허가형 순수지분증명방식과 유사한 알고리즘으로서 '실사용 암호화폐'를 목표로 하고 있는 '''[[로커스체인]]'''(Locus Chain)이 채택한 방식이다. 합의에 참여할 수 있는 노드를 미리 정하는 [[이오스]](EOS)의 [[위임지분증명]]과 달리 로커스체인의 확률적 지분증명은 코인 보유량, 최근 투표 참여 횟수, 네트워크 참여도 등에 따라 매 [[라운드]]마다 새로운 커미티를 랜덤하게 선출하기 때문에 로커스체인은 이것을 통해 높은 수준의 탈중앙화를 이룰 수 있다고 주장한다. 합의에 참여할 노드(프로포저, 밸리데이터)를 특정하거나 미리 예측할 수 없으므로 악의적 공격에 의한 조작이 어려워져 합의결과의 공정성과 네트워크의 안정성(security)이 확보되는 장점이 있다.
+
'''확률적 지분증명'''<!--확률적지분증명, 확률적 지분 증명-->(SPoS; Stochastic PoS; Stochastic Proof of Stake)이란 합의에 참여할 커미티를 랜덤하게 선출하되 코인 보유량 등에 비례하여 선출될 확률이 높아지는 [[합의 알고리즘]]이다. 이것은 [[알고랜드]](Algorand)의 무허가형 순수지분증명방식과 유사한 알고리즘으로서 '실사용 암호화폐'를 목표로 하고 있는 '''[[로커스체인]]'''(Locus Chain)이 채택한 방식으로 알려져 있다. 합의에 참여할 수 있는 노드를 미리 정하는 [[이오스]]의 [[위임지분증명]]과 달리 로커스체인의 확률적 지분증명은 코인 보유량, 최근 투표 참여 횟수, 네트워크 참여도 등에 따라 매 라운드마다 새로운 커미티를 랜덤하게 선출하기 때문에 로커스체인은 이것을 통해 높은 수준의 탈중앙화를 이룰 수 있다고 주장한다. 합의에 참여할 노드(프로포저, 밸리데이터)를 특정하거나 미리 예측할 수 없으므로 악의적 공격에 의한 조작이 어려워져 합의결과의 공정성과 네트워크의 안정성(security)이 확보되는 장점이 있다.
  
 
== 개요 ==
 
== 개요 ==
10번째 줄: 10번째 줄:
  
 
=== 지분량 계산 ===
 
=== 지분량 계산 ===
로커스체인은 코인 보유량뿐만이 아니라 최근 투표 참여 횟수, 네트워크 참여도(온라인 시간) 등에 기반해 지분량을 측정한다. 지분량이 높은 노드가 시스템 유지에 높은 기여를 하는 구조인데 로커스체인의 어카운트는 자기 지분량을 다른 어카운트에 위탁(delegate)할 수 있다. 이를 통해, 네트워크에 항상 접속하지 않는 어카운트도 자신의 지분량을 유효하게 활용할 수 있다. 노드의 지분량은 해당 노드의 대표 어카운트가 가진 자기 지분량과 다른 어카운트로부터 위탁받은 지분량의 합계가 된다.
+
로커스체인은 코인 보유량 뿐만이 아니라 최근 투표 참여 횟수, 네트워크 참여도(온라인 시간) 등에 기반해 지분량을 측정한다. 지분량이 높은 노드가 시스템 유지에 높은 기여를 하는 구조인데 로커스체인의 어카운트는 자기 지분량을 다른 어카운트에 위탁(delegate)할 수 있다. 이를 통해, 네트워크에 항상 접속하지 않는 어카운트도 자신의 지분량을 유효하게 활용할 수 있다. 노드의 지분량은 해당 노드의 대표 어카운트가 가진 자기 지분량과 다른 어카운트로부터 위탁받은 지분량의 합계가 된다.
  
 
=== 선출 방식 ===
 
=== 선출 방식 ===
20번째 줄: 20번째 줄:
 
* '''상태 선택 투표 단계''': 라운드 상태 제안 단계가 수행되면 샤드 내에는 라운드 상태 제안 커미티 만큼의 상태 제안 패킷이 발생한다. 라운드 상태 투표는 이 제안 상태 중 하나를 선택하여 고르는 단계이다. 투표 노드가 제안을 선택하면, 선택된 제안을 사용하여 선택 투표 패킷을 구성, 서명하여 브로드캐스트한다.
 
* '''상태 선택 투표 단계''': 라운드 상태 제안 단계가 수행되면 샤드 내에는 라운드 상태 제안 커미티 만큼의 상태 제안 패킷이 발생한다. 라운드 상태 투표는 이 제안 상태 중 하나를 선택하여 고르는 단계이다. 투표 노드가 제안을 선택하면, 선택된 제안을 사용하여 선택 투표 패킷을 구성, 서명하여 브로드캐스트한다.
  
* '''상태 확정 투표 단계''': 투표인단 커미티는 각 투표 노드가 발행한 투표 패킷을 수신하여, 각 제안에 대한 투표수를 집계한다. 만약 어떤 한 상태 해쉬값이 투표 노드의 2/3+1이상의 투표수를 모은 경우, 그 상태 해쉬값은 해당 라운드의 최종 상태로서 확정되었다 볼 수 있다. 각 커미티 노드는 투표 패킷을 수신하여, 한 상태 해쉬값이 전체 투표노드 2/3+1이상의 투표수를 수신한 순간 해당 제안을 확정으로 판단, 이에 대해 다시 서명을 실시하여 확정 투표 패킷을 구성, 공유한다. 이 확정된 투표 정보에는 참여한 여러 투표 노드의 서명이 [[슈노르서명]]<!--슈노르 서명-->(Schnorr Signiture) 등의 방법으로 복수 부여되게 된다. 샤드 내의 모든 노드는 충분한 숫자의 커미티 노드가 서명한 확정된 투표 정보를 수신하면, 해당 제안이 확정된것으로 보고 합의를 완결짓는다.
+
* '''상태 확정 투표 단계''': 투표인단 커미티는 각 투표 노드가 발행한 투표 패킷을 수신하여, 각 제안에 대한 투표수를 집계한다. 만약 어떤 한 상태 해쉬값이 투표 노드의 2/3+1이상의 투표수를 모은 경우, 그 상태 해쉬값은 해당 라운드의 최종 상태로서 확정되었다 볼 수 있다. 각 커미티 노드는 투표 패킷을 수신하여, 한 상태 해쉬값이 전체 투표노드 2/3+1이상의 투표수를 수신한 순간 해당 제안을 확정으로 판단, 이에 대해 다시 서명을 실시하여 확정 투표 패킷을 구성, 공유한다. 이 확정된 투표 정보에는 참여한 여러 투표 노드의 서명이 [[슈노르]](Schnorr) 서명 등의 방법으로 복수 부여되게 된다. 샤드 내의 모든 노드는 충분한 숫자의 커미티 노드가 서명한 확정된 투표 정보를 수신하면, 해당 제안이 확정된것으로 보고 합의를 완결짓는다.
  
 
{{각주}}
 
{{각주}}

해시넷에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 해시넷:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)