검증인
검증인(validator)은 블록체인에서 같은 LAN을 쓰는 컴퓨터와 주변 기기들을 통틀어 이르는 노드(node)와 같은 의미이다. 퍼블릭 블록체인은 누구나 검증인이 되어 네트워크 유지 및 관리에 참여할 수 있다. 블록체인에서 이뤄진 모든 거래 정보를 전부 저장하는 검증인은 풀노드라고 한다.
개요
전형적인 비잔틴 장애 허용 알고리즘들(BFT: Byzantine fault-tolerant algorithms)에서는 각 노드가 동일한 가중치를 갖는다. 텐더민트에서는 노드들이 '0이상'의 투표권(voting power)을 가지며, 양(+)의 투표권을 갖는 노드들을 검증인(validators)라고 부른다. 검증인들은 다음 블록에 동의하는 암호서명(cryptographic signature), 즉 투표(vote)를 전파(broadcast)함으로써 합의 프로토콜에 참여한다. 검증인(validator)들의 투표권은 제네시스(genesis) 당시에 결정되거나 블록체인에 의해 결정론적으로(deterministically) 변경되기도 한다. 예를 들어, 코스모스 허브와 같은 지분증명 애플리케이션에서는 투표권이 담보물로서 본딩된(bonded) 지분 토큰(staking token)의 양에 의해 결정될 수도 있다.[1]
코스모스에서 검증인들은 풀노드를 운영하며 개인 키(private key)로 서명된 암호화 서명으로 투표를 진행하며, 이 표를 네트워크에 전파하여 합의 절차에 참여하게 된다. 검증인들은 새로운 블록을 블록체인에 기록하고, 역할에 대한 보상을 받게된다. 또한, 검증인은 프로포저에 대한 투표를 하며, 거버넌스 절차에 참여한다. 검증인들의 순위는 위임 받은 코인 수량에 따라서 정해진다.[2] 검증인들은 트랜잭션을 검증(validate), 중계(relay), 제안(propose), 확인(verify), 그리고 완결(finalize)하는 활동을 통해 코스모스 허브를 안전하게 지킨다.[3]
검증인에 대한 처벌
고의든 아니든 검증인이 정해진 프로토콜을 어길 때에는, 처벌이 주어져야 한다. 동일한 높이(height) 및 라운드에서의 이중 서명이나 '텐더민트 합의 프로토콜의 규칙(prevote-the-lock)'의 위반 같은 행위는 증거를 통해 즉시 인정된다. 이 경우, 검증인은 유효한 지위(good standing)를 상실하게 되며, 본딩된 아톰과 '지급준비금 풀(reserve pool)'내 토큰의 비례분 즉, 통칭하여 '지분(stake)'을 상당수 잃을 것이다.
때로는 지역 네트워크 단절, 전원 장애나 그 밖의 이유들로 인해 검증인이 단절될 수 있을 것이다. 만일 '과거 어느 시점의 밸리데이터 타임아웃 윈도우(Validator Timeout Window) 블록'에서 검증인의 커밋 투표가 이루어지지 않은 횟수가 '밸리데이터 타임아웃 최대 결여(Validator Timeout Max Absent)' 횟수 이상인 경우, 해당 검증인은 비활성화 되고 지분의 '밸리데이터 타임아웃 패널티(Validator Timeout Penalty, 디폴트 1%)'만큼 잃게 될 것이다.
어떤 악의적 행위는 블록체인에 명확한 증거를 남기지 않을 수 있다. 이런 경우, 압도적 다수의 합의가 존재한다면, 검증인들이 외부에서 합의한 뒤 악의적인 검증인을 강제로 타임아웃(timeout) 시킬 수 있다. '투표권 ⅓+'이 악의적으로 연합하여 코스모스를 중단시키거나, 이들이 악의적 행동의 증거가 블록체인으로 들어오지 않게 검열하여 삭제하는 경우, 허브는 하드포크를 통한 블록재조정(reorg) 프로포저로 복구(recover)되어야 한다.[1]
검증인이 되는 방법
트워크에 참여하는 모든 유저는 create-validator
트랜잭션을 통해 본인이 검증인이 될 의사를 표시할 수 있다. 해당 트랜잭션에는 다음과 같은 값이 포함되어야 한다.
- 검증인의 공개 키(public key) : 공개 키와 연관된 개인 키는 prevote와 precommit을 서명하는데 사용된다. 이런 방식을 통해서 검증인은 유동적 자금이 있는 계정과 검증용 계정을 따로 관리할 수 있다.
- 검증인 주소 : 애플리케이션 단 주소이다. 이 주소는 공개적으로 검증인의 신원을 확인할때 이용된다. 해당 주소와 연관되어있는 개인 키는 본딩, 언본딩, 보상 수령, 거버넌스 참여 등에서 이용된다.
- 검증인 이름(moniker)
- 검증인 웹사이트(선택 사항)
- 검증인 설명(선택 사항)
- 최초 커미션 : 블록 검증으로 받는 보상에서 위임인들 지불되기 전 삭감되는 수수료
- 최대 커미션 : 해당 검증인이 설정한 최대 수수료
- 최소 셀프본딩 수량 : 검증인이 최소로 본딩해야 하는 아톰의 수량이다. 만약 해당 검증인의 총 위임 수량이 이 값보다 떨어지는 경우, 스테이킹 풀 전체는 언본딩 된다.
- 최초 셀프본딩 수량 : 최초로 검증인이 자체 스테이킹 하는 수량이다.
이제 검증인이 만들어지면, 위임인들은 해당 검증인에게 아톰을 위임하며 해당 스테이킹 풀의 수량을 늘려갈 수 있다. 특정 주소의 총 스테이크는 자체 스테이킹 물량과 위임 받은 스테이킹 물량의 합이다.
검증인으로 참가할 의사를 밝힌 모든 검증인 중 스테이킹 수량이 가장 많은 상위 100개의 검증인은 '활성화된 검증인'으로 블록생성에 참여할 수 있게 된다. 상위 100 순위 밖으로 나가게 되는 검증인은 본딩된(bonded) 검증인이 되며 검증인 권한을 알게된다. 이때 해당 검증인의 물량은 언본딩 모드로 들어가면서 서서히 언본딩 된다.[2]
검증인 수의 제한
비트코인 등의 작업증명 블록체인들과는 달리, 텐더민트 블록체인은 검증인의 수가 많아질수록 통신의 복잡도가 증가하여 속도가 느려진다. 물론 충분한 검증인들을 통해 블록체인의 전세계 분산, 매우 빠른 이체확인 속도를 제공할 수 있다. 또한 대역폭, 저장공간 및 병렬 컴퓨팅 용량이 증가함에 따라 장래에 더욱 많은 검증인들을 지원할 수 있을 것이다. 제네시스 시에는 최대 검증인 수가 100명으로 설정될 것이고, 이 수치는 10년 동안 13%의 비율로 증가하여 최종적으로는 총 300명의 검증인을 가지게 될 것이다.
- 0년 : 100명
- 1년 : 113명
- 2년 : 127명
- 3년 : 144명
- 4년 : 163명
- 5년 : 184명
- 6년 : 208명
- 7년 : 235명
- 8년 : 265명
- 9년 : 300명
- 10년 : 300명
코스모스
코스모스는 독립 병렬 블록체인들의 네트워크이며, 해당 블록체인들은 각기 텐더민트와 같은 전형적인 BFT 합의 알고리즘에 기반한다. 코스모스의 최초 블록체인이 곧 코스모스 허브가 된다. 코스모스 허브는 블록체인 간 통신(IBC) 프로토콜을 통해 다른 많은 블록체인들(즉, 존들)과 연결된다. 코스모스 허브는 수많은 유형의 토큰을 추적하고, 연결된 각 존의 토큰 총 수를 기록한다. 이 아키텍처는 어플리케이션 상호운용성, 확장성 그리고 무결절 업그레이드 가능성(seamless upgradability)을 포함한 블록체인이 직면한 많은 문제들을 해결한다. 예를 들면, 비트코인(Bitcoind), 고-이더리움(Go-Ethereum), 크립토노트(CryptoNote), 지캐시(ZCash) 등을 포함한 임의의 블록체인 시스템으로부터 파생된 존들이 코스모스 허브에 연결될 수 있다. 이러한 존들을 통해 코스모스는 전역 이체(global transaction) 요구를 충족시킬 때까지 무한히 확장할 수 있다. 그리고 존들은 탈중앙화 거래소(distributed exchange)에도 매우 적합하며, 실제로 지원될 것이다. 코스모스는 단일 분산 원장에 불과한 것이 아니며, 코스모스 허브도 폐쇄형 플랫폼(walled garden, 울타리 친 정원)이 아니다. 오히려 코스모스는 미래 금융 시스템의 새로운 기초가 될 수 있는 개방형 분산원장 네트워크를 위한 프로토콜이며, 암호학 원리, 잘 설계된 경제(sound economics), 합의 이론, 투명성, 책임(accountability) 등의 원칙에 기반하고 있다.[4]
각주
- ↑ 1.0 1.1 DannyKim, 〈Dpos에서 검증자나 증인을 박탈하거나 처벌하는 규정이 있나요?〉, 《aha》, 2019-04-04
- ↑ 2.0 2.1 〈검증인 FAQ〉, 《코스모스 허브》
- ↑ CosmosKorea, 〈코스모스 검증인 경제학〉, 《블록체인허브》, 2018-06-29
- ↑ Jae Kwon, Ethan Buchman, 〈코스모스 분산원장 네트워크〉, 《구글 문서》
참고자료
- 〈검증인 FAQ〉, 《코스모스 허브》
- Blocknoe, 〈블록체인 이란?(blockchain), 51%공격〉, 《티스토리》, 2018-05-16
- CosmosKorea, 〈코스모스 검증인 경제학〉, 《블록체인허브》, 2018-06-29
- Jae Kwon, Ethan Buchman, 〈코스모스 분산원장 네트워크〉, 《구글 문서》
같이 보기