단일 블록체인 시대가 끝나고, 확장성과 모듈화 블록체인 기술 스택에 대해 자세히 설명합니다
저자: Plaintext Capital
원제목: 《Scalability \& The Modular Blockchain Stack》
편집: Web3er Liu, 체인 포착기
확장성, 즉 거래 수를 증가시키는 능력은 모든 블록체인에 매우 중요합니다. 확장성은 매우 중요한데, 전 세계가 Web3에 진입하고 이 기술의 모든 잠재력을 발휘하기 위해서는 매초 증가하는 거래량(TPS)을 처리할 수 있는 솔루션을 찾아야 하며, 이를 통해 더 빠르고 저렴한 거래를 제공할 수 있습니다.
많은 새로운 공공 블록체인이 높은 TPS를 자랑하지만, 혁신의 정도는 제한적이며 비용도 큽니다. 현재 우리는 전통 금융 시스템을 블록체인에서 운영할 수 있는 단계에 이르지 못했습니다. 예를 들어, Layer1 아키텍처에서 최대한 최적화된 Solana는 약 2500(Solana Beach에서 확인 가능)의 TPS를 달성할 수 있습니다. 인상적인 점은 이것이 Visa가 주장하는 매초 65,000건의 거래 처리량보다 몇 배 낮다는 것입니다.
저는 2017년부터 암호화폐 산업에 들어왔으며, 그때부터 대부분의 연구는 성능 확장에 집중되었습니다. 저는 이더리움 2.0에서 일했으며 "샤딩"의 출범이 모든 확장성 요구를 충족할 것이라고 희망했지만, 샤드 간 통신에서 발생하는 조합성 손실을 개선하는 데는 진전을 보지 못했고, 이후 제 관심은 롤업으로 옮겨졌습니다.
우려스러운 확장성 문제를 감안할 때, 개발자들은 이더리움에서 새로운 스마트 계약 플랫폼으로 이동하고 있지만, 이러한 새로운 플랫폼에 대한 사용자 수요가 증가함에 따라 블록 공간이 포화 상태에 이르고 사용자 경험이 다시 하락하고 있습니다(예: Avalanche의 가스 요금 급등).
현재까지 TPS를 높이기 위한 개발 방법은 주로 다음과 같은 세 가지에 집중되고 있습니다:
- 더 빠른 합의 알고리즘(노드가 거래 지시 사항에 대해 더 빠르게 합의할 수 있도록 허용)
- 운영 환경 최적화(거래가 더 빠르게 실행되도록 함)
- 네트워크 내에서 블록을 더 빠르게 전파
이 세 가지는 거의 모든 새로운 공공 블록체인이 자랑하는 독특한 혁신의 99%를 차지합니다.
일부 팀들이 위의 방법을 연구하고 실천하는 데 뛰어난 기여를 한 덕분에, 이러한 혁신적인 방법의 채택과 코드베이스의 재작성은 많은 고성능 네트워크 노드를 창출했습니다(단순히 이더리움 소스 코드를 기반으로 한 포크나 구축이 아님). 이는 TPS를 거의 한 자릿수 증가시켰습니다. 그러나 이러한 플랫폼이 사용자 수를 계속 확장하기 위해서는 하드웨어 장치에 대한 요구를 증가시켜야 하며, 이는 선형적인 성장을 대가로 해야 합니다. 만약 확장성 문제를 해결하면서도 탈중앙화에 영향을 미치지 않는 더 나은 아키텍처가 있다면 어떻게 될까요?
확장성
오늘날의 블록체인 플랫폼은 단일 모듈로 간주될 수 있습니다. 각 블록체인 노드는 블록체인을 구성하는 모든 부분인 실행, 합의 및 데이터 가용성을 실행하는 데 참여합니다.
실행(Execution)은 블록에 포함된 거래의 계산입니다. 간단히 말해, 이 과정은 사용자가 이더리움 네트워크에서 보유한 토큰 수를 읽고, 그가 보낸 토큰 수를 빼고, 결과를 체인에 저장하는 과정입니다.
합의(Consensus)의 역할은 이러한 거래를 처리하고 정렬 및 검증 확인하는 것입니다. 합의 알고리즘이 없으면 노드 집합이 거래 지시 사항의 순서에 대해 합의에 도달할 수 없으며, 동일한 상태에 도달할 수 없습니다.
마지막으로, 데이터 가용성(data availability)은 블록이 네트워크에 완전히 게시되도록 보장하는 과정입니다. 경량 클라이언트(저급 블록체인 노드)가 작동하려면 네트워크가 전체 블록이 게시되도록 보장해야 하며, 이로 인해 무효 블록이 발생할 경우 정직한 노드가 사기 증명(fraud proof)을 생성할 수 있습니다. 데이터 가용성은 블록체인을 확장하는 데 매우 중요합니다. 이는 네트워크가 모든 노드가 선형적으로 가용 자원을 증가시키지 않고도 용량을 늘릴 수 있게 해줍니다.
오늘날 블록체인을 확장하는 것은 이 세 가지 부분을 동시에 확장하는 것을 의미합니다.
농업 혁명 이후 인류는 효율성과 생산성을 높이기 위해 전문화에 의존해 왔으며, 소프트웨어도 예외는 아닙니다. 사실, 오늘날의 인터넷 프로토콜 스택은 각기 다른 계층으로 구성되어 있으며, 각 계층은 단일 목적을 위해 서비스합니다. 전반적으로 이들은 우리가 오늘날 사랑하는 인터넷의 기초입니다.
이러한 모듈화된 계층은 더 강력한 유연성과 실험적 시도를 허용합니다. 예를 들어, 인터넷 프로토콜 스위트의 전송 계층에서는 온라인 연결을 통해 데이터를 한 컴퓨터에서 다른 컴퓨터로 전송합니다. TCP, UDP 및 SCTP와 같은 다양한 프로토콜이 있으며, 개발자는 이를 통해 애플리케이션의 요구를 최적의 방식으로 충족할 수 있습니다.
유사한 패러다임을 블록체인에 적용하면 유사한 확장성 이점을 제공할 수 있습니다.
모듈화 블록체인 설계로의 진입
실행 계층은 사용자 지향 계층(롤업이라고 함)이며, 거래는 이 계층에서 실행됩니다.
결제 계층(선택 사항)은 상위 모든 롤업의 결과를 최종적으로 확정하며, 이들이 신뢰할 수 없는 방식으로 브리징할 수 있도록 허용합니다.
합의 계층 및 데이터 가용성 계층은 거래 지시 사항을 정렬하고 검증 확인하며, 모든 데이터가 게시되고 접근 가능하다는 것을 보장합니다.
모든 노드가 모든 거래를 실행하고 검증할 필요는 없으며, 다른 모든 노드가 블록체인 데이터의 유효성을 증명할 수 있습니다. 실행 데이터를 모두 저장할 수 있는 기본 계층이 있다면, 우리는 거래가 유효하다는 것을 보장할 수 있으며(제로 지식 증명 또는 게임 이론 메커니즘을 통해) 네트워크 내 모든 사람이 이를 알 수 있습니다. 따라서 이러한 거래는 이제 단일 노드에 의해 실행될 수 있습니다.
이 노드가 악의적인 행동을 한다면, 그 노드는 제거되고 다른 노드가 그 실행을 이어받아 네트워크는 계속 운영될 수 있습니다.
이것은 무엇을 의미할까요? 이는 우리가 이제 여러 노드를 동시에 확장하는 것에서 단일 노드를 확장하는 것으로 초점을 전환했다는 것을 의미합니다. 이는 더 간단한 공학적 업적입니다. 오늘날 대형 Web2 플랫폼의 성능이 증명하듯이, 우리는 이러한 실행 범주를 확장하는 방법을 알고 있습니다.
따라서 실행 계층의 확장성은 이제 문제가 되지 않지만, 한 가지 주의해야 할 점은 실행 계층이 모든 데이터를 합의 계층으로 전송해야 한다는 것입니다. 그렇지 않으면 경량 노드(저자원 노드)는 실행 계층 내의 잠재적 사기 행위를 인식할 수 없습니다. 이는 경량 노드가 거래를 실행하거나 검증하지 않기 때문입니다.
따라서 우리는 실행 계층과 동기화 통신을 하는 모든 노드가 블록 생성 노드 운영자가 사기 행위를 했는지 증명할 수 있는 저렴한 방법이 필요합니다. 다행히도 이를 달성할 수 있는 몇 가지 방법이 있습니다.
주권 롤업(Sovereign Rollups)
우리가 알고 있는 롤업은 스마트 계약 플랫폼(공공 블록체인)에서 결제되어야 하며, 스마트 계약 체인은 일반적으로 데이터 가용성 및 결제 작업을 처리합니다. 롤업은 스마트 계약 플랫폼에서 사기 또는 유효성 증명을 실행해야 하며, 이는 해당 체인의 용량 및 실행 성능의 제약을 받습니다. 현재의 스마트 계약 플랫폼이 결제 작업을 처리해야 하므로 그 확장성은 제한적입니다.
그러나 주권 롤업의 과정은 스마트 계약 플랫폼의 참여가 필요하지 않습니다. 반대로, 각 거래는 데이터 가용성 계층에서 게시되지만 롤업 계층에서 결제됩니다. 중요한 점은 데이터 가용성 계층(DA)이 거래 실행 및 결제를 책임지지 않기 때문에 그 규모를 늘릴 수 있다는 것입니다. 거래 실행 과정은 롤업 계층에서 발생하며, 데이터는 DA 계층에서 사용 가능하고, 결제는 다시 롤업 계층에서 발생합니다. 롤업은 롤업 계층의 전체 노드가 DA 계층을 모니터링하고 사기 증명을 통해 무효 블록을 보고하여 보안을 유지합니다.
사기 증명이 어떤 정직한 전체 노드에 의해 생성되면, 이는 전체 롤업 계층 네트워크에 전파되며, 사기 증명을 받은 모든 경량 노드/전체 노드는 즉시 무효 블록을 포기하고 무효 블록 생성자를 정리하여 블록 생성자가 정직하게 유지되도록 합니다.
지정된 시간 범위 내에 경량 노드가 사기 증명을 받지 못하면, 그들은 해당 블록이 유효하다고 판단할 수 있습니다.
롤업이 거래를 혼잡하거나 방해받을 수 있는 결제 계층에 포함하는 것을 피하기 때문에, 주권 롤업은 더 나은 지연성을 제공할 수 있습니다.
중심 방사 모델을 가진 결제 계층(선택 사항)
중심 방사 모델에서는(매튜 디 페란테의 멋진 게시물 참조) 제한된 결제 계층이 데이터 가용성 계층 위에 위치합니다. 총 세 개의 계층이 있을 수 있습니다: 전형적인 롤업(실행 계층), 결제 계층(주권 롤업) 및 데이터 가용성 계층(DA 계층). 결제 계층은 블록체인처럼 작동하며, 자체 블록 생성자와 거래 실행 기능을 가지고 있지만, 그 실행 기능은 특정 유형의 거래로 제한되어 최적화가 더 용이합니다.
구체적으로, 결제 계층은 실행 계층의 블록 데이터를 저장하고, 실행 최적 롤업의 사기 증명을 저장하거나, zk-롤업의 상태 차이 및 유효성 증명을 저장하며, 이러한 롤업 간 전환을 처리하는 데만 관심을 가집니다.
결제 계층과 동기화하기만 하면 사용자는 거래 실행의 유효성에 대한 충분한 보장을 받을 수 있습니다. 결제 계층 노드는 그 특성으로 인해 작은 공간을 차지하며, 실행 계층에서 계산하는 무거운 작업을 수행하지 않습니다.
중심 방사 모델의 멋진 점은 여러 롤업/실행 계층이 신뢰할 수 없는 방식으로 브리징할 수 있다는 것입니다. 결제 계층이 최상위에서 실행되는 모든 거래에 대해 보안을 제공하므로, 재구성의 경우 모든 롤업 실행 계층도 재구성되며, 이는 브리징에 내재된 보안 위험을 제거합니다. 비탈릭이 최근에 언급했듯이, 이러한 모델의 공유 보안성은 다중 체인 세계의 단편화된 보안성보다 우수합니다. 사실, Eth2.0은 이 허브 역할을 하여 결제 및 데이터 가용성을 제공합니다.
그러나 이 모델은 Celestia 또는 Polygon Avail과 같은 전문 DA 계층에서도 구현될 수 있습니다. 구체적으로, Celestia(데이터 가용성)와 Evmos(결제/허브) 간의 협력은 허브 모델의 흥미로운 예시입니다.
두 모델의 비교
이 두 모델은 서로 다른 균형과 절충이 있습니다. 중심 방사 모델에서는 실행 계층이 기본 결제 계층의 제약을 받지만, 다른 롤업 실행 계층과의 신뢰할 수 없는 상호 운용성의 이점을 누릴 수 있습니다. 예를 들어, Arbitrum과 Optimism은 이더리움을 결제 및 데이터 가용성 계층으로 사용하며, 이는 허브처럼 작동합니다. 이더리움이 재구성되는 경우, 이들 간의 브리징 자금의 양에 관계없이, 이 두 롤업 실행 계층도 이더리움과 함께 재구성되므로 두 실행 계층 모두 자금 손실의 위험이 없습니다.
주권 롤업의 경우, 데이터 가용성 DA 계층 위에 직접 실행 계층을 구축하여 사기 처리를 체인에서 이동시키므로 지연성, 업그레이드 가능성 및 기타 측면에서 더 강한 유연성을 제공합니다. 그러나 우리는 실행 계층 간의 상호 운용성을 확보하지 못했습니다.
데이터 가용성 계층 확장
실행 계층에서 게시해야 하는 데이터 양은 실행되는 거래 수에 비례하여 선형적으로 증가합니다. 따라서 우리는 확장 가능한 데이터 계층이 필요합니다.
사실, 전용 데이터 계층을 확장하는 것은 단일 모듈 블록체인을 확장하는 것보다 훨씬 쉽습니다.
에러 정정 코드(이 기술은 심하게 긁힌 CD를 재생할 수 있게 해줍니다)와 블록 데이터의 데이터 가용성 샘플링(무작위로 N개의 작은 부분을 요구하는)의 조합을 사용하면, 각 노드는 모든 블록 데이터가 사용 가능하다는 것을 확률적으로 보장하고 이를 네트워크에 게시할 수 있습니다. (Mustafa Al-Bassam의 게시물을 참조하여 데이터 가용성 문제와 해결책에 대해 더 깊이 탐구할 수 있습니다.)
동시에 이러한 노드는 함께 통합되어 각 경량 노드가 독자적으로 소유한 데이터 샘플을 조합하여 데이터의 전체 모습을 재구성할 수 있습니다.
이 샘플링의 기발한 점은 필요한 샘플 크기가 DA 계층 블록 크기에 로그적으로 비례하여(즉, 확장성이 매우 좋음) 사용자가 네트워크에 더 많은 노드를 추가함에 따라 네트워크의 데이터 용량도 증가한다는 것입니다.
이로 인해 우리는 "안전한" 데이터 가용성을 대폭 확장할 수 있다는 주요 통찰을 얻게 되었습니다. 이는 BitTorrent와 같은 파일 공유 네트워크와 유사합니다.
결론
수년간의 연구와 불확실성을 거쳐 블록체인의 확장성 문제는 마침내 이론적으로 해결되었습니다. 이것이 얼마나 중대한 일인지 이유를 들어 칭찬할 수 없습니다. 저는 이로 인해 잠을 이루지 못할 지경입니다.
이는 모든 합의, 데이터 및 거래 실행 작업을 처리하는 단일 모듈 블록체인의 시대가 곧 끝날 것임을 의미합니다.
다음 세대 프로토콜은 더욱 전문화되어 오늘날 우리가 말하는 블록체인의 다양한 계층에 맞춰지고, 실험적 혁신을 위한 극대화된 유연성을 제공할 것입니다.
우리는 축제를 맞이할 것입니다: 이더리움 기반의 롤업 프로젝트나 그 파생 포크가 Celestia, Eth2.0 또는 기타 전문 DA 계층을 사용하는 결제 계층에 배포될 것입니다. 결제 계층, DA 계층 및 실행 계층은 각기 다른 방식으로 최적화될 것입니다.
저는 오늘날의 많은 스마트 계약 플랫폼이 이 새로운 스택의 각기 다른 계층이 될 것이며, 많은 새로운 프로젝트가 미래에 등장할 것이라고 예상합니다. 특정 분야(예: 가상 머신, 합의 알고리즘 및 네트워크)에 대한 전문 지식을 가진 팀에게는 큰 기회가 있을 것입니다.
밝고 확장 가능한 미래로 나아갑니다.














