BlueKrypt

An election through the internet - Page 3

Counting and audit

The Helios vote system allows a complete audit of the counting process to be performed.

a) Check of the notice board

The first step in the audit is to check the notice board. The objective is to confirm that the elements dispatched to the audit correspond to the ones displayed on the ballot notice board.

b) Check of the ballot parameters

Once the elements necessary for the audit are gathered, we need to check the ballot parameter and their compliance with the elements transmitted by the election board.

c) Audit of the ballot papers

In the methodology, we have seen that an elector who wished to vote can submit a ballot paper after giving his ballot identification. Nevertheless, the sealed ballot paper may have been made by anybody and it is thus necessary to check the integrity of the document.

Indeed, a ballot paper may be made as follows:

For each possible answer, it contains a code indicating whether the box was ticked or not. This code is binary: "0" meaning "no" and "1" meaning "yes". In this way, an elector who chose to vote for the second answer in a total of 3 proposals will produce a ballot paper in the form: 010 (no yes no).

With the internet application supplied by the company, the user is automatically restricted by the program. He cannot produce a void document, i.e. with an 0 (user having chosen less than on answer) or ballot papers giving a vote to several candidates, i.e. having more than one and only 1. Moreover, this application does not allow to put something else than 0 and 1 in the ballot paper.

These restrictions for the making of the ballot paper are only valid when the user uses company program. We have seen that he can perfectly well produce himself his ballot paper. It is thus very important in a first step to check the documents.

In this view, two "zero knowledge" proofs are used. One will check that only 0 and 1 are used and the second that there is only one 1 among all the answers.

d) Counting of the sealed result

After the preceding verification, we take the valid ballot papers and sum them up in order to obtain the final result to be deciphered. This operable is performed thanks to the "homomorphic" propriety of the ballot papers.

Some elections request this sum to be weighted.

e) Verification of the decoding

The last step requests that the result of the election obtained from the coding of the preceding step is known. This can only be performed by the election board.

Using several "zero knowledge" operations, we check that the communicated result was obtained from the coding that we had calculated and the private keys of the board members.



 
You are here: Home Case Studies Internet Election

Association

infopoleINFOPOLE is the network which federates professionals from Information Technologies and Communication.