Download presentation
Presentation is loading. Please wait.
Published byฮฮตฯฮดฯฯฮฟฯ ฮงฮฑฯฮถฮทฮนฯฮฌฮฝฮฝฮฟฯ Modified over 5 years ago
1
Linear-Time Zero-Knowledge Proofs for Arithmetic Circuit Satisfiability
Jens Groth University College London Joint work with Jonathan Bootle, Andrea Cerulli, Essam Ghadafi and Mohammad Hajiabadi to appear at Asiacrypt 2017
2
๏ Zero-knowledge proof Statement: Witness
๐ฅ 1 โง ๐ฅ 2 โงยฌ ๐ฅ 3 โจ( ๐ฅ 2 โง x 4 โง ๐ฅ 5 ) Witness Completeness: Honest prover convinces verifier ๏ Zero-knowledge: Nothing but truth revealed Soundness: Statement is true Prover Verifier
3
Internet voting Encrypts vote to keep it private
Tally without decrypting individual votes Ciphertext Voter Election authorities
4
Is the encrypted vote valid?
Election fraud Encrypts 1,000 votes for Macron Is the encrypted vote valid? !!!!!!!! Ciphertext Voter Election authorities
5
Zero-knowledge proof as solution
Zero-knowledge: Vote is secret Soundness: Vote is valid Ciphertext Zero-knowledge proof for valid vote encrypted Voter Election authorities
6
Cryptography Problems typically arise when attackers deviate from a protocol (active attack) Zero-knowledge proofs prevent deviation and give security against active attacks
7
Parameters Efficiency Security Communication (bits)
Proverโs computation (seconds/operations) Verifierโs computation (seconds/operations) Round complexity (number of messages) Security Setup Cryptographic assumptions
8
Arithmetic circuit satisfiability
Circuit with fan-in 2 multiplication and addition gates over a finite field ๐ญ Statement specifies circuit and constants Witness consists of wire assignments such that all gates satisfied 5 7 2
9
Zero-knowledge proof for arithmetic circuits
Arithmetic circuit and constants Public coin setup and challenges Satisfying assignment Perfect completeness: Honest prover convinces verifier ๏ Statistical special honest verifier zero-knowledge: Nothing but truth revealed Computational soundness: Statement is true Prover Verifier
10
Efficiency Arithmetic circuit and constants
Security parameter: ๐ Field size: ๐ญ = ๐ ๐ 1 Number of gates: ๐= ๐ ๐ 1 Efficiency Arithmetic circuit and constants Prover computation: ๐(๐) multiplications in ๐ญ Verifier computation: ๐(๐) additions in ๐ญ Communication: poly ๐ ๐ elements in ๐ญ Rounds: ๐( log log ๐)
11
Strategy Reformulate arithmetic circuit satisfiability as set of conditions over matrices of field elements Prove each of the constraints in an ideal linear commitment model Compile the ideal linear commitment model to the standard model using error-correcting codes and collision-resistant hash functions
12
Organize gate inputs and outputs as matrices
Organize left inputs, right inputs and outputs of addition gates into matrices ๐ด,๐ต,๐ถโ ๐น ๐ ๐ด ร๐ such that if the gates are satisfied ๐ด+๐ต=๐ถ Organize left inputs, right inputs and outputs of multiplication gates into matrices ๐ท,๐ธ,๐นโ ๐น ๐ ๐ ร๐ such that if the gates are satisfied ๐ทโ๐ธ=๐น where โ is the entry-wise product Moreover, sort the gates such that constants appear in full rows of these matrices, e.g., ๐ด= ๐ 11 ๐ 12 ๐ ๐ 31 ๐ 32 ๐ ๐ต= ๐ 21 ๐ 22 ๐ 23 ๐ 31 ๐ 32 ๐ โฆ
13
Arithmetic circuit specification
Public parameters specify ๐๐=(๐ญ,๐) A statement is given by ๐ข= ๐ ๐ด , ๐ ๐ต ,๐, ๐ ๐ ๐โ๐ ๐ is the set of rows of constants ๐ ๐ ๐ describes the wiring of the circuit A witness ๐ค is a matrix of input and output values ๐= ๐ด ๐ต ๐ถ ๐ท ๐ธ ๐น = ๐ โฎ ๐ 3 ๐ ๐ด +3 ๐ ๐ต โ ๐ญ 3 ๐ ๐ด +3 ๐ ๐ ร๐
14
Wiring of the circuit Consider the additions and multiplications ๐ฃ 1,1 ๐ฃ 1,2 ๐ฃ 1,3 ๐ฃ 2,1 ๐ฃ 2,2 ๐ฃ 2,3 ๐ฃ 3,1 ๐ฃ 3,2 ๐ฃ 3, ๐ฃ 4,1 ๐ฃ 4,2 ๐ฃ 4,3 ๐ฃ 5,1 ๐ฃ 5,2 ๐ฃ 5,3 ๐ฃ 6,1 ๐ฃ 6,2 ๐ฃ 6,3 = ๐ฃ 7,1 ๐ฃ 7,2 ๐ฃ 7,3 ๐ฃ 8,1 ๐ฃ 8,2 ๐ฃ 8,3 ๐ฃ 9,1 ๐ฃ 9,2 ๐ฃ 9, ๐ฃ 10,1 ๐ฃ 10,2 ๐ฃ 10,3 ๐ฃ 11,1 ๐ฃ 11,2 ๐ฃ 11,3 โ ๐ฃ 12,1 ๐ฃ 12,2 ๐ฃ 12,3 ๐ฃ 13,1 ๐ฃ 13,2 ๐ฃ 13,3 = ๐ฃ 14,1 ๐ฃ 14,2 ๐ฃ 14,3 ๐ฃ 15,1 ๐ฃ 15,2 ๐ฃ 15,3 The wiring is specified by a permutation ๐โ ฮฃ 3 ๐ ๐ด +3 ๐ ๐ต ร ๐ with cycles through sets of indices on the same wire. For instance ๐ 9,2 =(5,2), ๐ 5,2 = 11,1 , ๐ 11,1 =(9,2) ๐ฃ 5,2 ๐ฃ 11,1 ๐ฃ 9,2
15
Witness satisfying circuit
For arithmetic circuit specified by ๐ข= ๐ ๐ด , ๐ ๐ต ,๐, ๐ ๐ ๐โ๐ The witness ๐= ๐ ๐ ๐=1 3 ๐ ๐ด +3 ๐ ๐ต satisfies the arithmetic circuit if and only if Constants are correct, ๐ ๐ = ๐ ๐ for all ๐โ๐ Addition gates are satisfied, ๐ด+๐ต=๐ถ Multiplication gates are satisfied, ๐ทโ๐ธ=๐น Values respect the wiring of the circuit, ๐ฃ ๐ ๐,๐ = ๐ฃ ๐,๐ for all ๐โ[3 ๐ ๐ด +3 ๐ ๐ต ] and ๐โ[๐]
16
Ideal linear commitment model
๐ ๐ ๐=1 ๐ 1 ๐ 1 ๐ฅ ๐ ๐ ๐= ๐ ๐ 1 + ๐ 2 ๐ 2 ๐ ๐=1 ๐ 1 + ๐ 2 ๐ ๐ ๐ ๐
17
Arithmetic circuit satisfiability in the ideal linear commitment model
Statement ๐ข=( ๐ ๐ด , ๐ ๐ต ,๐, ๐ข ๐ ๐โ๐ ) ๐ ๐ 3 ๐ ๐ด +3 ๐ ๐ต ๐โฒ ๐โฒ โฎ ๐ Proofs ๐ satisfies ๐ด+๐ต=๐ถ ๐ทโ๐ธ=๐น ๐ ๐ = ๐ ๐ ๐ฃ ๐ ๐,๐ = ๐ฃ ๐,๐ ๐ ๐ ๐โฒ โฎ
18
Addition proof in ideal linear commitment model
Statement ๐ข=( ๐ ๐ด , ๐ด , ๐ต ,[๐ถ]) ๐ด,๐ต,๐ถ ๐ด,๐ต,๐ถ 3 ๐ ๐ด ๐ ๐ Verifier picks ๐ฅโ๐ญ Sets ๐=(๐ฅ,โฆ, ๐ฅ ๐ ๐ด ) and ๐= ๐,๐,โ๐ Gets response ๐=๐๐ด+๐๐ตโ๐๐ถ Accepts if and only if ๐=๐
19
Linear error-correcting code
Encoding function ๐ธ ๐ถ : ๐ญ ๐ โ ๐ญ ๐ 1,4,0 โฆ 3,1,4,2,0,5 1,4,1 โฆ(3,0,0,2,3,5) โฆ Linear minimum distance (hamming) Linearity ๐ธ ๐ถ ๐ 1 + ๐ผ๐ธ ๐ถ ๐ 2 = ๐ธ ๐ถ ๐ 1 +๐ผ ๐ 2 1,4,0 + 1,4,1 = 2,8,1 โฆ(6,1,4,4,3,10) Linear-time computable Example: Druk-Ishai 2014
20
From ideal to real linear commitments
๐= ๐ฃ 1,1 โฏ ๐ฃ 1,๐ โฑ ๐ฃ ๐,1 โฏ ๐ฃ ๐,๐ ๐ธ= ๐ 1,1 โฏ ๐ 1,๐ โฑ ๐ ๐,1 โฏ ๐ ๐,๐ ๐ธ ๐ถ โ โ 1 =โ ๐ธ 1 ,โฏ, โ ๐ =โ( ๐ธ ๐ ) ๐, โ 1 ,โฆ, โ ๐ ๐ ๐๐
21
From ideal to real linear commitments
๐= ๐ฃ 1,1 โฏ ๐ฃ 1,๐ โฑ ๐ฃ ๐,1 โฏ ๐ฃ ๐,๐ ๐ธ= ๐ 1,1 โฏ ๐ 1,๐ โฑ ๐ ๐,1 โฏ ๐ ๐,๐ ๐ธ ๐ถ โ โ 1 =โ ๐ธ 1 ,โฏ, โ ๐ =โ( ๐ธ ๐ ) ๐๐ { ๐ 1 ,โฆ, ๐ ๐ } ๐ธ ๐ 1 ,โฆ, ๐ธ ๐ ๐
22
From ideal to real linear commitments
๐= ๐ฃ 1,1 โฏ ๐ฃ 1,๐ โฑ ๐ฃ ๐,1 โฏ ๐ฃ ๐,๐ ๐ธ= ๐ 1,1 โฏ ๐ 1,๐ โฑ ๐ ๐,1 โฏ ๐ ๐,๐ ๐ธ ๐ถ ๐ ๐ ๐ธ ๐ถ ๐๐ ๐ 1 =๐ ๐ธ 1 ,โฆ, ๐ ๐ =๐ ๐ธ ๐ Verifier spot checks ๐ columns with ๐ธ ๐ถ (๐๐) Code has high minimum distance, so cheating caught ๐ ๐ โฆ
23
Linear commitments with zero-knowledge
Randomized encoding Exposure resilient ๐= ๐ฃ 1,1 โฏ ๐ฃ 1,๐ โฑ ๐ฃ ๐,1 โฏ ๐ฃ ๐,๐ ๐ธ= ๐ 1,1 โฏ ๐ 1,2๐ โฑ ๐ ๐,1 โฏ ๐ ๐,2๐ ๐ธ ๐ถ โฆ ๐ ๐ =commit ๐ธ ๐ ; ๐ ๐ โฆ ๐, ๐ 1 ,โฆ, ๐ 2๐ Commitments can be constructed from hash functions ๐ ๐๐
24
Efficiency and security
Arguments Proofs Perfect completeness Computational soundness - assuming binding commits Statistical SHVZK Using [AHIKV17] commits Prover ๐(๐) multiplications Verifier ๐ ๐ additions Communication poly ๐ ๐ Rounds ๐( log log ๐) Perfect completeness Statistical soundness Computational SHVZK - assuming hiding commits Using [IKOS08] commits Prover ๐(๐) multiplications Verifier ๐ ๐ additions Communication ๐(๐) elements Rounds ๐( log log ๐)
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.