IP Library Granted Patent US 11,122,110
Granted Patent B2
US 11,122,110 · App. 16/887,578 · Granted Sep 14, 2021

Blockchain-based file processing method, apparatus, and device, and storage medium

Inventor: Dan Liu (Hangzhou, CN)
Assignee: ADVANCED NEW TECHNOLOGIES CO., LTD.
H04L67/06G06F16/1744H04L9/0637H04L67/1036H04L67/1097H04L2209/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,122,110
App. No.
16/887,578
Granted
Sep 14, 2021
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for blockchain-based file processing are provided. One of the methods includes: receiving, from a client, a request for downloading a target file stored in a blockchain, the request comprising a network address of the client and a file address of the target file; identifying, based on the network address information of the client, a target blockchain node associated with the blockchain for downloading the target file, the target blockchain node having a network address that is the closest to the network address of the client among a set of candidate blockchain nodes; downloading the target file from the determined target blockchain node based on the file address information; and returning the downloaded target file to the client.

Claims (77)

1. A method for blockchain-based file processing, comprising:

receiving, from a client, a request for downloading a target file stored in a blockchain, the request comprising a network address of the client and a file address of the target file, wherein the blockchain comprises a plurality of nodes and each node having stored the target file and network addresses of one or more other nodes of the plurality of nodes;

determining, based on the network address information of the client, a set of candidate blockchain nodes in the blockchain from which the client has downloaded one or more files a number of times greater than a predetermined threshold number;

determining a target blockchain node having a network address that is the closest to the network address of the client among the set of candidate blockchain nodes;

downloading the target file from the determined target blockchain node based on the file address information; and

returning the downloaded target file to the client.

2. The method of claim 1 , wherein the determining the target blockchain node comprises:

identifying a first blockchain node having a network address that is the closest to the network address of the client among the set of candidate blockchain nodes;

determining whether a load of the target blockchain node is less than a threshold;

if the load is less than the threshold, using the first blockchain node as the target blockchain node; and

if the load is greater than or equal to the threshold, determining the target blockchain node through load balancing based on the network address information.

3. The method of claim 1 , wherein the downloading the target file from the determined target blockchain node based on the file address information comprises:

forwarding the request for downloading the target file to the determined target blockchain node; and

extracting the file address of the target file from the request for downloading the target file.

4. The method of claim 1 , further comprising:

performing a hash operation on the target file to obtain a hash value of the target file; and

generating the file address of the target file based on the hash value and a predetermined character string.

5. The method of claim 1 , further comprising:

receiving a request for uploading the target file to the blockchain; and

broadcasting the target file to a plurality of blockchain nodes associated with the blockchain for storing based on consensus processing.

6. The method of claim 1 , wherein the returning the downloaded target file to the client comprises:

extracting identification information of the client from the request for downloading the target file;

determining, based on the extracted identification information, that the client is a mobile client;

compressing the target file; and

returning the compressed target file to the client.

7. A system for blockchain-based file processing, comprising a processor and a non-transitory computer-readable storage medium storing instructions executable by the processor to cause the system to perform operations comprising:

receiving, from a client, a request for downloading a target file stored in a blockchain, the request comprising a network address of the client and a file address of the target file, wherein the blockchain comprises a plurality of nodes and each node having stored the target file and network addresses of one or more other nodes of the plurality of nodes;

determining, based on the network address information of the client, a set of candidate blockchain nodes in the blockchain from which the client has downloaded one or more files a number of times greater than a predetermined threshold number;

determining a target blockchain node having a network address that is the closest to the network address of the client among the set of candidate blockchain nodes;

downloading the target file from the determined target blockchain node based on the file address information; and

returning the downloaded target file to the client.

8. The system of claim 7 , wherein the determining the target blockchain node comprises:

identifying a first blockchain node having a network address that is the closest to the network address of the client among the set of candidate blockchain nodes;

determining whether a load of the target blockchain node is less than a threshold;

if the load is less than the threshold, using the first blockchain node as the target blockchain node; and

if the load is greater than or equal to the threshold, determining the target blockchain node through load balancing based on the network address information.

9. The system of claim 7 , wherein the downloading the target file from the determined target blockchain node based on the file address information comprises:

forwarding the request for downloading the target file to the determined target blockchain node; and

extracting the file address of the target file from the request for downloading the target file.

10. The system of claim 7 , wherein the operations further comprise:

performing a hash operation on the target file to obtain a hash value of the target file; and

generating the file address of the target file based on the hash value and a predetermined character string.

11. The system of claim 7 , wherein the operations further comprise:

receiving a request for uploading the target file to the blockchain; and

broadcasting the target file to a plurality of blockchain nodes associated with the blockchain for storing based on consensus processing.

12. The system of claim 7 , wherein the returning the downloaded target file to the client comprises:

extracting identification information of the client from the request for downloading the target file;

determining, based on the extracted identification information, that the client is a mobile client;

compressing the target file; and

returning the compressed target file to the client.

13. A non-transitory computer-readable storage medium for blockchain-based file processing, configured with instructions executable by one or more processors to cause the one or more processors to perform operations comprising:

receiving, from a client, a request for downloading a target file stored in a blockchain, the request comprising a network address of the client and a file address of the target file, wherein the blockchain comprises a plurality of nodes and each node having stored the target file and network addresses of one or more other nodes of the plurality of nodes;

determining, based on the network address information of the client, a set of candidate blockchain nodes in the blockchain from which the client has downloaded one or more files a number of times greater than a predetermined threshold number;

determining a target blockchain node having a network address that is the closest to the network address of the client among the set of candidate blockchain nodes;

downloading the target file from the determined target blockchain node based on the file address information; and

returning the downloaded target file to the client.

14. The medium of claim 13 , wherein the determining the target blockchain node comprises:

identifying a first blockchain node having a network address that is the closest to the network address of the client among the set of candidate blockchain nodes;

determining whether a load of the target blockchain node is less than a threshold;

if the load is less than the threshold, using the first blockchain node as the target blockchain node; and

if the load is greater than or equal to the threshold, determining the target blockchain node through load balancing based on the network address information.

15. The medium of claim 13 , wherein the downloading the target file from the determined target blockchain node based on the file address information comprises:

forwarding the request for downloading the target file to the determined target blockchain node; and

extracting the file address of the target file from the request for downloading the target file.

16. The medium of claim 13 , wherein the operations further comprise:

receiving a request for uploading the target file to the blockchain; and

broadcasting the target file to a plurality of blockchain nodes associated with the blockchain for storing based on consensus processing.

17. The medium of claim 13 , wherein the returning the downloaded target file to the client comprises:

extracting identification information of the client from the request for downloading the target file;

determining, based on the extracted identification information, that the client is a mobile client;

compressing the target file; and

returning the compressed target file to the client.

18. The medium of claim 13 , wherein the operations further comprise:

performing a hash operation on the target file to obtain a hash value of the target file; and

generating the file address of the target file based on the hash value and a predetermined character string.

19. The method of claim 1 , wherein the predetermined threshold number is determined according to a total number of times the client downloads files from the blockchain.

20. The system of claim 7 , wherein the predetermined threshold number is determined according to a total number of times the client downloads files from the blockchain.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053796/0281 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053702/0392 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2020
From: LIU, DAN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 053637/0483 →