하드코어 과학: 동물원을 예로 들어 zkSync 회로 작동 원리 분석
作者:Haotian
많은 사람들이 @zkSync가 새로 발표한 동물원 과학 그림을 보고 혼란스러워하며, 동물원을 전기 회로에 비유하고, 특별한 능력을 가진 동물을 "논리 게이트"로, 동물들이 행복하게 단체 사진을 찍는 것을 "증명"으로 간주합니다. 이렇게 입력 회로의 데이터는 구체적인 내용을 공개하지 않은 채, 일련의 복잡한 계산을 거쳐 하나의 증명을 생성하여 제로 지식 증명 과정을 완료합니다. 자, 제가 하드코어하게 과학적으로 설명해 보겠습니다:
1) 동물원은 "전기 회로"에 해당하며, 전기 회로는 사실 일련의 논리 게이트 제약(덧셈, 뺄셈, 곱셈, 나눗셈 등의 공식)의 집합으로, 모든 동물들의 능력이 집중적으로 표현되는 것입니다. 이는 컴퓨터를 구성하는 기본 요소이기도 합니다. 따라서 회로에 입력되는 "데이터"는 반드시 다양한 공식에 맞춰 실행될 수 있어야 합니다.
layer2 환경에서는 거래 해시값, 계좌, 데이터 잔액 등의 데이터가 있으며, 이러한 데이터는 공식을 통해 계산될 수 있습니다. 만약 공식을 만들 수 없다면, 원시 데이터를 공식으로 변환하기 위해 다른 인코딩 변환이 필요하며, 이는 회로가 처리하는 전제 조건입니다.
2) 다양한 동물들은 회로 내의 논리 게이트에 해당하며, 동물원 모드에서는 다음과 같습니다: 나무 상자 ------ 공개되지 않는 숫자를 나타내며, "변수"라고 불립니다; 유리 상자 ------ 공개되는 숫자를 나타내며, "공개 입력"입니다; 돌 ------ 이동할 수 없는 숫자를 나타내며, "상수"로 간주됩니다;
얼룩말은 두 숫자가 "같은지" 비교하는 능력을 가지고 있으며, 결과가 같으면 얼룩말은 행복해합니다; 악어는 "작다"를 나타내며, 오른쪽 숫자가 왼쪽 숫자보다 작을 때만 악어가 행복해합니다; 거미는 더 복잡한 다중 선택 게이트를 나타내며, 입력이 0이면 반드시 true를 반환하고, 입력이 1이면 false를 반환합니다; 또한 비버는 나눗셈을 나타내고, 다람쥐는 백분율을 나타낼 수 있습니다; 애벌레는 덧셈을 나타냅니다. 서로 다른 동물들은 서로 다른 덧셈, 뺄셈, 곱셈, 나눗셈 공식을 나타내며, 동물들이 행복하거나 슬퍼하는 것은 공식 계산의 구조를 나타냅니다.
여러 동물 + 다양한 종류의 상자가 조합되어 하나의 회로를 형성합니다. 예를 들어, 공식 2x + 3 = Y를 계산해야 할 경우, x는 나무 상자를 나타내고, Y는 돌을 나타내며, 2개의 나무 상자와 애벌레, 얼룩말 등이 작업을 위해 모여 마지막으로 해당 공식이 성립하는지 검증합니다. 주의할 점은, 왜 서로 다른 동물들이 서로 다른 능력을 가지고 있는지에 대해 고민할 필요가 없다는 것입니다. 이것이 바로 회로 요소의 작동 기본 원리이며, 컴퓨터가 계산을 수행하는 기본 규칙입니다.
복잡한 회로는 다양한 동물(논리 게이트)과 상자(규칙)가 함께 구성됩니다.
3) 방금 입력한 공식 2x + 3 = Y가 성립했다고 가정하면, 이는 얼룩말, 애벌레 등의 동물이 모두 행복해졌다는 것을 의미하며, 그러면 해당 공식에 대한 "증명"이 생성됩니다. 이 증명이 정확한지 인식할 수 있는 역할이 필요합니다. 따라서 증명의 신뢰성을 보장하기 위해, 동물원 관리자 즉 회로의 구축자는 Zeek라는 특별한 동물을 시뮬레이션했습니다. Zeek는 다른 동물들이 행복한지 확인할 수 있으며, layer2 시스템에서 Verifier에 해당합니다.
Zeek가 동물들이 행복한지를 관찰하는 과정은 사실 Prover 시스템의 검증 과정이며, 모두 행복하면 검증이 통과되고, 증명이 실제로 메인넷에 업로드되어 최종 확인됩니다. 물론, 동물원에는 수천 수만 마리의 동물이 있어 많은 증명이 생성되며, Zeek가 하나하나 확인할 수는 없으므로, Zeek는 수천 수만 개의 Zeek 자신의 분신 상태가 행복한지를 관찰할 수 있습니다. 이 과정을 Recursive Proof(재귀 증명)이라고 합니다.
4) 사진 촬영 과정은 SNARK 증명 또는 KZG 약속을 생성하는 과정에 해당하며, 인쇄된 필름은 STARK\SNARK 증명 자체에 해당합니다. 동물원의 방문객은 하나하나 들어오는 Transaction 거래에 해당하며, 동물들이 행복하게 단체 사진을 찍어야만 Proof 증명이 완료되고 생성됩니다. 최종적으로 방문객이 사진을 들고 동물원을 나가야만 증명이 남아 체인에 올라가 최종적으로 확정됩니다.
하나의 동물원에는 많은 동물이 있으며, 동시에 모두 행복하고 정해진 규칙에 따라 작업할 수는 없습니다. 많은 논리 게이트가 존재하므로 연결이 끊어지는 등의 상황이 발생할 수 있습니다. 이로 인해 일부 혼잡, 지연 및 오류가 발생할 수 있으며, 따라서 무효 상태 전환이 발생하고, Under-Constrained가 되어 최종 검증을 통과할 수 없습니다.