--- _id: '2979' abstract: - lang: eng text: "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.\n\nWe 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. \n" acknowledgement: |- This work was in part funded by the European Community's Seventh Framework Programme (FP7) under grant agreement no. 216499. A preliminary version of the compiler can be found at http://zkc.cace-project.eu. alternative_title: - LNCS author: - first_name: José full_name: Almeida, José Bacelar last_name: Almeida - first_name: Endre full_name: Bangerter, Endre last_name: Bangerter - first_name: Manuel full_name: Barbosa, Manuel last_name: Barbosa - first_name: Stephan full_name: Stephan Krenn id: 329FCCF0-F248-11E8-B48F-1D18A9856A87 last_name: Krenn orcid: 0000-0003-2835-9093 - first_name: Ahmad full_name: Sadeghi, Ahmad-Reza last_name: Sadeghi - first_name: Thomas full_name: Schneider, Thomas last_name: Schneider citation: ama: 'Almeida J, Bangerter E, Barbosa M, Krenn S, Sadeghi A, Schneider T. A Certifying Compiler for Zero-Knowledge Proofs of Knowledge Based on Sigma-Protocols. In: Gritzalis D, Preneel B, Theoharidou M, eds. Vol 6345. Springer; 2010:151-167. doi:10.1007/978-3-642-15497-3' apa: 'Almeida, J., Bangerter, E., Barbosa, M., Krenn, S., Sadeghi, A., & Schneider, T. (2010). A Certifying Compiler for Zero-Knowledge Proofs of Knowledge Based on Sigma-Protocols. In D. Gritzalis, B. Preneel, & M. Theoharidou (Eds.) (Vol. 6345, pp. 151–167). Presented at the ESORICS: European Symposium on Research in Computer Security, Springer. https://doi.org/10.1007/978-3-642-15497-3' chicago: Almeida, José, Endre Bangerter, Manuel Barbosa, Stephan Krenn, Ahmad Sadeghi, and Thomas Schneider. “A Certifying Compiler for Zero-Knowledge Proofs of Knowledge Based on Sigma-Protocols.” edited by Dimitris Gritzalis, Bart Preneel, and Marianthi Theoharidou, 6345:151–67. Springer, 2010. https://doi.org/10.1007/978-3-642-15497-3. ieee: 'J. Almeida, E. Bangerter, M. Barbosa, S. Krenn, A. Sadeghi, and T. Schneider, “A Certifying Compiler for Zero-Knowledge Proofs of Knowledge Based on Sigma-Protocols,” presented at the ESORICS: European Symposium on Research in Computer Security, 2010, vol. 6345, pp. 151–167.' ista: 'Almeida J, Bangerter E, Barbosa M, Krenn S, Sadeghi A, Schneider T. 2010. A Certifying Compiler for Zero-Knowledge Proofs of Knowledge Based on Sigma-Protocols. ESORICS: European Symposium on Research in Computer Security, LNCS, vol. 6345, 151–167.' mla: Almeida, José, et al. A Certifying Compiler for Zero-Knowledge Proofs of Knowledge Based on Sigma-Protocols. Edited by Dimitris Gritzalis et al., vol. 6345, Springer, 2010, pp. 151–67, doi:10.1007/978-3-642-15497-3. short: J. Almeida, E. Bangerter, M. Barbosa, S. Krenn, A. Sadeghi, T. Schneider, in:, D. Gritzalis, B. Preneel, M. Theoharidou (Eds.), Springer, 2010, pp. 151–167. conference: name: 'ESORICS: European Symposium on Research in Computer Security' date_created: 2018-12-11T12:00:40Z date_published: 2010-08-30T00:00:00Z date_updated: 2021-01-12T07:40:13Z day: '30' doi: 10.1007/978-3-642-15497-3 editor: - first_name: Dimitris full_name: Gritzalis, Dimitris last_name: Gritzalis - first_name: Bart full_name: Preneel, Bart last_name: Preneel - first_name: Marianthi full_name: Theoharidou, Marianthi last_name: Theoharidou extern: 1 intvolume: ' 6345' main_file_link: - open_access: '1' url: http://eprint.iacr.org/2010/339.pdf month: '08' oa: 1 page: 151 - 167 publication_status: published publisher: Springer publist_id: '3724' quality_controlled: 0 status: public title: A Certifying Compiler for Zero-Knowledge Proofs of Knowledge Based on Sigma-Protocols type: conference volume: 6345 year: '2010' ...