Home

Anonymous
There is a newer version of this page. You can find it here.

Project Admins:

e-Voting Application is an open source project aiming to create an e-voting system which complies to European e-Voting standard and EML specification.

e-Voting Application Components
  • Client side applications:
    • Vtoken Generating application (VG). √
    • e-Voting Machine application (EVM). √
    • Vote Counting application (VC).
  • Server side systems:
    • e-Voting Tabulation system (EVT).
e-Voting Scenario
  • Voting opening
    • Administrator opens voting process on the machine by pressing an open voting button on VG/EVM.
    • When opening voting process, VG/EVM:
      • Activates and deactivates some functions.
      • Generates a pair of private key – public key for digital signature:
      • VG: vtoken-private.bin and vtoken-public.bin
      • EVM: private.bin and public.bin
    • vtoken-public.bin is then copied from VG machine to each EVM machine.
    • Before administrator open voting process:
      • VG cannot be used to generate vtoken.
      • VG can be used to reset ballot box.
      • EVM cannot be used to cast votes.
      • EVM can be used to view result.
      • EVM can be used to reset ballot box.
    • After administrator open voting process:
      • VG can be used to generate vtoken.
      • VG cannot be used to reset ballot box.
      • EVM can be used to cast votes.
      • EVM cannot be used to view result.
      • EVM cannot be used to reset ballot box.
  • Voting process
    • Voter verification
      • Before voter casts a vote, administrator verifies for two things:
        • voter's identity, and
        • whether voter is eligible to vote.
      • Administrator performs voter verification:
        • manually using traditional identity card, or
        • electronically using digital identity card, or
        • combination of both.
    • Vtoken generation
      • Vtoken is a proof of right-to-vote for voter.
      • It is issued by administrator after voter verification.
      • It is generated by Voter Generator (VG) application as a unique random number.
      • It is validated by EVM before voter casts vote.
    • Vtoken validation
      • Before EVM can be used to cast vote, it should validates vtoken of the voter.
      • Voter can use EVM to cast a vote, if:
        • Vtoken is validated as the right one issued by administrator.
        • Vtoken is validated as the one that is not already used before.
  • Voting
    • Voter uses EVM to cast a vote by:
      • Scanning vtoken barcode.
      • Choose a candidate with a touch.
      • Confirm the choice with a touch.
      • Take paper audit trail and put it in audit box.
  • Vote sealing
    • Each vote casted by voters is combined by their unique vtoken and sealed.
    • By sealing it means:
      • Encrypts “vtoken + vote”.
        • Makes it hard-to-read by bad guys.
      • Digitally signs the encrypted “vtoken + vote”.
        • Makes it cannot be altered (integrity).
        • Makes it cannot be denied as coming from the machine (non-repudiation).
  • Vote collection
    • Each sealed vote (encrypted and digitally signed) is collected into electronic ballot box.
      • Technically speaking, they are collected in a table in MySQL database.
    • Sealed votes are collected in random order such that it cannot be traced down to the voter.
      • After each vote the table storage is physically reordered according to some random number.

  • Voting closing

    • Administrator closes voting process on the machine by pressing a close voting button on VG/EVM.
    • When closing voting process, VG/EVM:
      • Activates and deactivates buttons.
      • Generates a result file:
        • vtokens.bin containing vtokens generated.
        • result.bin containing voting result.
    • Before administrator close voting process:
      • VG can be used to generate vtoken.
      • VG cannot be used to reset ballot box.
      • EVM can be used to cast votes.
      • EVM cannot be used to view result.
      • EVM cannot be used to reset ballot box.
    • After administrator close voting process, VG:
      • VG cannot be used to generate vtoken.
      • VG can be used to reset ballot box.
      • EVM cannot be used to cast votes.
      • EVM can be used to view result.
      • EVM can be used to reset ballot box.

  • Result management

    • Administrator sends result to election body.


  • See attachments for presentations.


    MongoDB Logo MongoDB