IP Library Granted Patent US 11,831,656
Granted Patent B2
US 11,831,656 · App. 17/479,598 · Granted Nov 28, 2023

Providing data authorization based on blockchain

Inventors: Changzheng Wei (Hangzhou, CN); Ying Yan (Hangzhou, CN); Hui Zhang (Hangzhou, CN); Yujun Peng (Hangzhou, CN)
Assignee: Advanced New Technologies Co., Ltd.
H04L63/126G06F16/2358H04L9/0637H04L9/3234H04L63/0442H04L63/0485H04L63/101H04L63/105H04L9/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,831,656
App. No.
17/479,598
Granted
Nov 28, 2023
Kind
B2
Abstract

Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for providing blockchain-based data authorization. One of the methods includes receiving, by a blockchain node, a data acquisition transaction submitted by a data user for obtaining target data possessed by a data owner, determining, by the blockchain node, that the data user has obtained authorization of the target data, and executing, by the blockchain node, a smart contract invoked by the data acquisition transaction to issue an authorization token to the data user in response to determining that the data user has authorization of the target data, where the authorization token is sent to a privacy computing platform.

Claims (53)

1. A computer-implemented method comprising:

receiving, by a blockchain node and from a data user, a data acquisition transaction for obtaining target data possessed by a data owner;

invoking, by the blockchain node, a data interface of a smart contract responsive to receiving the data acquisition transaction;

based on invoking the data interface of the smart contract, determining, by the blockchain node, that the data user is authorized to obtain the target data;

generating, by the blockchain node, an authorization token in response to determining that the data user is authorized to obtain the target data; and

providing, by the blockchain node, the authorization token to the data user, comprising adding, by the blockchain node, the authorization token to a transaction log monitored by the data user, wherein the authorization token is sent by the data user to a privacy computing platform for use in obtaining the target data from the data owner and sending one or more of the target data and a computational result of one or more predetermined computational operations performed based on the target data to the data user.

2. The method according to claim 1 , wherein the smart contract comprises a list of authorized users including the data user and determining that the data user is authorized to obtain the target data is performed based on the list of authorized users.

3. The method according to claim 1 , further comprising:

invoking, by the blockchain node, a request interface defined in the smart contract based on an authorization request transaction submitted by the data user to cause the smart contract to write an authorization request event into the transaction log; and

invoking, by the blockchain node, an authorization interface defined in the smart contract based on an authorization confirmation transaction submitted by the data owner to cause the smart contract to mark the data user as the authorized user.

4. The method according to claim 1 , wherein the authorization token indicates a quantity of authorizations the data user has over the target data and the smart contract includes one or more instructions to reduce the quantity of authorizations the data user has until the data user no longer has authorization.

5. The method according to claim 1 , wherein the smart contract is executed to provide the target data to the data user if the target data has low data privacy level, and the smart contract is executed to provide the computational result of the one or more predetermined computational operations if the target data has high data privacy level.

6. The method according to claim 1 , further comprising:

receiving, by the blockchain node, a depository transaction that includes ciphertext of the target data generated by encrypting the target data using a public key associated with the data owner; and

storing, by the blockchain node, the ciphertext of the target data, wherein the privacy computing platform hosts a private key corresponding to the public key for decrypting the ciphertext of the target data.

7. The method according to claim 1 , further comprising:

encrypting, by the blockchain node, the target data in a trusted execution environment (TEE) by using a public key associated with the data owner to obtain ciphertext of the target data;

storing, by the blockchain node, the ciphertext of the target data to a database associated with the blockchain node; and

wherein invoking the smart contract is performed in the TEE after reading the ciphertext of the target data into the TEE and decrypting the ciphertext of the target data.

8. The method according to claim 7 , wherein the data acquisition transaction is a ciphertext of a privacy depository transaction, and invoking the smart contract further comprises:

decrypting, by the blockchain node, the ciphertext of the privacy depository transaction in the TEE to obtain the target data.

9. The method according to claim 1 , wherein the blockchain node stores a digital digest of the target data, the target data is stored by the data owner in a storage media other than a blockchain of the blockchain node, and is retrieved by another smart contract from the storage media and transferred to the smart contract to perform the one or more predetermined computational operations.

10. The method according to claim 1 , wherein the authorization token comprises a temporary session key, and at least one of the target data or the computational result is encrypted to ciphertext by using the temporary session key and transmitted to the data user through the privacy computing platform.

11. The method according to claim 10 , wherein the authorization token comprises a first field and a second field, and wherein the first field includes ciphertext of the temporary session key encrypted by using an encryption key associated with the data user, and the second field includes ciphertext of the temporary session key encrypted by using an encryption key associated with the privacy computing platform.

12. 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 operations comprising:

receiving, by a blockchain node and from a data user, a data acquisition transaction for obtaining target data possessed by a data owner;

invoking, by the blockchain node, a data interface of a smart contract responsive to receiving the data acquisition transaction;

based on invoking the data interface of the smart contract, determining, by the blockchain node, that the data user is authorized to obtain the target data;

generating, by the blockchain node, an authorization token in response to determining that the data user is authorized to obtain the target data; and

providing, by the blockchain node, the authorization token to the data user, comprising adding, by the blockchain node, the authorization token to a transaction log monitored by the data user, wherein the authorization token is sent by the data user to a privacy computing platform for use in obtaining the target data from the data owner and sending one or more of the target data and a computational result of one or more predetermined computational operations performed based on the target data to the data user.

13. The computer-implemented system according to claim 12 , wherein the smart contract comprises a list of authorized users including the data user and determining the data user is authorized to obtain the target data is performed based on the list of authorized users.

14. The computer-implemented system according to claim 12 , further comprising:

invoking, by the blockchain node, a request interface defined in the smart contract based on an authorization request transaction submitted by the data user to cause the smart contract to write an authorization request event into the transaction log; and

invoking, by the blockchain node, an authorization interface defined in the smart contract based on an authorization confirmation transaction submitted by the data owner to cause the smart contract to mark the data user as the authorized user.

15. The computer-implemented system according to claim 12 , wherein the authorization token indicates a quantity of authorizations the data user has over the target data and the smart contract includes one or more instructions to reduce the quantity of authorizations the data user has until the data user no longer has authorization.

16. The computer-implemented system according to claim 12 , wherein the smart contract is executed to provide the target data to the data user if the target data has low data privacy level, and the smart contract is executed to provide the computational result of the one or more predetermined computational operations if the target data has high data privacy level.

17. The computer-implemented system according to claim 12 , further comprising:

receiving, by the blockchain node, a depository transaction that includes ciphertext of the target data generated by encrypting the target data using a public key associated with the data owner; and

storing, by the blockchain node, the ciphertext of the target data, wherein the privacy computing platform hosts a private key corresponding to the public key for decrypting the ciphertext of the target data.

18. The computer-implemented system according to claim 12 , further comprising:

encrypting, by the blockchain node, the target data in a trusted execution environment (TEE) by using a public key associated with the data owner to obtain ciphertext of the target data;

storing, by the blockchain node, the ciphertext of the target data to a database associated with the blockchain node; and

wherein invoking the smart contract is performed in the TEE after reading the ciphertext of the target data into the TEE and decrypting the ciphertext of the target data.

19. The computer-implemented system according to claim 18 , wherein the data acquisition transaction is a ciphertext of a privacy depository transaction, and invoking the smart contract further comprises:

decrypting, by the blockchain node, the ciphertext of the privacy depository transaction in the TEE to obtain the target data.

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

receiving, by a blockchain node and from a data user, a data acquisition transaction for obtaining target data possessed by a data owner;

invoking, by the blockchain node, a data interface of a smart contract responsive to receiving the data acquisition transaction;

based on invoking the data interface of the smart contract, determining, by the blockchain node, that the data user is authorized to obtain the target data;

generating, by the blockchain node, an authorization token in response to determining that the data user is authorized to obtain the target data; and

providing, by the blockchain node, the authorization token to the data user, comprising adding, by the blockchain node, the authorization token to a transaction log monitored by the data user, wherein the authorization token is sent by the data user to a privacy computing platform for use in obtaining the target data from the data owner and sending one or more of the target data and a computational result of one or more predetermined computational operations performed based on the target data to the data user.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2025
From: ADVANCED NEW TECHNOLOGIES CO., LTD.
To: ANTCHAIN TECHNOLOGY PTE. LTD.
Reel/Frame 070253/0064 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2021
From: WEI, CHANGZHENG; YAN, YING; ZHANG, HUI; PENG, YUJUN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 058842/0649 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2021
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 058842/0776 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2021
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 058856/0001 →
Priority Claims (1)
CN 201910703796.X · Jul 31, 2019 · national
Continuity (3)
Continuation 16779488 · Jan 31, 2020
Continuation PCTCN2020072153 · Jan 15, 2020
Related Publication 20220060484A1 · Feb 24, 2022