다양한 증명 방식 비교: ZK 증명 시스템의 장단점 이해
저자:Hill.bit
편집:심조 TechFlow
제로 지식 증명의 개념은 모두 잘 알고 있지만, 기술적인 세부 사항에 대해서는 많은 사람들이 혼란스러울 수 있습니다.
제로 지식과 증명은 실제로 두 개의 명사이며, 증명 방식은 제로 지식 프로토콜의 안전 가정의 기본 구성 요소입니다. 본문에서는 Hill.bit이 다양한 증명 방식을 설명하고 그 장단점을 통해 더 많은 사람들이 ZK 증명 시스템을 이해하는 데 도움을 주고자 합니다.
제로 지식 증명 시스템에는 세 가지 주체가 참여합니다: 설정자, 증명자 및 검증자. 서로 다른 증명 방식은 이들의 행동에 다양한 방식으로 영향을 미쳐 효율성, 안전성 및 전체 시스템 성능에 영향을 줍니다.
설정자 단계에서는 ZK 시스템에 필요한 필수 매개변수와 공개 키를 생성합니다. 증명 방식은 설정자 단계의 복잡성, 계산, 통신 및 신뢰할 수 있는지 여부에 영향을 미칩니다. 증명자는 비밀 입력 정보를 알고 있음을 증명하는 증명을 생성하지만, 해당 정보를 공개하지 않습니다. 증명 방식은 증명자의 계산 시간, 메모리 요구 사항 및 증명 크기에 영향을 미쳐 통신 및 저장 요구 사항에 영향을 줍니다. 검증자는 증명의 유효성을 검사합니다. 증명 방식은 검증 시간, 메모리 요구 사항 및 증명 요청의 수와 복잡성에 영향을 미칩니다. 여기에는 세 가지 서로 다른 유형의 증명 방식이 있습니다.
선형 PCPs + 단순 선형 인코딩:
선형 확률 검증 증명(PCPs) 및 선형 연산 활용;
강력한 제로 지식 속성 제공;
가장 짧은 증명 생성;
신뢰할 수 있는 설정 필요;
이전 개선은 주로 증명자의 시간을 줄이는 데 집중되었습니다.
선형 PCPs는 검증자가 소량의 증명을 조회하여 문장의 유효성을 검사하는 증명 시스템입니다. "선형"이라는 용어는 검증자의 조회가 증명의 선형 함수임을 나타냅니다.
단순 선형 인코딩은 정보를 숨기기 위해 사용되는 암호화 기술로, 숨겨진 데이터에 대해서만 선형 연산을 허용합니다. 이는 데이터 프라이버시를 보장하면서 특정 계산을 수행할 수 있게 합니다.
다항식 IOPs + 다항식 약속 방식:
대수 구조 활용;
일반적으로 선형 PCP 기반 시스템보다 더 효율적;
일반/신뢰할 수 없는 설정 지원;
맞춤형 회로 허용;
이전 개선은 주로 검증자의 효율성을 높이는 데 집중되었습니다.
다항식 상호작용 예언기 증명(IOPs)은 증명자와 검증자가 여러 라운드에서 메시지를 교환하는 증명 시스템입니다. 증명자는 예언(다항식에 대한 약속)을 생성하고 이를 검증자에게 제공합니다.
검증자는 특정 지점에서 예언기를 조회하고, 증명자는 해당 다항식으로 응답을 평가합니다. 다항식 방식은 다항식을 약속하지만 다항식 자체에 대한 정보를 공개하지 않습니다.
선형 PCPs + 단순 선형 인코딩과 비교한 효율성 향상은 다음에서 기인합니다:
대수 구조의 더 나은 활용;
더 효율적인 증명 생성/검증;
압축된 다항식 표현;
배치 검증 기술.
그러나 다항식 IOPs + 다항식 약속 방식에는 다음과 같은 단점이 있습니다:
더 복잡한 설계 및 구현;
특정 목적의 암호화 가정;
병렬성 등 다양한 성능 균형.
접기 방식:
재귀 증명 조합 허용;
효율성과 확장성을 높이기 위한 중첩 증명 구현;
빠르고 병렬화가 용이한 증명자;
이전 개선은 주로 재귀 SNARKs 구축에 집중되었습니다.
재귀 증명 조합은 검증자의 계산 및 메모리 요구 사항을 줄일 수 있으며, 이는 블록체인과 같은 응용 프로그램에서 특히 유용합니다. 증명 집합은 최종 증명의 크기와 검증 시간을 줄일 수 있지만, 이러한 증명을 생성하는 것은 증명자의 계산 요구 사항을 더 높일 수 있습니다. 다항식 IOPs + 다항식 약속 방식과 비교할 때, 접기 방식의 효율성 향상은 다음에서 기인합니다:
재귀 증명 조합;
증명 집합;
개선된 확장성;
더 빠른 검증 시간.
접기 방식의 잠재적 단점은 다음과 같습니다:
더 복잡한 설계 및 구현;
맞춤형 암호화 가정;
증명자의 계산 시간 및 메모리 오버헤드 증가;
적합성은 사용 사례에 따라 다를 수 있습니다.
결론적으로, 선형 PCPs + 단순 선형 인코딩은 강력한 제로 지식 속성과 가장 짧은 증명 길이를 제공하지만, 신뢰할 수 있는 설정이 필요하며 다른 범주에 비해 효율성에 한계가 있습니다. 다항식 IOPs + 다항식 약속 방식은 더 효율적인 증명 생성 및 검증 과정을 통해 선형 PCPs + 단순 선형 인코딩보다 효율성이 크게 향상되지만, 설계 및 구현이 더 복잡할 수 있습니다.
접기 방식은 재귀 증명 조합 덕분에 효율성과 확장성에서 뛰어난 성능을 보이며, 이는 블록체인 응용 프로그램에서 특히 유용합니다. 그러나 증명자의 계산 시간 및 메모리 오버헤드가 증가할 수 있으며, 그 적합성은 사용 상황에 따라 달라질 수 있습니다.