manipulated1. In an electronic voting system, the voting authority cannot be trusted completel biased. Using a privacy-preserving online voting system removes controversy in the voting sy prívacy-preserving online voting system, voters encrypt their votes in the voting booth before ser the voting authority. A voting server records each encrypted vote and determines the voting res of the voting booth as the voting booth does not have enough computation power. The encry sent to the voting authority, which determines the winner based on encrypted votes. The h property of the Paillier Cryptosystem allows the addition of encrypted numbers. Therefore Cryptosystem can be used in developing a privacy-preserving online voting application.
manipulated1. In an electronic voting system, the voting authority cannot be trusted completel biased. Using a privacy-preserving online voting system removes controversy in the voting sy prívacy-preserving online voting system, voters encrypt their votes in the voting booth before ser the voting authority. A voting server records each encrypted vote and determines the voting res of the voting booth as the voting booth does not have enough computation power. The encry sent to the voting authority, which determines the winner based on encrypted votes. The h property of the Paillier Cryptosystem allows the addition of encrypted numbers. Therefore Cryptosystem can be used in developing a privacy-preserving online voting application.
Programming Logic & Design Comprehensive
9th Edition
ISBN:9781337669405
Author:FARRELL
Publisher:FARRELL
Chapter7: File Handling And Applications
Section: Chapter Questions
Problem 6PE
Related questions
Question
![Privacy Preserving Online Voting System
Recently, several controversies have been observed in voting around the world. Even electronic voting can be
manipulated1. In an electronic voting system, the voting authority cannot be trusted completely as it can be
biased. Using a privacy-preserving online voting system removes controversy in the voting system. In this
privacy-preserving online voting system, voters encrypt their votes in the voting booth before sending them to
the voting authority. A voting server records each encrypted vote and determines the voting result on behalf
of the voting booth as the voting booth does not have enough computation power. The encrypted result is
sent to the voting authority, which determines the winner based on encrypted votes. The homomorphic
property of the Paillier Cryptosystem allows the addition of encrypted numbers. Therefore, the Paillier
Cryptosystem can be used in developing a privacy-preserving online voting application.
In this task, you need to design a privacy preserving online voting system as shown in Figure-1 using the Paillier
cryptosystem. Suppose that a group of students want to elect their club president.
Your designed privacy-preserving voting application must fulfil the following requirements:
• Votes must be encrypted from Voting Booth using Paillier Cryptosystem before sending them to the
Voting Server.
• A vote is an integer number which should be equivalent to a 12-bit binary string.
• The number of candidates should be three. For example, ALICE, BOB, and EVE.
• The number of voters can be maximum 16.
• Assume that four voters will vote for ALICE, two voters will vote for BOB, and two voters will vote for
EVE. after counting the votes, the Voting Authority (VA) should find four votes for Alice, two votes for
BOB, and two votes for EVE.
• The Voting Authority chooses p=157, q=127 and select g=8821.
• The private numbers chosen by 8 voters and their votes are as follows:
Voter
Voter's Private Number, r
Vote for
Voting message, m
No.
91
ALICE
000000000001 = 1
2
92
ALICE
000000000001 = 1
93
ALICE
000000000001 = 1
4
94
ALICE
000000000001 = 1
95
BOB
000000010000 = 16
6.
96
BOB
000000010000 = 16
000100000000 = 256
000100000000 = 256
7.
97
EVE
8
98
EVE
The Voting Authority sets up required public and private keys and makes the public-keys to all voting
booth before the vote starts.](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F966ab230-be90-4367-925c-be085b69595f%2F278c16b2-bb64-4ddf-97fa-444b13064801%2Fcyg3g6j_processed.jpeg&w=3840&q=75)
Transcribed Image Text:Privacy Preserving Online Voting System
Recently, several controversies have been observed in voting around the world. Even electronic voting can be
manipulated1. In an electronic voting system, the voting authority cannot be trusted completely as it can be
biased. Using a privacy-preserving online voting system removes controversy in the voting system. In this
privacy-preserving online voting system, voters encrypt their votes in the voting booth before sending them to
the voting authority. A voting server records each encrypted vote and determines the voting result on behalf
of the voting booth as the voting booth does not have enough computation power. The encrypted result is
sent to the voting authority, which determines the winner based on encrypted votes. The homomorphic
property of the Paillier Cryptosystem allows the addition of encrypted numbers. Therefore, the Paillier
Cryptosystem can be used in developing a privacy-preserving online voting application.
In this task, you need to design a privacy preserving online voting system as shown in Figure-1 using the Paillier
cryptosystem. Suppose that a group of students want to elect their club president.
Your designed privacy-preserving voting application must fulfil the following requirements:
• Votes must be encrypted from Voting Booth using Paillier Cryptosystem before sending them to the
Voting Server.
• A vote is an integer number which should be equivalent to a 12-bit binary string.
• The number of candidates should be three. For example, ALICE, BOB, and EVE.
• The number of voters can be maximum 16.
• Assume that four voters will vote for ALICE, two voters will vote for BOB, and two voters will vote for
EVE. after counting the votes, the Voting Authority (VA) should find four votes for Alice, two votes for
BOB, and two votes for EVE.
• The Voting Authority chooses p=157, q=127 and select g=8821.
• The private numbers chosen by 8 voters and their votes are as follows:
Voter
Voter's Private Number, r
Vote for
Voting message, m
No.
91
ALICE
000000000001 = 1
2
92
ALICE
000000000001 = 1
93
ALICE
000000000001 = 1
4
94
ALICE
000000000001 = 1
95
BOB
000000010000 = 16
6.
96
BOB
000000010000 = 16
000100000000 = 256
000100000000 = 256
7.
97
EVE
8
98
EVE
The Voting Authority sets up required public and private keys and makes the public-keys to all voting
booth before the vote starts.
![Voting Server (VS)
Candidates
ALICE
вов
EVE
Computes 6e. tales)
encrypted voles
Sends encrypted final resül
to VA
Voting Authority (VA)
Voting Booth (VB)
• Collects votes
• Encrypts votes with
Public key of VA
• Sends encrypted
votes to VS
Generates Public and
Private keya
Sends public key to VR,
• Stores private key to
decrypt final resul
Figure-1: Privacy-preserving voting system
Show detail step-by-step computations of the key generation, encryption, homomorphic computations, and
decryption processes for votes of 8 voters.](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F966ab230-be90-4367-925c-be085b69595f%2F278c16b2-bb64-4ddf-97fa-444b13064801%2Fj8ao4ya_processed.jpeg&w=3840&q=75)
Transcribed Image Text:Voting Server (VS)
Candidates
ALICE
вов
EVE
Computes 6e. tales)
encrypted voles
Sends encrypted final resül
to VA
Voting Authority (VA)
Voting Booth (VB)
• Collects votes
• Encrypts votes with
Public key of VA
• Sends encrypted
votes to VS
Generates Public and
Private keya
Sends public key to VR,
• Stores private key to
decrypt final resul
Figure-1: Privacy-preserving voting system
Show detail step-by-step computations of the key generation, encryption, homomorphic computations, and
decryption processes for votes of 8 voters.
Expert Solution
![](/static/compass_v2/shared-icons/check-mark.png)
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 3 steps with 4 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage