Proprietary Software Voting Systems? by Bradley M. Kuhn Regardless of the conflicting opinions on the voting situation in this past election, most voters in this country now agree that voting systems could use an upgrade. Recently, three American companies, Unisys, Microsoft, and Dell, teamed together to build electronic voting machines which they hope to sell to various localities in the United States. Accepting the systems from these companies would be a good idea if the various election commissions and independent investigators could check the machines for flaws. Unfortunately, this will not be possible. The potential buyers will have to trust that the machines work as intended; yet, they will not. Election commissioners will be like a person who is forbidden to test drive a car before buying it. This is because these electronic voting systems will likely be built with proprietary software. The computer source code---the set of directions given to the computer to carry out its task---for the voting systems will not be available to the public, nor the government, nor the election commissioners. If we are lucky, it may be that the software will work without error; but no one will know. The few people in the three companies permitted and encouraged to examine the code will think they know the code works, but they will not. Long experience has shown us that bugs escape the eyes of even the most experienced computer programmers and quality testers. Our recent election has showed us that allowing the public to review the vote collection and counting process can increase voter confidence, and ensure that votes are counted fairly and accurately. However, a voting system built around proprietary software will be less open to public scrutiny than our existing voting systems. For example, if you use a traditional lever-based voting machine, you can take off the back and inspect the gears to ensure it functions correctly. If you use the punch-card system, even if you use a hardware machine to ease the counting, it is still possible to inspect the physical voter card to check that the machine is functioning properly. Discussions of dimpled and hanging chads aside, at least the system leaves the possibility of direct scrutiny by the public. Contrast this to an electronic voting system. Such a system has no "gears", per se, nor any tangible representation that records the voter's intent. The software, instead, acts as the gears, the ballot, and the vote counter. The outcome hinges upon the function of the software. Do we, the voters, want the outcome of our elections determined by software that has been examined only by a small group of individuals at a few companies? As a computer programmer, I certainly know that writing software without any bugs is extremely difficult, and also that it is not a difficult task to add code into a program that would tip the election results. However, that's not say it is a bad choice to use computer software to help us handle our elections. Yet, for the public to have confidence in the system, elections must be seen as fair and honest. The only way to ensure such a perception is to enable every concerned party to watch every part of the process (except an individual's actual vote, of course). This means that all the machinery must be visible for inspection and review. In the case of electronic voting, it means that the software source code must be open to inspection and freely available (in both a practical and a legal sense) to everyone who wishes to copy and study it. This way, members of the public and election commissioners can scrutinize it, and independent agencies will have the freedom to audit it for bugs and discrepancies. If voting systems are built around proprietary software, whose to say we can trust that small group of programmers to resist the temptation to falsify election results? And, do we really want the entire outcome of elections to rest on the programming skills of such a small group? I hope voters will begin to ask these questions long before companies like Dell, Unisys and Microsoft have completed their design. But, it is up to us, the free software community, to begin a dialogue about this issue. We already know the ethical and technological benefits of free software. Likely, those who will make the decision about accepting a given electronic voting system do not yet understand the importance of being able to scrutinize the source code. We have to educate them, and soon. Please, if you live in the USA, contact your local election board and your state and federal congressional representatives about this issue. We must educate people who make the decisions before it is too late. Copyright (C) 2001, Bradley M. Kuhn Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.