140 likes | 209 Views
Anual Workshop February 5th, 2014. Anonymous yet reliable ePoll application. Italo Dacosta SecAnon-DistriNet. Electronic Polls/Elections. Gathering opinions on a particular topic Determining the most popular choice over a set of options
E N D
Anual Workshop February 5th, 2014
Anonymous yet reliable ePoll application Italo Dacosta SecAnon-DistriNet
Electronic Polls/Elections • Gathering opinions on a particular topic • Determining the most popular choice over a set of options • Typically targeted to a particular group of people
Problems • Generally identifiable • Integrity vs. anonymity • Users less motivated to freely participate and express opinions • Users cannot verify their votes • Need to trust the poll organizer • Difficult to restrict to a target group
Our Approach • Rely on anonymous credentials for ballot privacy • PriMan framework • Design verification capabilities for the bulletin board • Individual verifiability • Universal verifiability • Eligibility verifiability
Anonymous Credentials Authentication with a classical credential (X.509) Name: John Doe Gender: M Birthdate: 01/01/1970 Address: street 10, Leuven Zip code: 3000 Name: John Doe Gender: M Birthdate: 01/01/1970 Address: street 10, Leuven Zip code: 3000 Proof Sig Sig Authentication with anonymous credential (Idemix) Proof
Our Scenario • Low to medium scale polls/elections • Low to medium coercion • E.g., No high-stakes elections • Untrusted poll organizer • But trusted credential issuer • Voting over the Internet
Our ePoll Architecture Credential Issuance Issuer Server Voting Credential Storage & Retrieval ePoll Server Account Manager Server
ePoll Protocols • Registration protocol • Obtain ePoll anonymous credential from Issuer server • User validation (e.g. only one ePoll credential per user) • E.g., eID, workshop registration number • Storage & Retrieval protocol • ePoll credentials are securely stored in the Account Manager server • User authenticates to retrieve her credentials on her desktop computer or smartphone • Voting protocol • User selects a poll to participate • User uses her ePoll app and credential to participate in the poll • User can validate their vote was successfully submitted
Vote Verification • Poll Integrity Value (PIV) • PIVi= H(i | PIVi-1| datai) • Poll Authenticity Value (PAV) • Sign(SK, i | PID | PIVi) • Work in progress
Implementation • Java • PriMan framework • Mobile and Desktop client