위험 경고: '가상화폐', '블록체인'이라는 이름으로 불법 자금 모집 위험에 주의하세요. — 은행보험감독관리위원회 등 5개 부처
검색
로그인
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
시장 동향 보기
HashKey Capital의 ZK에 대한 심층 해석(1): 역사적 원리와 산업
HashKey Hub
特邀专栏作者
2022-08-10 10:44
이 기사는 약 5198자로, 전체를 읽는 데 약 8분이 소요됩니다
처음부터 ZKP 이론 및 응용 수준의 일부 변경 사항을 정리합니다.

원본 출처: HashKey Capital

첫 번째 레벨 제목

1. 영지식 증명의 역사

현대의 영지식 증명 시스템은 1985년에 제안되어 1989년에 출판된 Goldwasser, Micali 및 Rackoff: The Knowledge Complexity of Interactive Proof Systems(GMR85)가 공동으로 출판한 논문에서 유래되었습니다. 이 논문은 대화형 시스템에서 진술이 옳다는 것을 증명하기 위해 K 라운드의 상호 작용 후에 얼마나 많은 지식을 교환해야 하는지를 주로 설명합니다. 교환된 지식을 0으로 만들 수 있는 경우 이를 영지식 증명이라고 합니다. 증명자(prover)는 자원이 무제한이고 검증자(verifer)는 자원이 제한적이라고 가정합니다. 대화형 시스템의 문제는 증명이 완전히 수학적으로 증명할 수는 없지만 확률적으로는 정확하지만 확률은 작다는 것입니다(1/2^n).

따라서 인터랙티브 시스템은 완벽하지 않고 대략적으로만 완성되며, 이를 기반으로 탄생한 비대화형 시스템(NP) 시스템이 완성되어 영지식 증명 시스템을 위한 완벽한 선택이 됩니다.

초기의 영지식 증명 시스템은 효율성과 사용성이 부족하여 항상 이론적인 수준에 머물렀고, 지난 10년이 되어서야 번성하기 시작했습니다. 최전선에 와서 매우 중요한 방향이되었습니다. 특히 범용, 비대화형, 증명 크기 제한 영지식 증명 프로토콜을 개발하는 것은 가장 중요한 탐색 방향 중 하나입니다.

기본적으로 영지식 증명은 증명 속도, 검증 속도 및 증명 볼륨 크기 간의 절충이며 이상적인 프로토콜은 빠른 증명, 빠른 검증 및 작은 증명 볼륨입니다.

영지식 증명의 가장 중요한 돌파구는 ZKP에서 가장 중요한 zk-SNARK 그룹의 이론적 선구자이기도 한 Groth의 2010년 논문 Short Pairing-based Non-interactive Zero-Knowledge Arguments입니다.

영지식 증명 적용에서 가장 중요한 진전은 2015년 Z-cash가 사용한 영지식 증명 시스템으로 거래 및 금액 프라이버시 보호를 실현했으며 이후 zk-SNARK와 스마트의 결합으로 발전했습니다. 계약 및 zk-SNARK는 더 넓은 애플리케이션 시나리오에 진입했습니다.

이 기간 동안의 몇 가지 중요한 학업 성과는 다음과 같습니다.

2013년 피노키오(PGHR13): 입증 및 검증 시간을 해당 범위로 압축하는 피노키오: 거의 실용적인 검증 가능한 계산(Pinocchio: Nearly Practical Verifiable Computation)도 Zcash에서 사용하는 기본 프로토콜입니다.

Groth16: On the Size of Pairing-based Non-interactive Arguments in 2016, 증명의 크기를 단순화하고 검증 효율성을 향상시키는 것은 현재 가장 널리 사용되는 ZK 기본 알고리즘입니다.

Bulletproofs (BBBPWM17) Bulletproofs: Short Proofs for Confidential Transactions and More 2017년에 Bulletproof 알고리즘, 신뢰할 수 있는 설정이 필요하지 않은 매우 짧은 비대화형 영지식 증명을 제안했으며 6개월 후 모네로에 적용될 예정입니다. 이론을 애플리케이션에 매우 빠르게 연결합니다.

2018년 zk-STARKs(BBHR18)는 Scalable, transparent, post-quantum secure computeal integrity로 신뢰할 수 있는 설정이 필요하지 않은 ZK-STARK 알고리즘 프로토콜을 제안했는데 이는 ZK 개발의 또 다른 방향으로 눈길을 끈다. , 가장 중요한 ZK 프로젝트가 탄생했습니다.

첫 번째 레벨 제목

2. 영지식 증명 적용에 대한 간략한 소개

가장 널리 사용되는 영지식 증명의 두 가지 응용 프로그램은 개인 정보 보호와 용량 확장입니다. 초기에는 개인 거래가 시작되고 Zcash 및 Monero와 같은 여러 잘 알려진 프로젝트가 출시되면서 개인 거래는 한때 매우 중요한 범주가 되었지만 개인 거래의 필요성이 업계에서 기대하는 것만큼 두드러지지 않았기 때문에 대표 사업의 유형이 둔화되기 시작했다.(역사의 무대를 벗어나지 않고) 2, 3층 진영에 천천히 진입한다. Application 레벨에서 용량 확장의 필요성이 한계에 이르렀고, 2020년에 Ethereum 2.0(합의 레이어로 이름이 변경됨)이 롤업 중심 경로로 전환됨에 따라 ZK 시리즈가 공식적으로 업계의 관심을 끌게 되었고 초점이 되었습니다.

개인 거래: SNARK를 사용하는 Zcash, Tornado, 방탄을 사용하는 Monero, Dash 등 개인 거래를 구현한 많은 프로젝트가 있습니다. 엄밀히 말하면 Dash는 ZKP를 사용하지 않고 주소만 숨길 수 있고 금액은 숨길 수 없는 단순하고 조잡한 통화 혼합 시스템을 사용하므로 여기서는 건너뜁니다.

이미지 설명

Source: Demystifying the Role of zk-SNARKs in Zcash

  • 시스템 설정 단계에서 KeyGen 기능의 도움으로 증명 키(암호 증명 다항식) 및 확인 키가 생성됩니다.

  • CPA 단계에서 ECIES 암호화 방식(Elliptic Curve Integrated Encryption Scheme)을 사용하여 공개 및 개인 키 생성

  • MintingCoins 단계에서 생성된 새 코인의 수입니다. 퍼블릭 주소와 코인의 약속

  • 쏟아지는 단계에서 zk-SNARK 증명이 생성되고 증명이 쏟아지는 트랜잭션 장부에 추가됩니다.

  • Verification 단계에서 Verifier는 Mint 및 Pour의 거래량이 올바른지 확인합니다.

  • 수신 단계에서 수신자는 동전을 받습니다. 받은 코인을 사용하려면 계속해서 Pouring에 전화하여 zk-SNARK 인증을 구성하고 위의 4-6단계를 반복하여 거래를 완료하십시오.

Zcash는 여전히 영지식, 즉 UTXO를 기반으로 하기 때문에 일부 거래 정보는 차폐만 되고 실제로는 은폐되지 않는 한계가 있습니다. Bitcoin의 설계를 기반으로 하는 별도의 네트워크 때문에 확장(다른 응용 프로그램과 결합)이 어렵습니다. 차폐(즉, 프라이빗 트랜잭션)의 사용률은 10% 미만으로 프라이빗 트랜잭션이 성공적으로 확장되지 않았음을 나타냅니다. (2202부터)

Tornado가 사용하는 단일 대형 믹싱 풀은 보다 일반적이며 Ethereum과 같은 "검증된" 네트워크를 기반으로 합니다. Torndao는 본질적으로 zk-SNARK를 사용하는 통화 혼합 풀이며 신뢰할 수 있는 설정은 Groth 16 페이퍼를 기반으로 합니다. Tornado Cash가 제공할 수 있는 기능은 다음과 같습니다.

  • 입금된 코인만 출금 가능

  • 어떤 코인도 두 번 인출할 수 없습니다.

  • 인증 프로세스는 통화의 무효화 알림(Nullifier)에 구속되며 인증은 동일하지만 Nullifier가 다른 해시는 출금을 허용하지 않습니다.

  • 보안은 126비트 보안으로 구성으로 인해 저하되지 않습니다.

Vitalik은 용량 확장에 비해 프라이버시는 상대적으로 달성하기 쉽고 일부 확장 프로토콜을 설정할 수 있다면 프라이버시는 기본적으로 문제가 되지 않을 것이라고 언급했습니다.

확장: ZK의 확장은 Mina와 같은 첫 번째 레이어 네트워크에서 수행할 수도 있고 두 번째 레이어 네트워크 즉 zk-롤업에서 수행할 수도 있습니다. 2018년 Vitalik의 게시물, 대량 tx 검증을 통해 잠재적으로 ~500 tx/sec까지 온체인 확장.

이미지 설명

Source: Polygon

ZK 롤업의 장단점:

장점: 저렴한 비용, 경제의 공격을 받는 OP와 달리 거래를 지연할 필요가 없고, 프라이버시를 보호할 수 있으며, 신속하게 완결성을 달성합니다.

이미지 설명

출처: 이더리움 리서치

이미지 설명

Source: Starkware

현재 시장에서 가장 경쟁력 있는 ZKrollup 프로젝트로는 Starkware의 StarkNet, Matterlabs의 zkSync 및 Aztec의 Aztec connect, Polygon의 Hermez 및 Miden, Loopring, Scroll 등이 있습니다.

기본적으로 기술적 경로는 SNARK(및 개선된 버전) 및 STARK의 선택과 EVM(호환성 또는 동등 포함)에 대한 지원에 있습니다.

  • Aztec은 일반화된 SNARK 프로토콜-Plonk 프로토콜을 개발했습니다.작동중인 Aztec3는 EVM을 지원할 수 있지만 프라이버시는 EVM 호환성에 우선합니다.

  • 스타넷은 신뢰할 수 있는 설정이 필요하지 않은 zkp인 zk-STARK를 사용하지만 현재 EVM을 지원하지 않으며 자체 컴파일러 및 개발 언어를 가지고 있습니다.

  • zkSync는 또한 plonk를 사용하고 EVM을 지원합니다. zkSync 2.0은 EVM과 호환되며 자체 zkEVM이 있습니다.

  • EVM 호환 ZK 롤업인 Scroll은 이더리움 재단의 zkEVM 프로젝트의 중요한 기여자이기도 합니다.

EVM 호환성 문제에 대해 간략히 설명합니다.

첫 번째 레벨 제목

3. ZK SNARK 구현의 기본 원칙

Goldwasser, Micali 및 Rackoff는 영지식 증명에 세 가지 속성이 있다고 제안했습니다.

  • 완전성: 합리적인 증인이 있는 모든 진술은 검증자가 확인할 수 있습니다.

  • 건전성: 불합리한 증인만 있는 모든 진술은 검증자에 의해 검증되어서는 안 됩니다.

  • 영지식: 검증 과정은 영지식

따라서 ZKP를 이해하기 위해 zk-SNARK부터 시작합니다. 현재 많은 블록체인 애플리케이션이 SNARK로 시작하기 때문입니다. 먼저 zk-SNARK를 살펴보겠습니다.

zk-SNARK는 다음을 의미합니다. 영지식 증명(zh-SNARK)은 영지식 간결한 비대화형 지식 인수입니다.

영지식: 증명 프로세스는 영지식이며 중복 정보를 노출하지 않습니다.

간결함: 작은 유효성 검사 크기

비대화형: 비대화형 프로세스

인수: 계산은 신뢰할 수 있습니다. 즉, 컴퓨팅 능력이 제한된 인증자는 증명을 위조할 수 없으며, 컴퓨팅 능력이 무제한인 인증자는 증명을 위조할 수 있습니다.

지식: 증명자는 유효한 정보를 모른 채 매개변수와 증명을 구성할 수 없습니다.

증명자의 경우 증거(해시 함수의 입력 또는 Merkle-tree 노드를 결정하는 경로와 같은 증인)를 모른 채 일련의 매개 변수 및 증명을 구성하는 것은 불가능합니다. "

이미지 설명

Source: https://learnblockchain.cn/article/3220

단계는 다음과 같습니다.

1. 문제를 회로로 변환

2. 회로를 R1CS 형태로 평평하게 만듭니다.

3. R1CS를 QAP(Quadratic Arithmetic Programs) 형식으로 변환

4. 신뢰할 수 있는 설정을 구축하고 PK(증명 키), VK(확인 키)를 포함한 임의 매개변수 생성

5. zk-SNARK 증명 생성 및 검증

다음 기사에서는 zk-SNARK의 원리와 응용 프로그램을 연구하고 ZK-SNARK의 개발을 확인하기 위해 몇 가지 사례를 사용하며 zk-STARK와의 관계를 탐구할 것입니다.

Reference:

https://ethresear.ch/t/on-chain-scaling-to-potentially-500-tx-sec-through-mass-tx-validation/3477

https://blog.polygon.technology/zkverse-why-zero-knowledge-rollups-need-a-new-consensus-mechanism/

https://blog.decentriq.com/zk-snarks-primer-part-one/

https://vitalik.ca/general/2021/01/26/snarks.html

https://z.cash/technology/zksnarks/

Hashkey Capital
Odaily 공식 커뮤니티에 가입하세요