A certifying compiler for zero-knowledge proofs of knowledge based on Σ-protocols

  • Authors:
  • José Bacelar Almeida;Endre Bangerter;Manuel Barbosa;Stephan Krenn;Ahmad-Reza Sadeghi;Thomas Schneider

  • Affiliations:
  • Universidade do Minho, Portugal;Bern University of Applied Sciences, Biel-Bienne, Switzerland;Universidade do Minho, Portugal;Bern University of Applied Sciences, Biel-Bienne, Switzerland, and, University of Fribourg, Switzerland;Horst Görtz Institute for IT-Security, Ruhr-University Bochum, Germany;Horst Görtz Institute for IT-Security, Ruhr-University Bochum, Germany

  • Venue:
  • ESORICS'10 Proceedings of the 15th European conference on Research in computer security
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Zero-knowledge proofs of knowledge (ZK-PoK) are important building blocks for numerous cryptographic applications. Although ZK-PoK have a high potential impact, their real world deployment is typically hindered by their significant complexity compared to other (non-interactive) crypto primitives. Moreover, their design and implementation are time-consuming and error-prone. We contribute to overcoming these challenges as follows: We present a comprehensive specification language and a compiler for ZK-PoK protocols based on Σ-protocols. The compiler allows the fully automatic translation of an abstract description of a proof goal into an executable implementation. Moreover, the compiler overcomes various restrictions of previous approaches, e.g., it supports the important class of exponentiation homomorphisms with hidden-order co-domain, needed for privacy-preserving applications such as DAA. Finally, our compiler is certifying, in the sense that it automatically produces a formal proof of the soundness of the compiled protocol for a large class of protocols using the Isabelle/HOL theorem prover.