zkEVM의 이해
ZK는 영지식(Zero-Knowledge)의 약자로, 암호학 기술인 영지식 증명을 활용하는 일련의 프로토콜과 서비스를 의미한다. 이러한 증명을 통해 당사자는 기본 정보를 공개하지 않고도 다른 당사자에게 사실의 유효성을 증명할 수 있다(1). ZK-증명으로 대출 자격을 증명하는 과정에서 정확한 수입이 노출되지 않는 것을 상상해 보라. 또는 유권자의 신원과 선택이 공개되지 않으면서 투표가 유효하게 확인되고 개표되는 선거를 상상해 보라.
개인 정보 보호 외에도, ZK 기술은 ZK 롤업을 통해 확장성을 강화하여 레이어 2 블록체인 개발을 촉진하고 개선된 상호 운용성을 위해 안전한 크로스 체인 거래를 가능케 하며, 최소한의 수수료로 스마트 계약 실행을 최적화하는 데 도움이 된다.
ZK-롤업이란 무엇인가?
영지식 롤업(ZK-롤업)은 여러 거래들을 하나로 묶어 블록체인으로 전송되는 데이터의 양을 줄이는 레이어 2 확장 기술이다. 작동 방식은 다음과 같다:
- 거래 묶음화: ZK-롤업은 거래를 롤업이라고 하는 묶음으로 그룹화한다. 개별적으로 각 거래를 전송하는 대신 이러한 롤업에는 모든 거래를 나타내는 데 필요한 변경 사항들의 요약이 포함되어 있다.
- 오프체인 실행: 이러한 거래의 실행은 블록체인과 직접적으로 관련되지 않고 오프체인에서 이루어진다. 이로 인해 블록체인에 기록하는데 필요한 계산적 부하와 데이터의 크기가 줄어든다.
- 유효성 증명: ZK-롤업 운영자는 거래 묶음의 정확성을 증명하기 위해 유효성 증명을 생성한다. 유효성 증명은 제안된 이더리움 상태 변경이 전체 거래 배치의 실행 결과를 정확하게 반영한다는 것을 암호학적 신뢰성을 통해 보장한다(2).
EVM이란 무엇인가?
이더리움 가상 머신 (EVM)은 수천 대의 연결된 컴퓨터 전반에 걸쳐 작동하는 무형의 개체로서 모든 계정과 스마트 계약을 호스팅하면서 이더리움 시스템의 지속적인 동작을 보장한다(3).

그림 1. 이더리움 EVM을 응용한 다이어그램
출처: @0xbhagi on Ethereum
알아야 할 사항들:
- 상태 전이: 이더리움의 각 블록은 고유한 '상태'에 기여한다. EVM은 상태 전이라는 과정을 통해 상태를 관리한다. 블록 내의 각 거래는 상태 전이를 일으키고, 이는 현재 블록체인의 상태를 가져와 거래를 실행하여 새로운 상태를 만드는 과정을 포함한다.
- 스마트 계약 실행: 거래에 스마트 계약이 포함된 경우, EVM은 해당 계약의 코드를 실행하여 상태를 업데이트하거나 이벤트를 발생시키거나 다른 계약을 호출할 수 있다. EVM은 거래를 관리하여 거래가 유효하고, 올바르게 서명되었으며, 올바른 순서로 배치되었는지, 가스 수수료가 충분한지 확인한다.
- 머클 패트리샤 트리(Merkle Patricia Trie): 이더리움은 이 데이터 구조로 상태를 저장하고 데이터를 효율적으로 검증하며 업데이트 할 수 있을 뿐만 아니라 "상태 가지치기(state pruning)"와 같은 일부 고급 기능을 제공하여 블록체인 상태의 성장을 관리한다(4).
기억해야 할 점, EVM은 튜링 완전형(Turing-complete)이므로 충분한 리소스가 주어지면 어떤 알고리즘도 실행할 수 있다.
zkEVM이란 정확히 무엇인가?
EVM은 영지식 증명(ZKP)을 지원하지 않는다. 그렇기 때문에 zkEVM은 몇 가지 기능을 제공한다:
- 연속성 및 증명 보장: zkEVM은 ZK-롤업을 사용하여 이더리움 환경을 복제한다. 초기 상태를 가져와 거래를 처리하고, 갱신된 상태와 함께 ZKP라고 불리는 증명을 생성합니다. 이 증명은 그 후에 검증자 스마트 계약에 의해 확인되고, 각 거래를 검증하지 않고도 두 상태의 정확성을 보장한다.
- 호환성 및 개발 용이성: zkEVM은 EVM을 기반으로 구축되었기 때문에 개발자는 추가적인 ZKP 개발 작업 없이 기존 이더리움 디앱(dApps)과 스마트 계약을 zkEVM으로 쉽게 이식할 수 있다. 즉, 이전에는 불가능했던 스마트 계약, 토큰 교환 및 결제를 ZK 롤업으로 실행할 수 있다.
- 향상된 보안과 친숙함: EVM 호환성으로 인해 개발자들은 인기 있는 이더리움 프로그래밍 언어인 솔리디티(Solidity)와 같은 익숙한 도구를 사용하여 새로운 제품을 구축할 수 있다. 사용자들은 익숙한 디앱과 도구를 사용하면서 zkEVM이 제공하는 추가 보안과 개인 정보 보호를 누릴 수 있다(5).
zkEVM의 유형
각각 다른 방식으로 개인 정보 보호를 달성하는 다양한 유형의 zkEVM이 있다.

그림 2. 호환성 및 성능 상관관계에서 zkEVM의 유형
출처: 비탈릭 부테린의 웹사이트
유형 1 (완전히 이더리움과 동등)
이 유형은 이더리움을 포함하여 이더리움과 완전히 동일한 환경을 검증할 수 있다. 롤업 뿐만 아니라 이더리움 레이어 1을 확장할 수 있다. 인프라를 공유할 수 있기 때문에 롤업에 매우 편리하지만 이 유형으로 증명을 생성하는 데는 상당한 시간이 소요된다.
유형 2 (완전히 EVM과 동등)
이 유형은 이더리움과 매우 유사한 환경을 검증할 수 있지만 블록 구조와 상태 트리(주소와 계정 상태 간의 데이터 맵)와 같은 외부 기능에 약간의 차이가 있고, 이는 애플리케이션 레이어에 영향을 미치지 않는다. 거의 모든 이더리움 애플리케이션과 완벽하게 호환되며, 대부분의 인프라를 공유할 수 있다. 개선 사항이 있긴 하지만 이 유형으로 증명을 생성하는 데는 여전히 상당한 시간이 필요하다.
좋은 예로, 스크롤(Scroll)의 zkEVM 프로젝트는 현재 유형 2를 개발하기 위해 노력하고 있다. 그러나 아직 더 복잡한 사전 컴파일을 구현하는 과정에 있다. zkEVM 레이어 2 솔루션에 대한 자세한 내용은 KBW 2023에서 발표될 예정이다.

그림 3. 스크롤 관리자 @jordan이 2023년 4월 17일에 사용자에게 답변
출처: Scroll Discor
유형 2.5 (EVM과 동일, 가스 비용 제외)
이 유형은 가스 비용을 조정하여 EVM을 수정한다. 이로 인해 빠른 증명 생성이 가능하지만 일부 호환성 문제가 발생할 수 있다.
유형 3 (거의 EVM과 동등)
이 유형은 이더리움과 유사한 환경을 검증할 수 있지만 다른 해시 함수나 프리 컴파일(pre-compiles)의 부재와 같이 애플리케이션 레이어에 영향을 미치는 사소한 변경이 있는 경우, EVM 오버헤드 없이 복잡한 암호화 연산을 수행하는 계약을 검증할 수 있다. 이 유형은 대부분의 이더리움 애플리케이션과 완벽하게 호환되고, 상당량의 인프라를 공유할 수 있다. 이전 유형들에 비해 증명 생성 속도가 더 빠르다.
유형 4 (고수준 언어와 동등)
이 유형은 솔리디티 또는 바이퍼와 같은 고수준 스마트 계약 코드를 ZK-SNARK에 최적화된 언어로 컴파일한다. 이러한 최적화로 인해 증명 생성 프로세스의 속도를 크게 높일 수 있다. 그러나 일부 이더리움 애플리케이션과 호환되지 않으며, 기존 인프라를 많이 활용할 수 없다. 빠른 증명 생성 시간은 비용을 절감하고 중앙집중화된 위험을 줄이는 데 도움이 된다(6).
다양한 유형의 zkEVM은 전반적인 효율성 측면에서 명확한 순위를 매길 수 없다. 숫자가 낮은 유형은 속도가 느릴 수 있지만 기존 인프라와의 호환성이 더 좋을 수 있다. 반면에 숫자가 높은 유형은 더 빠를 수 있지만 호환성이 낮을 수 있다. 여러 프로젝트에서 다양한 zkEVM 유형을 탐색하는 것은 zkEVM과 이더리움의 지속적인 발전에 기여한다
zkEVM의 과제와 잠재력
초기에는 EVM이 ZKP 계산을 염두에 두고 설계되지 않았다. 이로 인해 특수 연산 코드, 스택 기반 아키텍처, 스토리지 오버헤드, 높은 증명 비용 등 증명 회로와 호환되지 않는 특정 특성이 발생했다. 따라서 이러한 미래로의 전환에는 상당한 시간이 소요될 것으로 예상된다.
앞으로는 ZK 롤업뿐만 아니라 이더리움 체인 자체의 검증도 지원하는 zkEVM의 다양한 구현을 기대할 수 있다. 이론적으로 이더리움은 클라이언트마다 서로 다른 증명을 활용할 수 있기 때문에 첫 번째 레이어(L1)에 단일 표준 zkEVM이 반드시 필요한 것은 아니다. 그 동안 이더리움 확장과 이더리움 기반 ZK 롤업의 채택을 향한 여정은 계속해서 발전할 것으로 기대된다.
참고자료
- Bitstamp Learn, ZK 기술이란 무엇인가요?, 2023년 1월 19일
- 이더리움의 @d1onys1us, 영지식 롤업, 2023년 5월 5일
- 이더리움의 @0xbhagi, 이더리움 가상 머신(EVM), 2023년 3월 18일
- 이더리움의 @nozotrox, Merkle Patricia Trie, 2023년 4월 18일
- 바이낸스 아카데미, ZkEVM이란 무엇이며 어떻게 이더리움 생태계를 향상시킬 수 있을까요?, 2023년 4월 14일
- 비탈릭 부테린, ZK-EVM의 다양한 유형, 2022년 08월 04일
- 스크롤, zkEVM의 설계 과제
M3TA Analytics — 웹사이트 | 트위터(Twitter) | 텔레그램(Telegram) | 서브스택(Substack) | 코인마켓캡(CoinMarketCap) | 스레드(Threads)
2022년에 설립된 M3TA는 웹3.0 및 신흥 블록체인에 특화된 AI 기반의 데이터 분석 플랫폼입니다. 저희 팀은 스탠퍼드(Standford), MIT와 포춘지(Fortune) 선정 300대 기업 출신의 전문가들로 구성되어 있고, 디파이(DeFi), NFT, 메타버스(Metaverse), 게임, 웹3.0 분야에서 경험이 풍부합니다. 저희는 또한 500개 이상의 프로젝트와 5천 개 이상의 토큰을 포함하는 10TB 이상의 데이터를 처리하여 모든 사용자층을 위한 명확한 통찰력을 제공합니다. 한국, 베트남, 동남아시아에서 탄탄한 인지도를 자랑하며, 현재 구글 클라우드(Google Cloud)와 팩트블록(FactBlock)을 비롯한 다양한 파트너 네트워크를 확보하고 있는 M3TA는 블록체인의 복잡성을 풀어나가는 신뢰할 수 있는 파트너입니다.
작성자 및 검토자: M3TA 애널리틱스의 리서치 분석가들과 콘텐츠 작가들
#zk #EVM #zkEVM #Ethereum #M3TA