Distributed Ballot Based Protocol: Difference between revisions

From Quantum Protocol Zoo
Jump to navigation Jump to search
Line 31: Line 31:
# T sends to <math>V_k</math> the corresponding blank ballot and two option qudits,for the "yes" and "no" option:<p><math> yes:|\psi(\theta_y)\rangle=\dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}e^{ij\theta_y}|j\rangle</math>, no:<math>|\psi(\theta_n)\rangle=\dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}e^{ij\theta_n}|j\rangle</math>.</p> For <math> v\in \{y, n\}</math> we have <math>\theta_v = (2\pi l_v/D) + \delta</math>, where <math>l_v \in \{0,...,D- 1\}</math> and <math>\delta \in [0, 2\pi/D)</math>. Values <math>l_y</math> and <math>\delta</math> are chosen uniformly at random from their domain and <math>l_n</math> is chosen such that <math>N(l_y - l_n \text{ }mod\text{ } D)</math> < D.
# T sends to <math>V_k</math> the corresponding blank ballot and two option qudits,for the "yes" and "no" option:<p><math> yes:|\psi(\theta_y)\rangle=\dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}e^{ij\theta_y}|j\rangle</math>, no:<math>|\psi(\theta_n)\rangle=\dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}e^{ij\theta_n}|j\rangle</math>.</p> For <math> v\in \{y, n\}</math> we have <math>\theta_v = (2\pi l_v/D) + \delta</math>, where <math>l_v \in \{0,...,D- 1\}</math> and <math>\delta \in [0, 2\pi/D)</math>. Values <math>l_y</math> and <math>\delta</math> are chosen uniformly at random from their domain and <math>l_n</math> is chosen such that <math>N(l_y - l_n \text{ }mod\text{ } D)</math> < D.
*'''Casting phase''':
*'''Casting phase''':
???
#Each <math>V_k</math> appends the corresponding option qudit to the blank ballot and performs a 2-qudit measurement <math> R =\sum^{D-1}_{r=0}rP_r</math> where <math> P_r=\sum_{j=0}^{D-1}|j+r\rangle\langle j+r | \otimes |j\rangle \langle j|.</math><p> According to the result <math>r_k, V_k</math> performs a unitary correction <math>U_{r_k} = I \otimes \sum_{j=0}^{D-1}|j+r_k\rangle \langle j |</math> and sends the 2-qudits ballot and <math>r_k</math> back to T
*'''Tally phase''':
*'''Tally phase''':
#The global state of the system is: <math> \dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}\Pi^{N}_{k=1}\alpha_{j,r_k}|j\rangle^{\otimes 2N}</math> where , <math display="block">\alpha_{j,r_k}=
#The global state of the system is: <math> \dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}\Pi^{N}_{k=1}\alpha_{j,r_k}|j\rangle^{\otimes 2N}</math> where , <math display="block">\alpha_{j,r_k}=

Revision as of 20:11, 7 March 2021

This example protocol implements the task of Quantum E-voting. In this protocol, the election authority prepares and distributes to each voter a blank ballot, and gathers it back after all voters have cast their vote in order to compute the final outcome.

Assumptions

  • The tallier is assumed to be trusted to correctly prepare specific states.


Outline

In the beginning, the election authority prepares an N-qudit ballot state where the kth qudit of the state corresponds to Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle V_k} ’s blank ballot and sends the corresponding blank ballot to Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle V_k} together with two option qudits, one for the “yes” and one for the “no” vote. then each voter decides on “yes” or “no” by appending the corresponding option qudit to the blank ballot and performing a 2-qudit measurement, then based on its result she performs a unitary correction and sends the 2-qudits ballot along with the measurement result back to the election authority. At the end of the election, the election authority applies a unitary operation on one of the qudits in the global state and another unitary operation on one of the qudits to find the number of yes votes.

Notations

  • Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle V_{i}: i^{th}} voter
  • c: number of possible candidates
  • N: number of voters
  • : vote of voter
  • T: election authority
  • m: number of yes votes

Requirements

  • Quantum channel capable of sending qubits -> (qudit) between the election authority and voters
  • Qudit Measurement Device for election authority and voters

Properties

This protocol is vulnerable to double voting. Specifically, an adversary can mount a “d-transfer attack”, and transfer d votes for one option of the referendum election to the other.


Knowledge Graph

Protocol Description

  • Setup phase:
  1. T prepares an N-qudit ballot state .

    The states form an orthonormal basis for the D-dimensional Hilbert space, and D > N. The k-th qudit of Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \Phi} is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle V_k} 's blank ballot.

  2. T sends to the corresponding blank ballot and two option qudits,for the "yes" and "no" option:

    , no:.

    For we have , where and . Values and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \delta} are chosen uniformly at random from their domain and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle l_n} is chosen such that Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle N(l_y - l_n \text{ }mod\text{ } D)} < D.
  • Casting phase:
  1. Each Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle V_k} appends the corresponding option qudit to the blank ballot and performs a 2-qudit measurement Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle R =\sum^{D-1}_{r=0}rP_r} where Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle P_r=\sum_{j=0}^{D-1}|j+r\rangle\langle j+r | \otimes |j\rangle \langle j|.}

    According to the result Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle r_k, V_k} performs a unitary correction Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle U_{r_k} = I \otimes \sum_{j=0}^{D-1}|j+r_k\rangle \langle j |} and sends the 2-qudits ballot and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle r_k} back to T

  • Tally phase:
  1. The global state of the system is: Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}\Pi^{N}_{k=1}\alpha_{j,r_k}|j\rangle^{\otimes 2N}} where ,

    For every k, T applies Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle W_k=\sum_{j=0}^{r_k-1}e^{-iD\delta}|j\rangle|\langle j|+\sum_{j=r_k}^{D-1}|j\rangle|\langle j| } on one of the qudits in the global state.

  2. By applying the unitary operator Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \sum_{j=0}^{D-1}e^{-ijN\theta_n}|j\rangle \langle j|} on one of the qudits we have Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle |\phi_q\rangle=\dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}e^{2\pi ijq/D}|j\rangle^{\otimes 2N}} where Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle q=m(l_y-l_n)} . with the corresponding measurement, T retrieves q and uses values Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle l_y,l_n} to compute m.

Further Information

*contributed by Sara Sarfaraz