1kx: 블록체인 확장의 최종 결과는 신뢰 최소화와 수평적 확장이다
원저자: weidai.eth
원곡: 루피, 포사이트 뉴스
이더리움은 이 글을 쓰는 시점에서 가장 높은 경제적 보안을 갖고 있으며 다양한 자산, 애플리케이션 및 서비스에 대한 결제 원장 역할을 하는 무허가형 세계 컴퓨터입니다. 이더리움에도 한계가 있습니다. 블록 공간은 이더리움 메인넷에서 부족하고 값비싼 리소스입니다. L2 확장은 이 문제에 대한 최선의 해결책으로 여겨지며 최근 몇 년간 이 분야에 많은 프로젝트가 진출했으며 그 중 대부분이 Rollup이다. 그러나 엄밀한 의미에서 Rollup(데이터는 Ethereum L1에 있음)은 Ethereum의 무제한 확장을 달성하지 못하며, 그 상한선은 초당 수천 건의 트랜잭션을 처리하는 것입니다.
먼저 두 가지 개념을 이해하시기 바랍니다.
신뢰 최소화: L2 시스템의 기능이 기본 L1 외부의 신뢰 부분을 요구하지 않는 경우 시스템의 기능은 신뢰 최소화입니다.
수평적 확장성: 글로벌 병목 현상을 일으키지 않고 인스턴스를 추가할 수 있으면 시스템이 수평적으로 확장 가능합니다.
이 기사에서 우리는 신뢰가 최소화되고 수평적으로 확장 가능한 시스템이 블록체인 애플리케이션을 확장하는 가장 유망한 방법이라고 주장하지만 이 방향은 현재 충분히 탐구되지 않고 있습니다. 우리는 세 가지 질문을 탐구하여 우리의 주장을 발전시킵니다.
애플리케이션을 신뢰를 최소화해야 하는 이유는 무엇입니까?
수평적으로 확장되는 시스템을 구축하는 이유는 무엇입니까?
신뢰 최소화와 수평적 확장성을 어떻게 강화할 수 있습니까?
면책 조항: 이 기사는 기본 L1인 이더리움에 초점을 맞추고 있지만 여기서 논의하는 내용의 대부분은 이더리움 외부의 다른 분산 결제 계층에도 적용됩니다.
애플리케이션을 신뢰를 최소화해야 하는 이유는 무엇입니까?
애플리케이션은 신뢰할 수 있는 방식으로 Ethereum에 연결할 수 있으며 Ethereum 블록체인에서 데이터를 쓰고 읽을 수 있지만 비즈니스 논리가 올바르게 실행되려면 신뢰가 필요합니다. Binance 및 Coinbase와 같은 중앙 집중식 거래소는 신뢰할 수 있는 애플리케이션의 좋은 예입니다. 이더리움에 연결한다는 것은 애플리케이션이 여러 자산을 갖춘 글로벌 결제 네트워크를 활용할 수 있음을 의미합니다.
신뢰할 수 있는 오프체인 서비스에는 상당한 위험이 있습니다. 2022년 주요 거래소 및 서비스(예: FTX 및 Chelsea)의 붕괴는 신뢰할 수 있는 서비스가 오작동하고 실패할 때 어떤 일이 발생하는지에 대한 좋은 경고입니다.
반면에 Uniswap과 같은 스마트 계약 애플리케이션, A.bitrum 또는 zkSync와 같은 롤업, Lagrange 및 Axiom과 같은 보조 프로세서와 같이 신뢰가 최소화된 애플리케이션은 검증 가능한 방식으로 Ethereum에 쓰고 읽을 수 있습니다. 광범위하게 말하면 애플리케이션이 Ethereum 네트워크로 보호되고 더 많은 기능이 L1에 할당됨에 따라 신뢰가 제거됩니다. 결과적으로, 거래상대방이나 관리인의 위험 없이 신뢰가 최소화된 금융서비스를 제공할 수 있습니다.
기능을 L1에 아웃소싱함으로써 애플리케이션과 서비스는 세 가지 주요 특성을 얻습니다.
활성(및 순서): 사용자가 제출한 트랜잭션은 적시에 포함(실행 및 결제)되어야 합니다.
유효성: 거래는 미리 지정된 규칙에 따라 처리됩니다.
데이터(및 상태) 가용성: 사용자는 과거 데이터는 물론 현재 애플리케이션 상태에도 액세스할 수 있습니다.
위의 각 속성에 대해 어떤 신뢰 가정이 필요한지 생각할 수 있습니다(특히 Ethereum L1이 해당 속성을 제공하는지 또는 외부 신뢰가 필요한지 여부). 아래 표에는 다양한 아키텍처 사례가 분류되어 있습니다.
수평적으로 확장되는 시스템을 구축하는 이유는 무엇입니까?
수평적 확장은 애플리케이션이나 롤업과 같은 독립 또는 병렬 인스턴스를 시스템에 추가하여 확장하는 것을 의미합니다. 이를 위해서는 시스템에 글로벌 병목 현상이 없어야 합니다. 수평적 확장은 시스템 처리량을 기하급수적으로 늘릴 수 있습니다.
수직적 확장은 전체 시스템(예: Ethereum L1 또는 데이터 가용성 계층)의 처리량을 늘려 확장하는 것을 의미합니다. 공유 리소스와 같이 수평적 확장에서 병목 현상이 발생할 때 수직적 확장이 필요한 경우가 많습니다.
설명 1: 롤업은 데이터 가용성(DA) 병목 현상이 발생할 수 있으므로 수평으로 확장할 수 없습니다. DA 솔루션을 수직적으로 확장하려면 분산화의 절충이 필요합니다.
데이터 가용성(DA)은 롤업의 병목 현상으로 남아 있습니다. 현재 각 L1 블록의 최대 용량 목표는 1MB(85KB/s)입니다. 장기적으로 EIP-4844는 약 2MB(171KB/s)의 추가 여유 공간을 제공합니다. Danksharding을 통해 Ethereum L1은 결국 최대 1.3MB/s의 DA 대역폭을 지원할 수 있습니다. Ethereum L1 DA는 많은 애플리케이션과 서비스가 경쟁하는 리소스입니다. 따라서 L1을 DA로 사용하는 것이 최고의 보안을 제공하지만 시스템의 잠재적인 확장성에 병목 현상이 발생합니다. L1을 DA로 사용하는 시스템은 (일반적으로) 수평적으로 확장되지 않으며 규모의 불경제로 인해 어려움을 겪습니다. Celestia 또는 EigenDA와 같은 대체 DA 레이어에도 대역폭 제한이 있습니다(더 큰 경우에도 각각 6.67MB/s 및 15MB/s). 그러나 이는 신뢰 가정을 이더리움에서 다른(일반적으로 덜 분산된) 네트워크로 이동하여 보안을 손상시키는 대가로 발생합니다.
설명 2: 신뢰가 최소화된 서비스를 수평적으로 확장하는 유일한 방법은 트랜잭션당 한계 L1 데이터를 (거의) 0으로 달성하는 것입니다. 알려진 두 가지 방법은 상태 차이 롤업(SDR)과 유효성입니다.
상태 차이 롤업(SDR)은 집계된 트랜잭션 일괄 처리의 상태 차이를 Ethereum L1에 게시하는 롤업입니다. EVM의 경우 트랜잭션 배치가 커질수록 L1에 게시되는 각 트랜잭션 데이터는 상수에 가까워지며 이는 Rollup의 트랜잭션 데이터보다 훨씬 작습니다.
예를 들어, 비문이 많이 유입되는 스트레스 테스트 이벤트 중에 zkSync는 통화 데이터가 트랜잭션당 10바이트로 감소한 것을 확인했습니다. 이에 비해 Arbitrum, Optimism 및 Polygon zkEVM과 같은 롤업은 일반 트래픽의 경우 트랜잭션당 약 100바이트입니다.
validium은 관련 트랜잭션 데이터나 상태 없이 이더리움으로의 상태 전환에 대한 유효성 증명을 게시하는 시스템입니다. Validium은 트래픽이 적은 상황에서도 수평 확장성이 뛰어납니다. 그리고 서로 다른 유효성 검사가 결제 계층을 공유할 수 있습니다.
수평적 확장성 외에도 validium은 온체인 개인정보 보호(공개 관찰자로부터)를 제공할 수 있습니다. Privacy DA가 포함된 Validium은 중앙 집중화되고 통제된 데이터 및 상태 가용성을 갖추고 있습니다. 즉, 사용자는 데이터에 액세스하기 전에 인증을 받아야 하며 운영자는 우수한 개인 정보 보호 관행을 구현할 수 있습니다. 이를 통해 기존 웹 또는 금융 서비스와 유사한 사용자 경험을 제공할 수 있습니다. 사용자 활동은 공개 조사 대상이 아니지만 신뢰할 수 있는 사용자 데이터 관리자(이 경우 Validium 운영자)가 있습니다.
중앙 집중식 분류기와 분산식 분류기는 어떻습니까? 시스템의 수평 확장성을 유지하려면 독립적인 분류기(중앙 집중식 또는 분산식)가 중요합니다. 공유 분류기를 사용하는 시스템은 원자적으로 구성 가능하지만 더 많은 시스템이 추가됨에 따라 분류기가 병목 현상을 일으킬 수 있으므로 수평으로 확장되지 않는다는 점은 주목할 가치가 있습니다.
상호 운용성은 어떻습니까? 수평 확장 가능한 시스템이 모두 동일한 L1 결제에 있는 경우 공유 결제 계층을 통해 한 시스템에서 다른 시스템으로 메시지를 보낼 수 있으므로 추가 신뢰 없이 상호 운용이 가능합니다. 운영 비용과 메시지 전달 대기 시간 사이에는 균형이 있습니다(이는 애플리케이션 계층에서 해결 가능).
수평 확장 가능한 시스템에 대한 신뢰 최소화
수평적으로 확장 가능한 시스템에서 활성 상태, 주문자 및 데이터 가용성에 대한 신뢰 요구 사항을 더욱 최소화할 수 있습니까?
놀랍게도 우리는 수평적 확장성을 희생하면서 무신뢰 활성 및 데이터 가용성을 구제하는 방법을 알고 있습니다. 예를 들어 L2 트랜잭션은 포함을 보장하기 위해 L1에서 시작될 수 있습니다. Volition은 사용자에게 사전 동의된 L1 상태 가용성을 제공할 수 있습니다.
또 다른 해결책은 단순히 분산화하는 것입니다(그러나 L1에 의존하지 않음). 단일 시퀀서를 사용하는 대신 분산형 시퀀서(예: Espresso Systems 또는 Astria)를 사용하면 시스템이 더욱 분산화되어 활성 상태, 순서 지정 및 데이터 가용성에 필요한 신뢰가 최소화될 수 있습니다. 단일 운영자 솔루션에 비해 그렇게 하는 데에는 제한이 있습니다. (1) 성능은 분산 시스템 성능에 의해 제한될 수 있습니다. (2) 개인 정보 보호 DA가 있는 유효성 검사의 경우 분산 시퀀서 네트워크가 무허가인 경우 기본 개인 정보 보호가 손실됩니다.
단일 캐리어 유효성 또는 SDR에 대한 신뢰 의존도를 얼마나 더 줄일 수 있습니까? 여기에는 여러 가지 방향이 있습니다.
방향 1: 유효성 검사에서 신뢰를 최소화한 데이터 가용성. Plasma는 특정 특정 상태 모델(UTXO 상태 모델 포함)의 철회 문제 또는 사용자가 정기적으로 온라인에 접속하도록 요구하는(Plasma Free) 상태 가용성 문제를 어느 정도 해결합니다.
방향 2: SDR 및 유효성 검사의 책임 있는 사전 검증. 여기서 목표는 사용자에게 시퀀서 포함 거래에 대한 빠른 사전 확인을 제공하는 것이며, 포함 약속이 이행되지 않을 경우 사용자가 시퀀서에 스테이킹 페널티를 부과하고 이의를 제기할 수 있도록 해야 합니다. 여기서 문제는 트랜잭션이 포함되지 않았음을 증명하는 것입니다. 이를 위해서는 사용자가 추가 데이터를 제공해야 할 수 있으며, 이 데이터는 시퀀서가 간단히 보관할 수 있습니다. 따라서 전체 통화 데이터 또는 거래 내역을 위해 데이터 가용성 위원회를 고용하기 위해 최소한 SDR 또는 validium을 요구하고 위원회는 사용자 요청 시 비포함(사전 확인된 거래) 증거를 제공할 수 있다고 가정하는 것이 합리적입니다.
방향 3: 활성 결함으로부터 빠른 복구. 개별 운영자 시스템은 활성 오류(예: Inscription 이벤트 중에 Arbitrum이 다운되는 등)를 경험할 수 있습니다. 유사한 상황에서도 서비스 중단이 발생하지 않는 시스템을 설계할 수 있습니까? 어떤 의미에서 자체 순서 지정 및 상태 제안을 허용하는 L2는 장기적인 활성 실패에 대한 보장을 제공합니다. 단기 활성 오류에 대해 보다 탄력적인 단일 운영자 시스템은 현재 충분히 연구되지 않았습니다. 여기서 잠재적인 해결책 중 하나는 활성 결함을 줄여 책임을 부과하는 것입니다. 또 다른 가능한 해결책은 인수 전 지연 기간(현재 약 1주일로 설정)을 줄이는 것입니다.
결론적으로
신뢰를 최소화하면서 글로벌 결제 원장을 확장하는 것은 어려운 문제입니다. 오늘날의 롤업 및 데이터 가용성 세계에서는 수직적 확장과 수평적 확장 사이에 명확한 구분이 없습니다. 신뢰가 최소화된 시스템을 지구 곳곳으로 확장하려면 신뢰가 최소화되고 수평적으로 확장 가능한 시스템을 구축해야 합니다.
피드백과 토론을 해준 Vitalik Buterin과 Terry Chung에게, 편집 의견을 주신 Diana Biggs에게 많은 감사를 드립니다.


