<p>Distributed zero-knowledge (dZK) proofs, recently introduced by Boneh et al. (CRYPTO‘19), allow a prover <InlineEquation ID="IEq1"> <EquationSource Format="TEX">\(\mathcal{P}\)</EquationSource> <EquationSource Format="MATHML"><math> <mi mathvariant="script">P</mi> </math></EquationSource> </InlineEquation> to prove NP statements on an input <i>x</i>, which is distributed between <i>k</i> verifiers <InlineEquation ID="IEq2"> <EquationSource Format="TEX">\(\mathcal{V}_1,\ldots ,\mathcal{V}_k\)</EquationSource> <EquationSource Format="MATHML"><math> <mrow> <msub> <mi mathvariant="script">V</mi> <mn>1</mn> </msub> <mo>,</mo> <mo>…</mo> <mo>,</mo> <msub> <mi mathvariant="script">V</mi> <mi>k</mi> </msub> </mrow> </math></EquationSource> </InlineEquation>, where each <InlineEquation ID="IEq3"> <EquationSource Format="TEX">\(\mathcal{V}_i\)</EquationSource> <EquationSource Format="MATHML"><math> <msub> <mi mathvariant="script">V</mi> <mi>i</mi> </msub> </math></EquationSource> </InlineEquation> holds only a piece of <i>x</i>. As in standard ZK proofs, dZK proofs guarantee Completeness when all parties are honest; Soundness against a malicious prover colluding with <i>t</i> verifiers; and Zero Knowledge against a subset of <i>t</i> malicious verifiers, in the sense that they learn nothing about the NP witness and the input pieces of the honest verifiers. Unfortunately, dZK proofs provide no correctness guarantee for an honest prover against a subset of maliciously corrupted verifiers. In particular, such verifiers might be able to “frame” the prover, causing honest verifiers to reject a true claim. This is a significant limitation, since such scenarios arise naturally in dZK applications, e.g., for proving honest behavior, and such attacks are indeed possible in existing dZKs (Boneh et al., CRYPTO‘19). We put forth and study the notion of strong completeness for dZKs, guaranteeing that true claims are accepted even when <i>t</i> verifiers are maliciously corrupted. We then design strongly-complete dZK proofs in the honest-majority setting using the “MPC-in-the-head” paradigm of Ishai et al. (STOC‘07), providing a novel analysis that exploits the unique properties of the distributed setting. To demonstrate the usefulness of strong completeness, we present several applications in which it is instrumental in obtaining security. First, we construct a certifiable version of Verifiable Secret Sharing (VSS), which is a VSS in which the dealer additionally proves that the shared secret satisfies a given NP relation. Our construction withstands a constant fraction of corruptions, whereas a previous construction of Ishai et al. (TCC‘14) required <InlineEquation ID="IEq4"> <EquationSource Format="TEX">\(k={\textsf{poly}}\left( t\right) \)</EquationSource> <EquationSource Format="MATHML"><math> <mrow> <mi>k</mi> <mo>=</mo> <mi mathvariant="sans-serif">poly</mi> <mfenced close=")" open="("> <mi>t</mi> </mfenced> </mrow> </math></EquationSource> </InlineEquation>. We also design a reusable version of certifiable VSS that we introduce, in which the dealer can prove an unlimited number of predicates on the same shared secret. Finally, we extend a compiler of Boneh et al. (CRYPTO‘19), who used dZKs to transform a class of “natural” semi-honest protocols in the honest-majority setting into maliciously secure ones with abort. Our compiler uses strongly-complete dZKs to obtain identifiable abort.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Your Reputation’s Safe with Me: Framing-Free Distributed Zero-Knowledge Proofs

  • Carmit Hazay,
  • Muthuramakrishnan Venkitasubramaniam,
  • Mor Weiss

摘要

Distributed zero-knowledge (dZK) proofs, recently introduced by Boneh et al. (CRYPTO‘19), allow a prover \(\mathcal{P}\) P to prove NP statements on an input x, which is distributed between k verifiers \(\mathcal{V}_1,\ldots ,\mathcal{V}_k\) V 1 , , V k , where each \(\mathcal{V}_i\) V i holds only a piece of x. As in standard ZK proofs, dZK proofs guarantee Completeness when all parties are honest; Soundness against a malicious prover colluding with t verifiers; and Zero Knowledge against a subset of t malicious verifiers, in the sense that they learn nothing about the NP witness and the input pieces of the honest verifiers. Unfortunately, dZK proofs provide no correctness guarantee for an honest prover against a subset of maliciously corrupted verifiers. In particular, such verifiers might be able to “frame” the prover, causing honest verifiers to reject a true claim. This is a significant limitation, since such scenarios arise naturally in dZK applications, e.g., for proving honest behavior, and such attacks are indeed possible in existing dZKs (Boneh et al., CRYPTO‘19). We put forth and study the notion of strong completeness for dZKs, guaranteeing that true claims are accepted even when t verifiers are maliciously corrupted. We then design strongly-complete dZK proofs in the honest-majority setting using the “MPC-in-the-head” paradigm of Ishai et al. (STOC‘07), providing a novel analysis that exploits the unique properties of the distributed setting. To demonstrate the usefulness of strong completeness, we present several applications in which it is instrumental in obtaining security. First, we construct a certifiable version of Verifiable Secret Sharing (VSS), which is a VSS in which the dealer additionally proves that the shared secret satisfies a given NP relation. Our construction withstands a constant fraction of corruptions, whereas a previous construction of Ishai et al. (TCC‘14) required \(k={\textsf{poly}}\left( t\right) \) k = poly t . We also design a reusable version of certifiable VSS that we introduce, in which the dealer can prove an unlimited number of predicates on the same shared secret. Finally, we extend a compiler of Boneh et al. (CRYPTO‘19), who used dZKs to transform a class of “natural” semi-honest protocols in the honest-majority setting into maliciously secure ones with abort. Our compiler uses strongly-complete dZKs to obtain identifiable abort.