Skip to content

Voting System — Detailed#

flowchart TB
  subgraph Voter
    APP[Voter UI]
  end

  subgraph Edge
    AUTH[Identity / eligibility]
    MFA[MFA / biometric]
    OTP[One-time auth tokens]
  end

  subgraph Booth
    BOOTH[Vote service]
    BALLOT[Ballot encoding]
    BLIND[Blind signatures / homomorphic enc]
    SIGN[Voter receipt / hash]
  end

  subgraph Ledger[Tamper-evident ledger]
    APPEND[(Append-only ledger)]
    MERKLE[Merkle root publish]
    TIME[Trusted timestamping]
    REPL[Multi-org replication]
  end

  subgraph Tally
    AGG([Aggregator])
    DEC[Threshold decryption / mix-net]
    VERIFY[Public verify]
    PUB[Result publication]
  end

  subgraph Audit
    RLA[Risk-limiting audit]
    EXT[External observers]
    APPEAL[Dispute / re-count]
  end

  Voter --> Edge --> Booth --> Ledger
  Ledger --> Tally
  Audit --- Ledger
  Audit --- Tally

    classDef client fill:#dbeafe,stroke:#1e40af,stroke-width:1px,color:#0f172a;
    classDef edge fill:#cffafe,stroke:#0e7490,stroke-width:1px,color:#0f172a;
    classDef service fill:#fef3c7,stroke:#92400e,stroke-width:1px,color:#0f172a;
    classDef datastore fill:#fee2e2,stroke:#991b1b,stroke-width:1px,color:#0f172a;
    classDef cache fill:#fed7aa,stroke:#9a3412,stroke-width:1px,color:#0f172a;
    classDef queue fill:#ede9fe,stroke:#5b21b6,stroke-width:1px,color:#0f172a;
    classDef compute fill:#d1fae5,stroke:#065f46,stroke-width:1px,color:#0f172a;
    classDef storage fill:#e5e7eb,stroke:#374151,stroke-width:1px,color:#0f172a;
    classDef external fill:#fce7f3,stroke:#9d174d,stroke-width:1px,color:#0f172a;
    classDef obs fill:#f3e8ff,stroke:#6b21a8,stroke-width:1px,color:#0f172a;
    class APP,AUTH,MFA,OTP,BOOTH,BALLOT,BLIND,SIGN,MERKLE,TIME,REPL,DEC,VERIFY,PUB,RLA,EXT,APPEAL service;
    class APPEND datastore;
    class AGG compute;

Key properties#

  • Eligibility: only registered voters can vote, once.
  • Secrecy: ballot cannot be linked to voter (cryptography or air-gap).
  • Verifiability: voters confirm their vote is counted (receipt) without revealing it.
  • Auditability: independent parties can recount.

Designs in practice#

  • Paper ballots + scanners + RLA remains the gold standard.
  • E-voting research: mix-nets, homomorphic tallying (Helios), end-to-end verifiable schemes.

Glossary & fundamentals#

Concepts referenced in this design. Each row links to its canonical page; the tag column shows whether it is a high-level (HLD) or low-level (LLD) concept.

Tag Concept What it is Page
HLD Leader/follower replication sync/semi-sync/async replication, failover replication-leader-follower
HLD Search internals inverted index, BM25, embeddings, ANN search-internals