back

검색

[유성민] 바보야, 문제는 합의 알고리즘이야

유성민, 체인스토리, 합의 알고리즘, 트릴레마

[유성민’s Chain Story] 블록체인은 개인 간(P2P) 기반 공유형 원장, 혹은 탈중앙 시스템으로 정의할 수 있다. 다시 말해, 블록체인은 중앙 시스템의 관리 없이 참여자에 의해서 스스로 관리되는 시스템이다. 따라서 합의 알고리즘은 블록체인 내에서 중요한 역할을 한다. 인공지능(AI)이라고 하면, 기계학습(ML) 알고리즘을 떠올린다. ML은 AI의 지능을 구현하는 데 중요한 역할을 한다. 사람은 경험을 통해 지능을 만들어낼 수 있는 것처럼, AI도 학습을 통해 지능을 만들어낼 수 있다. ML이 AI의 기반이 되는 셈이다. 합의 알고리즘이 핵심이다 블록체인에서도 마찬가지이다. 블록체인은 탈중앙 시스템이다. 그리고 중앙 시스템 없이 자생하는 것이 특징이다. 시스템 구성 참여자(노드)가 스스로 합의해 시스템을 운영해나가야 하는데, 합의 알고리즘이 이러한 운영의 밑받침이 된다. 비트코인을 예로 들어보자. 비트코인은 이중거래와 같은 금융사기 방지를 중앙 시스템 없이 만들고자 했다. 그래서 블록체인을 도입했다. 엄밀히 말해, 합의 알고리즘 도입이 이중거래 방지를 했다고 볼 수 있다. 합의 알고리즘이 이중거래 발생시 노드 간 합의에 따라 스스로 대응할 수 있게 했다. ‘블록체인=분산형원장+합의(Blockchain=Distributed Ledger+Consensus)’라는 논문이 있다. 스위스의 프리부리 대학 교수인 안드레아스 마이어(Andreas Meier)가 발표한 논문이다. 논문 제목에서 알 수 있듯이, 블록체인에서 합의 알고리즘이 갖는 의미가 크다. 합의 알고리즘 적용 여부에 따라 블록체인 혹은 분산형 원장으로 갈리기 때문이다. 합의 알고리즘은 블록체인 난제 해결에도 중요하게 다뤄야 할 연구 분야다. 공유되는 블록 크기, 생성 속도, 합의 방식 등의 고려 요소는 트릴레마(Trilemma) 해결에 중요한 열쇠가 될 수 있다. 참고로 트릴레마는 2018년에 비탈릭 부테린(Vitalik Buterin)에 의해서 처음으로 언급됐는데, 블록체인이 확장성ㆍ보안성ㆍ탈중앙성 등 3가지 요소를 모두 만족할 수 없음을 나타내는 한계점이다. 정리하면, 합의 알고리즘은 블록체인 경쟁력 측면에서 중요하다. 핵심 엔진으로서 역할을 할 뿐만 아니라, 블록체인 성능에 있어서도 중요한 역할을 한다. 블록체인 회사는 합의 알고리즘 설계에 관해 깊이 생각해야만 한다. 2% 부족한 트릴레마 합의 알고리즘 설계는 어떻게 해야 할까. 명확한 답은 없다. 그러나 평가 지표는 반드시 있어야 한다. 합의 알고리즘 설계가 제대로 됐는지를 검증할 수 있게 하기 때문이다. 방향성도 제시한다. 설계자가 어떤 부분을 중점적으로 고려해야 할지를 알 수 있게 한다. 대학 입시를 예로 들자. 수험생은 대학교 반영 점수를 보고 공부 방향을 세울 수 있다. 합의 알고리즘의 경우, 트릴레마에 있는 세 요인을 평가 지표로 세울 수 있다. 세 요인은 블록체인 경쟁력에 있어서 대표성이 있다. 그러나 이를 그대로 활용하기엔 부족하다. 트릴레마 등장 목적은 블록체인 난제를 보여주기 위해서였다. 다시 말해, 주요 달성 지표로 제시하기 위한 것이 아니었다. 이러한 이유로 평가 지표로서 측정이 모호한 한계점이 있다. 각 요인을 평가하기 위한 근거가 없다. 예를 들어, 이오스(EOS)가 비트코인보다 탈중앙성이 높다고 말할 수 있다. 하지만, 이를 어떤 근거로 말할 수 있을까. 이오스는 비트코인의 컴퓨팅 파워 독점을 문제로 들 수 있다. 하지만, 이러한 문제에서 이오스도 자유롭지 않다. 게다가 블록 참여 생성자도 제한적이다. 물론, 적은 지분을 가지고도 블록 생성에 간접적으로 참여할 수 있다는 점에서 이오스는 비트코인보다 탈중앙성이 높다. 정리하면, 세 요인을 정량화할 수 있는 평가 항목이 필요하다. 트릴레마는 합의 알고리즘이 발전해야 할 방향을 명확히 알려준다. 다만, 구체성이 없다. 트릴레마 자체가 선언 목적으로 활용됐기 때문에 어쩔 수 없다. 2%가 부족하다. 측정할 수 있는 평가 항목을 붙여라 글로벌 컨설팅 기업인 KPMG는 합의 알고리즘 평가를 위한 방법론을 소개했다. 2016년 ‘합의: 인터넷 가치를 위한 불변의 동의(Consensus: Immutable agreement for the Internet of value)’라는 보고서를 발표했다. 해당 보고서에는 합의 알고리즘에 관한 간략한 설명뿐만 아니라, 평가 항목을 소개하고 있다. KPMG는 트릴레마와 다른, 8개 요인을 제시하고 있다. 전반적인 합의 방법론, 통제 및 위험 관리, 성능, 보안, 정보 보호, 암호화, 토큰화, 실행 관점 등을 포함하고 있다. 요인별로 고려할 사항도 세부적으로 소개하고 있다. 이러한 사항을 근거로 평가 항목을 만들 수 있다. 다만, 아쉬운 점이 있다. 평가 요인이 너무 광범위하다. 트릴레마처럼 요인 세 개가 적합하다. 이 정도가 방향성 제시에도 좋다. 이러한 이유로, 필자는 KPMG의 항목을 트릴레마의 블록체인 3요인에 묶는 것을 추천한다. 탈중앙성은 전반적인 합의 방법론과 토큰화를 포함할 수 있다. 참고로 토큰화는 토큰 운영 및 보상에 관한 것을 담고 있다. 이는 비허가형 블록체인에서 채굴자의 성실한 활동으로 불러오는 동기 부여 요인에 중요하다. 확장성은 성능과 실행 관점을 포함할 수 있다. 끝으로 보안성은 통제 및 위험 관리, 보안, 정보 보호, 암호화 등을 엮을 수 있다. 그렇게 하면, 합의 알고리즘 설계를 위한 평가 지표를 만들어 낼 수 있다. 요인별 역할을 정해라 합의 알고리즘의 평가 요인을 구체화했다. 아직도 부족한 점이 있다. 평가 요인별 역할을 정하지 않았다. 요인별로 이러한 역할을 고려하지 않으면, 해당 평가 항목은 평가를 위한 평가 지표로 전락할 수 있다. 탈중앙성은 블록체인의 비즈니스 가치 측면에서 중요하다. 다른 기술과 차별화됐기 때문이다. 그러므로 탈중앙성은 비즈니스 측면에서 최소 요건을 만족해야 한다. 보안성의 무결성도 마찬가지이다. 확장성은 고객 편의 사항이므로 고객 불만족 해결 사항으로 바라봐야 한다. 보안성은 시스템의 신뢰성 부분이다. 정리하면, 세 가지 요인은 목적에 맞게 다른 역할을 한다. 따라서 세 항목을 합산해서 합의 알고리즘을 평가해서는 안 된다. 탈중앙성은 비즈니스 평가 용도로 사용해야 한다. 확장성은 고객 편의 사항으로 사용해야 하고, 보안성은 시스템 신뢰성 평가로 사용해야 한다. 다시 말해, 요인별로 최저 요구 점수를 정해 충족 여부를 검토해야 한다. 다른 블록체인과 비교할 때에도 세 요인의 평가 항목을 합산하지 말고, 요인별로 점수를 비교하고 평가할 필요가 있다. 위생 동기 이론은 인사 관리에 사용되는 이론이다. 직원의 만족과 불만족 요인은 다르다는 것이 핵심이다. 다시 말해, 직원을 만족시킬 수 있는 요인과 불만족 해소 요인은 다르다. 이는 합의 알고리즘 평가 지표에서도 마찬가지다. 두 달 전쯤, 조인디에서 흥미로운 기사를 읽었다. 확장성을 위해 탈중앙성을 버릴 수 있다는 제목의 기사였다. 이는 매우 위험한 생각이다. 각자의 역할이 다른데, 한 가지를 포기한다는 것은 말이 안 된다. 더욱이 블록체인 비즈니스의 핵심 가치인 탈중앙성을 버려서는 안 된다. 이는 블록체인의 활용 가치를 더욱더 떨어뜨리는 짓이다. 지금까지 합의 알고리즘 설계 요인을 살펴봤다. 트릴레마를 기초로 평가 요인의 항목을 명확히 해서 평가할 필요가 있다. 그리고 평가 결과는 요인별로 다르게 해석해야 한다. 혹은 기준치를 요인별로 정하는 것이 좋다. 이러한 방법을 따른다면, 합의 알고리즘 설계를 올바르게 할 수 있을 것이다. 유성민 동국대 국제정보호대학원 외래교수

조인디 logo
j o i n
d

Article Title

  • J loading image
  • O loading image
  • I loading image
  • N loading image
  • D loading image

RE:CENT