블록체인의 변화와 선택

블록체인 변화

블록체인의 과거

현재까지도 비트코인은 암호화폐 중 굳건히 기축통화의 역할을 하고 있으며 높은 가격대로 유통되고 있다.1 또한 자타 공인 2세대 블록체인의 시대를 연 이더리움도 여전히 메이저 암호화폐 중 하나이다.2 하지만 많은 암호화폐 학자들과 블록체인 업계 사람들은 비트코인과 이더리움의 확장성 문제와 기술적 한계를 지속적으로 지적해왔으며 그 대안으로 다양한 블록체인 메인넷들과 암호화폐 등이 탄생했고 저마다 비트코인과 이더리움으로 대표되는 과거 블록체인의 문제들을 해결해왔다고 주장하고 있다.

확장성과 컴퓨팅 파워 낭비 문제

비트코인과 이더리움으로 대표되는 과거 블록체인들은 대부분 확장성과 컴퓨팅 파워 소모의 문제를 지적받아왔다. 특히 블록체인 기술의 시작이라고 할 수 있는 비트코인의 경우 대략 초당 5-7건의 거래량을 소화할 수 있는 것으로 알려져 있으며 이로 인하여 실제 화폐의 기본적인 역할이라고 할 수 있는 ‘지불 기능을 가진 교환 수단(온라인, 오프라인)’의 기능을 할 수 없었고 또한 작업 증명(Proof of Work)으로 불리는 합의 알고리즘과 블록 생성 보상 체계로 인하여 필요 이상의 전기와 컴퓨팅 파워를 소모하는 결과로 블록체인이 환경오염을 일으킨다는 오명까지 쓰고 있다. 물론 비트코인도 Segwit이나 기타 하드 포크3와 같은 방법으로 확장성 문제를 해결하려고 하고 있지만 근본적으로 실생활에서 지불 가능한 결제수단으로 사용하기에는 무리가 있다.

이더리움의 경우는 상황이 좀 더 나아서 초당 약 15건의 거래를 처리할 수 있는 것으로 알려져 있다. (다만 이더리움은 탈중앙화 애플리케이션 플랫폼으로 단순히 토큰 거래만 처리하는 것은 아니다) 다만 비트코인과 비슷한 작업 증명(Proof of Work) 방식의 합의 알고리즘을 사용하면서도 채굴기(ASIC) 사용을 제한하고, 이더리움 토큰(Gas Price)을 적당한 가격대로 유지하면서 공장화된 채굴 집단이나 채굴기업이 진출하기 어려운 구조를 만들었다. 또한 이스탄불 업데이트를 통하여 작업 증명 알고리즘을 버리고 지분 증명(Proof of Stake) 합의 알고리즘으로 변경하여 컴퓨팅 파워 소모 문제와 확장성 문제를 동시에 해결하려는 움직임을 보여주고 있다. 하지만 여전히 분산 애플리케이션 플랫폼으로서의 충분한 성능을 확보하지 못했고 특히 이더리움 Dapp 중 하나인 ‘크립토 키티’가 성공하면서 오히려 성능 문제가 부각되는 상황도 발생하였다.

<크립토 키티 https://www.cryptokitties.co/>

크립토 키티는 이더리움의 대표적은 탈중앙화 애플리케이션 성공사례로 지금까지도 운영되고 있는 스마트 컨트랙트 기반 게임 서비스이다. 하지만 크립토 키티가 한참 활발하게 운영될 때 이더리움 메인넷이 동시 사용자를 수용하지 못하고 수수료가 폭증하면서 이더리움의 확장성 문제를 크게 부각시켰다.

변화를 위한 선택

합의 알고리즘의 변화

이렇게 과거의 블록체인 문제를 해결하기 위해 사람들은 어쩔 수 없이 합의 알고리즘에 손을 대기 시작했다.
블록체인의 확장성, 좀 더 정확히는 원하는 만큼의 성능을 뽑아내기 위해 기존 합의 알고리즘을 단순히 수정하는 것이 아닌 완전히 다른 방식이 필요했다.

블록체인의 합의는 단순히 어느 노드가 생성한 블록을 선택할 것인가 하는 일관된 분산 장부를 유지하기 위한 프로토콜이지만 또한 해당 블록체인의 핵심 거버넌스4를 나타내고 탈중앙화된 메인넷상에서 자율적으로 운영 가능하도록 고안된 것이기도 하다. 그래서 합의 알고리즘의 특징에 따라 블록체인의 응답 속도5와 트랜잭션 처리 속도 즉 TPS(Transaction Per Sec), 노드 운영 보상 방법, 화폐 발행 법칙 등이 결정된다. 이러한 합의 알고리즘의 중요한 특징 때문에 프라이빗과 퍼블릭 블록체인이 완전히 다른 합의 방식을 채택하게 된 것이고 중요하게 생각하는 점도 완전히 다르다.  프라이빗 블록체인의 대표적인 합의 알고리즘인 PBFT와 RAFT는 각각의 Byzantine Fault Tolerance 와 Crash Fault Tolerance를 고려한 합의 알고리즘으로 노드 운영 보상과 화폐에 관한 고려 사항을 완전히 배제한 방식이다.

<속도가 빨라지고 단순화되는 합의 알고리즘>

합의 알고리즘은 컴퓨팅 파워를 매우 많이 소모하는 작업 증명(Proof of Work) 방식에서 합의된 기준6에 따른 가중치 값을 부여받는 지분 증명(Proof of Stake) 방식으로 변경되어 왔고, 여기서 한번 더 위임지분증명(Delegate Proof of Stake) 방식으로 변경되고 있다. 대부분의 탈중앙화 애플리케이션 플랫폼을 지향하는 최신 블록체인들은 DPos나 그와 비슷한 위임 방식의 합의 알고리즘을 선호하고 있다.

블록체인의 성능 향상

이 위임 지분 증명 방식의 합의 알고리즘은 작업 증명과 지분 증명 방식과 달리 미리 블록 생성을 담당할 노드7가 존재하고, 특별한 문제8가 발생하지 않는다면 정해진 시간에 블록을 생성하고 선택받게 된다. 위임 지분 증명 방식은 기존의 합의 알고리즘처럼 불특정한 다수의 분산된 노드에서 정해진 목푯값이나 정해진 가중치를 받기 위한 경쟁과 더 긴 블록이 무엇인지를 비교하는 작업이 불필요하고, Fork에 대한 가능성도 매우 적어 안정적으로 블록 생성(채굴)이 가능하다. 이러한 특징으로 블록 생성 시간(더 정확히는 블록 생성 Interval)이 거의 1초 수준까지 짧아지고 있으며 확정된 거래(block confirm)에 대해서는 취소되지 않는 것도 프로토콜에서 보장하고 있다.

그렇다면 블록체인의 합의 알고리즘은 지극히 긍정적으로 발전해왔는지 생각해보자.

 

<블록체인 성능의 발전>

물론 블록체인은 불과 2-3년 사이에 100배 이상의 놀라운 성능 향상을 보여왔으며 블록 생성 시간은 1초까지 줄어들어 실제 상품 결제까지 가능할 정도로 높은 확장성을 보여주었다. 이는 실제 메인넷을 사용하여 수십만 명 이상이 동시에 사용 가능한 탈중앙화 애플리케이션의 구동이 가능하다는 의미로, 메인넷 자원을 특정 서비스가 모두 소모하여 사용 불능이 되는 상황을 막을 수 있을 것으로 기대되었다.

블록체인 트릴레마

하지만 블록체인의 성능 향상을 무조건적인 발전이라고 보기 어려운 부분은 바로 변화된 합의 알고리즘들이 탈중앙화적 요소가 부족하다는 데 있다. 통신 속도와 서버의 물리적 성능은 2-3년 동안 미미하게 증가한데 반해 블록체인의 극적인 발전은 결국 알고리즘적 최적화가 아닌 블록체인의 근본적인 요소를 침해하면서까지 달성한 결과이다.

경제학 용어에 트릴레마라는 것이 존재한다. 트릴레마는 동시에 달하지 못하는 3가지 요소를 나타내는 것으로 나머지 2가지 목표를 달성하기 위해서 하나의 목적은 희생하게 되는 경우를 나타낸다.9

<블록체인의 트릴레마>

블록체인에도 트릴레마가 존재하며  보통 확장성, 보안성, 탈중앙화가 블록체인의 중요한 속성이자 트릴레마로 알려져 있다.

먼저 확장성은 사용자가 원하는 만큼의 성능과 사용자 수를 충족할 수 있는 것을 의미하며 지금까지 과거 대부분의 블록체인이 지적받은 문제이다. 그다음 보안성은 블록체인의 거래 내용이나 지불 상태들이 공격자에 의해 침범되거나 위조되지 않게 하는 것으로 블록체인의 근본적인 기능이라고 볼 수 있다. 탈중앙화는 블록체인이 얼마만큼 중앙 집중화를 벗어나 분산되고 자율적으로 운영되는가를 뜻한다. 탈중앙화 또한 블록체인의 필수 불가결한 요소 중 하나이다.

비트코인은 높은 보안 성능과 거의 완벽에 가까운 탈중앙화 속성을 가지고도 부족한 확장성으로 트릴레마를 극복할 수 없었으며 이더리움도 정도의 차이일 뿐 비슷한 상황이다.
대부분의 블록체인은 높은 보안 성능을 유지하고 확장성 문제를 해결하기 위해 탈중앙화 요소에 손을 대고 있다. 여기서 탈중앙화에 손을 댄다는 의미는 기존에 완전 자율에 가까운 채굴 방식을 특정 숫자의 노드로 극히 제한하므로 극적인 성능 향상을 달성하였으며 블록체인이 결국 중앙 집중형에 가까워지고 있다는 의미이다. 이런 중앙 집중화는 시스템에 매우 높은 가용성을 제공하고 결국 극도의 효율성을 위해서는 21개의 블록 생성 대표10가 아닌 단 1개의 대표를 선출해서 블록을 생성하면 fork와 블록 재조립이 발생하지 않고 수행 순서까지 보증하는 블록체인이 탄생 가능할지도 모르다. 이런 극단적인 예는 상상만으로 끝난 것이 아니라 대표적으로 Enterprise Blockchain을 표방하고 있는 하이퍼레저 패브릭이 합의가 아닌 수행 순서만 보증하는 kafka를 사용하고 있다.

 

<하이퍼레저 패브릭의 트랜잭션 생성 구조>

IBM의 패브릭은 블록체인을 체인코드 처리 결과의 일관성 보증을 위해 사용하며, Ordering 서비스와 Kafka 메시징 서비스를 이용하여 수행 순서 보증에 사용하고 있다. 이는 정확히 이야기하면 합의 알고리즘이라고 볼 수 없으며 블록체인 기술을 일부 차용한 것에 가깝다.

 

물론 DPoS는 토큰 홀더의 투표로 BP 노드를 선출하기 때문에 완전한 중앙 집중형이라고는 볼 수 없지만, 순수한 의미의 블록체인이 추구하는 탈중앙화와는 조금 다르다는 것을 느낄 수 있다.

결국 이는 블록체인이 시장이 요구하는 방향에 따라 확장성 문제를 해결하기 위해 선택한 결과이며 이는 블록체인이 앞으로 살아남기 위한 당연한 선택일지 모른다. 하지만 블록체인이 왜 4차 산업혁명의 핵심기술로 주목을 받았는지, 기존 원장시스템과 어떠한 차별점이 있었는지 생각해보면 결국 블록체인이 중앙화될수록 RDBMS의 하위 호환 정도로 격하될 수밖에 없다.

블록체인이 향후 몇 년 안에 독립적인 위치에서 차세대 기술로 완전히 인정받기 위해서 어떠한 방식을 선택할지는 좀 더 지켜봐야 할 것이다.

 


 

-각주-

  1. 물론 암호화폐에서는 토큰의 가격과 거래량 등이 블록체인의 가치를 판별하는 중요한 수단이지만 이것만으로 블록체인의 기술적 가치가 높다고 판단할 수는 없다.
  2. 이더리움을 단순히 암호화폐라고 정의할 수는 없지만 여기서는 블록체인 가치를 나타낼 수 있는 암호화폐 기준으로 이야기했다.
  3. 대표적인 비트코인 하드 포크는 비트코인 캐시가 있다.
  4. 블록체인에서 거버넌스란 네트워크 참여자들이 집단적으로 중요한 의사결정을 수행하는 체계를 의미하며, 블록 보상과 선택과 같은 핵심 가치가 포함된 합의 알고리즘도 거버넌스에 포함된다.
  5. 더 정확히는 블록 컨펌 대기 시간이다.
  6. 일반적으로는 해당 메인넷 토큰을 어느 시간 동안 얼마만큼 가지고 있는가를 통하여 블록 보상을 받을 가능성이 높게 책정된다. 이것은 마치 은행의 이자를 받는 것과 비슷한 결과
  7. 일반적으로 BP(Block Producer) 노드라고 표현한다.
  8. 악의적인 노드 출현이나 블록 생성 노드의 장애 등이 대표적이다.
  9. 경제학에서 트릴레마는 안정된 환율, 자유로운 자본 이동 그리고 독자적 통화정책이다.
  10. 여기서는 EOS의 21개 BP(Block Producer)를 예로 들었다.
BaaS – AERGO 프라이빗 네트워크 구축하기
아르고 리오그 시 SQL 데이터 일관성 검증

2 댓글. 댓글 작성하기

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

필수 입력 사항입니다.
필수 입력 사항입니다.
유효한 이메일 주소를 입력해주세요.
You need to agree with the terms to proceed

메뉴