Rivest’s ThreeBallot Voting System

September 29, 2006 by Ping

Ron Rivest suggests a paper-based voting system called ThreeBallot, which is unusual in that it lets voters verify the integrity of the election from end to end, but doesn’t require computers to do fancy cryptographic operations.  Designers of voting schemes have long desired to enable each voter to ascertain with confidence that their ballot was cast and counted properly in the final result, without enabling voters to sell their votes.  It is possible to achieve these two goals together, but previous proposals for doing so have required some fairly sophisticated cryptography (for example, many of the proposed solutions are based on mixnets).  Such schemes are typically criticized for requiring all voters to perform a tricky voting procedure, for having a complex verification procedure for those who wish to check their votes, or both.

However, the ThreeBallot voting procedure is quite simple to understand and can be carried out completely on paper.  Each voter takes three identical blank ballots, marks them all, and casts them all.  These ballots would be just like today’s optical scan ballots (for example, with a bubble to fill in next to each option).  To do the equivalent of filling a bubble on an ordinary ballot, the voter fills exactly two of the three corresponding bubbles on the three ballots.  To do the equivalent of leaving a bubble empty on an ordinary ballot, the voter fills exactly one of the three corresponding bubbles on the three ballots.  Filling all three bubbles or leaving all three empty is illegal.

When all the ballots are counted, the effect is as if the voter had cast two votes for the chosen candidate and one vote for all the other candidates in each contest — so the totals produce the same winner.  (To produce an actual count of votes, you would just subtract the number of voters from each candidate’s count.)

What is gained by marking three ballots instead of one?  Each voter now has the option to take home a copy of any one of their three ballots.  Each ballot has a unique ID number printed on it, and all the collected ballots are posted online.  The voter can go online, look up the ballot they took home, and verify that it was correctly counted.  But, since it’s only one of the voter’s three ballots, it doesn’t reveal how they voted, and can’t be sold as proof of how they voted.  (True, the voter only gets to verify one of the three ballots, but that’s enough: since the voter gets to choose which one, it would be very unlikely for the tampering of any significant number of ballots to escape detection.) Also, anyone can count up all the posted ballots to check the election result.

This is a big leap forward for end-to-end-verifiable voting schemes.  It’s vastly simpler than end-to-end-verifiable schemes that have been proposed before.  But is it simple enough to work in practice?  Here are some of my thoughts on this, following a discussion about this voting scheme in a reading group meeting today.

Let’s first look at the scheme as presented.  There is a pile of identical blank ballots at the polling place.  The voter takes three, marks them in private, then brings them back to be checked.  A checking machine scans the marked ballots to make sure that they are legal (i.e.  exactly one or two of the bubbles in each triplet are filled, and the maximum number of allowed selections in each contest has not been exceeded).  The checking machine prints a random ID number on each ballot.  The voter selects one of the three ballots; the machine produces a copy of the selected ballot for the voter, then drops all three original ballots into the ballot box.

How hard would it be to get voters to properly mark three ballots (or a perforated ballot with three separable columns)?  The instructions are simple — mark one or two in each row — but it may not be so easy to convince voters why they should do this.  I’m not convinced that we’d be able to get voters to put a mark next to a candidate they want to vote against.  That’s an action that seems likely to produce some cognitive dissonance.  I don’t know for sure; maybe voters would still do it, but it’s not immediately obvious to me.  Pollworkers would probably be busy answering lots of questions.

The bigger problem, it seems to me, would be convincing voters to mark one out of three for every unselected option on the ballot.  A San Francisco voter who just wants to cast a vote for Governor and ignore the other contests would have to fill in over 100 bubbles instead of just one.  (This fall, there will be over 20 offices and 24 propositions on the ballot in San Francisco.) I’d like to be less cynical about the behaviour of typical voters, but I’m inclined to think it will be even harder to get voters to do something really inconvenient than to do something they don’t fully understand.  The inconvenience might be the real killer obstacle here.

Would the ThreeBallot scheme truly prevent voters from selling their votes?  Not necessarily.  If the voter can identify all three of the ballots they marked in the public record of ballots, that would probably be enough to sell their vote.  Since the voter only gets to see the ID number on the ballot they choose to take home, but not on the other two ballots, that makes it harder to identify the other ballots — but it might not be impossible.  A vote-buyer might demand that the voter mark all three of the ballots in a specific way, and then the pattern of marks might be distinguishable, depending on how the rest of the voters behave.  If most voters vote uniformly (for example, always marking either the first ballot or the first two ballots), then a specific pattern of three ballots would stand out from the crowd.  The coercion prevention of ThreeBallot depends on the voters to randomize how they distribute their marks among the three ballots.

Let’s consider now a possible alternative.  If it’s too tedious for voters to mark three ballots in this way, how about a machine that marks the ballot for them?  Then voters could have the same familiar touchscreen interface that many of them like and find convenient, but still produce ballots that work with this scheme.  Imagine a machine that prints three ballots and then prints an extra copy of one of them (perhaps on a different colour of paper) at the voter’s choice.  The voter has the option to verify the three ballots before dropping them in the ballot box, and takes home the extra copy.

Suppose we compare this scheme to regular touchscreen voting.  The printed ballots are similar to the paper trail produced by today’s machines.  Some fraction of voters would check the printed ballots, just as some fraction of voters would check the paper audit trail (though checking the three ballots takes a little more work than checking a single ballot summary).  The voter also gets to check the take-home ballot against the online records, which is an extra advantage provided by machine-assisted ThreeBallot.

However, now we have a new problem: the ballot-marking machine becomes responsible for randomly distributing the marks among the three ballots.  If the distribution is not random, then the voter becomes vulnerable to coercion.  It’s difficult to generate true randomness in a machine, and randomness can’t be verified by an observer.

I conclude that there remain some significant obstacles to practical deployment for ThreeBallot.  I’m not certain that it’s an unworkable scheme — it’s certainly much better than any other end-to-end-verifiable voting scheme I’ve seen — but I’m also not sure its advantages would outweigh its disadvantages in practice.  I welcome your thoughts on ways that the remaining obstacles could be addressed.

For completeness, I’ll mention here another idea for mitigating the usability problem. The paper ballots could come pre-printed in triplets, with one bubble in each triplet already filled. Then the voter only has to add a second mark to the rows where they want to vote — which is the same amount of work as marking a single ballot. This also doesn’t require the voter to place a mark next to a candidate they dislike. However, it yields a new problem that the pre-printed marks will be clearly distinguishable in appearance from the hand-marked bubbles, so a simple photocopy won’t work for the receipt. The receipt would have to be a re-printed ballot or ballot summary.

 
Evelyn Mitchell wrote:

I think the random string on the ballot the voter takes home is the big weakness with this. You’re right that it’s impossible for a voter to know if the number on the ballot is truely random. It could be ‘the democratic candidate wins long random looking string’ or the ‘republican candidate wins long random looking string’ and unless voters compared their numbers with each other (which could be added to the system I suppose), no voter could see the problem.

I’d like to see a wider discusison of this, but I suspect that having individual voters being able to ascertain the validity of an election will be a hard sell to currently elected politicians. On the other hand, the squirminess required on their part to describe why they don’t want to add end-to-end verification of the process as a requirement could be fun to watch.

Perhaps a more democratic country could institute the system as a model for good behavior. But then, what other countries do is irrelevant here.

 

I sent a message to Rivest with a few more ideas. Here it is:

Date: Mon, 2 Oct 2006 18:15:26 -0500 (CDT)
From: Ka-Ping Yee [ping at zesty dot ca]
To: Ron Rivest [rivest at mit dot edu]
Subject: Further ideas on ThreeBallot

Hi Ron,

I read your October 1 draft, which I see mentions some of the problems
and ideas I wrote about at http://usablesecurity.com/.

I have a few more thoughts to offer you.  I hope they are helpful.

1.  You do mention that voters have a slightly more complex marking
    procedure for ballots.  However, I think it warrants particular
    mention that the procedure is not only more complex but requires
    more physical work, since voters are required to mark one bubble
    for every candidate they are not interested in.  Since many voters
    are only interested in a few big races, this could increase their
    workload and voting time by a factor of 10.

    In short, I think the phrase "ballot fatigue" needs to appear
    in the paper somewhere.  Voters will have more to do, and voting
    will be slower.

2.  A promising method for addressing this, already mentioned in your
    new draft, is having the ballots pre-printed with one randomly
    selected bubble in each column pre-filled.  This may be my
    favourite improvement so far, since it has many advantages:

      - The voter workload is reduced to normal (the same as
        marking a single ballot).

      - Voters are not asked to make marks next to candidates
        they dislike (a potential source of confusion).

      - The three-pattern attack (as described in my blog entry,
        and also in your latest draft) is prevented.

    I see one main drawback to pre-printing filled bubbles:

      - Hand-filled bubbles look different from printed bubbles,
        so the take-home receipt cannot be an image copy.

3.  This drawback can be addressed by having the checker machine
    print copies of all three ballots, of which the voter chooses
    one to take home.  Instead of copying the entire ballot image
    verbatim, the machine prints a big filled black box over
    bubbles that it has detected as filled, and prints a big empty
    black box over bubbles it has detected as empty.

    This provides several advantages at once:

      - Now there is no way to tell on the receipt which bubbles
        the voter marked and which were pre-printed, so the
        receipt cannot be sold.

      - Optical scanning errors are now voter-detectable where
        they previously were not.

      - The voter cannot undetectably alter the ballot between
        the checker and the ballot box.  (If the filled black box
        is filled with, say, a checkerboard pattern instead of a
        solid black fill, hand-alteration would be essentially
        impossible.)

4.  The combination of premarked ballots with a "re-printing
    checker machine" thus would appear to nicely address many of
    the issues with ThreeBallot mentioned in your latest draft.

5.  The alternative of using an electronic ballot printer corresponds
    to combining the hand-marking step with the re-printing checker
    machine, at the cost of introducing more software that the system
    depends on.  (The electronic ballot printer should also print a
    checkerboard-filled box for a filled bubble and an empty box
    for an empty bubble, to prevent hand-alteration after printing.)

6.  In both cases -- the pre-printed ballots and the EBP -- there
    remains the question of randomness.  I think your paper also
    needs to mention this issue: the prevention of vote-buying
    depends to some extent on the distribution of marks among the
    three columns.  It is hard to generate verifiable randomness.

    However, you could argue that the key property is not randomness
    but unpredictability.  As long as any potential vote-buyer knows
    he or she cannot predict the pattern of marks an any appreciable
    number of ballots, that may make it much too impractical to try
    to buy any appreciable quantity of votes.

    Thus, i think these two schemes hold up.  My personal preference
    is for the pre-printed paper, because i have difficulty trusting
    software.

-- ?!ng
 

The Hugo Chavez Test for Voting Machines…

At first I thought that the stories around Sequoia Voting Systems and Smartmatic having connections to Hugo Chavez were silly. I still do think that, but I also think that they’re coming out for an important reason: we have lost……

 

Dr. Brian Chess has been following ThreeBallot and also providing some thoughts of his own at:

http://extra.fortifysoftware.com/blog/2006/10/election_season.html#more

 
David Robarts wrote:

I think the pre-printed triplet ballot would work just as well as the triplet producing machine (except the cost of random triplets). Of course overcoming the quazi-randomness issue would be difficult. To ease verification, the triplet ballot could have three different ballots with the bubbles offset just enough that when the ballots are lined up they appear next to each other (perhaps with holes in the paper to make it easy to read all three together). The pre-printed ballot’s marks being distinguished from the voter-made marks is a non-issue if the voter’s receipt and public record are produceded in a way that makes them indistinguishable (optically read, then print the data - not the scanned image - this also allows voters to verify that the scanner correctly READS their marks).

Voting proceedure for pre-printed triplicate paper ballot: get ballot, mark one bubble per vote, line up ballots to verify, feed into scanner, compare one part of official ballot to printed receipt, take receipt home to compare to recorded ballots.

 

[...] A discussion of a method of Rivest to ensure voting is a) verifiable by the voter, but b) doesn’t allow selling of votes. http://usablesecurity.com/2006/09/29/rivests-threeballot-voting-system/ [...]

 

The easiest solution is to “unbundle” the ballot questions. Ask voter which particular races he’s interested in and print only these ballots, separately - three ballots per race. Mark the race on each ballot in machine readable form. Ask voter to mark 1 or 2 ballots, read them back, verify that voter actually marked 1 or 2 ballots, ask which ballot he wants to bring back home, print a copy of it with a number assigned.

Very active voters willing to cast vote on 100 issues simultaneously will not be stopped by this scheme, and majority of the voters will not be disturbed too much by it.

 

To my mind the answer is simple, why not go electronic??

Think about it!!

Cheers,
Peter