Authors:
Jordi Cucurull
1
;
Sandra Guasch
1
and
David Galindo
2
Affiliations:
1
Scytl Secure Electronic Voting, Spain
;
2
The University of Birmingham, United Kingdom
Keyword(s):
Remote Electronic Voting, Javascript Security, Implementation, Performance, Random Number Generation.
Related
Ontology
Subjects/Areas/Topics:
Applied Cryptography
;
Cloud Computing
;
Cryptographic Techniques and Key Management
;
Data Engineering
;
Databases and Data Security
;
Information and Systems Security
;
Network Security
;
Service and Systems Design and Qos Network Security
;
Services Science
;
Software Security
;
Wireless Network Security
Abstract:
Voters in remote electronic voting systems typically cast their votes from their own devices, such as PCs
and smartphones. The software executed at their devices in charge of performing the ballot presentation,
navigation and most of the cryptographic operations required to protect the integrity and privacy of the ballot,
is referred to as the voting client. The first voting clients were developed as Java Applets. However, the use of
this technology has become relegated in front of web technologies such as Javascript, which provide a better
multi-platform user experience. This is the reason why in 2013 Scytl decided it was imperative to develop
a voting client purely based on Javascript. This industrial paper shows the implementation experiences and
lessons learned during the development and deployment of Javascript voting clients for our remote electronic
voting systems. The paper is complemented with a performance study of 1) the main cryptographic primitives
used in voting clients
and 2) the voting casting process of one of the voting clients used in a real election.
(More)