IP Library Granted Patent US 11,093,523
Granted Patent B2
US 11,093,523 · App. 16/721,542 · Granted Aug 17, 2021

Blockchain based data processing method and device

Inventor: Hao Wu (Chengdu, CN)
Assignee: Advanced New Technologies Co., Ltd.
G06F16/27H04L9/0643G06F16/278H04L2209/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,093,523
App. No.
16/721,542
Granted
Aug 17, 2021
Kind
B2
Abstract

Example methods, non-transitory computer-readable medium, and systems for blockchain-based data processing are provided herein. In one example method, a blockchain network is identified, where the blockchain network includes a plurality of blocks. For each particular block of the plurality of blocks, a series of operations can be performed. An identifier of the particular block and an identifier of service data stored in the particular block are determined. A first mapping relationship is established between the determined identifier of the particular block and the determined identifier of the service data stored in the particular block. That first mapping relationship for the particular block is then stored in a relational database. In some instances, determining the identifier of the block includes obtaining digest information of the block, computing a value based on the digest information of the block, and associating the computed value as the identifier of the particular block.

Claims (62)

1. A computer-implemented method, comprising:

identifying, from a blockchain network including a plurality of blocks, a particular block;

determining a block identifier of the particular block, wherein determining the block identifier of the particular block comprises

obtaining digest information of the particular block,

applying a block hash algorithm to derive a block hash value for the digest information of the particular block, and

using the block hash value as the block identifier of the particular block;

determining, based on applying a data hash algorithm on data stored in the particular block identified by the block identifier, a data identifier of the data stored in the particular block;

establishing a first mapping relationship that specifies a correspondence between the block identifier of the particular block, a state value of the particular block, a block identifier of a previous block to the particular block, a generation timestamp of the particular block, and the data identifier of the data stored in the particular block; and

updating a relational database based on the first mapping relationship, wherein updating the relational database comprises storing, in a data table of the relational database, the block identifier of the particular block, the state value of the particular block, the block identifier of the previous block to the particular block, the generation timestamp of the particular block, and the data identifier of the data stored in the particular block.

2. The computer-implemented method of claim 1 ,

wherein the state value is a locator of a data structure used to maintain the data stored in the particular block.

3. The computer-implemented method of claim 1 , wherein updating the relational database further comprises storing, in the data table, for the particular block, the block identifier of the particular block, the state value of the particular block, the block identifier of the previous block to the particular block, the generation timestamp of the particular block, and the data identifier of the data stored in the particular block, and at least one of: a version number of the particular block or a height value of the particular block.

4. The computer-implemented method of claim 1 , wherein determining the data identifier of the data stored in the particular block comprises:

applying the data hash algorithm to derive a data hash value for the data stored in the particular block; and

using the data hash value as the data identifier of the data stored in the particular block.

5. The computer-implemented method of claim 1 , wherein the method further comprises, for the particular block:

establishing a second mapping relationship that specifies a correspondence between the data identifier of the data of the particular block and the block identifier of the particular block after determining the data identifier of the data; and

storing the second mapping relationship in a second data table.

6. The computer-implemented method of claim 5 , wherein the second data table stores the data identifier of the data and the block identifier of the particular block, and at least one of: a version number of the data, a type of the data, a digital signature in the data, content of the data, or a storage status of the data.

7. The computer-implemented method of claim 1 , wherein the method further comprises:

determining a block identifier of a newly generated block when the newly generated block is generated; and

updating the relational database based on the block identifier of the newly generated block.

8. The computer-implemented method of claim 1 , wherein the method further comprises:

determining a data identifier of newly generated data when the newly generated data is generated;

establishing a new mapping relationship that specifies a correspondence between the data identifier of the newly generated data and a block identifier of a second particular block storing the newly generated data after the newly generated data is stored in the second particular block; and

updating the relational database based on the new mapping relationship.

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

identifying, from a blockchain network including a plurality of blocks, a particular block;

determining a block identifier of the particular block, wherein determining the block identifier of the particular block comprises

obtaining digest information of the particular block,

applying a block hash algorithm to derive a block hash value for the digest information of the particular block, and

using the block hash value as the block identifier of the particular block;

determining, based on applying a data hash algorithm on data stored in the particular block identified by the block identifier, a data identifier of the data stored in the particular block;

establishing a first mapping relationship that specifies a correspondence between the block identifier of the particular block, a state value of the particular block, a block identifier of a previous block to the particular block, a generation timestamp of the particular block, and the data identifier of the data stored in the particular block; and

updating a relational database based on the first mapping relationship wherein updating the relational database comprises storing, in a data table of the relational database, the block identifier of the particular block, the state value of the particular block, the block identifier of the previous block to the particular block, the generation timestamp of the particular block, and the data identifier of the data stored in the particular block.

10. The non-transitory, computer-readable medium of claim 9 ,

wherein the state value is a locator of a data structure used to maintain the data stored in the particular block.

11. The non-transitory, computer-readable medium of claim 9 , wherein updating the relational database further comprises storing, in the data table, for the particular block, the block identifier of the particular block, the state value of the particular block, the block identifier of the previous block to the particular block, the generation timestamp of the particular block, and the data identifier of the data stored in the particular block, and at least one of: a version number of the particular block or a height value of the particular block.

12. The non-transitory, computer-readable medium of claim 9 , wherein determining the data identifier of the data stored in the particular block comprises:

applying the data hash algorithm to derive a data hash value for the data stored in the particular block; and

using the data hash value as the data identifier of the data stored in the particular block.

13. The non-transitory, computer-readable medium of claim 9 , wherein the operations further comprise, for each particular block of the plurality of blocks:

establishing a second mapping relationship that specifies a correspondence between the data identifier of the data of the particular block and the block identifier of the particular block after determining the data identifier of the data; and

storing the second mapping relationship in a second data table, wherein the second data table stores the data identifier of the data and the block identifier of the particular block, and at least one of: a version number of the data, a type of the data, a digital signature in the data, content of the data, or a storage status of the data.

14. The non-transitory, computer-readable medium of claim 9 , wherein the operations further comprise:

determining a block identifier of a newly generated block when the newly generated block is generated; and

updating the relational database based on the block identifier of the newly generated block.

15. The non-transitory, computer-readable medium of claim 9 , wherein the operations further comprise:

determining a data identifier of newly generated data when the newly generated data is generated;

establishing a new mapping relationship that specifies a correspondence between the data identifier of the newly generated data and a block identifier of a second particular block storing the newly generated data after the newly generated data is stored in the second particular block; and

updating the relational database based on the new mapping relationship.

16. 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 comprising:

identifying, from a blockchain network including a plurality of blocks, a particular block;

determining a block identifier of the particular block, wherein determining the block identifier of the particular block comprises

obtaining digest information of the particular block,

applying a block hash algorithm to derive a block hash value for the digest information of the particular block, and

using the block hash value as the block identifier of the particular block;

determining, based on applying a data hash algorithm on data stored in the particular block identified by the block identifier, a data identifier of the data stored in the particular block;

establishing a first mapping relationship that specifies a correspondence between the block identifier of the particular block, a state value of the particular block, a block identifier of a previous block to the particular block, a generation timestamp of the particular block, and the data identifier of the data stored in the particular block; and

updating a relational database based on the first mapping relationship wherein updating the relational database comprises storing, in a data table of the relational database, the block identifier of the particular block, the state value of the particular block, the block identifier of the previous block to the particular block, the generation timestamp of the particular block, and the data identifier of the data stored in the particular block.

Assignments (3)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2020
From: WU, HAO
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 051602/0023 →