Browser-side biometrics
Face descriptors are computed in your browser using face-api.js. We never see, store, or transmit a raw image of your face.
Your vote is your secret. The system is engineered so your employer, your landlord, or local authorities can never link your identity to the candidate you chose.
Face descriptors are computed in your browser using face-api.js. We never see, store, or transmit a raw image of your face.
Your 12-digit Aadhaar is SHA-256 hashed before leaving your device. Only the hash is stored — the raw number is unrecoverable.
A unique constraint on the Aadhaar hash makes a duplicate vote technically impossible, even if the server is compromised.
Before recording a ballot we compare your face descriptor to every existing one. A match under threshold blocks voting with a different ID.
The votes table is invisible to the public anon role. Only the trusted server can write to it. Browsers can never insert directly.
Public results expose only counts per candidate and per origin-state — never individual voter records.