[Celestia Series] 5. Celestia의 특징과 다른 솔루션들

Hudson Jang
Decipher Media |디사이퍼 미디어
26 min readJul 16, 2022

서울대학교 블록체인 학회 디사이퍼(Decipher) Celestia팀에서 최초의 블록체인 데이터 가용성 네트워크인 Celestia에 대한 글을 시리즈로 연재합니다. 본 시리즈는 모듈러 블록체인을 자세히 설명한 한국어로 된 아티클이 적다는 문제의식에서 출발해, Celestia에 한정짓지 않고 데이터 가용성 및 모듈러 블록체인의 개념을 포괄적으로 설명하였습니다.들어가기에 앞서, 필자는 셀레스티아와 아무런 연관이 없음을 밝힙니다.

Celestia Series

1. 모듈러 블록체인이란
2. 연산 레이어와 데이터 저장
3. Data Availability Problem과 솔루션
4. Celestia의 사용 예시
5. Celestia의 특징과 다른 솔루션들

Author

장혁수 of Decipher
Seoul Nat’l Univ. Blockchain Academy Decipher(@decipher-media)
Reviewed By 정재환

목차

1. 들어가며
2. Celestia의 이점과 한계
3. Data availability problem을 다루는 다른 프로젝트
4. 마치며
5. References

1. 들어가며

시리즈의 이전 글들에서 모듈러 블록체인과 Celestia가 무엇인지, Celestia가 해결하고자 하는 문제는 어떤 것인지에 대해 살펴보았습니다. Celestia는 data availability problem을 해결하고자 하는 블록체인이며, 모듈러 블록체인을 위한 데이터 가용성 레이어로서 이를 위한 다양한 기술적 장치들을 제공하고 있습니다.

이번 글에서는 Celestia를 데이터 가용성 솔루션으로 사용하는 롤업들이 어떤 이점을 가져갈 수 있는지를 정리하고, 한계점과 도전 요소들에 대해서도 알아보겠습니다. 또한 Celestia와 비슷한 문제를 해결하고자 하는 Polygon Avail과 Ethereum danksharding등 다른 프로젝트들에 대해서 간단히 소개하겠습니다.

2. Celestia의 이점과 한계

블록체인을 기반으로 하는 프로젝트를 시작하고자 할 때, 가장 결정하기 어렵고 중요한 고민거리는 “어떤 체인을 선택하는가” 일 것입니다. 불과 4~5년 전까지만 해도 이 고민에 대한 선택지가 그리 많지 않았습니다. 하지만 많은 성장통을 거치며 블록체인 산업과 기술은 다양한 방식으로 발전을 이루었고, 그만큼 선택지도 많아졌습니다.

앞으로 다가올 모듈러 블록체인 시대에서는 이러한 고민이 분명 더 깊어질 것입니다. 우리는 앞으로 블록체인 프로젝트를 시작하는 과정에서 단순히 어떤 체인을 선택하느냐 하는 문제를 넘어, 프로젝트에 가장 알맞는 환경을 구성하기 위해 모듈 단위로 고민하고 선택해야 할 것입니다.

그렇다면 data availability problem을 해결하기 위한 모듈로서 Celestia를 선택하게 될 요인은 무엇이 있을까요? Celestia를 사용했을 경우 어떤 이점들을 취할 수 있는지 알아보고, Celestia가 가지고 있는 한계에 대해서도 설명하겠습니다.(이 파트는 Delphi digital report[Pay Attention To Celestia] 를 기반으로 작성 되었습니다.)

1.1. Celestia를 사용할 경우 얻을 수 있는 이점들

Self sovereignty
현존하는 대다수의 롤업들은 이더리움을 L1으로 사용하고 있습니다. 롤업의 블록 헤더를 L1에 제출하고, 사기/유효성 증명을 온체인에서 실행하기 때문에 L1에 의존적입니다. 결국 롤업의 상태를 결정하는 것은 이더리움의 스마트 컨트랙트들 입니다.

앞선 글에서 살펴본 것처럼 Celestia는 트랜잭션에 대한 합의(consensus)와 데이터 가용성(data availability)만 담당합니다. 트랜잭션을 연산(execution)하고 상태로 변환(settlement)하지 않습니다. 즉, 롤업이지만 마치 L1블록체인처럼 자체적으로 롤업의 노드들이 스스로의 상태를 결정하게 됩니다.

Celestia를 기반으로 self sovereignty를 가져가는 롤업들 (출처: Delphidigital)

이는 이더리움의 L2들이 롤업을 위해 온체인 거버넌스를 가져가야 한다는 한계를 극복할 수 있게 해줍니다. 또한, 하드포크를 하는 과정도 쉽고 안전해지는 효과가 있습니다. 기존의 L1체인이 하드포크를 할 때 노드 밸리데이터가 나누어져 그만큼 보안이 희석되는 것과는 다르게, Celestia를 데이터 가용성 레이어로 사용하는 롤업들의 경우 합의와 보안을 Celestia가 담당하기에 보안의 희생 없이 하드포크를 할 수 있습니다.

Flexibility
Celestia의 또다른 특징은 실행 환경에 대한 유연함을 제공해 준다는 것입니다. 이더리움의 롤업들은 사기/유효성 증명을 위해 EVM에 종속적입니다. 하지만 최근 EVM외에도 MoveVM, CosmWasm, Starkware와 같은 다양한 VM들이 각자의 장점을 지니고 등장하고 있습니다. 우리가 개발하는 프로젝트가 다른 EVM이 아닌 다른 VM을 사용했을 때 더 효율적이라면 굳이 EVM을 고집할 이유는 없습니다.

Celestia는 트랜잭션을 직접 실행하지 않기에, 특정 VM에 종속적이지 않습니다. 우리는 Celestia 기반의 데이터 가용성 레이어를 사용하며 상황과 조건에 더 맞는 VM환경을 자유롭게 선택해 프로젝트를 진행할 수 있습니다.

Celestia 위에 구축된 다양한 Execution layers (출처: Celestia blog)

Effortless deployment
초창기 블록체인 환경은 고사양의 PoW 하드웨어 없이는 구축할 수 없었습니다. PoS가 등장하고 Cosmos SDK와 같은 블록체인 개발 도구들이 등장해 새로운 블록체인은 보다 쉽게 만들고 배포할 수 있게 되었지만, 이를 실제로 부트스트랩 하는 것은 매우 어려운 일입니다.

  • Cosmos SDK와 같은 개발 도구를 사용해 블록체인을 전보다 쉽게 만들었다 하더라도 능력있는 벨리데이터들을 구하고, 커뮤니티를 구축하고, PoS를 위한 토큰이 잘 분산되어 있는지 관리하는 것은 많은 시간과 노력을 필요로 하기 때문입니다.
  • 이에 비해 Polkadot parachain과 이더리움 롤업들은 이러한 병목을 신경쓸 필요가 없지만, 체인을 배포하는 것에 많은 비용이 들어갑니다.
Celestia 롤업의 쉬운 배포(출처: Delphidigital)

Celestia를 사용한 롤업의 경우 위 두 가지 문제에서 모두 자유롭습니다. Celestia팀에서 만드는 Cosmos SDK 기반의 Optimint라는 optimistic 롤업에 대한 스팩을 제공하고 있고, 이를 포함해 Celestia의 특성들과 다양한 툴들을 사용하면 누구나 비용과 벨리데이터에 대한 걱정 없이 손쉽게 Celestia 위에 체인을 올릴 수 있습니다.

Efficient resource pricing
이더리움에서도 데이터 가용성 레이어 역할을 하는 샤드를 도입 예정입니다. 이를 사용하게 되면 이더리움에서도 롤업을 위한 비용이 줄어들겠지만, 그렇다 해서 L1에 실행 환경을 없애는 것은 아닙니다. 이더리움은 이미 거대한 State를 가지고 있고, 롤업 노드들은 이더리움 State를 전부 다운로드 받아야 하기에 피할 수 없는 부담을 갖게 됩니다. 또한, 본인의 롤업에서의 활동과 전혀 관계 없이 다른 이유로 L1이 바빠질 경우 롤업들의 수수료도 크게 증가하고 느려집니다.

Efficient Resource Pricing(출처: Delphidigital)

Celestia의 경우, State growth와 Historical data의 증가가 분리됩니다. Celestia의 블록 공간은 롤업들의 Historical data를 처리할 뿐, State는 롤업 각각의 실행 레이어에서 다루어 지기 때문에 독립적인 수수료 시장을 구성하게 됩니다. 예를 들어, 인기 있는 NFT 프로젝트의 민팅이 있어 트랜잭션이 몰린다 하더라도 해당 롤업의 수수료에만 영향이 있을 뿐 다른 롤업들에는 영향을 주지 않을 것입니다.

Trust minimized bridges
DeFi 시장이 성장하고, 다양한 블록체인들이 서로의 생태계 자산들을 시장에 받아들이게 되면서 체인간 자산의 이동을 책임지는 브릿지가 매우 중요한 요소가 되었습니다. (브릿지에 관한 내용은 시리즈 4편 [Celestia의 사용 예시]에서도 확인해 볼 수 있습니다.)

브릿지는 크게 다음 두 종류로 구분해 볼 수 있습니다.

  • Trust minimized bridge : 한 체인의 Single Full node에만 의존해도 상호 신뢰가 가능합니다.
  • Trusted bridge : 상대 체인의 Consensus에 전적으로 의존해야 합니다.

우리는 실제로 많은 경우 Trusted bridge를 사용해서 자산을 이동합니다. (이더리움을 Binance smart chain으로 보낸다거나 하는 식으로 말이죠.) 하지만 이러한 방식은 서로의 Consensus에 의존해야 하며, 이는 보안 수준을 희석하게 됩니다. 한 쪽의 보안 수준이 다른쪽보다 극도로 낮은 경우에는 더욱 위험한 상황을 초래할 수 있습니다. 그렇다면 Trust minimized bridge를 구축하기 위한 조건은 어떤 것들이 있을까요? 다음 두 조건을 만족하면 Trust minimized bridge를 구축할 수 있습니다.

  • Bridge를 구축하고자 하는 체인들이 동일한 데이터 가용성 레이어를 사용해야 합니다.
  • 서로의 State machine을 검증할 수 있어야 합니다. (동일한 데이터 가용성 레이어를 사용한다 하더라도 이더리움과 솔라나는 서로 다른 VM을 사용하기 때문에 Trust minimized bridge 달성이 불가능 합니다.)
The relationship between chains and clusters in theory(출처: Celestia blog)

Celestia는 데이터 가용성 레이어로서 롤업들이 동일한 데이터 가용성 레이러를 공유할 수 있도록 해줍니다. Celestia 위에서 같은 VM을 사용하는 롤업들 끼리 클러스터를 구성해 Trust minimized bridge로 연결할 수 있습니다.

Celestia 기반 롤업들이 구축하는 브릿지들(출처: Delphidigital)

Minimal governance
EIP의 역사를 가장 많은 부분을 차지하는 것은 실행(Execution)과 관련된 것이었습니다.

연도-카테고리 별 EIP Proposal 수(출처 : Decipher 정재환, 이응호 발표자료)

이더리움 롤업의 경우, 필요로 하는 거버넌스를 변경하기 위해서는 EIP에 제안을 하고 이 제안이 실제 체인에 반영되기 까지 상당한 시간이 소요됩니다. Celestia를 사용하는 롤업들의 경우, 각자 독자적인 실행 레이어들을 가지고 있기 때문에 독립적으로 거버넌스를 처리할 수 있습니다.

Decentralizing block verification, not production
많은 블록체인 프로젝트들, 그리고 블록체인을 신뢰하는 사람들이 가장 중요하기 생각하는 부분은 바로 탈중앙화 입니다. 지금까지 수많은 프로젝트들이 이를 위해 블록 생성을 탈중앙화 하는 것에만 관심을 가져 왔습니다. 하지만 블록 생성을 탈중앙화 하기 위해 양보해야 하는 것들(확장성, 보안성)의 가치는 포기하기 어려운 부분들입니다.

블록 생성을 탈중앙화 하는 것 말고도 탈중앙화를 달성하는 보다 효율적인 방법이 있습니다. 바로 블록 검증을 탈중앙화 하는 것이죠. 블록을 생성하는 노드가 소수일 지라도 많은 참여자들에게 검증받을 수 있다면 블록 생성을 탈중앙화하는 것과 유사한 효과를 낼 수 있습니다. 비탈릭의 Endgame 아티클 에서도 비슷한 주장을 찾아볼 수 있습니다.

Celestia는 상당히 중앙화된 블록 생성자 구조를 가지고 있습니다. 블록 생성자들에게 매우 높은 리소스를 요구하지만, 검증자(라이트노드)는 낮은 리소스로도 검증에 참여할 수 있습니다. 이전 글에서 확인할 수 있듯, Celestia는 DAS를 통해 탈중앙화된 라이트노드들이 검증에 참여해 결과적으로 탈중앙화된 네트워크를 달성할 수 있습니다.

Simplicity
Celestia는 확장성을 매우 중요시 하는 블록체인 입니다. 기존 다른 블록체인이 확장성 측면에서 병목을 겪고 있는 부분들을 식별해서 간단한 설계 선택을 했습니다. 설계 선택을 간결하게 가져간 몇 가지 예를 들어 보겠습니다.

  • 이더리움은 복잡한 구조의 샤딩을 구현하고 로드맵 마지막 단계에서 DAS를 적용하려 합니다. Celestia는 이와는 달리 DAS를 가장 우선적으로 적용하고 과도하게 복잡한 합의 샤딩 과정을 따르지 않기로 결정했습니다.
  • 새로운 합의 프로토콜을 만드는 대신, 이미 성숙한 개발자/벨리데이터 커뮤니티를 확보하고 훌륭한 개발도구들이 존재하는 Tendermint를 선택했습니다.

이렇듯 최대한 간결하게 만들기 위한 설계 단계에서의 선택들은 Celestia가 출시되었을 때에 많은 프로젝트들이 Celestia를 선택하는 것에 있어 중요한 요인이 될 것입니다.

2.2. Celestia의 한계와 해결해야 하는 문제들

이렇듯 Celestia는 데이터 가용성에 대한 고민을 가지고 있는 많은 프로젝트들에게 훌륭한 선택지가 될 수 있습니다. 하지만 Celestia는 여러 측면에서 극복해야 할 문제들을 가지고 있습니다. 이번 파트에서는 Celestia의 한계와 해결해야 하는 도전 요소들에 대해 설명하겠습니다.

적절한 블록 사이즈에 대한 결정
본 시리즈의 3편에서 알아본 것과 같이, Celestia의 블록 사이즈는 데이터 샘플링에 참여하는 라이트노드의 수에 따라 결정됩니다. 하지만 DAS(Data Availability Sampling)는 sybil-resistant한 과정이 아니기에 네트워크에 참여하는 라이트 노드 수에 대한 예측과 검증이 어렵습니다. 때문에 타겟 블록 사이즈를 결정하고 이를 체인에 업데이트 하는 것은 코드에 의해 자동으로 동작하는 것이 아닌, 일종의 사회적 합의(거버넌스 등을 통한)를 통해 이루어 지게 될 것입니다. 이는 매우 도전적인 과제가 될 것이 분명하며, 체인의 보안과 확장성에 큰 영향을 미치는 요소인 블록 사이즈를 적절하게 결정하는 것이 Celestia의 숙제가 될 것입니다.

또한 Data sampling에 참여하는 라이트 노드들의 경우 프로토콜에 의해 보상받는 것이 없다는 점도 우려되는 부분입니다. 라이트노드의 수가 적으면 결국 블록 사이즈를 늘리는 것에 한계가 있기 때문에, 프로토콜의 보상 없이도 라이트노드를 운영할 유인 요소들을 만들어 내는 것 역시 Celestia가 고민해야 하는 요소일 것입니다.

Bootstrapping Network
Celestia는 데이터 가용성 레이어만 제공할 뿐, 트랜잭션을 실행하거나 상태를 가지고 있지 않습니다. 이는 다시 말해 Celestia 기반으로 동작하는 Execution layer가 없다면 Celestia는 혼자서 할 수 있는 것이 아무것도 없다는 것을 의미합니다. 데이터 가용성 레이어를 제공하려는 쟁쟁한 경쟁 프로젝트들이 있는 만큼 네트워크를 bootstrapping 하는 것이 큰 도전 요소가 될 것입니다.

다행히도 다음과 같은 프로젝트들이 Celestia 기반으로 준비되고 있습니다.

  • CEVMOS : EVM을 Celestia 실행 레이어로 사용하려는 프로젝트로, Cosmos 생태계 프로젝트 중 하나인 EVMOS의 Celestia 버전입니다.
  • Celo : 코인마켓캡 기준 시가총액 82위(2022/06/03 기준) L1 프로젝트인 Celo가 Celestia 기반 롤업으로 전환할 계획을 발표하였습니다.
Celo chain의 Celestia L2 전환 발표(@ocelot_labs Twitter)

이 밖에도 Celestia는 모듈러 블록체인을 위한 데이터 가용성 레이어로서 많은 주목을 받고 있으며 Celestia를 사용하는 것을 검토하는 더 많은 프로젝트들이 있습니다. 이들 개별 프로젝트들의 성공 혹은 실패가 곧 Celestia의 성패를 결정하는 것은 아닐 것입니다. 하지만 Celestia가 실행 레이어가 없는 네트워크 라는 특성상 Celestia를 기반으로 하는 보다 많은 프로젝트들이 좋은 성과를 낼 수 있도록 네트워크를 bootstrapping하는 것은 매우 중요할 것입니다.

Celestia native token의 한계
Celestia 네이티브 토큰이 가질 수 있는 유틸리티가 한정적이라는 점도 있습니다. 기존의 L1 체인 네이티브 토큰들의 경우 데이터 저장, 실행 등 체인 위에서 일어나는 대부분의 활동들의 수수료로 사용되고 있습니다. 하지만 Celestia는 데이터 가용성 전문 레이어이기 때문에, 스마트 컨트랙트를 통해 상태를 계산하기 위해 실행하고 상태를 저장하는 비용으로 사용되지 않습니다. 물론 Celestia가 대다수 롤업들의 선택을 받고 월드 블록체인 데이터 레이어로서 사용되게 된다면, 데이터 가용성 레이어 역할만으로도 토큰의 가치가 충분할지도 모릅니다. 하지만 이더리움, 폴리곤 등 이미 널리 채택되고 있는 프로젝트들이 자체적으로 데이터 가용성 레이어를 준비하고 있기에 힘든 경쟁이 될 것입니다.

Celestia 토큰이 자체적으로 가지고 있는 유틸리티가 부족하다는 것과는 별개로, execution layer에서 디파이 등에 쓰이기 어렵다는 점도 있습니다. 이더리움이 L1 네트워크와 롤업 사이를 trust-minimized한 방식으로 이동 가능한 것과는 다르게, Celestia 네이티브 토큰은 다른 체인으로 보내기 위해 trusted bridges를 사용해야 하기 때문입니다.

3. Data availability problem을 다루는 다른 프로젝트

지금까지 Celestia를 데이터 가용성 레이어로 선택할 때의 이점과 한계들에 대해 살펴보았습니다. 사실 data availability problem은 모듈러 블록체인을 고민하는 과정에서 나오는 필연적인 요소입니다. 때문에 Celestia 이외에도 같은 문제를 해결하기 위해 준비하는 프로젝트들이 여럿 있습니다. 동일한 문제를 해결하기 위해 선택할 수 있는 솔루션들이 많다는 것은 사용자 입장에서 매우 환영할 만한 일입니다. 물론 선택을 해야 하는 순간에는 괴로운 일이 될 수 있지만 말이죠. 이번 파트에서는 Celestia 이외에 data availability problem을 다루는 또다른 프로젝트인 Polygon Avail와 이더리움의 Danksharding에 대해 간략히 알아보겠습니다.

3.1. Polygon Avail

Polygon Avail은 Polygon 재단에서 준비중인 여러 모듈러 블록체인 스택들 중 하나입니다.

폴리곤이 만드는 다양한 모듈러 블록체인 스택들 (출처: Polygon 공식 사이트)

Polygon avail은 기존 블록체인의 역할을 모듈화해 데이터 가용성에 대한 부분에 집중하고 연산은 다른 레이어에 맡긴다는 철학이 Celestia와 동일하기 때문에 문제를 해결하는 접근도 유사합니다.

  • Erasure coding을 사용해 데이터의 일부로 원본 데이터를 복구할 수 있게 하였고,
  • 라이트노드들이 데이터 샘플링을 통해 악의적인 블록 생성자를 검증하는 DAS(Data Availability Sampling)을 사용합니다.

Polygon avail이 Celestia와 같은 다른 데이터 가용성 레이어 솔루션들과 다른점은 DAS과정에 KZG Commitment를 사용하는 것입니다.

KZG Commitment scheme (출처: Polygon Avail github)

Celestia의 경우, erasure coding이 정상적으로 적용 되었는지를 검증하기 위한 방법으로 사기 증명(Fraud proof)를 사용합니다. 즉 누군가는 erasure coding에 대한 감시를 위해 블록을 감시하다 악의적인 시도를 감지하면 사기 증명을 생성해 다른 네트워크 참여자들에게 알려야 합니다.

이와는 다르게 Polygon Avail이 사용하는 KZG commitment은 사기 증명 없이도 erasure coding의 올바름을 보장할 수 있도록 해줍니다. 자세한 기술적 이해를 위해서는 링크의 문서를 확인하는 것이 도움이 될 것입니다.

Avail validium은 Avail을 사용해 확장성과 보안을 확보하면서도 비용을 획기적으로 절약한 좋은 예시입니다. zk롤업을 위한 영지식 증명은 이더리움에 제출하고, 트랜잭션 데이터는 Avail에 저장하는 방식을 사용합니다.

Polygon Avail을 활용한 Validium (출처: polygon blog)

ZK롤업에서 발생하는 비용 중, 80~95% 가량은 트랜잭션 데이터를 이더리움 온체인에 저장하는 것에서 발생합니다. 이 비용을 절약하기 위해 데이터를 오프체인에 저장하는 경우, data availability problem에서 벗어나기 어렵습니다. 하지만 Avail vailidum은 데이터 가용성 레이어로 Avail을 사용하여 실행에 대한 증명은 이더리움의 강력한 보안을 활용하면서도 트랜잭션 저장에 들어가는 비용을 줄일 수 있게 되었습니다. 이는 모듈러 블록체인이 가질 수 있는 장점을 보여주는 좋은 예시입니다.

Avail validium vs 일반 ZK Rollup (출처: polygon blog)

3.2. Ethereum Danksharding

이더리움 역시 data availability problem을 꾸준히 고민해 왔습니다. 이더리움 2.0 로드맵 초기에는 샤드를 execution layer로 사용하려 했습니다. 하지만 샤드를 데이터 가용성 레이어로 사용하고 롤업을 통해 execution layer를 구현하는 것이 훨씬 더 큰 성능 향상을 가져올 수 있고, 보안 측면에서도 더 유리하다는 것이 확인되었습니다.(비탈릭의 A rollup-centric ethereum roadmap 에서 자세한 내용을 확인할 수 있습니다.)

비탈릭은 An explanation of the sharding + DAS proposal 에서 샤딩과 erasure coding을 사용한 DAS를 통해 data availability problem을 해결할 아이디어를 제시했습니다. 이더리움 역시 erasure coding의 검증을 위해 앞서 살펴본 Polygon Avail과 동일한 기법인 KZG commitment를 사용합니다.

이더리움의 샤딩은 다음과 같은 방식으로 진행됩니다.

  1. 각각의 롤업들이 트랜잭션 데이터들을 샤드에 저장하고, 샤드의 proposer들이 이를 묶어 제안합니다.
  2. 각 샤드별로 Committee가 존재하는데, Committee 멤버의 2/3 이상이 data가 available하다는 것에 동의하면 이 데이터 묶음의 헤더를 비콘 블록에 포함시킵니다.

여기서 각 샤드별로 데이터를 제안하는 proposer가 별도로 존재했고, 데이터를 각각 처리하고 이를 다시 모아서 비콘 블록에 포함시켜야 했기 때문에 디자인이 과도하게 복잡해지고 네트워크에 딜레이가 발생하는 단점이 존재합니다. 이는 결과적으로 이더리움에서 샤딩을 구현하는 것이 불가능한 것으로 여겨지게 만들었습니다.

Danksharding
이를 해결하기 위해 나온 디자인 제안이 Danksharding 입니다.

기존 Sharding과 Danksharding의 차이 (출처: Danksharding workshop by Ethereum foundation)

Danksharding은 모든 샤드들의 데이터를 비콘 블록 안에 포함시켜 한번에 제안하고, committee의 검증을 거칩니다. 때문에 간단한 디자인 구조를 가져갈 수 있으며, 다른 샤드의 투표가 완료되는 것을 기다려야 하는 상황도 피할 수 있습니다.

그렇다면 왜 이더리움은 처음부터 Danksharding의 디자인을 선택하지 않았던 것일까요? Danksharding과 같이 모든 샤드의 데이터를 하나의 블록으로 처리하게 될 경우 블록의 크기가 커지게 됩니다. 블록 사이즈의 증가는 노드 검증자들에게 높은 하드웨어 요구 사항에 대한 부담으로 강제되고, 이는 일부 검증자들에게 집중되는 중앙화 문제를 야기할 것입니다.

PBS(Proposer/builder seperation), crList
Danksharding을 가능하게 만들기 위한 아이디어로 비탈릭은 Two-slot proposer/builder separation 를 통해 기존의 proposer를 proposer(검증자)와 builder(생성자)로 나누어 블록 생성과 검증을 디커플링 시키는 것을 제안했습니다. 비탈릭은 Endgame 에서 블록 생성은 결국 중앙화 될 수 밖에 없고 생성된 블록을 검증하는 것을 탕중앙화 시켜 탈중앙성을 지켜야 한다는 점을 강조했습니다.

PBS를 적용한 Danksharding 디자인 (출처: Danksharding workshop by Ethereum foundation)

Danksharding 디자인은 블록 생성자 요구사항을 높혀 블록 생성을 중앙화 시켰지만, PBS를 통해 낮은 하드웨어 요건의 proposer를 분리해 블록 검증을 탈중앙화 시킬 수 있었습니다. 이에 더해 악의적인 builder가 proposer가 제출한 트랜잭션을 누락시키는 것을 방지하기 위해 crList(Builder가 블록을 생성한 뒤 proposer가 자기가 보낸 트랜잭션이 포함되었는지 비교하기 위해 만드는 트랜잭션 List)를 도입해 PBS에서 생길 수 있는 문제를 해결하였습니다.

crList 동작원리 (출처: Danksharding workshop by Ethereum foundation)

이처럼 이더리움 역시 Celestia와 Polygon Avail과 유사한 방식으로 data availability problem을 해결하기 위한 솔루션을 제시하고 있습니다. 만약 Danksharding이 성공적으로 출시가 되어 자체적으로 데이터 가용성을 확보한다면, Celestia와 Polygon Avail은 존재 이유에 대한 도전을 받을지도 모릅니다. 이런 이유로 Celestia와 Polygon Avail 모두 EVM에 한정되지 않고, 다양한 VM 롤업을 위한 모듈러 블록체인 레이어로서 역할을 강조하고 있는 것으로 보입니다.

4. 마치며

이번 Celestia 시리즈를 통해 블록체인이라는 하나의 기술이 역할에 따라 어떻게 모듈화 되어 나누어 질 수 있으며, 이를 통해 블록체인의 트릴레마를 어느 정도 해결할 가능성을 확인해 볼 수 있었을 것입니다. 그 과정에서 data availability problem에 대해 조금 더 깊게 알아보았고, 대표적인 데이터 가용성 레이어 솔루션인 Celestia에 대해 설명하였습니다.

블록체인은 그 발전 과정에서 끊임없이 탈중앙, 확장성, 보안이라는 트릴레마 사이에서 고민하며 성장해 왔습니다. 비트코인과 이더리움 이후 수많은 프로젝트들이 별다른 차별점을 갖지 못한 채 경쟁에 밀려 사라져 갔고, 일부는 차별화된 강점을 갖추기 위해 중요한 부분들을 희생해 가며 지속 가능성을 연장해 오고 있습니다. 확장성을 확보하기 위해서는 탈중앙성을 희생해야 했고, 이는 어느정도 필연적인 것으로 여겨져 왔습니다. 하지만 data availability problem를 해결하기 위한 솔루션들이 등장하며 탈중앙성을 지키면서도 무한한 확장성을 확보할 수 있다는 가능성이 생겼습니다. 이처럼 Celestia가 몰두하고 있는 “Data availability problem” 이라는 것은 그만큼 중요하고 꼭 필요한 요소입니다.

블록체인 기술과 시장은 불과 몇 년 사이에 다양한 철학적, 기술적 시도들이 있었고 그 과정에서 다양한 성장통을 겪으며 빠르게 발전하고 있습니다. 지금도 멋진 목표와 기술력을 갖춘 모놀리틱 블록체인 프로젝트들이 그 시작을 준비하고 있으며, 모듈러 블록체인을 위한 강력한 프로젝트들도 꾸준히 등장하고 있습니다. 어쩌면 이더리움2.0의 솔루션들이 다양한 고민들을 한번에 해결해 버릴지도 모릅니다. 앞으로 어떤 프로젝트와 철학이, 그리고 어떤 방향성이 대세가 되어 기술을 주도할 지는 예측하기 어려울 것입니다. 하지만 이번 Celestia 시리즈를 통해 알아본 data availability problem과 같은 주제는 어떤 방식으로든 해결 해야 하는 부분일 것이고, 그 중 모듈러 블록체인과 Celestia가 하나의 선택지가 될 것입니다.

5. References

디사이퍼 — Celestia 팀 소개

Jason — Decipher Senior Researcher
이건우 — Decipher Junior Researcher
임요한 — Decipher Junior Researcher
장혁수 — Decipher Junior Researcher
홍성수 — Decipher Senior Researcher

--

--