[블록체인 기초] 컨센서스(Consensus) — 4

Jenny Han
3 min readNov 11, 2018

--

앞서 살펴본 바와 같이, 컨센서스 방법은 계속해서 진화하고 있다. 현재 이상적인 의사 결정 알고리즘을 찾아내는 것은 아직 끝나지 않았다. 이는 비용, 효율성, 확장성 등을 개선하기 위한 진행형의 과정으로, 앞으로 몇달 혹은 몇년 안에도 엄청난 발전이 있을 것이다. 탈중앙화, 속도, 효율성 등의 균형을 맞추는 일 또한 앞으로의 숙제이다. 계속해서 새로운 블록체인들이 나옴에 따라, 새로운 의사 결정 알고리즘 또한 끊임없이 발표될 것이다. 그 방법들을 하나하나 따져보는 것은 도무지 블로그 글을 작성할 엄두가 나지 않으므로, 그 외 방법들 몇 가지만 간단히 소개해 보고자 한다.

너무나 많다.. (출처: Google Image)

유명한 중국 프로젝트 NEO는 Delegated Byzantine Fault Tolerance 방식을 이용하는데, 이는 체인이 둘로 포크되는 것을 막기 위해 선출 방식을 택하게 된다. 리플(Ripple)은 그들만의 의사결정 렛져를 이용해서 이용자들과 기록이 시스템 상의 진실된 정보를 정의하도록 한다. 이 뿐만 아니라 많은 다양한 의사결정 알고리즘들이 끊임없이 나오고 있고, 그 각각은 블록체인 상의 유니크한 문제들에 대한 해결 방안을 제시한다.

Directed Acyclic Graphs (DAG)
블록체인 킬러라고 불린다. 이 컨센서스 알고리즘은 블록체인을 사용하지 않고 무제한의 확장성을 내세운다. 왜냐하면 트랜젝션 비용이 매우매우 낮기 때문이나, 여전히 실험적인 단계다. Nano, IOTA같은 프로젝트들이 이미 사용하고 있다.

Proof-of-Authority (POA)
이 알고리즘은, 네트워크 관리자들이 트랜젝션의 유효성을 심사하고 승인한다. 이것은 매우 중앙화되어 있지만, 효율적이긴 하다 매우. 이 방법은 프라이빗 블록체인에서 먹힌다. 왜냐하면 멤버들이 서로를 알고 또 믿고 있기 때문이다.

Practical Byzantine Fault Tolerance (PBFT)
비잔틴 제너럴 문제는 탈중앙화 시스템이라면 모두 가지고 있다. 네트워크의 불량 이용자들을 포함한, 서로 다른 이용자들로부터 오는 트랜젝션을 받아들이기 때문이다. 그래서 이런 문제들을 해결하기위한 방법 중 하나가 바로 PBFT를 이용하는것인데, 현재 이를 이용하는 블록체인으로는Hyperledger, Ripple, Stellar가 있다. PBFT에서 의사 결정은 네트워크 상의 참가자 모두의 결정에 기반을 두어야 한다.

이게 다가 아니다!

이 외에도 하이퍼레져가 함께 사용중인 SIEVE, Proof-of-Weight (PoW), Proof-of-Burn, Proof-of-Activity 등 수많은 의사결정 알고리즘들이 있다. 단순히 플랫폼만 결정할 것이 아니라, 프로젝트에 맞는 문제 해결에 최적화된 의사결정 알고리즘을 택하는 것이 중요하다.

이쯤에서 컨센서스에 대한 글들을 마무리해보도록 하겠다.

--

--

Jenny Han

Blockchain Enthusiast and Data Analyst. Studied and worked in Australia and Silicon Valley. Now in Seoul:)