IP Library › Granted Patent US 10,445,965
Granted Patent B2
US 10,445,965 · App. 16/212,187 · Granted Oct 15, 2019

Blockchain-based cryptologic ballot organization

Inventors: Aleksandr Nikolaevich Ivanov (Saint Petersburg, RU); Aleksei Vladimirovich Kazennov (Saint Petersburg, RU); Georgii Valerievich Mavchun (Saint Petersburg, RU); Peter de Rooij (London, GB); John Velissarios (London, GB); Mikhail Rymanov (London, GB)
Assignees: Accenture Global Solutions Limited; DSX Holdings Limited
G07C13/00H04L9/0637H04L9/0643H04L9/3066G06Q2220/00G06Q2230/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,445,965
App. No.
16/212,187
Granted
Oct 15, 2019
Kind
B2
Abstract

A system may facilitate a distributed ledger technology (DLT) record based (for example, blockchain-based) ballot organization. A node configured to support an organizer role may generate a ballot that designates answers, and in some cases, conditions for valid vote-value transfers. The organizer may distribute vote-value to one or more voters. The voters may then commit portions (including null portions) of the received vote value to answers using committed tokens configured to bind the voter to a particular vote-value without divulging the particular vote value while in a cryptographic form.

Claims (74)

1. A cryptographic voting organization method including:

generating a ballot with an answer,

the answer including an answer identifier configured to:

direct reception of a committed token including a committed vote-value transferred from a voter,

the committed token configured to bind the voter to the committed vote-value without revealing the committed vote-value while in an cryptographic form, and

the committed vote-value including a null or at least a portion of a voter vote-value;

generating an organizer token including an organizer vote-value;

establishing, on a ledger, the ballot and the organizer token;

determining a vote-value distribution;

requesting a transaction,

the transaction transferring a voter token to a voter identifier of the voter, and

the voter token conferring the voter vote-value to the voter; and

accounting for the transaction by deducting the voter vote-value from the organizer vote-value.

2. The cryptographic voting organization method of claim 1 ,

where requesting the transaction further includes:

requesting that the transaction send a rest token back to an organizer, and

the rest token including a remainder vote-value corresponding to the organizer vote-value with at least the voter vote-value deducted.

3. The cryptographic voting organization method of claim 1 , where generating the ballot includes generating a ballot allowing non-integer vote-value transfers.

4. The cryptographic voting organization method of claim 1 , where generating the ballot includes designating an allowed range for vote-value transfers for the ballot.

5. The cryptographic voting organization method of claim 1 , where generating the ballot includes designating a public key to serve as the answer identifier.

6. The cryptographic voting organization method of claim 1 , where generating the ballot includes designating a public key to serve as the voter identifier.

7. The cryptographic voting organization method of claim 6 , where a structure for the transaction includes:

the voter token;

an amount field designating the voter vote-value, the amount field encrypted with the public key; and

a blinding field designating a blinding factor used to obfuscate the amount field, the blinding field encrypted with the public key.

8. The cryptographic voting organization method of claim 1 , where:

the ledger includes a blockchain; and

establishing the ballot and the organizer token includes:

causing the ballot to be recorded on the blockchain; and

designating a public key to serve as an organizer identifier.

9. The cryptographic voting organization method of claim 1 , generating a ballot further includes:

designating multiple points on an elliptic curve for generation of token for transferring vote-value, the multiple points including:

an amount point; and

a blinding point.

10. The cryptographic voting organization method of claim 9 , where:

designating an amount point includes:

designating a cryptographic key to apply to a curve generation function for the elliptic curve; and

designating a blinding point includes:

designating a hash function to apply to the amount point to generate the blinding point.

11. A cryptographic voting organization system including:

memory configured to store a ledger; and

ballot organization circuitry in data communication with the memory, the ballot organization circuitry configured to:

generate a ballot with an answer, the answer including an answer identifier configured to:

direct reception of a committed token including a committed vote-value transferred from a voter, the committed token configured to bind the voter to the committed vote-value without revealing the committed vote-value while in a cryptographic form, the committed vote-value including a null or at least a portion of a voter vote-value;

generate an organizer token including an organizer vote-value;

establish, on the ledger, the ballot and the organizer token;

determine a vote-value distribution;

request a transaction transferring a voter token to a voter identifier of the voter, the voter token conferring the voter vote-value to the voter; and

account for the transaction by deducting the voter vote-value from the organizer vote-value.

12. The cryptographic voting organization system of claim 11 , where the ballot organization circuitry is further configured to request the transaction further by requesting that the transaction send a rest token back to an organizer, the rest token including a remainder vote-value corresponding to the organizer vote-value with at least the voter vote-value deducted.

13. The cryptographic voting organization system of claim 11 , where the ballot organization circuitry is further configured to generate the ballot by generating a ballot allowing non-integer vote-value transfers.

14. The cryptographic voting organization system of claim 11 , where the ballot organization circuitry is further configured to generate the ballot by designating an allowed range for vote-value transfers for the ballot.

15. The cryptographic voting organization system of claim 11 , where the ballot organization circuitry is further configured to generate the ballot by designating a public key to serve as the answer identifier.

16. The cryptographic voting organization system of claim 11 , where generating the ballot includes designating a public key to serve as the voter identifier.

17. The cryptographic voting organization system of claim 16 , where the ballot organization circuitry is further configured to generate the ballot by designating a structure for the transaction, the structure including:

the voter token;

an amount field designating the voter vote-value, the amount field encrypted with the public key; and

a blinding field designating a blinding factor used to obfuscate the amount field, the blinding field encrypted with the public key.

18. A product including:

machine-readable media other than a transitory signal; and

instructions stored on the machine-readable media, the instructions configured to, when executed, cause a machine to:

generate a ballot with an answer, the answer including an answer identifier configured to:

direct reception of a committed token including a committed vote-value transferred from a voter, the committed token configured to bind the voter to the committed vote-value without revealing the committed vote-value while in a cryptographic form, the committed vote-value including a null or at least a portion of a voter vote-value;

generate an organizer token including an organizer vote-value;

establish, on a ledger, the ballot and the organizer token;

determine a vote-value distribution;

request a transaction transferring a voter token to a voter identifier of the voter, the voter token conferring the voter vote-value to the voter; and

account for the transaction by deducting the voter vote-value from the organizer vote-value.

19. The product of claim 18 , the instructions are further configured to cause the machine to generate a ballot further by designating multiple points on an elliptic curve for generation of token for transferring vote-value, the multiple points including:

an amount point; and

a blinding point.

20. The product of claim 19 , the instructions are further configured to cause the machine to:

designate an amount point by designating a cryptographic key to apply to a curve generation function for the elliptic curve; and

designate a blinding point by designating a hash function to apply to the amount point to generate the blinding point.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2019
From: IVANOV, ALEKSANDR NIKOLAEVICH; KAZENNOV, ALEKSEI VLADIMIROVICH; MAVCHUN, GEORGII VALERIEVICH; RYMANOV, MIKHAIL
To: DSX HOLDINGS LIMITED
Reel/Frame 049612/0546 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2018
From: ROOIJ, PETER DE; VELISSARIOS, JOHN
To: ACCENTURE GLOBAL SOLUTIONS LIMITED
Reel/Frame 047758/0869 →
Priority Claims (1)
RU 2018103253 · Jan 29, 2018 · national
Continuity (1)
Related Publication 20190236880A1 · Aug 1, 2019