토픽 42 / 210·암호학
영지식 증명 (Zero-Knowledge Proof, ZKP)
영지식 증명 (Zero-Knowledge Proof, ZKP)
증명자(Prover)가 검증자(Verifier)에게 어떤 정보를 알고 있음을 그 정보 자체를 공개하지 않고 증명하는 암호학적 프로토콜
특징: 완전성(참이면 항상 수락), 건전성(거짓이면 증명 불가), 영지식성(진위 외 정보 얻지 못함)
구성요소: 증명자(Prover), 검증자(Verifier), 증명(Proof), 공통 참조 문자열(CRS)
ZKP 유형
- •Interactive ZKP: 증명자-검증자 간 다회 상호작용
- •Non-Interactive ZKP(NIZK): 단일 메시지 증명, 블록체인 적합
주요 시스템
- •zk-SNARKs(Succinct Non-interactive ARgument of Knowledge): 짧은 증명, 빠른 검증, Trusted Setup 필요
- •zk-STARKs(Scalable Transparent ARgument of Knowledge): Trusted Setup 불필요, 양자 저항, 증명 크기 큼
- •Bulletproofs: 짧은 증명, 범위 증명 적합
- •PLONK: Universal Trusted Setup, 효율적
동작원리: 증명자가 비밀 입력으로 다항식 생성 -> 검증자가 랜덤 챌린지 -> 증명자가 응답 -> 검증자가 수학적으로 검증(비밀 노출 없음)
응용 분야
- •ZK-Rollup: L2 확장, 거래 압축(zkSync, StarkNet, Polygon zkEVM)
- •프라이버시 코인: Zcash(zk-SNARKs), 거래 내역 비공개
- •신원 인증: 나이 증명(성인 여부만), DID 자격 증명
장점: 프라이버시 보호, 검증 효율, 블록체인 확장성, 신뢰 최소화
단점: 계산 비용, 복잡한 구현, 증명 생성 시간, Trusted Setup 위험(일부)
적용사례: Zcash, zkSync, StarkNet, Polygon zkEVM, 디지털 신원 증명
비교: zk-SNARKs(작은 증명/Setup 필요) vs zk-STARKs(투명/큰 증명/양자 저항) vs Bulletproofs(범위 증명)
연관: 블록체인, 암호학, 프라이버시, L2 확장, DID