Vitalik:어떤 Layer3가 의미가 있을까?
작성자: Vitalik, 《어떤 종류의 레이어 3이 의미가 있을까?》
편집: 동이밍, 체인 포착기
Georgios Konstantopoulos, Karl Floersch 및 Starkware 팀의 피드백과 검토에 특별히 감사드립니다.
레이어 2 확장성 논의에서 자주 다시 떠오르는 주제 중 하나는 "레이어 3"의 개념입니다. 만약 우리가 레이어 1에 안전성을 Anchoring하여 레이어 2 프로토콜을 구축할 수 있다면, 그 확장성을 증가시키는 것이 주요 목적이라면, 우리는 "레이어 2에 안전성을 Anchoring하고 그 위에 더 많은 확장성을 추가하는" 레이어 3 프로토콜을 구축하여 규모를 확장할 수 있을까요?
이 아이디어의 간단한 버전은 다음과 같습니다: 만약 당신이 제곱 성장을 실현할 수 있는 솔루션을 가지고 있다면, 이 솔루션을 스택하여 기하급수적인 성장을 얻을 수 있을까요? 유사한 아이디어는 제가 2015년에 쓴 확장성 논문과 Plasma 논문에서 언급한 다층 확장 등을 포함합니다. 불행히도, 이렇게 간단한 레이어 3의 개념은 실행 가능한 솔루션을 형성하기가 그리 쉽지 않습니다. 데이터 가용성의 제한, 긴급 인출에 대한 레이어 1 대역폭의 의존성 또는 기타 여러 문제로 인해 설계에서 항상 쌓을 수 없는 요소가 있으며, 단 한 번의 확장성 향상만을 제공할 수 있습니다.
레이어 3에 대한 최근의 아이디어, 예를 들어 Starkware가 제안한 프레임워크는 더 복잡합니다: 이들은 단순히 동일한 것을 스택하는 것이 아니라 레이어 2와 레이어 3에 서로 다른 용도를 할당합니다. 올바른 방식으로 수행된다면, 이 접근 방식의 잠재적 형태는 실행 가능할 수 있습니다. 이 글에서는 삼층 구조에서 어떤 것이 의미가 있고 어떤 것이 의미가 없는지에 대해 자세히 설명하겠습니다.
왜 롤업을 스택하여 롤업 위에서 확장을 유지할 수 없는가?
롤업(자세한 내용은 여기 제 긴 글을 참조하세요)은 블록체인을 운영하는 두 가지 주요 확장 병목 현상을 해결하기 위해 다양한 기술을 결합한 확장 기술입니다: 계산과 데이터. 계산은 "사기 증명" 또는 SNARK와 같은 방법으로 해결되었으며, 이는 소수의 참여자가 각 블록을 처리하고 검증하는 데 의존하고, 다른 사람들은 증명 과정이 올바르게 완료되었는지 확인하기 위해 소량의 계산만 수행하도록 요구합니다. 이러한 솔루션, 특히 SNARK는 거의 무한히 확장할 수 있습니다; 우리는 "많은 SNARK의 SNARK"를 계속 만들어 더 많은 계산을 단일 증명으로 축소할 수 있습니다.
데이터는 다릅니다. 롤업은 일련의 압축 기술을 사용하여 거래가 체인에 저장해야 하는 데이터 양을 줄입니다: 간단한 화폐 이체는 약 100바이트에서 약 16바이트로 줄어들고, EVM 호환 체인에서의 ERC20 이체는 약 180바이트에서 약 23바이트로 줄어듭니다, 프라이버시를 보호하는 ZK-SNARK 거래는 약 600바이트에서 약 80바이트로 압축될 수 있습니다. 모든 경우에서 약 8배 압축됩니다. 그러나 롤업은 여전히 사용자가 롤업의 상태를 독립적으로 계산하고 기존 증명자가 오프라인일 때 증명자로 참여할 수 있도록 데이터를 체인에서 사용할 수 있는 매체에서 보장해야 합니다. 데이터는 한 번 압축할 수 있지만 다시 압축할 수는 없습니다 - - - 만약 가능하다면, 일반적으로 두 번째 압축기의 논리를 첫 번째 압축기에 넣고 한 번 압축하여 동일한 이점을 얻을 수 있는 방법이 있습니다. 따라서 "롤업 위의 롤업"은 실제로 확장성 측면에서 큰 이점을 제공하지 않지만, 아래에서 볼 수 있듯이 이 패턴은 다른 목적에 사용할 수 있습니다.
그렇다면 레이어 3의 "합리적인" 버전은 무엇인가?
좋습니다, Starkware가 그들의 레이어 3에 대한 게시물에서 주장하는 내용을 살펴보겠습니다. Starkware는 매우 똑똑한 암호학자들로 구성되어 있으며, 이들은 합리적이므로 만약 그들이 레이어 3를 주장한다면, 그들의 버전은 "롤업이 데이터를 8배 압축한다면, 롤업 위의 롤업은 데이터를 64배 압축할 것이다"보다 훨씬 복잡할 것입니다.
다음은 Starkware 게시물의 그림입니다:
몇 가지 인용:
위의 그림은 이 생태계의 한 예를 묘사합니다. 그들의 L3는 다음을 포함합니다:
Validium 데이터 가용성을 가진 StarkNet, 예를 들어 가격에 극도로 민감한 애플리케이션에서 일반적으로 사용됩니다.
더 나은 애플리케이션 성능을 위해 맞춤화된 애플리케이션 전용 StarkNet 시스템, 예를 들어 지정된 저장 구조 또는 데이터 가용성 압축을 채택하여 구현합니다.
StarkEx 시스템(예: dYdX, Sorare, Immutable 및 DeversiFi에 서비스를 제공하는 시스템)은 Validium 또는 롤업 데이터 가용성을 가지고 있으며, 즉시 StarkNet에 검증된 확장성 이점을 제공합니다.
프라이버시 StarkNet 인스턴스(이 예에서는 L4로도 사용됨)는 프라이버시 보호 유형의 거래가 존재할 수 있도록 하며, 이를 공공 StarkNet에 포함시키지 않습니다.
우리는 이 기사를 "'L3s'의 세 가지 비전"으로 압축할 수 있습니다:
L2는 확장을 위해, L3는 프라이버시와 같은 맞춤 기능을 위해 사용됩니다. 이 비전에서는 "확장성 제곱 성장을 제공하려는 시도"가 없으며, 대신 스택에 애플리케이션 확장을 도와주는 레이어가 있고, 그에 따라 다양한 사용 사례의 맞춤 기능 요구를 충족하는 독립적인 레이어가 있습니다.
L2는 일반적인 확장을 위해, L3는 맞춤형 확장을 위해 사용됩니다. 맞춤형 확장은 다양한 형태를 가질 수 있습니다: EVM 외의 다른 것을 사용하여 계산하는 전용 애플리케이션, 특정 애플리케이션의 데이터 형식에 최적화된 데이터 압축 롤업(각 블록에서 "데이터"와 "증명"을 분리하고 단일 SNARK로 증명을 대체하는 것 등).
L2는 신뢰 없는 확장(롤업)을 위해, L3는 약한 신뢰 확장(Validium)을 위해 사용됩니다. Validium은 SNARK를 사용하여 계산을 검증하는 시스템이지만, 데이터 가용성은 신뢰할 수 있는 제3자 또는 위원회에 맡깁니다. 제 생각에 Validium은 심각하게 과소평가되고 있습니다: 특히 많은 "기업 블록체인" 애플리케이션은 실제로 Validium을 운영하는 증명자가 서비스를 제공하고 정기적으로 해시를 체인에 제출하여 최상의 서비스를 제공하는 것이 가장 좋을 수 있습니다. Validium의 보안 수준은 롤업보다 낮지만 훨씬 저렴할 수 있습니다.
제 생각에 이 세 가지 비전은 기본적으로 합리적입니다. 전용 데이터 압축이 자신의 플랫폼을 필요로 한다는 생각은 가장 약한 주장일 수 있습니다 - - - 일반적인 기본 레이어 압축 솔루션을 설계하는 것은 매우 쉽고, 사용자는 애플리케이션 전용 하위 압축기를 사용하여 자동으로 확장할 수 있지만, 그 외에는 이러한 사용 사례는 모두 합리적입니다. 그러나 여전히 큰 질문이 남습니다: 삼층 구조가 이러한 목표를 달성하는 올바른 방법인가? 검증, 프라이버시 시스템 및 맞춤형 환경을 L2에 Anchoring하는 것이 단순히 L1에 Anchoring하는 것보다 의미가 있는가? 이 질문의 답은 상당히 복잡하다는 것이 밝혀졌습니다.
L2의 하위 집합 트리에서 예치금과 인출이 더 저렴하고 쉬워지는가?
삼층 모델이 이층 모델보다 우수하다는 한 가지 가능한 주장은: 삼층 모델은 전체 하위 생태계가 단일 롤업 내에 존재할 수 있게 하여, 이 생태계 내의 도메인 간 작업이 비싸지 않게 발생할 수 있도록 합니다. 비싼 L1을 통해 수행할 필요가 없습니다.
하지만 사실, 두 개의 L2 또는 심지어 L3 간에도 예치금과 인출이 매우 저렴할 수 있습니다. 이의 핵심은 토큰과 기타 자산이 루트 체인에서 발행될 필요가 없다는 것입니다. 즉, Arbitrum에서 ERC20 토큰을 보유하고, Optimism에서 그 포장기를 생성하고, 두 체인 간에 L1 거래 없이 자유롭게 이동할 수 있습니다!
이러한 시스템이 어떻게 작동하는지 살펴보겠습니다. 두 가지 스마트 계약이 있습니다: Arbitrum의 기본 계약과 Optimism의 포장 토큰 계약. Arbitrum에서 Optimism으로 이동하려면, 토큰을 기본 계약으로 보내야 하며, 이는 영수증을 생성합니다. Arbitrum이 최종 확정되면, 해당 영수증의 Merkle 증명을 가져와 L1 상태에 뿌리내리고, 이를 Optimism의 포장 토큰 계약으로 보내면, 해당 계약이 이를 검증하고 포장 토큰을 발급합니다. 토큰을 다시 이동하려면, 동일한 작업을 반대로 수행할 수 있습니다.
Arbitrum에서 예치금을 증명하는 데 필요한 Merkle 경로는 L1 상태를 통해 가야 하지만, Optimism은 예치금을 처리하기 위해 L1 상태 루트만 읽으면 됩니다 - - - L1 거래가 필요하지 않습니다. 롤업 데이터가 가장 희소한 자원이기 때문에, 이 솔루션의 실제 구현은 공간을 절약하기 위해 SNARK 또는 KZG 증명을 사용할 것입니다.
L1 기반 토큰과 비교할 때, 이 솔루션에는 치명적인 약점이 있습니다(적어도 낙관적 롤업에서는): 예치금은 사기 방지 창을 기다려야 합니다. 만약 토큰이 L1에 뿌리내려져 있다면, Arbitrum 또는 Optimism에서 L1로 철회하는 데는 일주일의 지연이 필요하지만, 예치금은 즉시 이루어집니다. 그러나 이 솔루션에서는 예치금과 인출 모두 일주일의 지연이 필요합니다. 즉, 이상적인 롤업에서 삼층 구조가 더 나은지 여부는 불확실합니다: 본질적으로 사기 방지 게임이 실행되는 시스템 내부에서 발생하는 사기 방지 게임이 안전한지 확인하는 데 많은 기술적 복잡성이 존재합니다.
다행히도 이러한 문제는 ZK 롤업에서는 문제가 되지 않습니다. 보안상의 이유로 ZK 롤업은 일주일의 대기 창이 필요하지 않지만, 다른 두 가지 이유로 인해 여전히 더 짧은 창이 필요합니다(1세대 기술은 12시간이 필요할 수 있습니다). 첫째, 특히 더 복잡한 일반 ZK-EVM 롤업은 블록의 비병렬화된 계산 시간을 커버하는 데 더 오랜 시간이 필요합니다. 둘째, 경제적 고려로 인해 증명 거래와 관련된 고정 비용을 최소화하기 위해 제출해야 하는 증명의 수가 적습니다. 전용 하드웨어를 포함한 차세대 ZK-EVM 기술은 첫 번째 문제를 해결할 것이며, 아키텍처가 더 나은 배치 검증은 두 번째 문제를 해결할 수 있습니다. 우리가 다음에 논의할 것은 최적화 및 배치 제출 증명의 문제입니다.
롤업과 Validium은 확인 시간과 고정 비용 간의 균형을 가지고 있습니다. L3는 이 문제를 해결하는 데 도움이 될 수 있지만, 다른 방법도 있습니다.
각 거래의 롤업 비용은 저렴합니다: 애플리케이션에 따라 16-60바이트의 데이터입니다. 그러나 롤업은 체인에 거래 배치를 제출할 때마다 높은 고정 비용을 지불해야 합니다: 낙관적 롤업은 매 배치마다 21000 L1 가스가 필요하고, ZK 롤업은 400,000 가스를 초과합니다(양자 안전한 것을 STARKS로만 제공하려면 수백만 가스가 필요합니다).
물론, 롤업은 1000만 가스 가치의 L2 거래가 있을 때까지 기다렸다가 전체 배치를 제출할 수 있지만, 이는 매우 긴 배치 간격을 초래하여 사용자가 높은 보안 확인을 받기 위해 더 오랜 시간을 기다리게 합니다. 따라서 그들은 균형을 맞춰야 합니다: 긴 배치 간격과 최적 비용, 또는 짧은 배치 간격과 대폭 증가한 비용.
구체적인 숫자를 제공하기 위해, 배치 비용이 600,000 가스인 ZK 롤업과 각 거래 비용이 368 가스인 완전히 최적화된 ERC20 전송(23바이트)을 고려해 보겠습니다. 이 롤업이 채택 초기에서 중기일 때 TPS가 5라고 가정합니다. 우리는 각 거래와 배치 간격의 가스를 계산할 수 있습니다:
만약 우리가 많은 맞춤 검증과 특정 애플리케이션 환경을 가진 세계에 들어간다면, 그 중 많은 것들이 초당 처리량이 5TPS보다 훨씬 낮을 것입니다. 따라서 확인 시간과 비용 간의 균형이 매우 중요해지기 시작합니다. 사실, "L3" 패러다임은 실제로 이 문제를 해결합니다! ZK 롤업 내의 ZK 롤업은, 심지어 간단한 구현일지라도, 약 8,000 레이어-1 가스의 고정 비용만 필요합니다(증명에 500바이트). 이는 위의 표를 다음과 같이 변경합니다:
문제가 기본적으로 해결되었으니, L3s는 정말 좋은가요? 아마도 그렇습니다. 그러나 이 문제를 해결하는 또 다른 방법은 ERC 4337 집합 검증에서 영감을 받았습니다.
전략은 다음과 같습니다. 오늘날, 각 ZK 롤업 또는 Validium이 증명을 받으면, 증명 S ~new~ = STF(S ~old~ ,D) : 새로운 상태 루트는 이전 상태 루트 위에서 거래 데이터 또는 상태 증분을 올바르게 처리한 결과여야 합니다. 이 새로운 솔루션에서는 ZK 롤업이 배치 검증자 계약에서 메시지를 수신하여, 이 메시지는 배치의 각 문장이 S ~new~ = STF(S ~old~ ,D) 형태의 증명을 검증했다고 말합니다. 이러한 배치 증명은 재귀 SNARK 솔루션 또는 Halo 집합을 통해 구축될 수 있습니다.
이것은 개방형 프로토콜이 될 것입니다: 모든 ZK 롤업이 참여할 수 있으며, 모든 배치 검증자가 호환되는 ZK 롤업에서 증명을 집합할 수 있고, 집합자에게 거래 수수료를 보상받을 수 있습니다. 배치 프로그램 계약은 한 번 증명을 검증한 다음, 각 롤업에 메시지를 전달하며, 해당 롤업의 (S ~old~ , S ~new~ , D) 삼중항을 포함합니다. 배치 프로그램 계약에서의 삼중항의 사실은 변환이 유효하다는 것을 증명하는 증거로 사용됩니다.
이 솔루션에서 매번 집합의 비용은 약 8000에 가까워질 수 있으며, 그 중 5000은 새로운 업데이트 상태 쓰기에, 1280은 이전 루트와 새로운 루트에, 추가로 1720은 기타 데이터 처리에 사용됩니다. 따라서 동일한 절약을 제공할 것입니다. Starkware는 실제로 SHARP라는 유사한 것을 가지고 있지만, (아직) 허가가 필요 없는 개방형 프로토콜은 아닙니다.
이 방법에 대한 한 가지 반응은: 하지만 이것은 실제로 또 다른 제3층 솔루션이 아닌가요? 우리는 base layer \<- 배치 메커니즘 \<- 롤업 또는 Validium을 갖게 될 것이며, 이는 base layer \<- 롤업 \<- Validium을 대체합니다. 어떤 철학적 구조의 관점에서 보면, 이는 사실일 수 있습니다. 그러나 중요한 차이점이 있습니다: 중간 레이어는 복잡한 전체 EVM 시스템이 아니라 단순화되고 고도로 전문화된 객체이므로, 이는 더 안전할 가능성이 높고, 또 다른 전용 토큰 없이 구축될 가능성이 높으며, 최소한의 거버넌스를 가질 가능성이 높고, 시간이 지남에 따라 변경되지 않을 가능성이 높습니다.
결론: "레이어"란 도대체 무엇인가?
자신 위에 동일한 확장 솔루션을 쌓은 삼층 확장 아키텍처는 일반적으로 잘 작동하지 않습니다. 롤업 위의 롤업(두 개의 롤업이 동일한 기술을 사용하는 형태)도 그리 만족스럽지 않습니다. 그러나 L2와 L3가 서로 다른 목적을 가진 삼층 아키텍처는 실행 가능할 수 있습니다. 롤업 위의 Validium은 실제로 의미가 있으며, 장기적으로 최상의 작업 방식인지 확실하지 않더라도 여전히 의미가 있습니다.
그러나 우리가 어떤 아키텍처가 의미가 있는지에 대한 세부 사항을 깊이 파고들기 시작하면, 우리는 철학적 질문으로 들어가게 됩니다: 무엇이 "층"이고 무엇이 아닌가? base layer \<- 배치 메커니즘 \<- 롤업 또는 Validium과 base layer \<- 롤업 \<- 롤업 또는 Validium은 동일한 작업을 수행하지만, 작동 방식 측면에서 증명 집합 레이어는 롤업이 아니라 ERC-4337처럼 보입니다. 일반적으로 우리는 ERC-4337을 "레이어 2"라고 부르지 않습니다. 마찬가지로, 우리는 Tornado Cash를 "레이어 2"라고 부르지 않으므로, 만약 우리가 일관성을 유지하려면, L2 위에 위치한 프라이버시 중심의 하위 시스템을 L3라고 부르지 않을 것입니다. 따라서 무엇이 먼저 "레이어"라고 불려야 하는지에 대한 해결되지 않은 의미론적 논쟁이 존재합니다.
이와 관련하여 여러 가지 가능한 사상 흐름이 있습니다. 개인적으로는 "레이어 2"라는 용어를 다음 속성을 가진 것에 제한하는 것을 선호합니다:
그들의 목적은 확장성을 높이는 것입니다.
그들은 "블록체인 내의 블록체인" 패턴을 따릅니다: 그들은 자체 거래 처리 메커니즘과 자체 내부 상태를 가지고 있습니다.
그들은 이더리움 체인의 모든 보안을 상속받습니다.
따라서 이상적인 롤업과 ZK 롤업은 L2이지만, 검증, 증명 집합 솔루션, ERC 4337, 체인 상의 프라이버시 시스템 및 Solidity는 다른 문제입니다. 그 중 일부를 L3라고 부르는 것은 의미가 있을 수 있지만, 모든 것이 그렇지는 않을 수 있습니다; 어쨌든 지금 정의를 확정하는 것은 시기상조인 것 같고, 다수의 롤업 생태계 아키텍처는 고정된 것이 아니며, 대부분의 논의는 이론적입니다.
즉, 언어적 논쟁보다 어떤 구조가 실제로 가장 의미가 있는지에 대한 기술적 문제가 더 중요합니다. 분명히, 프라이버시와 같은 비확장 요구를 충족하는 특정 "층"은 중요한 역할을 할 수 있으며, 증명 집합의 중요한 기능을 어떤 식으로든 채워야 하며, 가능하면 개방형 프로토콜을 통해 채워야 합니다. 그러나 동시에, 우리는 사용자 환경과 L1을 향한 링크를 가능한 한 간단하게 유지해야 할 충분한 기술적 이유가 있습니다; 많은 경우, EVM 롤업의 "접착층"이 올바른 방법이 아닐 수 있습니다. 저는 L2 확장 생태계가 성숙해짐에 따라, 이 글에서 설명한 더 복잡하고(또는 더 간단한) 구조가 더 큰 역할을 할 것이라고 추측합니다.