ZK 롤업(Zero-Knowledge Rollup), 즉 제로지식 롤업(rollup)이라고도 알려진 이 기술은 이더리움 네트워크의 처리량을 높이기 위해 메인넷 외부에서 트랜잭션을 처리하는 확장 솔루션을 제공합니다. 이는 블록체인 트랜잭션을 더 빠르게 검증하면서 가스 수수료를 최소화하는 2계층 확장 솔루션입니다. [1]
ZK 롤업은 온체인 및 오프체인 프로세스를 결합하여 효율적이고 빠른 확장성 솔루션을 제공합니다. ZK 롤업의 구성 요소 중 하나인 머클 트리(Merkle trees)를 통해 1계층 블록체인보다 빠르게 트랜잭션을 검증할 수 있습니다. [1]
ZK 롤업은 온체인에 게시해야 하는 데이터 양을 줄이는 데 중점을 두면서 오프체인에서 계산을 수행하여 이더리움 메인넷의 확장 솔루션을 제공합니다. 수천 건의 트랜잭션을 일괄 처리한 다음 최소한의 데이터 요약만 메인넷에 게시하여 블록체인 확장성을 높이고 네트워크의 혼잡을 최소화합니다. ZK 롤업 프로토콜은 세 가지 주요 구성 요소로 이루어져 있습니다. 체인 간 상호 작용을 관리하는 스마트 계약, 2계층 체인에서 트랜잭션 유효성에 대한 암호화 증명을 생성하는 증명자(prover), 그리고 증명을 확인하고 스마트 계약에 제출하는 역할을 하는 검증자(verifier) 집합입니다. [1][2]
ZK 롤업은 제로지식 증명(ZKPs, zero-knowledge proofs)으로도 알려진 암호화 유효성 증명을 사용하여 번들된 트랜잭션을 검증합니다. 이러한 유효성 증명은 ZK 롤업의 상태를 업데이트하기 위해 이더리움(Ethereum) 블록체인에 배포된 스마트 계약에 제출됩니다. 이러한 접근 방식은 모든 트랜잭션 데이터가 아닌 유효성 증명만 온체인에 게시해야 하므로 낙관적 롤업과 비교하여 더욱 데이터 효율적인 솔루션을 제공합니다. [2][3]
상호 작용이나 신뢰 없이 온체인에서 트랜잭션을 검증하기 위해 암호화 유효성 증명을 사용할 수 있다는 점은 ZK 롤업의 중요한 기능입니다. ZK 롤업의 작동 방식에서 첫 번째 단계는 사용자가 트랜잭션에 서명하고 증명자에게 제출하는 것입니다. 증명자는 트랜잭션을 검증하고 대기열에 추가합니다. 그런 다음 증명자는 대기열에서 수천 건의 트랜잭션을 블록으로 일괄 처리하고 유효성에 대한 제로지식 증명(ZKP)을 생성합니다. 증명을 검증하는 데는 몇 밀리초밖에 걸리지 않으며, 트랜잭션 정보를 공개할 필요도 없습니다. 두 번째로, 증명자는 상태 루트(state root)와 트랜잭션 루트(transaction root)와 같은 소량의 데이터와 함께 증명을 단일 트랜잭션으로 이더리움 네트워크에 제출합니다. 마지막으로, 스마트 계약은 증명을 검증하고 그에 따라 상태를 업데이트합니다. 자금을 인출하려면 이더리움 블록에 제출되는 인출 요청이 필요합니다. 이에 따라 스마트 계약은 자금을 즉시 잠금 해제하고 이체합니다. ZK 롤업에서는 증명으로 검증되기 때문에 인출에 대한 대기 시간이 없습니다. 반면 낙관적 롤업은 완료하는 데 약 1주일이 걸릴 수 있습니다. [1][2][4]
ZK 롤업 프로토콜은 이더리움 상위에서 작동하며 스마트 계약에 의해 관리됩니다. 핵심 아키텍처는 온체인 계약과 오프체인 가상 머신(VM)의 두 가지 구성 요소로 이루어져 있습니다. [2]
이더리움 네트워크는 ZK 롤업의 기본 계층(1계층) 역할을 합니다. 롤업 블록을 저장하고, 상태 업데이트를 모니터링하고, 예치를 추적하는 주 계약을 포함한 네트워크의 스마트 계약은 ZK 롤업 프로토콜을 제어합니다. 검증자는 블록 생성자가 제출한 제로지식 증명을 검증하는 온체인 계약이기도 합니다. [2]
오프체인 VM은 ZK 롤업 프로토콜의 보조 계층(2계층) 역할을 합니다. 여기서 트랜잭션 실행 및 상태 저장이 이루어지며 트랜잭션의 유효성도 검증됩니다. 이더리움 메인넷에서 유효성 증명이 검증되면 오프체인 VM의 상태 전환이 보장됩니다. [2]
ZK 롤업 유형을 결정하는 다양한 요소는 증명 시스템, 회로 설계 및 데이터 가용성 솔루션입니다. [1]