블록체인 네트워크를 사용하는 데 있어 가장 중요한 문제 중 하나가 확장성이다. 확장성은 블록체인이 얼마나 더 많은 전송을 수용할 수 있는지가 중요하다. 확장성은 1초에 몇 개의 거래 정보를 전송할 수 있는지로 평가한다. 한 블록에 수용할 수 있는 거래 정보는 무한대가 아니기 때문이다. 확장성 문제란 결국 전송되는 거래를 처리하는 속도의 저하를 의미한다. 또한 블록체인 내에서는 과거의 블록을 임의로 삭제하거나 변경하는 게 불가능하다. 때문에 블록체인 내에서의 거래 내용은 누적될 수밖에 없다. 데이터의 누적은 과부하를 부르고 속도 저하의 또 다른 원인이 된다. 

확장성 문제에 직면한 대표적인 블록체인 네트워크는 이더리움이다. 네트워크 내에서 만들어진 디앱(Dapp:탈중앙화 어플리케이션)의 양이 가장 많아 거래가 많이 이루어지고 그만큼 처리해야하는 정보도 많기 때문이다. 

이더리움은 1초에 12개 정도의 거래내용을 블록에 기록할 수 있다. 속도는 거래내용의 개수에 따라 정해진다. 만약 단순 송금 같은 일반적인 거래보다는 과정이 좀 더 복잡한 스마트 컨트랙트는 전송하는 과정에서 더 많은 데이터를 사용할 것이다. 쉽게 말해 일반적인 거래만 전송을 한다면 1초에 12개 보다 더 많은 거래 내용을 수용할 수도 있지만, 예를 들어 디파이 같이 여러 거래 과정이 담긴 스마트 컨트랙트를 담으면 데이터가 커져 12개 보다도 더 적은 거래내용만을 수용할 수 있을지도 모른다.

더 많은 거래내용을 담기 위해서는 지금의 스펙을 높이거나 전송 데이터 자체를 줄이는 방법이 있다. 이더리움 노드의 추천 스펙은 4코어 CPU에 16GB의 RAM이다. 블록체인 네트워크 중 하나인 솔라나의 추천 스펙은 12코어 CPU에 128GB의 램이다. 솔라나의 1초당 거래속도는 1900개 정도이다. 스펙이 높은 만큼 처리가 가능한 거래의 양과 속도에서 이더리움과 비교해 차이가 나는 것이다. 물론 이더리움 노드의 스펙도 점차 높아질 수 있지만, 요구 스펙이 너무 높아지면 스펙을 감당할 노드의 숫자가 줄어들 수 있다. 결과적으로 노드가 줄어들면 분산화 시스템이 약해져 네트워크가 중앙화 될 가능성도 배제할 수 없다.

블록체인 네트워크의 세가지 문제, 트릴레마

 이더리움의 창시자이자 개발자인 비탈릭 부테린은 블록체인의 확장성 문제를 비롯해 보안과 탈중앙화를 트릴레마로 제시했다. 트릴레마는 세 가지 속성 중 두 가지 속성을 확보하기 위해서는 나머지 한 가지가 취약해진다는 것이다.

예를 들면 보안과 탈중앙화의 성격을 지키기 위해서는 확장성을 포기해야한다. 수 많은 노드가 트랜잭션을 검증하면 보안과 탈중앙화를 확보할 수 있으나, 중앙화 된 시스템보다 훨씬 느릴 수밖에 없다. 수 백 수 천개의 노드가 일일이 거래를 확인해야하기 때문이다. 

2020년 3월에는 코로나에 대한 충격으로 자산가치가 급락하면서 가상시장 시장에도 거래량이 급증했다. 이 때 이더리움은 급증하는 트랜잭션을 처리하지 못해 네트워크가 마비되었고, 당시 메이커다오(MakerDAO)의 스테이블코인인 다이(DAI)를 빌려줄 때 받은 담보물의 가치가 다이의 가치보다 떨어져 자동 청산 시스템이 가동됐다. 이 때 급증하는 트랜잭션에 거래 전송이 제대로 되지 않아 담보를 빨리 팔아 사고를 막을 수 없었다.

이더리움은 이더리움2.0으로 전환하면서 자체 네트워크 내에서 확장성 문제를 해결하기 위해 샤딩을 개발중이다(하단 기사 참조).

(이더리움2.0 ‘샤딩’으로 성능문제 해결한다.https://byline.network/2022/02/2-9-2/)

확장성 문제 해결을 위한 방법

이더리움의 확장성 문제를 해결하기 위한 다양한 시도가 있는데 사이드체인과 롤업이 대표적이다.

먼저 사이드체인은 이더리움 체인이 아닌 독자적인 체인으로 존재해 이더리움의 트랜잭션을 처리하는 기술이다. 또한 독자적인 네트워크(메인넷)를 가지고 있기 때문에 자체적인 합의 메커니즘을 실행한다. 현재 이더리움은 작업증명방식(PoW)를 사용하고 있다. 작업증명방식은 조건을 만족하는 해시값을 찾기 위해 많은 시간이 소요된다. 때문에 필연적으로 컴퓨터의 파워가 많이 들 수밖에 없다. 이런 문제를 해결하기 위해 대표적인 이더리움의 사이드체인 중 하나인 폴리곤(MATIC) 네트워크는 지분증명방식(PoS)을 사용해 네트워크의 확장성을 높였다. 지분증명에서는 일정 코인만 가지면 노드로 참여할 수 있기 때문에 굳이 많은 컴퓨터가 필요하지 않아 시간 소요가 적다. 

예를 들면, 이더리움의 디파이 프로토콜인 커브(Curve)가 구동중인 동시에 사이드체인인 폴리곤에도 커브가 존재하는 것이다. 그리고 폴리곤 네트워크에서 처리 된 거래를 이더리움에 기록한다. 지분증명을 사용하는 폴리곤이 속도가 더 빠르기 때문에 사람들은 폴리곤 네트워크에서 트랜잭션을 처리하는 것이다. 다만 이더리움 체인과 별개로 움직이기 때문에 이더리움에 비해 낮은 보안성을 가진다는 단점이 존재한다. 

롤업은 이더리움 체인 바깥, 즉 오프체인에서 트랜잭션을 실행하고 거래 과정과 결과를 축약해 이더리움에 기록하는 솔루션이다. 때문에 모든 데이터를 기록할 필요가 없어 효율적이다. 디앱이 옵티미스틱 롤업을 채택하면 해당 디앱에서 발생한 여러 트랜잭션은 롤업으로 옮겨져 별도 처리하게 된다.

대표적으로는 옵티미스틱 롤업과 zk롤업이 있다.

옵티미스틱 롤업은 모든 거래 내역이 아니라 중요한 정보만을 이더리움 체인에 기록한다. 만약 의심 가는 거래가 있다면 이더리움 체인 내 노드가 트랜잭션을 재실행하며 대조한다. 이를 사기 증명 절차라고 부르며 거짓임을 밝혀낸 노드에게는 보상이 주어진다. 그러나 사기 증명을 하기 위해서는 필연적으로 일정 시간동안의 정체가 생길 수밖에 없다. 

zk롤업은 옵티미스틱 롤업과 달리 트랜잭션에 대한 검증이 완료된 상태로 이더리움 체인에 기록되기 때문에 보안이 높고 사기증명 하는데 드는 시간이 필요하지 않기 때문에 속도도 더 빠르다. 그러나 이더리움의 가상머신인 EVM과 호환되지 않기 때문에 지원되는 스마트 컨트랙트가 제한적이다. EVM은 이더리움 네트워크의 노드들이 공유하는 하나의 가상 머신으로 슈퍼 컴퓨터 같은 개념이다. 스마트 컨트랙트의 실행을 처리한다.

이더리움은 확장성 문제를 해결하기 위해 이더리움2.0으로의 전환을 준비중이지만 정확한 시기는 알려진 게 없다. 다만 JP모건측은 샤딩이 2023년까지는 완료되지 않을 것이라고 밝힌 바 있다.

바이라인네트워크
<윤희성 기자>heecastle@byline.network