paint-brush
Ethereum 확장: 데이터 팽창, 데이터 가용성 및 클라우드리스 솔루션~에 의해@logos
5,353 판독값
5,353 판독값

Ethereum 확장: 데이터 팽창, 데이터 가용성 및 클라우드리스 솔루션

~에 의해 Logos11m2024/06/12
Read on Terminal Reader

너무 오래; 읽다

Codex는 Ethereum 생태계와 그 이상을 위한 강력한 데이터 지속성과 내구성 보장을 제공하고자 하는 클라우드리스, 무신뢰성 p2p 스토리지 프로토콜입니다. 새로운 프로토콜의 급속한 개발과 구현으로 인해 이더리움 블록체인 체인은 데이터로 인해 비대해졌습니다. 이러한 데이터 팽창은 트랜잭션 데이터가 네트워크를 막고 확장성을 약화시키는 "네트워크 정체"로 정의될 수도 있습니다. Codex는 데이터 지속성을 제외하고 DA 문제에 대한 솔루션을 제공합니다.
featured image - Ethereum 확장: 데이터 팽창, 데이터 가용성 및 클라우드리스 솔루션
Logos HackerNoon profile picture

Codex는 Ethereum 생태계와 그 이상을 위한 강력한 데이터 지속성과 내구성 보장을 제공하고자 하는 클라우드리스, 무신뢰 p2p 스토리지 프로토콜입니다. 현재 EIP-4844는 데이터 팽창 문제에 대한 부분적인 솔루션만 제공합니다. 수수료는 여전히 높으며 생태계에는 장기 데이터 저장 옵션이 거의 없습니다.


Ethereum의 초과 데이터를 유지하는 방법을 결정하면 미래에 무한정 확장할 수 있으며 Codex는 이러한 우려를 완화하는 데 도움을 주기 위해 현장에 도착했습니다. 문제를 살펴보겠습니다.


Uniswap에서 ETH를 다른 토큰으로 교환한 적이 있습니까?


저는 Metamask를 통해 연결하고 .001 Eth(대략 $35)를 SNT로 거래하려고 했습니다. 가스 수수료는 거래만큼 비용이 듭니다. 암호화폐를 거래하기에는 수수료가 너무 높습니다. 대부분의 사람들은 이 정도의 비용을 지불하고 싶어하지 않습니다.


이러한 거래가 왜 그렇게 비싼지 핵심을 살펴보겠습니다.



2024년 3월 20일

Web3와 탈중앙화 금융은 최근 몇 년 동안 엄청나게 성장했습니다. 새로운 프로토콜의 급속한 개발과 구현으로 인해 Ethereum 블록체인 체인은 데이터로 인해 비대해졌습니다. 결과? 엄청나게 비싼 가스 요금과 열악한 사용자 경험. 이러한 데이터 팽창은 트랜잭션 데이터가 네트워크를 막고 확장성을 약화시키는 "네트워크 정체"로 정의될 수도 있습니다.


이 기사에서는 블록체인이 왜 비대해졌는지, 거래 처리량이 저하된 이유와 문제 해결을 위한 다양한 접근 방식을 살펴봅니다. 저는 특히 이더리움과 롤업의 맥락에서 데이터 가용성에 중점을 둘 것입니다. 대부분의 다른 솔루션에는 부족한 데이터 지속성과 내구성 보장을 제외하고 Codex가 DA 문제에 대한 솔루션을 제공하는 방법을 살펴보겠습니다.


참아주세요. 나는 전문 용어와 기술적인 언어를 사용할 것이지만, 이 중요하고 과소평가된 주제를 명확한 언어로 탐구하기 위해 최선을 다할 것입니다. 생태계의 더 많은 사람들이 블록체인 확장을 위해 DAS(데이터 가용성 샘플링)가 얼마나 강력한지 고민하기 시작해야 합니다. 계속하기 전에 독자는 합의 메커니즘, 지분 증명 및 기술이 높은 수준에서 어떻게 작동하는지 읽어야 합니다.


블록체인 트릴레마를 풀어보는 것부터 시작해 보겠습니다.

문제가 있는 트릴레마

성장을 원하는 모든 분산형 기술은 비슷한 제약을 받습니다.


그들은 수천 명에서 수백만 명의 사용자까지 점점 더 많은 사용자가 기술을 채택할 수 있도록 확장하기를 원합니다. 그러나 다양한 기술을 확장하면 엔지니어링 과제도 달라집니다.


이더리움의 경우 체인의 블록에는 트랜잭션, 상태 및 스마트 계약 데이터가 포함됩니다. 더 많은 사람들이 네트워크를 사용할수록 각 블록에 더 많은 데이터가 추가됩니다. 문제는 블록이 채워지기 시작하면 수수료 시장이 나타나고, 더 높은 가스 요금을 지불하는 사람들이 자신의 거래를 다음 블록에 포함시킬 가능성이 더 높다는 것입니다.


간단한 해결책은 블록 크기를 확장하고 더 많은 트랜잭션 데이터를 허용하는 것입니다. 그러나 블록체인 트릴레마의 일부인 이 접근 방식에는 문제가 있습니다.

트릴레마에 따르면 블록체인에는 확장성, 분산화, 보안이라는 세 가지 주요 기능을 유지하고 강화해야 합니다. 트릴레마는 두 가지를 개선하려고 하면 다른 하나는 감소한다는 것을 의미합니다.


이더리움의 경우 블록 용량을 업그레이드하면 네트워크에서 완전히 검증된 노드를 실행하기 위한 하드웨어 요구 사항도 증가합니다. 네트워크가 이러한 방식으로 하드웨어 요구 사항을 높이면 일반 사람들이 전체 노드를 실행하는 것이 더 어려워지며, 이는 전반적인 분산화 및 검열 저항을 감소시켜 네트워크에 부정적인 영향을 미칩니다.


표면적으로 문제는 극복할 수 없는 것처럼 보입니다. 다행스럽게도 개발자와 엔지니어는 블록체인이 어떻게 확장될 수 있는지 다시 생각하고 있습니다. 그들은 블록체인과 그 생태계를 모놀리식이 아닌 모듈식으로 구상하고 있습니다.

모듈식 대 모놀리식

성공하려면 네트워크에서 전체 노드를 실행하는 것이 필수적이라는 점을 다시 한 번 강조하는 것이 중요합니다. 그런데 "풀 노드" 또는 "완전 검증 노드"란 정확히 무엇입니까?


풀 노드는 모든 블록체인 데이터를 다운로드하고 네트워크에서 생성된 모든 트랜잭션을 실행하는 네트워크 참여자입니다. 전체 노드는 완전한 트랜잭션 데이터 세트를 다운로드하기 때문에 더 많은 컴퓨팅 성능과 디스크 공간이 필요합니다.


Yuan Han Li의 “라는 제목의 기사. WTF는 데이터 가용성입니다 "라고 설명합니다.

“풀 노드는 모든 트랜잭션을 확인하여 블록체인의 규칙을 따르는지 확인하기 때문에 블록체인은 풀 노드를 실행하는 데 필요한 하드웨어 요구 사항을 늘리지 않고는 초당 더 많은 트랜잭션을 처리할 수 없습니다(더 나은 하드웨어 = 더 강력한 풀 노드 = 풀 노드가 더 많은 트랜잭션을 확인할 수 있음 = 더 많은 거래를 포함하는 더 큰 블록이 허용됩니다.”


분산화를 유지하는 데 따른 문제는 일부 네트워크 참가자가 전체 노드를 실행하기를 원한다는 것입니다. 그러나 이러한 노드에는 대부분의 사용자가 구매하고 유지 관리하기에는 너무 비싼 엄청난 컴퓨팅 성능이 필요합니다. 그리고 그런 일이 발생하면 네트워크의 노드 수가 극적으로 제한되어 전반적인 분산화에 해를 끼칩니다.


가장 큰 문제는 채굴자와 검증자가 네트워크에서 데이터를 보류하여 다른 사람이 모든 데이터에 액세스하는 것을 방지할 수 있다는 것입니다. 이것이 “모놀리식 블록체인”의 맥락에서 문제의 핵심입니다.


이것이 생태계에서 다소 남용되는 유행어이기는 하지만, 블록체인에서 "모놀리식"이라는 개념은 기본 계층(또는 이더리움 블록체인)이 결제 계층, 합의 계층 및 데이터 가용성 계층의 역할을 해야 함을 의미합니다. 이는 데이터로 인해 시스템이 부풀어 오르고 거래 처리량이 느려지고 수수료가 인상됩니다.


"모놀리식" 블록체인의 문제에 대한 해결책은 기능을 "모듈화"하고 데이터 가용성 기능을 다른 네트워크 참가자에게 오프로드하는 것입니다. 이 시나리오에서는 블록체인의 기본 계층이 결제 및 합의 계층의 역할을 하게 됩니다. 모든 데이터 가용성 요구 사항은 네트워크의 다른 행위자에게 오프로드됩니다.

이제 모듈화의 지혜를 이해했습니다. 데이터 가용성이란 정확히 무엇이며, 이것이 네트워크에 중요한 이유는 무엇입니까?

DA 문제 및 롤업

데이터 가용성은 블록체인이 불변의 진실 중재자 역할을 하기 위해 필요한 것입니다. 거래 데이터가 없으면 블록체인에 사기성 거래나 유효하지 않은 거래가 포함되어 있는지 아무도 알 수 없습니다. 즉, 검증자와 채굴자가 악의적으로 행동했는지 여부를 누구도 증명할 수 없습니다. Emmanuel Awosika의 __ 기사 에서는 다음과 같이 설명했습니다.

"데이터 가용성"은 새로 제안된 블록 뒤에 있는 데이터(블록의 정확성을 확인하는 데 필요함)를 블록체인 네트워크의 다른 참가자가 사용할 수 있다는 보장입니다.


중요한 점은 "데이터 가용성"과 "데이터 스토리지" 사이에는 차이가 있다는 점입니다. 현장의 많은 사람들은 이 둘을 혼동한다. 데이터 가용성은 데이터가 사용 가능하고 누구나 액세스할 수 있는지 여부를 결정하며, 데이터 저장은 데이터를 장기간 한 위치에 보관하는 것을 의미합니다. 이러한 의미에서 데이터 스토리지는 "데이터 지속성"이라는 개념을 의미합니다. Celestia의 COO인 Nick White는 다음과 같이 말했습니다. 강력한 비유 :


통조림 식품이 있다면 이는 데이터 저장을 의미합니다. 식품은 캔에 들어있어 장기간 보관할 수 있으며 언제든지 접근하고 보관함에서 꺼낼 수 있습니다. 이런 의미에서 "데이터 저장"과 관련하여 "데이터 지속성"이라는 요소가 있습니다. 반대로 데이터 가용성은 뷔페와 비슷합니다. 음식이 준비되어 뷔페 테이블에 펼쳐집니다. 누구나 샘플을 받아볼 수 있습니다. 데이터 가용성도 비슷합니다.


데이터는 주로 네트워크 참가자가 데이터가 정확하고 악의적인 트랜잭션을 포함하지 않는지 확인할 수 있도록 네트워크에서 사용할 수 있습니다.

이는 "데이터 가용성 문제"란 무엇인가라는 질문을 던집니다.


"데이터 가용성 문제"는 기술자들이 이더리움을 확장하기 위해 해결하려고 하는 핵심 문제입니다. 문제는 풀 노드가 생태계 전체에 트랜잭션 데이터를 브로드캐스트할 때 "라이트 노드"라고 불리는 작은 노드에는 일반적으로 모든 트랜잭션을 다운로드하고 실행하기 위한 하드웨어 요구 사항이 없다는 것입니다.

Ledger.com 기사에서는 라이트 노드의 작동 방식을 설명했습니다.

“라이트 노드는 트랜잭션을 다운로드하거나 검증하지 않으며 블록 헤더만 포함합니다. 즉, 라이트 노드는 전체 노드가 제공하는 검증 없이 블록의 트랜잭션이 유효하다고 가정하므로 라이트 노드의 보안이 약해집니다. 이 문제를 데이터 가용성 문제라고 합니다.”


이 경우 해당 노드는 데이터가 사용 가능한지, 그리고 해당 데이터가 블록체인의 현재 "상태"를 나타내는지 알아야 합니다. "상태"는 단순히 체인에 저장된 모든 블록체인 데이터, 주소 잔액 및 스마트 계약 값입니다. 현재 형태의 이더리움 블록체인에서 라이트 클라이언트는 데이터가 실제로 사용 가능하다는 온체인 증명을 제공하기 위해 소위 데이터 가용성 위원회(DAC)에 의존해야 합니다.


롤업이라고 하는 이더리움 확장 솔루션의 맥락에서 이 데이터는 네트워크 참가자가 해당 데이터가 네트워크 규칙을 준수하는지 확인할 수 있도록 제공되어야 합니다. 즉, 데이터가 정확하고 검증자가 라이트 클라이언트를 속이려고 하지 않도록 해야 합니다.

낙관적 및 ZK 롤업

DA 문제를 더 깊이 이해하려면 롤업을 이해하는 것이 중요합니다. 롤업은 시퀀서라는 노드가 있는 레이어 2 블록체인입니다. 이러한 시퀀서는 트랜잭션 일괄 처리, 압축 및 주문을 지원합니다. 벤저민 사이먼 설명했다 롤업과 이더리움의 관계:

“롤업은 본질적으로 별도의 블록체인이지만 몇 가지 수정 사항이 있습니다. Ethereum과 마찬가지로 롤업 프로토콜에는 스마트 계약 코드를 실행하는 "가상 머신"이 있습니다. 롤업의 가상 머신은 Ethereum의 자체 가상 머신(“ EVM ”), 하지만 이더리움 스마트 계약으로 관리됩니다. 이 연결을 통해 롤업과 Ethereum이 통신할 수 있습니다. 롤업은 트랜잭션을 실행하고 데이터를 처리하며 이더리움은 결과를 수신하고 저장합니다.”


간단히 말해서 롤업은 오프체인 확장 솔루션입니다. 그러나 롤업은 많은 "오프체인" 확장 솔루션이 일반적으로 하는 것처럼 보안을 희생하지 않습니다. 롤업의 경우 데이터 처리 및 계산만 오프체인(시퀀서를 통해)에서 발생합니다. 거래는 궁극적으로 보안을 유지하면서 레이어 1 블록체인에 저장됩니다. 이 온체인 데이터는 이전에 “ calldata ”라고 불렸습니다.


어떤 면에서 롤업은 "케이크를 먹고 케이크도 먹는" 커뮤니티의 방식입니다. 가용성을 확장하면서 네트워크 보안을 유지할 수 있습니다. 독창적인 솔루션입니다.


롤업에는 낙관적 롤업과 ZK 롤업이라는 두 가지 인기 있는 유형이 있습니다.

  • 낙관적 롤업은 더 널리 논의되고 배포되는 롤업 유형입니다. 이름에서 알 수 있듯이 "낙관적" 롤업은 생태계에 최소한 1 xn의 좋은 행위자가 있다고 가정합니다. 그게 무슨 뜻이에요? 낙관적 롤업은 네트워크에 게시된 모든 트랜잭션이 유효하다고 가정합니다. 이러한 "낙관주의"를 보완하기 위해 롤업은 네트워크가 " 사기 방지 ,' 롤업으로 제출된 거래가 유효하지 않음을 나타냅니다.


    낙관적 롤업에 대해 알아야 할 주요 사항 중 하나는 대부분 EVM과 호환되므로 개발자가 효율적으로 작업할 수 있다는 것입니다. 이러한 방식으로 Ethereum의 더 인기 있는 확장 솔루션으로 볼 수 있습니다. 낙관적 롤업의 두 가지 예는 다음과 같습니다. 낙천주의 그리고 중재 .

  • ZK 롤업은 영지식 암호화를 사용하여 압축하고 일괄 처리하는 트랜잭션이 정확하고 정확하다는 것을 증명합니다. ZK 롤업은 모든 거래가 정확하다고 가정하는 대신(예: 낙관적 롤업) 거래가 즉시 유효함을 입증하는 "유효성 증명"을 생성하여 대기 시간을 없애줍니다.


    그러나 ZK 롤업은 모두 EVM과 호환되지 않기 때문에 개발자가 작업하기가 더 어려울 수 있는 것으로 알려져 있습니다. ZK 롤업은 또한 증명을 생성하는 데 많은 리소스가 소비되기 때문에 계산 집약적입니다. 그럼에도 불구하고 점점 더 많은 EVM 호환 롤업이 시장에 출시되기 시작했습니다. 그만큼 스크롤 롤업 EVM 솔루션은 하나의 예일 뿐입니다.

솔루션: 데이터 가용성 샘플링 및 Codex

앞서 롤업에는 데이터를 덤프할 곳이 필요하다고 언급했습니다. 언급한 바와 같이 대부분의 롤업은 데이터를 이더리움 메인 체인으로 푸시해 왔으며 이는 문제의 핵심인 데이터 팽창으로 이어졌습니다. 팽창이 발생하면 트랜잭션 처리량이 저하되고 트랜잭션 및 스마트 계약 실행에 대한 수수료가 증가합니다.


솔루션의 일부는 네트워크 보안을 위해 노드를 완전히 검증하는 데 의존하지 않는다는 점을 기억하세요. 이러한 노드에만 의존한다면 대부분의 사용자는 엄청나게 비싼 하드웨어 요구 사항으로 인해 전체 노드를 실행할 수 없습니다. (이 경로는 분산화에 부정적인 영향을 미치기 때문에 블록 크기를 늘리는 것은 모호하지만 잠재적인 솔루션입니다. 그럼에도 불구하고 롤업은 메인 체인의 보안을 유지하는 레이어 2 확장 솔루션으로 작동하기 때문에 해당 특정 주장은 유효하지 않습니다.)

즉, 모든 사람이 풀 노드를 실행하지 않도록 하는 것에 대한 답은 무엇입니까?

해결책은 모든 트랜잭션을 다운로드하고 실행하지 않고도 라이트 노드(및 전체 노드)가 데이터를 확인할 수 있도록 권한을 부여하는 것입니다. 이것이 문제의 핵심이며 (다른 블록체인 중에서) 이더리움 네트워크를 확장하는 마법을 찾을 수 있는 곳입니다.

데이터 가용성, 삭제 인코딩 및 Codex

첫 번째 단계는 데이터가 사용 가능한지 확인하기 위해 강력한 라이트 클라이언트 네트워크를 갖춘 데이터 가용성 계층을 갖추는 것입니다. 하지만 일반적으로 헤더 데이터만 확인하고 전체 노드에 정보를 의존하는 라이트 클라이언트가 데이터의 유효성과 완전성을 어떻게 보장할 수 있습니까? 그 답은 "DAS(데이터 가용성 샘플링)"라는 수학적 트릭에서 찾을 수 있습니다.


DAS는 데이터 덩어리에서 데이터 비트를 샘플링해 이를 이용해 존재하는 나머지 데이터를 확률적으로 판단하고 재구성하는 방식이다. 많은 조직(다음을 포함) 셀레스티아 블록체인 및 DA 계층)은 삭제 인코딩 및 다항식 약속을 통해 DAS를 활용하고 있습니다. 리드 솔로몬 코드(Reed Solomon Codes)는 많은 프로젝트 중에서 인기 있는 선택입니다. 이러한 유형의 다항식 이렇게 생겼어 :

Y = a[o] + a[1]x + a[2]x^2+...+a[k]x^k


이러한 기능은 누락된 데이터를 확인하고 완전히 복원하는 데 사용됩니다. 이는 K of N 데이터를 생성하여 작동합니다. 여기서 K는 원본 데이터이고 N은 "패리티 데이터"입니다. 원본 데이터 중 일부가 누락되면 노드의 시스템은 다음과 같은 수학 함수를 활용합니다. 라그랑주 보간법 그것을 복원하십시오. 관련된 수학은 대부분의 사람들에게 난해해 보이지만 그 아이디어는 간단합니다.

삭제 코딩이 실행되는 몇 가지 명확한 예가 있습니다. 이 방법은 긁힌 CD를 백업하는 데 사용되었습니다. CD의 삭제 인코딩은 표면 손상으로 인해 누락된 음악 비트를 재구성할 수 있습니다. 위성은 또한 광대한 공간에서 데이터가 누락되는 경우 삭제 코드를 활용합니다. 위성이나 CD는 누락된 데이터를 재구성하여 두 시스템 모두에 중복 보호를 추가할 수 있습니다.


Codex(및 Celestia)가 사용하는 특정 체계를 2D Erasure 코딩 체계라고 합니다. 2D 삭제 코딩은 암호화폐 생태계에서 인기가 있지만 새로운 기술이 아니라는 점에 유의해야 합니다. 그러나 DA 문제를 해결하기 위해 그것이 어떻게 사용되는지는 매우 흥미롭습니다. Bautista 박사는 __Codex 팀이 Erasure Coding을 사용하는 방법을 설명했습니다 .

“Codex와 마찬가지로 원본 데이터를 보다 중복되고 강력한 데이터 구조로 삭제 코딩하는 것은 프로토콜의 나머지 부분이 작동하는 데 기본이며, 이것이 없으면 마법이 없습니다. Codex에서 이는 데이터를 업로드하려는 노드의 Codex 클라이언트 내부에서 발생하는 반면, Ethereum에서는 블록을 구축/제안하는 노드의 합의/비콘 클라이언트의 Ethereum 검증기 내부에서 발생합니다.”

Codex의 데이터 이동에 관한 더 많은 이야기가 있지만 이는 기사의 범위를 벗어납니다. 바티스타 박사의 글을 읽어보세요 조각 Codex가 활용하는 데이터 분산, 샘플링 및 "지연 복구" 메커니즘을 이해합니다.


Codex는 증명 압축을 통해 동시 데이터 저장 및 검색 기능과 데이터 가용성 샘플링을 갖추려고 합니다. 이를 통해 임시 데이터(또는 장기적으로 필요하지 않은 데이터)를 처리할 수 있으며 데이터 지속성과 내구성은 다른 프로젝트가 누락될 수 있음을 보장합니다.

결론: 문제 해결

블록체인을 확장하는 방법에 대한 논쟁이 끝났습니다. 비트코인 생태계에서는 블록 크기 제한을 늘리는 것부터 레이어 2 솔루션을 활용하는 것까지 블록체인을 확장하는 방법에 대한 논쟁이 격렬해졌습니다. 현실은 이 둘을 혼합하는 것이 가장 합리적인 해결책이라는 것입니다. 예를 들어 Codex는 Ethereum(및 기타 블록체인)에 대한 클라우드리스 데이터 가용성 레이어 역할을 할 수 있으며, 네트워크에 DA 검사를 수행하는 많은 노드가 네트워크에 포함되어 있기 때문에 블록 크기를 늘릴 수 있습니다.

좋은 소식은 이것이 기본 계층의 보안을 유지하면서 네트워크의 처리량을 증가시킨다는 것입니다. 그리고 그 결과는 무엇입니까? 그렇습니다. 더 저렴한 수수료와 더 빠른 거래가 가능합니다. 블록체인 사용자로서 이것이 우리가 가장 중요하게 생각하는 부분입니다.

언젠가는 아마도 조만간 35달러 대신 1달러짜리 동전으로 토큰 스왑을 할 수 있게 될 것입니다.


by Sterlin Lujan