Cysic: ZK 산업에서 zkVM는 어떻게 새로운 패러다임이 되는가? -(7)
zkVM이란 무엇인가?
가상 머신(VM)은 컴퓨터 과학에서 오래된 주제로, 다른 프로그램을 실행할 수 있는 프로그램입니다. 예를 들어, 이더리움 가상 머신(EVM)은 이더리움 스마트 계약을 실행할 수 있으며, 지원하는 명령은 이 노란색 논문에서 명시되어 있습니다. 우리가 알다시피, 제로 지식 증명 시스템은 회로를 포함하므로 zkVM은 지원하는 명령 시퀀스를 실행할 수 있는 회로입니다. 실행 결과 외에도, zkVM은 명령 시퀀스에 해당하는 VM 실행 트레이스가 유효함을 보여주는 증명을 출력합니다.
간단히 말해서, zkVM은 VM을 실행하는 ZK 회로입니다.
zkVM 설계에서 고려할 가치가 있는 두 부분이 있습니다:
· 지원하는 명령 세트: 이는 VM이 수행할 수 있는 작업을 의미합니다. 이 분야에는 Risc0, Succinct, Starknet, Polygon, Metis 등과 같은 몇몇 기존 플레이어들이 있으며, 이들은 RISC-V, MIPS 또는 맞춤형 명령 세트와 같은 다양한 명령 세트에서 작업합니다.
· ZK 아키텍처: 이 부분은 실행 결과와 함께 생성되는 ZK 증명을 포함합니다. ZK 아키텍처는 대부분 기본 VM 설계와 무관하지만, 여전히 고려해야 할 미묘한 균형 작업이 있습니다.
zkVM 설계에서 주목할 만한 특징은 연속성(continuations, RISC0에서 나온 개념)입니다. zkVM 실행에서 연속성은 대규모 프로그램을 독립적으로 계산하고 증명할 수 있는 여러 부분으로 나누는 메커니즘입니다. 이는 다음 그림에서 보여지는 바와 같습니다:
