Editing
Distributed Ballot Based Protocol
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
This example protocol implements the task of [[Quantum Electronic Voting | 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 <math> V_k</math>’s blank ballot and sends the corresponding blank ballot to <math>V_k</math> 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== * <math> V_{i}: i^{th}</math> voter * c: number of possible candidates * N: number of voters * <math>v_{i}</math>: vote of <math>i^{th}</math> 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''': # T prepares an N-qudit ballot state <math>|\Phi\rangle= \dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}|j\rangle ^{\otimes N}</math>. <p>The states <math> |j\rangle, j = 0,...,D-1,</math> form an orthonormal basis for the D-dimensional Hilbert space, and D > N. The k-th qudit of <math>\Phi</math> is <math>V_k</math>'s blank ballot.</p> # 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></p>,<p> 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''': #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''': #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}= \begin{cases} e^{i(D+j-r_k)\theta^{k}_{v}},\text{ }0 \leq j \leq r_k -1,\\ e^{i(j-r_k)\theta^{k}_{v}}\text{ }r_k \leq j \leq D -1 \end{cases} </math><p>For every k, T applies <math> 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| </math> on one of the qudits in the global state.</p> # By applying the unitary operator <math> \sum_{j=0}^{D-1}e^{-ijN\theta_n}|j\rangle \langle j|</math>on one of the qudits we have <math>|\phi_q\rangle=\dfrac{1}{\sqrt{D}}\sum_{j=0}^{D-1}e^{2\pi ijq/D}|j\rangle^{\otimes 2N}</math> where <math>q=m(l_y-l_n)</math>. with the corresponding measurement, T retrieves q and uses values <math>l_y,l_n</math> to compute m. ==Further Information== <div style='text-align: right;'>''*contributed by Sara Sarfaraz''</div>
Summary:
Please note that all contributions to Quantum Protocol Zoo may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Quantum Protocol Zoo:Copyrights
for details).
Do not submit copyrighted work without permission!
To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:
Cancel
Editing help
(opens in new window)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
View history
More
Search
Navigation
Main page
News
Protocol Library
Certification Library
Nodal Subroutines
Codes Repository
Knowledge Graphs
Submissions
Categories
Supplementary Information
Recent Changes
Contact us
Help
Tools
What links here
Related changes
Special pages
Page information