Can cryptography help create tamper proof voting systems? After hearing about what happened with the election in Kenya and the related discussion about a “tamper proof voting system”, I was wondering how the use of cryptography could be used to make a tamper proof voting system?

I have had a basic look at zero knowledge proofs, but I do not know how these and other protocols could be used to achieve a tamper proof voting system – hence the question.
Cryptography allows voters to verify that their ballots are cast as intended, recorded as cast and counted as recorded. This is done via a combination of primitives with the most important ones being zero knowledge proofs. Moreover cryptography allows for voter anonymity by using primitives such as mixnets, blind signatures combined with homomorphic cryptosystems for vote secrecy.

The field of cryptographically verifiable elections has been researched for almost 35 years and the literature is huge. Many systems have been proposed with an emphasis on integrity achieved through end-to-end (E2E) verifiability. The theory is sound, but I guess implementation and security concerns among others do not allow for wide scale adoption. 

I recommend this talk by Ben Adida to get you started.