2010
Autores
Almeida, JB; Bangerter, E; Barbosa, M; Krenn, S; Sadeghi, AR; Schneider, T;
Publicação
IACR Cryptology ePrint Archive
Abstract
2012
Autores
Almeida, JB; Barbosa, M; Bangerter, E; Barthe, G; Krenn, S; Béguelin, SZ;
Publicação
IACR Cryptology ePrint Archive
Abstract
2010
Autores
Almeida, JB; Bangerter, E; Barbosa, M; Krenn, S; Sadeghi, AR; Schneider, T;
Publicação
COMPUTER SECURITY-ESORICS 2010
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 Sigma-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.
2011
Autores
Almeida, JB; Moreira, N; Pereira, D; de Sousa, SM;
Publicação
IMPLEMENTATION AND APPLICATION OF AUTOMATA
Abstract
In this paper we present a computer assisted proof of the correctness of a partial derivative automata construction from a regular expression within the Coq proof assistant. Tins proof is part of a formalization of Kleene algebra and regular languages in Coq towards their usage in program certification.
2012
Autores
Almeida, JB; Barbosa, M; Bangerter, E; Barthe, G; Krenn, S; Beguelin, SZ;
Publicação
Proceedings of the ACM Conference on Computer and Communications Security
Abstract
Developers building cryptography into security-sensitive applications face a daunting task. Not only must they understand the security guarantees delivered by the constructions they choose, they must also implement and combine them correctly and efficiently. Cryptographic compilers free developers from this task by turning high-level specifications of security goals into efficient implementations. Yet, trusting such tools is hard as they rely on complex mathematical machinery and claim security properties that are subtle and difficult to verify. In this paper we present ZKCrypt, an optimizing cryptographic compiler achieving an unprecedented level of assurance without sacrificing practicality for a comprehensive class of cryptographic protocols, known as Zero-Knowledge Proofs of Knowledge. The pipeline of ZKCrypt integrates purpose-built verified compilers and verifying compilers producing formal proofs in the CertiCrypt framework. By combining the guarantees delivered by each stage, ZKCrypt provides assurance that the output implementation securely realizes the abstract proof goal given as input. We report on the main characteristics of ZKCrypt, highlight new definitions and concepts at its foundations, and illustrate its applicability through a representative example of an anonymous credential system. Copyright © 2012 ACM.
2004
Autores
Almeida, JB; Almeida, PS; Baquero, C;
Publicação
DISTRIBUTED COMPUTING, PROCEEDINGS
Abstract
Version vectors play a central role in update tracking under optimistic distributed systems, allowing the detection of obsolete or inconsistent versions of replicated data. Version vectors do not have a bounded representation; they are based on integer counters that grow indefinitely as updates occur. Existing approaches to this problem are scarce; the mechanisms proposed are either unbounded or operate only under specific settings. This paper examines version vectors as a mechanism for data causality tracking and clarifies their role with respect to vector clocks. Then, it introduces bounded stamps and proves them to be a correct alternative to integer counters in version vectors. The resulting mechanism, bounded version vectors, represents the first bounded solution to data causality tracking between replicas subject to local updates and pairwise symmetrical synchronization.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.