검수요청.png검수요청.png

합의 알고리즘

위키원
이동: 둘러보기, 검색

합의 알고리즘(consensus algorithm)이란 다수의 참여자들이 통일된 의사결정을 하기 위해 사용하는 알고리즘을 말한다. 합의 모델, 합의 방식, 합의 메커니즘 또는 합의 프로토콜이라고도 한다. 블록체인 시스템의 경우 네트워크에 참여하는 모든 참여자들이 동일한 데이터를 복사하여 분산 저장하기 때문에 원본과 사본의 구별이 없으며, 통일된 의사결정을 내릴 수 있는 권위 있는 중앙(center)이 존재하지 않는다. 이런 상황에서 합리적이고 효율적인 의사결정을 내릴 수 있는 다양한 알고리즘이 개발되었다.

개요[편집]

블록체인은 탈중앙화를 추구하며 전 세계의 다양한 참여자가 피투피(Peer To Peer, P2P) 네트워크 방식으로 생태계를 유지하고 있어서 그 무엇보다 참여자의 의견 일치(합의)가 중요하다. 합의 알고리즘은 블록체인 생태계를 구성하는 데 꼭 필요한 요소이며, 다양한 블록체인 프로젝트가 다양한 합의 알고리즘을 통해 운영되고 있다.[1] 합의 알고리즘은 블록체인 네트워크에 합의를 달성하는 메커니즘이라 정의할 수 있다. 탈중앙화된 블록체인은 분산화된 시스템으로 구성되어 있으며, 중앙 권위체에 의존하지 않기에, 분산화된 노드는 트랜잭션의 유효성에 합의가 필요하다. 이곳이 바로 합의 알고리즘이 시작되는 지점이다. 합의 알고리즘은 프로토콜 규칙이 준수되고 있는지 확인하며, 모든 트랜잭션이 신뢰할 수 있는 방식으로 진행되는 것을 보장해, 코인이 한 번만 사용되도록 한다.[2]

몇 가지 유형의 합의 알고리즘이 있다. 가장 일반적인 것은 작업증명(Proof of Work; PoW)과 지분증명(Proof of Stake; PoS)이다. 보안성과 기능성, 확장성의 균형을 고려할 때, 각기 장단점을 갖고 있다. 또한, 합의 알고리즘은 암호 화폐 네트워크의 무결성과 보안을 유지하기 위해 중요하다. 합의 알고리즘은 분산화노드들이 어떤 버전의 블록체인이 진짜 버전인지 합의할 수 있게 한다. 디지털 경제 시스템이 제대로 작동하기 위해서는, 현 상태의 블록체인에 합의하는 것이 필수적이다. 작업증명 합의 알고리즘은 비잔티움 장군 문제를 해결하는 최고의 해결책으로 간주하며 이는 비트코인을 비잔티움 장애 허용 시스템으로 탄생시켰다. 이는 비트코인 블록체인이 51% 공격(또는 다수의 공격)과 같은 공격에 매우 강력함을 뜻한다. 네트워크가 탈중앙화되어 있을 뿐만 아니라, 작업증명 알고리즘을 사용하기 때문이다. 마이닝 과정에 드는 높은 비용은 마이너들이 네트워크를 방해하기 위해 자신들의 자원을 투자하는 것을 무척 어렵게 한다.[2]

종류[편집]

작업증명[편집]

작업증명(PoW, Proof of Work)이란 목표값 이하의 해시를 찾는 과정을 무수히 반복함으로써 해당 작업에 참여했음을 증명하는 방식의 알고리즘이다. 채굴을 통해 작업증명을 한다. 비트코인, 라이트코인, 비트코인캐시, 비트코인골드, 모네로, 지캐시, 시아코인, 불웍, 에이치닥 등의 암호화폐에서 작업증명 방식을 사용하고 있다.

'작업’이란 ‘채굴’에 이르기까지 연산 과정을 뜻한다. 채굴자들은 컴퓨터로 복잡한 수식을 풀어 조건에 맞는 해시값을 찾는 과정을 반복한다. 이 경우 모든 노드들이 찾아낸 해시값을 검증하고 승인하는 과정을 거쳐 블록에 거래 내역을 저장한다. 따라서 모든 노드들의 승인을 거쳐야 하기 때문에 거래 내역을 속이기가 힘들다는 장점이 있다. 이런 점에서 작업증명 합의 알고리즘은 블록체인이 가지는 탈중앙화라는 본질을 가장 잘 살린 합의 방식이다. 그러나 이런 과정 때문에 거래 처리 속도가 늦어진다는 한계가 있다. 또한 채굴에 필요한 에너지 소비가 심하다는 것도 단점이다. 이 때문에 일정 조건에 따라 블록 생성에 참여하는 노드들을 제한하는 지분증명방식이 등장했다.[3]

경과시간증명[편집]

경과시간증명(PoET, Proof of Elapsed Time)은 하이퍼레저 소투스(Hyperledger Sawtooth)에서 제안된 합의 알고리즘이다. 작업증명 방식의 경쟁적 해싱 연산으로 낭비되는 에너지를 줄이면서 유사한 수준의 보안성을 보장하기 위해 제시됐다.

인텔은 경과시간증명이라는 고유의 대안적 합의 알고리즘을 내놓았다. 이 시스템은 작업증명 방식과 유사하게 작동하지만 전기를 훨씬 적게 소모한다. 나아가 참여자들이 암호화된 퍼즐을 풀게 하는 대신, 알고리즘이 SGX(Software Guard Extension)와 같은 필요에너지소비량(TEE)을 사용하여 요구되는 작업 없이 블록들이 랜덤으로 당첨되는 형태를 보장한다. 경과시간증명 방식은 이름에서 알 수 있듯이 시간과 관련되어 필요에너지소비량을 통해 제공되는 대기시간에 근거한다.[4] 또한 SGX를 기반으로 블록을 생성하는 리더를 선정하는데, 이때 가능한 다수의 노드가 합의에 참여하여 공정하게 리더를 선정하도록 하며, 보안 CPU 명령을 사용하여 리더를 선정함으로써 안전성과 무작위성을 보장한다. 경과시간증명 합의 알고리즘은 수천 개의 노드로 확장되고 SGX를 지원하는 어떠한 인텔 프로세서에도 효율적으로 운영된다.[5] 경과시간증명 합의 알고리즘은 신뢰할 수 있는 실행 환경을 활용하여 비잔틴 장군 문제에 대한 해결책을 제시하고 있다. 즉, 신뢰할 수 있는 실행 환경에서 합의에 도달하게 되므로 비잔틴 노드의 발생을 원천적으로 방지하는 알고리즘이다. 이때 신뢰할 수 있는 환경이라고 함은 인텔 SGX라는 보안 명령 코드가 보안 기능을 갖춘 메모리의 실행 영역인 엔클레이브(enclave)에서 실행되도록 하는 것을 의미한다.[6]

균형작업증명[편집]

균형작업증명(ePoW, equilibrium Proof of Work)은 기존 작업증명 방식을 기반으로 하되, 한 번 채굴에 성공한 노드는 일정 기간 강제로 휴식을 취하도록 만들어 다른 노드들에게 채굴 기회를 공평하게 나누어 주는 방식의 합의 알고리즘이다. 에이치닥 코인에서 이 방식을 사용하고 있다.

균형작업증명은 평등한 기회와 에너지 절약에 기반하여 누구나 공평하게 작업증명을 진행해 혜택을 받을 수 있도록 한 것이 특징이다. 이미 채굴에 성공한 노드는 다른 참여자에게 기회를 양보하도록 Lyra2Rev2 ASICresistent 알고리즘을 구성해 과도한 에너지 낭비 문제도 해결했다. 균형작업증명 합의 알고리즘은 작업 증명에 참여하는 노드의 개체 수 감소를 방지하고, 다수의 채굴 노드가 참여할 수 있는 동기를 부여할 수 있고, 결과적으로 채굴 경쟁을 위한 과도한 컴퓨팅 파워 투입에 따른 에너지 낭비 방지와 채굴 기회의 공정한 기회 분배를 도모하고자 하는 의도에서 출발하였다. 이는 채굴 환경에 있어 기존의 암호화폐가 지닌 작업증명 방식의 문제점인 컴퓨팅 파워에 따른 부익부 빈익빈과 채굴 환경 집중 현상을 해결하기 위한 것이다. 따라서 일반인도 쉽게 암호화폐 채굴에 참여할 수 있도록 한 것이 특징이다.[7]

뻐꾸기 사이클[편집]

뻐꾸기 사이클(Cuckoo Cycle)은 네덜란드의 컴퓨터공학자인 존 트롬프(John Tromp)가 발명한 세계 최초의 작업증명 알고리즘이다. 암호화폐 중에서는 코르텍스(Cortex)와 그린코인(Grin Coin)이 뻐꾸기 사이클 알고리즘을 이용한 작업증명 방식을 사용하고 있다.

뻐꾸기 사이클은 GPU를 중심으로 하는 작업증명 방식의 합의 알고리즘이다. 뻐꾸기 사이클은 기존 에이식(ASIC) 채굴기가 채굴하기 어려운 알고리즘과 GPU 채굴방식의 효율성 증대로 기존 CPU 중심의 채굴기와 GPU의 간극을 좁혀 1머신 당 1표(one-machine-one-vote)를 실현할 수 있는 중요 요소로 평가받는다. 즉 기존 CPU 방식의 채굴은 에이식 칩으로 인해 기기별 연산의 격차가 극심하고, 이 때문에 에이식 전용 채굴기를 통해 채굴함으로써 값비싼 소수의 기기가 해시파워를 독점하기 쉬웠다. 뻐꾸기 사이클은 GPU 중심의 반 에이식 알고리즘으로 이를 극복할 수 있다. 뻐꾸기 사이클은 반(反) 에이식 속성을 가지고 있어 에이식을 통한 난이도와 비용이 비트코인의 SHA-256 방식에 비해 높다. 게다가 뻐꾸기 사이클 알고리즘은 변형을 통해 반 에이식 역량을 계속 향상시킬 수 있고, 알고리즘 수정을 통해 반 에이식 능력을 저하시켜 에이식 우호 알고리즘이 될 수 있는 등, 운용의 폭이 상대적으로 넓어 많은 프로젝트의 주목을 받고 있다. 다만 모든 프로젝트가 같은 방식으로 뻐꾸기 사이클 알고리즘을 활용하는 것은 아니다. 뻐꾸기 사이클은 작업증명을 함에 있어 에이식 방식을 어느 정도 수용할지를 수정할 수 있어 좀 더 운신의 폭이 있기에, 에이식 방식에 유리하게 하면 할수록 해시 능력의 차이로 일반적인 SHA-256 방식과 같이 높은 비용을 수반할 수밖에 없기 때문이다.[8]

스펙터[편집]

스펙터(Spectre)는 Serialization of Proof-of-work Events: Confirming Transactions via Recursive Elections의 약자로, 합의 알고리즘의 일종이다. 하이콘(Hycon)의 합의 유지에 사용된다. 스펙터에서는 다수의 부모 블록들이 자식 블록들의 거래내역의 유효성을 검증함으로 채굴한다. 다수의 부모 블록들이 짧은 시간 내에 많은 블록들의 유효성을 검증하므로 높은 효율성을 가진다. 작업증명에서는 가장 긴 체인이 블록으로 채택되지만, 스펙터에서는 가장 많은 자식 블록들을 가진 체인이 선택된다.

쉽게 말해 비트코인에 사토시 나카모토 프로토콜이 있다면, 하이콘 합의 유지에 사용되는 프로토콜은 스펙터인 것이다. 스펙터는 고스트 프로토콜 다음 컨센시스 프로토콜로써, 비트코인처럼 싱글 체인으로 블록을 연결하지 않고, 채굴과 동시에 기본적인 블록 검사 후에 바로 연결한다. 스펙터는 고스트 프로토콜 다음 컨센시스 프로토콜로써, 비트코인처럼 싱글 체인으로 블록을 연결하지 않고, 채굴과 동시에 기본적인 블록 검사 후에 바로 연결한다. 이때, 블록이 일정 방향 지그재그 형태로 연결되는데, 이것을 방향성 비순환 그래프(DAG) 구조라고 한다. 방향성 비순환 그래프 형식의 체인구조에서는 한 개의 블록이 다른 여러 블록을 검증하기 때문에 트랜잭션의 처리속도를 향상시킬 수 있다. 또한, 스펙터는 채굴된 블록들을 검증할 때 투표를 진행한다. 이중지불 등으로 서로 상충되는 내용의 트랜잭션을 담고 있는 블록 간에 투표 과정을 거치게 되며, 이 과정에서 가장 긴 체인이 살아남게 된다. 기존의 방식과 같이 이전 블록의 해시값을 참조하지 않아도 안전하게 합의를 이룰 수 있음은 물론, 훨씬 빠른 속도로 합의를 이룰 수 있다. 즉, 하이콘 블록체인 네트워크에 스펙터를 적용하게 되면, 블록체인 기술의 한계라고 지적되어 온 트랜잭션 속도를 상용화 가능한 수준으로 끌어올릴 수 있는 것입이다. 또한, 이는 세계 최초 이기도 하며, 지금까지의 스펙터는 이스라엘 연구팀 요나탄 솜폴린스키, 아비브 조하르가 설계한 논문으로만 존재하였을 뿐, 실제로 구현된 사례가 없었다. 이를 하이콘 팀에서 세계 최초로 구현, 적용시키게 된 것이다. 현재 하이콘 팀은 기본적인 스펙터 컨센서스와 보팅 1차 개발을 완료한 상태이며, 동기화 및 네트워크 처리량 최적화 작업을 진행 중이다. 또한, 테스트넷을 오픈하여 다양한 피드백을 받고 의견을 수렴하여 안정화 단계를 거칠 예정이다.[9]

온라인증명[편집]

온라인증명(PoO, Proof of Online)은 한국의 블록체인 개발 전문기업 ㈜이트라가 개발한 알고리즘으로, 새로운 블록의 전파 과정에서 해당 블록이 온라인상에서 생성된 것인지 검증하는 과정을 추가하여 블록보류공격(BWA)을 원천적으로 차단하는 합의 알고리즘이다. 온라인증명 합의 알고리즘을 채택한 코인으로는 큐시티(Qcity)가 있다.

비트코인의 합의 알고리즘 방식인 작업증명 방식을 채택한 수많은 알트코인들이 51% 공격의 일종인 블록보류공격(BWA ; Block Withholding Attack)에 의해 2018년에만 약 2천만 달러, 한화 227억 원을 탈취당했다. 블록보류공격은 전체의 51%에 해당하는 해시파워를 가진 노드가 온라인 블록에서 자금을 빼돌린 뒤 오프라인 상에서 쌓은 긴 블록을 전파하여 이를 무효화하는 방식으로 해킹이 진행되는데, 이를 해결하기 위해서는 온라인에서 생성된 블록만이 유효한 것으로 받아 들여져야 한다. ㈜이트라는 이러한 문제를 해결하기 위해 새로운 블록의 전파과정에서 해당 블록이 온라인상에서 생성된 것인지 검증할 수 있는 과정을 추가하여 원천적으로 블록보류공격을 차단하는 온라인증명 합의 알고리즘을 개발했다. ㈜이트라의 유영근 대표는 기존 작업증명 방식에 온라인증명 방식을 추가로 적용하면 비트코인 계열의 많은 알트코인들이 51% 공격으로부터 안전할 수 있다고 설명하며, 직접 개발한 큐시티에 11월1일자로 적용하여 블록 안정성 검토까지 마친 상태라고 밝혔다. 2018년 11월 12일 특허청으로부터 특허결정을 통보받았고, 현재 많은 알트코인들에 적용하여 블록체인에 대한 안정성을 높이는데 기여할 수 있도록 비트코인 커뮤니티 공론화를 거쳐 BIP(Bitcoin Improvement Proposal)에 제안 준비를 하고있다.[10]

유용한 작업증명[편집]

유용한 작업증명(PoUW, Proof of Useful Work)은 새로운 블록을 생성할 때 해시 알고리즘을 푸는 방식이 아닌 실용적인 컴퓨팅의 수요를 활용하는 방식의 합의 알고리즘이다. 이를 통해 에너지 효율과 보안성을 제공할 수 있다. 앵커(ANKR)가 자체 개발했다.

유용한 작업증명 합의 알고리즘을 자체 개발한 앵커가 말하는 클라우드 컴퓨팅이란, 인터넷상의 서버를 통해 데이터 저장, 네트워크 관련 서비스, 콘텐츠 공유 등 IT 관련 서비스를 한 번에 이용할 수 있는 형태이다. 기존의 클라우드 컴퓨팅 기술은 이러한 서비스 제공을 위한 높은 구축, 유지 및 보수비용으로 인한 진입장벽이 높아 대기업들이 주도하고 있었다. 앵커는 이와 같은 한계를 벗어나기 위해 자체 개발한 유용한 작업증명이라는 합의 구조를 개발 및 도입했으며, 앵커 블록체인 생태계의 모든 기여자가 보상을 받을 수 있는 구조를 설계했다.[11] 작업증명 방식의 에너지 비효율성을 극복할 수 있는 유용한 작업증명 알고리즘은 에너지 효율과 동시에 보안성을 제공할 수 있다. 이는 새로운 블록을 생성할 때 해시 알고리즘을 푸는 방식이 아니라 실용적인 컴퓨터 수요를 활용하기 때문에 가능하다.[12] 해시 알고리즘을 풀어낸 채굴자에게만 보상을 주는 비트코인의 합의 알고리즘과 달리 유용한 작업증명 합의구조를 가진 블록체인에서는 컴퓨팅 파워를 제공하는 모든 유저들에게 보상을 제공한다.[13] 유용한 작업증명 방식은 개발자에게 높은 권한을 부여함으로써 불량 소프트웨어로 인한 핵심데이터의 무단 엑세스 및 수정을 예방할 수 있으며, 기밀 유지 및 무결성 유지를 위한 응용프로그램 사용을 가능하게 한다. 또한 합법적인 시스템 소프트웨어를 통한 플랫폼 리소스 사용을 예약 및 관리할 수 있으며, 중요 코드 및 데이터를 보호할 수 있다.

이중작업증명[편집]

이중작업증명(DPoW, Dual Proof of Work)이란 에이식(ASIC) 채굴기를 허용하는 1차 채굴과 에이식 채굴기를 허용하지 않는 2차 채굴을 혼합하여 진행하는 작업증명 방식을 말한다. 디포우라고도 한다. 그린코인(GRIN coin)이 이 방식을 사용한다.

이중작업증명 방식은 그린 블록체인에서 채택한 합의 알고리즘이다. 이 방식은 그 이름처럼 메인 알고리즘과 서브 알고리즘의 두 가지 방식을 통해 이중으로 작업증명을 실행하는 것이다. 먼저 메인 알고리즘은 ASIC 채굴기에 친화적이며 GPU 채굴에 비해 넉넉한 메모리 용량을 확보할 수 있으므로 매우 큰 효율성을 보여준다. 그리고 서브 알고리즘은 ASIC 채굴기에 내성을 가지도록 6개월마다 하드포크를 진행하게 된다. 두 가지 합의 알고리즘을 동시에 운영하는 이유는, 이중작업증명 방식이 어떤 블록체인의 합의 알고리즘이라고 할 때 처음부터 ASIC 채굴로 지나치게 효율이 높은 채굴이 진행되는 것을 막기 위함이다. 즉, 처음에는 서브 알고리즘의 비중이 90%를 차지하고 메인 알고리즘의 비중이 10%를 차지하도록 채굴이 이루어짐으로써 채굴을 통제하면서 점차 메인 알고리즘을 통한 ASIC 채굴 비율을 높여간다는 전략인 것이다. 시간이 지날수록 서브 알고리즘 채굴 방식은 높은 난이도로 인해 채굴이 사실상 어려워지게 되어 결국에는 메인 알고리즘을 통한 ASIC 채굴이 일반화된다.[14]

지연작업증명[편집]

코모도(Komodo)

지연작업증명(DPoW, Delayed Proof of Work)은 네트워크 보안을 강화하기 위해 비트코인 블록체인의 해시 파워를 사용하는 작업증명 합의 알고리즘의 수정 버전이다. 슈퍼넷(Supernet)이 설계하였으며 코모도(Komodo)가 유일하게 디포우 방식을 사용하고 있다.

지연작업증명 합의 알고리즘은 시스템 장애나 해킹이 발생해도 전체 데이터를 신속하게 복구할 수 있다. 공격자가 해킹을 통해 영구적 손상을 입히려면 비트코인 네트워크 또한 해체하여, 비트코인 블록체인 내에 백업된 모든 스냅샷을 삭제해야 한다. 이러한 시나리오의 가능성은 매우 낮기 때문에 지연작업증명 합의 알고리즘을 실행하는 블록체인들은 보다 높은 수준의 보안을 유지할 수 있다. 그러나 지연작업증명은 코모도 생태계 내에서만 구현된다는 점에 주목해야 한다. 추가적인 테스트를 통한 다른 시나리오와 대규모 스케일에 대한 효율성과 신뢰성은 아직 검증되지 않았다.[15]

캐스퍼[편집]

캐스퍼(Casper)는 이더리움의 합의 알고리즘을 작업증명에서 지분증명으로 전환하기 위한 새로운 알고리즘이다. 2014년부터 이더리움 개발진으로부터 시작된 프로젝트로 이더리움의 합의 알고리즘인 작업증명을 지분증명으로 전환하는 것을 목표로 하고 있다. 캐스퍼는 비탈릭 부테린(Vitalik Buterin)이 제안한 캐스퍼 FFG와 블라드 잠피르(Vlad Zamfir)가 제안한 캐스퍼 CBC, 두 종류의 프로젝트로 구분된다.[16] 우선 작업증명 방식과 지분증명 방식이 결합한 캐스퍼 FFG(Friendly Finally Gadget)를 도입해 전환을 위한 기반을 다지고, 캐스퍼 CBC(Borrect by Construction) 방식으로 안정화 작업을 거치게 될 예정이다.

작업증명 방식은 채굴 시 소모되는 전력량과 컴퓨팅파워가 비효율적이고 채굴기의 스펙에 따른 빈익빈 부익부 현상이 발생한다는 단점이 있다. 해시파워가 더 좋은 채굴기를 갖고 있는 채굴자 혹은 채굴 조직에 집중되어 분산화가 이뤄질 수 없는 구조인 것이다. 이더리움은 이 문제를 해결하고자 지분증명 방식으로의 전환을 추진했다. 지분증명 방식으로 전환 시 전기 에너지 소모량이 적어질 뿐만 아니라, 네트워크 공격 행위에 대해 자유롭게 설계할 수 있다는 장점이 있다. 예를 들어 지분증명 합의 알고리즘에서 이더리움 네트워크를 공격하는 경우, 공격자의 지분을 네트워크에서 삭제해버린다. 이를 통해 네트워크 공격이 예방 가능하다. 이더리움은 자체적으로 거버넌스를 가진 인터넷 플랫폼이다. 개발자들이 인센티브에 대해서 프로그래밍 할 수 있다. 이러한 인센티브들이 결국 사람들이 상호작용하는 방식을 규정하게 된다. 캐스퍼는 이더리움 네트워크에서의 작업증명 방식을 대체하게 될 지분증명 프로토콜로 이더리움의 보안을 한층 더 강화한다. 또한 캐스퍼를 통해 네트워크가 모두에게 열린 상태를 유지하면서도 네트워크에 배포되어있는 스마트 계약들이 처음에 정의된 대로 정확하게 실행될 수 있도록 보장할 수 있게 된다.[17]

프로그작업증명[편집]

프로그작업증명(ProgPoW)는 에이식(ASIC) 저항의 GPU 기반 채굴 알고리즘이다. 프로그PoW라고도 한다. 프로그작업증명은 GPU 기반의 채굴 알고리즘으로 기존의 ASIC(Application Specific Integrated Circuit) 기반 채굴을 무력화하기 위해 만들어진 새로운 블록체인 합의 알고리즘이다. 또한 이더리움에서 암호화폐 채굴을 위해 제작된 ASIC 기반 채굴을 차단하는 새로운 작업증명 알고리즘이다. 프로그작업증명은 프로그래매틱 작업증명(Programmatic Proof-of-Work, 프로그래밍 작업증명)의 약자로서, 주기적인 알고리즘 변경으로 ASIC 채굴기에 저항성을 가진다.

프로그작업증명은 이스탄불 업데이트 이후(10월 예정)로 연기한다고 발표했으며 2019년 3월 17일 이더리움 코어 개발자들이 GPU 기반 채굴 효율성을 개선할 수 있는 프로그작업증명의 적용을 승인했다. 채굴기에 저항성을 높인 프로그작업증명 알고리즘의 에이식 저항은 특별 주문한 반도체로 가능한 채굴을 무력화시킨다는 의미이다. 이더리움 프로그작업증명 알고리즘의 개발자는 현재 블록체인 및 인공지능 인프라의 리더인 코어사이언티픽(Core Scientific)의 최고기술책임자(CTO)인 크리스티-리 마인한(Kristy-Leigh Minehan)이다.

활동증명[편집]

활동증명(PoA, Proof of Activity)은 새로운 블록을 생성하고 그 블록의 유효성을 검증하는 활동을 한 노드에게 보상을 지급하는 합의 알고리즘이다. 활동증명 방식은 일반적으로 사용되는 작업증명, 지분증명의 혼합 접근 방식이다. 디크레드(Decred)가 활동증명 합의 알고리즘을 사용하고 있다.

비트코인은 암호화폐의 인플레이션을 피하기 위해 총 발행량을 2,100만 개로 한정했다. 따라서 비트코인이 다 채굴된 이후에는 채굴에 대한 보상이 제공되지 않으며 비트코인 채굴자들은 거래 수수료만 받게 된다. 그러나 이것이 공유지의 비극으로 인한 보안 문제를 일으킬 수 있다고 추측하는 사람들도 있다. 그래서 그 대안으로 제시된 것이 바로 활동증명 합의 알고리즘이다. 활동에 대한 증거로 채굴자는 기존 작업증명 방식으로 컴퓨팅 퍼즐을 풀어 채굴을 시작한다. 다만 이렇게 채굴한 블록에는 트랜잭션이 존재하지 않고 오로지 헤더와 채굴자의 보상 주소만 포함되어 있다. 이 시점에서 지분증명 시스템으로 바뀌게 되는데, 헤더의 정보를 기반으로 새 블록에 서명하기 위해 임의의 검증자 그룹이 선택된다. 검증자가 가지고 있는 코인의 지분이 더 많을수록 선택될 가능성이 커진다. 검증이 끝나면 본격적인 블록이 되는 것이다. 만약 선정된 검증자 중 일부가 블록을 생성할 수 있는 시간이 없다면 그다음으로 이긴 블록이 선정되고, 새로운 검증자 그룹이 생성되며 이렇게 정확한 양의 서명을 얻을 때까지 지속된다. 새로운 검증자 수수료는 채굴자와 검증자가 적절히 나눠 갖게 된다. [18]

지분증명[편집]

지분증명(PoS, Proof of Stake)은 해당 암호화폐를 보유하고 있는 지분율에 비례하여 의사결정 권한을 주는 방식이다. 주주총회에서 주식 지분율에 비례하여 의사결정 권한을 가지는 것과 유사하다. 채굴 과정이 필요 없다. 큐텀(QTUM), 피어코인(Peercoin) 등의 암호화폐가 지분증명 방식을 사용하고 있다. 스트라티스(Stratis)는 처음에 작업증명 방식을 사용했으나 지분증명 방식으로 변경했다. 이더리움도 이더리움 2.0부터 작업증명 방식을 벗어나 지분증명 방식을 채택할 예정이다.[19]

지분증명은 의사 결정 권한을 코인 보유량에 비례해 지급하는 방식이기 때문에 코인을 많이 보유하고 있는 노드일수록 블록 생성에 참여할 수 있는 기회가 더 많다. 블록 생성에 따른 보상도 코인 보유량에 비례한다. 주주 총회에서 주식 지분에 비례해 더 큰 의사결정 권한을 가지는 것과 유사하다고 보면 된다. 지분증명 방식은 모든 노드들의 승인을 거치지 않아도 되니 작업증명 방식보다 거래 처리 속도가 빠르다. 이는 곧 전력소비를 줄일 수 있음을 의미한다. 이 때문에 이더리움 재단은 기존 합의 방식인 작업증명 방식을 지분증명 방식으로 전환하기 위한 ‘캐스퍼(Casper)’ 프로젝트를 진행 중에 있다. 그러나 지분증명 방식은 ‘평등’을 추구하는 블록체인의 본질에서 벗어나 ‘부익부 빈익빈’을 초래한다는 꼬리표가 따라다닌다. 많은 코인을 가지고 있을수록 더 많은 보상을 받는 구조이기 때문이다.[3]

담보지분증명[편집]

코스모스코인(Cosmos Coin)

담보지분증명(BPoS, Bonded Proof of Stake)은 코스모스코인(Cosmos Coin)이 사용하는 지분증명 기반의 합의 알고리즘이다. 코스모스의 지분증명을 담보지분증명이라 일컫는다. 담보지분증명 방식은 구현하기 훨씬 어렵고 마스터노드뿐만 아니라 위임지분증명 프로토콜을 활용하는 지분증명 프로토콜보다 훨씬 높은 수준의 보안을 제공한다.[20]

담보지분증명 합의 알고리즘은 보상의 개념으로, 네트워크 관리, 거버넌스 투표, 생태계 확장이라는 의무를 이행했을 때 보상이 이뤄진다. 담보지분증명 합의 구조의 검증인의 경우, 연속으로 블록을 자기 차례에서 일정 시간 내에 생성하지 못하면 패널티가 부과된다. 단순히 노드를 돌려놓고 보상을 받는 개념이 아니라 투표가 진행됐을 때 투표권을 행사하고 네트워크를 관리하는 등 지속적인 관리와 의무를 행해야 보상을 받게 되는 셈이다. 의무가 없으면 지속적으로 지식과 자본을 투입하기가 쉽지 않은데 의무를 규정하고 시스템적으로 패널티를 적용하면 검증인들의 자세가 바뀔 수 없다. 네트워크를 잘 운영하는 경우에는 암호화폐가 주어지고, 허브에서 이뤄지는 모든 전송 수수료가 검증인들한테 돌아간다. 보상으로 주어지는 아톰, 노드 운영을 위해서는 지식이 각각 있어야 하기 때문에 코스모스의 검증인은 지식이 동시에 필요하다.[21] 담보지분증명을 사용하면 위임자는 보상을 받기 위해 어떤 식으로든 검증자를 신뢰할 필요가 없다. 그러나 오작동에 대한 유효성 검사의 슬래싱(Slashing)도 위임자에게 영향을 주기 때문에 유효성 검사에 주의를 기울여야 한다. 담보지분증명은 오픈소스 코스모스 SDK 모듈로 구현된다.[22]

리스지분증명[편집]

리스지분증명(LPoS, Leased Proof of Stake)은 자신이 소유한 암호화폐를 다른 사람에게 리스(lease)로 임대해 주고 그 대가로 보상을 받는 방식이다. 웨이브즈가 이 방식을 사용하고 있다. 리스지분증명은 지분증명 합의 알고리즘의 향상된 버전이다.

일반적으로 지분증명 알고리즘에서 일정량의 암호화폐를 보유한 노드는 다음 블록을 생성하여 블록체인에 추가할 수 있지만, 리스지분증명에서는 사용자가 잔액을 다른 풀노드에 임대할 수 있다. 리스지분증명을 사용하면, 사용자는 자신이 소유한 웨이브를 다른 풀노드 사용자에게 임대할 수 있다. 자신이 보유하고 있는 웨이브즈를 풀마이닝 노드에게 임대해서 그들이 제공하는 추가 채굴에 대한 대가로 수입을 받는 것이다. 풀노드가 받는 금액이 클수록 해당 노드가 다음 블록의 생성자로 선택될 가능성이 높아진다. 풀노드가 다음 블록의 생성자로 선택되면, 임대자는 풀노드가 획득한 트랜잭션 수수료 총액 중 자신이 임대해준 코인 수량에 비례한 액수를 보상으로 받게 된다.[23]

시간소각 지분증명[편집]

시간소각 지분증명(ABPoS, Age Burnable Proof of Stake)은 기존 지분증명 방식의 문제점을 개선하기 위해 엑스피체인(XPChain)이 새로이 개발한 합의 알고리즘이다. "Age Burnable Proof of Stake"라는 말로 알 수 있듯이 시간이 가면서 코인을 소각할 수 있는 방식이다. 마치 우리의 현재 통화가 마모되고 손상되어 수명을 다하듯이, 암호화폐 또한 그렇게 개발한 것이다. 이를 통해 코인 수를 항상 적절하게 유지할 수 있다.

지분증명 방식은 피어코인의 개발자가 만든 거래 승인 시스템이자 보상 시스템이다. 비트코인 등 수많은 암호화폐가 채용하고 있는 작업증명 방식은 거래 승인에 막대한 자원을 소비하는 고성능 컴퓨터의 계산이 필요하지만, 지분증명 방식은 네트워크에 연결된 각각의 노드에 거래 승인을 받는 분산형 시스템이다. 작업증명 방식과 비교했을 때, 지분증명 방식이 소비하는 자원은 극히 적다. 암호화폐를 가지고 있는 누구나 개인 컴퓨터에 암호화폐 지갑을 설치하고 네트워크에 접속해 분산형 시스템의 일부가 될 수 있으며, 그에 따른 보상을 받을 수 있다. 시간소각 지분증명 방식은 코인의 수량에 따라 보상의 정도가 달라진다. 보상은 스테이킹하는 트랜잭션과는 독립된 다른 트랜잭션으로 배분된다. 또한 모든 트랜잭션을 처리하는데 수수료가 부과되며 수수료는 전량 소각된다. 결과적으로 총 발행량은 매 스테이킹마다 소각된 수수료만큼 감소한다. 최대 발행량이 정해져 있지 않은 지분증명 방식의 암호화폐의 가장 큰 문제점은 인플레이션이다. 스테이킹되는 물량 대비, 시간소각 지분증명 방식을 이용한 거래 수수료의 지속적인 소각은 엑스피체인의 총 공급량을 억제하는데 도움을 준다.

시간소각 지분증명 방식에는 트랜잭션의 스테이킹 성공을 통해 발생하는 보상 트랜잭션을 조건부로 편집할 수 있는 특별한 기능이 있다. 예를 들어 임의의 사업자 A가 스테이킹 가능한 웹 지갑을 통해 웹 서비스를 운용한다고 가정해보자. 수입은 웹 서비스의 운용에 있어서 가장 중요한 요소 중 하나이다. 시간소각 지분증명을 활용한 서비스의 관리자는 보상 트랜잭션을 수정해 사용자에게 지급되는 보상의 일부를 손쉽게 운영비로 충당할 수 있다. 시간소각 지분증명 방식을 사용하는 서비스 관리자는 안정적인 수입이 보장되므로 사업을 크게 성장시킬 수 있는 발판을 쉽게 마련할 수 있다. 기존의 지분증명 방식은 한 주소에 코인을 더 많이 보유할수록 더 많은 지분증명 보상을 받을 수 있는데, 이것은 "부자는 더 부자가 된다"라는 비판을 받아 왔다. 시간소각 지분증명에서는 트랜잭션의 크기에 따라 보상금을 조기에 받는 사람도 있지만 대신 보상금액이 크게 줄어들 수 있다. 즉, 트랜잭션의 규모가 클수록 보상을 받을 대까지의 간격은 짧아지지만 보상은 줄어든다. 시간소각 지분증명 방식에서는 지분증명 보상을 얻기까지 숙성기간을 3일로 설정했고, 그 동안은 지분증명 보상을 받을 수 없다. 숙성기간이 늘어남에 따라 이율이 증가하며 60일에 최대치가 된다. 긴 숙성기간은 이자율을 높이기 위해 조장되며, 단기간 반복 채굴의 이자율이 실제와 현저하게 다른 문제를 해결하려고 노력한다. 또한 가장 효율적인 트랜잭션의 크기는 지분증명 난이도에 따라 다라진다. 지분증명 보상을 받기 위해 수천만 또는 수억 개의 암호화폐를 소유할 필요는 없다. 보유수량이 많은 홀더가 많은 지분증명 보상을 받는 것이 항상 가능한 것은 아니다. 또한 지분증명의 연간 이자율은 대략적인 값으로, 소유자가 연간 최대 지분증명 보상을 받을 수 있다는 보장은 없다.

우로보로스 지분증명[편집]

우로보로스 지분증명(OPoS, Ouroboros Proof of Stake)은 기존 지분증명 방식의 문제점인 그라인딩 공격(Grinding Attack)을 방어하기 위해 코인토싱(coin tossing) 프로토콜을 사용하여 만든 합의 알고리즘이다. 찰스 호스킨슨(Charles Hoskinson)에 의해 개발되어 카르다노가 이 방식을 사용하고 있다.[24]

찰스 호스킨슨은 랜덤 변수 생성 프로토콜인 코인 토싱을 블록체인 노드들의 합의 알고리즘에 도입했다. 이는 블록 생성을 담당할 대표 노드들을 임의로 선정하는 시스템이다. 미리 설정된 변수를 통해 각 노드들이 번갈아 가면서 균일하게 블록 생성에 참여할 수 있는 기회를 가질 수 있도록 했다. 이로 인해 우로보로스 지분증명 방식은 ‘임의성’이라는 독창적인 방법으로 특정 노드들의 지분 독식을 막았다는 평가를 받았다. 하지만 아직 안정성을 증명하는 테스트 단계에 머물러 있어 현실화되기까지는 시간이 걸릴 것으로 보인다.[25]

유동지분증명[편집]

유동지분증명(LPoS, Liquid Proof of Stake)이란 암호화폐 소유자 중 랜덤하게 대표자를 선출하고, 이 대표자들끼리 합의하여 의사결정을 내리는 합의 알고리즘이다. 유동위임지분증명 또는 리퀴드 지분증명이라고도 한다. 테조스(Tezos)가 이 방식을 사용한다.

일반적으로 블록체인 구조에서 분산형 피투피 네트워크 참가자인 노드는 네트워크를 계속 가동 및 운영하는 데 필요한 컴퓨팅 자원을 제공하며, 의사결정을 위한 합의 과정에 참여하게 된다. 지분증명 합의 알고리즘은 테조스의 다양한 참가자들이 블록체인 상태에 대한 합의에 도달하는 메커니즘이다. 다만, 테조스는 다른 지분증명 프로토콜과는 달리, 모든 사용자가 테조스의 합의 프로세스에 참여할 수 있으며 네트워크의 보안과 안정성에 기여한 대가로 프로토콜 자체에 의해 보상받을 수 있다. 테조스의 지분증명 알고리즘은 사용자들이 무작위로 선택되어서 보유한 코인양에 따른 보상을 받도록 설계되었다. 즉, 아주 적은 양의 토큰을 가지고 있어도 블록을 생성하고 보상을 받을 수 있는 기회가 있다. 이렇듯 테조스의 고유한 지분증명 합의 알고리즘은 모든 사용자에게 네트워크상의 트랜잭션 검증에 참여할 수 있는 기회를 제공하고 프로토콜에 의해 보상받게 만든다. 블록 생성의 적합성 여부는 테조스 코인을 보유한 일부 대표자들인 베이커(baker)들의 투표로 결정한다. 테조스에서 베이커는 블록체인에 대한 검증 행위를 하는 사람으로서, '빵을 굽는 사람'에 비유한 테조스의 은어이다. 베이킹(baking)은 테조스 블록체인에 블록을 서명하고 게시하는 행위이다. 이는 대표자인 베이커들이 한 블록의 모든 트랜잭션이 정확하고, 트랜잭션 순서가 합의되고, 이중지불은 발생하지 않았음을 확인하는 지분증명 합의 메커니즘의 중요한 구성요소이다.

테조스는 이오스(EOS)와는 달리 베이커를 선거로 뽑지 않는다. 테조스에서는 암호화폐인 테지(XTZ)를 8,000개 이상 보유한 노드만이 블록의 검증 및 생성 과정에 참여할 수 있다. 즉, 8천개 이상의 테지를 보유한 베이커만이 빵을 구워낼 수 있다. 테조스의 기본 블록 생성 주기는 1분이다. 대표가 아닌 일반 사용자들은 대표에게 지분을 위임하여 네트워크에 참여하게 된다. 토큰을 많이 위임 받은 베이커일수록 블록을 검증할 기회가 늘어난다. 베이커들에게 네트워크 보안에 대한 보상 및 테조스의 5.5%의 인플레이션율을 통한 보상이 주어진다. 테조스가 이오스의 위임지분증명 방식과 다른 것은 투표를 적게 받았더라도 블록을 확장해 나갈 수 있다는 것이다. 단, 적게 받은 만큼, 확장할 힘을 많이 갖지는 못한다. 테조스는 투표를 적게 받은 사람들을 하드포크를 통해 분열시키는 게 아니라, 그들에게도 동일한 기회를 제공하면서 함께 확장해 나가기 때문에 민주적인 생태계를 구축한다. 이렇게 되면 이론적으로는 비트코인과 달리 업그레이드를 둘러싼 파벌 문제를 겪지 않아도 된다.

익명지분증명[편집]

익명지분증명(PoAS, Proof of Anonymous Stake)은 거래를 다른 사람이 볼 수 없도록 익명으로 만든 사용자가 보상을 받는 방식의 합의 알고리즘이다. 한 사용자가 거래를 요청하게 되면, 이른바 클로커(Cloaker)들이 등장하여, 이 거래를 추적할 수 없도록 무작위로 여러 참가자를 섞고, 이에 따른 보상을 받게 된다. 익명지분증명 알고리즘은 클록코인에 의해 처음 도입되었으며, 거래의 익명성 지원에 대한 보상을 받는 다른 사용자로부터 거래가 클로킹된다. 다른 사용자는 트랜잭션의 입력 및 출력을 제공하고 암호화 트랜잭션의 소스 및 대상에 대한 비밀을 유지하는 데 도움이 된다.[26] 클록(Cloak)과 스펙터(Spectre) 코인이 익명지분증명 방식을 사용하고 있고, 특히 스펙터코인은 해당 알고리즘 개발에 집중하고 있다.

지분속도증명[편집]

지분속도증명(PoSV, Proof of Stake Velocity)이란 소유권뿐만 아니라 사용자들의 활동 속도(Velocity)까지 고려하는 합의 알고리즘이다. 지분활동증명이라고도 한다. 지분속도증명 합의 알고리즘을 사용하는 암호화폐로는 레드코인(Reddcoin) 등이 있다.

비트코인의 채굴은 스크립트(script) 채굴에 특화된 특정 용도의 에이식(ASIC) 하드웨어가 개발된 것으로 설비 투자 경쟁이 일어났다. 레드코인 개발자 래리 렌(Larry Ren)은 기존에 블록을 만들고 거래를 확인하는 데 널리 쓰이던 작업증명과 지분증명 방식의 문제점을 해결하기 위해 지분속도증명 합의 알고리즘을 개발했다. 지분속도증명 방식은 간단히 설명해서 단리가 아닌 복리로 이자기 지급되는 방식이라고 할 수 있다.[27] 일반적으로 365번 스테이킹 할 때마다 5~6%의 이자를 제공하게끔 설계되었다. 스테이킹은 지분속도증명을 이해하기 위해 가장 중요한 요소중 하나이다. 스테이킹은 지갑이 거래를 검증하고 코인을 통해 보상을 받는 일련의 과정이다. 지갑이 스테이킹 하고 있다는 말은, 코인을 보내는 사람들이 실제로 그 코인을 소유하고 있고 그것을 누군가에게 송금할 수 있는지를 확인하기 위해 진행되는 거래를 살펴보고 있다는 뜻이다. 온라인상의 대부분의 지갑이 특정 거래가 유효하다고 인정하게 되면, 해당 거래가 네트워크에서 받아들여지게 된다.[28]

이러한 방식으로 네트워크를 안전하게 지키는 역할에 대한 보상으로, 매 분마다 한 명씩 자신이 소유한 코인에 대해 이자를 받을 수 있는 사람이 선정된다. 이는 일종의 복권에 해당하는데, 현실 세계에서 복권을 많이 산 사람이 당첨 확률이 올라가듯, 지분속도증명 방식에서도 복권을 많이 가진 사람이 보상을 받을 확률이 높다. 이때 복권은 암호화폐의 나이를 뜻한다. 예를 들어, 처음으로 지갑을 만든 사람이 1월 1일에 친구에게서 5,000코인을 선물받고, 1월 3일에 10,000코인을 추가로 구입했다. 오늘이 1월 4일이라고 했을 때, 처음 친구에게서 받은 5,000코인의 나이는 3일이며 추후에 도입한 코인의 나이는 하루이다. 이런 상황에서 나이가 많은 코인의 당첨 확률이 높으니 먼저 받은 5,000코인이 보상받을 확률이 나중에 받은 10,000코인보다 높다. 추가로 코인을 다른 주소로 송금하거나 스테이킹을 통해 보상을 받게 되면 코인의 나이는 초기화된다. 지분속도증명 방식에서 꽝은 없음으로 당첨 확률은 [내가 가진 복권 수/네트워크에 속한 모든 코인이 가진 복권 수]라는 공식을 통해 산정하게 된다.[28]

지분시간증명[편집]

지분시간증명(PoST Proof of Stake Time)은 시간이 지남에 따라 지분이 증가하는 지분시간 구성요소를 도입하는 합의 알고리즘이다. 이렇게 하면 인센티브가 향상되고 네트워크 보안이 강화된다. 또한 표준을 넘어 컨센서스의 분산을 향상시킨다. 지분시간증명은 베리코인(Vericoin)에서 실행되는 독자적인 암호화폐 프로토콜이다.

지분시간증명은 시간이 지남에 따라 스테이크 확률이 증가하는 스테이크 타임 구성 요소를 도입함으로써 합의를 형성하는 새로운 접근법이다. 이러한 방식의 코인 보상은 네트워크의 보안을 강화하고 향상시킨다. 베리코인 트랜잭션은 현재 비트코인보다 10배 더 빠르다. 이는 베리엄을 통해서 가능해졌다. 비트코인과 달리 베리코인에서는 컴퓨터에 디지털 지갑을 두고 다니는 것만으로 스테이킹이자 그를 통해 이익을 얻을 수 있다. 이 때문에 베리코인 네트워크에서 거래를 쉽게 확인할 수 있어 인터넷에 연결된 모든 사람이 몇 초 안에 자금을 송금하고 수령 할 수 있다. 또한 은행 계좌에 접속하지 못하는 사람도 금융 네트워크에 접근 할 수 있다.[29]

지분작업증명[편집]

지분작업증명(PoSW, Proof of Stake and Work)란 작업증명 방식과 지분증명 방식을 혼합한 하이브리드 방식의 합의 알고리즘이다. 활동증명(PoA, Proof of Activity)이라고도 한다. 디크레드(Decred), 애터니티(Aeternity), 하이퍼캐시(Hypercash), 해피코인(Happycoin), 쿼크체인(QuarkChain) 등이 이 방식을 사용하고 있다.[30]

지분작업증명 방식의 기본 아이디어는 채굴자가 모든 해시파워를 네트워크에 제공하려고 하는 경우 채굴자는 이에 비례하는 토큰 수를 스테이킹 해야 한다. 즉, 이중지불 공격을 수행하려면 공격자가 네트워크의 해시 전력의 51% 이외에 토큰을 보유해야 한다. 또한 풀 소유자가 풀에서 수집한 모든 해시파워의 효율성을 최대화하기 위해 충분한 지분을 확보해야 하므로 채굴풀에게 더 많은 비용이 소요된다. 지분작업증명 방식은 작업증명 방식과 지분증명 방식의 장점을 혼합한 합의 알고리즘이다. 이 방식에서 채굴자는 네트워크에 기여할 수 있는 해시파워를 극대화하기 위해 네트워크의 해시파워 비율에 비례하여 일부 지분을 확보해야 한다. 기존 퍼블릭 블록체인의 주요 합의 알고리즘은 작업증명과 지분증명, 위임지분증명이었다. 사토시 나카모토(Satoshi Nakamoto)의 백서에서 등장한 이래로 작업증명은 강력한 보안성을 보여주었다. 그러나 속도와 확장성의 한계로 그다지 효율적이지 못하다는 문제점이 있었다. 지분증명 방식은 에너지 자원 측면에서 보다 효율적이나 보안문제가 아직 해결되지 않고 있다. 작업증명과 지분증명 방식의 이점을 모두 얻기 위해서는 대시와 디크레드 같은 하이브리드 합의 알고리즘이 제안되었다. 대시는 사용자에게 1000 DASH를 스테이킹 하도록 하여 마스터노드를 설정하도록 유도하고 인스턴트샌드(instantsend)를 통해 대단히 빠른 트랜잭션을 허용한다. 그러나 대시는 여전히 51%의 이중지불 공격으로 어려움을 겪고 있다. 디크레드에서는 모든 작업증명 채굴 블록에 체인에 추가되기 전에 여러 지분 보유자들이 서명을 해야 하므로 지분 보유자가 충분히 분산되어 있을 때 51% 공격에 대해 더 나은 보안을 얻는다.

확률적 지분증명[편집]

확률적 지분증명(SPoS, Stochastic PoS; Stochastic Proof of Stake)이란 합의에 참여할 커미티를 랜덤하게 선출하되 코인 보유량 등에 비례하여 선출될 확률이 높아지는 합의 알고리즘이다. 이것은 알고랜드(Algorand)의 무허가형 순수지분증명방식과 유사한 알고리즘으로서 '실사용 암호화폐'를 목표로 하고 있는 로커스체인(Locus Chain)이 채택한 방식이다. 합의에 참여할 수 있는 노드를 미리 정하는 이오스(EOS)의 위임지분증명과 달리 로커스체인의 확률적 지분증명은 코인 보유량, 최근 투표 참여 횟수, 네트워크 참여도 등에 따라 매 라운드마다 새로운 커미티를 랜덤하게 선출하기 때문에 로커스체인은 이것을 통해 높은 수준의 탈중앙화를 이룰 수 있다고 주장한다. 합의에 참여할 노드(프로포저, 밸리데이터)를 특정하거나 미리 예측할 수 없으므로 악의적 공격에 의한 조작이 어려워져 합의결과의 공정성과 네트워크의 안정성이 확보되는 장점이 있다.

로커스체인이 적용한 다이내믹 샤딩(동적 샤딩) 기술은 노드가 부담해야 하는 네트워크 부하를 샤드 수만큼 나누고 네트워크 전체의 트랜잭션 처리량을 샤드 수만큼 늘리면서 알고리즘으로 샤드를 재배치하여 샤드간의 균형을 유지하는 기술로 알려져 있는 다이내믹 샤딩을 적용하여 네트워크를 샤드 단위로 쪼개고 각 샤드에서 독립적으로 비잔틴 장애 허용합의를 수행한다. 이때 합의에 참여할 커미티를 선출하는 알고리즘으로 채택한 방식이 확률적지분증명이다. 각 샤드에서 라운드 합의를 위해 투표인단에 포함되는 노드를 랜덤으로 선출할 때, 지분량이 높은 노드는 선출될 확률이 높아진다.

위임지분증명[편집]

스팀잇(Steemit)

위임지분증명(DPoS, Delegated Proof of Stake)은 암호화폐 소유자들이 각자의 지분율에 비례하여 투표권을 행사하여 자신의 대표자를 선정하고, 이 대표자들끼리 합의하여 의사결정을 내리는 방식이다. 국민의 대표로 의원을 뽑아 의회를 구성하는 대의 민주주의 제도와 유사하다. 이오스, 스팀, 리스크, 엘프, 라이즈, 아크, 비트셰어, 시프트, 보스코인 등이 위임지분증명 방식을 채택하고 있다.

위임지분증명은 노드들이 코인 보유량에 따라 투표권을 행사해 중요한 의사결정 권한을 수행할 일종의 대리인을 산출하는 합의 방식이다. 이는 코인 보유자들이 자신의 권한을 위임해 대표자를 선출하는 방식이 대의 민주주의와 유사해 ‘토큰 민주주의’라는 별명이 붙기도 했다. 위임지분증명 방식의 경우 소수의 대표 노드들에게만 거래 내역 승인을 거치면 되니 처리 속도는 훨씬 빨라진다. 이더리움은 평균적으로 초당 20TPS를 처리하는 반면 이오스는 3000TPS를 처리할 수 있어 속도 면에서의 장점은 이미 검증되었다. 그러나 2018년 9월, 이오스 블록 생성을 담당하는 대표 노드 가운데 일부가 블록생성자가 자격을 유지하기 위해 서로에게 투표했다는 의혹이 제기되었다. 이에 따라 위임지분증명 방식에 치명적인 결함이 있다는 사실이 알려졌다. 이처럼 위임지분증명 방식은 일반 노드들의 투표율이 저조할 경우 소수의 대표 노드들에 의해 블록체인 생태계가 좌지우지 될 수 있다는 한계가 있다.[3]

마스터노드 지분증명[편집]

마스터노드 지분증명(MPoS, Masternode Proof of Stake)이란 암호화폐 네트워크에 존재하는 노드인 보통 네트워크상에서 트랜잭션을 검증하여 전달하는 역할과는 다른 특별한 기능을 하는 노드를 의미하는데, 마스터 노드의 가장 두드러진 특징은 특별한 역할 즉 익명화 작업, 즉각 전인 거래, 투표의 기능 등을 통한 해당 암호화폐의 이자 수령이다. 스마트 계약을 위한 블록체인 플랫폼인 이더제로(Etherzero)가 마스터노드 지분증명 합의 알고리즘을 사용하고 있다.

마스터노드 지분증명은 마스터노드+지분증명(Masternode+PoS)의 약자로, 이오스의 21개 슈퍼 노드를 대체하는 마스터노드를 특징으로 한다. 거래 수수료를 없애고, 현재 여러 블록체인이 추구하고 있는 커뮤니티의 자율성 획득이라는 가치를 구현하고자 한다. 마스터노드 지분증명 방식을 통해 TPS는 수천 레벨 이상에 달하며 메인 노드 시스템은 이더제로의 용이성과 함께 적시에 계좌 이체 기능을 수행할 수 있고 커뮤니티는 매우 자율적이며 모든 주요 노드는 제안, 투표, 커뮤니티 구축에 참여할 수 있다. 마스터노드 지분증명 방식은 블록 생성을 승인 또는 비승인 할 수 있고, 추가 투표는 블록 헤더에 추가로 기록된다. 거래 유효성의 경우 블록 헤더의 변경된 사항만 다운로드하여 확인함으로써 블록 생성의 난이도와 유지비용을 줄이는 방식을 사용하고 있다.[31]

번앤언 위임지분증명[편집]

번앤언 위임지분증명(B&E DPoS, Burn and Earn Delegated Proof of Stake)이란 보유하고 있는 암호화폐를 소각(burn)하면 그에 대한 보상으로 새로운 암호화폐를 획득(earn)할 수 있는 기회를 제공하는 방식의 합의 알고리즘 이다. 이오스크롬(EOS Chrome)에 적용된 합의 알고리즘이다. 번앤언 위임지분증명 방식을 제안한 사람은 이오스크롬을 만든 ㈜블록체인기술연구소(IBCT)의 이정륜(마틴 리, Martin Lee) 대표이사이다.

이오스 크롬 사용자가 자신이 소유한 이오스 크롬 코인 1개를 소각 하면, 그에 대한 보상으로 크로마이트 코인 30개를 획득할 수 있다. 이 크로마이트 코인을 이용하여 30개의 블록 생성자에게 투표를 하면, 그 대가로 새로운 댑코인 을 얻을 수 있다. 이 댑코인을 크롬 거래소에서 다시 이오스 크롬 코인으로 교환할 수 있다. 번앤언 위임지분증명은 이오스 크롬의 합의 알고리즘으로 이오스의 합의 알고리즘인 비잔틴 장애 허용 알고리즘을 개선하였다. 이오스의 경우 이오스를 많이 보유한 개인/단체에 의해 블록생성자가 결정될 확률이 높으며, 이오스는 위임지분증명 합의 알고리즘을 사용하는 스팀과 달리 이오스 코인을 블록 생성자만 가져가고, 생태계 참여자나 블록생성자가 아닌 댑개발사는 이오스 코인을 가져갈 수 없으며, 이오스 코인은 또한 블록생성자 투표 기능이 있기 때문에 스팀과 달리 자본의 중앙화를 만들 수 있다. 이오스 크롬은 이러한 문제를 해결하고자 이오스 크롬 코인과 크로마이트를 분리하여 이오스 크롬은 외부 암호화폐 거래소와 교환할 수 있고, 크로마이트는 외부 암호화폐 거래소와 교환이 불가능하지만, 이오스 크롬을 통해서만 거래할 수 있다. 크로마이트는 블록 생성자/생성자 후보에게 투표 시 소각되고 댑코인을 받을 수 있다.[32]

슈퍼노드 지분증명[편집]

슈퍼노드 지분증명(SPoS, Supernode Proof of Stake)은 코인을 임대하는 형식으로 대표노드인 슈퍼노드를 선출하고, 블록체인 생성에 대한 인센티브를 받아서 공평성을 부여한 합의 알고리즘이다. 개발자 써니킹(Sunny King)이 만들었으며, 슈퍼노드 간의 의사처리로 빠른 속도를 가지고 있다는 것이 특징이다.[33]

지분증명을 고안한 써니킹이 지분증명의 단점을 보완해 고안한 합의 알고리즘으로, 지분증명의 업그레이드 버전으로 기본적인 틀은 지분증명과 동일하나 세부적인 부분에서 차이를 보이고, 위임지분증명 과 같이 슈퍼 노드가 존재하나, 슈퍼 노드의 선출 방식이 다르며, 지분증명 계열의 대표 블록체인인 이오스(EOS) 와 비교를 해보면 이오스는 사용자가 보유한 이오스 수량만큼의 표를 얻어 투표를 통해 대표 노드를 선출하며. 최대 30개 노드에 동시에 투표가 가능하여, 대표 노드끼리 표를 교환해 카르텔 을 형성할 수 있는 위험성이 있다. 슈퍼노드 지분증명의 경우 보유하고 있는 코인으로 투표를 하는 것이 아닌, 지지하는 노드에 보유한 코인을 임대하는 방식으로, 노드에 코인을 임대한 사용자는 임대에 대한 이익을 얻을 수 있고, 대표 노드로 선정된 노드는 블록 생성에 대한 이익을 얻고, 사용자의 임대 수익은 사용자의 생태계 참여를 장려하며, 노드의 블록 생성 수입은 하드웨어 업그레이드 비용 및 노드 운영비용에 쓰여 지속적인 하드웨어 업그레이드를 통한 전체 생태계 성능 발전을 가져온다. 또한 이런 특징으로 인해, 블록체인의 고질적인 문제라고 평가받는 51% 공격에 거의 영향을 받지 않아 높은 보안성을 자랑한다.[34] 합의 메커니즘으로 슈퍼노드 하드웨어 구성을 기반으로 메인 네트워크의 모든 트랜잭션을 1초 이내에 처리하며, 코인 발행에 대한 리워드를 가져가게 되며 과정의 흐름을 보게 되면 홀더들을 거쳐야만 가능한 방식이기에 기존 슈퍼노드들에 의해 발생하는 불합리한 시스템을 탈피할 수 있다.[35]

위임지분서비스증명[편집]

위임지분서비스증명(DPoSS, Delegated Proof of Stake Service) 합의 알고리즘은 투표에 따른 지분 위임 및 서비스 이용도를 지표로 블록생성자를 선출하는 알고리즘이다. 퍼블릭과 프라이빗의 경계를 넘나드는 블록체인 플랫폼인 레지스(Ledgis) 팀이 개발했다. 블록생성자는 프론티어(frontier)와 인터리어(interior)로 구성되어 있다. 프론티어는 전체 블록생성자 중 2/3을 담당하고 인터리어는 전체 블록생성자 중 1/3을 담당한다. 프론티어는 레지스 메인넷 생태계를 확장하는 역할로 블록체인 내의 양질의 서비스를 운영하는 블록생성자이다. 블록체인의 가치는 양질의 디앱 서비스에 의해 결정되기 때문에 레지스 메인넷에서는 양질의 서비스를 제공하는 사용자가 블록생성자가 될 수 있고 그에 따른 보상을 받을 수 있다. 이로 인해 프론티어가 운영하는 디앱은 서비스 이용료를 레지스 코인 홀더로부터 얻게 되고 추가적으로 블록 보상과 기여 보상을 얻게 된다.

이중위임지분증명[편집]

이중위임지분증명(DDPoS, Dual Delegated Proof of Stake)은 기존의 위임지분증명 방식을 사용하면서, 알고리즘에 따라 실시간으로 교체되는 임의의 노드인 시그마노드(sigma node)를 추가하여 검증하도록 함으로써 대표자들 간의 담합에 의한 블록체인 데이터 조작 가능성을 예방한 합의 알고리즘이다. 곽진영이 창시한 시그마체인(Sigmachain)이 이중위임지분증명 방식을 사용하고 있다.

이중위임지분증명은 이오스나 스팀에서 사용 중인 엔진에 비하여 보안성이 뛰어나고, 개인정보보호를 강화시켰으며 기존의 위임지분증명 방식에 검증 절차를 한 단계 더 추가했다. 자세히 살펴보면, 총 21개의 대표 노드 가운데, 17개는 암호화폐 소유자들의 지분에 비례하여 투표로 선출된 대표자(증인)로 구성되고, 나머지 4개는 전체 노드들 중에서 랜덤하게 선출된 노드(시그마노드)로 구성된다. 이중위임지분증명 방식에서는 선출된 대표자(마스터노드) 외에도 자체 알고리즘에 따라 랜덤하게 선택되는 임의의 노드인 시그마노드가 교차 검증을 한다. 결국 시그마체인을 사용하면 암호화폐 소유자들이 각자의 지분율에 비례하여 투표권을 행사하여 자신의 대표자를 선정하고, 이 대표자들끼리 합의하여 의사결정을 내리는 위임지분증명 방식의 장점을 그대로 사용하면서, 알고리즘에 따라 랜덤하게 실시간으로 교체되는 임의의 노드인 시그마노드를 추가하여 검증하도록 함으로써 대표자들 간의 담합에 의한 블록체인 데이터 조작 가능성을 예방할 수 있다. 이러한 위임지분증명 방식은 기존 작업증명 방식의 단점인 트랜잭션 처리 속도와 위임지분증명 방식의 보안 취약성 부분을 해결한 진일보한 알고리즘으로서, 국제특허출원 중에 있다.[36]

인공지능 위임지분증명[편집]

인공지능 위임지분증명(AI DPoS, Artificial Intelligence Delegated Proof of Stake)은 기존의 위임지분증명 방식에 인공지능(AI) 기능을 추가한 합의 알고리즘이다. 인공지능 기반의 블록체인 플랫폼을 위한 암호화폐인 벨라스(Velas)에서 사용된 합의 알고리즘이다.

인공지능 위임증명은 기본적으로는 기존의 위임지분증명 방식을 따르고 있지만, 인공지능이 자율적으로 판단하여 대표를 선택하여 블록생성 권한을 준다는 것이 큰 특징이다. 이를 통해 비트코인의 전통적인 작업증명시스템, 그리고 피어코인과 엔엑스티(NXT)의 지분증명 시스템을 포함한 합의 알고리즘의 대안이 갖고 있는 문제를 해결하려 한다. [37] 또한, 다른 매개 변수를 사용하여 노드 자체의 신뢰성을 포함하여 가장 작동 가능하고 효율적인 노드를 판별하고 이들 노드만 합의를 허용함으로써 악의적이거나 손상된 노드가 제거되어 전체 블록체인을 보호하게 된다. 각 노드는 벨라스 인공지능에 의해 등급으로 평가된다. 등급은 벨라스 시스템이 향후 선택할 노드를 결정하는 평판을 생성한다. 노드 선택은 1) 트랜잭션의 수 2) 스테이킹 포인트 3) 블록생성 4) 가동시간의 네 가지 기본 요소에 따라 다르다. 인공지능 위임지분증명은 일련의 데이터에서 관계와 패턴을 구별하기 위해 알고리즘의 순서를 사용한다. 신경망은 새로운 입력으로 스스로를 적응시키고 최적의 결과를 얻기 위해 노력한다. 상업적으로 관여하기 전에 신경망은 유전 알고리즘을 이용하여 플랫폼을 이상적으로 유지하고 성공적으로 블록체인을 만든다. 블록체인의 거래는 스테이킹 프로세스에 의해 입증되며, 행위자가 더 많은 암호화폐를 가질수록 블록체인을 검증하기 위해 선택될 가능성이 높아진다. 검증자들은 네트워크에 대한 적극적인 참여로 재정적 보상을 받는다. 인공지능 위임지분증명 시스템의 일부인 신경망은 노드 운영자에 대한 보상 및 블록 형성에 필요한 시간 계산을 포함하여 플랫폼에 대한 정확한 결정을 내리는데 사용된다. 새로운 블록이 생성될 때까지의 시간은 초당 계산된 트랜잭션에 의해 결정된다. 더 많은 거래가 완료 될수록 다음 블록 형성까지의 시간이 단축된다. [38]

포뮬레이션증명[편집]

포뮬레이션증명(PoF, Proof of Formulation)은 포뮬레이션 보상 순서를 바탕으로 채굴자를 선택하는 합의 알고리즘이다. 플레타(Fleta)가 기존의 위임지분증명을 일부분 변형하여 만들었다. 포뮬러 그룹은 네트워크에서 블록 생성 순서를 공유하고 확인하며, 공유되고 동기화된 순서를 통해 블록 생성을 진행한다. 가장 높은 순위의 포뮬러가 블록을 생성하고 다음 블록은 다음 순위가 생성하는 순환 방식을 이용하여 고속 거래 메커니즘을 제공하고 안정적인 블록 생성을 수행한다.[39]

포크능력증명[편집]

포크능력증명(PoF, Proof of Forkability)는 정해진 수의 선출된 검증자들이 투표를 통해 3분의 2 이상 찬성으로 의사결정을 하는 합의 알고리즘이다. 기존의 비잔틴 장애 허용(BFT)과 위임지분증명 합의 알고리즘의 장점을 결합하여, 애스톤(Aston)을 만든 ㈜엑스블록시스템즈가 개발했다. 기존의 합의 알고리즘에는 포크에 대한 어떠한 합의 메커니즘도 존재하지 않았다. 포크 자체를 허용하지 않았기 때문이다. ㈜엑스블록시스템즈은 분기 허용이 가능한 엑스블록체인에 대한 이에 대한 이에 대한 특별한 합의 알고리즘의 필요성을 느끼고 포크능력증명을 개발했다.[40]

하이퍼 위임지분증명[편집]

하이퍼 위임지분증명(Hyper-DPoS, Hyper Delegated Proof of Stake)은 기존의 위임지분증명 방식을 기반으로 하되, 일정한 시간 안에 빠르게 반응하고 응답할 수 있는 노드만을 선택하여 합의 과정에 참여시키는 합의 알고리즘이다. 하이퍼 디포스라고도 한다. 모파스MoFAS)가 이 방식을 사용하고 있다.

모파스는 기존 블록체인의 근본적 문제인 속도를 개선하기 위해 제한된 퍼블릭 블록체인(Limited Public Blockchain)을 고안했다. 이는 모파스가 구현하고자 하는 시간 내에 반응하고 응답할 수 있어야 노드로써 참여할 수 있는 모델이다. 이 노드로 참여하기 위해서는 고가용성 하드웨어 및 네트워크가 담보되어야 하며 하드웨어와 네트워크의 신뢰 지표인 PRR 조건을 만족해야 한다. 하이퍼 위임지분증명은 이 PRR 조건을 만족하는 노드들로 구성된 퍼블릭 블록체인에 디포스의 지분위임방식을 결합해 모든 구성원의 참여와 견제를 유도하여 네트워크상에서 제3자의 개입 없이 신뢰를 만드는 효율적인 알고리즘이다.[41]

트레이딩증명[편집]

트레이딩증명(PoT, Proof of Trading)은 암호화폐 거래소에서 사용자가 거래한 양에 비례하여 거래소 수수료 수익의 일부를 거래자에게 되돌려주는 트레이딩 채굴에서 사용하는 합의 알고리즘이다. 코인제스트에서 코즈에 최초로 적용한 채굴방식이다. 거래소에서 암호화폐를 거래하면 그 비율에 따라 블록 보상으로 코인을 준다. 따라서 코인 보상을 받기 위해 거래를 하고 거래가 활성화된다.[42] 트레이드 채굴의 시초는 에프코인(F Coin) 토큰이고 그 이후에도 각종 트레이드 채굴 방식을 채택한 토큰이 발행되었지만 몇 가지 문제점이 발견되어 급격한 가격의 하락 이후 투자자들로부터 외면을 받았다. 그 중 가장 큰 문제점으로 여겨지는 점은 총 발행량은 정해진데 비해 이일 채굴량에 제한이 없었다는 것이다. 코즈는 이 문제를 해결하기 위해 일일 채굴량에 제한을 두었다.[43]

소각증명[편집]

소각증명(PoB, Proof of Burn) 방식은 코인을 결코 돌아올 수 없는 지갑에 보내서 소각하면, 소각한 코인량에 비례하여 채굴 성공 가능성이 높아지는 방식이다. 지출증명이라고도 한다. 슬림코인(slimcoin)은 이 방식을 사용하는 유일한 암호화폐이다.

소각증명에서는 값비싼 컴퓨터 기기에 돈을 퍼붓는 대신 다시 반환되지 않는 주소로 코인을 전송해 “태운다.” 코인을 결코 돌아올 수 없는 네버랜드에 맡겨두면, 랜덤 선정 과정에 근거한 시스템에서 채굴할 수 있는 평생의 특권을 부여 받는다. 소각증명이 어떻게 이행되느냐에 따라서 채굴자들은 전통 화폐나 비트코인과 같은 대안적 체인의 화폐를 태울 수도 있다. 더 많은 코인을 태울수록 다음 블록에 채굴하도록 선정될 확률은 더 높다. 시간에 걸쳐, 시스템에서의 지분은 쇠퇴해지며 복권에 선정될 확률을 높이기 위해 더 많은 코인을 태우길 결국엔 희망할 것이다. 이는 해시파워를 유지하고자 더욱 신식의 컴퓨터 기기에 지속적으로 투자하는 비트코인의 채굴과정을 모방하고 있다. 소각증명은 작업증명을 대체하는 흥미로운 대안책이지만, 프로토콜은 아직도 불필요하게 자원을 낭비한다. 또 다른 비판은 채굴권이 더 많은 돈을 태울 용의가 있는 사람에게만 간다는 것이다.[44]

두뇌증명[편집]

두뇌증명(PoB; Proof of Brain)방식은 암호화폐의 발행을 채굴자나 지분 소유자에게 맡기지 않고, 지적 두뇌 활동을 통해 콘텐츠를 생산하는 사용자와 해당 서비스를 이용하는 참여자들에게 맡기는 합의 알고리즘이다. 돈 버는 SNS로 알려진 스팀잇의 자체 토큰인 스팀(Steem)이 두뇌증명을 사용하고 있다. 스팀잇은 기본적으로 위임지분증명과 더불어 콘텐츠 생산자들에게 더 많은 보상이 돌아갈 수 있도록 한 두뇌증명 방식도 함께 운영하고 있다. 콘텐츠를 작성하고 추천하는 행위에 따라 스팀으로 보상을 해주는 이 방식은 사실상 채굴보다는 보상 알고리즘에 가깝다.[25]

중요도증명[편집]

중요도증명(PoI, Proof of Importance)은 블록체인 네트워크에서 더 많은 지분을 가지고 더 많이 거래를 함으로써 더 많은 활동량을 보인 사람에게 더 큰 의사결정 권한을 주는 방식이다.[45] 이 이 방식을 사용하고 있다. 넴에서는 각각의 계정에 넴 경제에 대한 중요도에 관계되는 ‘중요도 점수’를 할당한다. 더 높은 중요도 점수를 가지고 있는 계정이 블록을 채굴할 가능성이 더 높아진다. 때문에 다른 시스템에서 블록을 형성하기 위해서는 매우 비싼 하드웨어나 아주 많은 코인을 필요로 하지만 넴에서는 거래량과 신용이 중요한 요소가 된다. 중요도증명이 설계된 이유는 넴을 사용하는 유저들이 XEM(넴 블록체인의 자산)을 보유하는 것에 그치지 않고 실제로 사용하도록 장려하기 위해서이다.

신뢰성증명[편집]

신뢰성증명(PoB, Proof of Believability)은 커뮤니티에 대한 기여도를 고려하여 신뢰성이 높은 그룹을 찾아내고 이를 묶어서 증명에 사용하는 방식이다.[46] 이오스트가 이 방식을 사용하고 있다.

신뢰성증명은 블록체인 생태계에 가장 활발하게 참여한 사람에게 보상을 주는 것이다. 예를 들어 해당 블록체인 기술로 을 열심히 개발했거나, 그 암호화폐 기술로 결제를 많이 한 사람 중 일부를 골라 추첨한다. 뽑힌 검증자는 시스템에 문제가 있는지(해킹, 개인정보 유출 등의 문제) 검증한 후 이오스트의 암호화폐를 받는다. 이를테면 암호화폐, 복권, 청문회를 모두 거쳐야 하는 엄격한 방식이다. 이 네트워크에는 평판개념이 도입돼 있다. 평판과 토큰을 합해서 블록을 생성할 권한을 줄지 결정한다. 평판에는 사용, 거래, 기부 등의 여러 요소가 포함된다. 이 평판이 0으로 돌아가면 처음부터 좋은 일을 다시 해야 한다.[47]

성능증명[편집]

하이퍼블록(High Performance Blockchain)

성능증명(Proof of Performance; PoP) 합의 알고리즘은 탈중앙화와 네트워크 성능을 모두 보장하기 위해 설계되었으며, 하이퍼블록(High Performance Blockchain; HPB)이 성능증명 알고리즘을 채택하고 있다. 각 노드의 성능 기여도를 기반으로 하며, 이 과정에서 여러 가지 변수들이 계산에 고려된다. 이 방식에서는 후보자 노드의 기존 풀에서 HP노드를 10분마다 새로 생성한다. 성능증명 방식은 아우터 레이어(Outer Layer)와 이너 레이어(Inner Layer) 두 가지 레이어를 포함하고 있는데, 아우터 레이어는 서버 성능, 네트워크 대역폭, HP노드의 수행 횟수, 지리적 위치 등 다양한 변수를 고려하여 약 10분 간격의 HP노드 로테이션을 통해 공정하고 안정적으로 HP노드를 선발한다. 이너레이어는 어떤 HP노드가 블록을 생성하는지 결정한다.[48]가기.png 성능증명에 대해 자세히 보기

흐름증명[편집]

흐름증명(PoF, Proof of Flow)은 더 많은 사용자 트래픽을 가져온 기여자에게 더 큰 보상을 해주는 합의 알고리즘이다. 이는 중국의 요요우(YoYow)가 만들었다.

모든 종류의 미디어 플랫폼, 웹사이트의 가치는 항상 웹사이트의 트래픽과 관련이 있다. 플랫폼은 사용자가 필요로 하는 정보를 전송하고 트래픽은 광고를 가져오며 결국 플랫폼에 이익을 가져다준다. 요요우 플랫폼에서 사용자의 가치는 사용자가 얼마나 효과적인 트래픽을 요요우 플랫폼으로 가져오는지를 토대로 평가할 수 있다. 동시에 요요우는 더 많은 트래픽을 자신들에게 이끄는 유용한 콘텐츠를 제작한 사용자에게 보상을 준다. 또한 글쓴이는 요요우에 액세스한 미디어 플랫폼에 포스팅을 해도 설정된 규정과 독자의 평가를 반영하여 보상을 획득할 수 있다. 포스팅 내용 선별 인원과 포스팅이 진행된 플랫폼도 보상을 획득한다. 즉, 레딧, 트위터 등과 같은 기타 미디어들과 연동하여 요요우에 플러그-인 액세스가 가능하다.[49]

권위증명[편집]

권위증명(PoA, Proof of Authority) 방식은 권위 있는 기관에서 조건에 맞는 노드를 증명해 이들 간 합의를 이루는 방식이다. 두나무 블록체인 서비스(DBS)는 권위증명 방식을 사용한다.[50] 권위증명에서는 블록체인에 참여한 멤버 전원에게 네트워크 운영에 참여할 권리를 주고 전원이 해당 권한 위임에 투표를 진행한다. 참여자들이 다른 참여자의 권한 위임에 투표함으로써 모든 멤버가 지속적으로 합의 알고리즘에 참여할 수 있다. 네트워크 관리자는 순차적이고 투명한 투표 진행으로 네트워크에 대한 권한을 바꿔주기만 하면 된다.[51]

저장증명[편집]

저장증명(PoS; Proof of Storage)이란 증명자(prover)가 자신의 하드디스크 여유 공간에 데이터를 저장하고, 검증자(verifier)가 그것을 승인 또는 거절하는 방식으로 작동하는 합의 알고리즘이다. 공간증명(Proof of Space)이라고도 한다. 유토큰(YOU token)이 저장증명 방식을 사용하고 있다.

저장증명은 두 가지 단계로 구성된 프로토콜이다. 초기화 단계에서 증명자 A는 데이터의 크기가 N인 데이터 D를 자신의 하드디스크에 저장하고, 검증자 B는 아주 작은 조각의 정보만 가지고 있게 된다. 이후 증명 실행 단계에서 검증자 B는 해당 데이터에 대해 승인 또는 거절할 수 있다.[52] 검증자 B가 해당 데이터에 대해 승인하는 경우, 그 대가로 유토큰이 보상으로 지급된다. 데이터의 소유권을 등록하려면 먼저 해당 디지털 자산이 유효하다는 것을 입증해야 한다. 다음으로 소유권이 소유자의 신원과 함께 확인되어야 한다. 그리고 자산은 의심의 여지가 없어야 한다.

용량증명[편집]

용량증명블록체인 노드가 가진 데이터 스토리지 공간의 크기에 비례하여 투표 효력을 계산하는 방식이다. 용량증명의 변형된 형태가 저장증명(Proof of Storage) 또는 공간증명(Proof of Space)이다. 버스트코인(Burstcoin)은 용량증명 방식을 사용하는 유일한 암호화폐이다.

용량증명과 같은 대안적 프로토콜은 대부분 페이-투-플레이 형식을 사용한다. 용량증명도 이와 같은 맥락이다. 하지만 여기선 하드드라이브 공간으로 “페이”한다. 드라이브 용량이 많으면 많을수록 다음 블록채굴하고 블록 보상을 받을 수 있는 확률이 높아진다. 용량증명 시스템에서 채굴하기 전까지는, 알고리즘이 하드드라이브에 저장하는 “plot” 이라 일컫는 대규모 데이터 세트를 생성한다. 더 많은 plot 을 가질수록, 체인의 다음 블록을 찾을 확률이 더 높다. 테라바이트 용량의 하드드라이브 공간에 투자함으로써, 모방된 블록을 만들고 시스템을 포크 할 수 있는 더 높은 확률을 자신에게 부여한다. 하지만 용량증명으로는 악한 사용자를 막을 수 없고 아무런 지분이 없는 문제점을 여전히 가지고 있다. 저장증명과 공간증명이 요량증명의 변형된 형태이다.

경과시간증명[편집]

경과시간증명(PoET, Proof of Elapsed Time) 방식은 미국 인텔(Intel)이 개발한 합의 알고리즘이다. 한국의 이든체인(EdenChain)이 경과시간증명 방식을 사용하고 있다.[53] 이 시스템은 작업증명과 유사하게 작동하지만 전기를 훨씬 적게 소모한다. 나아가, 참여자들이 암호화된 퍼즐을 풀게 하는 대신, 알고리즘이 SGX와 같은 TEE를 사용하여 요구되는 작업 없이 블록들이 랜덤으로 당첨되는 형태를 보장한다. 인텔의 접근방식은 TEE를 통해 제공되는 보장된 대기시간에 근거한다. 인텔에 따르면, 경과시간 증명 알고리즘은 수천 개의 노드로 확장되고 SGX를 지원하는 어떠한 인텔 프로세서에도 효율적으로 운영된다. 프로토콜의 한 가지 문제는 인텔을 신뢰하도록 요구하는 것인데 이는 퍼블릭 블록체인으로 인해 제3자에게 신의를 표명하는 것을 피하려고 했던 것에 반하는 것이다.[44]

비잔틴 장애 허용[편집]

비잔틴 장애 허용(BFT, Byzantine Fault Tolerance)은 블록체인 합의 알고리즘의 기본이 되는 것으로 PBFT, DBFT 등 여러 가지 변형된 형태를 띠고 있다. 블록체인은 여러 사람들에 의해 네트워크가 관리되고 유지되는데, 이 중에서는 분명히 악의적인 의도를 가지고 네트워크를 파괴하려는 사람도 존재한다. 비잔틴 장애 허용은 이러한 악의적인 노드가 네트워크를 장악하는 것을 방지한다.[54]

비잔틴 장애 허용은 레슬리 램포트와 쇼스틱, 피스가 공저한 1982년 논문에서 언급된 것으로 비잔틴 제국의 여러 부대가 멀리 떨어진 상태에서 성공적으로 공격 계획을 세우는 상황을 가정하고 있다. 비잔틴 장군이 적을 섬멸하려 할 때 사방을 둘러싸 한 번에 덮치는 전략을 세웠다. 이 때, 옆에 있는 부대에게 공격하라는 명령을 전달 시켜야만 성공적으로 작전이 수행될 수 있다. 하지만 만약 세 번째 부대에 배신자가 있어 다음 부대에 명령을 전달하지 않는다면 작전은 물거품으로 돌아가며 실패로 끝나게 된다. 이러한 가정을 블록체인에 적용해보면, 데이터를 올바르게 검증해야 하는 사람이 그렇지 않는다면 가정과 같은 상황이 발생될 수 있다. 이렇듯 악의적인 노드가 네트워크를 장악하는 것을 방지하는 것이 비잔틴 장애 허용 합의 알고리즘의 핵심이다.

프랙티컬 비잔틴 장애 허용[편집]

프랙티컬 비잔틴 장애 허용(PBFT, Practical Byzantine Fault Tolerance) 기술은 여러 노드로 구성된 네트워크에서 악의적 공격을 방어하기 위해 만들어졌다.[55] 프랙티컬 비잔틴 장해 허용 합의 알고리즘을 채택한 암호화폐로는 네오, 질리카, 하이퍼레저, R3, ICT, 텐더민트 등이 있다. 프랙티컬 비잔틴 장애 허용은 비잔틴 장애 허용의 동기식 시스템에서만 구현되어 느린 문제점을 해결한 것으로 (n-1)/3개 이하의 노드가 악의적인 노드라면 분산된 네트워크를 보호할 수 있다. 예를 들면, 100개의 노드가 있다고 가정하면 (100-1)/3개의 노드인 33개의 악의적인 노드가 있다고 하더라도 네트워크에 대한 공격을 막아낼 수 있다. 노드의 수가 많아질수록 네트워크 공격으로부터 방어를 잘할 수 있지만, 블록 생성에 필요한 시간이 증가한다.[56]

동영상[편집]

각주[편집]

  1. Seonho Shin, 〈블록체인 합의 알고리즘 이해하기〉, 《브런치》, 2019-04-09
  2. 2.0 2.1 블록체인 합의 알고리즘이란 무엇인가요?〉, 《바이낸스 아카데미》, 2019-11-09
  3. 3.0 3.1 3.2 윤해리기자, 〈(코린이 상식백과) 블록체인 합의 알고리즘 A to Z 1편〉, 《데일리토큰》, 2018-10-15
  4. 유지수 기자, 〈THEblockchain: 블록체인 합의 프로토콜 기초서〉, 《토큰포스트》, 2017-03-07
  5. miiingo riiingo, 〈(Blockchain) 블록체인과 합의 알고리즘〉, 《티스토리》, 2018-05-28
  6. erc20, 〈경과시간증명(PoET, Proof of Elapsed Time) 알고리즘이 정확히 무엇인가요?〉, 《아하》, 2019-08-03
  7. 에이치닥 테크놀로지, 〈에이치닥 : 트랜잭션 혁신 - 블록체인 기반의 사물인터넷 계약과 M2M 트랜잭션 플랫폼〉, 에이치닥 백서, 2017년 11월
  8. 해리티지블록스, 〈코르텍스(Cortex) 분석 (2) 쿠쿠 사이클 알고리즘과 업데이트 내용 (코인분석)〉, 《네이버 블로그》, 2019-03-26
  9. 하이콘 공식 홈페이지 - https://hycon.io
  10. 윤병찬 기자, 〈국내 개발진이 최초로 제시한 51% 공격에 대한 대비책-PoO〉, 《헤럴드경제》, 2018-11-16
  11. 인터넷 마케팅 기자, 〈앵커 네트워크(ANKR Network), 클라우드 컴퓨팅 서비스와 블록체인의 결합〉, 《디지털타임스》, 2018-12-31
  12. 스톡프로, 〈앵커코인(ANKR)가상화폐 전망〉, 《네이버 블로그》, 2019-05-25
  13. 카페 관리자,〈암호화폐 검토보고서 - ANKR〉, 《빗썸카페》, 2019-05-03
  14. erc20, 〈이중작업증명(DPoW, Dual Proof of Work)이 무엇인가요?〉, 《아하》, 2019-08-13
  15. 지연작업 증명(DPoW) 설명〉, 《바이낸스아카데미》, 2018-12-08
  16. Jenny, 〈비트코인용어 캐스터 Casper〉, 《네이버 블로그》, 2018-05-08
  17. HashedPost, 〈UNITALKS: 이더리움 캐스퍼의 핵심 개발자, 칼 플로이시 인터뷰〉, 《해시드포스트》
  18. yceffort, 〈블록체인 합의 프로토콜의 종류〉, 《개인 블로그》, 2018-07-04
  19. 블록인프레스, 〈이더리움 지분증명 합의 알고리즘 ‘캐스퍼’, 검토 절차 시작〉, 《블록인프레스》, 2018-04-23
  20. COSMOS Korea, 〈코스모스 최신 소식 — (필독) 10월 커뮤니티 업데이트〉, 《미디엄》, 2018-11-14
  21. 김가현 기자, 〈'3세디 코스모스, 무엇이 다른가'...첫 코스모스 아카데미 서울서 열려〉, 《블록인프레스》, 2018-10-03
  22. Gautier MARIN, 〈What does the Launch of Cosmos mean for the Blockchain Ecosystem?〉, 《미디엄》, 2019-06-06
  23. "Leased Proof of Stake", Waves Platform
  24. seungjae1012, 〈카르다노(Cardano, ADA) 탐구: 지분 증명(POS)의 한계와 우로보로스(Ouroboros)〉, 《스팀잇》
  25. 25.0 25.1 윤해리기자, 〈(코린이 상식백과) 블록체인 합의 알고리즘 A to Z 2편〉, 《데일리토큰》, 2018-10-22
  26. funmemes, 〈Variations of Proof of Stake〉, 《스팀잇》
  27. 레드코인(RDD)〉, 《토큰포스트》
  28. 28.0 28.1 stella12, 〈(KR)(JP)PoSV에 대해 알아봅시다^^ / PoSVについて調べてみたいと思います^^〉, 《스팀잇》
  29. 똥글이의 암호화폐, 〈[VRC[VRM] 베리코인(Veri Coin), 베리엄(Verium Coin) 관련 정보 및 2018년 로드맵, 지갑 호재]〉, 《티스토리》, 2018-03-04
  30. 유지수 기자, 〈THEblockchain: 블록체인 합의 프로토콜 기초서〉, 《토큰포스트》, 2017-03-07
  31. BlockchainHub, 〈싱가포르 ‘이더제로’, MPOS 알고리즘 통해 DAPP 개발 박차〉,《블록타임스》, 2019-01-30
  32. Burn and Earn - DPOS(소각 및 발행 – 위임 지분 증명 방식)〉,《토큰포스트》
  33. 올때메로나, 〈위임지분증명 - 슈퍼노드지분증명〉, 《머니넷》, 2019-07-26
  34. 브이 시스템즈 공식 홈페이지 - https://www.blockchainhub.kr/bbs/board.php?bo_table=vsystems_lecture&wr_id=70
  35. coin2019, 〈가상화폐시세 SPOS만든 써니킹VSTS코인소개 합니다.〉, 《네이버 블로그》, 2019-08-13
  36. Futurepia, 〈FUTUREPIA : 블록체인 기반의 콘텐츠 체인(Content Chain) 소셜네트워크 서비스 플랫폼〉, 퓨처피아 백서, 2018년 07월
  37. 벨라스 백서 - https://velas.com/VelasTM%20-%20Whitepaper%20(Korean).pdf
  38. 해시비 - https://hashbee.io/news/5d0a0f5294b8ea719b1e4388
  39. FLETA TECH PAPER Update 2018.10.17_v2.0〉, 《플래타 기술백서》, 2018-10-17
  40. 마시미, 〈애스톤 코인, 코린이를 위한 기술백서 도움글〉, 《네이버 블로그》, 2018-06-19
  41. 모파스 한글 백서〉, 2018년 6월
  42. 코인제스트 공식 홈페이지 - https://www.coinzest.co.kr/app/cxweb/cb/CB1002.jsp
  43. 코인제스트, 〈암호화폐의 다양한 채굴 방식〉, 《네이버 블로그》, 2018-10-26
  44. 44.0 44.1 TokenPost, 〈THEblockchain: 블록체인 합의 프로토콜 기초서〉, 《토큰포스트》, 2017-03-07
  45. 이정훈기자, 〈[이정훈의 암호화폐 읽기<9>채굴량 제한된 비트코인, 작업증명의 대안]〉, 《이데일리》, 2018-02-03
  46. 유병철기자, 〈(기묘한 재테크) 이오스트, 시총 50위권 진입한 플랫폼 코인〉, 《글로벌이코노믹》, 2018-05-09
  47. 이종철기자, 〈믿을만하면 코인준다, 신뢰성 증명 블록체인 플랫폼 IOST 출범〉, 《바이라인네트워크》, 2018-05-09
  48. "High Performance Blockchain Whitepaper", hpb.io
  49. worud, 〈YOYOW: 중국판 스팀잇, 중국의 새로운 블록체인형 SNS〉, 《스팀잇》
  50. 한수연기자, 〈박재현 두나무 연구소장, “클라우드 블록체인 서비스 내년 출시”〉, 《비블로터》, 2018-06-08
  51. 권승원기자, 〈마이크로소프트, 채굴 없는 POA 이더리움 블록체인 제품 출시〉, 《토큰포스트》, 2018-08-09
  52. Keda Che, 〈Universal Labs White Paper V.1.3 (Draft)〉, 2018-05-25
  53. 이정훈기자, 〈(이정훈의 블록체인 탐방)토큰경제 생태계 만든다...글로벌 플레이어 승부수〉, 《이데일리》, 2018-06-18
  54. 초보자를 위한 블록체인 설명, 〈블록체인의 합의 알고리즘에 대해 알아보자: PoW, PoS, DPoS, BFT〉, 《블록센스》, 2018-07-03
  55. tyami, 〈PBFT(Practical Byzantine Fault Tolerance) 공부해보자〉, 《네이버 블로그》, 2018-05-05
  56. TokenPost, 〈PBFT(Practical Byzantine Fault Tolerance, 실용적 비잔틴 장애 허용)〉, 《토큰포스트》

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 합의 알고리즘 문서는 합의 알고리즘에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.