On-chain Voting :: How to embrace a voice (Chapter 2)

Cha Jesse
Decipher Media |디사이퍼 미디어
18 min readJul 28, 2018

효과적인 블록체인 거버넌스를 위한 온체인 보팅 메커니즘 분석

차이새(Jesse Cha)
송범근(Bumgeun Song)
Seoul Nat’l Univ. Blockchain Research Group Decipher

서울대학교 블록체인 학회 ‘디사이퍼(Decipher)’에서 온체인 보팅 메커니즘에 관한 글을 연재합니다. 1편2편으로 나누어서 연재될 예정입니다.

Agenda

Chapter 1.

Ⅰ. 왜 온체인 투표를 통한 거버넌스가 필요한가?

  • Blockchain Governance to embrace a voice
  • On-chain Voting의 필요성과 장단점

Ⅱ. 투표 참여를 높이는 메커니즘

  • Smart contract Voting
  • Block Reward와 Voting의 연동

Chapter 2.

Ⅲ. 투표에 책임을 부여하는 메커니즘

  • Masternode Voting
  • Liquid Democracy

Ⅳ. 소수에게 투표권이 집중되는 것을 방지하는 메커니즘

  • Ticket lottery voting

Ⅴ. On-Chain Governance를 도입할 때 고려해야 할 것들

Ⅲ. 투표에 책임을 부여하는 메커니즘

Masternode Voting

어떻게 하면 투표자들이 신중한 의사결정하게 만들 수 있을까? 가장 먼저 의사결정이 잘못되었을 때 잃을 게 많은 사람들에게 투표권을 주는 방법이 있다. 잘못된 의사결정은 네트워크의 가치 하락, 그리고 이에 연동된 토큰 가치의 하락을 불러온다. 따라서 토큰을 일정 금액 이상 보유하고 있는 사람에게만 투표권을 부여하는 것은 단순해보이지만 투표권에 대한 책임을 부여하는 꽤 좋은 방법이다.

Dash는 거버넌스에 이런 투표 메커니즘을 적용하고 있다. Dash에는 채굴자와 사용자 외에도 Masternode라는 역할이 존재한다. 마스터노드는 블록 생성 보상의 45%를 가져간다. 그 외 45%는 채굴자에게 10%는 Dash의 내부 예산으로 적립된다.

Masternode가 되기 위해서는 1000DASH를 계좌에 묶어두어야 한다. 1000DASH는 18년 7월 21일 기준 약 20만 달러에 해당한다. 약 2억 원 어치의 Dash를 보유하고 있는 경우에만 Masternode가 될 수 있다는 뜻이다.(이에 더해 Masternode software를 돌리는 서버도 세팅해야하는데 여기서는 설명을 생략한다.)

Masternode가 되면 투표권이 생긴다. 1노드당 1표만 가능하다. 그리고 이 투표권은 Dash 내부의 예산 집행에 관련된 사항에 대한 의사결정권을 의미한다.

Masternode 투표가 실제로 어떻게 이루어지는지 살펴보자. 앞서 말했듯이 Dash 블록 보상의 10%는 항상 내부 예산으로 쌓인다. Dashcentral.org에 가입하면 자신의 DashWallet과 연동하여 이 예산을 어디에 쓸지 제안서를 올릴 수 있다. 프로토콜에 정식으로 제안을 제출하기 위해서는 5Dash를 anti-spam fee로 내야한다. 제안은 Dash 생태계를 위한 것이라면 무엇이든 가능하다. 대시를 다른 소프트웨어와 연동한다던지, 특정 행사에 스폰서로 후원을 한다던지, 거래소 사용자들에게 에어드랍을 하자는 아이디어라던지 예산 지원을 받고자 하는 굉장히 다양한 제안들이 있다. Proposal 관련 정보는 Dash Central, Dash forum, Dash Vote Tracker, Dash Watch 등에서 볼 수 있다.

Dash Central 에서 진행되고있는 제안들을 확인할 수 있다.
Dash의 후원을 받아 비행사가 에어쇼에서 Dash의 홍보를 하기도 하였다.

대표적으로 찬성을 많은 프로젝트 하나를 보자. Bitgo 지갑과 Dash를 연동할 수 있도록 개발하는 프로젝트다. 제안에 대한 소개와 실제 웹에 구현되었을 때의 이미지, 로드맵, 작업 로드까지 계산해서 공지해놓았다. 이런 식으로 제안을 커뮤니티에 올리고 필요한 금액을 적으면 마스터노드들이 투표를 해주는 것이다.

Dash Central에 올라온 Bitgo 지갑과 Dash 연동 개발 프로젝트 제안 및 로드맵

실제 투표는 약 3일 (1661블록) 동안 진행된다. Net vote (Yes에서 no를 뺀 표수)가 전체의 투표권 수의 10% 이상을 넘기면 통과된다. 중요한 안건인 정책, 개발 업데이트의 경우 33%다. 현재까지 펀딩을 받은 제안, 전체 마스터노드 수, 전체 펀딩 금액 등은 다음과 같다.

여기서 중요한 것은 과연 마스터노드들이 책임감 있는 결정을 내리고 있는가다. 안건에 따라 매우 다르긴 하지만, 일단 현재까지 투표율을 대략적으로 추산해본 결과 중간값은 22% 수준이다. (Dash vote track 데이터 기준) 40% 이상 투표율은 거의 없지만, 대부분의 경우 10% 이상의 투표율을 보여준다. DAO 하드 포크 당시 1지갑 1표 방식으로 시행되었던 Carbon Vote의 투표율이 4.5%였던 것과 비교해 보면 준수한 투표율이다.

비탈릭은 토큰 보유자들의 보팅이 반드시 토큰 보유자에게 일방적으로 유리한 방향 결정으로 이어질 수 밖에 없다고 비판한바 있다. ‘각 Masternode들에게 1000DASH 보너스를 지급하자’라던지 하는 제안들이 충분히 나올 수 있는 것이다.

하지만 실제로 펀딩이 성사된 제안을 살펴보면, 토큰 홀더들에게 일방적으로 유리하거나 장기적으로 네트워크의 해를 끼치는 안건들은 보이지 않는다. 오히려 현실성이 없거나 제안자가 제대로 신뢰성있는 계획을 제시하지 않은 경우에는 대부분 거절된다.

Dash Vote Tracker에서 펀딩이 성사된 프로젝트를 확인할 수 있다

현재까지 Dash의 Masternode Voting은 꽤 바람직한 방향으로 흘러가고 있는 것으로 보인다. 2015년 처음 시작되고 꽤 오랫동안은 제안하는 사람도 거의 개발팀밖에 없었고, 마스터노드의 수도 적었다. 그러나 현재 Dash forum이나 Dash central에 들어가보면 제안하는 아이디어와 제안자가 다양해졌고, 이에 대한 커뮤니티의 토론도 활발하게 일어나고 있다.

Dash의 온체인 거버넌스가 비교적 성공적인 데는, 마스터노드들의 책임감 있는 참여가 큰 역할을 했다. 온체인 거버넌스에서는 결국 주체들의 책임감 있는 참여가 중요하다. 단순히 참여자들에게 어떻게 경제적 보상을 할지 뿐만 아니라, 그 보상을 어떻게 참여자들의 책임감에 연동시킬지가매우 중요하다. 마스터노드가 2억원의 예치금이 있어야 참여 가능하다는 점이 네트워크에 대한 책임감을 향상시키는데 중요한 역할을 했다.

언제든지 대표를 바꿀 수 있는 Liquid Democracy

우리가 살고 있는 민주주의 사회에서는 대통령이나 정치인이 잘못된 행동을 하면 다음에 다른 이에게 투표 할 수 있지만 이를 위해서는 적어도 몇년을 기다려야 한다. 우리나라의 경우에는 (정말 특별한 경우를 제외하고) 당선이 되면 5년은 안전하다. 때문에 평소에는 자신의 잇속만 챙기던 정치인들은 투표 기간이 다가오면 많은 정치인들은 멋들어진 공약을 들고 전통시장으로 간다. 그리고 상점가의 할머니 할아버지들과 악수를 하면서 서민적인 이미지를 부각 시킨다. 그들의 표가 당선에 중요한 영향을 미치기 때문이다.

하지만 몇몇 정치인들은 당선되면 그뿐이고 다시 언제 그랬냐는듯 후보시절 내새웠던 공약은 잊어버린 채 자신들의 이권을 챙기기에 바쁜 모습을 보여준다. 투표시즌이 돌아오기까지는 시간이 많이 남았기 때문이다.

그렇다면 정해진 임기가 없는 대신 언제든지 정치인을 바꿀 수 있는 상황이 온다면 어떨까? 이러한 상황에서 정치인들은 항상 유권자들을 위한 정책들을 펼치려 노력할 것이다. 자신의 잘못된 행동으로 즉시 자리에서 물러나야 하는 위험이 존재하기 때문이다.

이처럼 언제든지 유동적으로 표를 회수할수 있는 위임방식을 Liquid Democracy 라고 한다. Liquid Democracy를 통해 유동적으로 누구에게 권리를 위임 할지 정할 수 있다.

Liquid Democracy방식으로 위임 된 대표자들은 자신들의 결정이 잘못되었을 경우 언제든지 Voting Out될 위험을 지니고 있다. 따라서 이들은 결정을 내릴때 신중하게 된다.

21개의 BP로 이루어진 EOS의 Liquid Democracy

EOS는 Liquid Democracy를 실제 거버넌스에 적용하고 있다. 21개의 대표 노드들은 BP(Block Producer)로 선정되어 블록을 생성 하고 블록 생성에 대한 토큰 보상을 받는다. 21개의 노드는 EOS 안에서 거의 절대적인 영향력을 행사할 수 있다. 21개의 노드 중에서 15개 노드 이상이 찬성을 한다면 거래 무효화, 아이디 정지, 업데이트 등 프로토콜과 관련된 거의 모든 일을 할 수 있게 된다.

21개의 BP는 Approval Voting 방식을 이용해서 선출된다. Approval Voting은 한 사람이 한 표를 가지고 하나의 후보를 고르는 것이 아니라 일정한 수의 표를 가지고 여럿의 후보에 투표하는 방식이다. EOS에서 하나의 지갑은 최대 30개의 노드를 지지 할 수 있고 하나의 노드를 중복해서 지지할 수 없다. 또한, EOS토큰이 해당 지갑에 스테이킹 되어 있는 양에 비례하여 해당 표의 투표권은 더 강해지게 된다. 이렇게 표를 받은 BP 후보들 중 상위 21개위안에 포함되면 EOS에서 BP의 역할을 수행하게 된다.

EOS 토큰 보유자들은 언제든지 자신의 표를 철회하고 다른 BP를 지지할 수 있다. 한번 당선이 되었다고 해서 오랜기간 BP의 권력을 누릴 수 있다는 것이 보장 되어 있지 않기에 BP들은 토큰 보유자들의 눈치를 봐야만 하는 구조다. 커뮤니티에 악영향을 미치는 행동을 한다면 BP의 자리에서 쫒겨나 보상과 권력을 모두 잃을 수 있기때문이다.

RAM시장문제를 통해 바라본 Liquid Democracy의 오작동사례

EOS에서 일어나고 있는 일들을 관찰해보면 Liquid Democracy가 의도한 것처럼 작동하고 있는지를 확인해 볼 수 있다.

EOS의 RAM시장 가격을 살펴보면 해당시스템이 잘 돌아가고 있지 못함을 알 수 있다. BP의 의무중 하나는 이오스 생태계에 RAM을 제공하여 주는 것이다. EOS상에서의 저장공간은 BP들이 저장공간을 얼마나 제공 했는지에 따라 달라진다. 해당 저장공간을 이용하기 위해서는 이용자들은 EOS RAM 마켓을 통해 자신이 사용할 만큼의 RAM을 구매해야 한다. RAM 수요에 비해 공급이 많으면 램 가격이 떨어지고 반대의 상황에서는 램 가격이 증가한다. Liquid Democracy가 정상적으로 작동한다면 EOS BP들은 Voting out이 되지 않기 위해 충분한 RAM을 제공하여 이용자들의 편의를 보장해 주어야 한다.

하지만 이 RAM시장에서 RAM의 가격은 급등을 거듭하고 있다. 일반적인 시장에서 1GB당 11달러인 반면에 EOS RAM 시장에서는 7월 25일 기준 260만 달러 정도에 거래되고 있다. 20만배 이상 가격차이가 나고 있는 상황이다. 가격이 고점 이었을 때는 GB당 780만 달러 수준까지 상승 하기도 했으니 이오스 위에서 Dapp을 운영하는 비용이 천문학적으로 많이 들 것이라는 사실은 어렵지 않게 짐작해 볼 수 있다.

램 공급이 램 수요를 따라가지 못하면 램의 공급량을 늘리는 등 사용자들이 EOS를 사용할 수 있도록 조치를 취해야 하는 게 EOS BP의 의무이다. 높은 비용으로 인해 EOS상에서 Dapp을 만드려는 이가 줄어든다면, EOS 생태계에 악영향을 끼치게 되기 때문이다. 심지어 에어드랍을 하려던 많은 EOS Dapp들은 비용의 문제 때문에 에어드랍을 중지 하기도 했다.

하지만 BP들은 해당상황에 대해 아무런 대책도 내어놓지 못하고 있는 상황이다. RAM용량을 늘리거나 조치를 취하겠다고 발표한 BP는 단 하나도 존재하지 않는다. 하지만, EOS 개발사인 Block one의 댄 라리머는 기존의 BP 투표로 제공되는 저장공간의 양을 정하는 방식에서 BP들이 블록을 생성할 때 RAM 제공량을 올릴수 있도록 하는 업데이트를 발표했으며 BP들에게 즉각적으로 RAM제공량을 올릴것을 권고 했다. 하지만 아직 제공되는 RAM의 공급량은 변하지 않고 있다.(정정: 라리머의 업데이트 이후 2018년 8월 6일 기준 RAM공급량이 소폭 증가하고 있는 모습을 보이고 있다.)

그렇다면 해당 상황에 대한 책임을 묻기 위해 BP들중 얼마나 Voting out을 당했을까? 지금도 해결되고 있지 않은 이문제에 대해 BP들이 책임을 지고 있을까? 아니다. 어떤 BP도 이에 대해서 책임을 지고 있지 않다. 다만 RAM시장 투기에 동참해 시세차익을 올렸던 EOSNATION이 21명의 BP에서 밀려나 30위권에 머무르게 되었을 뿐이다.

Voting out 메커니즘이 제대로 작동을 하지 않으니, BP의 입장에서는 굳이 이 문제를 급하게 해결할 필요가 없다. 사실 BP는 자신들이 판매하는 RAM의 가격이 올라가니 오히려 문제를 해결하지 않는 편이 더 좋은 선택일 수있다. 리소스를 들여가며 RAM을 확장 하기보다는 보유 RAM의 가치 상승을 즐기는게 더 편한 방법일 수 있기 때문이다.

왜 Liquid Democracy가 작동하지 않을까?

먼저, 기존 BP를 대체 할만한 적합한 후보군이 없을 수 있다. 이미 당선이 된 이들과 후보로 남아 있는 이들 모두가 문제에 대한 해결책을 가지고 있지 못하다면 Voting Out을 시키더라도 네트워크 전체로 보았을때 달라진 게 없게 된다.

두번째는 투표자들의 책임감이 약할 수 있다는 것이다. 토큰 보유자들은 네트워크가 잘 흘러가지 않으면 네트워크를 떠나버리면 그만일 수 있다. 굳이 BP의 행동을 감시하고 BP간의 공약을 비교하고 더나은 BP를 선택하기 위해 노력할 유인이 적다.

세번째로 잘한 것과 잘못한 것에 대한 기준이 명확하지 않다는 한계를 가지고 있다. 기준이 존재하지 않기에 어떤 행동을 Voting Out해야 할지 알 수 없다. 기준이 있다고 하더라도 어떤 BP가 어떤 행동을 했는지에 대한 데이터가 투명하게 공개 되지 않는 상황하에서는 Voting Out이 작동 하기는 힘들 수 있다.

가장큰 문제는 1토큰 1표로 유지되는 Liquid Democracy에서는 대표자가 전체 네트워크를 위해 일할 필요가 없다는 점이다.현재 EOS는 상위 10개의 지갑이 전체 토큰의 약 50%정도를 차지 하고 있다. 이들과의 관계만 잘 유지된다면 대표자가 되기 위해 다른이들의 투표는 사실상 필요하지 않다. 또한, 보유 토큰이 많은 BP들이 서로를 지지해 주기만 해도 BP의 자리를 유지할 수 있다.

Ⅳ. 소수에게 투표권이 집중되는 것을 방지하기 위한 메커니즘

피하기 힘든 권력 집중의 문제

1토큰 1표인 상황하에서는 토큰을 많이 가진 사람에게 권력이 집중된다. 이러한 구조는 블록체인의 기본 철학인 탈중앙성과 어울리지 않는다. 중앙 집중화의 구조적 문제를 해결하는 블록체인에서 중앙 집중화된 의사결정이 내려진다는건 모순적이다. 하지만, 참여자를 특정할수 없는 블록체인의 특성상 토큰이외에 다른 방식으로 의사표현을 하게 하는 것은 힘든 것도 사실이다. 1명의 사람이 여러개의 주소를 가지고 있을수 있기에 1인 1표 시스템을 도입하기 쉽지 않기 때문이다.

Ticket Lottery Voting을 통한 확률의 도입

Ticket Lottery Voting을 통해 권력의 집중화를 완벽하게 먹을수는 없지만 소수의 권력층이 확실하게 네트워크를 장악하는것은 막을 수 있다. 토큰이 많을수록 의사결정에 대한 권한을 가지게 되는 것이 아니라 의사결정을 하게 될 확률이 높아지기 때문이다.

Decred의 티켓 Lottery Voting

Decred는 확률을 도입하여 권력의 집중을 완화시킨다. Decred에서는 토큰이 적다고 해서 항상 낮은 수준의 영향력을 가지는 것이 아니라 확률적으로 큰 권력을 행사할 수 있는 여지를 남겨 둔다. 이를 통해 토큰을 많이 보유한 이들이 네트워크를 완전히 장악하는 것을 방지할 수 있다.

Decred의 Lottery 투표방식은 다음과 같다. Decred에서는 매 블록이 생성될 때마다 20개의 티켓이 발행된다. 참여자들은 자신의 토큰을 Staking하여 해당 티켓을 구매할 수 있다. 그리고 티켓이 발행되는 것과 동시에 이미 발행되어있던 티켓중에서 5개의 당첨 티켓이 선정된다.

티켓은 자체로는 쓸모가 없지만, 당첨된다면, Decred 상에서 중요한 일들을 결정하는데에 찬성, 반대, 기권의 의사를 표시할 수 있다. 의사를 표현하면 블록 리워드의 6%가 투표를 한 것에 대한 보상으로 주어지기에 참여자들은 티켓에 당첨 되었을 경우 투표를 할 유인이 있다.

당첨이 된 순간 투표를 해야 하기에 Decred에서는 투표 대행 Pool을 이용한다. Pool에서는 투표를 대신해서 행사한다. 투표 풀에 자신의 표를 맡긴 이들은 Pool에 자신의 투표를 위임할때 미리 해당 기간동안의 안건에 찬성, 반대, 무효등 어느 곳에 투표를할지를 정할 수 있다.

당첨된 티켓은 당첨된 블록이 속해있는 안건들에 대해서만 투표 할 수 있다. 안건들에 대해서는 한개의 Rule Change Interval(8064블록, 약 4주)동안 투표할 수 있다. 90%이상의 투표가 기권표면 해당 안건은 무효처리가 되며 다음 안건으로 넘어가게 된다. 기권표가 아닌 표중에 75% 이상의 찬성 혹은 반대표를 받지 못하면 안건은 다음 투표기간에도 계속된다. 기권가 아닌 것중에서 75%가 넘는 표가 찬성을 하면 해당 안건은 실행된다. 반대의 경우 해당 안건은 기각된다.

확실하게 의사결정을 하는 이가 정해져 있는 것이 아니기때문에 Lottery 방식은 권력의 집중화를 약화시킬 수 있다. 이를 통해 토큰이 그렇게 많지 않은 사람들도 의사결정에 커다란 영향을 미칠 가능성을 가지게 된다. 토큰이 아무리 많은 사람이라도 항상 네트워크의 모든 것을 마음대로 결정할 수 있는 것은 아니게 되는 것이다.

Lottery Voting이 완전하게 권력의 집중화를 막을 수 있는 것은 아니다. 돈이 많은 이들은 더 많은 티켓을 살 수 있다. 티켓이 많다면 자연스럽게 더 많은 당첨티켓을 가지고 있게 될 수밖에 없다. 하지만 일반적인 1토큰 1투표 식의 방식보다는 소수 토큰 보유자가 영향력을 행사할 수 있는 여지가 생겼다는 것은 사실이다. 개미들도 운이 좋다면 고래보다 더 많은 표를 행사할 수 있다.

Ⅴ. On-Chain Governance를 도입할 때 고려해야 할 것들

On-Chain Governance은 투명하고 명시적인 과정을 통해 비공식적인 합의시 발생하는 비용을 줄이고 다수결에 의해서 전체 집단의 방향을 결정한다. 의사결정이 빨라지고 하드포크가 빈번하게 일어나는 것을 방지할 수 있다. 이러한 이유때문에 많은 이들은 On-Chain Governance 를 도입하려 한다.

하지만 장점만을 보고 On-Chain Governance를 도입하기 전에 유의해야 할 사항과 이를 위한 해결책들이 있다.

  1. 낮은 투표율: 투표 보상 및 자동화된 투표방식을 통해 낮은 투표율의 문제를 해결하려는 시도를 살펴 보았다. Qtum은 참여자들이 자신의 의사를 미리 스마트 컨트랙트로 짜 놓는 방식을 통해 투표 참여에 드는 비용을 줄였다. Decred는 PoS블록 검증시 진행되고 있는 안건에 대한 의사를 표현해야 보상을 받을 수 록 있도록 하였으며 Dfinity는 투표권 위임 방식을 통해 투표 자체에 드는 비용을 줄였고 투표에 참여한 것과 비례하여 투표보상을 주는 방식을 통해 투표에 참여할 인센티브를 주었다.
  2. 무책임한 투표: 잃을게 많으면 신중해지게 된다. Dash는 토큰의 가치가 떨어졌을때 가장 잃을 것이 많은 이들에게 투표권을 주는 Master Node 방식을 취한다. 2억원 이상의 토큰을 예치한 Master Node들은 잘못된 결정이 내려져 토큰의 가치가 하락하면 가장 큰 타격을 입을 것이기 때문이다. EOS는 Liquid Democracy를 이용한다. 커뮤니티의 이익에 반하는 행동을 하면 표를 잃고 블록생성 보상을 받을 권리를 잃어버릴 수 있기에 선발된 Block Producer 는 책임감을 가지고 의사결정을 하게된다.
  3. 권력의 집중화: 1토큰 1표의 방식을 사용하는 이상 권력의 집중화 문제는 피할 수 없다. 하지만 이를 해결하기 위해 확률의 개념을 도입해 볼 수 있다. Decred는 Lottery Ticket Voting 방식을 통해 권력집중의 문제를 완화하려 하고 있다. 의사결정자가 확률적으로 선택되기에 토큰이 많은 이들이 항상 모든 권력을 가져가는 것은 아니다. 토큰이 적은 이들도 의사결정에 큰 영향을 미칠 가능성이 존재한다.

본 글에서는 주로 On-Chain Governance의 Voting 방식에 대한 이야기를 다루었다. On-Chain Voting의 한계를 해결하려는 시도가 존재하고 있으나 각각의 방식 역시 완벽한 것이 아니며 한계를 가지고 있으며 개선해 나가야 할 부분들이 존재한다.

우리가 현재 당연하게 생각하고 있는 민주주의라는 거버넌스도 처음에는 많은 문제가 있었고, 여전히 개선해야할 점들이 많다. 민주주의가 제대로 정립되고 현실에 스며들기 까지 많은 시간이 걸렸듯이 블록체인 거버넌스 또한 하루아침에 해결될 일은 아니라고 생각한다. 블록체인 거버넌스에 대한 고민은 이제 걸음마를 뗀 수준이다. 앞으로 기술이 발전하고 블록체인이 사회에 더 널리 받아들여짐에 따라 블록체인 거버넌스는 예측할 수 없는 모습으로 진화해 나갈 것이다.

--

--