Skip to content

Practical Introduction to Blockchain-based Remote Electronic Voting

Notifications You must be signed in to change notification settings


Folders and files

Last commit message
Last commit date

Latest commit



23 Commits

Repository files navigation

Practical Introduction to Blockchain-based Remote Electronic Voting

Christian Killer, Bruno Rodrigues, Eder Scheid, Muriel Franco, Burkhard Stiller Communication Systems Group (CSG), Department of Informatics (IfI) University of Zurich (UZH), Switzerland

This is the official repository for Tutorial 2 Practical Introduction to Blockchain-based Remote Electronic Voting presented at the 2020 IEEE International Conference on Blockchain and Cryptocurrency Conference.

Tutorial Materials


  • Even though the full tutorial code is dockerized, it takes (a) some Docker expertise and (b) sufficient RAM and CPU to make it run smoothly on Linux or Windows.
  • Unfortunately, macOS is not supported
  • Thus, if you don't want to locally deploy it, simply follow the tutorial and read the code as you see fit.
  • The practical part of the tutorial is based on the code of Provotum 2.0, which was developed by Moritz Eck, Alex Scheitlin and Nik Zaugg in the scope of their Master Project with the CSG@IfI.


Setting up a short demo election on your local OS

  1. git clone
  2. Set up your github.json
  3. ./
  4. docker psand verify all components are running by visiting the links provided below

Voting Authority on
Sealer 1 on
Sealer 2 on
Sealer 3 on
Voter Frontend on

If everything is running smoothly so far, you can continue by following the tutorial steps.

Setting up a demo election on a remote VPS

  1. Make sure the image is Docker-ready, which saves you some time
  2. Follow the steps above for the local OS
  3. Use ssh -D 5000 -C -q -N [REMOTE-IP] to enable -D Dynamic application-level port forwarding, -C use compression, -q quiet mode, -N macOS specific (Do not execute a remote command. This is useful for just forwarding ports.)
  4. Set up a proxy in your browser as shown in the screenshot here.


  • [KRM20] C. Killer, B. Rodrigues, R. Matile, E. Scheid, B. Stiller: Design and Implementation of Cast-as-Intended Verifiability for a Blockchain-based Voting System. In: Proceedings of the 2020 ACM Symposium on Applied Computing. SAC ’20, Association for Computing Machinery, New York, NY, USA, 2020. Paper:

  • [KS19] C. Killer, B. Stiller: The Swiss Postal Voting Process and Its System and Security Analysis. In: R. Krimmer, M. Volkamer, V. Cortier, B. Beckert, R. Küsters, U. Serdült, D.Duenas-Cid (eds.) Electronic Voting. Springer International Publishing, Cham, 2019, p. 134–149, Paper:

  • [MK18] R. Matile, C. Killer: Privacy, Verifiability, and Auditability in Blockchain-based E-Voting, 2018, Master’s Project, University of Zurich,

  • [BT94] Josh Benaloh and Dwight Tuinstra. Receipt-Free Secret-Ballot Elections. In Proceedings of the Twenty-Sixth Annual ACM Symposium on Theory of Computing, STOC ’94, pages544–553, New York,NY, USA,1994. Association for Computing Machinery.

  • [CGS97] Ronald Cramer, Rosario Gennaro, and Berry Schoenmakers. A secure andoptimally efficient multi- authority election scheme. InLecture Notes inComputer Science (including subseries Lecture Notes in Artificial Intelligenceand Lecture Notes in Bioinformatics), 1997.

  • [Cha81] David L. Chaum. Untraceable Electronic Mail, Return Addresses, and Digital Pseudonyms.Communications of the ACM, 1981.

  • [Cha04] David Chaum. Secret-Ballot Receipts: True Voter-Verifiable Elections,2004.

  • [DH76] Whitfield Diffie and Martin E. Hellman. New Directions in Cryptography. IEEE Transactions on Information Theory, 1976.

  • [Elg85] T. Elgamal. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Transactions on Information Theory, 31(4):469–472,71985.

  • [FOO92] Atsushi Fujioka, Tatsuaki Okamoto, and Kazuo Ohta. A Practical SecretVoting Scheme for Large Scale Elections. In Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques: Advances in Cryptology, ASIACRYPT ’92, pages 244–251, Berlin, Heidelberg, 1992. Springer-Verlag.

  • [JCJ05] Ari Juels, Dario Catalano, and Markus Jakobsson. Coercion-ResistantElectronic Elections. InProceedings of the 2005 ACM Workshop on Privacy in the Electronic Society, WPES ’05, page 61–70, New York, NY, USA, 2005. Association for Computing Machinery.

Further Materials


Practical Introduction to Blockchain-based Remote Electronic Voting






No releases published