# Travelling Ballot Based Protocol

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.

## Outline

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.

## Notations

• ${\displaystyle V_{i}:i^{th}}$ voter
• c: number of possible candidates
• N: number of voters
• ${\displaystyle v_{i}:}$ vote of ${\displaystyle i^{th}}$ voter
• T: election authority
• m: number of yes votes

## Requirements

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

## Properties

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 ${\displaystyle V_{k-1}}$ and ${\displaystyle V_{k+1}}$ can learn how voter ${\displaystyle V_{k}}$ voted with probability 1.

## Protocol Description

• Setup phase:

T prepares the state ${\displaystyle |\phi _{0}\rangle ={\dfrac {1}{\sqrt {N}}}\sum _{j=0}^{N-1}|j\rangle _{V}|j\rangle _{T}}$, keeps the second qudit and passes the first to voter ${\displaystyle V_{1}}$ as the ballot qudit.

• Casting phase:

For k = 1, ... ,N, ${\displaystyle V_{k}}$receives the ballot qudit and applies the unitary ${\displaystyle U^{v_{k}}=\sum _{j=0}^{N-1}|j+1\rangle \langle j|}$, where ${\displaystyle v_{k}=1}$ signifies a yes vote and ${\displaystyle v_{k}=0}$ a no vote.

Then, ${\displaystyle V_{k}}$ forwards the ballot qudit to the next voter ${\displaystyle V_{k+1}}$ and ${\displaystyle V_{N}}$ to T.

• Tallying phase:

The global state held by T after all voters have voted is: ${\displaystyle |\phi _{N}\rangle ={\dfrac {1}{\sqrt {N}}}\sum _{j=0}^{N-1}|j+m\rangle _{V}|j\rangle _{T}}$ T measures the two qudits in the computational basis, subtracts the two results, and obtains the outcome m.

## Further Information

*contributed by Sara Sarfaraz