IP Library Granted Patent US 11,501,295
Granted Patent B2
US 11,501,295 · App. 16/779,239 · Granted Nov 15, 2022

Object distribution processing

Inventor: Guojun Ye (Hangzhou, CN)
Assignee: Advanced New Technologies Co., Ltd.
G06Q20/389G06Q20/3825G06Q20/3829G06Q20/4014G06Q30/0609H04L9/0637H04L9/3073H04L63/123G06F8/31G06Q2220/00H04L9/50
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,501,295
App. No.
16/779,239
Granted
Nov 15, 2022
Kind
B2
Abstract

The present disclosure provides an object distribution processing method, device, and system. The object distribution processing method includes: receiving, by an object distribution server, content of an object distribution transaction from a blockchain node, where the content of an object distribution transaction includes a transaction hash specific to the object information to be distributed; after the object distribution server reaches a distribution start time, receiving object distribution requests from a plurality of clients; determining a corresponding award winner from a plurality of object distribution requests; and sending an object distribution message with the hash value to the award winner. With this method, the tamper-resistant characteristic of transaction content in a blockchain is used, and a proof for a transaction hash value specific to initial object information is provided for a user, thereby improving fairness of an object distribution service.

Claims (89)

1. A computer-implemented method for a distribution process, comprising:

obtaining, by a first object distribution server of a cluster of one or more object distribution servers, a distributed AtomicInteger that is distributed between the first object distribution server and a second object distribution server of the cluster of one or more object distribution servers;

obtaining, by the first object distribution server, content of an object distribution transaction from a blockchain node in a blockchain network, wherein the content of the object distribution transaction is stored in the blockchain network and comprises a first transaction hash value specific to object information of a plurality of objects to be distributed, an object information signature generated using a private cryptographic key that is paired with a public cryptographic key, and an object distribution rule, wherein the object distribution rule specifies a distribution start time and an object distribution quantity;

upon reaching the distribution start time, receiving, by the first object distribution server, one or more object distribution requests from one or more clients, wherein each of the one or more object distribution requests comprises a client identifier;

adjusting, by the first object distribution server, the distributed AtomicInteger based on the one or more object distribution requests to count the one or more object distribution requests;

determining, by the first object distribution server, one or more timestamps corresponding to a receipt of each of the one or more object distribution requests;

determining, by the first object distribution server, an order of the one or more object distribution requests comprising sorting the one or more object distribution requests based on the one or more timestamps;

determining, by the first object distribution server, one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity, wherein each of the one or more object distribution messages comprises:

a client identifier,

the public cryptographic key, and

the first transaction hash value; and

sending, by the first object distribution server, each of the one or more object distribution messages to a client identified by the corresponding client identifier in each object distribution message, wherein the first transaction hash value and the public cryptographic key stored in each of the one or more object distribution messages enables the client identified by the corresponding client identifier to verify the object information of the plurality of objects using the public cryptographic key to decrypt the object information signature.

2. The computer-implemented method of claim 1 , wherein the content of the object distribution transaction comprises the distributed Atomiclnteger, and

determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

sorting the one or more object distribution requests by using the distributed Atomiclnteger and based on the order of the one or more object distribution requests; and

determining the one or more object distribution messages based on the sorted one or more object distribution requests and the object distribution quantity,

wherein the distributed Atomiclnteger is a class within a coding language.

3. The computer-implemented method of claim 1 , wherein the object distribution rule specifies an object acquisition quantity limit, wherein the object acquisition quantity limit is used to indicate a limit on a quantity of objects that can be obtained by each client, and

wherein determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

determining the one or more object distribution messages based on the order of the one or more object distribution requests, the object distribution quantity, and the object acquisition quantity limit.

4. The computer-implemented method of claim 1 , wherein the content of the object distribution transaction comprises the public cryptographic key paired with the private cryptographic key, wherein the first transaction hash value is a hash value specific to the object information of the plurality of objects to be distributed and the object information signature, wherein the object information signature is obtained by encrypting the object information by using the private cryptographic key that is paired with the public cryptographic key, and wherein

the object information comprises the public cryptographic key used by the client identified by the corresponding client identifier to verify the object information.

5. The computer-implemented method of claim 1 , wherein obtaining the content of the object distribution transaction from the blockchain node comprises:

obtaining a second transaction hash value from the blockchain node, wherein the second transaction hash value is a hash value specific to the content of the object distribution transaction; and

obtaining the content of the object distribution transaction from the blockchain node based on the second transaction hash value.

6. The computer-implemented method of claim 1 , before determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity, the method further comprises:

performing qualification filtering on the one or more object distribution requests, and determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

determining the one or more object distribution messages based on the order of the one or more object distribution requests on which the qualification filtering is performed and the object distribution quantity.

7. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations for object distribution, wherein the operations comprise:

obtaining, by a first object distribution server of a cluster of one or more object distribution servers, a distributed AtomicInteger that is distributed between the first object distribution server and a second object distribution server of the cluster of one or more object distribution servers;

obtaining, by the first object distribution server, content of an object distribution transaction from a blockchain node in a blockchain network, wherein the content of the object distribution transaction is stored in the blockchain network and comprises a first transaction hash value specific to object information of a plurality of objects to be distributed, an object information signature generated using a private cryptographic key that is paired with a public cryptographic key, and an object distribution rule, wherein the object distribution rule specifies a distribution start time and an object distribution quantity;

upon reaching the distribution start time, receiving, by the first object distribution server, one or more object distribution requests from one or more clients, wherein each of the one or more object distribution requests comprises a client identifier;

adjusting, by the first object distribution server, the distributed AtomicInteger based on the one or more object distribution requests to count the one or more object distribution requests;

determining, by the first object distribution server, one or more timestamps corresponding to a receipt of each of the one or more object distribution requests;

determining, by the first object distribution server, an order of the one or more object distribution requests comprising sorting the one or more object distribution requests based on the one or more timestamps;

determining, by the first object distribution server, one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity, wherein each of the one or more object distribution messages comprises:

a client identifier,

the public cryptographic key, and

the first transaction hash value; and

sending, by the first object distribution server, each of the one or more object distribution messages to a client identified by the corresponding client identifier in each object distribution message, wherein the first transaction hash value and the public cryptographic key stored in each of the one or more object distribution messages enables the client identified by the corresponding client identifier to verify the object information of the plurality of objects using the public cryptographic key to decrypt the object information signature.

8. The computer-implemented system of claim 7 , wherein the content of the object distribution transaction comprises the distributed Atomiclnteger, and

determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

sorting the one or more object distribution requests by using the distributed Atomiclnteger and based on the order of the one or more object distribution requests; and

determining the one or more object distribution messages based on the sorted one or more object distribution requests and the object distribution quantity,

wherein the distributed Atomiclnteger is a class within a coding language.

9. The computer-implemented system of claim 7 , wherein the object distribution rule specifies an object acquisition quantity limit, wherein the object acquisition quantity limit is used to indicate a limit on a quantity of objects that can be obtained by each client, and

wherein determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

determining the one or more object distribution messages based on the order of the one or more object distribution requests, the object distribution quantity, and the object acquisition quantity limit.

10. The computer-implemented system of claim 7 , wherein the content of the object distribution transaction comprises the public cryptographic key paired with the private cryptographic key, wherein the first transaction hash value is a hash value specific to the object information of the plurality of objects to be distributed and the object information signature, wherein the object information signature is obtained by encrypting the object information by using the private cryptographic key that is paired with the public cryptographic key, and wherein

the object information comprises the public cryptographic key used by the client identified by the corresponding client identifier to verify the object information.

11. The computer-implemented system of claim 7 , wherein obtaining the content of the object distribution transaction from the blockchain node comprises:

obtaining a second transaction hash value from the blockchain node, wherein the second transaction hash value is a hash value specific to the content of the object distribution transaction; and

obtaining the content of the object distribution transaction from the blockchain node based on the second transaction hash value.

12. The computer-implemented system of claim 7 , before determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity, the operations further comprising:

performing qualification filtering on the one or more object distribution requests, and

determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

determining the one or more object distribution messages based on the order of the one or more object distribution requests on which the qualification filtering is performed and the object distribution quantity.

13. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations for object distribution, comprising:

obtaining, by a first object distribution server of a cluster of one or more object distribution servers, a distributed AtomicInteger that is distributed between the first object distribution server and a second object distribution server of the cluster of one or more object distribution servers;

obtaining, by the first object distribution server, content of an object distribution transaction from a blockchain node in a blockchain network, wherein the content of the object distribution transaction is stored in the blockchain network and comprises a first transaction hash value specific to object information of a plurality of objects to be distributed, an object information signature generated using a private cryptographic key that is paired with a public cryptographic key, and an object distribution rule, wherein the object distribution rule specifies a distribution start time and an object distribution quantity;

upon reaching the distribution start time, receiving, by the first object distribution server, one or more object distribution requests from one or more clients, wherein each of the one or more object distribution requests comprises a client identifier;

adjusting, by the first object distribution server, the distributed AtomicInteger based on the one or more object distribution requests to count the one or more object distribution requests;

determining, by the first object distribution server, one or more timestamps corresponding to a receipt of each of the one or more object distribution requests;

determining, by the first object distribution server, an order of the one or more object distribution requests comprising sorting the one or more object distribution requests based on the one or more timestamps;

determining, by the first object distribution server, one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity, wherein each of the one or more object distribution messages comprises:

a client identifier,

the public cryptographic key, and

the first transaction hash value; and

sending, by the first object distribution server, each of the one or more object distribution messages to a client identified by the corresponding client identifier in each object distribution message, wherein the first transaction hash value and the public cryptographic key stored in each of the one or more object distribution messages enables the client identified by the corresponding client identifier to verify the object information of the plurality of objects using the public cryptographic key to decrypt the object information signature.

14. The non-transitory, computer-readable medium of claim 13 , wherein the content of the object distribution transaction comprises the distributed Atomiclnteger, and

determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

sorting the one or more object distribution requests by using the distributed Atomiclnteger and based on the order of the one or more object distribution requests; and

determining the one or more object distribution messages based on the sorted one or more object distribution requests and the object distribution quantity,

wherein the distributed Atomiclnteger is a class within a coding language.

15. The non-transitory, computer-readable medium of claim 13 , wherein the object distribution rule specifies an object acquisition quantity limit, wherein the object acquisition quantity limit is used to indicate a limit on a quantity of objects that can be obtained by each client, and

wherein determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

determining the one or more object distribution messages based on the order of the one or more object distribution requests, the object distribution quantity, and the object acquisition quantity limit.

16. The non-transitory, computer-readable medium of claim 13 , wherein the content of the object distribution transaction comprises the public cryptographic key paired with the private cryptographic key, wherein the first transaction hash value is a hash value specific to the object information of the plurality of objects to be distributed and the object information signature, wherein the object information signature is obtained by encrypting the object information by using the private cryptographic key that is paired with the public cryptographic key, and wherein

the object information comprises the public cryptographic key used by the client identified by the corresponding client identifier to verify the object information.

17. The non-transitory, computer-readable medium of claim 13 , wherein obtaining the content of the object distribution transaction from the blockchain node comprises:

obtaining a second transaction hash value from the blockchain node, wherein the second transaction hash value is a hash value specific to the content of the object distribution transaction; and

obtaining the content of the object distribution transaction from the blockchain node based on the second transaction hash value.

18. The non-transitory, computer-readable medium of claim 13 , before determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity, the operations further comprising:

performing qualification filtering on the one or more object distribution requests, and

determining the one or more object distribution messages based on the order of the one or more object distribution requests and the object distribution quantity comprises:

determining the one or more object distribution messages based on the order of the one or more object distribution requests on which the qualification filtering is performed and the object distribution quantity.

19. The non-transitory, computer-readable medium of claim 13 , wherein an object provider device or the first object distribution server is the blockchain node in the blockchain network.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2021
From: YE, GUOJUN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 055503/0307 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053754/0625 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053743/0464 →