Open source: How e-voting should be done
- — 28 October, 2008 09:43
In addition, these devices wouldn't require manual configuration. Once connected and authenticated to the central server, all ballot choices would be pulled from the central server for display to the voter. Thus, setting up the polling place would simply require volunteers to plug everything in and turn the systems on.
Of course, connectivity to the central server is sure to be this solution's weakest link. Though all transactions would be encrypted, the system would also need to incorporate a queuing method to retain votes until the server is available. This functionality could also maintain vote integrity even where Internet connectivity is not available. Simply connect the device to the network at a later time, and the votes are delivered to the central server. As above, paper receipts of each vote would be made available as they were cast, as a fallback should problems occur.
Open source in the voting booth
Anyone familiar with current e-voting technologies will note that the logistics of this solution are no more or less complex than those of existing systems. The key, however, is that they would be driven by open source code that anyone could download and use.
With all the covers off, it becomes extremely difficult to embed backdoors or commit cloak-and-dagger fraud. The ability to view the code that records our votes should be a basic right -- if only to ensure that the conditions leading to a successfully recorded vote do not set success as a default.
The best bet for an open voting system would be code based on NetBSD or OpenBSD, embedded in nonremovable flash on the mainboard of the device. The device would also require a serial or USB-driven touchscreen, as well as a USB-connected, embedded printer. Code updates to the device would not be allowed via the touchscreen, but rather through a certificate or key-secured USB or serial connection.
Such a device would be less complex than a McDonald's cash register, running extremely basic, open code that's been hardened for years, and can be easily reduced to only the required functions. There's no reason it couldn't be cheap, simple, and extremely easy to produce. Further, it should easily handle being mothballed for a year or two between elections.
Detractors will claim that if the code is open, anyone planning to commit fraud will have the blueprints to circumvent the security of the system. The ever-growing adoption of open source software in businesses large and small, as well as the Internet's reliance on open source solutions, provides evidence to the contrary. For example, open cryptography solutions are no less secure than their closed counterparts. In fact, one could argue that they're more secure, given that complete code visibility greatly reduces the potential for backdoors.