brunch

You can make anything
by writing

C.S.Lewis

by Astin Apr 08. 2022

델파이 팟캐스트; 셀레스티아

Delphi Media - Celestia


Delphi Media - Celestia: First Modular Blockchain Network

델파이 미디어 - 셀레스티아: 최초의 모듈러 블록체인 네트워크


간단정보

게스트: John Adler, 셀레스티아 공동창업자

일자: 2022년 3월 5일

링크: https://www.youtube.com/watch?v=-EYRtqsTkZ4&t=2214s

영어 요약본: https://delphipodcast.notion.site/Celestia-The-World-s-First-Modular-Blockchain-Network-0faa2423eeab44a2b124e4367f42b63e


셀레스티아란 무엇인가?   

❐ 최초의 모듈러(Modular) 블록체인 네트워크

❐ 모듈러 블록체인들이 블록체인 생태계를 변화시키고 있음            

심지어 이더리움의 로드맵도 모듈러에 가깝게 변화되었음  


모듈러(Modular) 블록체인   

❐ 셀레스티아 이전의 모든 블록체인들은 모놀리식(Monolithic) 이었음: 데이터 가용성을 확보하고, 나열하고, 트랜잭션의 실행까지 전부 맡아서 실행


❐ 모듈러 블록체인들은 실행을 하지 않고, 데이터 가용성 확보와 정렬(ordering)만 실행            

블록체인에 유효하지 않은 트랜잭션들도 포함시킴       

베이스 레이어에 묶여진 여러개의 실행 레이어들이 포함될 수 있음  


데이터 가용성(Data Availability) 문제   

❐ 안전한 블록체인이 되기 위해서는, 트랜잭션 데이터가 배포되어야 하고 모든 노드가 이 데이터가 배포되었다는 사실에 동의해야 함            

만약 데이터가 배포되지 않았다면, 트랜잭션을 실행하거나 유효성을 검증할 수 없음  


❐ 비트코인과 이더리움 같은 기존의 블록체인들은 데이터 가용성 문제에서 상당히 떨어져 있는데, 이는 라이트 클라이언트(light client)를 고려하지 않고 설계되었기 때문            

유저들은 풀 노드를 돌리거나 채굴자들이 성실할 것이라고 믿어야 하고, 이는 확장하기에 근본적으로 불가능함   

데이터 가용성 문제는 제한적인 사람들만 풀 노드를 돌리고 대다수의 사람들은 전체 블록을 다운로드 하지 않는 라이트 클라이언트를 돌리는 모델에서 발생함  


❐ 제한적인 신용을 바탕으로 하는 라이트 클라이언트(trust-minimized light clients)는 거짓 증명이나 zk 증명(fraud/zk proofs)이 가능해 풀 노드와 같은 안정성을 보장해주는 라이트 노드를 의미함


❐ 풀 노드들은 거짓/유효성 검증을 통해 모든 라이트 노드들을 보호할 수 있음            

라이트 노드들은 모든 데이터에 접근 가능해야하는데, 그렇지 않다면 거짓/데이터 가용성 증명에 의존할 수 없음  


❐ 풀 노드들은 데이터가 접근 가능한지를 그저 전체 블록을 다운받으며 확인할 수 있음; 하지만 이는 라이트 노드에서는 불가능


❐ 문제점: 라이트 노드들은 전체 블록을 다운받지 않으면서 이 데이터가 가용한지 아닌지 판단할 수 있어야 함


데이터 가용성 문제를 해결할 수 있을까?   

❐ 셀레스티아에서는 이레이져 코딩(erasure coding)이란 것을 사용하는데, 이는 우리가 흔히 사용했던 CD ROM에 기스가 났을때 오류를 복구하는 등에서 사용됨            

데이터 조각에 반복을 추가하는 것, 예시로는 100바이트 대신 200바이트로       

데이터의 망가지고 부정확한 부분들을 복구할 수 있게함  


❐ 데이터 가용성 샘플링(DA sampling)은 기본적으로 같은 방식을 사용함 - 반복성이 블록에 더해지고 전체 블록을 다운로드 하는 것 대신에 이레이져 코딩된 블록이 샘플링됨            

원래 블록들로는 블록 생성자들이 100개 중에 1개 정도 숨길 수 있고, 그렇게 된다면 아무도 블록을 재구성할 수 없음       

이레이져 코딩을 통해서, 블록은 200개의 조각으로 확장되고 100개만 가지고 있다면 블록을 재구성하는 것이 가능                   
- 블록 생성자들은 이제 101개의 블록을 모두 숨기는 대신 하나만 숨겨도 됨         

무작위 샘플을 골랐을때, 50% 정도의 거짓일 가능성이 있음       

똑같은 과정을 반복하면, 거짓일 가능성이 기하급수적으로 줄어듬 (50% → 25% → 12.5% ...)       

데이터 가용성 샘플링은 최소한의 안정성 주기를 갖기 위해서 n개의 샘플들을 필요로 함                    
- 만약 n = 10이라면, 가능성은 1/(2^10) 즉 1000가지 중 1가지의 경우임           
- 만약 n = 20이라면, 가능성은 거의 1,000,000 중 1가지의 경우임    


❐ 필요한 샘플링 수는 블록 크기에 구애받지 않고 일정하게 유지됨


❐ 하지만 블록 사이즈는 무한정 늘어날 수 없으므로, 라이트 노드들은 블록사이즈를 제곱근한 비율에 해당하는 데이터를 다운로드 받아야 함


간단요약 - 라이트 노드들은 데이터 가용성 샘플링을 하기 위해 블록의 일부분을 다운로드 받음. 이는 모든 블록이 풀 노드에게  접근 가능하다는 것을 보장하는데 이를 통해 풀 노드들이  거짓/유효성 검증을 통해 라이트 노드를 보호할 수 있음


이런 체계에서는 라이트 노드는 거의 풀 노드와 같기 때문에 더이상 라이트 노드가 아니다. 라이트 노드이지만, 전체를 검증할 수 있는 노드가 되고 모든 트랜잭션의 통합성을 검증한다. 이것은 엄청나게 큰 변화를 가져올 것.


라이트 노드에 최적화   

❐ 몇몇은 데이터 가용성 샘플링을 단지 “있으면 좋을 정도"라고 여기고; 중앙화된 거래소들은 체인에서 일어나는 경제적 활동을 보호하기 위해 풀 노드를 운영함


❐ 하지만 셀레스티아에서는 사용자들이 최대한 많은 자율성을 확보할 수 있게 중앙화로부터 최대한 멀어지고 싶음 

사용자들은 그들이 직접 노드를 돌리는 것을 필요로 함       

오늘날에 비트코인 노드를 돌리는 것은 저렴하지만 많은 사람들은 돌리지 않음       

따라서 전체 자료스택을 보장할 수 있는 제한적인 신용을 바탕으로 하는 라이트 노드들이 필요함  


이더리움 롤업(rollups) vs. 셀레스티아 롤업   

롤업 = 온체인 데이터, 오프체인 실행


이더리움 롤업:   

❐ 이더리움에 있는 롤업은 이더리움이라는 안정적인 레이어에 합의 규칙들(어떤 상태 변화 혹은 트랜잭션이 유효한지)을 포함한 스마트 컨트랙트를 가지고 있음


❐ 이더리움과 비트코인이 겪어온 하드 & 소프트 포크의 수를 보면 알 수 있듯이, 합의 규칙에 변화는 필연적으로 발생할 수 밖에 없음


❐ 하지만 스마트 컨트랙트는 수정할 수 없고, 멀티 시그나 다오가 아니라면 변경할 수 없음(현재 이더리움은 앞의 두가지 방식중에 어떤것으로도 운영하고 있지 않음)


셀레스티아 롤업:   

❐ 셀레스티아에 있는 롤업은 오직 데이터 가용성을 위해서만 사용하기 때문에 자유롭게 합의 규칙을 변경할 수 있음


❐ 셀레스티아는 유효성 검증을 위해 사용하는 것도 아니므로 제한되어있지 않음(롤업이 자율적임)


❐ 또한 합의 레이어를 자율적인(sovereign) 롤업으로 만들고, 그 위에 EVM 실행 롤업을 만들 수 있음


❐ 완전히 모듈방식인 것(vs. 어느정도 모듈방식인 것에 비해)의 장점 중 하나임


간단히 말해 셀레스티아 롤업은 아무나 원하는 것을 배포하기 위해 사용하는 중립적인 데이터 가용성 레이어임


❐ 이론적으로 이더리움을 데이터 가용성을 확보하고 나열하기 위해 사용할 수는 있지만, 너무 비쌈            

셀레스티아는 전문적으로 데이터 가용성을 위해 만들어짐 = 바탕이 되는 레이어에서 데이터 가용성의 처리율이 월등히 높음  


셀레스티아 생태계 구축   

셀레스티엄(Celestiums)과 세브모스(Cevmos) 두가지를 사용


셀레스티엄(Celestiums)   

❐ 밸리디엄(Validiums)은 트랜잭션 유효성을 보장하기 위해 유효성 검증을 사용하고 데이터를 온체인에 올리지 않는데, 이는 데이터 보류 공격*에 취약점을 가짐            

*데이터 보류 공격: 사용자가 트랜잭션을 요청한 즉시 온체인에 트랜잭션이 기록되지 않으면서 발생할 수 있는 문

이에 대응하기 위해, 밸리디엄은 데이터 가용성 위원회를 사용하여 X 블록 뒤의 데이터가 가용한지를 승인함 

하지만 데이터 가용성 위원회 또한 사용자들의 금액을 훔치고 멈추기 위해 거짓으로 승인할 수 있음       

실질적으로 거짓말의 경제적인 페널티가 없음 - 오직 명성만 깎임  


❐ 셀레스티엄은 이더리움이 안정성과 데이터 가용성을 보장하기 위한 외부적인 요소로 사용하는 블록체인으로, 여기서 셀레스티아가 사용됨            

데이터에서 다른 블록체인을 사용하는 것이 더 나은데, 이는 암호화폐의 경제적인 보안성을 강요하기 때문; 만약에 셀레스티아의 밸리데이터들이 거짓을 말한다면, 바로 쫓겨남       

셀레스티아를 통해 공유된 데이터 가용성 레이어에 의해 제공된 보안은 더해질수록 안전해짐 (높은 비용), 더 많은 어플리케이션들이 사용할수록 발전할 것  


❐ 이더리움에 있는 스마트 컨트랙트가 셀레스티아 체인에 특정 데이터가 가용하다는 것을 증명서를 접수하게 해주는 퀀텀 그래비티 브릿지(quantum gravity bridge) 개발 중


❐ 데이터 가용성을 위한 높은 처리율 용량을 가져가며 (처음에라도) 아주 적은 비용으로 매우 높은 보안성을 보장할 수 있음            

데이터가 필요한 롤업들에게 좋음  


세브모스(Cevmos)   

❐ 세브모스는 셀레스티아 위에서 돌아갈 EVM에서 자율적인 롤업임            

이더리움의 컨트랙트를 복사-붙여넣기 할 수 있게 EVM에 상당하게 할 예정       

다양한 롤업들이 안정성 레이어 위에 배포될 예정 (세브모스)  


❐ 세브모스는 롤업들 사이에 자리만 제공해줄 예정; 일반적인 스마트 컨트랙트들(디앱들)은 롤업 위의 세번째 레이어에 배포될 예정            

만약 아비트럼/옵티미즘/ZK 싱크/스타크웨어(Arbitrum/Optimism/ZK Sync/Starkware)가 포그되어 세브모스에 배포된다면, 오늘날 이더리움에서 사용하는 것과 동일하게 사용할 수 있음  


셀레스티아 (데이터 가용성 확보 & 나열) ➡️ 세브모스 (자율적 안정성 레이어) ➡️ 롤업 (디앱)


❐ John Adler: “우리는 많은 안정성 레이어들이 나와 토큰 같은 것을 발행해 사용자들이 원하는 것처럼 안정성 레이어에서 가치를 확보할 수 있기를 기대하고 있습니다.”


❐ John이 개발한 퓨엘(fuel), 옵티미스틱 롤업들은 세브모스를 포함해 여러 네트워크에서 시작할 예정임


실행 환경(execution environments)의 미래   

❐ 셀레스티아는 가상머신(VM) 불가지론적(agnostic)임으로, 다양한 가상머신들을 돌릴 수 있음


❐ 이더리움은 EVM(Ethereum Virtual Machine)이라고 하는 가상머신이 하나만 존재함; 이는 다른 가상머신들을 사용한다면 할 수 있는 기능을 제한함


❐ 아발란치(Avalanche)는 다른 가상머신들의 작동을 허용하는 여러 하위 네트워크들이 있음            

하지만 하위 네트워크들은 그저 다른 블록체인이고, 아발란치 네트워크와는 연관점이 없음(공유된 보안성 없음)  

이는 코스모스 존(Cosmos zones)이 코스모스 허브(Cosmos hub)와 아무런 상관이 없는 것과 동일함    

하위 네트워크들은 아발란치의 밸리데이터들을 사용할 수 있지만 이는 추가블록을 만들어야함 - 확장이 아니라 더 큰 블록 사이즈를 만드는 것  


❐ 셀레스티아의 모든 실행 레이어들은 자율적이고 보안성을 공유함 (각각의 블록체인이 아님) 그리고 셀레스티아를 통하지 않아도 롤업간의 소통을 가능하게 함


❐ 사람들은 새로운 가상머신들과 합의 규칙들로 실험해볼 것임            

EVM의 진화는 느림 - 호환성(존재하는 컨트랙트들을 망가트리지 않기 위해)을 유지하는데에 집중되어 있어 방해가 됨       

기초부터 시작하는 것의 장점 - 솔라나 시레벨(Solana Sealevel)은 평행적 트랜잭션 실행을 가능케함  


❐ 3-5년안에 셀레스티아 위에 있는 체인 개수 예상: 적어도 69개, 400에서 420 사이의 범위까지도 갈 수 있음


모듈러(Modular) 블록체인들의 단점   

❐ 관련된 툴(tool)들이 아직 개발되지 않았고, 시작하기에 더 많은 개발자들의 노력이 필요


❐ 일찍 시작하게 된다면 툴링을 위주로 많이 도움을 줄 수 있을 것; 빠르게 시작한다는 것은 또한 많은 기회가 있는 것을 의미


❐ 보안성과 처리율, 효율에서의 하락은 절대 없음


“큰 규모의 여러 블록체인들보다 훨씬 낫고, 여러방면에서 좋은 것 이상”


❐ 평형 상태에서 셀레스티아에 체인을 배포하는 것은 훨씬 쉬움            

현재 가능한 선택은 다음과 같음:                    
1. 스마트 컨트랙트를 띄우고 보안성을 베이스 체인으로부터 빌려옴 (그 체인의 규칙에 따를 수 밖에 없음)           
2. 스스로 체인을 시작하고 밸리데이터들도 각자 운영 (토큰과 블록 생성자들을 분배하기에 성가시고, 밸리데이터 노드를 돌릴사람을 찾은 것도 마찬가지임)         

셀레스티아에서는 네이티브 롤업을 시작해서 보안성 또한 공유할 수 있음                           

체인들 간의 소통을 공유할 수 있음    


롤업을 위해 구축된 모든 결제 레이어는 결제 레이어 위에 일종의 분쟁 해결 계약을 사용하여 롤업에 대한 신뢰를 최소화하는 양방향 브리지가 있는 체인입니다. 이를 통해 토큰은 둘 간에 전송되거나 결제 계층을 통해 한 롤업에서 다른 롤업으로 어느 방향으로든 신뢰를 최소화할 수 있습니다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari