30
Making Code Voting Secure against Insider Threats using Unconditionally Secure MIX Schemes and Human PSMT Protocols Yvo Desmedt 1,2 * and Stelios Erotokritou 1,3 1 The University of Texas at Dallas, USA 2 University College London, UK {y.desmedt,s.erotokritou}@cs.ucl.ac.uk 3 Computation-based Science and Technology Research Center, The Cyprus Institute, Nicosia, Cyprus Abstract. Code voting was introduced by Chaum as a solution for using a possibly infected-by-malware device to cast a vote in an electronic vot- ing application. Each voter receives per candidate a long enough “code”, which is unique over all pairs of voters and candidates. To vote the voter chooses from the codes received, the one corresponding to the candidate of his choice. Chaum’s work on code voting assumed voting codes are physically de- livered to voters using the mail system, implicitly requiring to trust the mail system. This is not necessarily a valid assumption to make - espe- cially if the mail system (or some of its staff) cannot be trusted, and this could possibly undermine the correctness and integrity of an election. Moreover, when conspiring with the recipient of the cast ballots, privacy is broken. After allegations made by Edward Snowden and newly discovered hi- den/undiscovered security flaws, such as the Heartbleed bug - combined with reports of intelligence agencies being aware and making use of this flaw for some time now, it is clear to the general public that when it comes to privacy, computers and “secure” communication over the In- ternet cannot fully be trusted. These points emphasize the importance of using: (1) Unconditional secu- rity for secure network communication. (2) Reduce reliance on untrusted computers. Taking all the above into account, in this paper we explore how to remove the mail system trust assumption in code voting. We use progress in Pri- vate and Secure Message Transmission (PSMT) schemes with a human receiver as introduced at SCN 2012 where it was shown that with the help of visual aids, humans can carry out mod 10 addition correctly with a 99% degree of accuracy. We also introduce an unconditionally secure MIX based on the combinatorics of set systems - which is also of independent interest to certain anonymous communications. Given that end users of our proposed voting scheme construction are humans who may be using corrupted computational devices, we cannot use classical Secure Multi Party Computation protocols. This is because * A part of this work was done while being, part time, at RCIS/AIST, Japan.

Vote Id 2015 Final

Embed Size (px)

DESCRIPTION

Vote Id 2015 Final

Citation preview

  • Making Code Voting Secure against InsiderThreats using Unconditionally Secure MIXSchemes and Human PSMT Protocols

    Yvo Desmedt1,2 and Stelios Erotokritou1,3

    1 The University of Texas at Dallas, USA2 University College London, UK {y.desmedt,s.erotokritou}@cs.ucl.ac.uk3 Computation-based Science and Technology Research Center, The Cyprus

    Institute, Nicosia, Cyprus

    Abstract. Code voting was introduced by Chaum as a solution for usinga possibly infected-by-malware device to cast a vote in an electronic vot-ing application. Each voter receives per candidate a long enough code,which is unique over all pairs of voters and candidates. To vote the voterchooses from the codes received, the one corresponding to the candidateof his choice.Chaums work on code voting assumed voting codes are physically de-livered to voters using the mail system, implicitly requiring to trust themail system. This is not necessarily a valid assumption to make - espe-cially if the mail system (or some of its staff) cannot be trusted, and thiscould possibly undermine the correctness and integrity of an election.Moreover, when conspiring with the recipient of the cast ballots, privacyis broken.After allegations made by Edward Snowden and newly discovered hi-den/undiscovered security flaws, such as the Heartbleed bug - combinedwith reports of intelligence agencies being aware and making use of thisflaw for some time now, it is clear to the general public that when itcomes to privacy, computers and secure communication over the In-ternet cannot fully be trusted.These points emphasize the importance of using: (1) Unconditional secu-rity for secure network communication. (2) Reduce reliance on untrustedcomputers.Taking all the above into account, in this paper we explore how to removethe mail system trust assumption in code voting. We use progress in Pri-vate and Secure Message Transmission (PSMT) schemes with a humanreceiver as introduced at SCN 2012 where it was shown that with thehelp of visual aids, humans can carry out mod 10 addition correctlywith a 99% degree of accuracy. We also introduce an unconditionallysecure MIX based on the combinatorics of set systems - which is also ofindependent interest to certain anonymous communications.Given that end users of our proposed voting scheme construction arehumans who may be using corrupted computational devices, we cannotuse classical Secure Multi Party Computation protocols. This is because

    A part of this work was done while being, part time, at RCIS/AIST, Japan.

  • such protocols cannot be handled by humans given that humans cannotcarry out Lagrange interpolation or Reed Solomon decoding withoutusing computational devices (which we assume cannot be trusted).

    Taking all the above into account, we present solutions to Internet codevoting for both single and multi-seat elections which achieve the followingimportant aspects:

    An anonymous and perfectly secure communication network secureagainst a t-bounded passive adversary is established to deliver votingcodes to voters

    Code voting is used to achieve unconditional security

    The end step of the protocol should be simple to handle for a human(accomplished by using mod 10 arithmetic) to evade the threat ofmalware infected and thus untrusted computational devices.

    It should be noted that as this is a first step towards a practically feasiblesolution to the very difficult problem of Internet voting using untrustedcomputational devices and corrupted insiders, our proposed solution onlyconsiders a passive adversary - an adversary that can only observe butcannot cause deviation of protocol execution in any way.

    In this paper we do not focus on active adversaries. We have a solutionwhich considers an active adversary, but this is theoretical, impractical,long and complex and is only outlined in an appendix of this paper. Thedetails of the active adversary solution will be presented in a future fullversion of this paper.Keywords:Voting Systems, Internet Voting, Information Theoretic Anonymity,Private and Secure Message Transmission, Combinatorics, ComputerSystem Diversity.

    1 Introduction

    The ability to cast a vote and be a part of the decision making processin government is one of the key democratic rights citizens of democracieshave obtained [64, 65].

    Despite this, one of the most concerning issues in recent elections, e.g.throughout Europe has been the ever decreasing turnout of voters [63] -especially amongst the younger generation [23]. Various possible reasonsas to why this may be occurring have been suggested [40, 46] and theseinclude political apathy, the difficulty of voting, amongst many others.

    Specific details for difficulty of voting include elections being heldon working days [47] and workers having to travel [58] to their localdistricts to vote. With this in mind, surely the use of technology - whichis widely used and available in more developed countries, could help makethe casting of votes easier for voters.

    One approach that has been debated is that of electronic voting overthe Internet which is the focus of this paper. It enables to cast votes

  • from an Internet-connected device from any physical Internet accessiblelocation - thus not requiring the use of extended travel.

    Such a system has the advantage over booth based elections and boothbased electronic voting systems developed by the cryptographic commu-nity [11, 25, 52], such as direct recording electronic systems, which requirevoters to be physically present at a polling station.

    Even though secure Internet voting is in its infancy, many countriesand organizations are considering adoption or have already done so. Ex-amples include Estonia [45], Finland [1] and Switzerland [3] who havealready moved toward Internet voting. In the case of Estonia, participa-tion of votes increased by 17%, i.e. from 26,83% to 43,9% [46].

    In 2010, IACR introduced online voting using the Helios cryptograph-ically verifiable voting system [36] which allowed its members who arebased in different geographical locations to cast their secure vote online.Since then, record percentage membership voting of 30%, 41.8%, 33.9%,38.6% and 40.9% were recorded in the respective years between 2010-2014. These numbers are considerably higher than previous paper-basedelections where the turnout of paper based elections was typically around20% [38].

    Experts agree (see e.g., [29]) that achieving secure Internet voting willbe even more difficult than booth-based electronic voting. For example,the 2003 CRA Grand Research Challenges Workshop on Information Se-curity [2] ranked secure Internet voting as one of the most challengingopen problems in information security. These issues were put in the spot-light at the 2013 RSA Conference panel [55] and by Rivest in [51]. Thedifficulties lie in the fact that computational devices are vulnerable tosecurity attacks and are easy to hack. Although SSL uses cryptography,modern browsers are vulnerable to attacks such as click-jacking, cross-site scripting, and man-in-the-browser attacks - as demonstrated againstHelios 2.0 in [22].

    Given that that the computer of a voter can easily be hacked, in 2001Chaum proposed a breakthrough solution called code voting [8] whereone can use a possibly hacked computer to perform a secure operation.In code voting, a voter receives through the postal mail a long enoughunique code for every candidate. To vote, voters would just enter the codecorresponding to the candidate of their choice.

    Chaums approach to code voting assumes the postal mail to be securefrom a reliability and privacy viewpoint. This is not a valid assumptionto make when considering the security of code voting. As an example, a

  • collaboration of the postal service with the returning officer4 may allowfor the anonymity of all votes to be broken. Indeed, such a collaborationcan also divulge the identity of voters to whom specific voting codes weredelivered. The returning officer would then be able to know how each votervoted by identifying voting codes delivered to voters which were cast inthe actual vote. Another problem 5 is that if one knows who is likelynot to vote, Chaums scheme is not very secure against ballot stuffing byinsiders. Furthermore, if malicious postmen do not deliver voting codes,this prevents voters from casting their votes 5. If the election is tightand the number of undelivered ballots is high, this could undermine thereliability and trustworthiness of code voting through the postal service.

    Because of the above, code voting schemes such as [34, 35, 41, 44] whichuse the postal mail system for code vote deliver, are vulnerable to suchattacks. So, one question we address in this paper is how we can makeChaums code voting secure against t passive insiders.

    For any proposed solution to electronic voting it is also imperativeto maintain the anonymity of voters. One way to achieve anonymity isthrough the use of MIX-networks. These were first introduced by Chaumin [9] and are used in electronic voting. MIX-networks allow senders toinput a number of (usually encrypted) messages to a MIX-network whichthen outputs and delivers each message to all recipients without the re-ceiver being able to identify the sender. Various ways with which MIX-networks are constructed using results of previous work are described inSection 2.1. The main issue with such constructions is that they are basedon tools based on computational assumptions which when used within thecontext of an electronic voting scheme only allows for conditional securitythus conditional privacy and conditional anonymity to be achieved.

    Note that no conditional secure cryptosystem designed so far has with-stood cryptanalysis for more than 300 years. Quantum computers willundermine computational voting schemes cryptographers have proposed,in particular these based on ElGamal. For many goals, unconditionally se-cure solutions have already been proposed, e.g., since 1988 [5, 10] we haveunconditionally secure multiparty computation. This is a further moti-vation for proposing an unconditionally secure voting scheme in which tinsiders can be corrupted. It is thus important to consider constructionswhich achieve unconditional security - thus solutions which are not basedon computational assumptions, which is what we consider in this paper.

    4A returning officer is responsible for overseeing elections in one or more constituen-cies [67].

    5Since we focus on a passive adversary, our paper does not address this attack.

  • Furthermore, after the revelations by Snowden [15], some have ques-tioned the security of the NIST standards [24, 59]. So, one can wonderwhether we want to promote voting systems which might be broken, ifnot now, then in the future. Although ElGamal encryption is not a NISTstandard, very little research is being done today to improve cryptanal-ysis of the Diffie-Hellman problem (on which the security of ElGamaldepends). The importance of requiring unconditional vote security is fur-ther highlighted with the following example:

    In 2020 Alice turns 18 and votes using a popular ElGamal basedelectronic voting scheme. 50 years later, Alice is a candidate forpresident of the USA. Imagine now that in 2070 politics in the USAis going through a new McCarthy [56] witch hunt. Unfortunatelyfor Alice, the security of ElGamal has since been broken. Thenewspapers find that Alice voted for the what is then consideredthe wrong party!

    In this paper we focus on unconditional security proposing alternativeMIX constructions (using set systems and shares of messages), to generatethe correctness of the vote unconditionally.

    To counter technological threats and the possible influence of electionsby foreign governments (where hardware are manufactured), our proposedInternet code voting solution uses the concept of diversity, first describedin [26]. Recent surveillance revelations upon high-ranking officials [50,57] only emphasise the importance of this. So, we employ a diversity ofcomputing systems to achieve security in our proposed solution. Usingdiversity of network paths we also ensure that any t-bounded adversarialpresence is unable to break the privacy of any votes. We consider thet-bounded computationally unlimited adversary to be capable of takingcontrol of any node between the vote authority and the voters themselveswhich includes nodes in the MIX-network, nodes in the communicationnetwork or voters computational devices (through malware). It should benoted that we do not consider the human voters to be corruptible.

    The main part of our work assumes a passive adversary which can onlyobserve but cannot cause deviation of protocol execution in any way. Wealso assumes that the adversary cannot look at the information on thewhole network but only inside t nodes. We have a solution which considersan active adversary, but due to space reasons, the current active solutionis only briefly outlined in Appendix A. The details to deal with an activeadversary will be presented in a future full version of this paper.

    Considering a t-bounded adversary we emphasise the importance ofthe following:

  • Important Statement 1 As shown in [27], when the number of cor-rupted nodes is at most t, the minimum number of disjoint paths requiredto allow for private communication between a sender and a receiver is atleast t+ 1.

    Corollary 1 Because of the above, voters will have to use a number ofcomputing devices to securely receive (or dually send) their voting codes.

    The impact of Corollary 1 is not as bad as it might initially seem. Nowa-days, many people in developed countries can have effortless access tomore than one device such as PCs, laptops, smartphones and tablets.Such devices can include those they own or can access through friendsand relatives or through public access (such as a library). Furthermore,each of these devices can be connected to a communication network in adifferent manner (Internet or cellular) which could be serviced by differentproviders. Furthermore, extending the concept of diversity, these devicesmay run different operating systems (e.g. Windows, IoS, Android) thus athreat to one device may not necessarily constitute a threat to another -even with the same user.

    Similar to the work of [6, 37] which considers security protocols asused by humans who can execute them without relying on a fully trustedcomputer we intend to do the same in this paper in the context of Internetvoting.

    Motivated by all the above, we propose an unconditional Internet codevoting protocol which is secure against the possible presence of an adver-sary and malware in the network and on voters devices respectively. Wepresent solutions for single seat and multi-seat elections both of whichare designed to be user friendly - so that human voters can use it cor-rectly with high accuracy6. In EVOTE2014 [49] the authors addressed avery similar problem as our current work. However, their solution usescomputational methods - such as the use of cryptographic keys and hash

    6It should be noted that the main goal of our work is Internet code-voting secureagainst t insiders. The work of [7] is independent and their MIX servers are differentusing a homomorphic, unconditionally hiding commitment scheme to encrypt auditinformation and achieve unconditional security. Furthermore, their solution assumesthe use of two mix-networks one of which is private and thus cannot be corrupted bythe adversary. Our solution does not make this assumption and instead counters thethreat of the adversary presence for protocol correctness accordingly. However, due tothe possible presence of malware the only way we know how to achieve this, is usingunconditionally secure techniques achieved through the use of cover designs. Addition-ally we use results from previous work [21] which allows for humans to privately andreliably receive and decode messages, something achieved with unconditional security.

  • functions, and thus achieves conditional security which could be brokenin the future against a computationally unlimited adversary. Indeed theauthors state that their protocol has a probability of failure (althoughadmittedly very small). Furthermore, the authors consider the adversaryto be present in the MIX network only and do not take into accountthe possible presence of malware upon the tablets with which voters willuse to cast their votes. Passive malware could possibly identify to an ad-versary how someone voted, whereas active malware could alter the waysomeone votes - thus rigging the result of an election.

    When combined with [21], one can view our proposed method for de-livering codes to voters as a distributed implementation of a one-time-pad-secured communication channel for votes. Because of this, our solutioncan also be used for other established code voting schemes as it is a wayof removing the use of a possibly untrusted mail system and transmittingthe voting codes securely, reliably and anonymously to voters.

    The text is organized as follows. Background and previous work whichwill be used in our code voting protocol are presented in Section 2. InSection 3 a high level description of the protocol is given and we identifythe required cryptographic tools. In Section 4 we provide a simplifiedversion of the MIX private and anonymous communication protocol. Thisis used in Section 5 in a more efficient manner where we present privateand anonymous communication protocols for the transmission of votingcodes to voters for single seat and multi seat elections. In Section 6 theelectronic code voting protocol is presented and the security proof of theprotocol is also given. We conclude in Section 7.

    2 Background and Previous Work

    2.1 Previous Work

    This section describes previous work related to various aspects to bepresented in this paper.

    MIX-networks can be constructed using a shue (permutation). Oneway of achieving this [43, 54] is by using approaches based on zero-knowledgearguments [28, 32, 68]. In the work of [39] a large number of MIX-serverswas required to preserve the security of messages and anonymity of senders.In [18] the use of zero-knowledge was avoided.

    In turn, MIX-networks based on zero-knowledge arguments can beused in electronic voting protocols - as has been proposed in recent pub-lications [30, 31, 33]. Earlier work [53] similarly used shues in electronic

  • voting based on zero-knowledge proofs. Other work on MIX-networks in-cludes the work of Abe in [4].

    As noted in the introduction, an issue with such constructions is thatthey are based on tools based on computational assumptions which onlyallows for conditional security to be achieved. The work we present isbased on the stronger model of unconditional security.

    Anonymity in practice is difficult to achieve. One proposed implemen-tation was that of [42]. The protocol used a combination of informationslicing (scrambling a message and dividing into pieces using secret shar-ing) and source routing (to transmit each share across disjoint paths)to provide anonymous communication similar to onion routing but with-out a public key infrastructure. Despite this, it was shown to be insecurein [61]. Other practical solutions have also been proposed [60, 62, 66] - butthese too only provide conditional security.

    A voting scheme similar to the one we propose which achieves infor-mation theoretic security and requires the voter to carry out modularaddition is that presented in [48]. Contrary to the voting scheme pro-posed in this paper, the work of [48] is not an Internet voting schemeas it requires voters to cast their votes at a polling station. This type ofvoting schemes are not considered in this paper as using the Internet forvoting to possibly allow for increased turnouts is the main goal of thiswork.

    The work of [14] describes an election scheme which requires somecomputational modular exponentiation operations to be carried out byvoters. These operations require software or hardware. Furthermore, pub-lic key-cryptography is used, meaning that the security properties achievedare computational and not information theoretic - as achieved in our pro-posed scheme.

    2.2 Message Transmission Security Properties

    Below we define message transmission security properties which will be re-quired throughout the text. For formal definitions, see [20]. In our settingwe have a single receiver S connected to m number of senders (r1, , rm)over a possibly corrupt underlying network.

    (Perfectly) Correct - When the receiver accepts a message, it wassent by a sender S.

    (Perfectly) Reliable - When a sender S transmits a message, thismessage will be received by the receiver with probability 1.

    (Perfectly) Private - Only the designated receiver(s) can read amessage transmitted by S. I.e., for any coalition of t parties (not including

  • the receiver(s) of the message), their probability of correctly determininga message is the same whether the coalition is given their transmissionview or not.

    (Perfect) Security - Means perfect correctness, perfect reliabilityand perfect privacy.

    (Perfectly) Anonymous - Considering the single receiver wants toreceive m different messages over the network so that each of m num-ber of senders transmitted one of these messages (and each message istransmitted and received only once), perfect anonymity is achieved whenfor any coalition of t parties, their probability of correctly determiningthe sender of any message is the same whether the coalition observesthe transmission view or not. In the context of Internet voting, perfectanonymity is achieved when the voting protocol used does not facilitateany party involved in the voting process to correlate any cast vote to aspecific voter with greater probability than any other.

    2.3 Existential Honesty

    Some of our ideas are based on the concept of existential honesty, definedin [18] as:

    It is possible to divide the MIX servers into blocks, which guar-antee that one block is free of dishonest MIX servers, assumingthe number of dishonest MIX servers is bounded by t.

    To achieve this, [18] defined and used the following:

    Definition 1 ([13]). A set system is a pair (X,B), where X , {1,2, . . . ,m}and B is a collection of blocks Bi X with i = 1, 2, . . . , b.Definition 2 ([18]). We say that (X,B) is an (m, b, t)-verifiers set sys-tem if:

    1. |X| = m,2. |Bi| = t+ 1 for i = 1, 2, . . . , b, and3. for any subset F X with |F | t, there exists a Bi B such that

    F Bi = .An extensive description of set systems and how these relate to cov-

    ering designs can be found in [21, Section 2.3].We assume that private channels connect MIX servers of correspond-

    ing blocks (i.e. when for block Bk, MIX server MIXk,i needs to commu-nicate with MIX server MIXk+1,j , where 1 i, j t + 1 and k < b,

  • then there is a private channel). We also assume such channels betweenthe receiver and MIX1,i and similarly, between MIXb,i and the sender.Such private channels could be dedicated links directly connecting twonodes together or implemented with link encryption (such as the one-timepad)7. Alternatively, these private channels can be implemented throughdisjoint network paths upon which perfectly secure message transmissionprotocols [20] (among many other protocols) can be executed to ensurethe private transmission of message from one party to another.

    2.4 Human Perfectly Secure Message Transmission Protocols

    Perfectly secure message transmission (PSMT) protocols where the senderor receiver is a human were introduced in [21]. In such protocols it isassumed that the human receiver does not have access to a trusted devicesince these may be faulty and/or infected with malware.

    Because the receiver is a human, such protocols aim to achieve per-fectly secure message transmission (PSMT) in a computationally efficientand computationally simple manner. Furthermore, it is important thatthe amount of information and operations the human receiver shouldhave to process be kept to a minimum.

    Addition mod 10 was used by humans in these protocols [21] to recon-struct the secret message of the communication protocol from receivedshares through addition mod10. The idea of using addition mod10 forhuman computable functions was also used in [6] but within a differentsecurity context.

    By regarding in [21] Z10(+) as a subgroup of S10 the operation becamevery reliable for humans to perform. Indeed, experimental evaluation ofsuch protocols on human subjects found that given clear, correct andprecise instructions, coupled with visual aids, allowed for the correct usageof these protocols by a very high percentage of human participants.

    2.5 Secure Multiparty Computation in Black-box Groups

    Black box multiparty computation protocols against a passive adversaryfor non-Abelian group have been presented in [12] and in [17] throughthe use of a t-reliable n-coloring admissible planar graph. These papersstudied in particular the existence of secure n-party protocols to com-pute the n-product function fG(x1, , xn) := x1 . . . xn where eachparticipant is given the private input xi from some non-Abelian group G

    7This condition can be relaxed, but is not the scope of this paper.

  • where n 2t + 1. It was assumed that the parties are only allowed toperform black-box operations in the finite group G, i.e., the group oper-ation ((x, y) 7 x y), the group inversion (x 7 x1) and the uniformlyrandom group sampling (x R G).

    3 Secure Code Voting with Distributed Security

    In this section we provide a high level description of the secure code votingprotocol we will present in this paper. We assume the reader is familiarwith Chaums code voting scheme [8].

    3.1 High Level Description

    We call Code Generation Entity (CGE) the entity in the code votingprotocol which is responsible for creating the codes with which voterswill cast their votes. These codes are unique and are sent to the voters sothat each of these codes is used only once for the whole election. For singleseat elections each voter receives as many codes as there are candidates.For multi-seat elections each voter receives a single permutation - which isa permutation of the alphabetical ordering of the candidates. After thesecodes pass through a MIX network (to achieve anonymity), they willbe sent to voters using perfectly secure message transmission, i.e. usingsecret sharing. Voters will receive each share using a different device,identify the shares which correspond to the candidate of their choice andreconstruct using human computation this voting code. To cast their vote,voters will send this code back to the CGE via the MIX servers, whichperform inverse operations. For each of the received cast codes, the CGEwill identify the candidate for whom the code corresponds and will tallyup the cast votes for each candidate.

    Our protocol does not use the mail system for the delivery of votingcodes to voters, but instead these are sent by the CGE to voters overa MIX network and using PSMT. Similarly, cast votes will be sent byvoters to the CGE over a network as explained in Section 6.4.

    3.2 Required Cryptographic Tools

    As with any election, anonymity of a voters vote should always be pre-served. This means that the voting process should not facilitate any partyto correlate a cast vote to a specific voter. Even though in our descrip-tion, the CGE has to identify the candidate of a cast vote, the process

  • should not facilitate the CGE (and indeed any t other parties) should notbe able to identify that a specific voter (from the set of v voters) cast aparticular vote.

    Furthermore, as voting codes will be sent over a network, we shouldtake into account the fact that a number of the underlying network nodesmay be corrupt. Even though secret sharing is used, any protocol shouldensure that voting codes are not learned by any t parties apart from votersthemselves, otherwise anonymity of votes could be broken.

    As voting codes will be sent over a network such as the Internet, voterswill receive these using some form of device. As explained in the intro-duction, due to the possible presence of t devices with malware, multipledevices will have to be used to receive at least t + 1 shares of votingcodes. As t devices cannot be trusted, voters will also have to reconstructtheir voting codes manually without using their computational devices.To achieve this, aspects from human perfectly secure message transmis-sion protocols as presented in [21] are employed. We rely on the feasibilitytests performed in [21] which confirm that humans can perform these ba-sic operations.

    As we are considering unconditional security we also require an infor-mation theoretic secret sharing scheme. We use the secret sharing schemefriendly to humans as presented in [21, Section 2.2] which guarantees per-fect privacy unconditionally given that we will be using human perfectlysecure message transmission protocols as presented in the same paper.

    Except for the voters computing the codes from the shares they re-ceive, all other computations are carried out by computers, of which nomore than t of these are curious.

    4 Transmit and Reply Protocol

    In this section we present the first of the required primitives - a perfectlyprivate and perfectly anonymous network communication protocol. Fordidactic purposes, the simplest form of our proposed protocol will bepresented - with more efficient constructions described later.

    Suppose that we have a single receiver and v senders each of whomneeds to receive a secret one time pad so as to sender a secret back to thereceiver in an interactive anonymous way8.

    8The dual problem is that instead of having v senders, we have v receivers and onesender. Obviously a solution for the first provides a similar solution for the second andvice versa.

  • We assume the adversary is passive and controls at most t MIXservers. As in Chaums work [9] and most conditional MIX servers, eachMIX server is only involved in one mixing in our protocol. t + 1 blocksof MIX servers will be required - denoted as B1, . . . , Bt+1, with each blockconsisting of t+1 MIX servers and we useBk = {MIXk,1,MIXk,2,. . . ,MIXk,t+1}to identify MIX servers of the kth block and call MIXk,1 Bks leader.

    Before formally presenting the transmit and reply private and anony-mous communication protocol and its security proof, we first provide themain idea of the protocol.

    4.1 Protocol Main Idea

    The receiver will share each of the v one-time pads to transmit into t+ 1shares using XOR. Each (of the t+1) share will be given to a correspond-ing MIX server (i.e. one of the t+ 1 servers) in the first block B1 of MIXservers.

    The shares of the ith one-time pad and those of the jth one-time padmight be transposed and will also be altered. To guarantee shares of thesame pad stay together, the transpositions and alterations are chosen bythe block leader. After the last MIX operation, the final block of MIXservers delivers the shares of the one time pad to the senders, with eachsender reconstructing the received and altered one-time pad sent by thereceiver.

    Each sender will then XOR the secret message to be sent to the re-ceiver with the received altered one-time pad and send the result to thereceiver over the MIX network. During this reverse transmission, the in-verse alterations (carried out in the transmission from receiver to senders)will be applied by each block leader.

    By XORing the one time pad initially sent out by the receiver, thesecret message sent by each sender can be obtained by the receiver.

    4.2 The MIX Communication Protocol - 1A: Receiver toSender Transmission

    We now present the steps in the MIX communication protocol for thetransmission of the one-time pads from the receiver to the set of senders.

    Protocol 1 Private and Anonymous Communication Protocol

    Step 1 Let pi1i be the ith one-time pad (where 1 i v). The receiver

    shares each pi1i into t + 1 shares pi1i,j F2l using XOR (where

  • 1 j t + 1) and privately sends pi1i,j to the correspondingMIX MIX1,j in block B1. (The sharing of any pi

    1i can be done

    by creating t random bit strings - of same length as pi1i , andXORing these with pi1i to obtain the final share.)

    Step 2 The leader of B1 (we call MIX1,1) informs all others MIX serversin B1 how they have to permute the i-index of all above pi

    1i,j . This

    permutation is defined by 1 R Sv.Step 3 On the i indices all MIX servers in B1 apply the permutation 1.

    So, pi1i,j := pi11(i),j

    .

    Step 4 The leader of B1 chooses t+1 random bit string modifiers 1i,j R

    F2l and privately sends 1i,j to parties in B1.

    Step 5 For each (i, j) the t+ 1 values pi1i,j are regarded as shares of pi1i .

    Similarly, the t+ 1 values 1i,j are regarded as shares of 1i .

    The MIX server in B1 computes pi2ij =

    1ij +pi

    1ij . pi

    2i,j are regarded

    as shares of pi2, the 1(i) permuted and modified one time pad.Step 6 Steps 2-5 are repeated, incrementing by one the indices of B1

    and B2 until the last block Bb is reached.Step 7 Shares held by MIX-servers of block Bt+1 are denoted as i,j .

    MIXt+1,j Bt+1 then sends i,j to the ith sender.

    4.3 The MIX Communication Protocol - 1B: Sender toReceiver Transmission

    Upon the end of the receiver to sender transmission phase, each senderreconstructs their respective altered one-time pad using XOR over allshares received from the MIX network. Using this altered one-time pad,a sender encrypts their secret using XOR.

    Senders then proceed to send their encrypted secret to the leader ofblock Bt+1. The encrypted messages are then sent back towards the re-ceiver in much the same way as transmitted from receiver to sender, onlythis time, data are sent between leaders of MIX blocks, the inverse permu-tations will be applied and all modifiers used will now have be invalidated.Thus the leaders of each block of MIX servers will use the same permu-tations (b) and modifiers (

    ki ) - only now the inverse permutations

    1b

    and invalidation of modifiers ki (simply by using XOR on the data heldby MIX block leaders and the modifiers earlier used in the same block)are used.

    The data that are sent back to the receiver correspond to the en-crypted message transmitted by senders, and by applying XOR to this

  • using the respective one-time pad, the secret message transmitted bysenders can be obtained.

    It should be noted, that this anonymous and private communicationprotocol can be used for various practical applications. One such exam-ple is anonymous therapy sessions with extensions of the protocol alsoallowing for anonymous feedback.

    4.4 Security Proof

    In this section we present the security proof for Protocol 1.

    Theorem 1. Protocol 1 is a reliable, private and anonymous messagetransmission protocol.

    Proof. Perfect Reliability - The protocol achieves perfect reliability ofmessage transmission due to the passive nature of the adversary.

    Perfect Privacy - The protocol achieves perfect privacy as each one-time pad or encrypted message is shared over t + 1 shares. As eachMIX server is used only once and as the adversary can control at most tMIX servers, secrecy of these transmitted data is retained.

    Perfect Anonymity - We now prove the perfect anonymity of the pro-tocol - for simplicity of the proof we assume that there are only twomessages (two one time pads).

    As t+ 1 blocks of MIX servers are used and each MIX server is usedonly once, there exists a block bi - 1 i b, free from adversary con-trolled MIX servers. Because of this, the adversary is unable to learn themodifiers and permutation which are added and implemented respectivelyto the shares of the messages.

    Assuming the adversary is present in block bi+1 and absent from blockbi, the view of the adversary of a share for both messages can be one ofthe following two possibilities:

    (i1 + pii11 ,

    i2 + pi

    i12 ), (

    i2 + pi

    i12 ,

    i1 + pi

    i11 )

    Obviously, the adversary cannot distinguish between the first and thesecond possibility as the modifiers and permutation used in block bi arerandom and not learned by the adversary. Indeed, there exists an (1, 2)such that (i2 +pi

    i12 ,

    i1 +pi

    i11 )=(

    1 +pi

    i11 ,

    2 +pi

    i12 ). So, the adversary

    cannot distinguish whether the messages have been interchanged or not.

    Without loss of generality, the proof can be extended to any numberv of messages.

  • 5 Reducing the Number of MIX Servers

    In this section we improve on the Transmit and Reply Protocol pre-sented in Section 4 presenting a solution for the single seat election casewhere an Abelian group is used.

    Our solution uses Chaums code voting and considers a single receiver(e.g., CGE) and v human voters who each needs to receive voting codes(one code per candidate) in a non-interactive anonymous way. We con-sider the CGE as the receiver and the human voters as the senders of thecommunication because at the end of the combined protocol, the humanvoters will send back to the CGE the voting code which corresponds tothe candidate of their choice. We regard codes intended for the same re-ceiver as a long string and the MIX servers MIX the strings (i.e. thoseintended for different receivers).

    A more efficient network of MIX servers is used as our solution is notconfined to using each MIX server only once, thus the total number ofMIX operations done is b. We denote the set of MIX servers by X andassume we have an (X,B) set system, which is an (m, b, t)-verifiers set sys-tem set system as defined in [18]. We letBk = {MIXk,1,MIXk,2, . . . ,MIXk,t+1}and call MIXk,1 Bks leader.

    We mainly assume the adversary is passive and controls at most tMIX servers. Contrary to the majority of previous work which considersconditionally secure anonymity, we focus on the stronger model whichachieves unconditionally secure anonymity.

    The main idea of the protocol is very similar to the communicationprotocol of the previous section. This time, the receiver (e.g., CGE) willshare each of the v messages to transmit using an appropriate secretsharing scheme (and not using XOR). In a similar fashion, messages arepermuted and altered as they are transmitted within the MIX network.After the last MIX operation, the final block of MIX servers delivers theshares of messages to the senders, with each sender reconstructing the se-crets (voting codes) sent by the receiver. We will assume the transmissionof the shares of these secrets uses the human friendly method presentedin [21]. Similarly, since a code is only used once, it can be modified usingaddition over a finite Abelian group. To be compatible with [21] one suchexample is addition mod10 over the group used. Senders will then trans-mit back to the receiver the voting code corresponding to their choice.

  • 5.1 Virtual Directed Acyclic Graphs

    When an Abelian group is used and when blocks of the (m, b, t)-verifiersset system can share common MIX servers between them, we define theconstruction of a virtual vertex-labeled Directed Acyclic Graph (DAG).The set of vertices of the DAG is composed of parties participating in theprotocol (which is similar to Protocol 3), with the source of the graphbeing the receiver of the protocol and the sink being a sender.

    The directed edges of the DAG identify the transmission of messagesfrom one party to another amongst different levels in the DAG. We definelevels of the DAG as the receiver, a sender and the different blocks of MIXservers used. Considering block Bi as a tuple (ordered set), when Bi is ablock where |Bi| = l and b Bi, at location k in this tuple, we say thatb is at position k. With the above definition, directed edges of the DAGwill occur:

    from the receiver to all bj in B1 (1 j l) from each bj in block Bb to the sender

    moreover, we have edges between nodes in Bi and nodes in Bi+1

    The following are required:

    1. If a unique color was to be assigned to each party of the protocol,based on the results of [19], the sender and receiver can privatelycommunicate, if when choosing any t colours and removing the ver-tices of the DAG with those t colours the sender and receiver remainconnected - meaning that there still exists a directed path from thesender to the receiver on the reduced DAG.

    2. Moreover we require that if at level k the parties in Bk receive shares ofpiki , the parties in Bk+1 (i.e., at level k+1) receive shares of pi

    k+1i =

    ki +

    pik(i).

    There are in particular two methods to achieve the above require-ments. One uses re-sharing - such as when using the redistribution schemedescribed in [16]. The other one uses a rather large set of MIX servers Xto guarantee the following property.

    Definition 3. We say that set X of MIX servers is under t-confinementif all members of set T where |T | = t appear in at most t positions overall blocks of MIX servers used and this for all T X where |T | = t.Given the above structure, it is easy to see that it satisfies the DAGrequirements.

  • 5.2 The MIX Protocol

    In the case of Internet voting this is used as a pre-voting protocol for thetransmission of voting codes to voters and it is used to achieve anonymityof voting codes. We assume S to be a finite Abelian group and denotewith v the number of senders, and thus the number of messages (setsof voting codes) that need to be transmitted. In the following, we onlydescribe the required difference when compared to Protocol 1.

    Protocol 2 Private and Anonymous Random Communication Protocol

    Step 1 Let si be the ith message(where 1 i v). For each message

    si, the sender shares si by choosing l shares pi1i,j R S (using an

    appropriate secret sharing scheme over an Abelian group where1 j l) and privately sends pi1i,j to the corresponding partyB1,j in B1. As an (m, b, t)-verifiers set system is used, l = t + 1 denotes

    the number of shares.Step 2 Same as in Protocol 1.Step 3 Same as in Protocol 1.Step 4 The leader of B1 chooses modifiers

    1i,j R S and privately sends

    1i,j to parties in B1.Step 5 Similar as in Protocol 1. Only:

    The MIX servers in B1 compute shares of pi2i =

    1i +pi

    1i , i.e. party

    Pj Bi adds the modifiers it receives from the leader of Bi tothe share(s) it holds. The shares of the pi2i are denoted as pi

    2i,j .

    Step 6 If the concept of t-confinement is not used, re-sharing of sharespi2i,j is carried by out by parties in B1 using the redistributionscheme described in [16]. That means that each party in B2 re-ceives l = t+ 1 values, which they then compress.

    Step 7 Steps 2-5 are repeated incrementing by one the indices of B1 andB2 until the last block Bb is reached. For all iterations - exceptwhen the last block Bb is reached, Step 6 is also repeated (exceptif t-confinement is used).

    Step 8 If t-confinement is not used, shares held by the MIX-servers ofblock Bb are re-shared.

    Step 9 Shares held by MIX-servers of block Bb are denoted as i,j .MIXb,j Bb then sends i,j to the ith voter using [21].

    It should be noted, that as in [21], MIX servers will send shares to votersusing network disjoint paths, as the communication network cannot betrusted with the adversary capable of listening to at most t of these

  • paths. The way voters will use what they receive to cast their vote willbe described in Section 6.

    5.3 Security Proof

    In this section we present the security proof for Protocol 2.

    Corollary 2 Protocol 2 is a reliable, private and anonymous messagetransmission protocol.

    Proof. Formally, we have:Perfect Reliability - This is the same as in Theorem 1.Perfect Privacy - The protocol achieves perfect privacy as each messageis shared over l = t+ 1 shares. In the case of t-confinement, the view ofthe adversary will consist of at most t shares. This number is one less thatthe number required to reconstruct a secret and thus perfect privacy isachieved. In the case of re-sharing, the re-sharing guarantees that sharesat level i are independent of those at level i+ 1 (note that the adversarialparties are passive). The rest follows from [19] and through the use ofre-sharing or t-confinement. When using re-sharing we ensure that thereis no cut of t vertices (colors) that can disconnect the sender and thereceiver. This is because the resharing of shares makes certain that theparties in block bi receive shares from t+ 1 parties in block bi1. So, anyadversarial t parties in block bi1 will not allow to cut the graph. It is easyto see that the condition of [19] (i.e. no t parties are able to cut a graph)is satisfied when using t-confinement thus allowing for secure solutions.Perfect Anonymity - This is very similar to the anonymity proof ofTheorem 1. The only difference is that now where a lower number ofMIX servers are used, due to Property 3 from the definition of verifier setsystems, there exists a block bi - 1 i b, free from adversary controlledMIX servers. Because of this, the adversary is unable to learn the modi-fiers and permutation which are added and implemented respectively tothe shares of the messages.

    5.4 Use of non-Abelian Group - Single-seat Election Case

    When a non-Abelian group is used, the protocol is similar to that pre-sented in Section 5.2. Due to the non-Abelian nature of the group, alter-native additional techniques will have to be employed to manage the factthat dealing with shares cannot be done locally (due to the multiplica-tion) thus this needs to be shared and securely computed among manyparties using techniques presented in [17].

  • Suppose we have an election in which we have s seats in which everyvoter can vote for up to s of the c candidates - where s c. To enableblinding of the code, we give to each voter a secret permutation pi Sc,where Sc is the symmetric group. For each favourite candidate i the voterwants to vote for, pi(i) is transmitted to the returning officer.

    Note that pi is not necessarily unique to the election, as opposed toChaums code voting. The protocol is organised to avoid that this createsa problem.

    5.5 The MIX Protocol

    In the case of Internet voting, this protocol is used as a pre-voting proto-col, for the transmission of v number of voting codes (i.e. permutations)to v number of voters and it is used to achieve anonymity of voting codes.We assume S = Sc to be a finite non-Abelian group.

    It should be noted that the protocol to be presented is only useful forthe private and anonymous transmission of random messages to receivers- which in the context of this work are permutations with which receiverscan cast their vote.

    Protocol 3 Private and Anonymous Random Communication Protocol

    Step 1 Same as in Protocol 2 only now a non-Abelian group is used andpermutations are transmitted.

    Step 2 The leader of B2 chooses modifiers 2i,j R Slc and privately sends

    2i,j to parties in B2 such that the l values 2i,j are regarded as

    shares of 2i .9

    Step 3 For each (i, j) the l values pi1i,j are regarded as shares of pi1i .

    The MIX servers in X 1,2 X where |X 1,2| 2t+1 and B1B2 X 1,2 compute shares of pi2i =

    2i pi1i using a black box non-

    Abelian multiparty computation protocol10 (see Section 2.5). Thisis done so that 2i blinds pi

    1i . The shares of the product are de-

    noted as pi2i,j and are obtained by the parties11 in B2.

    9As shown in [17], to securely compute pi and where pi is chosen by one party and by another, we need 2t + 1 parties where t parties are curious. To mimic as closelyas possible the working of [17], 2i,j is chosen by the leader of B2 and not by the leaderof B1.

    10Note that the MIX servers in B1 B2 can also be a in X 1,2 where |X 1,2| 2t+ 1.Additionally, the efficiency of black box non-Abelian multiparty computation protocolsis better when |X 1,2| >> 2t+ 1.

    11Note that [17] allows to organise the computation such that the output, i.e. sharesof pi2i , are received by parties in B2.

  • Step 4 The leader of B2 informs all other MIX servers in B2 how theyhave to permute the i-index of all shares they hold from theabove operations. This permutation is defined by 2 R Sv. Onthe i indices the MIX servers in B2 apply the permutation 2.So, pi2i,j := pi

    22(i),j

    .Step 5 The above three steps are repeated by incrementing by one the

    indices of B1 and B2 (thus Bk 6= Bk+1). After parties in Bkpermute the i indices of piki,j using k - where 2 k b 1, theleader of Bk+1 chooses modifiers

    3i,j R Slc which are given to

    parties in Bk, the black box non-Abelian multiparty computationsub-protocol is executed by parties in X k,k+1 X where Bk Bk+1 X k,k+1 |X k,k+1| 2t + 1 and the process continues tillthe final block of servers Bb is reached.

    Step 6 After parties in Bb permute the i indices of pibi,j using b, the

    leader of B1 chooses modifiers 1i,j R Slc which are given to

    parties in B1, the black box non-Abelian multiparty computationsub-protocol is executed between parties in block Bb and B1 andthe output of which is held by parties in B1. MIX1,j B1 sendsthe output it holds to the ith voter using [21].

    It should be noted, that as in [21], MIX servers will send shares to votersusing network disjoint paths, as the communication network cannot betrusted with the adversary capable of listening to at most t of thesepaths. The way voters will use what they receive to cast their vote willbe described in Section 6.

    5.6 Security Proof

    We now present the security proof for Protocol 3.

    Theorem 2. Provided Protocol 3 together with the appropriate black boxnon-Abelian multiparty computation sub-protocol is used, then Protocol 3is a reliable, private and anonymous random transmission protocol.

    Proof. Perfect Reliability - This is the same as in Theorem 1.Perfect Anonymity - The proof of anonymity is similar as the one forclassical MIX servers, in particular very similar to [18]. Note that they arenot identical, since the security in our case is unconditional. Moreover,the modifiers 1i (for message i) and permutation 1 is used in the laststep. Assume F is the set of t dishonest parties. Then from the propertiesof verifier sets, we known that there exists a block of MIX servers Bk B,

  • such that Bk F = . That immediately implies that k is not knownby F and so unknown to the sender. This fact is however not sufficient.Indeed, similar as in the case of ElGamal based MIX servers, the use ofthe modifier k guarantees that conspiring MIX servers in the protocolwill not be able to deduce anything about k from their view.

    Formally, at the end of Step 5 the ciphertext piki = kk(i) pik1k(i) and

    since the one-time pad property generalizes to any finite group (i.e., alsonon-Abelian ones), we know that since kk(i) is uniform and unknown by

    any party in F , piki is independent of pik1i .

    This together with the fact k is uniform and unknown to F , themixing is unknown to F and thus anonymity is achieved.

    Note that to guarantee the operation does not leak anything toparties in F we use the subprotocol of [17] or from [12].

    Perfect Privacy - The protocol achieves perfect privacy as each messageis shared over l = t + 1 shares. The protocol achieves perfect privacythrough using the multiplication sub-protocol of Section 2.5 from [17] orfrom [12].

    6 Electronic Code Voting Protocol

    In this section we outline how components of previous sections are com-bined to create a secure electronic code voting scheme secure against tpassive insiders. We describe different stages of the voting protocol andspecific steps that need to be taken in each.

    6.1 Multi Seat vs Single Seat Elections

    It is important to note that the use of permutations based on non-Abeliangroups can be used for multi-seat (and single-seat) elections - which is apermutation of the alphabetical ordering of the candidates. When Abeliangroups are used, then only single seat elections are possible. This is be-cause of the correlation which exists between the available choices, i.e. weuse the same modifier for each code sent to the same voter.

    6.2 Preparation, Mixing and Transmission of Voting Codes

    As described in Section 3.1 the CGE is responsible for creating the codeswith which voters will cast their votes. We first explain this for the single-seat election.

  • Considering an election has c number of candidates and that there arev number of voters, the CGE will create v random initial codes for each ofthe c candidates. In total, cv unique number of codes will be generated.The CGE will then group these codes to form v number of c tuples,with each tuple containing a single code for each of the c candidates.

    Each of these codes will then be transmitted as one-time pads to thevoters in the same way as described by Protocol 2. It should be notedthat Protocol 2 describes the transmission of only v codes as opposed toc v required by the voting protocol. To transmit all the voting codes,c executions of Protocol 2 will be executed at the same time. These ex-ecutions should not be independent between them but instead should usethe same permutations ( R Sv in Step 2) and modifiers (i,j in Step 4)used throughout all executions of the protocol, i.e. the same modifier isused for all codes the same voters will receive and they remain bundledtogether (i.e. by reusing ). These c executions can be carried out eitherin parallel or sequentially, as long as each voter receives c voting codes.

    In the case of multi-seat elections, each voter will receive a singlepermutation over Sc - which is a permutation of the alphabetical orderingof the candidates. Moreover, Protocol 3 will be used.

    6.3 Receiving and Reconstructing Voting Codes

    We first explain the single-seat case. Each voter will receive l = t+1 sharesfor each voting code, receiving each one using a different computationaldevice. It should be noted that the ith share of each of the c voting codeswill be received upon the same computational device. Such computationaldevices can include a desktop, a laptop, a tablet or a smartphone oranother publicly available computer (at the library or at the voters placeof work).

    The voter can then identify the code which corresponds to the candi-date of their choice. Once all pieces of each code are received, the codecorresponding to their choice can be reconstructed in a similar manneras described in Section 2.4.

    In the multi-seat election, instead of receiving a c-tuple, a single per-mutation is received - which is a permutation of the alphabetical orderingof the candidates. Similar to the single seat case, t+1 shares of this permu-tation will be received by the voter who will reconstruct the permutationas described in [21, Section 4.2, Section 4.3]. This will allow the voter toidentify the candidates of their choice. Supposing the voter wants to votefor candidate c and candidate c, the reconstruction of the permutation

  • will help the voter identify pi(c) and pi(c) which correspond to the can-didates of their choice. To cast their vote, voters will have to send backto the CGE these pi(c) and pi(c) values.

    6.4 Transmission, Mixing and Counting of Cast Votes

    We first explain this for the single-seat case. Once a voter identifies thecode corresponding to the candidate of their choice, they will have to sendthis code back to the CGE. To do this, voters will have to transmit to theleader of the last block of MIX servers this code.

    To transmit voter codes in the reverse direction (towards the CGE),the leaders of each block of MIX servers will have to carry out the reserveoperations on the codes - communicating with each using the privatechannels which connect them. Thus the leaders of each block of MIXservers will use the same permutations (b) and modifiers (

    ki ) - only in

    the reverse direction (toward the CGE) the inverse of these (1b and ki )are used. Once a code arrives to the CGE, it will identify the candidateit corresponds to and the vote will be counted.

    The multi-seat case is similar. Once a voter identifies one of the pi(c)which corresponds to one of their chosen candidates, they will have tosend this pi(c) to the leader of the last block of MIX servers. Similar tothe single-seat case, as this pi(c) is transmitted towards the CGE, theleaders of each block of MIX servers will have to carry out the reserveoperations on the codes - communicating with each other using the privatechannels which connect them. The leader of the last block of MIX serverswill thus apply (bi )

    1 pi(c) and send this to the leader of previous blockof MIX servers who in turn will carry out a similar operation.

    Once a voters pi(c) arrives to the CGE, the CGE will apply pi1 andidentify the candidate the voting corresponds to and the vote will becounted.

    7 Conclusion

    In this paper we have extended work introduced by Chaum [8], in whichhe showed that insecure computers can be used in the context of Internetcode voting through the use of an out-of-band channel. We have presentedan Internet code voting scheme which contrary to Chaums proposal doesnot use the postal mail service for the transmission of voting codes tovoters but instead achieves this through new schemes for private andanonymous communication.

  • It should be noted that as in any voting scheme, people will requireinstructions on how to vote with our proposed solution. Indeed, it is notuncommon for people to be instructed on how to vote even for simplepaper based presidential elections (in the news for example). In the sameway and in a similar manner, people will have to be given appropriateexplanations and clear instructions for when our proposed solution is tobe used. As shown at SCN 2012 in [21] people are capable of implementinghard computation correctly given correct and clear guidance, thus theseinstructions are important.

    As in most research areas, several open problems still remain - suchas the following:

    Are there less complex solutions than the ones we proposed, whendealing with untrusted insiders? For example, can more efficient solu-tions - not based on set systems (and thus requiring a lower number ofMIX servers), be constructed whilst still achieving perfect anonymityand information theoretic privacy? Further to this, can simpler sub-protocols be designed and used in our solutions.

    Although we have a solution to deal with active adversaries, it is toocumbersome - as can be seen in Appendix A. So the same questionsas the above point have to be asked, but for the active adversary casethese seem more challenging, even when taking [12] into account.

    The solution presented requires high amounts of computation, espe-cially for multi-seat elections. More efficient solutions with simplerprotocols should be sought in the future.

    In what contexts besides Internet voting can cryptography enable theuse of insecure computers? We believe this should be an importantresearch topic.

    Acknowledgements: The authors would like to thank the anonymousreferees for their valuable comments on improving the presentation andclarity of this paper.The authors would also like to thank Juan Garay and Amos Beimel forexpressing their interests in Private and Secure Message Transmission inwhich one cannot trust the equipment used by the receiver.

  • References

    1. About electronic voting in Finland. www.vaalit.fi/sahkoinenaanestaminen/en/yleistietoa.html.

    2. Four Grand Challenges in Trustworthy Computing. In CRA Conference on GrandResearch Challenges in Information Security and Assurance. November 1619,2003, Warrenton, Virginia.

    3. Official State of Geneva e-voting site. http://www.geneve.ch/evoting/english/welcome.asp.

    4. M. Abe. Universally verifiable mix-net with verification work indendent of thenumber of mix-servers. In Advances in Cryptology - EUROCRYPT 98, Inter-national Conference on the Theory and Application of Cryptographic Techniques,Espoo, Finland, May 31 - June 4, 1998, Proceeding, pages 437447.

    5. M. Ben-Or, S. Goldwasser, J. Kilian, and A. Wigderson. Multi-prover interactiveproofs: How to remove intractability assumptions. In Proceedings of the twentiethannual ACM Symp. Theory of Computing, STOC, pages 113131, May 24, 1988.

    6. J. Blocki, M. Blum, and A. Datta. Human computable passwords. CoRR, 2014.7. J. Buchmann, D. Demirel, and J. van de Graaf. Towards a publicly-verifiable mix-

    net providing everlasting privacy. In Financial Cryptography and Data Security2013. Short Paper, Okinawa, Japan, April 15, 2013.

    8. D. Chaum. SureVote: Technical Overview. Proceedings of the Workshop on Trust-worthy Elections. http://www.vote.caltech.edu/wote01/pdfs/surevote.pdf. August26-29 2001. Tomales Bay, CA, USA.

    9. D. Chaum. Untraceable electronic mail, return addresses, and digital pseudonyms.Commun. ACM, 24(2):8488, February 1981.

    10. D. Chaum, C. Crepeau, and I. Damgard. Multiparty unconditionally secure pro-tocols. In Proceedings of the twentieth annual ACM Symp. Theory of Computing,STOC, pages 1119, May 24, 1988.

    11. D. Chaum, A. Essex, R. Carback, J. Clark, S. Popoveniuc, A. T. Sherman, andP. L. Vora. Scantegrity: End-to-end voter-verifiable optical-scan voting. IEEESecurity & Privacy, 6(3):4046, 2008.

    12. G. Cohen, I. B. Damgard, Y. Ishai, J. Kolker, P. B. Miltersen, R. Raz, and R. D.Rothblum. Efficient multiparty protocols via log-depth threshold formulae - (ex-tended abstract). In CRYPTO (2), volume 8043 of LNCS, pages 185202. Springer,2013.

    13. C. J. Colbourn and J. H. Dinitz. Handbook of Combinatorial Designs, SecondEdition (Discrete Mathematics and Its Applications). Chapman & Hall/CRC,2006.

    14. R. Cramer, M. K. Franklin, B. Schoenmakers, and M. Yung. Multi-autority secret-ballot elections with linear work. In EUROCRYPT, volume 1070 of LNCS, pages7283. Springer. Zaragoza, Spain, May 1996.

    15. Daily Mail. US senators demand traitor NSA whistleblower be extraditedfrom Hong Kong to face trial in America. http://www.dailymail.co.uk/news/article-2338534.

    16. Y. Desmedt and S. Jajodia. Redistributing secret shares to new access structuresand its applications. Tech. Report ISSE-TR-97-01, George Mason University, July1997. ftp://isse.gmu.edu/pub/techrep/97 01 jajodia.ps.gz.

    17. Y. Desmedt, J. Pieprzyk, R. Steinfeld, X. Sun, C. Tartary, H. Wang, and A. C.-C.Yao. Graph coloring applied to secure computation in non-abelian groups. Journalof Cryptology, 25(4):557600, 2012.

  • 18. Y. Desmedt and K. Kurosawa. How to break a practical MIX and design a newone. In Eurocrypt 2000, Proceedings LNCS 1807, pages 557572. Springer-Verlag,2000. Bruges, Belgium, May 14-18.

    19. Y. Desmedt, Y. Wang, and M. Burmester. A complete characterization of tolerableadversary structures for secure point-to-point transmissions without feedback. InAlgorithms and Computation, ISAAC 2005, volume 7485 of LNCS, pages 277287.December 19 - 21, 2005, Hainan, China.

    20. D. Dolev, C. Dwork, O. Waarts, and M. Yung. Perfectly secure message transmis-sion. Journal of the ACM, 40(1):1747, January 1993.

    21. S. Erotokritou and Y. Desmedt. Human perfectly secure message transmissionprotocols and their applications. In SCN, volume 7485 of LNCS, pages 540558.Springer, 2012.

    22. S. Estehghari and Y. Desmedt. Exploiting the client vulnerabilities in internet e-voting systems: Hacking Helios 2.0 as an example. In 2010 Electronic Voting Tech-nology Workshop/Workshop on Trustworthy Elections (EVT/WOTE 10), August910, 2010, 2010.

    23. European Commision - Flash Eurobarometer 375. European Youth: Participationin Democratic Life.

    24. FCW - The Business of Federal Technology. What NSAs influence onNIST standards means for feds. http://fcw.com/articles/2013/09/06/nsa-nist-standards.aspx.

    25. C. for American Politics and Citizenship. Characteristics of contemporary votingmachines.

    26. S. Forrest, A. Somayaji, and D. H. Ackley. Building diverse computer systems. InWorkshop on Hot Topics in Operating Systems, pages 6772, 1997.

    27. M. K. Franklin and M. Yung. Secure hypergraphs: Privacy from partial broadcast.SIAM J. Discrete Math., 18(3):437450, 2004.

    28. J. Furukawa. Efficient and verifiable shuing and shue-decryption. IEICE Trans-actions, 88-A(1):172188, 2005.

    29. E. Gerck, C. A. Neff, R. L. Rivest, A. D. Rubin, and M. Yung. The business ofelectronic voting. In Financial Cryptography, volume 2339 of LNCS, pages 234259. Springer, 2001.

    30. J. Groth. Linear algebra with sub-linear zero-knowledge arguments. In CRYPTO,volume 5677 of LNCS, pages 192208. Springer, 2009.

    31. J. Groth. Short non-interactive zero-knowledge proofs. In ASIACRYPT, volume6477 of LNCS, pages 341358. Springer, 2010. December 5-9, 2010, Singapore.

    32. J. Groth. A verifiable secret shue of homomorphic encryptions. J. Cryptology,23(4):546579, 2010.

    33. J. Groth and Y. Ishai. Sub-linear zero-knowledge argument for correctness of ashue. In EUROCRYPT, volume 4965 of LNCS, pages 379396. Springer, 2008.

    34. J. Heather, P. Y. A. Ryan, and V. Teague. Pretty good democracy for moreexpressive voting schemes. In ESORICS, volume 6345 of LNCS, pages 405423.Springer, 2010. Athens, Greece, September 20-22, 2010.

    35. J. Helbach and J. Schwenk. Secure internet voting with code sheets. In VOTE-ID,volume 4896 of LNCS, pages 166177. Springer, 2007. Bochum, Germany, October4-5, 2007, Revised Selected Papers.

    36. Helios. Helios Voting. http://heliosvoting.org/.

    37. N. J. Hopper and M. Blum. Secure human identification protocols. In ASI-ACRYPT, volume 2248 of LNCS, pages 5266. Springer, 2001.

  • 38. International Association for Cryptologic Research. IACR 2012 Election. http://www.iacr.org/elections/2012/.

    39. M. Jakobsson, A. Juels, and R. L. Rivest. Making mix nets robust for electronicvoting by randomized partial checking. In USENIX Security Symposium, pages339353. San Francisco, USA, August 5-9, 2002.

    40. Jason Kitcat. Turning Round Turn-out. http://www.jasonkitcat.com/files/turnroundturnout.pdf.

    41. R. Joaquim, C. Ribeiro, and P. Ferreira. Veryvote: A voter verifiable code votingsystem. In VOTE-ID, volume 5767 of LNCS, pages 106121. Springer. Luxem-bourg, September 7-8, 2009.

    42. S. Katti, J. Cohen, and D. Katabi. Information slicing: Anonymity using unreliableoverlays. In Proceedings of the 4th USENIX Symposium on Network Systems De-sign and Implementation (NSDI), pages 4356. Cambridge, Massachusetts, U.S.A.,April 1113, 2007.

    43. S. Khazaei, T. Moran, and D. Wikstrom. A mix-net from any CCA2 secure cryp-tosystem. In Advances in Cryptology - ASIACRYPT 2012 Beijing, China, Decem-ber 2-6, pages 607625.

    44. M. Kutylowski and F. Zagorski. Scratch, Click & Vote: E2E Voting over theInternet. In Towards Trustworthy Elections, volume 6000 of LNCS, pages 343356. Springer, 2010.

    45. E. Maaten. Towards remote e-voting: Estonian case. In Electronic Voting in Europe- Technology, Law, Politics and Society, volume 47 of LNI, pages 83100. GI, 2004.July 7th9th 2004, Bregenz, Austria.

    46. A. Malkopoulou. Lost voters: Participation in eu elections and the case for com-pulsory voting., 2009.

    47. Marc Schulman. Voter Turnout. http://www.historycentral.com/elections/Voterturnout.html.

    48. T. Moran and M. Naor. Split-ballot voting: Everlasting privacy with distributedtrust. ACM Trans. Inf. Syst. Secur., 13(2), 2010.

    49. M. O. Rabin and R. L. Rivest. Efficient end to end verifiable electronic votingemploying split value representations. (To appear in Proc. EVOTE 2014 (Bregenz,Austria).

    50. Reuters. Germanys Merkel sends top foreign adviser to pressU.S. over spying. http://uk.reuters.com/article/2013/10/30/uk-germany-us-surveillance-idUKBRE99T0HF20131030.

    51. R. L. Rivest. Thoughts on appropriate technologies for voting. Invited keynotegiven at online special event, E-Voting: Risk and Opportunity, organized byCITP at Princeton University. November 1, 2012.

    52. P. Y. A. Ryan and S. A. Schneider. Pret a` Voter with Re-encryption Mixes.In ESORICS, volume 4189 of LNCS, pages 313326. Springer, 2006. Hamburg,Germany, September 18-20, 2006.

    53. K. Sako and J. Kilian. Secure voting using partially compatible homomorphisms.In CRYPTO, volume 839 of LNCS, pages 411424. Springer, 1994. August 21-25,1994, Santa Barbara, California, USA.

    54. K. Sampigethaya and R. Poovendran. A survey on mix networks and their secureapplications. In Proceedings of the IEEE, volume 94, pages 21422181.

    55. Security Musings. 2013 RSA Conference OpeningKeynotes. http://securitymusings.com/article/3912/2013-rsa-conference-opening-keynotes.

  • 56. The Cold War Museum. Senator Joseph McCarthy, McCarthyism and the WitchHunt. http://www.coldwar.org/articles/50s/senatorjosephmccarthy.asp.

    57. The Guardian. NSA surveillance: Merkels phone may have been moni-tored for over 10 years. http://www.theguardian.com/world/2013/oct/26/nsa-surveillance-brazil-germany-un-resolution, 2013/10/26.

    58. The National. Migrant workers an ignored electorate. http://www.thenational.ae/news/world/south-asia/migrant-workers-an-ignored-electorate,20009/04/26.

    59. The Register. NIST denies it weakened its encryption standard to pleasethe NSA. http://www.theregister.co.uk/2013/09/11/nist_denies_that_the_nsa_weakened_its_encryption_standard/, 2013/09/11.

    60. Tor. Anonymity Online. https://www.torproject.org/index.html.en.61. A. Tran, N. Hopper, and Y. Kim. Hashing it out in public: common failure modes of

    DHT-based anonymity schemes. In Proceedings of WPES 2009, Chicago, Illinois,USA, November 9, pages 7180.

    62. J. T. Trostle and A. Parrish. Efficient computationally private information retrievalfrom anonymity or trapdoor groups. In ISC, volume 6531 of LNCS, pages 114128,2010. October, Boca Raton, FL, USA.

    63. UK Political Info. European Parliament election turnout 1979 2009. http://www.ukpolitical.info/european-parliament-election-turnout.htm.

    64. US National Archives. 15th Amendment to the U.S. Constitution: Voting Rights(1870). http://www.ourdocuments.gov/document_data/pdf/doc_044.pdf.

    65. US National Archives. 19th Amendment to the U.S. Constitution: Womens Rightto Vote. http://www.ourdocuments.gov/document_data/pdf/doc_063.pdf.

    66. Wikipedia. Darknet (file sharing). http://en.wikipedia.org/wiki/Darknet\_(file\_sharing).

    67. Wikipedia. Returning officer. http://en.wikipedia.org/wiki/Returning_officer.

    68. D. Wikstrom. The security of a mix-center based on a semantically secure cryp-tosystem. In INDOCRYPT, volume 2551 of LNCS, pages 368381. Springer, 2002.Hyderabad, India, December 16-18, 2002.

    A Active Adversary Solution - Brief Outline

    The solution to our proposed protocol when considering an active adver-sary is similar to when a passive adversary is considered and as presentedin Section 6 (and the work presented in Section 5). Certain aspects ofthe protocol will though have to use alternative sub-protocols to accountfor the adversarys active nature. The following alterations will have becarried out:

    Human PSMT protocols which consider an active adversary and aspresented at SCN 2012 in [21] will have to be used. These protocolsare necessary because an active adversary may cause errors and sincehumans cannot execute Lagrange interpolation or use Reed Solomon

    11At a panel in Intrust 2014 (Beijing) Moti Yung suggested countries build trustedcomponents, e.g. for interpolation, which is a single point of failure for connecting data.

  • codes simpler protocols based on secret sharing and error correctingtechniques that can be carried our by humans as described in [21] willhave to be used. When considering an active adversary, comparison ofdata is an extra operation humans will have to use in such protocols.This mainly involves identifying a majority to ascertain the correct-ness of any data which may have been altered by an active adversary.Such majorities where achieved by the protocols mainly through theuse of covering designs (as discussed in the previous section). Similarto the passive adversary, mod 10 will be applied to the correctly iden-tified (using majority) shares to reconstruct the secret message of thecommunication protocols.

    The implementation of the MIX network will require a generalized(n, b, t, t)-verifiers set system (as this is defined in [21]).

    For the MIX protocols presented in Section 5 multi-party computation(specifically Byzantine agreement) will have to be used to ensure thatthe re-sharing and mixing process is correctly carried out. It shouldbe noted that this is a very general description of the active caserequirement and that solutions to these will be much more involved.Other possible solutions to MIX networks which consider an activeadversary could of course be used.

    The CGE entity of the voting scheme will have to be implemented ina distributed manner using more than one party and through multi-party computation. Specifically, at least 2t+1 parties should simulatethis entity to ensure the reliability, integrity and correctness of thecode generation, vote validation and vote tallying up processes.

    From this brief outline, it is easy to comprehend how more complex anactive adversary solution will be when compared to the passive adversarysolutions presented in this work.