Last thursday I went to the First Open Workshop on the VVSG (FOW-VVSG). Audio of all the sessions are posted online, and I encourage anyone interested to check it out. It was a very interesting event, and I wanted to share some thoughts I had on two of the things that piqued my interest…
Verifiable vs. Verified
There was an interesting discussion of the meaning of the use of the word “Verified” vs. “Verifiable”. I have always thought verifiable was the proper term because it is optional if the voter actually does the verification and — even if they had done so — there still may be a chance that they did not succeed in verifying the printout, but it really depends on your perspective. Dr. Mercuri pointed out that, legally, when you press the OK button, you are certifying that what was printed is what you accept as the proper recording of your vote. In that sense, it is verified. It is unclear to me what term should be used in the VVSG. If your presentation is such that 1 in 5 voters will not catch a mistake on the record the machine makes, can you really call it verified?
Software Independence
Software Independence, or rather, the way it was presented in the proposed VVSG, turned out to be controversial, and I think it came up in discussion on a majority of the panels. Personally, while I think it is fine as a design approach, it was not appropriate to use the way it was used as part of the standard. In my opinion, it is similar to “build security in”, “default deny”, and “have many levels of security” — you want to do those things, but there’s no hard and fast way to check off in a box that someone did it. The way it is defined in the standard it should be called “Software Prohibition”, and not “Software Independence”. It prevents any software from acting in any meaningful way — and at the same time this definition is weak in some aspects.
Stefan pointed out that SI as defined in the VVSG was flawed on two levels. First, the definition was ambiguous, and second, the IVVR (the device they made up to say things were SI or not) does not meet the weakest definition of SI that he could come up with. His slides say it all, but I will elaborate. The VVSG defines SI as follows:
“…an undetected error or fault in the voting system’s software is not capable of causing an undetectable change in election results.”
The definition of SI is ambiguous because it does not say who can check the election results or when they can be checked. The VVSG is also missing audit mandates, so even if an error might be detectable, there is no guarantee that the software will not undetectably change the result anyway.
His explanation for why IVVR does not meet SI is unclear to me, but I will point out that VVPAT, which is supposedly SI, does not meet the definition. The reason is because not all voters check, or can check (specifically the visually impaired), the paper printout. All the DRE must do is incorrectly print out the paper. The voter, if he checks, thinks he made a mistake, and goes back to change his vote, then he presses submit again, and the machine prints out the correct choices this time. If he doesn’t check, the machine succeeds at undetectably changing election results. Careful readers might point out that this kind of error can be detected, but my point is that it might not be, or it might be a deliberate flaw that could be introduced on a per machine basis the day of the election. If you did everything you needed to do to detect all instances of this error you might be doing enough checking that even if you didn’t have VVPAT you could catch any errors introduced by the system. Wether the system is SI in this case depends on procedures, that is, if you check and what you check and how often you check to find errors. Of course, if you know exactly what the error does, then you could likely prevent changes in election results.
Dr. Yasinsac from SAIT also had some damning things to say. Among them being that anything that uses software can’t use it in a meaningful way and be software independent. He also popped the question “what are the security properties of paper?”, pointing out that the VVSG is asking for design and not performance requirements in this respect.
Later, Jim Dickson pointed out that the IVVR is not accessible to voters with disabilities. That it requires a “human readable” record I think makes it so that anything that is not printed paper cannot be an IVVR, even though the claim was tossed around that it not necessarily be a paper trail. I also don’t think OpScan or VVPAT meet SI requirements because if you don’t check 100% of the record, you can’t find the problems, and there’s no requirement that you do that kind of checking like there is in Scantegrity or Punchscan.
Other
There was much more that went on at the conference than what I’ve talked about here but unfortunately I don’t have the time to detail them here. The OVC, AADP, and EPIC all gave interesting talks that I encourage you to download and check out.
There was no consensus from the workshop. If you could say anything, the consensus was that all “schools of thought” represented at the meeting had problems with the document. The paper-trail people didn’t like it because of gaps in the document and things that it doesn’t address or define (e.g. “What is a ballot?”). The industry didn’t like it because it would make things too expensive (in particular, it requires use of a TPM-like chip that doesn’t exist). Crypto voting AND security people didn’t like it because SI was ambiguously defined. The disabilities folks didn’t like it because paper wasn’t accessible, and they didn’t like the layout of the accessibility requirements.
The NIST folks involved in the creation of the document and the EAC were both represented at the conference. They seemed to be taking the criticism well, and answered lots of questions. Overall, it was much more productive than I thought it would be. I will leave you with a choice quote from Jim Dickson (As best as I can remember it):
“We take people who are an average of 72 years old. We sleep deprive them for 2 days, and then we say ‘Now do the most important thing, be involved in counting the ballots!’. It’s a system that we know doesn’t work.”