IP Library Granted Patent US 11,151,838
Granted Patent B2
US 11,151,838 · App. 16/566,229 · Granted Oct 19, 2021

Blockchain-based smart contract instant lottery ticket

Inventors: Gianluca Ragnoni (Rome, IT); Fabrizio Battini (Rome, IT); Emanuele Martire (Rome, IT); Thomas K. Oram (Hudson, MA)
Assignee: IGT GLOBAL SOLUTIONS CORPORATION
G07F17/3241G07F17/329H04L9/0637H04L9/0643H04L2209/38
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 11,151,838
App. No.
16/566,229
Granted
Oct 19, 2021
Kind
B2
Abstract

A ticket issuer server provides a digital instant lottery ticket, such as a smart contract instant lottery ticket (SILT) on a digital ledger, such as a blockchain infrastructure that supports execution of smart contracts. The ticket issuer server obtains an encryption key from a key issuer, encrypts a prize code with the encryption key to provide an encrypted prize code, creates an object, such as a smart contract representing the SILT, wherein the smart contract includes a ticket owner address attribute, a ticket issuer address attribute, a key issuer address attribute and the encrypted prize code, and stores the object on the digital ledger.

Claims (58)

1. A ticket issuer server for providing a digital instant lottery ticket on a digital ledger, the ticket issuer server comprising a processor circuit and a memory coupled to the processor circuit, wherein the memory comprises computer program instructions that, when executed by the processor circuit, cause the ticket issuer server to perform operations comprising:

obtaining an encryption key from a key issuer;

encrypting a prize code with the encryption key to provide an encrypted prize code;

creating an object representing the digital instant lottery ticket; and

storing the object in the digital ledger,

wherein the digital ledger comprises a blockchain infrastructure that supports execution of smart contracts, wherein the digital instant lottery ticket comprises a smart contract instant lottery ticket (SILT), and wherein the object comprises a smart contract, and wherein storing the object in the digital ledger comprises publishing the smart contract to the blockchain infrastructure,

wherein the object includes a ticket owner address attribute, a ticket issuer address attribute, a key issuer address attribute and the encrypted prize code,

wherein the smart contract comprises a constructor function that sets values of the ticket owner address, ticket issuer address, key issuer address and encrypted prize code attributes, and

wherein the constructor function sets values of a state attribute and a ticket cost attribute, and wherein the constructor function sets the value of the state attribute to a SELLABLE state indicating that the SILT can be sold.

2. The ticket issuer server of claim 1 , wherein the operations further comprise:

generating a hash of the encryption key;

encrypting the encryption key to provide an encrypted encryption key; and

storing the hash of the encryption key and the encrypted encryption key in the smart contract.

3. The ticket issuer server of claim 2 , wherein the encryption key comprises a public key of the key issuer (PubKeyKI) that is associated with a private key of the key issuer (PrivKeyKI), and wherein encrypting the encryption key comprises encrypting the encryption key using a public key of the ticket issuer (PubKeyTI) that is associated with a private key of the ticket issuer (PrivKeyTI).

4. The ticket issuer server of claim 1 , wherein the smart contract comprises an initiateSale function that is callable only by the ticket owner address, wherein the initiateSale function sets, as an owner candidate address, a value that is passed as an argument to the initiateSale function and sets the value of the state attribute to a SELLING state indicating that the SILT is in the process of being sold.

5. The ticket issuer server of claim 4 , wherein the smart contract comprises a confirmSale function that is callable only by the owner candidate address, wherein the confirmSale function transfers value equal to the ticket cost attribute to the ticket owner address, sets the owner attribute to the owner candidate address, and sets the value of the state attribute to the SELLABLE state indicating that the SILT can be sold.

6. The ticket issuer server of claim 5 , wherein the smart contract comprises an initiateScratch function that is callable only by the ticket owner address using as an argument a public key of the key issuer (PubKeyKI) that is associated with a private key of the key issuer (PrivKeyKI), that was used to encrypt the prize code, and wherein the initiateScratch function sets the state attribute to a SCRATCHABLE state indicating that the SILT is ready to be scratched.

7. The ticket issuer server of claim 6 , wherein the prize code comprises a first prize code, wherein the smart contract comprises a second prize code.

8. The ticket issuer server of claim 6 , wherein the smart contract comprises a confirmScratch function that is callable only by the key issuer address, wherein the confirmScratch function stores a decrypted prize code in the smart contract and sets the state attribute to a SCRATCHED state indicating that the SILT has been scratched.

9. The ticket issuer server of claim 8 , wherein the smart contract comprises an initiateRedeem function that is callable only by the ticket owner address and that sets the state attribute to a fifth state indicating that the SILT is being redeemed.

10. The ticket issuer server of claim 9 , wherein the smart contract comprises a confirmRedeem function that is callable only by the ticket issuer address, wherein the confirmRedeem function transfers a value specified by the prize code to the owner address and sets the state attribute to a sixth state indicating that the SILT has been redeemed.

11. The ticket issuer server of claim 10 , wherein the value specified by the prize code is transferred to the owner from an address associated with a designated award payer, wherein the address of the designated award payer is stored in the smart contract.

12. The ticket issuer server of claim 11 , wherein the redeem function further sets the owner address attribute to the ticket issuer address.

13. The ticket issuer server of claim 6 , wherein the smart contract comprises a confirmScratch function that is callable only by the key issuer address, wherein the confirmScratch function stores a copy of the decrypted prize code in the smart contract and sets the state attribute to a SCRATCHED state indicating that the SILT has been scratched.

14. The ticket issuer server of claim 1 , wherein the smart contract comprises a plurality of prize codes, wherein each prize code can be revealed separately.

15. The ticket issuer server of claim 1 , wherein the digital ledger comprises a private database that is managed by the ticket issuer server.

16. A ticket issuer server for providing a digital instant lottery ticket on a digital ledger, the ticket issuer server comprising a processor circuit and a memory coupled to the processor circuit, wherein the memory comprises computer program instructions that, when executed by the processor circuit, cause the ticket issuer server to perform operations comprising:

obtaining an encryption key from a key issuer;

encrypting a prize code with the encryption key to provide an encrypted prize code;

creating an object representing the digital instant lottery ticket; and

storing the object in the digital ledger,

wherein the digital ledger comprises a blockchain infrastructure that supports execution of smart contracts, wherein the digital instant lottery ticket comprises a smart contract instant lottery ticket (SILT), and wherein the object comprises a smart contract, and wherein storing the object in the digital ledger comprises publishing the smart contract to the blockchain infrastructure,

wherein the object includes a ticket owner address attribute, a ticket issuer address attribute, a key issuer address attribute and the encrypted prize code,

wherein the operations further comprise:

generating a hash of the encryption key;

encrypting the encryption key to provide an encrypted encryption key; and

storing the hash of the encryption key and the encrypted encryption key in the smart contract,

wherein the encryption key comprises a public key of the key issuer (PubKeyKI) that is associated with a private key of the key issuer (PrivKeyKI), and wherein encrypting the encryption key comprises encrypting the encryption key using a public key of the ticket issuer (PubKeyTI) that is associated with a private key of the ticket issuer (PrivKeyTI), wherein the smart contract has a state attribute, and wherein the state attribute of the smart contract is set to a SELLABLE state indicating that the SILT can be sold upon creation of the smart contract.

17. The ticket issuer server of claim 16 , wherein the operations further comprise:

receiving a public key of a customer (PubKeyC);

decrypting the public key PubKeyKI of the key issuer;

encrypting the encryption key using the public key PubKeyC of the customer to provide a new encrypted encryption key;

storing the new encrypted encryption key in the smart contract; and

setting the state attribute of the smart contract to a SELLING state indicating that the SILT is in the process of being sold.

18. The ticket issuer server of claim 16 , wherein the smart contract comprises a constructor function that sets values of the ticket owner address, ticket issuer address, key issuer address and encrypted prize code attributes.

19. The ticket issuer server of claim 18 , wherein the constructor function sets values of a state attribute and a ticket cost attribute, and wherein the constructor function sets the value of the state attribute to a SELLABLE state indicating that the SILT can be sold.

20. The ticket issuer server of claim 16 , wherein the smart contract comprises a plurality of prize codes, wherein each prize code can be revealed separately.

21. The ticket issuer server of claim 16 , wherein the digital ledger comprises a private database that is managed by the ticket issuer server.

22. The ticket issuer server of claim 16 , wherein the smart contract comprises an initiateSale function that is callable only by the ticket owner address, wherein the initiateSale function sets, as an owner candidate address, a value that is passed as an argument to the initiateSale function and sets the value of the state attribute to a SELLING state indicating that the SILT is in the process of being sold.

23. The ticket issuer server of claim 22 , wherein the smart contract comprises a confirmSale function that is callable only by the owner candidate address, wherein the confirmSale function transfers value equal to the ticket cost attribute to the ticket owner address, sets the owner attribute to the owner candidate address, and sets the value of the state attribute to the SELLABLE state indicating that the SILT can be sold.

24. The ticket issuer server of claim 23 , wherein the smart contract comprises an initiateScratch function that is callable only by the ticket owner address using as an argument a public key of the key issuer (PubKeyKI) that is associated with a private key of the key issuer (PrivKeyKI), that was used to encrypt the prize code, and wherein the initiateScratch function sets the state attribute to a SCRATCHABLE state indicating that the SILT is ready to be scratched.

25. The ticket issuer server of claim 24 , wherein the prize code comprises a first prize code, wherein the smart contract comprises a second prize code.

26. The ticket issuer server of claim 24 , wherein the smart contract comprises a confirmScratch function that is callable only by the key issuer address, wherein the confirmScratch function stores a decrypted prize code in the smart contract and sets the state attribute to a SCRATCHED state indicating that the SILT has been scratched.

27. The ticket issuer server of claim 26 , wherein the smart contract comprises an initiateRedeem function that is callable only by the ticket owner address and that sets the state attribute to a fifth state indicating that the SILT is being redeemed.

28. The ticket issuer server of claim 27 , wherein the smart contract comprises a confirmRedeem function that is callable only by the ticket issuer address, wherein the confirmRedeem function transfers a value specified by the prize code to the owner address and sets the state attribute to a sixth state indicating that the SILT has been redeemed.

29. The ticket issuer server of claim 28 , wherein the value specified by the prize code is transferred to the owner from an address associated with a designated award payer, wherein the address of the designated award payer is stored in the smart contract.

30. The ticket issuer server of claim 29 , wherein the redeem function further sets the owner address attribute to the ticket issuer address.

31. The ticket issuer server of claim 24 , wherein the smart contract comprises a confirmScratch function that is callable only by the key issuer address, wherein the confirmScratch function stores a copy of the decrypted prize code in the smart contract and sets the state attribute to a SCRATCHED state indicating that the SILT has been scratched.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2019
From: RAGNONI, GIANLUCA; BATTINI, FABRIZIO; MARTIRE, EMANUELE; ORAM, THOMAS K.
To: IGT GLOBAL SOLUTIONS CORPORATION
Reel/Frame 050329/0221 →
Continuity (1)
Related Publication 20210074120A1 · Mar 11, 2021
Cited By (3)
US 12,377,351 US 12,544,676 US 12,673,267