End-To-End Verifiable Proof of Votes Cast in Elections
Abstract
Systems and methods for providing an end-to-end verifiable proof of votes cast in elections are provided. An example method includes generating an authentication address associated with a voting ballot and generating a cast permission address associated with a cast permission record; storing the authentication address, the voting ballot, the cast permission address, and the cast permission record to a secure data storage; receiving a user input and providing a user interface featuring the voting ballot and enabling the voter to submit a cast vote record (CVR); generating a CVR address, generating a receipt for voting and a receipt address; generating a result record including a final result associated with the CVR and a CVR result address associated with the result record; and storing the receipt address, the receipt for voting, the CVR address, the CVR, the CVR result address, and the result record to the secure data storage.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A system for providing an end-to-end verifiable proof of votes cast in elections, the system comprising:
a voting device configured to:
receive a user input including a token generated by a security device;
provide, based on the token, a user interface featuring a voting ballot and enabling a voter to submit a cast vote record (CVR);
generate, based on a cast permission address, a CVR address associated with the CVR;
generate a receipt for voting and a receipt address associated with the receipt for voting, the receipt address being generated based on the CVR address;
generate a result record including a final result associated with the CVR and a CVR result address associated with the result record, the CVR result address being generated based on the receipt address; and
store the receipt address, the receipt for voting, the CVR address, the CVR, the CVR result address, and the result record to a secure data storage; and
the secure data storage in communication with the voting device, the secure data storage being configured to store the receipt address, the receipt for voting, the CVR address, the CVR, the CVR result address, and the result record.
2 . The system of claim 1 , further comprising:
the security device configured to:
generate an authentication address associated with the voting ballot;
generate the cast permission address associated with a cast permission record indicative of the voter being eligible to cast a vote on the voting ballot; and
store the authentication address, the voting ballot, the cast permission address, and the cast permission record to a secure data storage.
3 . The system of claim 2 , wherein the secure data storage is configured to store:
the voting ballot at the authentication address; the cast permission record at the cast permission address; the CVR at the CVR address; the receipt for voting at the receipt address; and the result record at the CVR result address.
4 . The system of claim 2 , wherein at least one of the authentication address, the cast permission address, the CVR address, the receipt address, and the CVR result address include a public key of an asymmetric cryptographic scheme.
5 . The system of claim 2 , wherein the security device is configured to generate the authentication address and the cast permission address based on a public key of a master asymmetric cryptographic scheme.
6 . The system of claim 5 , wherein the security device is configured to:
receive the public key and a private key of the master asymmetric cryptographic scheme; delete the private key; and store the public key.
7 . The system of claim 2 , wherein the voting device is configured to, prior to providing the user interface:
generate, based partially on the token, an authentication request including the authentication address; and send the authentication request to the secure data storage, wherein the secure data storage is configured to send, to the voting device, the voting ballot corresponding to the authentication address.
8 . The system of claim 2 , wherein the voting device is configured to:
receive a user defined code; and generate, based on the user defined code and the CVR, a hash code of the CVR and a truncated version of the hash code; and wherein the receipt for voting includes the receipt address, the user defined code, the hash code of the CVR, and the truncated version of the hash code.
9 . The system of claim 8 , wherein the security device is configured to:
receive the CVR and the receipt for voting; generate, based on the CVR and the user defined code in the receipt for voting, a further hash code; and compare the further hash code to the hash code in the receipt for voting to verify the CVR.
10 . The system of claim 8 , wherein the voting device is configured to:
display the hash code while the voter is casting the vote; and change the hash code in real time in response to an indication that the voter has altered one of a selection in the CVR and the user defined code.
11 . The system of claim 7 , wherein the token includes a quick response code.
12 . A method for providing an end-to-end verifiable proof of votes cast in elections, the method comprising:
receiving, by a voting device, a user input including a token generated by a security device; providing, by the voting device and based on the token, a user interface featuring a voting ballot and enabling a voter to submit a cast vote record (CVR); generating, by the voting device and based on a cast permission address, a CVR address associated with the CVR; generating, by the voting device, a receipt for voting and a receipt address associated with the receipt for voting, the receipt address being generated based on the CVR address; generating, by the voting device, a result record including a final result associated with the CVR and a CVR result address associated with the result record, the CVR result address being generated based on the receipt address; and storing, by the voting device, the receipt address, the receipt for voting, the CVR address, the CVR, the CVR result address, and the result record to a secure data storage.
13 . The method of claim 12 , further comprising:
generating, by the security device, an authentication address associated with the voting ballot; generating, by the security device, the cast permission address associated with a cast permission record indicative of the voter being eligible to cast a vote on the voting ballot; storing, by the security device, the authentication address, the voting ballot, the cast permission address, and the cast permission record to the secure data storage.
14 . The method of claim 13 , wherein the secure data storage is configured to store:
the voting ballot at the authentication address; the cast permission record at the cast permission address; the CVR at the CVR address; the receipt for voting at the receipt address; and the result record at the CVR result address.
15 . The method of claim 13 , wherein at least one of the authentication address, the cast permission address, the CVR address, the receipt address, and the CVR result address include a public key of an asymmetric cryptographic scheme.
16 . The method of claim 13 , wherein the security device is configured to:
generate the authentication address and the cast permission address based on a public key of a master asymmetric cryptographic scheme; receive the public key and a private key of the master asymmetric cryptographic scheme; delete the private key; and store the public key.
17 . The method of claim 13 , further comprising, prior to providing the user interface:
generating, by the voting device and based partially on the token, an authentication request including the authentication address; and sending, by the voting device, the authentication request to the secure data storage, wherein the secure data storage is configured to send, to the voting device, the voting ballot corresponding to the authentication address.
18 . The method of claim 13 , further comprising:
receiving, by the voting device, a user defined code; and generating, by the voting device and based on the user defined code and the CVR, a hash code of the CVR and a truncated version of the hash code; and wherein the receipt for voting includes the receipt address, the user defined code, the hash code of the CVR, and the truncated version of the hash code.
19 . The method of claim 18 , wherein the security device is configured to:
receive the CVR and the receipt for voting; generate, based on the CVR and the user defined code in the receipt for voting, a further hash code; and compare the further hash code to the hash code in the receipt for voting to verify the CVR.
20 . A system for providing an end-to-end verifiable proof of votes cast in elections, the system comprising:
a voting device configured to:
receive a user input including a token generated by a security device;
provide, based on the token, a user interface featuring a voting ballot and enabling a voter to submit a cast vote record (CVR);
generate, based on a cast permission address, a CVR address associated with the CVR;
generate a receipt for voting and a receipt address associated with the receipt for voting, the receipt address being generated based on the CVR address;
generate a result record including a final result associated with the CVR and a CVR result address associated with the result record, the CVR result address being generated based on the receipt address; and
store the receipt address, the receipt for voting, the CVR address, the CVR, the CVR result address, and the result record to a secure data storage;
the secure data storage in communication with the voting device, the secure data storage being configured to store the receipt address, the receipt for voting, the CVR address, the CVR, the CVR result address, and the result record; and the security device configured to:
generate an authentication address associated with the voting ballot;
generate the cast permission address associated with a cast permission record indicative of the voter being eligible to cast a vote on the voting ballot; and
store the authentication address, the voting ballot, the cast permission address, and the cast permission record to a secure data storage.Join the waitlist — get patent alerts
Track US2023031316A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.