new constructions of statistical nizks
play

New Constructions of Statistical NIZKs: Dual-Mode DV-NIZKs and More - PowerPoint PPT Presentation

New Constructions of Statistical NIZKs: Dual-Mode DV-NIZKs and More Benot Libert, Alain Passelgue, Hoeteck Wee, and David J. Wu May 2020 Non-Interactive Zero-Knowledge (NIZK) [BFM88] accept if NP language 0,1 0,1


  1. New Constructions of Statistical NIZKs: Dual-Mode DV-NIZKs and More Benoît Libert, Alain Passelègue, Hoeteck Wee, and David J. Wu May 2020

  2. Non-Interactive Zero-Knowledge (NIZK) [BFM88] accept if NP language ℒ ⊆ 0,1 ∗ 𝑦 ∈ 0,1 ∗ 𝑦 ∈ ℒ 𝜌 prover verifier ∀𝑦 ∈ ℒ ∶ Pr 𝑄, 𝑊 (𝑦) = accept = 1 Completeness: “Honest prover convinces honest verifier of true statements” ∀𝑦 ∉ ℒ, ∀𝑄 ∗ ∶ Pr 𝑄 ∗ , 𝑊 Soundness: 𝑦 = accept ≤ 𝜁 “No prover can convince honest verifier of false statement” can consider both computational and statistical variants

  3. Non-Interactive Zero-Knowledge (NIZK) [BFM88] NP language ℒ 𝒯 (𝑦) ≈ 𝑑 𝜌 real distribution ideal distribution Zero-Knowledge: for all efficient verifiers 𝑊 ∗ , there exists an efficient simulator 𝒯 where ∀𝑦 ∈ ℒ ∶ 𝑄, 𝑊 ∗ 𝑦 ≈ 𝒯 (𝑦) can consider both computational and statistical variants

  4. Designated-Verifier NIZKs This work: focus primarily on the designated-verifier model public CRS secret verification key 𝜏 𝑙 𝑊 trusted setup prover verifier

  5. Designated-Verifier NIZKs This work: focus primarily on the designated-verifier model Requirement: soundness should 𝜏 𝑙 𝑊 hold even if the prover has access to the verification oracle 𝜌 = Prove(𝜏, 𝑦, 𝑥) prover verifier

  6. The Landscape of (DV)-NIZKs Construction Soundness Zero-Knowledge Assumption [FLS90] statistical computational factoring [CHK03] statistical computational CDH (pairing group) 𝑙 -Lin (pairing group) [GOS06] stat. comp. comp. stat. [PS19] stat. comp. comp. stat. LWE [SW14] computational statistical iO + OWFs publicly-verifiable statistical computational CDH [QRW19, CH19, KNYY19] [LQRWW19] computational computational CDH/LWE/LPN [CDIKLOV19] stat. comp. comp. stat. DCR malicious designated-verifier

  7. The Landscape of (DV)-NIZKs Construction Soundness Zero-Knowledge Assumption Statistical zero-knowledge seems more difficult to achieve 𝑙 -Lin (pairing group) [GOS06] stat. comp. comp. stat. [PS19] stat. comp. comp. stat. LWE [SW14] computational statistical iO + OWFs publicly-verifiable [CDIKLOV19] stat. comp. comp. stat. DCR malicious designated-verifier

  8. This Work: Statistical NIZKs 𝒯 (𝑦) ≈ 𝑡 𝜌 Statistical ZK provides everlasting privacy This work: Compiling NIZKs in the hidden-bits model to statistical (DV)-NIZKs • Statistical DV-NIZKs from DDH in pairing-free groups / QR / DCR

  9. This Work: Statistical NIZKs 𝒯 (𝑦) ≈ 𝑡 𝜌 Statistical ZK provides everlasting privacy More precisely: DV-NIZKs are “dual - mode” and maliciously secure This work: Compiling NIZKs in the hidden-bits model to statistical (DV)-NIZKs • Statistical DV-NIZKs from DDH in pairing-free groups / QR / DCR

  10. This Work: Statistical NIZKs 𝒯 (𝑦) ≈ 𝑡 𝜌 Statistical ZK provides everlasting privacy Weaker assumption compared to [GOS06] which required 𝑙 -Lin in both groups ( 𝑙 -KerLin is a search assumption implied by 𝑙 -Lin) This work: Compiling NIZKs in the hidden-bits model to statistical (DV)-NIZKs • Statistical DV-NIZKs from DDH in pairing-free groups / QR / DCR • Statistical NIZKs from 𝑙 -Lin ( 𝔿 1 ) + 𝑙 -KerLin ( 𝔿 2 ) in a pairing group

  11. The Landscape of (DV)-NIZKs Construction Soundness Zero-Knowledge Assumption [FLS90] statistical computational factoring [CHK03] statistical computational CDH (pairing group) 𝑙 -Lin ( 𝔿 1 , 𝔿 2 ) [GOS06] stat. comp. comp. stat. 𝒍 -Lin ( 𝔿 𝟐 ), 𝒍 -KerLin ( 𝔿 𝟑 ) This work computational statistical [PS19] stat. comp. comp. stat. LWE [SW14] computational statistical iO + OWFs publicly-verifiable statistical computational CDH [QRW19, CH19, KNYY19] [LQRWW19] computational computational CDH/LWE/LPN [CDIKLOV19] stat. comp. comp. stat. DCR This work stat. comp. comp. stat. DDH/QR/DCR malicious designated-verifier

  12. NIZKs in the Hidden Bits Model [FLS90] 𝑜 bits long 0 1 1 1 0 0 1 0 1 1 prover has access to uniformly random bit string of length 𝑜 prover

  13. NIZKs in the Hidden Bits Model [FLS90] 𝑜 bits long 0 1 1 1 0 0 1 0 1 1 prover has access to uniformly random bit string of length 𝑜 𝐽 ⊆ [𝑜], 𝜌 prover prover outputs a subset 𝐽 ⊆ [𝑜] and a proof 𝜌

  14. NIZKs in the Hidden Bits Model [FLS90] 𝑜 bits long 1 0 0 0 verifier only sees the subset of the bits in 𝐽 and proof 𝜌 𝐽 ⊆ [𝑜], 𝜌 verifier prover prover outputs a subset 𝐽 ⊆ [𝑜] and a proof 𝜌

  15. NIZKs in the Hidden Bits Model [FLS90] 𝑜 bits long 1 0 0 0 verifier only sees the subset of the bits in 𝐽 and proof 𝜌 [FLS90]: There exists a perfect NIZK proof for 𝐽 ⊆ [𝑜], 𝜌 any NP language in the hidden-bits model verifier prover prover outputs a subset 𝐽 ⊆ [𝑜] and a proof 𝜌

  16. The FLS Compiler [FLS90] NIZKs in the hidden-bits model CRS “commitment” 𝜏 cryptographic compiler 𝑐 1 𝑐 2 ⋯ 𝑐 𝑜 hidden-bits string Prover can selectively open 𝜏 to 𝑗, 𝑐 𝑗 for indices 𝑗 of its choosing NIZKs in the CRS model

  17. The FLS Compiler [FLS90] Main properties: CRS • Binding: Can only open 𝜏 to a single bit for each position “commitment” 𝜏 • Hiding: Unopened bits should be hidden • Succinctness: 𝜏 ≪ 𝑜 𝑐 1 𝑐 2 ⋯ 𝑐 𝑜 Soundness: If 𝜏 ≪ 𝑜 and there are not too hidden-bits string many “bad” hidden -bits strings ⇒ prover cannot find a “bad” 𝜏 that fools verifier Prover can selectively open 𝜏 to 𝑗, 𝑐 𝑗 for indices 𝑗 of its choosing Zero-Knowledge: Unopened bits hidden to verifier

  18. The FLS Compiler [FLS90] NIZKs in the hidden-bits model CRS “commitment” 𝜏 cryptographic compiler 𝑐 1 𝑐 2 ⋯ 𝑐 𝑜 hidden-bits string Instantiations: [FLS90]: trapdoor permutations (computational NIZK proofs) [CHK03]:CDH over a pairing group (computational NIZK proofs) [QRW19, CH19, KNYY19]:hidden-bits generators from CDH NIZKs in the CRS model (computational DV-NIZK proofs)

  19. The FLS Compiler [FLS90] NIZKs in the hidden-bits model CRS “commitment” 𝜏 cryptographic compiler 𝑐 1 𝑐 2 ⋯ 𝑐 𝑜 Possible to instantiate FLS hidden-bits string to obtain statistical ZK? Instantiations: [FLS90]: trapdoor permutations (computational NIZK proofs) [CHK03]:CDH over a pairing group (computational NIZK proofs) [QRW19, CH19, KNYY19]:hidden-bits generators from CDH NIZKs in the CRS model (computational DV-NIZK proofs)

  20. The FLS Compiler [FLS90] NIZKs in the hidden-bits model NIZKs in the CRS model cryptographic compiler This work: dual-mode hidden bits generator [FLS90]: trapdoor permutations (computational NIZK proofs) • “Binding mode:” computational DV -NIZK proofs [CHK03]: CDH over a pairing group (computational NIZK proofs) • “Hiding mode:” statistical DV -NIZK arguments [QRW19, CH19, KNYY19]: computational hidden-bits generators from CDH (computational DV-NIZK arguments)

  21. Warm-Up: The FLS Compiler from CDH [CHK03, QRW19, CH19, KNYY19] Ingredient: let 𝔿 be a prime-group of order 𝑞 with generator 𝑕 CRS: 𝑕, ℎ 1 = 𝑕 𝑥 1 , … , ℎ 𝑜 = 𝑕 𝑥 𝑜 ∈ 𝔿 𝑥 1 , … , 𝑥 𝑜 ← ℤ 𝑞 Each exponent 𝑧 ∈ ℤ 𝑞 defines a hidden bits string hard-core bit 𝑧 𝑐 1 𝑐 2 ⋯ 𝑐 𝑜 𝑐 𝑗 ≔ hc ℎ 𝑗 Committing to a hidden-bits string: Prover samples 𝑧 ← ℤ 𝑞 and commits to hidden bits string with 𝜏 = 𝑕 𝑧 ∈ 𝔿 𝑧 and prove that 𝑕, 𝑕 𝑧 , ℎ 𝑗 , ℎ 𝑗 𝑧 is a DDH tuple Opening 𝝉 to a bit 𝒄 𝒋 : reveal ℎ 𝑗 𝑧 [CHK03]: Use a pairing: 𝑓 𝑕 𝑧 , ℎ 𝑗 = 𝑓 𝑕, ℎ 𝑗 publicly-verifiable [QRW19, CH19, KNYY19]: Use Cramer-Shoup hash-proof system [CS98, CS02, CKS08] designated-verifier

  22. Warm-Up: The FLS Compiler from CDH [CHK03, QRW19, CH19, KNYY19] Ingredient: let 𝔿 be a prime-group of order 𝑞 with generator 𝑕 CRS: 𝑕, ℎ 1 = 𝑕 𝑥 1 , … , ℎ 𝑜 = 𝑕 𝑥 𝑜 ∈ 𝔿 𝑥 1 , … , 𝑥 𝑜 ← ℤ 𝑞 Each exponent 𝑧 ∈ ℤ 𝑞 defines a hidden bits string hard-core bit 𝑧 𝑐 1 𝑐 2 ⋯ 𝑐 𝑜 𝑐 𝑗 ≔ hc ℎ 𝑗 Committing to a hidden-bits string: Prover samples 𝑧 ← ℤ 𝑞 and commits to hidden bits string with 𝜏 = 𝑕 𝑧 ∈ 𝔿 Statistical binding: choice of 𝜏 (with ℎ 1 , … , ℎ 𝑜 ) completely defines 𝑐 1 , … , 𝑐 𝑜 Resulting NIZK satisfies statistical soundness

  23. Warm-Up: The FLS Compiler from CDH [CHK03, QRW19, CH19, KNYY19] Ingredient: let 𝔿 be a prime-group of order 𝑞 with generator 𝑕 CRS: 𝑕, ℎ 1 = 𝑕 𝑥 1 , … , ℎ 𝑜 = 𝑕 𝑥 𝑜 ∈ 𝔿 𝑥 1 , … , 𝑥 𝑜 ← ℤ 𝑞 Each exponent 𝑧 ∈ ℤ 𝑞 defines a hidden bits string hard-core bit 𝑧 𝑐 1 𝑐 2 ⋯ 𝑐 𝑜 𝑐 𝑗 ≔ hc ℎ 𝑗 Need to compute 𝑕 𝑥 𝑗 𝑧 from 𝑕 𝑥 𝑗 Committing to a hidden-bits string: and 𝑕 𝑧 which is precisely CDH Prover samples 𝑧 ← ℤ 𝑞 and commits to hidden bits string with 𝜏 = 𝑕 𝑧 ∈ 𝔿 Computational hiding: unopened bits computationally hidden since hc is hard-core Resulting NIZK satisfies computational zero-knowledge

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend