Zulu Research | 영지식 에 대한 모든 것 ⏫

이 기사는 기계로 번역되었습니다
원문 표시

분산형 원장 기술이 계속 성숙해짐에 따라 정보의 선택적 공개를 지원하는 것이 주요 설계 우선순위로 부상하고 있습니다. 퍼블릭 블록체인이 투명성을 제공하지만, 많은 애플리케이션은 특정 세부 정보를 가려야 합니다.

제로 지식 증명은 기본 데이터를 공개하지 않고도 진술을 검증할 수 있도록 함으로써 이러한 과제에 대한 암호화 솔루션을 제시합니다.

상호작용 증명 시스템 기술을 통해, 제로 지식 암호학적으로 증명자가 세부 정보 자체를 전달하지 않고도 특정 정보를 알고 있다는 것을 증명합니다. 이는 거래나 계산을 비공개로 검증하여 모든 데이터를 공개하는 것에 대한 우려를 완화합니다. zk-SNARK 및 zk-STARK와 같은 프로토콜의 최근 발전으로 이러한 추상적인 수학적 개념의 효율성과 실제적 배포가 개선되었습니다.

제로 지식 증명을 통합한 프로젝트는 이제 분산 원장에 대한 향상된 기능을 실현하고 있습니다. Zcash 및 Zulu Network와 같은 네트워크는 제로 지식 설정을 통해 블록체인에서 선택적 데이터 공개를 개척했습니다. 제로 지식 롤업 및 브리지에 대한 새로운 작업은 참가자의 데이터를 숨기면서 독립 플랫폼 간에 가치를 공유하는 방법을 제안합니다.

이 분야의 연구가 계속됨에 따라 선택적 데이터 공개 보장을 활용하는 새로운 애플리케이션이 등장하고 있습니다. 여기에는 개인 스마트 계약 실행, 익명 디지털 거래, 암호화된 데이터베이스 감사가 포함됩니다. 복잡성과 성능의 과거 한계를 극복한 현대의 제로 지식 체계는 분산 네트워크에서 선택적 데이터 공개를 요구하는 애플리케이션의 기술적 실행 가능성을 나타냅니다.

이 보고서는 현대의 제로 지식 증명의 암호화 기반과 구성을 분석합니다. 그런 다음 이러한 기술을 통합한 주목할 만한 프로젝트와 이를 통해 가능한 잠재적인 미래 사용 사례를 조사합니다. 목표는 빠르게 진화하는 이 분야에 대한 기술적 맥락을 제공하고 선택적 데이터 공개가 필요한 분산 원장 설계에 대한 관련성이 커지고 있음을 강조하는 것입니다.

제로 지식 증명의 역사와 기초

영지식 증명의 개념은 Goldwasser, Micali, Rackoff가 1989년에 그들의 획기적인 논문에서 수학적으로 처음 도입했습니다. 그들은 두 당사자가 증명되는 진술의 타당성 외에는 아무것도 배우지 않고도 설득력 있는 교환을 수행할 수 있는 방법을 보여주었습니다[1].

그러나 초기 작업은 주로 이론적 구성에 초점을 맞추었고 실제 적용은 제한적이었습니다. 창립 작업은 그래프의 해밀토니시티와 같은 어려운 문제에 대한 암호 지식이나 해결책을 증명하는 데 중점을 두었습니다. 2000년대 초반에야 더 효율적으로 구현 가능한 증명 시스템이 등장하기 시작했습니다.

1993년 Bellare와 Goldreich는 계산적 건전성 개념과 트랩도어 순열을 기반으로 한 최초의 비대화적 커밋먼트 계획을 제안했습니다. 이는 커밋된 값에 대한 진술에 대한 실용적인 이산 대수 기반 증명으로의 전환을 의미했습니다. 거의 같은 시기에 쌍선형 그룹은 BGN 및 CBLS 서명[2]과 같은 페어링 기반 암호화 계획을 용이하게 했습니다.

SNARK 및 STARK의 개발에서 추가적인 획기적인 진전이 있었습니다. 2009년에 Groth는 지식 증명이라고 알려진 방정식의 제로 지식 증명에 최적화된 Schnorr 증명의 변형을 도입했습니다. 이는 범용 다항식 시간 검증 가능한 진술을 가능하게 하는 zk-SNARK의 기반을 마련했습니다. 이후 작업에서는 이 접근 방식을 개선하여 libSNARK 및 zcash[3] [4] [5]를 탄생시켰습니다.

STARK는 Ben-Sasson, Chiesa, Tromer 및 Virza가 도입한 암호화 가정 없이 계산 가능한 모든 함수에 대한 확실한 증명을 제공하여 또 다른 도약을 나타냈습니다. 이는 zk-SNARK 기술[6] [7]에 대한 더 큰 투명성과 유연성으로 인해 관심을 불러일으켰습니다.

오늘날, 활기찬 연구 공간은 PLONK 및 Marlin과 같은 기술을 계속 발전시켜 확장성, 효율성을 향상시키고 제로 지식 구축의 신뢰할 수 있는 설정 요구 사항을 줄입니다. 이러한 알고리즘 발전은 이제 허가된 분산 시스템과 허가 없는 분산 시스템에서 실제 구현을 뒷받침합니다.

제로 지식 증명의 기술적 개요

제로 지식 증명은 한 당사자인 증명자가 진술 자체의 유효성을 넘어서는 추가 정보를 공개하지 않고 진술이 사실임을 다른 당사자인 검증자에게 확신시킬 수 있도록 하는 암호화 프로토콜입니다. 블록체인의 맥락에서 ZKP는 참여자가 악의적인 행위자에게 데이터를 노출할 위험을 최소화하면서 민감한 데이터와 상호 작용할 수 있도록 합니다[8].

제로 지식 증명의 구성 요소

제로 지식 증명은 몇 가지 핵심 구성 요소로 구성됩니다.

  1. 진술: 진술은 증명자가 검증자에게 증명하고자 하는 주장입니다. 증명자가 검증자에게 사실이라고 확신시키고자 하는 주장이나 사실이 될 수 있습니다.
  2. 증인: 증인은 진술서와 관련된 정보로, 진술서가 사실임을 증명하는 증거로 사용될 수 있습니다.
  3. 증명자: 증명자(Prover)는 진술의 타당성을 증명하는 데 필요한 지식이나 정보를 소유한 당사자입니다. 증명자의 목표는 추가 정보를 공개하지 않고 검증자를 설득하는 것입니다.
  4. 검증자: 검증자(Verifier)는 타당성을 넘어서는 지식을 얻지 않고 진술의 진실성을 검증하고자 하는 당사자입니다. 검증자는 증명자에게 설득력 있는 증거를 제공하도록 요구합니다.

제로 지식 증명 단계

제로 지식 증명은 복잡한 수학적 알고리즘과 암호화 기법에 의존하여 목표를 달성합니다. 다음 단계는 제로 지식 증명의 일반적인 프로세스를 설명합니다.

  1. 설정: 증명자와 검증자는 제로 지식 증명에 사용될 매개변수 집합과 암호화 기본 요소에 대해 동의합니다.
  2. 커밋먼트: 증명자는 세부 정보를 공개하지 않고 진술의 유효성을 커밋합니다. 이 커밋먼트는 일반적으로 해시 함수와 같은 암호화 기술을 통해 달성됩니다.
  3. 상호작용: 증명자와 검증자는 일련의 상호작용을 하는데, 여기서 증명자는 증거인 증인을 제공하여 검증자에게 진술의 진실을 확신시킨다. 이러한 상호작용에는 메시지를 교환하고 계산을 수행하는 것이 포함된다.
  4. 검증: 검증자는 증명자가 제공한 증거를 확인하여 진술의 진실을 입증하기에 충분히 설득력이 있는지 확인합니다. 검증자는 진술의 타당성 외에 추가 지식을 얻지 않습니다.

제로 지식 증명의 약속

커밋먼트 스킴은 증명자라고 알려진 한 당사자가 검증자라고 알려진 다른 당사자에게 값을 공개하지 않고도 값을 커밋할 수 있도록 허용함으로써 제로 지식 증명(ZKP)에서 중요한 역할을 합니다. 이를 통해 증명자는 실제로 값 자체를 공개하지 않고도 특정 값에 대한 지식을 입증할 수 있습니다. 커밋먼트 스킴은 바인딩과 은닉이라는 두 가지 중요한 속성을 가져야 합니다. 이상적인 커밋먼트 구성 요소는 바인딩과 은닉 품질을 모두 부여합니다.

  • 바인딩: 커밋먼트 체계는 증명자가 값을 커밋하면 커밋된 값을 변경하는 것이 계산적으로 불가능해지도록 보장합니다. 이 속성은 커밋의 무결성을 보장하고 증명자가 커밋이 이루어진 후에 값을 변경하지 못하도록 합니다.
  • 숨기기: 커밋먼트 체계는 검증자가 증명자가 공개하기 전에 커밋된 값을 결정할 수 없음을 보장합니다. 이 속성은 커밋된 값의 기밀성을 보장하고 검증자가 커밋만으로 그에 대한 정보를 얻는 것을 방지합니다.

계산 불가능성은 이러한 속성을 강화합니다. 증명자의 경우, 바인딩은 불가능할 정도로 어려운 것으로 입증된 커밋된 인코딩을 반전하여 시행됩니다. 검증자의 경우, 커밋된 입력이 증명자의 계시 이전에 결정에 저항한다는 가정에 따라 숨깁니다.

함께 취합하면, 커밋먼트 기술은 나중에 검증을 위해 선택적 확인을 통해 증명자 지식을 암호화적으로 격리하며, 비자발적 노출이 아닙니다. 이를 통해 현재 보유한 정보를 비공개로 증명하여 권한이 부여되면 인증된 재구성을 할 수 있습니다. 바인딩 및 은폐를 통해 커밋먼트 난독화는 검증자로부터 증명자 통찰력을 보호하는 동시에 증명자 조건에 따라 미래의 투명한 재구성을 허용합니다. 이는 선택적 공개 프로토콜 내에서 민감한 데이터 유통을 보호하는 암호화 잠금 상자를 형성합니다.

  • 해시 기반 커미트먼트: 값을 숨기기 위해, 증명자는 데이터의 암호화 해시를 생성하여 검증자에게 보냅니다. 나중에, 사전 이미지를 공개하면 검증자는 원래 해시된 커미트먼트와 일치한다는 것을 확인할 수 있습니다.
  • 페데르센 커미트먼트: 증명자는 비공개 블라인딩 팩터와 공개 생성기를 곱하고 값을 더하여 모호한 커미트먼트를 생성합니다. 블라인딩 팩터와 생성기를 이후에 공개하면 검증자는 값을 비공개로 유지하면서 초기 커미트먼트를 검증할 수 있습니다.
  • 다항식 커미트먼트: 증명자는 다항식의 계수에 커미트먼트를 제공하여 다항식을 모호하게 합니다. 검증은 다항식이 선택된 지점에서 예상대로 평가되는지 확인하고, 검증자에게 계수 값을 숨기지만 평가 바인딩을 통해 지식을 증명하는 것을 포함합니다.

다항식 커밋먼트는 현대의 제로 지식 증명에서 기초적인 기술을 형성하여 선택적 데이터 공개를 통해 zk-SNARK 및 zk-STARK에서 개인 정보 보호 계산 검증을 허용합니다. 간결한 증명 시스템에서의 역할은 대규모 개인 계산의 확인을 용이하게 합니다. 준동형 사상, 보간 기술 및 집계 최적화와 결합하여 강력한 새로운 암호화 응용 프로그램을 잠금 해제합니다[9].

유형 제로 지식 증명

제로 지식 증명에 적용되는 다양한 속성이 있으며, 각각 고유한 사용 사례와 속성이 있습니다. 몇 가지 일반적인 유형은 다음과 같습니다.

  1. 대화형 제로 지식 증명: 이러한 증명은 증명자와 검증자 간의 여러 라운드의 상호 작용을 포함합니다. 이들은 더 많은 계산을 필요로 하지만 더 강력한 보안 보장을 제공합니다.
  2. 비대화형 제로 지식 증명: 이러한 증명은 증명자에서 검증자에게 단일 메시지만 필요합니다. 이러한 증명은 더 효율적이지만 보안 보장이 약할 수 있습니다[8].
  3. 간결한 제로 지식 증명: 이러한 증명은 매우 효율적이도록 설계되었으며 최소한의 계산 리소스가 필요합니다. 이들은 제로 지식 증명과 관련된 계산 오버헤드를 최소화하는 것을 목표로 합니다. ZKP가 간결하다고 간주되려면 증명자와 검증자가 확률적 확실성을 확립하거나 ZKP의 기반을 확립하기 위해 서로에게 전달해야 하는 메시지 수를 줄여야 합니다. 간결한 제로 지식 증명은 배타적이고 별도의 범주[10]가 아니라 대화형 또는 비대화형 증명의 속성입니다.

대화형 ZKP

대화형 제로 지식 증명, Arthur-Merlin 증명이라고도 알려진 이 증명은 현대적 제로 지식 암호화 응용 프로그램의 이론적 기반을 형성합니다. 여기서 우리는 대화형 모델과 챌린지-응답 프로토콜의 반복 실행을 통해 제로 지식 속성을 달성하는 방법을 자세히 설명합니다.

상호 작용 증명에서 두 당사자(증명자와 검증자)는 진술을 증명하거나 반증하기 위해 앞뒤로 의사소통을 합니다. 증명자는 타당성 외에는 아무것도 밝히지 않고 진술이 사실임을 증명하려고 합니다.

핵심 암호화 속성은 제로 지식입니다. 상호 작용 후 검증자는 진술이 참인지 거짓인지 외에는 아무것도 배우지 못합니다. 이렇게 하면 민감한 정보가 유출되는 것을 방지할 수 있습니다.

대화형 ZK 증명은 검증자가 증명자의 주장에 이의를 제기하고 증명자의 응답이 밝히지 않고도 설득하는 "도전-응답" 프로토콜을 활용합니다. 간단한 예로 그래프 해밀턴성 문제가 있습니다.

Prover는 그래프의 일련의 점과 모서리 형태로 Message에서 주장한 솔루션을 도출하는 경로를 제안합니다. Verifier는 Prover가 투어가 정확하다는 것을 "증명"하거나 동일한 그래프에 대한 새 투어를 생성하도록 무작위로 선택합니다. 반복하면 Verifier의 뷰가 무작위로 지정되어 그래프나 솔루션에 대한 정보가 표시되지 않습니다.

건전성은 계산적으로 제한된 검증자가 무시할 수 있는 확률을 제외하고는 거짓 진술을 확신할 수 없음을 보장합니다. 상호 작용 중 약속이 암호학적으로 숨겨지고 이산 로그와 같은 계산적 가정을 통해 구속되는 데 의존합니다.

Honest-Verifier Zero-Knowledge는 실제 실행 기록이 시뮬레이션된 상호작용보다 더 많은 정보를 공개하지 않는다는 것을 보장합니다. 반복되는 무작위 도전은 Verifier의 관점이 통계적으로 독립적인 시도에 가깝도록 강제합니다.

비대화형 ZKP

대화형 제로 지식 증명이 이론적 프레임워크를 도입한 반면, 실제 응용 프로그램은 편의성을 위해 비대화형 변형을 요구합니다. 비대화형 ZKP는 간결성, 비대화성 및 지식 논증이라는 세 가지 주요 기능을 제공합니다. 이 섹션에서는 재사용 가능한 증명을 생성하여 상호 작용을 제거할 수 있는 암호화 기술을 자세히 설명합니다.

1986년에 도입된 Fiat-Shamir 휴리스틱은 검증자의 무작위성을 무작위 오라클로 대체하여 대화형 증명을 비대화형 논증으로 변환했습니다. 실제로는 증명자와 검증자가 교환한 메시지의 기록인 필사본의 해시가 실제로 사용됩니다. 이 "게으른" 적대자 모델은 해시가 무작위 오라클 역할을 한다고 가정합니다.

실제로 Prover는 모든 이전 메시지를 해싱하여 도출한 문장과 무작위 과제를 사용하여 증명을 생성합니다. 검증자는 과제를 다시 계산하고 일관성을 확인합니다. 시뮬레이터는 무작위 오라클을 프로그래밍하여 증인 없이도 시뮬레이션된 증명을 생성할 수 있습니다.

단 하나의 메시지만 교환하면 되고 Prover와 Verifier가 메시지를 검증하기 위해 동시에 온라인 상태가 될 필요가 없기 때문에 전체 프로세스는 대화형 버전보다 덜 복잡합니다.[11] [12]

시그마 프로토콜은 Prover가 커미트먼트를 보내고, Verifier가 챌린지를 보내고, Prover가 응답을 보내는 3-move honest-verifier zero-knowledge proof의 특별한 클래스를 구성합니다. 이들의 특별한 건전성 속성은 서로 다른 챌린지에서 두 개의 수락하는 필사본을 활용하여 증인을 추출합니다.

Fiat-Shamir를 적용한 Sigma 프로토콜은 결정된 과제를 통해 상호 작용을 제거하고 동시에 제로 지식을 보존함으로써 SNARK 및 STARK와 같은 많은 실용적인 비상호작용 증명 시스템의 기반을 형성합니다. [13] [14]

간결한 ZKP

간결한 제로 지식 증명은 증명 크기가 계산 회로 크기에서 하위 선형인 개인 데이터에 대한 계산을 검증할 수 있게 합니다. 즉, 메시지 크기가 증가함에 따라 증명 크기가 더 느리게 증가합니다. 이는 선형적으로 확장되는 기존 증명에 비해 상당한 개선을 나타냅니다.

이전에 언급했듯이 Succinct Zero-Knowledge Proof는 배타적이고 별도의 범주가 아니라 Interactive 또는 Non-Interactive ZKP의 속성입니다. 그러나 Non-Interactive ZKP는 기본적으로 Succinct이므로 Interactive ZKP만 Succinct 또는 non-Succinct로 구분할 수 있습니다[10].

일부 제로 지식 증명 알고리즘

방탄

Bulletproofs는 비트코인 블록체인에서 효율적이고 안전한 제로 지식 증명을 가능하게 하는 암호화 프로토콜입니다. 실제 값을 공개하지 않고 값이 지정된 범위 또는 간격 내에 있는지 확인하는 범위 증명의 검증을 허용합니다. Bulletproofs는 제로 지식 증명의 크기를 크게 줄여 비트코인에서 사용하기에 더 확장 가능하고 비용 효율적입니다.

개인 정보 보호 증명을 활성화함으로써 Bulletproofs는 Monero와 같은 암호화폐에서 거래 금액을 은폐하는 데 널리 사용되었습니다. 이 섹션에서는 Bulletproofs를 뒷받침하는 암호화 메커니즘을 살펴봅니다.

피노키오와 같은 이전 범위 증명 계획은 높은 상수 비용을 초래하는 정직한 검증자 제로 지식 SNARK에 의존했습니다. 이를 해결하기 위해 Bünz 등은 시그마 프로토콜의 재귀적 구성을 사용하는 새로운 접근 방식을 제시했습니다. 시그마 프로토콜은 건전성과 정직한 검증자 제로 지식의 속성을 통해 많은 제로 지식 증명의 중추를 구성합니다.

Bulletproofs는 이진 분해를 통해 숫자 간격을 더 작은 세그먼트로 재귀적으로 분해합니다. 각 단계에서 간격 종점에 대한 커밋먼트가 커밋된 값이 해당 하위 범위 내에 있다는 증명과 함께 게시됩니다. 하위 범위에 대한 증명을 결합함으로써 특정 값을 밝히지 않고 최종 진술이 증명됩니다.

이 재귀적 구성 접근 방식은 다항식 비용에 비해 극적인 개선을 가져옵니다. 커밋먼트는 암호화 건전성을 유지하기 위해 소수 순서 그룹이 있는 Pedersen 커밋먼트 체계를 사용합니다. 증명은 커밋된 값이 누출되지 않고 특정 대수 관계를 충족한다는 사실만 드러내는 Schnorr 증명과 같은 Sigma 프로토콜을 활용합니다[15] [16].

플롱크

PLONK 또는 Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge는 2019년 Gabizon, Williamson, Ciobotaru가 도입한 간결한 제로 지식 증명 시스템입니다. 다항식 커밋먼트를 통해 고효율 ZK 증명을 가능하게 함으로써 PLONK는 확장 가능한 블록체인 애플리케이션에서 채택되고 있습니다. 여기서는 PLONK의 암호화 기술이 어떻게 기능하는지 논의합니다.

zk-SNARK와 같은 과거 ZK 증명 시스템은 높은 상수 비용을 초래하는 쌍선형 군에 대한 대수적 제약에 의존합니다. 대신 PLONK는 간결하면서도 암호학적으로 구속력이 있는 방식으로 유한 체에 대한 다항식을 커밋하는 다항식 커밋먼트를 활용합니다.

다항식 커밋먼트는 서로 다른 지점에서 다항식을 평가하면 다항식을 고유하게 식별한다는 사실을 활용합니다. 증명자는 계산을 나타내는 다항식을 커밋하고 증인이 주장된 다항식을 충족한다는 것을 영지식으로 증명합니다. [17] [18] [19].

ZK 스나크스

zk-SNARK(zero-knowledge Succinct Non-interactive ARguments of Knowledge)는 기밀 데이터에 대한 계산의 효율적인 검증을 가능하게 하는 비대화형 zero-knowledge proof의 한 형태입니다. 이 섹션에서는 zk-SNARK를 가능하게 하는 암호화 구조에 대해 자세히 설명합니다.

기존의 비대화형 ZKP는 비효율적이고 계산 집약적이어서 사용 사례가 제한적이었습니다. zk-SNARK는 "지식 증명"이라는 기술을 통해 이를 해결했습니다. 검증을 선형적인 그룹 연산 수로 축소함으로써 NP 관계에 대한 간결한 비대화형 인수를 제공합니다.

핵심적인 직관은 Bulletproofs에서 나왔는데, 이는 Sigma 프로토콜의 재귀적 구성을 통해 효율적인 범위 증명을 구축했습니다. 마찬가지로 zk-SNARK는 2차 스팬 프로그램과 같은 Sigma 프로토콜을 활용하여 계산을 나타내는 산술 회로의 관계를 증명합니다.

zk-SNARK는 신뢰할 수 있는 설정 중에 생성된 참조 문자열을 사용하여 Statement/Witness를 인코딩하는 산술 회로를 설명합니다. Prover는 입력을 커밋하고 회로를 만족하는 Witness에 대한 지식을 증명합니다.

구체적으로, 그들은 소수 순서 그룹에 입력을 커밋하고 커밋이 산술 회로의 방정식을 만족시킨다는 비대화적 제로 지식 인수를 제공함으로써 만족 가능성을 증명합니다. 시뮬레이션은 Witness 지식 없이 추출합니다[6] [7] [10] [20] [21].

ZK 스타크스

zk-STARK(zero-knowledge Scalable Transparent ARguments of Knowledge)는 zk-SNARK보다 더 강력한 설정 및 계산 보장을 제공하는 효율적인 비대화형 ZK 증명에 대한 또 다른 접근 방식입니다. 이 섹션에서는 zk-STARK를 가능하게 하는 암호화 기술을 탐구합니다.

zk-SNARK는 많은 애플리케이션을 용이하게 하지만 신뢰할 수 있는 설정 중에 생성된 참조 문자열에 대한 의존성은 지속적인 제한입니다. zk-STARK는 제3자의 신뢰 없이도 "증명 전달 데이터"를 실현하는 것을 목표로 합니다.

zk-SNARK와 마찬가지로 zk-STARK는 계산을 2차 다중선형 맵으로 구성된 2차 ARithmetiC 프로그램(QAP)으로 표현합니다. 그러나 선형 PCP 기술을 적용하여 참조 문자열을 제거하여 선형 시간 내에 유효성을 효율적으로 확인할 수 있는 증명을 생성합니다.

zk-STARK는 Multi-Vector Linear(MVL) 가정 하에 보안된 새로운 다중 벡터 커밋먼트 방식을 사용하여 입력과 QAP 표현을 모두 커밋합니다. 이는 입력을 약속된 계산에 암호화적으로 바인딩합니다.

참조 문자열 대신 zk-STARK는 충돌 방지 해시 함수를 활용하여 투명성을 유지하면서도 도전 과제를 결정적으로 도출합니다. 증명은 Fiat-Shamir 변환을 통해 비대화형으로 유지됩니다.

위의 표현, 커밋먼트, 챌린지 도출의 발전은 공통 참조가 필요 없이 문제 크기에 비례하여 시간 내에 검증 가능한 주장을 낳습니다. 더 많은 진행 중인 작업은 지속적으로 개선됩니다.

간단히 말해, STARK 프레임워크 내에서 선형 PCP 기술과 다중 벡터 커미트먼트를 적용함으로써 zk-STARK는 규모에 맞춰 진정으로 신뢰할 수 없는 투명한 비대화형 논거의 미래를 열어줍니다[6] [7] [10] [20] [21].

그로스

Jens Groth는 블록체인 애플리케이션에 적합한 효율적인 제로 지식 증명을 개발하는 데 있어 선구자였습니다. 보고서의 이 섹션에서는 Groth 증명의 기반이 되는 암호화 기술과 개인 정보 보호 분산 원장에서의 사용에 대해 자세히 설명합니다.

zk-SNARK와 같은 초기 블록체인 ZKP는 참조 문자열 아래에서 커밋된 2차 산술 프로그램으로 계산을 표현했습니다. 효율적이기는 했지만 신뢰할 수 있는 설정 비용이 발생했습니다. Groth는 커밋을 쌍선형 그룹으로 기반으로 하여 설정 없는 증명을 추구했습니다.

Groth 제로 지식 증명은 쌍선형 그룹이라고 하는 수학적 구조를 활용하는 쌍선형 기반 암호화의 개념에 기반을 두고 있습니다. 이 수학적 구조는 두 개의 다른 그룹의 요소 간 쌍선형을 효율적으로 계산할 수 있게 해줍니다. Groth 증명은 쌍선형 친화적 타원 곡선과 같은 소수 차수 쌍선형 그룹에 입력을 커밋합니다. 값은 선형 종속성을 유지하는 다중선형 맵으로 관련된 그룹 요소에 커밋합니다. 이를 통해 계산 제약 조건을 간결한 방식으로 표현할 수 있으므로 검증 비용이 줄어듭니다[22].

블록체인의 제로 지식 증명에 대한 비판과 단점

ZKP는 프라이버시와 보안을 강화할 수 있는 잠재력으로 인해 블록체인 분야에서 상당한 주목을 받았습니다. 그러나 다른 기술과 마찬가지로 ZKP도 제대로 구현되거나 설정되지 않으면 결함과 취약성에 면역이 없습니다.

ZK-스킴이 충분히 제한되지 않으면 무결성을 보장할 수 없습니다. 악의적인 행위자는 제한되지 않은 입력 값을 악용하여 가짜 증명을 생성하여 전체 스킴을 손상시킬 수 있습니다[23].

ZKP의 검증 프로세스가 적절하게 구현되지 않으면 무결성 문제가 발생할 수 있습니다. 예를 들어, 검증 알고리즘이 입력 값의 유효성을 검사하지 못하거나 필요한 검사를 수행하지 않으면 잘못된 증명이 수락될 수 있습니다[24].

건전성 문제는 ZKP가 거짓 진술을 거부하지 못할 때 발생합니다. 검증 알고리즘이 증명된 진술에 대한 증명을 적절하게 검증하지 못하면 거짓 증명을 수용하게 될 수 있습니다.

정보 유출은 ZKP 프로세스 중에 의도치 않은 정보가 노출되는 상황을 말합니다. 이는 민감한 데이터의 부적절한 처리 또는 부적절한 보호 메커니즘으로 인해 발생할 수 있습니다. 정보 유출은 ZKP와 기반 블록체인 시스템의 프라이버시와 보안을 손상시킬 수 있습니다.

표준화되지 않은 암호화 구현은 ZKP에 취약성을 도입할 수 있습니다. ZKP에서 사용되는 암호화 알고리즘이나 프로토콜이 제대로 구현되지 않았거나 확립된 표준을 따르지 않으면 공격자가 악용할 수 있는 약점이 발생할 수 있습니다.

블록체인의 제로 지식 증명의 결함과 취약성을 완화하기 위해 여러 가지 방어 전략을 사용할 수 있습니다.

첫째, 프로젝트는 엄격한 보안 감사를 채택할 수 있습니다. ZKP 구현에 대한 철저한 보안 감사를 수행하면 취약성과 설계 결함을 식별하는 데 도움이 될 수 있습니다. 이 프로세스에는 위협 모델링, 코드 검사 및 내부 교차 검토가 포함되어 ZKP 회로 및 애플리케이션의 보안을 종합적으로 평가해야 합니다[25].

다음으로, 입력 값을 제한할 수 있습니다. 입력 값에 대한 적절한 제약 조건을 구현하면 가짜 증명 생성을 방지할 수 있습니다. 가능한 입력 범위를 제한함으로써 ZKP의 무결성을 더 잘 보장할 수 있습니다[23].

마지막으로 ZKP로 빌드할 때는 표준화된 암호화 표준만 사용해야 합니다. 확립된 암호화 표준과 모범 사례를 따르면 ZKP의 보안과 무결성을 보장하는 데 도움이 될 수 있습니다. 검증된 암호화 알고리즘과 프로토콜을 사용하면 취약성 위험이 줄어듭니다[25].

제로 지식 증명을 활용한 프로젝트

일반적인 예

제트캐시

Zcash는 zk-SNARK를 활용하는 암호화폐입니다. Zcash를 사용하면 사용자는 보낸 사람, 받는 사람, 거래 금액을 포함한 거래 세부 정보를 보호하면서도 거래의 유효성을 보장할 수 있습니다.

스타크넷

StarkNet은 프라이버시를 보호하는 zk-rollup 아키텍처를 통해 Ethereum에서 임의로 복잡한 프로그램을 배포하는 것을 용이하게 합니다. 주목할 만한 대출 프로토콜 Aave와 스테이블코인 프로젝트 Maker는 StarkNet에서 애플리케이션을 출시하여 기능을 활용하려고 합니다.

확장성은 StarkNet의 기반 위에 구축된 StarkEx zk-rollup을 통해 더욱 최적화될 수 있습니다. 이는 기본 결제 계층을 초과하는 거래량을 기밀로 거래할 수 있는 증명을 구성합니다.

STARK 증명 잠재력을 완전히 잠금 해제하기 위해 StarkWare는 Cairo 프로그래밍 언어를 도입했습니다. Cairo는 튜링 완전 계산에서 최적으로 간결한 검증 메타데이터를 생성할 수 있도록 지원합니다.

카이로의 비전을 실현하려면 지원 생태계를 구축해야 합니다. StarkWare는 실용적인 카이로 채택을 위한 문서, 프레임워크 및 보조 도구를 구축해야 합니다. 이러한 툴링과 지침을 구축해야만 카이로는 복잡한 작업 부하 아래에서 개인 정보 보호 스마트 계약과 확장 인프라를 간소화할 수 있습니다. 검증이 완료되면 카이로는 고성능 기밀 분산 원장 애플리케이션으로 가는 길을 닦습니다.

루프링

루프링은 이더리움에 구축된 분산형 거래소(DEX)로, zk-SNARK를 활용하여 사용자 자산을 보관하지 않고도 주문장 스타일 거래를 가능하게 합니다. 거래에서 프라이버시와 보안을 보장합니다.

지크싱크

zkSync는 정교한 프로그램을 위한 의지 아키텍처를 활용하는 Ethereum 스케일링 솔루션으로 구성됩니다. zk-SNARKS를 사용하여 zkSync는 기본 데이터를 숨기면서 작업을 확인합니다.

가용성은 제출을 뒷받침하는 zkPorter 지분 증명 프로토콜에 의존합니다. 정당화 논리를 제외하고 StarkNet과 달리 zkSync는 Ethereum Virtual Machine 호환성을 유지합니다.

이를 통해 환경 전반에서 익숙한 계약 실행이 용이해집니다. 분산형 거래소 1inch, 알고리즘 스테이블코인 Alchemix, 스테이블스왑 Curve를 포함한 프로젝트는 기능을 활용하기 위해 zkSync 인프라에 배포할 계획입니다.

기존 EVM 의미론을 활용하고 기밀 거래를 통해 처리량을 증가시키는 zkSync는 기존 Ethereum 애플리케이션을 원활하게 강화합니다. 스마트 계약을 zk-SNARK 검증 인터페이스에 적용하면 개인 정보 보호 오버헤드 감소로 기존 생태계 구성 요소가 확립됩니다.

zkSync는 선택적 데이터 공개를 통해 Ethereum 스마트 계약 확장을 약속합니다. zk 추론을 통합하는 동시에 EVM 의미론을 유지하면 복잡한 프로그램을 향상된 네트워크로 투명하게 전환할 수 있습니다. [26] [27] [28] [29]

미나 프로토콜

Mina Protocol은 아키텍처의 기본 부분으로 제로 지식 증명(zkSNARKs)을 활용하는 블록체인입니다. 이 프로토콜은 약 22KB의 작은 블록체인 크기를 유지하면서 확장성, 보안 및 분산화를 제공하는 것을 목표로 합니다. zkSNARKs를 활용함으로써 Mina Protocol은 기본 데이터를 공개하거나 개인 정보를 침해하지 않고도 사용자가 거래 및 기타 진술의 유효성을 암호화하여 증명할 수 있도록 합니다[1]. 이 접근 방식을 통해 Mina Protocol은 블록체인의 저장 및 계산 요구 사항을 최소화하는 동시에 효율적이고 안전한 검증을 달성할 수 있습니다.[30]

아즈텍 프로토콜

Aztec Protocol은 Ethereum과 Bitcoin 블록체인에 제로 지식 증명을 도입하는 것을 목표로 하는 개인 정보 보호 중심 프로젝트입니다. zk-SNARK(Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge)를 활용하여 Bitcoin 네트워크에서 기밀 거래를 가능하게 합니다. Aztec Protocol을 사용하면 사용자는 거래 세부 정보를 암호화하고 민감한 정보를 공개하지 않고 유효성을 증명하여 비공개로 거래할 수 있습니다[31].

비트코인에 대한 예

줄루 네트워크

Zulu Network는 제로 지식 증명을 활용하여 프라이버시, 보안 및 확장성을 강화합니다. 선택적 데이터 공개를 통해 제로 지식 증명은 분산 원장에 중요한 기능을 제공합니다.

개인 거래를 통해 프라이버시와 기밀성이 향상됩니다. 사용자는 거래 금액, 주소 또는 기타 민감한 세부 정보를 노출하지 않고 거래할 수 있습니다. 이는 개방형 블록체인에서 프라이버시를 보호합니다.

검증 및 감사는 제로 지식 증명을 통해서도 가능합니다. 이를 통해 실제 정보를 공개하지 않고도 계산 및 데이터 무결성을 검증할 수 있습니다. 이를 통해 프라이버시를 유지하면서 효과적인 감사를 용이하게 할 수 있습니다.

증명의 간결성으로 인해 상당한 확장성 이득이 발생합니다. 복잡한 계산은 간결한 증명을 통해 검증할 수 있어 저장 및 처리 비용이 줄어듭니다. 이를 통해 플랫폼의 처리량과 확장 기능이 향상됩니다.

신원 검증 및 인증은 제로 지식 증명을 통해 추가로 지원됩니다. 이를 통해 사용자 세부 정보를 숨기는 동시에 안전한 자격 증명 확인 및 액세스 제어가 가능합니다.

특히, 크로스 체인 상호 운용성은 프라이버시를 보호하는 자산 전송을 통해 용이해집니다. 제로 지식 증명은 크로스 플랫폼 통신 및 거래에서 데이터를 가려 네트워크 간 상호 작용을 뒷받침합니다.

결론

이 보고서에서 설명한 대로, 제로 지식 증명은 계산과 거래를 비공개로 검증하는 우아한 암호화 솔루션을 제공합니다. 이론적 기반은 수십 년 전에 확립되었지만, 지속적인 발전으로 이제 허가된 분산 시스템과 허가 없는 분산 시스템에서 실용적인 응용 프로그램을 제공하고 있습니다.

주목할 만한 블록체인 네트워크는 투명성 요구 사항을 희생하지 않고도 사용자 프라이버시를 강화하기 위해 ZKP 기술을 통합하기 시작했습니다. 암호화폐, 디지털 투표, 암호화된 데이터와 같은 분야는 모두 이러한 암호화 증명을 통해 프라이버시 보장을 얻을 수 있습니다. 증명 복잡성과 크기가 개선됨에 따라 기술적으로 실행 가능한 새로운 프로그램이 등장하고 있습니다.

앞으로 STARK와 같은 제한 없는 ZKP를 강화하고, 신뢰할 수 있는 설정 가정을 개선하고, 효율적인 프로토콜로 증명 가능한 진술의 클래스를 확장하기 위한 추가 연구가 계속 진행 중입니다. 표준화 노력은 기밀 유지가 필요한 산업 전반에 걸쳐 더 광범위한 채택을 촉진할 수도 있습니다.

제로 지식의 역량이 확장됨에 따라 핵심 분산 원장 프로토콜과 스마트 계약 및 애플리케이션 계층으로의 통합이 심화될 가능성이 높습니다. 이를 통해 블록체인에서의 상호 작용은 필요한 경우 투명성을 혼합한 것과 민감한 데이터에 대한 선택적 모호성을 혼합한 것과 유사해질 수 있습니다.

최근 프로젝트는 비트코인 블록체인에서 제로 지식 증명을 구축하는 데 상당한 진전을 이루었습니다. 그 결과, 제로 지식 증명은 비트코인 생태계에서 프라이버시와 보안을 강화하는 강력한 도구로 등장했습니다. 많은 프로젝트에서 제로 지식 증명의 구현을 탐구하여 zk-SNARK와 같은 기술을 활용했습니다. 일부는 프라이버시 문제를 해결하고, 다른 일부는 확장성을 개선하고, 더 나아가 더 고급 거래 유형을 가능하게 했습니다. 이러한 프로젝트는 비트코인 블록체인을 혁신하고 보다 개인적이고 효율적인 분산형 금융 시스템을 위한 길을 닦는 데 있어서 제로 지식 증명의 잠재력을 보여줍니다. 프라이버시와 확장성에 대한 수요가 증가함에 따라 이러한 프로젝트는 블록체인 생태계의 미래를 형성하는 데 중요한 역할을 합니다.

전반적으로, 제로 지식 암호화는 과학적으로 엄격하면서도 실질적으로 구현 가능한 증명 기술을 통해 민감한 작업을 비공개로 검증할 수 있도록 합니다. 이 분야에서 지속적인 진전은 앞으로 분산 시스템에서 개인 정보 보호 중심 설계를 크게 지원할 것입니다. 추가 연구를 통해 새로운 알고리즘, 최적화 및 배포 수단을 계속 탐색하여 약속을 완전히 실현해야 합니다.

인용된 작품

[1] SM a. CRS Goldwasser, "대화형 증명 시스템의 지식 복잡성", SIAM Journal on Computing, 제18권, 제1호, 186-208쪽, 1989년.

[2] MB a. O. Goldreich, "지식 증명 정의에 관하여", Advances in Cryptology — CRYPTO' 92, vol. 740, pp. 390–420, 1993.

[3] J. Groth, "선형 이하의 제로 지식 인수를 포함하는 선형 대수학", Advances in Cryptology — CRYPTO 2009, 192-208쪽, 2009.

[4] A. Harp, “세계적으로 유명한 암호학자이자 DFINITY의 수석 연구원인 Jens Groth가 두 번째로 IACR Test-of-Time 상을 수상했습니다.” Medium.

[5] FBARMSedaghat, “Groth-Sahai 증명: Zero to Hero!”, Mysten Labs, 2023.

[6] ACET a. MVE Ben-Sasson, “von Neumann 아키텍처를 위한 간결한 {비대화형} 제로 지식”, USENIX, 2019.

[7] “제로 지식 증명(zkps),” Klaytn Foundation.

[8] C. 팀, “제로 지식 증명 소개,” Chainalysis.

[9] L. Franceschini, “영지식 증명에 대한 가이드”, Medium.

[10] D. Bogdanov, “ZK-SNARK 대 ZK-Starks의 제로 지식 증명 설명”, LimeChain.

[11] GeeksforGeeks, “비대화형 제로 지식 증명”, GeeksforGeeks.

[12] E. Vatsadze, “Fiat-Shamir 변환: 비상호작용 증명 활성화”, Medium.

[13] JG a. M. Kohlweiss, “다수 중 하나의 증명: 비밀을 누설하고 코인을 사용하는 방법”, Advances in Cryptology — EUROCRYPT 2015, 253-280쪽, 2015.

[14] L. Harchandani, “Sigma 프로토콜을 사용한 제로 지식 증명”, Medium.

[15] P. Team, “암호화폐 방탄 – 소개,” Panther Protocol.

[16] BB 등, "Bulletproofs: 기밀 거래 등을 위한 짧은 증명", 2018 IEEE 보안 및 개인 정보 보호 심포지엄(SP), 315-334쪽, 2018.

[17] ZJW a. OCA Gabizon, “Plonk: 지식에 대한 세계적 비상호작용적 주장을 위한 라그랑주 기반에 대한 순열”, IACR 암호학 전자 인쇄 아카이브, 2019.

[18] C. Fairy, “zkSNARK의 후드 아래 - PLONK 프로토콜: 1-6부”, Medium.

[19] 0x, “plonk란 무엇인가?”, 중간.

[20] J. Singh, “zk-STARK 대 zk-SNARK 설명”, Cointelegraph, 2022.

[21] IBYH a. MRE Ben-Sasson, "확장 가능하고 투명하며 양자 이후 안전한 계산 무결성", IACR 암호학 ePrint 아카이브, 2018.

[22] A. Harp, “세계적으로 유명한 암호학자이자 DFINITY의 수석 연구원인 Jens Groth가 두 번째로 IACR Test-of-Time 상을 수상했습니다.” Medium.

[23] Oxorio, “ZK 증명의 일반적인 취약점”, Medium.

[24] O. Wright, “전문화된 제로 지식 증명 실패”, Trail of Bits 블로그.

[25] XT 등, "제로 지식 증명 취약성 분석 및 보안 감사", Cryptology ePrint Archive, 2024.

[26] A. Williams, “블록체인에서의 제로 지식 증명의 잠재력 해제”, ACM 커뮤니케이션, 2024.

[27] K. Wadhwani, “제로 지식 증명은 무엇에 사용됩니까?”, 블록체인 기술, 모빌리티, AI 및 IoT 개발 회사 미국, 캐나다.

[28] “제로 지식 블록체인 프로젝트 개요: Chainlink,” Chainlink, 2023.

[29] K. Learn, “2024년 최고의 제로 지식(ZK) 증명 암호화폐 프로젝트”, KuCoin Learn, 2024.

[30] Sarika, “mina 블록체인 아키텍처에 대한 빠른 가이드”, Medium, 2024.

[31] J. Wu, “Aztec Network의 “네트워크” 설명”, Medium, 2022.

Zulu Network 소개

Zulu Network는 비트코인 경제를 발전시키고, 흥미로운 혁신을 통해 비트코인 생태계를 강화하는 새로운 종류의 Bitcoin Layer 2입니다. Zulu는 BitVM2를 사용하여 비트코인 수준의 보안을 달성한 최초의 Bitcoin Layer 2로, 개발자가 EVM 및 UTXO 계층 모두에서 dApp을 원활하게 배포할 수 있도록 합니다.

Zulu는 BitVM에 기여한 주요 기업으로, 최초의 신뢰 최소화 비트코인 브릿지를 출시할 준비가 되었습니다. 755,000명 이상의 사용자와 함께 Zulu와 함께 비트코인에서 수익을 창출하고 미래를 형성하세요.

웹사이트 | 트위터 | 텔레그램

Medium
면책조항: 상기 내용은 작자의 개인적인 의견입니다. 따라서 이는 Followin의 입장과 무관하며 Followin과 관련된 어떠한 투자 제안도 구성하지 않습니다.
라이크
7
즐겨찾기에 추가
2
코멘트