dsrvlabs 주간 세미나 자료 공유합니다.
==============================
1부 Road to ZKP
1-1 complexity theory and NP proof system (7/9)
1-2 NP proof system의 문제점과 IPS
1-3 IPS 의 문제점과 ZKP
1-4 PCP theorem and PCP to construct ZKP
1-5 Completeness, Soundness and Zero-knowledge
2부 How to construct zk-snark
2-1 PCP vs LPCP (and LPCP won!)
2-2 So, Trusted setup
2-3 Computation to Arithmetization
2-4 Power of Tau
2-5 Homomorphic encryption; ECC and pairing
2-6 Adding Randomness
2-7 Libsnark
2-8 zk-snark update
2. • 1부 Road to ZKP
• 1-1 complexity theory and NP proof system (7/10)
• 1-2 NP proof system의 문제점과 IPS
• 1-3 IPS 의 문제점과 ZKP
• 1-4 PCP theorem and PCP to construct ZKP
• 1-5 Completeness, Soundness and Zero-knowledge
•2부 How to construct zk-snark
• 2-1 PCP vs LPCP (and LPCP won!)
• 2-2 So, Trusted setup
• 2-3 Computation to Arithmetization
• 2-4 Power of Tau
• 2-5 Homomorphic encryption; ECC and pairing
• 2-6 Adding Randomness
• 2-7 Libsnark
목차는 변경될 수 있습니다. ;)
3. Zero-Knowledge Proof: between Co
mplexity theory and Cryptography
Rise of the SNARKs with Howard Wu (SCIPR Lab, Blockchain at Berkeley, UC Berkeley)
https://www.youtube.com/watch?v=Hig_1ZFbWRM
4. Completeness >>
Soundness
Soundness >>
completeness
Zero-knowledge
Complexity theory and NP Problem
NP Proof System
Interactive Proof System
Zero-Knowledge Proof
검증 가능한 시스템을 구성 ; Proof system
Verifier가 악의적일 가능성을 제거 ; One-way function
Prover 가 악의적일 가능성을 제거 ; Interaction, Randomness
1부; Road to ZKP
Turing Machine and deterministic algorithm
‘계산 가능한 기계'와 ‘계산 가능한 함수'를 정의
5. Complexity theory and NP Problem
• (결정론적) 튜링머신
• 1936 년 Alan Turing
• 실제 기계가 아닌 추상적인 수학 개념의 오토마타 (Automata)
• 모든 수학 문제들을 풀 수 있는 일반적 알고리즘이 (혹은 기계가) 있는가? 그러한 알고리즘이
(혹은 기계가) 원칙적으로 존재할 수 있는가?
• ‘계산 가능한 기계’를 어떻게 수식으로 정의할 것인가?
• “어떤 함수의 값이 순수한 기계적 과정을 통해 계산될 수 있을 때, 그 함수를 계산 가능한 함수로 정의한다"
• 순수한 기계적 과정 (결정론적 알고리즘)
6. • Computationally Hard Problem
• 튜링머신이 (물리적 튜링머신, CPU, 전용 집적회로 등 현존하는 모든
계산장치) 적당한 시간내에 해를 찾아낼 수 있는 결정론적
알고리즘이 존재하지 않는 문제
• NP Problem (Non-deterministic polynomial time Pr
oblem)
• 결정론적 튜링머신이 다항시간 내에 문제를 풀 수 있는 알고리즘이
존재하지 않으나(not solvable), 해가 제시된다면 해가 해당 문제를
충족시키는지는 다항시간 내에 검증가능(but verifiable)한 문제
• 비결정론적 튜링머신이 다항시간 내에 문제를 풀 수 있는 알고리즘은
존재 (이론적으로)
7. Traveling salesman problem
• NP Problem
• ‘n개의 도시를 모두 방문하고 돌아오는 최단 거리를 구하라’’
• 가능한 모든 경로의 수 : n! (O(n!))
• ‘n 개의 도시를 모두 방문하고 시작도시로 돌아오는 경로의
거리가 k보다 짧은 경로가 존재하는가?’
• 해를 알고 있다면 예/아니오로 답할 수 있다
Not Solvable
But verifiable
8. (NP) Proof System
Unbounded Prover P
(Non-deterministic Turing Machine)
Polytime Verifier V
(Deterministic Turing Machine)
NP Problem
Yes! or No!
Assignment Y
10. Next …
• NP Proof System의 문제점과 IPS의 등장
• 검증자의 역할 제거, 증명자에게 과도한 역할을 부여
• 악의적인 증명자에 의해 Fake proof 생성 가능
• 증명자의 말에 회의적인 검증자를 도입
• 결정론적 튜링머신 V -> 확률론적 튜링머신 V
• 2회 이상의 interaction
• Randomness의 부여
• 어떻게…?
-> Interactive Proof System