Process Flow
How It Works: Vote Journey
Step 1: Vote Casting
Vote Casting
Voter casts ballot through secure web interface
Vote encrypted with AES-256-GCM encryption
Encrypted vote stored in secure database
Blockchain: Nothing stored yet
Step 2: Hash Generation
Hash Generation
System generates SHA-256 hash of encrypted vote
Hash acts as unique "fingerprint" of the vote
Any alteration to vote changes the hash
Example hash: 0x3a7b4c2d...
Step 3: Blockchain Anchoring
Blockchain Anchoring
Vote hash submitted to Ethereum smart contract
zkSNARK proof commitment also submitted
Transaction permanently recorded on blockchain
Time: Typically 12-15 seconds on Polygon
Step 4: Voter Receipt
Voter Receipt
Voter receives cryptographic receipt
Receipt contains blockchain transaction ID
Voter can independently verify vote was recorded
Verification: Check public blockchain explorer
Step 5: Public Verification
Public Verification
Anyone can query blockchain for election data
Verify total number of votes matches database
Check all votes have valid zkSNARK proofs
No trust required: Math proves integrity