왜 EOSIO 투표에 30 지분 가중치가 부과된 승인투표제를 쓰는가?

Tara S Hong
EOSYS
Published in
6 min readMay 2, 2018

Translated Contents

원문: https://medium.com/@thomas.cox_39839/why-30-stake-weighted-approval-votes-for-eosio-1402b994bf20

왜 EOSIO 투표에 30 지분 가중치가 부과된 승인투표제를 쓰는가?

많은 사람들이 EOSIO 소프트웨어의 기본 투표 방식이 승인투표제가 아닌 다른 방식이어야 하는 이유에 대해 내게 연락 해왔다.

자세히 말하자면, EOSIO 소프트웨어는 블록 프로듀서(BP)를 뽑을 때 기본값으로 각각의 어카운트에 30개의 승인투표권을 준다.

N명의 후보자가 있으면 투표자는 자기가 뽑고 싶은 BP들을 최대 30명까지 선택할 수 있다.

시스템은 가장 많은 투표를 받은 상위 21명의 후보자들을 선택해 액티브 블록 프로듀서(BP)로 만들고 그 다음으로 많은 표를 받은 49명의 후보자들은 스탠바이 블록 프로듀서가 된다. (다시 말하지만 이것은 기본값이고 설정을 변경할 수 있다.)

71번째 이하의 후보자들은 시스템이 BP 에서 제외시킨다.

또한, 각각의 계정은 계정이 보유한 토큰의 갯수만큼의 파워로 투표할 수 있다.

따라서 100개의 토큰이 있는 앨리스는 자신의 맘에 드는 30명의 후보들에게 100의 파워로 투표권을 행사할 수 있고 50개의 토큰이 있는 밥은 30명의 후보자들에게 50의 파워로 투표권을 행사할 수 있다.

만약 앨리스와 밥이 둘다 후보자 ‘EOSfoo’를 선택한다면 그 후보자는 150개의 표를 얻게 된다.

왜 승인투표제인가?

내가 투표제에 대한 자료를 이해한 바에 따르면 승인투표제는 순위 선택 투표보다 살짝 덜 효과적이지만 순위 선택 투표와 승인투표제 둘다 선호투표제보다는 더 나은 결과를 낸다.

이것에 대해 더 궁금한 사람들은 이 투표 방식 시뮬레이터를 해보기 바란다.

선호투표제에 관한 문제들은 1950년대부터 연구 되어왔다; 애로의 불가능성 정리를 참고하길 바란다.

애로의 불가능성 정리에 의해 선호투표제를 제하고 나면, 다른 선택지에 대한 베이즈 분석을 볼 수 있다. William Poundstone 이 쓴 책 Gaming the Vote에 239페이지에 실린 다음 그림이 보일 때 까지 스크롤 다운하면 된다.

From page 239 of William Poundstone’s book Gaming the Vote. Source: Electology.org

선택지는 다음과 같다.

  1. 랜덤으로 뽑기
  2. 다수대표제(현재 미국의 스탠다드)
  3. 보르다 투표제
  4. 콩도르세 방법
  5. 순위 선택 투표
  6. 선호투표제

순위 선택 투표가 선호투표제보다는 조금 낫지만, 선호투표제가 다른 모든 방식보다 훨씬 간단하고 능가하는 것을 볼 수 있다.

이 시뮬레이션은 한 사람의 승자를 뽑는 투표를 위한 것이다 — 21명의 BP를 뽑는 문제는 훨씬 더 어렵다. 우리가 선호투표제를 선택할 시 간편함과 효율성이 우수하다. 이것이 EOSIO의 기본 투표 방식으로 우리가 선호투표제를 사용하는 이유이다.

만약 당신이 EOSIO가 다른 시스템을 사용하기 원한다면, 헌법 개정안을 제출하거나 아니면 과반수 이상의 블록프로듀서들과 투표자들을 설득해서 출시때 다른 방법을 기본으로 쓰게 하면 된다 (만약 당신이 EOSIO를 프라이빗이나 대안 체인에서 사용중이라면 그 어떤 투표 방식이라도 자유롭게 사용해도 된다).

왜 계정당 1개가 아니라 30개의 투표권인가?

EOSIO 커뮤니티의 협력자인 Todor는 EOSIO BP 선호투표제에서 각 계정에 1개부터 50개까지의 투표권이 있는 시뮬레이션을 만들었다. 그의 수학적 계산은 위험이 — 특히 체인이 공모에 의해 소수에게 넘어갈 경우의 위험이 — 각 계정마다 30개의 투표권한이 있을 때가 1개만 있을 때보다 적다고 나타낸다.

나로써는 계정당 여러개의 투표권이 있는 것이 지난 몇년간 BitShares 와 SteemIt 에서 안정적이고 성공적인 특징이었기 때문에 좋은 신호라고 본다.

왜 지분 가중치가 있는 투표 방법을 쓰는가?

현실 세계에서는 우리 모두 한 사람당 한개의 투표권이 있는 것에 익숙하다 (적어도 이론상으로는). BitShares 와 SteemIt을 포함한 많은 DPOS 블록체인에서는, 지분 가중치가 있는 투표 방식을 사용한다. 이것은 약간 혼란스럽게도 “하나의 토큰, 하나의 투표권” 이라고 불리지만 사실 계정당 30개의 투표권이 주어지고 각각의 투표권은 위에서 설명되었듯이 계정이 보유하고 있는 토큰만큼의 파워를 가진다. 각각의 BP의 표의 합계는 그들에게 투표된 토큰의 갯수와 같다.

이것은 부자들에 의해 지배되는 소수 독점 혹은 금권 정치 아닌가?

글쎄, 그렇다고 할 수 있다.

블록체인은 오로지 재산, 소유물 기반이다. 블록체인은 감옥을 운영한다던가 강력 범죄를 저지른 사람들을 기소할 수 없다. 혹은 국경선을 보호한다던가 군대를 유지할 수도 없다. 현실 세계에서 “한 사람당 한 표” 를 매우 중요하게 만드는 바로 그 이유들이 소유물 기반 블록체인에는 존재하지 않는다. 토큰이 많은 것은 당신에게 더 많은 권한을 주지만 또한 더 큰 위험에 처하게 할 수도 있다. 많은 토큰을 보유한다는 것은 그 블록체인에서 부정적인 결과에 더 노출된다는 것을 의미한다.

금권 정치를 넘어서

그럼에도 불구하고, EOSIO 소프트웨어가 투표에 관해 여러 중심을 허락해야 한다는 제안들이 있어왔다. 현재의 토큰 중심의 투표 모델이 추가적인, 분리된 투표 방식에 의해 균형 잡힐 수 있다는 제안이다. 그것에 대한 후보는 다음과 같다:

· 강력한 신분 한 사람당 한 표 (“강력한 신분”이란 proof of humanity에 맞는 몇몇 뚜렷한 기준을 가진 사람을 말한다)

· DApp 개발자당 한 표 (혹은 DApp 의 인기에 따라 스케일되는 투표 파워 — 여기서 더 읽어볼 수 있다.)

· 한 블록프로듀서당 한 표

· On-Chain Vendor 당 한 표

· 기타 등등

이 방식들은 토큰 기반 투표 방식과 평행하게 존재하는 것으로 떠오르고 있다. 토큰 기반 투표자들이 상원이라면 (혹은 고래들) 다른 방식은 하원이라고 할 수 있겠다 (혹은 DApp 개발자들).

일반적인 계획은 큰 시스템 결정 (헌법 개정이나 프로토콜 업그레이드 같은)에 관해서는 상원과 하원 모두의 과반수, 혹은 압도적 다수 표를 요구하도록 하는 것이다.

이 여러개의 투표 방식에 관한 아이디어는 퍼블릭한 블록체인에서 아직 실험 되지 않았고, 나는 그것들이 실제로 시도되는 것을 보는 것이 기대된다.

이러한 아이디어들은 아직 6월 출시때 EOSIO 소프트웨어의 기본 설정으로 포함되기에 완전히 개발되어지지 않았다.

다행스럽게도, EOS 커뮤니티는 기본 헌법을 두가지 방식으로 고칠 수 있다. 하나는 출시때 다른 헌법을 채택하는 것이고, 다른 하나는 출시 후에 개정 방안을 통해서 채택 된 헌법을 수정해 가는 것이다.

마무리

요약하자면, 우리는 EOSIO 소프트웨어 기반의 블록체인이 승인투표제를 쓸 것이라고 예상할 수 있다. 승인투표제는 다른 DPOS 블록체인에서 괜찮은 실적이 있었고, 이 방법은 그 전의 실행 방법에 있었던 문제들을 해결하기 위하여 변경된 것이다.

우리는 승인투표제가 꽤 괜찮은 결과를 가져올 것이라고 기대할 수 있다 (그리고 대부분 다른 투표 시스템보다 훨씬 나을 것이다). 이 승인투표제는 커뮤니티가 만들 인터페이스에 따라 (아니면 그냥 커맨드 라인을 사용하던가) 상당히 간단한 사용자 경험을 제공할 것이다 (당신이 승인하는 30명만 뽑으면 된다) .

가장 중요한 것은 이 투표 방식이 지분 가중치 시스템의 한계안에서 블록 프로듀서를 뽑을때 충분히 좋은 결과를 가져올 것이라고 기대 할 수 있다는 점이다.



--

--

Tara S Hong
EOSYS
Writer for

Data Scientist & Engineer in Oil and Gas Industry, EOS evangelist, BS in Electrical and Computer Engineering