By Frank, PANews
4월 10일, a16z Crypto는 블록체인 확장 작업의 속도를 높이고 단순화하도록 설계된 zkEVM 솔루션인 Jolt를 출시했습니다. jolt는 SNARK 영지식 증명을 통합하여 개발자가 SNARK 기반 L2 솔루션을 만드는 데 도움이 되는 EVM 호환 롤업을 위한 프레임워크를 제공합니다. 개발팀은 Jolt가 현재 zkVM에 비해 "두 배 더 빠르다"고 말합니다.
Jolt의 기술 원리는 좀 더 복잡하기 때문에 여기에 관련된 몇 가지 기술 용어 간의 관계에 대해 간략하게 설명해드리겠습니다:
zkSNARK는 강력한 영지식 증명 프리미티브로, zkVM과 zkEVM 구축의 기초가 됩니다.
zkVM은 임의의 명령어 집합을 지원하는 일반적인 영지식 가상 머신 개념입니다.
zkEVM은 zkVM의 특수한 경우로, 특별히 EVM과 호환되도록 설계되었습니다.
ZK 롤업은 개인 정보 보호를 염두에 두고 이더넷의 확장성을 개선하기 위해 zkVM 또는 zkEVM을 사용합니다.
Jolt란 무엇인가요?
Jolt는 zkVM(제로 지식 가상 머신)을 보다 깔끔하고 효율적으로 구축하는 방법을 제공하는 새로운 SNARK 솔루션입니다. 사실, 2023년 8월에 올가미와 Jolt 관련 개념으로 a16z 암호가 소개되었습니다. 이 두 기술은 느리고 비용이 많이 드는 SNARK 기술이 존재한다는 맥락에서 제안되었습니다.
올가미는 증명자 비용을 크게 줄여주는 새로운 조회 매개변수이며, 올가미를 사용하여 소위 zkVM 및 더 넓은 프론트엔드용 SNARK 설계를 위한 새로운 프레임워크를 제공하는 Jolt는 함께 SNARK 설계의 성능, 개발자 경험 및 감사 가능성을 개선하여 웹3. 따라서 블록체인 공간에서 영지식 증명의 사용을 향상시킵니다.
Jolt를 이해하기 전에 zkVM과 zkEVM에 대한 이해가 필요할 수 있습니다.
zkVM은 영지식 가상 머신을 지칭하는 일반적인 개념입니다. zkEVM과 유사하게, zkVM은 C++나 Rust와 같은 고급 언어로 프로그램을 작성한 다음 가상 머신이 프로그램을 일종의 중간 표현(예: 회로 또는 산술 제약 조건)으로 컴파일한 다음 zkSNARK와 같은 증명 시스템을 사용하여 중간 표현의 실행을 증명하는 것을 허용합니다. zkEVM과 달리 zkVM은 EVM 호환성에 국한되지 않고 임의의 명령어 집합을 지원합니다. jolt는 RISC-V 명령어 집합을 위한 고성능 zkVM 구현입니다.
개인 정보를 보호하면서 미리 정의된 절차에 따라 실제로 연산을 수행한다는 것을 외부에 증명할 수 있는 특별한 '블랙박스'라고 생각할 수 있습니다. 하지만 기존의 zkVM은 이러한 증명을 생성하기 위해 지루한 계산을 많이 수행해야 하기 때문에 성능이 매우 낮습니다.
Jolt의 핵심 혁신은 이 증명을 생성하는 훨씬 더 효율적인 수학적 방법을 찾는 것입니다.
먼저, Jolt는 증명 계산을 '계산 다항식'이라고 부르는 특수 다항식으로 영리하게 변환합니다. 이 다항식은 블랙박스가 실제로 계산을 올바르게 수행한 경우에만 그 값이 0과 같다는 특징이 있습니다.
"계산 다항식"의 값이 0과 같다는 것을 증명하기 위해 Jolt는 "sumcheck"라는 대화형 프로토콜을 사용합니다. 이 프로토콜을 사용하면 검증자는 전체 다항식을 실제로 계산하지 않고도 짧은 시간 내에 다항식이 0이라는 것을 확신할 수 있습니다. 이는 교사가 학생의 몇 가지 문제만 확인하여 전체 시험지가 맞는지 확인하는 것과 다소 유사합니다.
Jolt의 기술적 장점
Jolt의 기술적 원리는 매우 복잡하면서도 간단합니다. 블록체인 네트워크 개발에서 zkVM은 블록체인 네트워크의 확장성을 향상시키는 핵심 기술이며, 프라이버시를 보호하면서 효과적인 증명을 제공할 수 있습니다.비탈릭은 최근 홍콩에서 열린 웹3 카니발 기조연설에서 zkSNARK 기술에 대해 자세히 설명했으며, 비탈릭은 다음과 같이 말했습니다. 개인 정보 보호 측면에서 매우 유용하고 확장성 측면에서도 매우 유용합니다."라고 말했습니다.
그러나 증명 생성의 속도와 계산 오버헤드는 zkSNARK 기술의 실용성에 대한 주요 과제였으며, 최근 몇 년간 학계와 업계의 주요 관심사였습니다. 피노키오와 Groth16과 같은 기존의 zkSNARK 체계는 복잡한 계산 로직을 증명할 때 증명 생성에 몇 시간 또는 며칠이 걸릴 수 있으며, 많은 양의 메모리와 스토리지 리소스를 소모합니다. 이러한 성능 병목 현상은 많은 실제 시나리오에서 zkSNARK의 적용을 심각하게 제한합니다.
블록체인을 대규모로 적용하고 실시간 검증의 효과를 얻고자 하는 경우에도 마찬가지입니다. zkSNARK의 성능을 개선하는 것은 매우 중요한 단계입니다.

특히 zkSNARK의 증명 생성 과정에는 타원 곡선 쌍, 다항식 보간 등과 같은 복잡한 암호화 알고리즘이 포함되며, 이러한 연산에는 많은 계산 리소스가 소모됩니다. 특히 증명하는 계산 회로의 크기가 클 경우 증명 생성의 계산 복잡도는 기하급수적으로 증가합니다.
a16z Crypto에 따르면 초기 Jolt 구현은 CPU에서 RISC Zero보다 약 6배, 최근 출시된 SP1보다 2배 빠르며, 향후 몇 주 안에 Jolt의 속도가 약 1.5배 향상될 것이라고 합니다.
Jolt는 이미 기존 zkVM보다 2배 이상 빠르지만 아직 최적화의 여지가 많습니다.
또한 Jolt는 다항식의 특정 대수적 특성을 영리하게 활용하여 보다 효율적인 다항식 커미트먼트 체계를 구현합니다. 이를 통해 증명의 크기와 검증 시간을 더욱 줄일 수 있습니다.
Jolt가 가져올 수 있는 변화
엔지니어링 관점에서 볼 때, Jolt는 하드웨어의 연산 능력을 극대화하기 위해 더 컴팩트한 회로 설계, 더 효율적인 파이프라이닝, 더 완전한 병렬화 등 여러 가지 최적화를 사용합니다.
이더리움에 온체인 포커 게임을 배포하려는 웹3.0 개발자가 있다고 가정해 봅시다. 이 게임에는 온체인에서 셔플, 딜링, 카드 크기 비교 등이 필요하며, 이러한 각 작업에는 개인 정보 보호와 검증 가능성을 위해 zkVM 회로가 필요합니다.
ZoKrates나 bellman과 같은 기존 zkVM 솔루션을 사용하는 경우, 이러한 회로를 구축하는 데 몇 시간 또는 며칠이 걸릴 수 있습니다. 현재의 zkVM 성능은 여전히 상대적으로 낮기 때문에 복잡한 회로의 영지식 증명을 생성하려면 상당한 계산 리소스와 시간 오버헤드가 필요합니다. 이는 개발 및 테스트 주기가 매우 길어질 수 있음을 의미합니다.
그리고 동일한 회로를 구축하는 데 Jolt를 사용한다면 상황은 극적으로 달라집니다. Jolt 팀의 테스트에 따르면, 현재 Jolt 구현은 이미 주류 zkVM 솔루션보다 2~5배 빠른 속도로 증명을 생성합니다. 즉, 증명을 생성하는 데 10시간이 걸렸다면 이제는 2~5시간밖에 걸리지 않을 수 있습니다.

전반적으로 Jolt가 제공하는 2~5배의 성능 향상은 zkVM 기술의 유용성과 사용 편의성이 극적으로 개선되었음을 의미합니다. 이는 Web3 개발자의 장벽을 크게 낮추고 애플리케이션 개발 주기를 단축하는 동시에 최종 사용자에게 더 나은 경험을 제공할 것입니다. 장기적으로 Jolt는 zkVM 기술의 대중적 채택을 가속화하여 모든 Web3 사용자에게 더 많은 개인정보 보호 및 검증 가능한 컴퓨팅 성능을 제공할 것으로 기대됩니다.
물론 Jolt는 아직 개발 초기 단계에 있으며 2~5배의 성능 향상은 시작에 불과합니다. Jolt 기술의 지속적인 반복 최적화를 통해 zkVM의 성능은 더욱 획기적으로 향상되어 궁극적으로 Web3의 대규모 적용을 실현할 수 있는 기반을 마련할 것입니다.





