[Celestia Series] 4. Celestia의 사용 예시

Daniel Hong
Decipher Media |디사이퍼 미디어
18 min readJul 16, 2022

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

Celestia Series

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

Author

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

목차

1. Clusters
2. Celestium & Quantum Gravity Bridge
3. Settlement rollup(결제롤업)
4. Sovereign rollup(주권롤업)
5. 맺으며
6. References

1. Clusters

현재 수많은 레이어1 메인넷들이 출시되어 있고, 서로를 연결하기 위한 다양한 시도가 생겨나고 있습니다. 블록체인들의 인터넷이라는 표현을 통해 각기 다른 체인을 연결하고 서로 통신을 하는 것이 점점 더 중요해지고 있는 시점입니다. 서로 다른 체인에 있는 dApp들끼리도 상호작용할 수 있는 composability을 달성하기 위해서는 크로스체인 상호운용성이 필수적입니다. Celestia 생태계에서는 DA layer를 이용해 어떤 방식으로 크로스체인 통신을 발전시켰는지 알아보겠습니다.

크로스체인과 보안

현재 블록체인간 커뮤니케이션은 믿을 수 있는 제3자가 필요하거나 동시성을 가정해야합니다. 블록체인의 장점이 신뢰할 수 있는 제3자가 필요가 없다는 점인데 블록체인간 통신에서 제3자가 필요하다는 것은 블록체인의 장점을 희석시켜버리는 결과를 낳습니다. 제3자에 의존해야하는 순간 블록체인에 대한 신뢰도가 떨어지기 때문입니다. 이것은 보안의 문제와도 연관이 있습니다.

예를들어, Daniel이 A체인에서 B체인으로 5개의 코인을 전송해야하는 상황을 가정해보겠습니다. 체인 A의 Daniel의 잔고에서 5를 빼고 Daniel의 체인B 잔고에 5를 더해주어야하는 상황입니다. 위의 과정이 atomic하려면 두 트랜잭션이 모두 발생하거나 모두 발생하지 않아야합니다. 만약 한 체인에서의 트랜잭션만 일어난다면 atomic하지 않다고 할 수 있습니다. 즉, 서로 다른 블록체인에서 상호운용성을 달성하기 위해서는 보안에 대한 트레이드오프가 존재할 수 밖에 없습니다.

반면 atomic한 크로스체인 통신을 위해서는 크게 두가지 요소가 중요합니다.

  1. Relay liveness 만약 어떤 트랜잭션이 A체인에서의 state transition이 B체인에서의 state transition을 일으키는 것이라면, 해당 트랜잭션은 B체인에 전달되어야만 합니다
  2. State Verification 두 체인이 서로의 상태가 유효한지 알 수 있어야합니다.

한 체인에서 토큰 전송을 할때 atomicity가 보장되는 이유는 하나의 풀노드가 한번에 트랜잭션을 검증할 수 있기 때문입니다. 또한, 롤업 브릿지의 경우 체인간 atomic한 토큰 전송을 위해 정직한 다수가 필요하다는 가정이 필요가 없습니다. 왜냐하면 L1에서의 트랜잭션의 타당성을 사기/유효성 증명을 통해서 확인할 수 있기 때문입니다.

보안을 위한 위 두가지 요소를 충족시키기 위해서 Celestia는 Cluster라는 개념을 도입합니다.

Clusters

Trust Minimized bridge 구축 요건

보통 사이드체인 브릿지와 같이 정직한 다수가 있을 것이라는 가정에 의존하는 브릿지를 Trusted bridge라고 합니다. 웜홀, 멀티체인, 로닌 사이드체인 브릿지와 같은 Trusted bridge들은 일반적으로 보안이 취약하고 해킹을 당한 이력도 많습니다. 그래서 메인체인과 롤업의 관계처럼 Trust Minimized Bridge를 구축하는 것이 굉장히 중요하고, 이를 구축하기 위한 조건은 다음과 같습니다.

  1. 서로의 실행환경에 대한 이해 서로의 트랜잭션이 타당한지 검증하기 위해서 사기/유효성 검증을 이용하는데, 이를 위해서는 서로의 실행환경을 이해해야합니다. 즉, 기본적으로 같은 Virtual machine 환경을 가지고 있어야합니다. 예) 솔라나와 이더리움은 서로 다른 가상머신을 사용하므로 불가능함
  2. 데이터가 available 해야함 옵티미스틱 롤업의 경우 데이터가 가용하지 않으면 사기증명을 생성할 수가 없습니다. ZK롤업의 경우에도 데이터가 가용하지 않다면 해당 트랜잭션이 타당한 건 알 수 있지만, 영지식의 특성상 체인의 상태를 알 수 없다는 단점이 있습니다. 이 외에도 서로 다른 두 체인이 그들의 트랜잭션을 모두 검증하고 있다고해도, 트랜잭션이 어떤 것이 있는지 알아야(데이터 가용성이 보장되어야) 검증을 진행할 수 있습니다.

Cluster란

Celestia는 위의 롤업들에게 똑같은 DA환경을 제공하기 때문에 2번 조건을 충족시킬 수 있습니다. 따라서 1번 조건만 충족된다면 Trust minimized bridge를 구축하는 것이 가능해집니다. 다시말해, 체인들의 VM이 같거나 같은 settlement 레이어를 사용하는 경우 Trust minimized bridge를 구축하는 것이 가능해지지고, 이런 브릿지를 구축할 수 있는 체인들을 묶어서 Clusters라고 부릅니다.

(출처 : https://blog.celestia.org/clusters/)

위의 그림에서 이더리움과 아비트럼은 서로 같은 VM을 사용하므로 같은 클러스터에 속하게 되고 이 둘간의 통신은 신뢰가 최소화된 클러스터 내 통신으로 불립니다. 반면, 코스모스 존끼리의 통신이나, 범이더리움 클러스터와 폴리곤 사이의 통신은 신뢰가 필요한 클러스터 간 통신으로 부를 수 있습니다. Celestia라는 같은 DA레이어를 공유하기 때문에 클러스터 내 통신이 훨씬 편해지는 장점을 얻을 수 있습니다.

(출처 : https://members.delphidigital.io/reports/pay-attention-to-celestia)

EVM, CosmWasm 등의 VM을 공유하는 체인들끼리는 같은 클러스터에 속하기 때문에 신뢰가 최소화된 브릿지 구축이 가능합니다. 더 나아가서, 코스모스 클러스터의 체인들끼리 p2p 결제가 가능하다면, Trust minimized bridge를 구축할 수도 있습니다.

2. Celestium & Quantum Gravity Bridge

Celestium이란

Celestium은 이더리움 레이어2 체인으로, Settlement 레이어로는 이더리움을 사용하지만 DA Layer로 Celestia 레이어를 사용하는 체인입니다. 다른 롤업들이 데이터를 이더리움에 기록하는 것과는 다르게 Celestia에 기록하는 네트워크들이 Celestium입니다.

(출처 : https://blog.celestia.org/celestiums/)

가스비용과 확장성 문제

현재의 이더리움에서 롤업들은 레이어2의 트랜잭션을 하나의 배치(single batch transaction)로 모아 이더리움에 post합니다. 이 배치에는 롤업의 트랜잭션 데이터들이 호출 데이터(call data) 형식으로 포함되게 됩니다. 이더리움에 post되지만 직접 실행되지는 않는다는 의미입니다. 하지만, 이더리움에 저장할 수 있는 데이터의 크기가 작기 때문에 이 호출 데이터를 이더리움에 post하는 것도 큰 비용이 발생하게 됩니다. 따라서 확장성에 문제가 발생하게 됩니다.

롤업 비용

이더리움에 데이터를 포스트하는 비용은 바이트당 16 gas 입니다. 이를 해결하기 위해서 롤업이라는 솔루션을 도입하고 있습니다. 롤업 운영에 대한 롤업 수수료는 모놀리식 블록체인처럼 작동하게 되는데, 롤업이 많이 사용되고 한계에 도달하게 되면 수수료비용 문제가 다시 커집니다. 트랜잭션 배치가 증가함에 따라 이더리움에서 트랜잭션을 실행하는 총 비용도 같이 증가하게 되기 때문입니다.

롤업 트랜잭션에 소요되는 비용은 두가지로 나눌 수 있습니다.

  1. 고정비용(ZK에서 proof cost, state write, 기본 트랜잭션 비용)
  2. 가변비용(L2 가스비, 호출 데이터를 게시하는 비용)

고정비용은 트랜잭션 별로 크게 다르지 않고, 가변비용 중 L2 가스비는 매우 저렴하기 때문에, 호출 데이터를 이더리움에 게시하는 비용이 트랜잭션 비용에 큰 영향을 미치게 됩니다. 이를 수식으로 표현하면 다음과 같습니다.

(출처 : https://blog.celestia.org/celestiums/)

결과적으로 트랜잭션의 배치에 많은 트랜잭션을 한번에 담아서 압축시키더라도 비용은 항상 바이트당 16가스로 고정비율이 되는 것입니다. 위의 수식을 그림으로 표현하면 아래와 같습니다.

(출처 : https://blog.celestia.org/celestiums/)

최근 아비트럼이 오디세이 프로그램을 시작하고 나서 사용자가 급증해 가스비가 비싸지는 사례가 있었습니다. 심지어 아비트럼의 가스비가 이더리움보다도 높아지는 현상을 보였고, 레이어2 솔루션이 가스비 문제를 해결해주지 못한다는 것을 보여주었습니다.

(출처 : https://l2fees.info/)

Celestia는 DA와 합의만 담당하고, 실행은 하지 않기 때문에 DA와 관련된 비용만 청구되기 때문에 위와 같은 문제를 해결할 수 있습니다. 더 나아가, DAS 샘플링 노드들이 많아질수록 Celestia의 블록이 더욱 커질 수 있기 때문에 이더리움과 비교했을때 훨씬 더 저렴하게 됩니다.

Celestium의 구조와 Quantum gravity bridge

Proof를 검증하는 settlement 레이어는 이더리움을 쓰되, 트랜잭션 데이터를 저장하는 DA레이어로는 Celestia를 사용하는 Celestium(이더리움 레이어2)을 통해 위의 문제를 해결할 수 있습니다.

출처 : https://blog.celestia.org/celestiums/

Celestium의 구조는 위와 같습니다. 트랜잭션 데이터는 셀레스티아의 블록에 저장되고, Proofs는 L2 컨트랙트로 전송됩니다. L2 컨트랙트는 DA 레이어에 저장되어있는 트랜잭션들을 확인하고 타당성/유효성을 검증해야하기 때문에 Celestia로부터 데이터를 확인할 수 있어야합니다. 이렇게 L2 트랜잭션 데이터가 Celestia에 누락없이 잘 저장되어있다는 것을 머클트리로 증명하는 것을 ‘DA Attestation’이라고 합니다. 이더리움과 DA 검증에 쓰이는 브릿지가 바로 ‘Quantum gravity bridge(QCB)’입니다.

즉, Celestium을 사용할 경우 만약 이더리움의 L2(Celestium) 컨트랙트에서 state transition이 일어나면, 기존 롤업들과 같이 트랜잭션 데이터가 calldata형식으로 이더리움에 post되는 것에 의존하는 것이 아니라, Celestia에 DA attestation을 쿼리해서 데이터가 다 가용가능한지 확인합니다. 따라서, 기존 롤업들이 이더리움 블록에 좁은 공간에 트랜잭션 데이터를 저장한 것에 비해 훨씬 더 큰 확장성을 가져갈 수 있고, 트랜잭션 데이터를 오프체인에 저장하는 Validium에 비해서는 훨씬 더 안전한 솔루션이라는 장점이 있습니다.

다른 레이어2와의 비교

Validium과 같이 오프체인에 데이터를 저장하고 있는 프로젝트들이 많습니다. 온체인에 저장하는 것이 보안상 가장 안전하지만 비싸고 느리기 때문에 오프체인을 선택하고 있습니다. 하지만 오프체인은 중앙화된 주체들에게 데이터를 저장하기 때문에 위험하며 이더리움의 보안을 완전히 레버리지하지 못한다는 큰 단점이 존재합니다.

Volition과 같이 유저들에게 트랜잭션 데이터를 저장할때 온/오프체인을 선택할 수 있도록 하기도 합니다. Validium과 Rollup의 절충안의 형태입니다.

Celestium은 오프체인 저장 솔루션인 Validium보다는 조금 비쌀 수 있지만 이더리움에 직접 데이터를 저장하는 롤업들보다는 DA에 들어가는 비용이 저렴합니다. 또한, Celestia에 데이터를 저장하게 되므로 보안적으로도 더 우수합니다. Celestia의 경우 Tendermint를 사용하기 때문에 PoS 구조를 가지고 있고, 타당하지 않은 DA 검증을 할 경우 슬래싱당하게 될 위험이 있어 조금 더 안전하다고 할 수 있습니다.

Celestium의 장단점

Celestium의 장점을 요약하면 다음과 같습니다. 첫째로, 앞서 설명한 것처럼 기존 롤업에 비해 싸고 빠르다는 장점이 있습니다. 둘째로, 기존 롤업들은 이더리움 가스비가 전체적으로 올라가면 영향을 받는 구조지만, Celestium은 이러한 영향을 받지 않기 때문에 예측가능하고 저렴한 가스비로 사용할 수 있습니다.

Celestium의 단점은 다음과 같습니다. 첫째로, 기존 롤업은 DA를 이더리움에 사용하다보니 굉장히 보안이 강한 반면, Celestium에선 DA를 Celestia에 저장하기 때문에 데이터 가용성의 보안 수준이 이더리움 수준이 아닌 Celestia의 보안 수준으로 낮아집니다. 둘째로, 롤업들이 트랜잭션 데이터를 현재는 좁은 이더리움 블록에 욱여넣어야하기 때문에 Celestium과 솔루션이 의미를 가지지만, EIP-4844, Dank sharding이 이더리움에 적용될 경우 이더리움도 마찬가지로 DA를 위한 공간이 매우 늘어나게 된다면 Celestium의 솔루션이 필요없어질 수도 있습니다.

3. Settlement Rollup(결제 롤업)

Optimint란

Tendermint를 이용해서 레이어1 체인을 쉽게 만들 수 있었던 것과 같이 Optimint란 개발자들에게 롤업을 쉽게 만들수 있도록 해주는 툴입니다. 새로운 체인을 배포하기 위해서 밸리데이터 세트를 구성하고 토큰 발행을 준비하는 것이 큰 장벽으로 작용하고 있는데 Optimint는 이를 쉽게 해주는 툴입니다. Optimint 템플릿을 사용하면 밸리데이터나 토큰 없이 Celestia의 합의+DA 레이어 인프라에서 롤업 레이어2를 쉽게 만들 수 있습니다.

CEVMOS란

Optimint를 이용한 CEVMOS를 살펴보겠습니다. CEVMOS는 Celestia + EVMOS(EVM + COSMOS)의 줄임말이며 기존 EVMOS 팀과 협력중인 프로젝트입니다(EVMOS팀은 EVM이 내장된 Cosmos SDK체인을 만들고 있는 팀입니다). CEVMOS는 셀레스티아 위에서 EVM 롤업을 위한 settlement 레이어로 사용될 것 입니다. Optimint를 사용하는 이유는 settlement 롤업에는 밸리데이터 세트나 trusted bridge가 없는 것이 이상적이기 때문입니다. 브릿지의 운영자와 settlement 롤업의 블록생성자가 분리되어야하는 것이 좋기 때문에 이런 구조를 취하고 있습니다. Celestia가 DA와 합의를 담당하고 롤업이 실행을 담당한다면 그 사이에서 CEVMOS가 settlement를 담당하는 방식입니다.

(출처 : https://forum.celestia.org/t/an-open-modular-stack-for-evm-based-applications-using-celestia-evmos-and-cosmos/89)

위 그림의 EVMOS Settlement rollup이 CEVMOS를 의미합니다. 이더리움과 달리 롤업 컨트랙트만 올라갈 것이고, dApp을 만들 수 없기 때문에 오로지 proof, 헤더 등을 전송하고 검증받는 역할로 쓰이게 될 것입니다. 즉, CEVMOS는 재귀적 롤업(recursive rollup; 롤업들의 롤업) 구조를 가능하게하며, 롤업 트랜잭션들의 타당성을 검증하는 역할입니다. 롤업들은 settlement 롤업에서 호출데이터를 사용하고 settlement 롤업은 Optimint를 통해서 데이터를 일괄 처리하고 Celestia에 포스팅하는 구조입니다. 위 그림에서 확인할 수 있듯이 해당 롤업은 EVM 롤업들과는 신뢰가 최소화된 브릿지로 연결되어 있으며 데이터를 Celestia DA레이어에 포스팅합니다.

즉, EVMOS는 스마트 컨트랙트, 보안 공유 등의 기능을 제공하고 Celestia는 데이터 가용성 레이어를 제공해서 Settlement layer를 활용할 수 있게 됩니다. 체인 자체가 롤업에만 최적화되어있기 때문에 롤업 트랜잭션 외의 트랜잭션과 가스비 경쟁을 할 필요가 없으므로 낮은 수수료에서 사용이 가능해지는 특징을 가지고 있습니다.

4. Sovereign Rollup(주권 롤업)

주권 롤업이란 독립된 룰을 가지고 작동하는 롤업을 의미합니다. 해당 롤업은 기본 레이어와 독립적으로 포크를 선택할 수 있다는 규칙을 가지고 있습니다. 기존의 일반 롤업들은 포크를 선택하는 것을 settlement 레이어에 위임하는 점과 대비되는 특징입니다. 결국, settlement 롤업도 주권 롤업의 유형입니다.

(출처 : https://coinyuppie.com/6-pictures-to-understand-the-sovereign-rollup-on-celestia/)

Celestia의 DA레이어에 데이터를 저장하는 경우 Celestia가 롤업 트랜잭션의 정확성을 보장해주지 않기 때문에, 주권롤업 연구가 활발해지고 있습니다.

더 나아가, 낙관적(Optimistic) 주권 롤업의 경우 트랜잭션이 올바른 것으로 간주되기 때문에 settlement layer에서 사기 검증을 하지 않고 롤업에서 p2p 노드 네트워크에 배포하는 롤업이며 롤업 노드는 Celestia에서 데이터를 다운로드하기만 하면 되는 특징을 가지고 있습니다. ZK-주권 롤업은 zk증명을 settlement layer의 스마트 컨트랙트로 보내지 않고 롤업의 p2p 네트워크에 배포해서 자체검증하는 형태입니다.

5. 맺으며

이번 편에서는 Celestia의 DA 레이어의 도입으로 인해 어떤 사용예시가 가능할지 설명하였습니다. 1) Clusters, 2) Celestium & Quantum Gravity Bridge, 3) Settlement rollup, 4) Sovereign rollup에 이르기까지 다양한 방식의 모듈러 블록체인 활용사례가 나올 것이라고 기대합니다. 더 나아가, 옵티미즘과 ZK를 활용해서 많은 분야에서 연구가 진행되고 있습니다. 다음 편에서는 Celestia의 특징과 다른 솔루션들에 대해서 설명하겠습니다.

6. Reference

디사이퍼 — Celestia 팀 소개

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

--

--