Travelling Ballot Based Protocol

From Quantum Protocol Zoo
Jump to: navigation, search

This example protocol implements the task of [[Quantum Electronic Voting| Quantum E-voting. The protocol uses two entangled qudits, one as a blank ballot that travels from voter to voter and the second one for computing the election result. The first quantum scheme in this category was introduced by Vaccaro and later improved.



We consider N voters who wish to cast their vote secretly. The election authority prepares an entangled state, keeps one of the qudits, and passes the other one as the ballot qudit. Each voter receives the ballot qudit from the previous voter, casts her vote by applying a unitary and then forwards the qudit to the next voter. In the end, the authority obtains the election outcome by measuring the two qudits.


  • voter
  • c: number of possible candidates
  • N: number of voters
  • vote of voter
  • T: election authority
  • m: number of yes votes


  • Quantum channel for qudit communication
  • Qudit Measurement Device for election authority
  • Quantum memory to store qudits


This type of protocol is subject to double voting and privacy attacks when several voters are colluding.

  • Double voting: A corrupted voter can apply the “yes” unitary operation many times without being detected.
  • Privacy attack: An adversary that corrupts voters and can learn how voter voted with probability 1.

Protocol Description[edit]

  • Setup phase:

T prepares the state , keeps the second qudit and passes the first to voter as the ballot qudit.

  • Casting phase:

For k = 1, ... ,N, receives the ballot qudit and applies the unitary , where signifies a yes vote and a no vote.

Then, forwards the ballot qudit to the next voter and to T.

  • Tallying phase:

The global state held by T after all voters have voted is: T measures the two qudits in the computational basis, subtracts the two results, and obtains the outcome m.

Further Information[edit]

*contributed by Sara Sarfaraz