Code Verification for Voting Machines

Project Proposal

Our project proposal can be found at PioneerVotingProjectProposal

Status Reports

11/03/2006: We have thoroughly read "Pioneer: Verifying Code Integrity and Enforcing Untampered Code Execution on Legacy Systems". We have spoken with Arvind Seshardi of Carnegie Mellon about demonstration requirements, and have spoken with Alan Cox about getting the required resources. We have also download Carnegie Mellon's demonstration source code. We have determined that their demonstration source code is a modification of the PCI ethernet driver. We are in the process of determining CMU's modifications.

11/08/2006: PioneerVotingStatusReport (Revised 11/15/2006)

11/17/2006: We have finished configuring the machines, and are finishing up the rewriting the checksum code into 32-bit x86 assembly from 64-bit x86 assembly. We plan on having everything ready for running the modified CMU demo on Monday.

11/22/2006: We received feedback from Dr. Wallach, and have decided to change our focus from implementation to analysis because getting the needed resources is taking more time than we had anticipated.

12/04/2006: We have analyzed the Pioneer implementation and have put together a possible solution for electronic voting code verification. We have discussed our solution with Arvind. We have also put together a draft of our presentation, and will have a draft of our report by Tuesday.