저자: 0XNATALIE 출처: Chainfeeds
블록체인의 확장성과 연산 효율성 및 계산 효율성을 추구하기 위해 영지식 증명(ZKP) 기술이 특히 중요합니다. zkVM(영지식 가상 머신)은 이 기술의 구체적인 응용 중 하나입니다. zkVM은 실행 내역을 공개하지 않고 계산의 정확성을 검증할 수 있는 ZKP 기반의 범용 계산 플랫폼으로 사용할 수 있으며, 계산 볼륨의 오프체인 처리도 지원합니다. 또한 연산량이 많은 작업의 오프체인 처리를 지원하고 검증 결과만 블록체인에 제출하여 블록체인의 확장성을 크게 향상시킵니다. 현재 시장에서는 a16z, Taiko, ZKM 등 여러 프로젝트에서 zkVM 솔루션을 개발 중입니다.
zkVM 소개
zkVM은 영지식 증명 기반의 범용 컴퓨팅 플랫폼으로 스마트 컨트랙트 실행, 데이터 처리, 복잡한 알고리즘 연산 등 다양한 계산 작업을 수행합니다. 핵심 기능은 실행 세부 정보를 공개하지 않고 계산의 정확성을 검증하는 영지식 증명을 생성하는 것입니다. SNARK를 사용하면 이러한 증명을 오프체인에서 검증할 수 있으며 검증자는 비싼 계산 비용을 들여 블록체인에서 전체 연산을 다시 실행할 필요가 없습니다.
또한, zkVM은 암호화폐 거래를 넘어서도록 설계되었으며, 다용도로 사용할 수 있어 데이터 보안을 보장하면서 처리 로직의 정확성을 검증해야 하는 의료 데이터 처리, 공급망 관리, 비밀 투표 시스템 등 다양한 애플리케이션 시나리오에 배포할 수 있습니다.
zkVM과 다른 가상 머신 비교 가상 머신
기존 가상 머신(VM)은 일반적으로 물리적 하드웨어에 가상화된 완전한 컴퓨팅 환경을 의미하며, 하드웨어 환경을 에뮬레이션하고 여러 운영 체제 또는 애플리케이션을 동일한 물리적 하드웨어에서 실행할 수 있도록 하는 것이 핵심 기능입니다. 이러한 VM은 주로 하드웨어 가상화 기술과 운영 체제 수준 격리를 통해 기능을 수행합니다. 일반적으로 가상 머신에서 실행되는 애플리케이션이나 데이터를 암호화하여 인증하는 프로세스는 포함하지 않습니다.
영지식 가상 머신(zkVM)은 영지식 증명 기술을 사용하여 프로그램 실행 프로세스의 정확성을 보장하며, 이는 가상 머신에서 컴파일 및 실행할 수 있는 모든 프로그램에 적용됩니다. zkVM은 다양한 애플리케이션 시나리오를 위한 범용 계산 검증 플랫폼을 제공하는 데 중점을 두고 설계되었으며, 다음과 같은 사항을 지원합니다. Rust, C/C++, Go 등 다양한 프로그래밍 언어를 지원하므로 개발자는 익숙한 언어로 애플리케이션을 빌드할 수 있습니다. 영지식 증명을 생성하는 것은 많은 양의 계산 리소스를 필요로 하는 계산 집약적인 프로세스이기 때문에 계산 및 검증 프로세스는 기존 VM보다 시간이 더 오래 걸리는 경우가 많으며, 이는 트랜잭션 처리 속도(TPS)를 크게 제한합니다. 현재의 영지식 증명 기술은 개별 증명 생성에는 상당한 진전이 있었지만, 부하가 높은 조건에서 대규모 트랜잭션을 처리하는 데는 여전히 한계가 있습니다. 각 증명을 생성하는 데 몇 초에서 몇 분까지 걸릴 수 있어 대규모 결제 처리 시스템과 같이 높은 처리량이 필요한 애플리케이션에는 한계가 있습니다.
zkEVM은 영지식 증명을 통해 이더의 확장성을 향상시키는 것을 목표로 이더 생태계를 위해 설계된 zkVM의 특정 구현입니다. 이더리움 스마트 컨트랙트 및 솔리디티, 바이퍼와 같은 개발 도구와 완벽하게 호환되며, 기존 이더리움 애플리케이션을 수정 없이 zkEVM으로 원활하게 마이그레이션할 수 있습니다. 결과적으로 zkEVM은 이더리움에 특별히 최적화된 버전이라고 할 수 있습니다.
ZkVM 관련 프로젝트
zk 기술의 어려움에도 불구하고, 시장에는 zkVM 솔루션 개발에서 기술력을 입증한 여러 프로젝트가 있습니다.
Jolt: 뛰어난 성능
4월 9일, a16z는 더 빠르고 개발자가 쉽게 확장하고 개발자가 코드를 확장하고 감사하기가 더 쉬워졌습니다.
스타크 프레임워크 기반의 다른 zkVM과 달리 Jolt는 올가미 조회 매개변수와 합계 검사 기반 기술을 활용합니다. 이 혁신적인 접근 방식은 새로운 가상 머신 명령어의 구현을 간소화할 뿐만 아니라 시스템의 전반적인 속도를 향상시킵니다. 사용 편의성과 효율성에 중점을 두고 설계된 Jolt의 코드베이스는 매우 간결하여 Jolt의 각 CPU 명령어를 단 50줄의 Rust 코드만으로 구현할 수 있습니다. 또한, Jolt는 예비 벤치마크에서 영지식 증명을 RISC Zero보다 5배 이상, SP1보다 2배 이상 빠르게 수행하여 탁월한 성능을 자랑합니다.
RISC Zero: 복잡한 계산을 효율적으로 처리
RISC Zero는 증명 중첩을 지원하는 재귀적 방법론을 특징으로 하는 재귀적 SNARK 구조를 가진 zkVM입니다. 재귀적 접근 방식입니다. SNARK에서 재귀를 사용하면 복잡한 증명을 더 작고 관리하기 쉬운 증명으로 세분화할 수 있습니다. 이러한 작은 증명은 독립적으로 검증되고 결국 하나의 큰 증명으로 병합될 수 있으며, 이 과정은 증명의 유효성에 영향을 미치지 않습니다. RISC Zero의 고유한 재귀 구현은 여러 계층의 증명을 단일 증명 체인으로 원활하게 통합하여 계산 부하와 처리할 데이터의 양을 줄일 뿐만 아니라 여러 계산 단계에서 검증 과정의 보안과 무결성을 유지합니다. 여러 계산 단계에 걸쳐 무결성을 유지합니다.
RISC Zero의 또 다른 독특한 특징은 확장성과 확장성을 위해 설계된 개방형 표준 ISA(명령어 집합 아키텍처)인 RISC-V 명령어 집합을 사용한다는 점입니다. 이러한 선택 덕분에 RISC Zero는 광범위한 도구 및 지원 에코시스템을 활용할 수 있어 독점적이거나 덜 일반적인 아키텍처를 사용하는 다른 zkVM보다 기존 시스템에 더 쉽게 액세스하고 통합할 수 있습니다.
지난해에는 4천만 달러 규모의 시리즈 A 펀딩 라운드를 성공적으로 마감했습니다. 이 라운드는 블록체인 캐피털이 주도했으며, 베인 캐피털 크립토, 갤럭시 디지털, IOSG 벤처스, 록어웨이엑스, 메이븐 11, 펜부시 캐피털, 델파이 디지털 등 유명 투자자들이 참여했습니다. 등이 있습니다.
간결합니다: 개발자 친화
Succinct는 유연성과 사용 편의성을 높이기 위해 Rust 또는 LLVM으로 컴파일할 수 있는 다른 언어로 작성된 코드를 실행하도록 맞춤화된 zkVM SP1을 개발했습니다. SP1은 개발자가 기능을 사용자 지정하고 확장하기 위해 "사전 컴파일"할 수 있는 모듈식 아키텍처를 지원합니다. SP1은 개발자가 '사전 컴파일'을 통해 기능을 사용자 지정하고 확장할 수 있는 모듈식 아키텍처를 지원합니다. 사전 컴파일은 개발자가 추가하거나 수정할 수 있는 특정 모듈을 의미하며, 이를 통해 핵심 VM을 향상시켜 특정 작업이나 작업을 보다 효율적으로 처리할 수 있습니다.
또한, SP1은 증명의 배포와 실행을 간소화하는 분산형 증명 네트워크를 구축하여 고급 암호화 방법 사용의 장벽을 낮춥니다. 이 네트워크를 통해 개발자는 클릭 한 번으로 효율적으로 증명을 생성할 수 있으며, 간소화된 접근 방식을 제공합니다.
3월에 Succinct는 5,500만 달러 규모의 펀딩 라운드를 마감했습니다. 이 펀딩은 Paradigm이 주도했으며 로봇 벤처스, 뱅크리스 벤처스, 지오메트리, 그리고 엔젤 투자자 아이겐레이어의 Sreeram Kannan과 폴리곤의 공동 설립자 Sandeep Nailwal 등이 참여했습니다(5월 13일). Succinct가 SP1 테스트 네트워크의 출시를 발표했습니다.
타이코: 멀티프로비저닝 시스템
타이코는 zkEVM 사용에서 zkVM으로 전환하기 시작했으며, zkVM은 다중 증명 시스템을 사용한다는 점에서 독특합니다. 다중 증명 개념은 비탈릭이 도입한 것으로, 타이코는 이를 구현한 최초의 프로젝트로서 5월 말 메인넷에서 이를 직접 지원할 예정이라고 밝혔습니다. 이 시스템을 통해 타이코의 zkVM은 여러 유형의 증명을 생성할 수 있어 시스템의 보안과 견고성을 높일 수 있습니다. 증명 유형 중 하나에 문제가 발생하더라도 다른 증명 유형은 시스템이 계속 작동하고 잘못된 상태 전환이 적시에 감지되도록 보장할 수 있습니다. 또한 Halo2-KZG 증명 시스템이 사용되어 복잡한 연산과 대규모 트랜잭션을 효율적이고 비용 효율적으로 처리할 수 있습니다.
3월에 타이코는 라이트스피드 팩션, 해시드, 제너레이티브 벤처스, 토큰 베이 캐피탈이 공동 주도한 1,500만 달러 규모의 시리즈 A 투자 라운드를 마감했으며, Wintermute. 벤처스, 플로우 트레이더스, 앰버 그룹, OKX 벤처스, GSR이 참여했습니다.
ZKM: MIPS 단순하고 안정적인 아키텍처
ZKM은 Metis 재단에서 인큐베이팅하는 zkVM 프로젝트로, MIPS 아키텍처를 영지식 증명 기술과 결합하여 zk 가상 머신을 생성합니다. 이 설계는 ZKP가 시스템 내에서 계산이 처리되는 방식과 더 잘 호환되도록 하여 작업 속도를 높이고 ZKP 프로토콜만 구현하는 것과 관련된 계산 오버헤드를 줄입니다. 그리고 대부분의 최신 zkVM은 Rust 언어를 사용하지만, ZKM은 Golang에 대한 기본 지원을 제공합니다.
MIPS(연동 파이프라인 스테이지가 없는 마이크로프로세서)는 1세대 씬 명령어 세트 컴퓨터 아키텍처입니다. MIPS 명령어 세트는 비교적 간단하고 안정적이며 다양한 컴퓨팅 장치 및 임베디드 시스템에서 사용할 수 있고 범용성과 적응성이 우수합니다. MIPS 아키텍처 기반의 ZKM 시스템은 보다 쉽게 개발 및 배포할 수 있습니다.
zkMIPS는 전체 MIPS 프로그램을 세그먼트로 나눕니다. 각 세그먼트에 대해 명령어는 네 가지 유형으로 나뉘어 4개의 모듈 테이블로 그룹화됩니다. zkMIPS는 STARK 증명 방법을 사용하여 각 모듈 테이블의 명령어를 독립적으로 검증하여 테이블의 각 연산이 올바른지, 세그먼트의 각 명령어가 해당 모듈 테이블에 포함되는지 확인합니다. 그 후 각 세그먼트의 실행 순서가 전체 프로그램의 실행 순서와 일치하는지 확인합니다. 이러한 방식으로 체인 아래에서 실행된 프로그램도 체인 위로 검증할 수 있어 프로그램 실행의 투명성과 신뢰성을 높일 수 있습니다.
ZKM은 최근 신뢰 최소화를 위한 새로운 멀티체인 상호운용성 인프라, 엔탱글드 롤업을 도입하여 신뢰가 필요 없는 탈중앙화된 멀티체인 상호운용성 프레임워크를 구축하기 위해 zkMIPS를 활용하고 있습니다. 스냅샷을 통해서만 자산 전송을 검증하는 타사 zk 브릿지와 달리, 모든 계산을 검증할 수 있으므로 매우 안전합니다. 이러한 상호운용성의 핵심은 한 블록체인에서 생성된 다음 다른 블록체인에서 검증할 수 있는 공통 증명 메커니즘의 존재입니다. ZKM이 다른 zkVM과 차별화되는 점 중 하나는 모든 작업에 적용되는 영지식 증명을 생성하는 기능입니다. zKM은 기본 CPU/MIPS 아키텍처에 보안을 내장하여 아키텍처 상에 있는 모든 소프트웨어가 다음을 수행할 수 있도록 합니다. ZKM은 CPU/MIPS 아키텍처 하단에 보안을 내장하여 아키텍처 상단의 모든 소프트웨어가 각 소프트웨어에 대해 별도의 영지식 증명 프로세스 없이도 동일한 보안을 누릴 수 있도록 합니다.
또한 ZKM의 특징:
모든 VM과의 호환성: ZKM은 각 VM 아래에 위치하므로 광범위한 블록체인 인텔리전스와 호환됩니다. MoveVM(zkMVM), WASM(zkWASM), RustVM(zkRVM)과 같은 다양한 블록체인 스마트 컨트랙트 엔진 VM과 호환됩니다.
플러그 앤 플레이: 개발자는 기존 코드베이스를 변경하지 않고도 ZKM을 도입할 수 있습니다. 저렴한 비용으로 도입할 수 있으며 다양한 스마트 컨트랙트 언어 또는 기존 프로그래밍 언어도 사용할 수 있습니다.
장기적인 안정성: EVM의 변화에 대응하여 변경할 필요가 없는 MIPS 명령어 세트의 안정성으로 보다 안정적인 개발 환경을 제공합니다.
블록체인 기술이 계속 발전하고 첨단 기업들이 계속해서 zkVM의 성능을 탐구함에 따라, 암호화폐 세계에서 핵심 기술의 일부로서 zkVM이 점점 더 중요한 역할을 할 것으로 예상할 수 있습니다. 특히 데이터 민감도와 크로스체인 보안에 대한 수요가 증가하는 이 시점에 zkVM은 시장의 요구를 충족할 수 있는 기능을 제공합니다. 저희는 회로 최적화 및 증명 시스템 자체의 최적화와 같은 기술적 과제를 극복하여 다양한 프로그래밍 언어에 완벽하게 적합한 zkVM을 제공하고 더 많은 개발자가 새로운 웹 3.0 시대를 맞이할 수 있기를 기대합니다.