우리는 공공 블록체인이 세상을 바꿀거라는 이야기는 충분이 많이 들었다. 하지만 전 세계적인 규모로 작동하기 위해선 공유되는 공공장부는 기능적, 효율적 그리고 안전한 합의기술을 필요로 한다.
우리가 가장 빈번하게 듣는 비트코인의 작업증명과 같이 합의기술은 두 가지 일을 수행한다. 블록체인에 다음 블록이 진실의 단 하나의 버전임을 보장하고 영향력 있는 적군이 시스템을 방해하는 것을 막고 체인을 성공적으로 카피한다.
작업증명에 있어 채굴자는 고난위도의 암호화된 퍼즐을 풀기 위해 경쟁함으로써 체인의 다음 블록(일련의 거래)을 더하기 위해 경쟁한다. 퍼즐을 처음 푸는 사람이 복권에 당첨된다. 그 사람의 노력을 사례하기 위해 채굴자는 12.5의 새롭게 최근에 생겨난 비트코인과 적은 액수의 수수료를 부여 받는다.
자력으로도 걸작품이지만, 비트코인의 작업증명은 완벽함과 거리가 멀다.
일반적인 비판으로는 비트코인이 상당한 양의 컴퓨터 에너지를 필요로 한다는 것, 확장되기 어려우며 (거래 확인이 10분에서 60분 소요된다) 채굴의 대부분이 전기가 저렴한 지역에 집중되어 있다는 것이다.
비트코인의 창시자인 Satoshi Nakamoto는 블록체인의 잠재력에 대해 우리를 일깨워줬으나 이는 우리를 미래로 인도할 더욱 신속하고 덜 중앙집권적이며 더욱 에너지 효율적인 합의기술을 우리가 지속적으로 찾지 말라는 뜻은 아니다.
이는 포괄적인 목록은 아니지만 이리 저리 휘둘림을 대체하는 대안적인 방법들을 몇 가지 소개하고자 한다.
지분증명
작업증명의 가장 보편적인 대안은 지분증명이다.
이러한 형태의 합의기술은 블록을 채굴하기 위한 경쟁으로 고비용의 컴퓨터 장비에 투자하는 대신, “확인자”가 시스템 코인에 투자를 한다.
여기서 확인자라는 용어를 주목하자. 이는 지분증명에는 채굴과 같은 코인 창조가 일어나지 않기 때문이다. 대신, 첫 날부터 모든 코인은 존재하게 되고 시스템에 지분이 있기 때문에 이해관계자라고도 불리는 확인자는 엄격하게 수수료를 지불 받는다.
지분증명에서 다음 블록을 창조할 수 있게 선정될 확룔은 보유하고 있는 시스템 코인의 일부에 달려있거나 지분을 위해 남겨진다. 300 코인을 보유한 확인자는 100 코인을 가지고 있는 그 누군가 보다 선정될 확률이 3배가 된다.
확인자가 블록을 생성한 후에는 그 블록은 여전히 블록체인에 포함되길 요구된다. 다른 지분증명 시스템들이 이를 어떻게 처리하는지는 다 다르다. Tendermint에서는 예를 들어, 시스템의 각 노드가 과반수의 투표에 다다르기까지는 블록에서 sign off 해야하며 다른 시스템에서는 랜덤의 signer 사용자가 선정된다.
이제 우리는 문제에 맞닥뜨린다. 확인자가 두개의 블록을 생성하고 두 세트의 수수료를 요구하는 것을 어떻게 막을 수 있나? 그리고 그 두개의 블록에 둘 다 sign하는 것을 어떻게 막을 수 있나? 이는 아무런 이해관계가 없는 문제라고 일컬어진다. 아무것도 잃을 것이 없는 참여자는 나쁘게 행동하지 말아야 할 이유가 없기 때문이다.
급성장하는 분야인 암호화 경제에는 블록 엔지니어들이 이 문제와 다른 문제를 해결하기 위한 방법을 모색하고 있다. 하나의 답으로는 확인자가 그들의 화폐를 일종의 가상의 금고에다 넣는 것을 의무화하는 것이다. 만약 확인자가 더블사인이나 시스템을 fork 하길 시도한다면 그 코인은 깎일 것이다.
피어코인은 지분증명을 이행한 첫 코인으로 블랙코인과 NXT가 뒤를 잇고 있다. 이더리움은 현재 작업증명에 의존하고 있지만 2018년 초 지분증명 으로 이동할 계획을 가지고 있다.
활동증명
초인플레이션 (초과량의 화폐가 시스템을 홍수 시킬 때 일어나는 것)을 피하기 위해 비트코인은 단지 언제나 21m 비트코인만을 생성할 것이다. 이는 어떠한 시점에는 비트코인 블록 보상 보조금이 끊길 것이며 비트코인 채굴자들이 수수료만을 받게 될 것이다.
일부는 사람들이 자신의 이익만을 추구하고 시스템을 망치는 서민의 비극으로부터 야기되는 보안상의 이슈가 일어날 것이라고 예측한다. 따라서, 활동증명은 비트코인의 대안적 유인구조로 만들어졌다. 활동증명은 작업증명과 지분증명 둘 다를 결합하는 통합적인 접근방식이다.
활동증명에서 채굴은 암호화된 퍼즐을 풀려고 경쟁하는 채굴자를 가진 기존의 작업증명 형태로 시작된다. 어떻게 이행되느냐에 따라 채굴된 블록은 어떠한 거래도 포함시키지 (템플렛과 더욱 유사하다) 않기 때문에 이기는 블록은 header와 채굴자의 보상받는 주소만을 포함한다.
이 시점에서, 시스템은 지분증명으로 옮겨간다. 헤더에 있는 정보를 바탕으로 랜덤의 확인자 그룹이 새로운 블록을 sign 하도록 선정된다. 확인자가 더 많은 코인을 시스템에 보유할수록 그가 선정될 수 있는 확률은 더 높다. 템플렛은 모든 확인자가 sign 하자마자 자격을 제대로 갖춘 블록이 된다.
만약 선정된 확인자 중 일부가 블록을 마칠 수 있는 시간이 없다면 그 다음으로 이긴 블록이 선정되고, 새로운 확인자 그룹이 생성되며 이렇게 정확한 양의 signature를 얻을때까지 지속된다. 채굴자와 블록에서sign off 한 확인자 그룹간에 수수료는 나뉘어진다.
활동증명에 대한 비판은 블록을 채굴하는 데 과도한 에너지가 소모되는 작업증명과 더블사인하는 확인자를 막을 수 없는 지분증명과 같다.
Decred가 현재 활동증명의 변형된 형태를 사용하는 유일한 코인이다.
지출증명
지출증명에서는 값비싼 컴퓨터 기기에 돈을 퍼붓는 대신 다시 반환되지 않는 주소로 코인을 전송해 “태운다.” 코인을 결코 돌아올수 없는 네버랜드에 맡겨두면, 랜덤 선정 과정에 근거한 시스템에서 채굴할 수 있는 평생의 특권을 부여 받는다.
지출증명이 어떻게 이행되느냐에 따라서 채굴자들은 전통 화폐나 비트코인과 같은 대안적 체인의 화폐를 태울 수도 있다. 더 많은 코인을 태울수록 다음 블록에 채굴하도록 선정될 확률은 더 높다.
시간에 걸쳐, 시스템에서의 지분은 쇠퇴해지며 복권에 선정될 확률을 높이기 위해 더 많은 코인을 태우길 결국엔 희망할 것이다. 이는 이는 해싱파워를 유지하고자 더욱 신식의 컴퓨터 기기에 지속적으로 투자하는 비트코인의 채굴과정을 모방하고 있다.
지출증명은 작업증명을 대체하는 흥미로운 대안책이지만, 프로토콜은 아직도 불필요하게 자원을 낭비한다. 또 다른 비판은 채굴권이 더 많은 돈을 태울 용의가 있는 사람에게만 간다는 것이다.
지출증명을 사용하는 유일한 코인은 slimcoin으로 피어코인에 기반하는 암호화된 화폐이다. 이는 작업증명, 지분증명, 지출증명을 다 사용하지만 현재 완전히 활성화 되어 있지 않다.
용량증명
우리가 살펴본 것과 같이, 이와 같은 대안적 프로토콜은 대부분 페이-투-플레이 형식을 사용한다. 용량증명도 이와 같은 맥락이다. 하지만 여기선 하드드라이브 공간으로 “페이”한다. 드라이브 용량이 많으면 많을수록 다음 블록을 채굴하고 블록 보상을 받을 수 있는 확률이 높아진다.
용량증명 시스템에서 채굴하기 전까지는, 알고리즘이 하드드라이브에 저장하는 “plot” 이라 일컫는 대규모 데이터 세트를 생성한다. 더 많은 plot 을 가질수록, 체인의 다음 블록을 찾을 확률이 더 높다.
테라바이트 용량의 하드드라이브 공간에 투자함으로써, 모방된 블록을 만들고 시스템을 fork할 수 있는 더 높은 확률을 자신에게 부여한다. 하지만 용량증명으로는 악한 사용자를 막을 수 없고 아무런 지분이 없는 문제점을 여전히 가지고 있다.
저장증명과 공간증명이 요량증명의 변형된 형태이다. Burstcoin은 용량증명을 사용하는 유일한 암호화된 화폐이다.
경과시간 증명
칩메이커 인텔은 경과시간 증명이라 일컫는 고유의 대안적 합의 프로토콜을 내놓았다. 이 시스템은 작업증명과 유사하게 작동하지만 전기를 훨씬 적게 소모한다.
나아가, 참여자들이 암호화된 퍼즐을 풀게 하는 대신, 알고리즘이SGX와 같은 TEE를 사용하여 요구되는 작업 없이 블록들이 랜덤으로 당첨되는 형태를 보장한다.
인텔의 접근방식은 TEE를 통해 제공되는 보장된 대기시간에 근거한다. 인텔에 따르면, 경과시간 증명 알고리즘은 수천개의 노드로 확장되고 SGX를 지원하는 어떠한 인텔 프로세서에도 효율적으로 운영된다.
프로토콜의 한가지 문제는 Intel을 신뢰하도록 요구하는 것인데 이는 공공 블록체인으로 인해 제3자에게 신의를 표명하는 것을 피하려고 했던 것에 반하는 것이다.
유지수 기자 [email protected]