Zero-Knowledge in the Applied Pi-calculus and Automated Verification of the Direct Anonymous Attestation Protocol
- 1 May 2008
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- Vol. 6 (10816011) , 202-215
- https://doi.org/10.1109/sp.2008.23
Abstract
We devise an abstraction of zero-knowledge protocols that is accessible to a fully mechanized analysis. The abstraction is formalized within the applied pi-calculus using a novel equational theory that abstractly characterizes the cryptographic semantics of zero-knowledge proofs. We present an encoding from the equational theory into a convergent rewriting system that is suitable for the automated protocol verifier ProVerif. The encoding is sound and fully automated. We successfully used ProVerif to obtain the first mechanized analysis of (a simplified variant of) the Direct Anonymous Attestation (DAA) protocol. This required us to devise novel abstractions of sophisticated cryptographic security definitions based on interactive games. The analysis reported a novel attack on DAA that was overlooked in its existing cryptographic security proof. We propose a revised variant of DAA that we successfully prove secure using ProVerif.Keywords
This publication has 23 references indexed in Scilit:
- Logical concepts in cryptographyACM SIGACT News, 2007
- Formal analysis of Kerberos 5Theoretical Computer Science, 2006
- OFMC: A symbolic model checker for security protocolsInternational Journal of Information Security, 2005
- Nonmalleable CryptographySIAM Journal on Computing, 2000
- Secrecy by typing in security protocolsJournal of the ACM, 1999
- A Calculus for Cryptographic Protocols: The Spi CalculusInformation and Computation, 1999
- Proofs that yield nothing but their validity or all languages in NP have zero-knowledge proof systemsJournal of the ACM, 1991
- Analyzing encryption protocols using formal verification techniquesIEEE Journal on Selected Areas in Communications, 1989
- Timestamps in key distribution protocolsCommunications of the ACM, 1981
- Using encryption for authentication in large networks of computersCommunications of the ACM, 1978