Enhancing Voter Verified Paper Audit Trail (VVPAT) Integrity Using Encryption Chip Andrews Columbus State University 4225 University Avenue Columbus, Georgia 31907 andrews_charles@colstate.edu ABSTRACT In this paper, we describe the verification methods used to prevent fraud in elections that utilize e-voting machines and the Voter Verified Paper Audit Trail (VVPAT). Specifically, the paper will investigate methods that can be used to verify that the paper audit trails themselves have not been compromised by using various techniques. There are many attacks that can be staged against paper ballot receipts in VVPAT systems including the ability to stuff ballots, forge receipts, and tampering with officially printed receipts. In addition to a description of the attack vectors, this paper proposes how adding specific cryptographic methods to the paper ballot receipts can add both integrity and authentication to the voting process. Specifically, adding the combination of cryptographically secure random number generators and digital signatures can help to harden the paper ballot receipts against attack so that can act as a reliable verification of the e-voting machines. Finally, there is a discussion of the overall weaknesses of VVPAT systems and the solutions presented in this paper. The paper concludes with some discussion of alternative methods and future technologies that may replace the need for VVPAT systems entirely. General Terms tampering which could invalidate the entire voting process. In fact, two documentary-style movies (“Hacking Democracy” and “Uncounted”) have been released in recent years that have helped to bring these concerns to the masses. The primary concern is that, without some ability to independently verify election results (either by local districts or independent groups such as Black Box Voting), it is trivial for someone to alter the election results. For example, in a punch card system, someone would need to gain physical access to the punch cards to tamper with the results. A voter can physically inspect a punch card to see if it recorded the intended data before submitting the results. However, in DRE systems, the voter must simply trust that the program code, recorded data, and memory cards are all properly recording the intended results – a much more difficult feat than inspecting a punch card. Out of these challenges arose the need for a Voter Verified Paper Audit Trail (VVPAT). The VVPAT would basically allow a DRE system to produce a verifiable paper audit “receipt” of the voting process (see Figure 1). This “receipt” could be verified by the voter to ensure it matches the voter’s intent, and then submitted as a secondary ballot. The paper trail allows the more efficient DRE system to be verified in case of a random audit or a disputed recount. While less efficient and at additional cost, the VVPAT system adds integrity to the voting system by allowing for a way to verify that the electronic results of the DRE have not been tampered with. Measurement, Design, Reliability, Security, Human Factors, Theory, Verification. Keywords VVPAT – Voter Verified Paper Audit Trail DRE – Direct Recording Electronic Voting System 1. INTRODUCTION Voters around the world are becoming more and more suspicious of Direct Recording Electronic Voting Systems (DRE), a specific instance an e-voting system[1]. DRE systems were originally thought to be the solution to some of the voting irregularities that arose in the U.S. Presidential election of 2000 which evokes previously unknown terms such as “hanging chads” and “pregnant chads” which personified the challenges of punch card voting systems. DRE systems were supposed to solve all of those problems by providing efficient tabulating processes and voterfriendly interfaces (typically touch screens). However, in recent years web sites such as Black Box Voting have acted as rallying points for an ever-increasing number of critics who are worried that DRE systems are too susceptible to Figure 1. Sample VVPAT system with printer attached In summary, VVPAT systems allow the voter to be sure their vote is counted no matter how the DRE system is implemented. For example, some DRE systems transmit their data over the Internet which could expose the data to attack or corruption. Additionally, since there is no time for each voter to review the source code for each DRE machine (assuming they have the necessary skills), it is very possible that an attacker could modify the machine to skew the voting results in any number of ways. By attaching a VVPAT printer to the DRE machine, the voter is able to get a physical representation of their voting intent which they can personally verify. VVPAT systems mitigate the debate regarding the technical implementation details of DRE systems since the results of the e-voting systems are always verified by the VVPAT paper trail. 2. PROBLEM STATEMENT Despite the integrity provided by using VVPAT systems in DRE voting systems, there are still several attacks that are possible on the paper trail. Since the paper trail will generally be considered to be the “true” count in an election, it provides a very likely target for attack[2]. Due to the various ways that VVPAT systems are implemented, the attack vectors will differ from system to system. For example, in VVPAT systems that allow the voter to handle the paper receipt, it is possible that someone could forge large quantities of false receipts and submit them at the same time as the legitimate ballot. In VVPAT systems that do not allow the voter to touch the receipt, the results are usually displayed behind some sort of glass separator which prevents tampering. However, in this case, the voting machine itself could be manipulated by an attacker to void the original receipt and then re-print a false ballot for actual submission. Also – the spooling of paper ballots which is often a feature of glass separated voting systems can also defeat the anonymity of the elections process since the votes are recorded in precise order[3]. Additionally, in effort to add efficiencies to the paper receipt tabulation, some VVPAT systems will print barcodes on the printed ballot receipts so that they can quickly be read by machines in the event of a recount or random audit of the paper ballots. However, the barcodes themselves could become an area of attack in that a compromised voting machine could produce a paper ballot that matches the voter intent in the human-readable section but contains contrary information in the barcode[4]. Such a barcode presents a dangerous covert channel for attackers since it is very unlikely that each ballot barcode would be compared against the human-readable section unless there was a specific reason to suspect foul play. Finally, in a more obvious attack, there is always the possibility of “ballot stuffing” by insiders in the elections process. If someone could produce large quantities of false ballot receipts, they could simply replace the voter-vetted receipts with the false ballots and effectively alter the outcome of the election in that district. What is needed to mitigate these attacks is a way to cryptographically verify that a given paper ballot was produced by a given machine. Doing so should greatly increase the difficulty of produce false paper ballot receipts either by voters or by elections officials. If VVPAT is going to be used to verify the electronic results of DRE systems, it is imperative that the integrity of the paper ballot receipt be assured to best of our ability. There exist two primary challenges to paper ballot receipt validation: (1) Creating a verifiable link between a vote instance on the DRE computer and the paper ballot. This must be done so that for each paper ballot receipt – a corresponding electronic vote can be associated and verified. Doing so greatly mitigates the problem of “ballot stuffing” or the false introduction of fake paper ballot receipts into the system. (2) Providing a method whereby a particular paper ballot receipt can be verified that it has not been altered in any way. For example, if an attacker has access to the paper ballot receipts before tabulation, he should not be able to alter the information on the ballot as to bypass the ability of the auditors to detect such alteration. 3. PREVIOUS WORK In a paper called “An Examination of the Auditability of Voter Verified Paper Audit Trail (VVPAT) Ballots” by Stephen Goggin and Michael Byrne[5], the authors investigate the weaknesses of VVPAT systems in general. Specifically, their concerns center around the fact that relying on a very manual process of hand counting paper ballots does not necessarily help to add integrity. As an example, in one study only 57% of participants were able to manually count the paper ballots correctly. Based on the conclusions in that paper, the addition of some sort of very accurate, automated method of processing paper ballots in needed. While they do not propose any specific solutions, it is obvious that whatever solutions are added to the VVPAT process, they need to provide for the ability to create a more efficient and verifiable process. Figure 2. Sample of a VVPAT paper ballot receipt In regards to the use of cryptography in voting systems, Ben Adida and Ronald L. Rivest collaborated on a paper called “Scratch & vote: self-contained paper-based cryptographic voting” in which they propose and entire new voting system based on cryptographic methods[6]. As opposed to this paper which attempts only to enhance the integrity of current systems, “Scratch and vote” is a complete re-thinking of the entire elections process with specially formed ballots, barcodes, and advanced mathematical methods to ensure integrity. Unfortunately, in addition to the cost of replacing all existing voting systems, the Adida and Rivest solution also involves very complex mathematical constructs that could eventually be defeated and are likely not understood by voters (and therefore possibly not trusted). 4. PROPOSED SOLUTIONS The solutions to be proposed by the author of this paper address the very specific issue of verifying the validity of paper ballot receipts. The issue of whether or not to include barcodes is not relevant to this discussion. The use (or lack thereof) of barcodes has no relevance in the context of paper ballot receipt validation and barcodes could certainly be used to display the cryptographic information if that was desired or if an acceptable method for detecting discrepancies between human-readable and bar-coded content could be devised. 4.1 Unique Identifiers The first proposed change is to create a unique identifier for each vote instance and store it on both the electronic record and the paper ballot receipt. This allows for an auditable verification that each electronic vote can be matched up against a corresponding paper ballot receipt and in and of itself creates a huge barrier to both internal (voting systems staff) and external (actual voters) attackers. authenticate a particular voting machine as the producer of the receipt and signature. In order to authenticate the actual voting machine, a public key cryptography key pair should be generated (using acceptable public key algorithms and key lengths) for each voting machine before any given election to sure key rotation can protect the private keys over time. The private key should be stored on the DRE machine while the corresponding public keys are kept in a directory available to the voting system components. When a paper ballot receipt is printed, the private key is used to sign a hash of the ballot contents and is then appended to the paper ballot receipt. The addition of this signature allows the machine processing the paper ballot receipts to read the signature and validate it using the public key for the appropriate DRE machine (identified by its Unique Identifier discussed in section 4.1). Once the signature is verified, the paper ballot receipts can be verified to: 1. 2. Be in original, unaltered form Generated by a specific DRE machine Note that this does not prevent someone from using the machine to create invalid ballots prior to the election and then stuffing the ballot box later. The use of the unique identifier should effectively mitigate that risk assuming it can be guaranteed that the machine begins the actual supervised voting process with no unique identifiers generated. Figure 3 gives a general overview of the digital signature process for the DRE machine in relation to the paper ballot receipt. This unique identifier should not be a simple incremental number despite the fact that an incremental number should effectively eliminate duplicates. Using a incrementing integer would allow for an attacker to possibly predict a series of identifiers and successfully introduce forged paper ballot receipts into the system. A more resilient solution than incrementing unique identifiers would be to compute a cryptographically random unique identifier for each paper ballot receipt. Systems that can produce the required level of randomness are referred to as cryptographically secure pseudo-random number generators (CSPRNG). Such systems produce random numbers that have an acceptable level of randomness and should not allow attackers to predict the unique identifier for any given DRE machine[7]. In addition, each unique identifier could be prefixed with a unique identifier for each voting machine which would mean the randomly computed numbers would only need to be unique for each machine. This should greatly reduce the possibility of a collision assuming the random numbers are pulled from a large enough range of values. 4.2 Digital Signatures To address the challenge of detecting tampering of paper ballot receipts, it is recommended that each ballot also contain a digital signature of the ballot contents. In addition to tamper-detection, the inclusion of a digital signature provides the ability to Figure 3. Digital Signature Process for Paper Ballots It may be advantageous to prevent the recording of a timestamp as part of the paper ballot receipt printing process in order to protect the identity of voters. If timestamps are encoded on the ballots, may be possible for someone to use the timestamp as a way to identify voters by correlating serialized timestamp data with the order in which voters used the machine. This is also one of the arguments against using take-up reels for the printing of VVPAT receipts. At the current time, there is only one DRE machine vendor that appears to be pursuing the features proposed in this paper: TruVote International of Nashville, TN [8]. TruVote clearly displays a sample VVPAT paper receipt (as shown in Figure 4) with a validation number which is the unique identifier tying the paper receipt to the actual voting machine. In addition, TruVote also claims to use a digital signature which is likely encoded in the two-dimensional barcode (also visible in Figure 4). While TruVote does not appear to offer any technical details about how these features are implemented, the fact that they clearly promote both features shows that vendors may be beginning to see the value in using cryptographic methods to verify the validity of VVPAT paper receipts. to as HAVA) which stipulates that voting systems in the United States should “produce a permanent paper record with a manual audit capacity for such systems”[9]. Additionally, there is an Act (still in committee) called H.R. 811 which strengthens the VVPAT recommendations of HAVA and provides additional details and restricts around the use of VVPAT systems that ensure measures such as mandatory audits, certified voting machines, and manual counting are used to maximize the integrity of paper ballot receipts. However, at this time H.R.811 does not address the problem of how to verify that the paper ballot receipts are authentic and appears to rely mostly upon physical controls rather than encryption to provide those protections. While it is important to strengthen the integrity of VVPAT systems by any means necessary, it should be noted that even with the use of cryptographic methods to harden these systems, there are still significant challenges. For example, there is significant evidence that voters fail to take the time to verify paper ballots which could lead to incremental attacks such as only forging a small numbers of paper ballots per voting machine[10]. In addition, paper ballots have limited lifetimes and are difficult and expensive to tabulate in the event a paper-based recount is required. Finally, the accuracy of the manual hand counting that may be required to count VVPAT receipts is also very suspect as was discussed in the Goggin and Byrne paper (section 3). While adding cryptography can be helpful in verifying the integrity of the paper ballots, it will require significant programming and automation to make the process of validation a reality. By adding yet another layer of technology to the voting process, it is very possible that attackers will simply shift their focus from attacking the paper ballot receipts to attacking the computer systems responsible for verifying those paper ballots. Due to VVPAT’s weaknesses, it is worth considering alternatives that could provide both an independent and presumably unalterable verification mechanism. For example, it might be possible to record video and/or audio (for visually impaired voters) of the voting process which could be analyzed by computers to produce a verifiable tabulation of voter intent – also known as a Voter Verified Video Audit Trail (VVVAT). While it is not clear that the technology currently exists for such a system, it is possible that a method of this type would be able to capture voter intent without requiring a second medium that must be verified manually by the voter. 6. REFERENCES [1] Bannet, J., Price, D., Rudys, A., Singer, J., and Wallach D. 2004. Hack-a-Vote: Security Issues with Electronic Voting Systems. IEEE Security & Privacy, 2(1):32–37 (January/February 2004). [2] March, J. 2009. Security Theatre: Degrading, petty, & a violation of our rights. Black Box Voting. http://www.bbvforums.org/forums/messages/1954/80306.ht ml?1265108919 Figure 4. International Sample VVPAT Receipt from TruVote 5. CONCLUSIONS It is clear that voting trends in the United States are moving towards the use of VVPAT systems to verify DRE results. In 2002, congress passed the Help America Vote Act (often referred [3] Caandrino, J., Clarkson, W., and Felten, E. 2009 Some Consequences of Paper Fingerprinting for Elections. Center for Information Technology Policy and Dept. of Computer Science, Princeton University. [4] Hall, J. 2006. Design and the Support of Transparency in VVPAT Systems in the US Voting Systems Market. UC Berkeley, School of Information. [7] Eastlake, D., Crocker, S., and Schiller, J. 2005. Randomness Requirements for Security. RFC 4086. http://tools.ietf.org/html/rfc4086 [5] Goggin, S. and Byrne, M. 2007. An Examination of the Auditability of Voter Verified Paper Audit Trail (VVPAT) Ballots. Rice University. [8] TruVote International. Voter Verified Paper Ballots. http://www.truvote.com/PaperBallot%20Compare.htm [6] Adida, B. and Rivest, R. 2006. Scratch & vote: selfcontained paper-based cryptographic voting. In Proceedings of the 5th ACM Workshop on Privacy in the Electronic Society, pages 29–40. ACM Press. [9] Help America Vote Act of 2002, H.R. 3295, 107th Congress. (2002). [10] Dill, D. 2003. VVPR Attack with Misprinted VVPAT. National Institute of Standards and Technology.