a decentralized and distributed e voting scheme based on
play

A Decentralized and Distributed E-voting Scheme Based on - PowerPoint PPT Presentation

A Decentralized and Distributed E-voting Scheme Based on Cryptographic Shuffles Decentralized and Distributed Systems Laboratory Andy Caforio Responsible: Prof. Bryan Ford Supervision: Linus Gasser, Philipp Jovanovic 1 Way back when


  1. A Decentralized and Distributed E-voting Scheme Based on Cryptographic Shuffles Decentralized and Distributed Systems Laboratory Andy Caforio Responsible: Prof. Bryan Ford Supervision: Linus Gasser, Philipp Jovanovic 1

  2. Way back when… [https://heliosvoting.org/] 2

  3. Helios Started in 2008 ● First web-based, verifiable e-voting scheme ● Leverages cryptographic shuffles ● 3

  4. Helios - Features Auditable elections ● Encryption proof ○ Shuffle proof (Sako-Kilian) ○ Decryption proof ○ User authentication ● Front- and back-end implementation ● 4

  5. Helios - Verifiability Users can verify that their vote was counted ● Shuffle weeds out malicious servers ● Honest servers will perform decryption ● 5

  6. Helios - Protocol 1. Cast 2. Publish 3. Shuffle 4. Audit 5. Decrypt 6. Tally 6

  7. Helios - Disclaimer Helios does not enforce anonymity ● Voters may be subject to coercion ● 7

  8. Helios - Downsides Centralized ● Conventional database storage ● Very slow shuffles ● 8

  9. Helios - Improvements Centralized Cothority ● Conventional database storage Skipchains ● Very slow shuffles Neff ● 9

  10. Back to the future 10

  11. Protocols - DKG Distributed Key Generation ● Create public/private key pair ● Split private key ● Part of kyber library ● 11

  12. Protocols - Neff Shuffle Novel verifiable shuffle concept by Andrew Neff ● Orders of magnitude faster than Sako-Kilian scheme ● 12

  13. Protocols - Decryption After election termination and audit ● Reconstruct plaintext ballots with shared secret keys ● Cannot be done by a single node ● 13

  14. Master ● System configurations ○ Storage List of admins, roster etc. ○ Link ● Reference to election skipchain ○ Election ● Settings ○ DKG public key, list of voters etc. ○ Ballot ● Casted vote (one per block) ○ Shuffle ● Permuted and re-encrypted ballots ○ Decrypt ● Ballot plaintexts ○ 14

  15. Practical Go implementation ● Built on top of cothority and kyber ● Protobuf API ● 15

  16. Benchmarks - Helios Shuffle of 500 ballots ~130s ● 2.2 GHz dual core machine ● [Ben Adida. Helios: Web-based open-audit voting] 16

  17. Benchmarks Shuffle ● 1.4 GHz dual core ● Real world context? ● 17

  18. Overview Distributed e-voting scheme ● Improves on Helios ● Distributed ○ Faster ○ Built on top of DEDIS infrastructure ● 18

  19. Gory details Cryptographic background ● Framework (elliptic curve etc.) ○ Shuffles ○ Verifiability ○ Protocols ● Networking ○ Usage ● Authentication ○ Front-end ○ 19

  20. References Repository: https://github.com/dedis/student_17_evoting ● Report: https://github.com/dedis/student_17_evoting/blob/master/report.pdf ● 20

Recommend


More recommend