150 likes | 248 Views
Dermot Cochran Supervisor : Joe Kiniry Formal Verification of Elections that use Electronic Voting. PhD Thesis Statement : Verifiable Computer Mediated Remote Voting is appropriate for National and International Governmental Elections if (and only if)
E N D
Dermot Cochran Supervisor:Joe Kiniry Formal Verificationof Elections that use Electronic Voting
PhD Thesis Statement: Verifiable Computer Mediated Remote Voting is appropriate for National and International Governmental Elections if (and only if) A proven and trustworthy election process is used.
Definitions • Computer mediated voting: using a computer to record and count ballots • Remote voting: the voter need not be at a polling station e.g. might be using internet or mobile phone to cast a ballot • Verifiable: can be formally proven that each and every vote is counted as cast
Voting Requirements • Privacy – no link between voter and ballot • Eligibility – proper registration of voters • Uniqueness – each vote counted once • Secrecy – inability to reveal a vote • Accuracy – all votes counted correctly • Robustness – no undetectable errors • Transparency – openness and verifiability
Conflicting Requirements • Publishing anonymous ballots in a a bulletin board would allow for public transparency but violates secrecy, because vote signing is still possible • Receipt free voting schemes promote privacy and secrecy but deny transparency
Are paper ballots trustworthy? • It depends on the process for: • Voter registration • Custody of ballot papers • Privacy within the polling stations; could I use a mobile phone camera to record my vote?
Trustworthy vs Trusted • Some people trust paper ballots • Some election officialstrust voting machines • Most people won’t trust complicated mathematical proofs • I am not exploring the question of public trust in electronic voting
Research Plan • Demonstrate that electronic vote counting can be made reliable and accurate; treat all counting errors with extreme suspicion • Model the election process as a whole, including security requirements • Prove that at least one such election process, is valid i.e. non-conflicting when electronic voting is allowed
Preference Voting • Ireland uses Proportional Representation by Single Transferable Vote i.e. preference voting • Voters express multiple preferences for candidates in constituencies with between three and five seats • Formalized as a Java Modeling Language (JML) specification
Methodology • Business Object Notation for analysis, design and architecture • Finite State Machine model • Java Modeling Language specification • Scenario tests from BON and state model • Unit tests from JML
Lessons Learnt • At first I went straight from the legal requirements to JML specifications, without using BON • When I implemented the JML into Java I then had to re-factor all my JML into the correct architecture and add a more detailed state machine
Refinement • BON is object-oriented, although a classifier in BON might refine to either a field, method, class or package in Java • BON pre-conditions, post-conditions and constraints are written in structured English suitable for refinement into JML statements
Future Work • Formally specify the whole election process including actions by people • Proved the correctness of the specification using software verification tools, including model checkers • Modular verification e.g. require that software and machines are verifiable
Thank You for Listening • Questions? • Criticisms? • Suggestions? • Possible Collaborations?