출처: Four Pillars 편집자: Baishui, 진써차이징(Jinse)
요약
2023년에 zkRollups는 연구 단계에서 생산 단계로 전환했으며 Starknet, zkSync, Scroll, Polygon zkEVM 및 Linea와 같은 프로젝트가 자체 솔루션을 출시했습니다.
zkRollup 생태계는 보조 프로세서, 증명기 시장, 공유 증명기 및 zk 집계 계층과 같은 새로운 개념의 개발로 더욱 효율적이고 탈중앙화 됩니다.
zkRollup의 운영에는 실행, 증명 생성, 증명 검증의 세 가지 주요 단계가 포함되며, zkRollup 공급망의 각 구성 요소를 최적화하는 데 초점을 맞춘 다양한 프로젝트가 있습니다.
zkSync, Starknet, Merlin 및 SNARKnado와 같은 zkRollup은 인프라를 개발하고 있지만 공급망 최적화의 초기 단계에 여전히 머물러 있습니다.
2022년에 zkRollups는 주로 연구 단계에 있습니다. 2023년은 그들의 미래가 시작되는 해이다. Starknet, zkSync, Scroll, Polygon zkEVM 및 Linea를 포함한 많은 프로젝트에서 롤업을 프로덕션에 적용하고 있습니다. 낙관적 롤업에 비해 마무리 시간이 짧고 상호 운용성이 더 안전하며 운영 비용이 낮다는 이점은 분명합니다. 이러한 발전에도 불구하고 zkRollups는 낙관적 롤업에 비해 여전히 실험 단계에 있으며 기술 로드맵은 자주 변경됩니다.
그렇다면 zkRollups의 미래는 어떻게 될까요? 보조 프로세서, 증명기 시장, 공유 증명기, zk 집계 계층과 같은 새로운 용어는 많은 프로젝트에서 자주 나타납니다. zkRollup은 다양한 방식으로 개발되고 있으며 zkRollup 생태계 내에서 zkRollup을 더욱 효율적이고 탈중앙화 하기 위해 많은 구성 요소가 구축되고 있습니다. zkRollups의 작동 방식을 고려하면 프로세스에는 실행, 실행 증명 생성, 증명 검증의 세 단계가 포함됩니다. 각 단계마다 해당 프로젝트가 있습니다. 간단히 요약하자면:
실행: zkVM, 보조 프로세서
증명 생성: 증명 시장, 증명 수집자
증명 검증: 결제 레이어
이러한 각 범주는 초기 단계에 있지만 이 공급망이 더욱 발전함에 따라 zkRollup 생태계는 더욱 효율적이 될 것입니다. 이 기사에서 우리는 먼저 zk의 기본 사항을 살펴본 다음 zkRollup 공급망에서 구축되고 있는 프로젝트와 이더 및 비트코인의 주요 zkRollups 중 일부에 대해 자세히 알아볼 것입니다.
1. ZKP 및 zkRollup에 대한 기본 지식
본 글 제목에서 언급한 zkRollup은 영지식증명(ZKP)을 이용한 롤업 방식이다. 블록체인 생태계에서 영지식 증명이라는 용어를 접했다면 아마 익숙할 것입니다. (그렇지 않더라도 걱정하지 마세요. 나중에 설명하겠습니다.) 하지만 이 기술이 롤업에 왜, 어떻게 적용되는지 묻는다면 바로 대답하기 어려울 수도 있습니다.
이 질문에 대한 답을 찾기 위해 이 장에서는 영지식 증명과 zkRollups가 무엇인지, 어떻게 작동하는지, ZKP 기술이 롤업에 적합한 이유를 살펴보겠습니다.
1.1 ZKP란 무엇입니까?
1.1.1 ZKP 개요
ZKP의 세부 사항을 살펴보기 전에 먼저 프로세스와 관련된 구성 요소를 이해해 보겠습니다. 두 가지 주요 구성 요소가 있습니다.
증명자(Prover): 증명자는 ZKP 프로세스 중에 검증자에게 증명하려는 진술을 보유합니다.
검증자(Verifier): 검증자는 ZKP 프로세스에 참여하고 제공된 증거를 기반으로 증명자의 진술이 사실인지 여부를 결정합니다.
이제 ZKP에 대해 자세히 살펴보겠습니다. ZKP는 증명자가 특정 사실 자체나 관련 정보를 공개하지 않고도 특정 사실을 증명할 수 있는 암호 기술입니다. ZKP에는 완전성, 신뢰성, 영지식이라는 세 가지 주요 특성이 있습니다.
완전성(Completeness): 증명자의 진술이 참이면 검증자는 그 진술이 참이라고 확신합니다.
신뢰성: 증명자의 진술이 거짓인 경우 증명자는 검증자를 속여 그것이 사실이라고 믿도록 할 수 없습니다.
영지식(Zero Knowledge): 증명 과정에서 검증자는 진술의 진실 또는 허위 이외의 추가 정보를 얻지 않습니다.
1.1.2 ZKP 예
영지식증명을 설명하기 위해 잘 알려진 예인 '알리바바의 동굴'을 예로 들어보자.
다음 시나리오를 생각해 보십시오. 알리바바의 동굴에는 동굴 깊은 곳에서 만나지만 비밀의 문으로 막혀 있는 두 개의 길 A와 B가 있습니다. 증명자(P)는 비밀문의 열쇠를 가지고 있다고 주장하고, 검증자(V)는 P가 실제로 비밀문의 열쇠를 가지고 있는지 확인하고 싶어합니다.
확인 과정은 다음 단계를 따릅니다. P 동굴에 들어가서 경로 A 또는 B를 선택합니다. V는 P가 어떤 길로 갔는지는 모르지만, P에게 특정 경로로 나오도록 요청할 수 있습니다. P에게 키가 있으면 P는 어떤 경로에서도 나올 수 있습니다. 이 과정을 여러 번 반복한 후에 V는 P가 열쇠를 가지고 있다는 것을 확신할 수 있습니다. 그러나 V는 키의 모양이나 속성에 대해 아무것도 배우지 않습니다.
이를 영지식 증명의 특성에 적용해 보세요.
무결성: P가 여러 번의 반복을 통해 V의 지시를 일관되게 따른다면 V는 P가 키를 소유하고 있다고 확신할 수 있습니다.
신뢰성: P가 실제로 열쇠를 가지고 있지 않지만 그에 대해 거짓말을 한다면, 필연적으로 P가 V의 지시를 따를 수 없는 상황이 발생하여 P의 진술이 거짓임을 증명하게 됩니다.
영지식: V는 여러 번의 반복을 통해 P가 키를 소유하고 있다고 확신하지만 키의 모양이나 속성에 대해서는 아무것도 모릅니다.
1.2 그렇다면 Rollup과 zkRollup은 무엇입니까?
지금까지 영지식 증명의 A부터 Z까지 살펴보았습니다. 그러나 이 기사의 초점은 zkRollups라는 점을 기억해야 합니다. 이제 롤업과 zkRollups가 무엇인지 자세히 살펴보겠습니다.
1.2.1 롤업 빠른 개요
롤업은 레이어 2 블록체인 온체인 트랜잭션을 처리한 다음 기록 및 관리를 위해 레이어 1 블록체인에 롤업 상태를 게시하는 레이어 2 확장 솔루션입니다.
이더 의 확장성 문제를 해결하기 위해 이전에 많은 제안이 있었습니다. 가장 초기의 것은 샤딩(sharding)으로, 이더 네트워크를 여러 개의 작은 "샤드"로 나누어 트랜잭션 처리량을 크게 늘립니다. 여러 컴퓨터가 동시에 작업을 처리하는 방식과 유사하게 샤딩을 사용하면 이더 네트워크가 더 많은 트랜잭션을 빠르고 효율적으로 처리할 수 있습니다.
이점에도 불구하고 이더 개발자들은 잠재적인 중앙 집중화 및 기술적 문제에 대한 우려로 인해 직접 샤딩을 포기하여 지연이 발생했습니다. 대신 레이어 2 솔루션을 통해 간접적인 샤딩 접근 방식을 취했습니다. 이 방식에서 트랜잭션 데이터를 일괄적으로 Layer 1로 전송하는 과정을 롤업(rollup)이라고 합니다. 현재 Optimistic Rollups와 zkRollups는 생태계를 이끄는 두 가지 주요 유형입니다.
1.2.2 ZK Proof와 Rollup이 완벽한 조화를 이루는 이유
zkRollups는 사기 증명 대신 유효성 증명을 사용한다는 점에서 낙관적 롤업과 다릅니다. zkRollups는 zk-SNARK 또는 zk-STARK를 사용하여 대량 의 트랜잭션을 하나의 작은 증거로 압축하며, 이는 레이어 1 블록체인 온체인 기록되고 확인됩니다. 낙관적 롤업과 달리 이 접근 방식은 처리 속도와 효율성을 크게 향상시키며 잘못된 결과에 대한 분쟁 기간이 필요하지 않습니다.
영지식 증명의 비대화형 특성은 zkRollups의 효율성과 편의성에 매우 중요합니다. 롤업이 롤업 프로세스를 독립적으로 관리할 수 있도록 하며, 자체 일정에 따라 트랜잭션 데이터를 묶어 레이어 1에 전송함으로써 효율성을 극대화합니다. 이러한 비대화형 접근 방식은 레이어 1과 롤업 간의 보다 대화형 프로세스로 인해 발생할 수 있는 잠재적인 지연과 비효율성을 방지합니다.
단순성은 zkRollups 효율성의 또 다른 핵심 요소입니다. zk-SNARK 및 zk-STARK는 대량 데이터를 작은 증거로 압축할 수 있으므로 거래 데이터를 더 비싸지만 더 안전한 레이어 1로 보낼 때 경제적 효율성을 보장합니다. 이 압축 기능을 통해 zkRollups는 여러 트랜잭션을 단일 배치로 처리하여 레이어 1의 확장성을 크게 향상시키는 동시에 사용자에게 롤업 환경에서 보다 비용 효율적인 블록체인 인프라를 제공할 수 있습니다.
1.2.3 zkRollup의 작동
zkRollup이 어떻게 작동하고 어떤 구성 요소가 관련되어 있는지 자세히 살펴보겠습니다. zkRollup은 주로 두 가지 구성 요소로 작동됩니다.
시퀀서: 시퀀서는 레이어 2에서 발생하는 트랜잭션을 수집 및 처리하고 처리 결과를 레이어 1에 제출합니다. 일부 롤업 프로젝트에는 유효성 증명을 순서 하고 생성하기 위한 별도의 엔터티가 있지만 여기서는 단순화를 위해 이들을 결합된 역할로 처리합니다.
롤업 계약: 롤업 계약은 롤업의 상태와 트랜잭션을 결정하는 데 사용되는 레이어 1의 스마트 계약입니다. 시퀀서가 제출한 데이터를 수신, 저장 및 검증하여 데이터 검증 후 적절한 저장 및 관리를 보장합니다.
zkRollup의 작업 프로세스는 다음과 같습니다.
[시퀀서 <> L2] 트랜잭션 일괄 처리 및 상태 변화 계산: Layer 2에서 실행된 여러 트랜잭션을 일괄로 요약하고, 각 트랜잭션을 일괄적으로 실행하며, 새로운 상태 변경을 기록하는 상태 루트를 생성합니다.
[시퀀서 <> L2] 유효성 증명 생성: 새로운 상태 루트를 사용하여 상태 루트의 정확성을 증명하는 유효성 증명을 생성합니다. 이 증명은 각 트랜잭션의 세부 정보를 공개하지 않고 일괄 처리 내의 모든 트랜잭션이 올바르게 실행되었음을 보장합니다.
[시퀀서 <> L2] 상태 루트 및 유효성 증명 제출: 생성된 유효성 증명, 상태 루트 및 숨겨진 트랜잭션 데이터가 레이어 1 롤업 계약에 제출됩니다. 롤업 계약은 제출된 데이터를 확인합니다.
[시퀀서 <> 롤업 계약(L1)] 검증 및 업데이트: 레이어 1 롤업 계약은 시퀀서로부터 유효성 증명, 상태 루트 및 검증 트랜잭션 데이터를 받습니다. 데이터의 유효성을 검사하고 상태 루트를 업데이트하며 문제가 없으면 유효성이 검사된 트랜잭션 데이터를 저장합니다. 문제가 발견되면 유효성 검사 및 저장 프로시저가 실행되지 않습니다.
2. zkRollup 공급망 개요
조감도에서 zkRollups의 전체 공급망이 어떻게 작동하는지 살펴보겠습니다. zkRollups에는 실행, 증명 생성, 검증이라는 세 가지 주요 프로세스가 포함됩니다.
실행: 이는 별도의 롤업 네트워크에서 일괄적으로 트랜잭션이 실행되어 롤업 상태를 업데이트하는 오프체인에서 발생합니다.
증명 생성: 트랜잭션 배치 및 상태 루트와 같은 입력을 컴파일합니다. 증명 경로는 트랜잭션을 처리하여 데이터를 공개하지 않고 상태 전환의 유효성을 암호로 증명하는 간결한 zk 증명을 생성합니다.
증명 검증: zk 증명 및 관련 데이터는 검증을 위해 결제 계층(주로 이더)의 검증인 계약에 제출됩니다. 유효한 경우 롤업 계약은 상태를 업데이트하여 새로운 사후 상태를 반영하고 변경이 완료될 때까지 짧은 버퍼 시간을 기다립니다.
zkRollups를 보다 효율적으로 실행하기 위해 각 프로세스 전용 프로젝트가 있습니다. 다음 섹션에서는 각 프로세스에 수반되는 내용과 이를 처리하는 프로젝트가 무엇인지 자세히 살펴보겠습니다.
2.1 실행 - ZK 경로에서 실행
실행 및 결제 레이어는 별도로 수행되고, 계산은 별도의 시스템에서 수행되며, 실행 증명은 zk 경로에서 생성됩니다. 이 실행 환경은 zkVM과 Co-Processor의 두 부분으로 나눌 수 있습니다.
2.1.1 zkVM
출처: Foresight Ventures: zk, zkVM, zkEVM 및 이들의 미래 저자: Foresight Ventures 중간
zkVM(영지식 가상 머신)은 계산을 수행하고 영지식 증명을 생성하여 기본 데이터를 공개하지 않고 해당 계산의 정확성을 확인하도록 설계된 특수 가상 머신입니다. zkVM에는 여러 유형이 있으며 각각 특정 가상 머신 및 프로그래밍 언어에 맞게 조정되었습니다. 다음은 이러한 프로젝트에 대한 몇 가지 분석입니다.
zkEVM: 영지식 증명 기능을 통합하면서 EVM 환경을 복제하도록 설계되었습니다. 이를 통해 기존 이더 스마트 계약 및 dApp을 zkEVM 기반 롤업으로 원활하게 포팅할 수 있습니다. 그러나 순수 EVM에는 EVM용 zk 경로 개발의 복잡성과 빈번한 업그레이드로 인해 호환성 문제가 있습니다.
RISC-V 및 MIPS를 기반으로 하는 일반 zkVM: zkRISC는 RISC Zero에서 개발한 zkVM의 특정 구현입니다. 임의의 계산을 수행하고 영지식 증명을 생성할 수 있는 범용 zkVM으로 설계되었습니다. 이를 통해 C, Python 및 Rust와 같은 프로그래밍 언어를 배포하고 실행 증명을 생성할 수 있습니다.
CairoVM: Cairo VM은 프로그램 실행 유효성 증명 생성을 최적화하도록 설계되었습니다. EVM이 유효성 롤업과 호환되도록 만드는 데 초점을 맞춘 zkEVM 솔루션과 달리 Cairo VM은 처음부터 STARK 증명의 효율성을 극대화하도록 설계되었습니다. 이 접근 방식을 사용하면 EVM 제한에 따른 제약 없이 더 나은 성능과 확장성을 얻을 수 있습니다. 그러나 개발자가 새로운 언어를 배워야 하기 때문에 dapp을 구축하는 데에는 장벽이 있습니다.
2.1.2 보조 프로세서
출처: 2024년을 향한 Phala의 길: 블록체인의 공동 프로세서 – AI, Hooks 및 DePin
코프로세서는 특정 계산을 지원하기 위해 오프체인 프로세서로 개발되었습니다. 예를 들어 GPU(그래픽 처리 장치)는 3D 렌더링에 필요한 대량 병렬 컴퓨팅을 관리하여 중앙 CPU가 범용 처리에 집중할 수 있도록 합니다. 이러한 의미에서 보조 프로세서를 사용하면 블록체인 온체인 비용이 많이 드는 복잡한 실행을 수행할 수 있습니다. 각 유형의 보조 프로세서는 특수한 작업 부하를 처리할 때 효율성을 최대화하도록 설계되었습니다.
ZKP를 활용함으로써 코프로세서는 신뢰할 수 없고 검증 가능한 오프체인 계산을 가능하게 하여 민감한 데이터를 유출하지 않고 결과의 정확성과 무결성을 보장할 수 있습니다. 일부 알려진 프로젝트는 다음과 같습니다.
Axiom: Axiom은 스마트 계약이 과거 블록체인 데이터를 쿼리하고 오프체인에서 복잡한 계산을 수행하는 동시에 ZKP를 통해 데이터 프라이버시와 무결성을 유지할 수 있도록 하는 "ZK 보조 프로세서" 시스템을 개발하고 있습니다.
Phat Contracts(Phala Network): Phat Contracts는 확장성을 향상시키고, 가스 없는 경험을 가능하게 하며, 멀티체인 기능을 지원하고, dApp에 오프체인 데이터에 대한 안전한 액세스를 제공하는 보조 프로세서입니다.
2.2 증명 생성 - 영지식 증명 생성
상태 전환의 유효성을 증명하기 위해 롤업 연산자(증명자)는 ZKP를 생성합니다. 이 증명은 새로운 상태 루트가 이전 상태로부터 올바르게 계산되었음을 확인합니다. ZKP를 생성하려면 대량 컴퓨팅 리소스가 필요하기 때문에 특히 대규모 트랜잭션 배치 또는 복잡한 스마트 계약의 경우 증명 생성 프로세스에 제한이 있습니다. 이로 인해 zkRollups의 처리량과 효과적으로 지원할 수 있는 애플리케이션 유형이 제한될 수 있습니다.
또한 ZK 증명을 생성하는 주체에는 해당 분야의 전문 지식이 필요하고 하드웨어를 최신 상태로 유지해야 하기 때문에 중앙 집중화 리스크 말할 것도 없고 관리 비용도 높을 수 있습니다. 결과적으로 이 분야에서는 좀 더 효율적으로 작업할 수 있는 진전이 이루어졌습니다. 접근 방식은 두 부분으로 나뉩니다. 생성 프로세스를 아웃소싱하기 위한 증명 생성 시장을 구축하고, 이를 더욱 비용 효율적으로 만들기 위한 집계 계층을 생성하는 것입니다.
2.2.1 증명생성 시장
출처: Gevulot 소개 |
증명 시장이 제공하는 주요 기능에는 탈중앙화 증명 생성, 경매 메커니즘, 하드웨어 활용 및 비용 효율성이 포함됩니다. 애플리케이션은 네트워크에 증명 요청을 제출하고 증명자는 증명 생성 하드웨어를 사용하여 응답하여 증명 요청이 효율적으로 처리되도록 합니다. 경매 메커니즘은 이러한 요청을 증명자와 일치시켜 경쟁력 있는 증명 가격 책정을 가능하게 합니다. 또한 증명자는 전용 하드웨어를 사용하므로 증명 비용이 절감되고, 탈중앙화 시장에서는 다양한 애플리케이션의 증명 요청을 집계할 수 있으므로 하드웨어 활용도와 비용 효율성이 향상됩니다.
증명 시장은 또한 검열 저항과 빠른 최종성을 보장하고 스테이킹 메커니즘을 구현합니다. 시장은 단기 검열 저항을 보장하므로 검증자 입찰이 부당하게 차단되거나 무시되지 않습니다. 증명자는 악의적인 활동을 방지하고 네트워크의 신뢰성과 무결성을 보장하기 위해 네트워크에 스테이킹 해야 합니다.
마지막으로 시장은 규모의 경제를 활용합니다. 대규모로 조율된 ZKP 생성을 통해 최종 사용자의 비용이 절감됩니다. 증명 주문 흐름을 집계하면 증명자가 보다 효율적인 인프라에 투자하고 운영할 수 있습니다. 최적화를 위해 증명을 집계할 수 있으므로 애플리케이션은 온체인 검증 비용 절감의 이점을 누릴 수도 있습니다. 일부 프로젝트에는 다음이 포함됩니다.
Succinct Network: Succinct Labs는 ZKP를 위한 통합 프로토콜을 만들기 위해 Succinct Network의 일부로 탈중앙화 인증자 시장을 개발하고 있습니다. 이 마켓플레이스를 통해 애플리케이션은 증명 생성을 전용 증명자 네트워크에 아웃소싱하여 ZKP 기반 시스템을 위한 보다 효율적이고 비용 효율적인 솔루션을 제공할 수 있습니다. 인증자 시장은 애플리케이션의 증명 요청을 다양한 인증자 집합과 일치시키는 경매 메커니즘을 통해 운영됩니다.
=nil; 재단: =nil; 재단은 ZKP의 현물 시장 역할을 하도록 설계된 탈중앙화 분산 시스템인 증명 시장을 개발했습니다. 이 시장에서는 증명 요청자(예: 애플리케이션)가 zkProof 생성을 전담 증명 생산자에게 아웃소싱할 수 있습니다. 증명 시장은 =nil; 재단의 데이터베이스 관리 시스템에서 운영되며 중앙 집중식 서비스라기보다는 "증명 DEX"와 같은 기능을 합니다.
Gevulot: Gevulot은 전통적인 증명 시장이 아니라 모듈 스택의 탈중앙화 증명 계층입니다. 이는 증명 시스템을 온체인 프로그램으로 배포하도록 특별히 설계된 무허가형 프로그래밍 가능 레이어 1 블록체인입니다. 일반적인 증명 시장과 달리 Gevulot을 사용하면 이더 에 스마트 계약을 배포하는 것과 유사하게 사용자가 블록체인 온체인 직접 증명 및 검증 프로그램을 배포할 수 있습니다. 이 접근 방식을 통해 애플리케이션은 증명자 네트워크를 부트스트랩하거나 중앙 집중식 솔루션에 의존하지 않고도 탈중앙화 증명의 이점을 누릴 수 있습니다.
2.2.2 집계 증명
출처: 증명하세요: 공유 증명기, 증명 집계 및 증명기 시장 - Delphi Digital
ZKP 집계는 여러 ZKP를 단일 증명으로 결합하여 온체인 이러한 증명을 검증하는 데 드는 전체 비용을 줄이는 기술입니다. 이는 ZKP에 크게 의존하는 롤업에 특히 유용합니다. 주목할만한 프로젝트는 다음과 같습니다.
Polygon AggLayer: 집계된 ZKP와 통합 브리지 계약(LxLy Bridge)을 활용하여 Polygon 생태계의 L2 솔루션 간의 원활한 상호 운용성을 구현하는 것을 목표로 합니다. 집계 증명은 종속 체인 상태와 번들이 일관성을 유지하도록 보장하여 다른 체인의 유효하지 않은 상태에 의존하는 경우 유효하지 않은 롤업 상태가 이더 에서 해결되는 것을 방지합니다.
Nebra: 해당 제품인 UPA(Universal Proof Aggregation)는 ZKP를 집계하기 위한 프로토콜입니다. Nebra의 UPA는 다양한 경로, 증명 시스템 및 당사자의 증명을 집계하여 온체인 검증에 드는 가스 비용을 10배 이상 절감할 수 있습니다. Nebra는 AltLayer와 같은 프로젝트와 협력하여 UPA를 롤업 솔루션에 통합함으로써 AltLayer 사용자와 dApp이 상당한 비용 절감 혜택을 누릴 수 있도록 합니다.
Electron Labs: Electron Labs는 zk-recursion을 활용하여 다양한 프로토콜과 다양한 증명 체계의 증명을 "수퍼 증명"으로 집계하는 집계 계층인 Quantum을 개발했습니다. 그런 다음 이 슈퍼 증명은 이더 에서 검증되어 검증 비용을 여러 프로토콜에 분산시키고 단일 프로토콜에 대한 검증을 더 저렴하게 제공합니다.
2.3 증명 검증
zkRollups의 증명 생성 프로세스는 계산 비용이 많이 듭니다. 그러나 이더 메인넷에서 이러한 증명을 검증하는 것은 비교적 간단하므로 기본 블록체인의 보안 보장을 유지하면서 확장성을 가능하게 합니다.
이더 의 zk 검증 스마트 계약은 효율적인 암호화 알고리즘을 사용하여 유효성 증명을 확인합니다. 유효한 것으로 입증되면 제안된 상태 전환이 정확하고 새로운 상태 루트가 승인되어 메인넷의 롤업 상태가 업데이트됩니다. Aligned Layer와 같은 일부 프로젝트는 이더 의 유효성 검사기를 활용하여 더 빠르고 저렴한 검증을 제공합니다.
2.3.1 정렬 레이어
출처: whitepaper.alignedlayer.com
Aligned Layer는 이더 을 위해 특별히 설계된 탈중앙화 ZKP 검증 및 집계 레이어입니다. EigenLayer Active Validation Service(AVS)로서 ZKP가 이더 블록체인 온체인 정확하게 검증되고 정착되도록 보장하기 위해 " 리스테이킹 (Restaking))"이라는 프로세스를 통해 이더 의 경제적 보안을 활용합니다.
Aligned Layer는 다양한 요구 사항을 충족하기 위해 두 가지 작동 모드를 제공합니다. 고속 모드는 가장 낮은 검증 비용과 낮은 대기 시간에 최적화되어 있어 빠르고 비용 효과적인 증명 검증이 필요한 애플리케이션에 이상적입니다. 반면, 느린 모드는 증명 집계를 활용하여 이더 의 보안 보장을 최대한 활용하여 포괄적인 보안을 제공합니다. 이 이중 모드 접근 방식을 통해 Aligned Layer는 다양한 사용 사례의 특정 요구 사항에 따라 속도와 보안의 균형을 맞추는 유연한 솔루션을 제공할 수 있습니다.
3. zkRollups 분석
섹션 2에서 언급했듯이 zkRollup 공급망을 최적화하기 위한 다양한 프로젝트가 진행되고 있습니다. 프로덕션에서 가장 주목할만한 zkRollup 프로젝트, 특히 EVM 호환 프로젝트 zkSync 및 Starknet, 비트코인 호환 프로젝트 Merlin Chain 및 SNARKnado를 자세히 살펴보겠습니다.
3.1 지크싱크
zkSync는 이더 네트워크가 직면한 확장성 문제를 해결하기 위해 Matter Labs에서 개발한 zkRollup 솔루션입니다. zkSync의 초기 초점은 이더 확장에 있지만 야망은 L2 솔루션을 훨씬 뛰어 넘습니다. Matter Labs는 zkSync를 다양한 zkSync 기반 롤업을 원활하게 연결하도록 설계된 포괄적인 크로스체인 생태계의 기반으로 구상합니다. 이 목표를 달성하기 위해 zkSync는 zkRollup 기술, ZK Chain 및 Hyperbridge를 통합하는 복잡하면서도 사용자 친화적인 크로스 체인 환경을 개발하고 있습니다. 각각의 개념을 살펴보겠습니다.
3.1.1 zkRollup——경제적 효율성 최적화
zkSync는 zk-SNARK의 증명 생성 및 검증 방법인 zk-SNARK를 기반으로 한 zkRollup 기술을 사용하여 증명 크기가 작고 검증 속도가 빠릅니다. 그러나 양자 저항성, 대규모 처리 등 zk-STARK의 장점이 더욱 부각되면서 zkSync도 부분적으로 zk-STARK를 도입하려고 노력하고 있습니다. 예를 들어 "Boojum"이라는 증명 생성 시스템은 zk-STARK를 사용합니다. 증명 생성 방법.
3.1.2 구조적 구성요소
시퀀서: zkSync의 시퀀서는 특정 규칙에 따라 트랜잭션을 정렬하고 처리합니다. Sequencer에는 자세히 볼 수 없는 증명 및 거래 데이터를 생성하여 Layer 1로 보내는 Prover가 포함되어 있습니다.
Prover: zkSync의 Prover는 zk-SNARK를 사용하여 증명을 생성합니다. 증명 생성 프로세스에 사용되는 데이터에는 자세히 볼 수 없는 트랜잭션 데이터와 L2 체인 상태 변경을 나타내는 상태 변경 전후 데이터가 포함됩니다. 생성된 증명은 레이어 1의 롤업 계약에 의해 확인됩니다.
정산: zkSync는 레이어 1 스마트 계약의 확인 및 업데이트를 위해 레이어 2에서 생성된 데이터를 사용합니다. 유효성 검사 문제가 발생하면 영향을 받은 일괄 처리의 트랜잭션이 업데이트되지 않습니다. 이 프로세스는 모듈 식이며 각 ZK Chain은 하나 이상의 스마트 계약을 연결하며 아래에 소개됩니다.
3.1.3 ZK체인
ZK Chain은 Layer 2를 넘어 zkSync가 제공하는 인프라를 포함하는 블록체인입니다. zkSync는 L3와 같은 프랙탈 구조를 포함하여 제한되지 않은 계층 구조를 채택하기 때문에 Layer 2 이상이라고 합니다.
현재 가장 잘 알려진 ZK 체인은 zkSync가 구축한 zkSync Era입니다. EVM과 호환되므로 간단한 dapp을 배포할 수 있습니다. 그러나 zkSync의 궁극적인 크로스체인 생태계 목표를 위해서는 서로 다른 ZK 체인 간의 관계가 중요합니다. zkSync는 미래의 다른 ZK 체인과 연결하는 방법에 중점을 둡니다.
ZK Chain을 활용한 환경의 예로는 Hyperbridge가 있습니다. 하이퍼브리지를 통해 사용자는 연결된 체인의 모든 자산을 체인별 지갑으로 편리하게 보낼 수 있습니다. 릴레이어는 사용자가 온체인 자산을 사용해야 할 때 자산의 연결, 파괴 및 발행을 용이하게 합니다.
예를 들어, 크로스체인 Uniswap을 사용하고 온체인 사용자가 1 ETH를 10,000 DAI로 교환하려는 경우 프로세스는 다음과 같습니다.
era.zksync 체인 지갑에서 "1 ETH → 10,000 DAI" 거래를 생성합니다.
중계자는 1 ETH를 uni.chain으로 전송하여 10,000 DAI로 교환합니다.
그런 다음 릴레이는 교환된 10,000 DAI를 era.zksync 체인으로 다시 전송합니다.
이러한 방식으로 사용자는 다른 체인에 대한 세부 정보를 알 필요 없이 zkSync 환경을 사용하여 크로스 체인 트랜잭션을 쉽게 수행할 수 있습니다.
3.1.4 EVM 호환성
zkSync는 현재 Solidity 및 Vyper와 99% 호환된다고 주장합니다. 처음에 zkSync는 더 적합하고 효율적인 zkEVM을 구현하기 위해 Rust와 유사한 언어인 Zinc를 지원합니다. 그러나 그들은 Solidity 호환성으로 초점을 전환하여 완전한 최적화를 보장하기 위해 2021년 9월부터 아연 개발을 중단했습니다.
3.2 스타크넷
Starknet은 zkRollup을 기반으로 한 레이어 2 솔루션이라는 점에서 zkSync와 유사하지만 기술 스택과 내부 기술이 다릅니다. 특히 zk-SNARK 대신 zk-STARK를 사용하고 자체 스마트 계약 언어인 Cairo를 사용합니다.
3.2.1 zk Rollup - 대용량 Rollup 처리에 중점
Starknet은 zk-STARK를 사용하여 롤업 관련 증명을 생성하고 확인합니다. zkSync와 마찬가지로 상태 변경 전후만 사용하여 레이어 1에서 롤업 데이터를 보다 효율적으로 관리합니다.
또한 Starknet은 zk-STARK를 사용하기 때문에 무신뢰 환경과 동시에 대량 의 트랜잭션을 처리할 수 있는 능력의 이점을 누리고 있습니다. 이로 인해 Starknet은 거래량이 많은 DeFi dApp 또는 게임 dApp을 위한 첫 번째 선택이 되었습니다.
3.2.2 구조적 특징
구조적으로 Starknet은 다른 zkRollups와 유사한 아키텍처를 채택합니다. 그러나 다른 점은 zk-STARK 영지식 증명 모델을 적극적으로 활용하고 독점 프로그래밍 언어인 Cairo를 통해 EVM 호환성을 유지한다는 것입니다.
출처: Starknet 아키텍처: 개요
시퀀서: Starknet의 시퀀서는 트랜잭션의 검증 및 실행을 관리하고 블록을 제안하는 데 중요한 역할을 합니다. 주요 기능은 트랜잭션을 일괄 처리하는 것입니다. 검증을 통과하지 못한 트랜잭션은 Sequencer에 의해 제한되며, 검증된 트랜잭션만 블록에 포함됩니다. Sequencer에는 완성된 롤업 데이터를 레이어 1로 보내는 역할을 담당하는 증명기도 포함되어 있습니다.
증명자: Starknet의 증명자는 zk-STARK를 사용하여 증명을 생성합니다. 증명 생성 프로세스 중에 증명자는 실행 추적을 생성하고 L2 체인의 상태 변경을 추적하여 상태 차이를 기록하기 위해 각 트랜잭션 실행 단계를 저장합니다. 증명 생성 프로세스에는 대량 의 컴퓨팅 리소스가 필요하며 병렬 처리를 지원하도록 설계되어 여러 증명자가 노동을 분배하고 동시에 작업을 수행할 수 있습니다.
정산: 레이어 2에서 생성된 데이터는 레이어 1(예: 이더)로 전송되며, 여기서 구성 요소는 트랜잭션을 수락하고 증명 및 상태 차이를 관리합니다. 이러한 구성 요소는 검증인 계약과 Starknet 핵심 계약이라는 두 가지 스마트 계약에 의해 처리됩니다. 검증인 계약은 레이어 2에서 받은 증명을 분석하고 문제가 발견되면 거래를 거부합니다. 증명의 유효성이 확인되면 제공된 상태 변경으로 레이어 1 체인을 업데이트하는 Starknet 핵심 계약으로 전송됩니다. 이 업데이트된 상태는 레이어 1 체인 블록에 추가되며 블록이 레이어 1의 프로세스를 통과하면 레이어 1의 영향을 받습니다.
3.2.3 EVM 호환성
Starknet은 Cairo 언어를 통해 고유한 EVM 호환성 경로를 개발하고 있습니다. Starknet에 스마트 계약을 배포하려면 Cairo를 사용해야 합니다. Cairo는 아직 많은 Solidity 기능을 지원하지 않지만, 개발자 수가 증가하고 있음에도 불구하고 Cairo는 커뮤니티 규모 및 채택 측면에서 여전히 Solidity에 뒤처져 있습니다.
Starknet의 스마트 계약 언어 Cairo는 Rust의 기능을 상속합니다. zk-STARK 증명 생성에 최적화되어 있으며 스마트 계약에 대한 증명을 효율적으로 실행하고 생성할 수 있습니다. Cairo 사용에 대한 장벽을 극복하면 데이터가 레이어 1에 안전하게 집계되어 더 나은 환경에서 스마트 계약을 배포하고 실행할 수 있습니다.
다음 표에는 Cairo와 Solidity의 주요 차이점이 요약되어 있습니다.
3.3 멀린 체인
Merlin Chain은 주로 이더 에 중점을 둔 회사인 Bitmap Tech가 개발한 비트코인 기반 레이어 2 zkRollup 솔루션입니다. Merlin Chain은 Polygon의 영지식 증명 기술을 기반으로 하며 Rollup 데이터를 Bitcoin L1에 안전하게 저장하면서 EVM과 호환되는 장점이 있습니다. 이처럼 멀린 체인은 “Make Bitcoin Fun Again”이라는 슬로건으로 BTC를 포함한 비트코인 네트워크 내 유동성을 높이고 생태계를 확장하는 것을 목표로 하고 있습니다.
3.3.1 zkRollup - 비트코인 기능에 대한 하이브리드 접근 방식
Merlin Chain은 zk-SNARK와 zk-STARK를 결합한 zkRollup 기술을 사용합니다. 처음에는 비트코인 네트워크의 구조적 특성이 튜링 불완전성으로 인해 비트코인 네트워크에서 ZKP를 직접 검증할 수 없었습니다. 하지만 Taproot 업그레이드 후에는 부분 검증이 가능해집니다. Merlin Chain은 Taproot를 사용하여 오프체인에서 생성된 롤업 데이터와 증명 데이터를 비트코인 네트워크에 기록합니다.
Merlin Chain에서 zkProver는 거래 데이터의 유효성을 확인하고 검증된 데이터를 기반으로 증거를 생성하는 역할을 담당합니다. 이 프로세스의 단계는 다음과 같습니다.
Merlin Chain의 시퀀스 노드는 현재 상태 정보를 데이터베이스에 저장합니다.
시퀀스 노드는 트랜잭션을 zkProver로 보냅니다.
zkProver는 트랜잭션 검증에 필요한 데이터를 검색하기 위해 데이터베이스에 액세스합니다.
zkProver가 거래 검증을 완료하면 증명을 생성하여 시퀀스 노드로 보냅니다.
이 프로세스에는 여러 단계가 포함됩니다. 먼저, Polygon zkEVM 팀이 개발한 zk 어셈블리 언어(zkASM) 기반의 zkEVM을 사용하여 트랜잭션을 검증하고 처리합니다. 그런 다음 결과 데이터는 zk-STARK의 대용량 처리 능력을 사용하여 집계 및 압축되어 Rollup의 경제성을 최적화합니다. 마지막으로, zk-SNARK는 일관된 증명 크기를 생성하는 증명을 생성하는 데 사용됩니다. 생성된 데이터와 증명은 탈중앙화 Merlin Chain 오라클 네트워크 환경에서 검증되고 Taproot를 통해 비트코인 네트워크에 업로드됩니다.
3.3.3 향후 업그레이드: 온체인 사기 방지
zkRollup은 이더 생태계의 L2 솔루션에 잘 작동하는 것처럼 보이지만(섹션 3.2.1에서 논의된 바와 같이), zkRollup 자체는 롤업 내 트랜잭션의 유효성과 정확성을 완벽하게 보장할 수 없습니다. 비트코인 네트워크 구조의 차이로 인한 격차를 해소하기 위해 멀린 체인은 낙관적 롤업과 유사한 온체인 사기 방지 메커니즘을 도입할 계획입니다.
온체인 사기 방지 메커니즘은 롤업 데이터 제안자와 도전자 간의 관계에서 작동합니다. 도전자가 롤업 데이터가 올바르지 않다고 생각하는 경우 비트코인 네트워크에 업로드된 거래 데이터, ZK 상태 정보 및 ZK 증명에 대해 이의를 제기할 수 있습니다. 대부분의 L2 트랜잭션은 비트코인 네트워크(L1)에서 재검증할 필요가 없지만, 이전에 제시된 롤업 데이터에 대한 챌린지가 발생하는 경우 해당 데이터와 트랜잭션을 다시 실행하고 검증해야 합니다. 캐릭터의 잘못이 밝혀지면 처벌을 받게 됩니다.
3.3.4 EVM 호환성
Merlin Chain은 zkProver에서 zkASM 기반 zkEVM을 사용하여 EVM 호환성을 달성합니다. 이를 통해 기존 이더 개발 도구 및 인프라를 사용하여 개발된 스마트 계약을 비트코인 네트워크에서 실행할 수 있으며, 이더 의 기능을 비트코인으로 확장할 수 있는 이점을 제공합니다.
3.4 SNARK나도
SNARKnado는 zk-SNARK를 사용하여 구현된 Alpen Labs의 비트코인 기반 레이어 2 솔루션입니다. Alpen Labs는 SNARKnado를 활용하여 블록체인을 계산보다는 검증에 더욱 집중하게 하여 비트코인 생태계의 확장성과 효율성을 높이는 것을 목표로 합니다.
3.4.1 zkRollup - BitVM의 후속 제품
SNARKnado는 BitVM Optimism 접근 방식에 사용되는 증명자-도전자 구조를 차용한 zk-SNARK에 대해 더욱 최적화된 수정된 모델입니다. 이는 BitVM에 비해 성능이 약 8배 향상됩니다. 그러나 SNARKnado는 현재 허용된 역할에 대한 도전 기능을 제한하기 때문에 누구나 도전을 시작할 수 있도록 허용하는 BitVM2의 이점에는 여전히 부족합니다.
3.4.2 구조적 특징
증명 검증 방법 - 이분법 다항식
zk-SNARK를 사용하면 SNARKnado가 더 작은 증명 크기로 비트코인의 롤업 데이터 및 증명 데이터를 관리할 수 있지만, 복잡한 계산에 대한 비트코인의 한계로 인해 증명 검증의 최적화가 필요합니다. SNARKnado는 이분법 다항식을 사용하여 증명 데이터를 변환하여 이 문제를 해결합니다. 검증 프로세스는 Taproot 업그레이드로 활성화된 온체인 계산을 통해 이루어집니다.
증명자는 도전을 받으면 도전에 필요한 일부 데이터를 공개하고 도전자와 함께 검증 프로세스를 진행합니다. 검증에서는 어느 행위자(증명자 또는 도전자)에게 잘못이 있는지 확인하기 위해 이분 다항식 방법이 사용됩니다.
3.4.3 SNARKnado 및 BitVM 또는 BitVM2
SNARKnado는 BitVM과 많은 유사점을 가지고 있으며 특히 BitVM과 BitVM2 사이의 중간점으로 나타납니다. 그렇다면 그들 사이의 차이점은 무엇입니까? (BitVM2는 BitVM보다 고급 모델이므로 비교에서는 주로 BitVM2에 중점을 둡니다.)
먼저, 비트코인 내부 자원의 사용을 고려하십시오. BitVM2는 본질적으로 온체인 리소스 사용량의 선형 증가를 보여주는 반면, SNARKnado는 이러한 증가를 제곱근 수준으로 줄여 온체인 리소스 사용량을 최적화합니다. 또 다른 차이점은 도전을 할 수 있는 캐릭터의 접근성이다. SNARKnado는 허용된 역할로 챌린지를 제한하는 반면, BitVM2에서는 누구나 허가 없이 챌린지를 발행할 수 있습니다.
3.4.4 EVM 호환성
Alpen Labs의 최신 기록에 따르면 EVM 호환성은 아직 공식적으로 지원되지 않으며 현재 EVM 호환성에 대한 향후 계획도 없습니다.
4. 미래를 내다본다
최근 zkRollups 메인넷 출시를 되돌아보면 2023년 8월 zkSync Era, 2023년 12월 Polygon zkEVM 출시를 보았습니다. 이들 프로젝트는 출시된 지 그리 오래되지 않았기 때문에 대부분은 아직 활발하게 개발 중입니다. 또한, 개발 범위는 더 이상 zkEVM으로 제한되지 않습니다. 일반 zkVM, zkWasm 및 오프체인 보조 프로세서도 사용자 정의 zk 경로를 사용하여 구현 부분에서 개발 중입니다.
기본 실행 및 증명 생성의 신뢰성이 높아짐에 따라 공급망 효율성을 향상하려는 노력이 진행 중입니다. 전략에는 증명자 시장 구축, 여러 증명 집계, 비용 효율적인 검증을 위한 검증 레이어 생성이 포함됩니다. 앞으로 zkRollups의 공급망은 더욱 효율적이고 저렴해질 것으로 예상됩니다.