Personal tools

Computerized (DRE) Elections Are Not Trustworthy, p. 2E

Continued from p. 2D



This is a general description of how a computer works, which should be understandable by a computer-literate person, but not necessarily the general public.

General computer systems, including the ones used in Computerized Elections, are made up of many layers of software, as well as multiple layers of "hardware". Each layer of software has opportunities for errors (mistakes by the original programmers) as well as opportunities for intentional malfeasance.

Computer programs are prone to "upgrades" and "corrections", which are ideal times to insert malicious code. If the malicious programming is discovered, it is declared to be an error; and it may be fixed or simply moved to another spot in the program. The boundaries between layers of software are often weak points in a program or system, prone to error and vulnerable to both attack and malicious manipulation.

A typical, current, DRE system can, in fact, talk to (or be attacked by) any other computer on the Internet. ( A couple of manufacturers bidding for a Santa Clara County contract were very proud of this "feature".) It can give out information about how people are voting. It can receive commands to change its internal programming code, which might change votes that have happened in the past or votes that will happen in the future.

A given layer of software may contain millions of lines of computer code. At the top, the application -- driving what the voter sees -- calls its own procedures and libraries (usually, dozens of them). Any of this can call system libraries and routines (which call any number of other routines), as well as system calls that talk to programs and computers in other places. The system itself gets control (whether the application likes it or not) to do what it wants (call more routines and libraries), whether those calls
relate to the application's tasks or not. Most of the Computerized Election computer systems go automatically to the Internet, presumably to talk to some main host.

Even the computer "hardware" is not "hard". It is certainly possible for even the basic "hardware" to work one way during testing, and work another way on election day. In the early days of computers, "hardware" was "hard" -- it consisted of circuit boards, wires and electrical devices. Modern
computers are NOT "hard" electrical devices, but typically contain "micro-code" devices (sometimes derisively called "mush-ware"). The "Central Processing Unit" (CPU) -- a "microprocessor" -- is, itself,
layers of computer programs (microcode), as well as the underlying "hard" stuff. Many microprocessors are capable of changing, or reloading, the (micro)programs that drive their inner workings.

-> Continued on p. 3: III. APPENDICES.

Created by hdihuyen
Last modified April 09, 2007 05:36 PM

Sign up for CPSR announcements emails


International Chapters -

> Canada
> Japan
> Peru
> Spain

USA Chapters -

> Chicago, IL
> Pittsburgh, PA
> San Francisco Bay Area
> Seattle, WA
Why did you join CPSR?

To network and volunteer to support initiatives.