Analysis of an Electronic Voting Protocol in the Applied Pi Calculus

  • Steve Kremer
  • Mark Ryan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3444)


Electronic voting promises the possibility of a convenient, efficient and secure facility for recording and tallying votes in an election. Recently highlighted inadequacies of implemented systems have demonstrated the importance of formally verifying the underlying voting protocols. The applied pi calculus is a formalism for modelling such protocols, and allows us to verify properties by using automatic tools, and to rely on manual proof techniques for cases that automatic tools are unable to handle. We model a known protocol for elections known as FOO 92 in the applied pi calculus, and we formalise three of its expected properties, namely fairness, eligibility, and privacy. We use the ProVerif tool to prove that the first two properties are satisfied. In the case of the third property, ProVerif is unable to prove it directly, because its ability to prove observational equivalence between processes is not complete. We provide a manual proof of the required equivalence.


Blind Signature Electronic Vote Privacy Property Vote Protocol Strong Secrecy 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abadi, M., Blanchet, B., Fournet, C.: Just fast keying in the pi calculus. In: Schmidt, D. (ed.) ESOP 2004. LNCS, vol. 2986, pp. 340–354. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  2. 2.
    Abadi, M., Cortier, V.: Deciding knowledge in security protocols under equational theories. In: Díaz, J., Karhumäki, J., Lepistö, A., Sannella, D. (eds.) ICALP 2004. LNCS, vol. 3142, pp. 46–58. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  3. 3.
    Abadi, M., Fournet, C.: Mobile values, new names, and secure communication. In: Nielson, H.R. (ed.) Proceedings of the 28th ACM Symposium on Principles of Programming Languages, London, UK, January 2001, pp. 104–115. ACM Press, New York (2001)Google Scholar
  4. 4.
    Blanchet, B.: An efficient cryptographic protocol verifier based on prolog rules. In: Schneider, S. (ed.) 14th IEEE Computer Security Foundations Workshop, Cape Breton, Nova Scotia, Canada, June 2001, pp. 82–96. IEEE Computer Society Press, Los Alamitos (2001)CrossRefGoogle Scholar
  5. 5.
    Blanchet, B.: Automatic Proof of Strong Secrecy for Security Protocols. In: IEEE Symposium on Security and Privacy, Oakland, California, May 2004, pp. 86–100 (2004)Google Scholar
  6. 6.
    Chadha, R., Kremer, S., Scedrov, A.: Formal analysis of multi-party contract signing. In: Focardi, R. (ed.) 17th IEEE Computer Security Foundations Workshop, Asilomar, CA, USA, June 2004, pp. 266–279. IEEE Computer Society Press, Los Alamitos (2004)CrossRefGoogle Scholar
  7. 7.
    Chaum, D.: Blind signatures for untraceable payments. In: Advances in Cryptology, Proceedings of CRYPTO 1982, pp. 199–203. Plenum Press, New York (1983)Google Scholar
  8. 8.
    Corin, R., Doumen, J., Etalle, S.: Analysing password protocol security against off-line dictionary attacks. In: 2nd International Workshop on Security Issues with Petri Nets and other Computational Models (WISP 2004). Electronic Notes in Theoretical Computer Science. Elsevier, Amsterdam (2004) (to appear)Google Scholar
  9. 9.
    Véronique Cortier. Personal communication (2004)Google Scholar
  10. 10.
    Delaune, S., Jacquemard, F.: A theory of dictionary attacks and its complexity. In: Focardi, R. (ed.) 17th IEEE Computer Security Foundations Workshop, Asilomar, Pacific Grove, CA, USA, June 2004, pp. 2–15. IEEE Computer Society Press, Los Alamitos (2004)CrossRefGoogle Scholar
  11. 11.
    Fournet, C., Abadi, M.: Hiding names: Private authentication in the applied pi calculus. In: Okada, M., Pierce, B.C., Scedrov, A., Tokuda, H., Yonezawa, A. (eds.) ISSS 2002. LNCS, vol. 2609, pp. 317–338. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  12. 12.
    Fujioka, A., Okamoto, T., Ohta, K.: A practical secret voting scheme for large scale elections. In: Zheng, Y., Seberry, J. (eds.) AUSCRYPT 1992. LNCS, vol. 718, pp. 244–251. Springer, Heidelberg (1993)Google Scholar
  13. 13.
    Kohno, T., Stubblefield, A., Rubin, A.D., Wallach, D.S.: Analysis of an electronic voting system. In: IEEE Symposium on Security and Privacy. IEEE Computer Society Press, Los Alamitos (2004)Google Scholar
  14. 14.
    Lowe, G.: An attack on the Needham-Schroeder public-key authentication protocol. Information Processing Letters 56, 131–133 (1995)zbMATHCrossRefGoogle Scholar
  15. 15.
    Lowe, G.: Analysing protocols subject to guessing attacks. In: Guttman, J. (ed.) Proceedings of the Workshop on Issues in the Theory of Security (WITS 2002), Portland, Oregon, USA (January 2002)Google Scholar
  16. 16.
    Zuzana Rjaskova. Electronic voting schemes. Master’s thesis, Comenius University (2002),

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Steve Kremer
    • 1
  • Mark Ryan
    • 2
  1. 1.Laboratoire Spécification et VérificationCNRS UMR 8643 & INRIA Futurs projet SECSI & ENS CachanFrance
  2. 2.School of Computer ScienceUniversity of BirminghamUK

Personalised recommendations