
이론에서 실천으로, ZK의 무한한 가능성을 해제하다
정리: LXDAO
제로지식 증명(Zero-Knowledge Proofs) 기술은 뛰어난 개인정보 보호 능력으로 데이터 보안 분야의 별처럼 빛나는 존재가 되었으며, 암호화 산업에서 한때 가장 인기 있는 키워드로도 등극한 바 있습니다. 그러나 ZK 기술의 깊이와 복잡성은 이 분야를 탐구하고자 하는 많은 학습자들에게 큰 장벽으로 다가옵니다. 이번 LX 세션에서는 안비랩(Anby Lab)의 설립자인 꾸오위(郭宇)를 특별 초청하여 그의 통찰과 선견지명을 공유합니다. 함께 이번 세션의 핵심 내용을 되짚어보고, ZK의 무한한 가능성을 열어보겠습니다.🚀
이론과 실천의 괴리, ZK의 응용 시나리오는 어디에 있는가?
꾸오위는 다양한 암호학 분야 중에서도 ZK의 실용화가 이미 상당히 진전되었음을 지적했습니다. 하지만 순수 이론 연구에 비해 ZK는 공학화 및 제품의 빠른 반복 개발로 인해 일부 제품들이 검증되지 않은 미숙한 프로토콜을 사용하는 경우도 있다고 말했습니다. 현재 ZK 관련 학습 자료 대부분이 이론 중심인 이유는 다음과 같습니다.
1. 현재 활동 중인 ZK 연구자들 대부분이 이론 연구 중심이며, 실제 공학 실무를 수행하는 사람은 적습니다. 결과물 생산 측면에서 보면 ZK 이론 연구는 공학 실무보다 훨씬 짧은 주기로 성과를 낼 수 있습니다. 반면 많은 엔지니어들은 제품을 개발하면서 각자의 배경에 따라 하위 수준의 알고리즘/수학을 이해하고 실습해야 하므로 비교적 오랜 시간이 필요하며, 이로 인해 마치 모든 것이 이론적인 것처럼 느껴질 수 있습니다.
2. 산업 자체의 급속한 발전과 제품의 빠른 업데이트 사이클로 인해 특정 응용 사례 내 일부 공학적 내용은 다른 프로토콜로 대체되거나 점차 사라질 수 있습니다. 따라서 현재 ZK의 기술 장벽이 많이 낮아졌음에도 불구하고, 이론 발전은 항상 실무를 앞서 나갑니다.
ZK 실무를 시작하려면 우수한 참조 자료를 수집하는 것이 좋습니다. 예를 들어 고품질의 공학 코드를 모방하거나 활용하고 간단히 수정함으로써 그 용도와 작동 원리를 먼저 파악하는 것입니다. 이후 추가적인 요구사항이 생겨 코드를 변경하거나 새로운 기능을 추가하고자 한다면 해당 코드에 대한 심층적인 이해가 필수입니다. 더 나아가 완전히 새로운 아이디어로 제품을 만들고 처음부터 코드를 작성하려면 막대한 투자와 집중적인 학습이 필요합니다. 이론이든 실무든, 모방이 가장 현실적인 출발점입니다. 자신의 역량이 향상됨에 따라 할 수 있는 일이 점점 많아지고, 기본 원리를 이해하고 숙달하게 되면 더 많은 도전을 할 수 있는 자신감을 갖게 될 것입니다.
지난 10년간 ZK의 공학 실무는 급격한 발전을 이루었으며 여전히 빠르게 성장 중입니다. 동시에 ZK 이론 역시 다양한 형태로 확산되고 있지만, 이는 학습에 있어 일정한 장애가 되기도 합니다. 어떤 것부터 시작해야 할지, 어떻게 학습해야 할지, 특히 암호학은 깊이가 매우 깊지만 데이터의 목적이나 알고리즘의 근원을 알 수 없는 경우가 많습니다. 또한 ZK의 응용 시나리오 또는 유망한 활용 방안은 실제로 손에 꼽을 정도이며, 많은 애플리케이션 수준의 제품들이 여전히 개념 검증(PoC) 단계에 머물러 있습니다. 전반적으로 새로운 사물들이 계속 등장하면서 희망도 커지고 있으며, 산업 전체로서는 실험을 통해 올바른 길을 찾아가는 더 많은 사람들이 필요합니다.
ZK의 오프체인 응용과 수익화 경로
꾸오위는 ZK가 미래 발전 가능성은 매우 크지만, 수익화와 관련해서는 제품 자체가 실제 핵심 문제를 해결하고 시장의 니즈/고통점을 정확히 반영해야만 수익 창출이 가능하다고 말했습니다.
현재 ZK의 오프체인 응용 측면에서 명확한 수요에 집중하는 응용, 예를 들어 지갑, 브릿지(Bridge), 레이어 2(Layer 2), 스마트 계약의 오프체인 컴퓨팅 등을 더욱 긍정적으로 평가합니다. 그의 오랜 학습 경험에 따르면, 블록체인 발전 과정에서 이미 확장성(Scale-out), 저장소(Storage) 등의 명확한 요구사항이 제기되었으며, 노드 수 부족, 전송량 효율적 압축 등의 블록체인 자체 프로토콜 문제도 있습니다. 물론 블록체인과 무관한 영역도 있는데, 예를 들어 개인정보 보호(Privacy Protection)가 있습니다. 하지만 개인정보 보호는 순수 기술 문제가 아니라 더 많은 사회적 문제일 수 있습니다. 개인정보의 정의는 무엇인지, 사람들의 개인정보 수용 정도는 어떠한지 등은 모두 사회적 협상과 밀접한 관련이 있습니다.
더 구체적으로는 이더리움 상태 폭증(State Explosion), 노드 수의 데이터 가용성(Data Availability), Validator 수 증가, MEV 문제 해결, 체인 상 스마트 계약의 보안성 및 복잡성, 크로스체인 브릿지의 보안성 문제 등과 같은 수요를 충족시키거나 문제를 해결할 수 있는 응용은 모두 좋은 발전 전망을 가지고 있습니다.
CRS란 무엇이며, 왜 ZK는 CRS가 필요한가?
꾸오위는所谓 CRS(Common Reference String, 공통 참조 문자열)란 증명자(Prover)와 검증자(Verifier)가 서로를 무작위로 신뢰하는 것이 아니라, 비록 하나의 비트(Bit)라도 되는 합의를 기반으로 상호를 신뢰한다는 것을 의미한다고 설명했습니다.
예를 들어, ZK의 기본 개념 중 하나인 회로(Circuit)는 증명자와 검증자가 공유하는 계산 과정을 모두에게 공개하는 것을 말합니다. 검증자가 사전에 알고 있는 전제 하에, 증명자는 개인정보를 포함한 매개변수를 계산하고 계산 과정의 무결성을 증명합니다. 이때 회로 자체는 반드시 공개되어야 하며, 입력 매개변수만 검증자에게 숨겨질 수 있습니다. 회로 자체가 합의의 일부이므로 증명자가 작업하기 전에 양측은 회로에 대해 사전에 합의를 해야 하며, 이는 정의상 CRS에 포함되어야 합니다. 현재 우리가 사용하는 대부분의 제로지식 증명 프로토콜(ZK-SNARK: Zero Knowledge Succinct Non-interactive ARguments of Knowledge)은 일반적으로 CRS를 포함하고 있습니다.
타원 곡선 기반의 경우 두 가지 종류가 있습니다. 하나는 Groth16과 같이 '신뢰 설정(Trusted Setup)' 과정이 필요한 것으로, 이는 보안 멀티파티 연산(MPC) 프로토콜이며, 완료 후 이 합의된 회로 정보를 소거합니다. 다른 하나는 Marlin, Plonk 등과 같이 회로를 소각하지 않는 방식인데, 회로는 소각하지 않더라도 일부 합의 내용은 사전에 소거되어야 합니다.
또 다른 타입은 타원 곡선 기반이면서 보안 가정이 이산 로그 문제(ECDLP: Elliptic Curve Discrete Logarithm Problem)에 의존하는 프로토콜들입니다. 이러한 프로토콜은 '투명한 설정(Transparent Setup)'이 필요하며, 마찬가지로 합의가 필요합니다. 예를 들어 어떤 타원 곡선을 선택할지, 키 생성 알고리즘(Generator), 소수 P, Q 등을 결정하는 것입니다. 마지막으로 해시 기반(Hash-based) 프로토콜, 예를 들어 Stark, Risc Zero 등의 Hash-based zkSNARK도 CRS가 필요하며, 사용하는 해시 함수, RS 코드(Reed-Solomon codes) 등도 엄밀히 말하면 모두 CRS에 포함됩니다.
따라서 결론적으로 CRS는 거의 필수적이며, 다만 그 내용이 매우 다양할 수 있습니다. 일반적으로 통신 오버헤드 감소, 증명 크기 축소 등의 목적이 있지만, 프로토콜마다 차이점도 존재합니다.
현실의 요구사항을 ZK 다항식 표현으로 어떻게 변환하는가?
꾸오위는 이론적으로 ZK 다항식 표현을 실현하기 위해서는 계산이 필요하며, 확장성이나 개인정보 보호 모두 적합한 회로로 표현되어야 하고, 이 계산은 고정된 계산이어야 한다고 말했습니다. 이는 알고리즘이 고정되어 있을 뿐 아니라 계산 규모도 고정되어야 함을 의미합니다. 알고리즘이 확정된 단계에 있고 계산량이 쉽게 분해될 수 있다면 조작이 쉬워지며, 이를 '회로 작성(circuit writing)'이라고 부릅니다.
ZKEVM에 대한 심층 연구와 ZKVM 기술 스택의 빠른 발전으로 인해 Risc Zero, SP1, zkWASM 등 다양한 오픈소스 제로지식 컴퓨팅 플랫폼이 등장하였으며, 회로를 직접 구성하지 않고 Rust로 코드를 작성하거나 사용자 정의 코드를 통해 ZK 애플리케이션을 개발할 수 있게 되었습니다. 따라서 비즈니스 로직을 ZK화하는 것은 점점 더 쉬워지고 있습니다.
회로 작성 외에도 RAM(Random Access Machine) 모델 기반의 계산 방법이 있습니다. 이를 하나의 가상 머신이 실행되는 것으로 상상할 수 있으며, 이 과정에서는 회로를 작성하는 것이 아니라 상태 전이(state transition)를 작성하는 것입니다. 어떻게 비즈니스 로직을 더 잘 상태 전이로 표현하거나, 경량화하거나, 직접 다항식으로 전환할지는 개인의 역량과 경험에 크게 의존합니다.
하지만 전반적으로 이 역시 일정한 진입 장벽이 있으며, 회로 작성조차도 장벽이 존재합니다.
핵심 질의응답(Q&A) 요약
왜 ZK가 필요한가?
꾸오위는 현재 ZK의 유용성이나 편리성을 입증할 만한 큰 규모의 애플리케이션이 부족하다고 지적하며, ZK의 등장은 이러한 신뢰 구축을 보다 잘 지원할 수 있다고 말했습니다. 게다가 ZK 기술은 암호학 분야에서도 신뢰 문제를 해결하는 기초적인 도구로 드물게 존재합니다. 또한 블록체인 발전 과정에서 노드 수 급감, 이더리움 상태 폭증 등의 여러 문제에 직면했는데, 이러한 문제들은 ZK를 통해 개선 및 해결이 기대되며, 현재뿐 아니라 미래에도 블록체인에 있어 ZK는 매우 중요합니다.
물론 ZK 역시 블록체인을 필요로 합니다. 신뢰의 전제 조건으로 먼저 '믿음'이 존재해야 하며, 그 다음에야 신뢰와 프로토콜 상호작용이 가능합니다. 블록체인은 바로 ZK의 신뢰 초기 구축(Trust Cold Start) 과정에서 불가결한 요소입니다. 양자는 서로 보완적이며 어느 하나도 없어서는 안 됩니다.
ZK 입문과 학습 팁 및 경험 공유
꾸오위는 우선 동기 부여에서 출발했다며, 본인이 이론에 매우 관심이 있었고, 그것이 무엇인지, 왜 그렇게 동작하는지를 명확히 이해하고 싶었다고 말했습니다. 입문 단계에서는 전문 논문과 기초 자료를 많이 읽으며 필수 기초 지식을 습득하고 심층 학습을 하는 것이 중요하며, 이 과정에서 서서히 지식을 축적하고 두터운 기반을 마련해야 한다고 강조했습니다. 논문의 경우 문맥이 불분명하거나 품질이 불균형한 경우도 많으므로 여러 번 반복해서 읽어야 제대로 이해할 수 있습니다. 취업을 목표로 한다면 회로 작성은 현실적인 접근법입니다. 우수한 프로젝트의 코드를 많이 실습하고, 때로는 사소한 부분에서 놀라운 발견을 할 수도 있습니다. 회로 작성을 반복적으로 모방하고 경험을 정리하여 자신만의 지식과 노하우로 축적하는 것이 중요합니다.
또한 산업 내 비전문 아마추어들의 활동도 주목할 만합니다. 이들은 일반적으로 이해하기 쉬운 튜토리얼이나 학습 경험, 개인적인 노하우를 공유합니다. 하지만 산업이 빠르게 변화하므로 학습 시 이러한 콘텐츠가 과거의 것인지 확인하고, 작성 시기와 비판적인 태도를 유지하며 학습해야 합니다.
이론에 관심 있는 분들은 부분에 집중하여 점에서 면으로 확장하는 것이 좋습니다. 부분을 먼저 명확히 이해한 후, 그 경험을 바탕으로 다른 학습 내용을 살펴보는 것이 바람직합니다. 즉, '깊이 우선 탐색(DFS: Depth First Search)'이 '너비 우선 탐색(BFS: Breadth First Search)'보다 우월합니다. 심층적인 학습 자료나 논문을 찾고 유익함을 판단하는 데 있어서 '공동 학습(Co-learning)'은 매우 효과적인 방법입니다. 혼자서 폐쇄적인 환경에서 학습하는 것은 매우 어렵지만, 뜻이 맞는 사람들과 함께 탐구하고 깊이 있는 토론을 하면 학습이 지속 가능하고 효율적으로 이루어질 수 있습니다.
ZK를 어느 정도까지 학습해야 취업이 가능한가?
꾸오위는 지금이 바로 최고의 기회라고 말합니다. 일단 구직 활동을 시작하고, 부족한 역량은 그 후에 보충하면 됩니다. 대부분의 직무 정보는 공개되어 있으므로, 직접 연락하여 코드 수정이나 버그 리포트 등을 돕는 것도 좋은 방법입니다. 우수한 엔지니어에 대한 수요는 매우 크며, ZK 기술도 빠르게 발전하고 있으므로 경험 부족은 큰 문제가 아닙니다. 오히려 기술의 급속한 변화 속에서 신입 개발자들이 큰 불리함을 겪지는 않습니다.
ZKVM 위에서, 예를 들어 스타크넷(Starknet, STRK)과 유사한 체인에서는 회로를 작성할 필요가 없지 않은가?
꾸오위는 현재 VM은 시스템 호출을 위한 특수 명령어 혹은 특수 인터페이스를 제공해야 한다고 말했습니다. 만약 동일한 계산을 반복하여 VM 명령어로 컴파일한다면 코드가 심하게 팽창하게 됩니다. 따라서 자주 사용하는 명령어는 일반적으로 회로화(circuitization)되며, 회로화된 후 VM 증명을 위한 분산 추적(Trace)이 훨씬 짧아집니다. 또한 회로화는 사전 처리 작업을 도울 수 있으며, Trace보다 훨씬 효율적입니다.
특정 증명 시스템에서는 동일한 알고리즘을 매개변수만 다르게 하여 10번 반복하는 해시 계산 시, 일반적으로 개입하지 않으면 해시 회로가 10배로 발생합니다. 그러나 일부 증명 기술은 이러한 10개의 회로를 병렬화하여 추가적인 최적화를 달성할 수 있으며, 그 최적화 효과는 상당합니다. 따라서 현재 VM 설계 원칙에서도 사용자가 특정 함수를 직접 회로로 작성하고 통합하는 것을 고려할 수 있지만, 아직은 주로 VM이 제공하는 방식에 의존하고 있습니다.
또 다른 기술로 Folding scheme이 있는데, 이는 반복적으로 연결된 회로를 하나로 압축할 수 있어 메모리 사용을 크게 줄일 수 있지만, 회로 작성에 더 높은 요구사항을 제기합니다. 요약하자면, 회로를 학습하고 작성할지 여부는 개인의 이익과 밀접한 관계가 있지만, 이론적으로는 무작정 컴파일하여 ZKVM을 직접 호출하는 것도 가능합니다.
ZK가 블록체인 외에 다른 적용 분야는 없는가?
꾸오위는 개인정보 보호가 하나의 방향일 수 있지만, 그 수요 자체에 의문이 있습니다. Web3 내에서도 개인정보에 대한 관심이 크지 않은데, 전통 산업에서는 더 그렇습니다. 학계에서는 ZK와 비-Crypto 분야의 융합 시도가 많으며, 제로지식 머신러닝(ZKML), ZK 데이터베이스, 제로지식 기반 익명 투표 등이 있지만, 이것이 실제로 문제를 해결할 수 있는지, 정말 시급한 니즈인지 여부는 여전히 검증이 필요합니다. 긴박하고 실제적인 요구사항이 추진 동력이 될 때 성과가 더 뚜렷해집니다. 예를 들어 ZKEVM의 발전은 EVM 자체의 필요성에서 비롯되었으며, 전체 이더리움 생태계가 Layer 2에서 EVM과 호환되어야 한다는 요구로부터 시작되었습니다. EVM 자체가 완벽하지 않았지만, 관련 기술을 ZKEVM으로 이전했을 때 상대적으로 좋은 성과를 거두었습니다.
현재 블록체인의 단계에서 기술과 비즈니스 시나리오는 각각 어떤 가치를 제공하는가?
꾸오위는 암호화 세계(Crypto)의 수요를 논할 때 ZK의 용도는 매우 많다고 답했습니다. 예를 들어 DID(Decentralized Identity, 탈중앙 신원), 소셜 네트워크 상의 개인정보 보호 등이 있습니다. 핵심은 실제 사용자의 니즈나 특징을 반영하여 폭발적인 성장을 이끌 수 있는 시나리오를 찾는 것입니다. 따라서 비즈니스를 고려한다면 ZK의 최근 동향을 주목하는 것이 좋습니다. 현재 기술 조건은 이미 일부 단순한 시나리오를 실현할 수 있거나 거의 도달한 상태입니다.
현장 청중인 스톤(Stone)은 현재 운영 모델 하에서 신뢰 또는 합의 형성이 매우 많은 자원, 대역폭, 저장 공간을 소비하지만, ZK를 통해 효율성을 지수적으로 향상시킬 수 있다고 덧붙였습니다. 즉, 기술적 측면에서의 가치는 매우 높으며, 기술 가치가 나타나면 시나리오 가치도 자연스럽게 드러날 것이라고 말했습니다.
꾸오위는 보완하여 현재 ZK 발전의 문제점 중 하나는 명확한 방향성이 없다는 점이며, 예측이나 전망이 불가능하다고 말했습니다. ZK의 발전 경로는 너무 다양하게 분기되어 있어 어느 분기가 성공할지, 혹은 분기가 생길지조차 알 수 없으며, 이로 인해 애플리케이션 개발자와 이론 연구자 사이에 큰 격차가 존재합니다. 예를 들어 이론 연구자들은 애플리케이션 측의 실제 문제나 고통점을 알기 어렵고, 머릿속 생각만으로 시나리오를 상상해 논문을 작성할 수밖에 없습니다. 동시에 ZK의 진입 장벽은 계속 높아져 제품이나 비즈니스 담당자들이 ZK가 무엇을 할 수 있는지조차 파악하기 어려워집니다. 따라서 애플리케이션 개발자들은 기초 개념과 일반 도구에 대해 더 알아볼 필요가 있습니다. 예를 들어 흔한 ZK 도구와 문서들이 얼마나 큰 규모의 비즈니스 로직을 증명할 수 있는지, 계산량은 어느 정도인지 파악하는 것입니다. ZK에 대해 깊이 이해할 필요는 없으며, 기본 개념과 대략적으로 할 수 있는 일, 그리고 잘 해결하지 못하는 일을 아는 정도면 충분합니다. 결국 양자는 서로 보완적이며, 블록체인의 번영과 발전을 함께 이끌어갑니다.
마무리
이번 LX 세션을 통해 여러분은 제로지식 증명(ZK)의 발전, 응용 실천, 입문 학습 등에 대해 보다 포괄적이고 심층적인 이해를 하셨을 것입니다. 산업의 지속적인 발전과 ZK 기술의 끊임없는 혁신과 돌파로 인해, ZK는 막대한 잠재력과 광범위한 응용 전망을 보여줄 것이라 믿습니다. 동시에 이는 암호화 산업뿐 아니라 전체 Web3의 발전에 새로운 활력을 불어넣을 것입니다. 앞으로도 여러분과 함께 손잡고 ZK를 탐구하며, 더 안전하고 효율적이며 투명한 디지털 세상을 만들어가기를 기대합니다!
TechFlow 공식 커뮤니티에 오신 것을 환영합니다
Telegram 구독 그룹:https://t.me/TechFlowDaily
트위터 공식 계정:https://x.com/TechFlowPost
트위터 영어 계정:https://x.com/BlockFlow_News














