Improving the Performance of Cryptographic Voting Protocols

  • Rolf HaenniEmail author
  • Philipp Locher
  • Nicolas Gailly
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11599)


Cryptographic voting protocols often rely on methods that require a large number of modular exponentiations. Corresponding performance bottlenecks may appear both on the server and the client side. Applying existing optimization techniques is often mentioned and recommended in the literature, but their potential has never been analyzed in depth. In this paper, we investigate existing algorithms for computing fixed-base exponentiations and product exponentiations. Both of them appear frequently in voting protocols. We also explore the potential of applying small-exponent techniques. It turns out that using these techniques in combination, the overall computation time can be reduced by two or more orders of magnitude.


  1. 1.
    Baird, L.C.: Big Integer Library by Leemon.
  2. 2.
    Brickell, E.F., Gordon, D.M., McCurley, K.S., Wilson, D.B.: Fast exponentiation with precomputation. In: Rueppel, R.A. (ed.) EUROCRYPT 1992. LNCS, vol. 658, pp. 200–207. Springer, Heidelberg (1993). Scholar
  3. 3.
    Giry, D.: Cryptographic Key Length Recommendation.
  4. 4.
    Granlund, T.: The GNU Multiple Precision Arithmetic Library - Edition 6.1.2 (2016).
  5. 5.
    Haenni, R., Locher, P., Koenig, R., Dubuis, E.: Pseudo-code algorithms for verifiable re-encryption mix-nets. In: Brenner, M., et al. (eds.) FC 2017. LNCS, vol. 10323, pp. 370–384. Springer, Cham (2017). Scholar
  6. 6.
    Indutny, F.: BigNum in Pure Javascript.
  7. 7.
    Koshiba, T., Kurosawa, K.: Short exponent Diffie-Hellman problems. In: Bao, F., Deng, R., Zhou, J. (eds.) PKC 2004. LNCS, vol. 2947, pp. 173–186. Springer, Heidelberg (2004). Scholar
  8. 8.
    Lee, P.J., Lim, C.H.: Method for exponentiation in a public-key cryptosystem. United States Patent No. 5999627, December 1999Google Scholar
  9. 9.
    Lim, C.H., Lee, P.J.: More flexible exponentiation with precomputation. In: Desmedt, Y.G. (ed.) CRYPTO 1994. LNCS, vol. 839, pp. 95–107. Springer, Heidelberg (1994). Scholar
  10. 10.
    Menezes, A.J., van Oorschot, P.C., Vanstone, S.A.: Handbook of Applied Cryptography. CRC Press, Boca Raton (1996)zbMATHGoogle Scholar
  11. 11.
    Möller, N.: Mini-GMP - A Minimalistic Implementation of a GNU GMP Subset.
  12. 12.
    Perlitch, A.: JSBN - Javascript Big Number.
  13. 13.
    Terelius, B., Wikström, D.: Proofs of restricted shuffles. In: Bernstein, D.J., Lange, T. (eds.) AFRICACRYPT 2010. LNCS, vol. 6055, pp. 100–113. Springer, Heidelberg (2010). Scholar
  14. 14.
    Wikström, D.: A commitment-consistent proof of a shuffle. In: Boyd, C., González Nieto, J. (eds.) ACISP 2009. LNCS, vol. 5594, pp. 407–421. Springer, Heidelberg (2009). Scholar
  15. 15.
    Wikström, D.: User Manual for the Verificatum Mix-Net - VMN Version 3.0.3. Verificatum AB, Stockholm, Sweden (2018)Google Scholar
  16. 16.
    Wikström, D.: GMP Modular Exponentiation Extension.
  17. 17.
    Wikström, D.: Verificatum JavaScript Cryptography Library.
  18. 18.
    Wu, T.: RSA and ECC in JavaScript.

Copyright information

© International Financial Cryptography Association 2020

Authors and Affiliations

  1. 1.Bern University of Applied SciencesBielSwitzerland
  2. 2.École Polytechnique Fédérale de LausanneLausanneSwitzerland

Personalised recommendations