IP Library Granted Patent US 10,783,054
Granted Patent B2
US 10,783,054 · App. 16/815,906 · Granted Sep 22, 2020

Method, apparatus, and device for storing operation record based on trusted execution environment

Inventors: Lei Wang (Hangzhou, CN); Xinying Yang (Hangzhou, CN); Qingkai Mao (Hangzhou, CN); Mengyun Zhao (Hangzhou, CN)
Assignee: Alibaba Group Holding Limited
G06F11/3476G06F21/53G06N20/00H04L9/0637H04L9/0643
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 10,783,054
App. No.
16/815,906
Granted
Sep 22, 2020
Kind
B2
Abstract

In an implementation, operation instructions indicating application data to be used for performing one or more operations sent by a first client device are received. The application data is determined based on the operation instructions. One or more second client devices associated with the application data are determined. Operation codes in a trusted execution environment (TEE) associated with the application data to be executed are determined. That the operation codes has been executed for K times based on an indicator is determined. The operation codes are executed in the TEE based on the application data to generate an operation log. An indicator indicating a number of times the operation codes are executed is updated. The operation log and the indicator are sent as an operation record to a database server, the first client device, and the one or more second client devices to be stored.

Claims (50)

1. A computer-implemented method for record storage based on a trusted execution environment (TEE), comprising:

receiving operation instructions sent by a first client device, wherein the operation instructions indicates application data to be used for performing one or more operations, wherein the application data comprises sample data used to train a machine-learning model;

determining the application data based on the operation instructions;

determining one or more second client devices associated with the application data;

determining operation codes in the TEE associated with the application data to be executed to perform the one or more operations, wherein the operation codes comprise codes of the machine-learning model;

determining that the operation codes have been executed for K times based on an indicator, where K is a non-negative integer;

executing the operation codes in the TEE based on the application data to generate an operation log, wherein the operation log comprises a trained machine-learning model obtained from training the machine-learning model based on the sample data;

updating an indicator indicating a number of times the operation codes are executed from K to K+1, where K is a non-negative integer; and

sending the operation log and the indicator, as an operation record, to a database server, the first client device, and the one or more second client devices to be stored.

2. The computer-implemented method of claim 1 , wherein the application data is encrypted by using a public key and is decrypted by the one or more second client devices by using a private key obtained from the TEE corresponding to the public key.

3. The computer-implemented method of claim 1 , further comprising:

receiving, from the database server, a hash value of the operation record; and

sending the hash value to the first client device and the one or more second client devices.

4. The computer-implemented method of claim 1 , wherein the operation record is recorded to a blockchain-type ledger by the database server to generate a data block that comprises a hash value of the data block and the operation record, wherein a block height of the data block is greater than a block height of a previous data block.

5. The computer-implemented method of claim 4 , wherein a hash value of the operation record is sent to an application server.

6. The computer-implemented method of claim 4 , wherein the data block is generated in response to determining that a predetermined condition is satisfied, and wherein the predetermined condition is one of a volume of the operation record reaches a predetermined threshold or a last data block has been generated for a predetermined time.

7. A computer-implemented system for storing record storage based on a trusted execution environment (TEE), comprising:

one or more processors; and

one or more computer-readable memories coupled to the one or more processors and having instructions stored thereon that are executable by the one or more processors to perform one or more operations comprising:

receiving operation instructions sent by a first client device, wherein the operation instructions indicates application data to be used for performing one or more operations, wherein the application data comprises sample data used to train a machine-learning model;

determining the application data based on the operation instructions;

determining one or more second client devices associated with the application data;

determining operation codes in the TEE associated with the application data to be executed to perform the one or more operations, wherein the operation codes comprise codes of the machine-learning model;

determining that the operation codes have been executed for K times based on an indicator, where K is a non-negative integer;

executing the operation codes in the TEE based on the application data to generate an operation log, wherein the operation log comprises a trained machine-learning model obtained from training the machine-learning model based on the sample data;

updating an indicator indicating a number of times the operation codes are executed from K to K+1, where K is a non-negative integer; and

sending the operation log and the indicator as an operation record to a database server, the first client device, and the one or more second client devices to be stored.

8. The computer-implemented system of claim 7 , wherein the application data is encrypted by using a public key and is decrypted by the one or more second client devices by using a private key obtained from the TEE corresponding to the public key.

9. The computer-implemented system of claim 7 , further comprising:

receiving, from the database server, a hash value of the operation record; and

sending the hash value to the first client device and the one or more second client devices.

10. The computer-implemented system of claim 7 , wherein the operation record is recorded to a blockchain-type ledger by the database server to generate a data block that comprises a hash value of the data block and the operation record, wherein a block height of the data block is greater than a block height of a previous data block.

11. The computer-implemented system of claim 10 , wherein a hash value of the operation record is sent to an application server.

12. The computer-implemented system of claim 10 , wherein the data block is generated in response to determining that a predetermined condition is satisfied, and wherein the predetermined condition is one of a volume of the operation record reaches a predetermined threshold or a last data block has been generated for a predetermined time.

13. A non-transitory, computer-readable medium storing one or more instructions executable by a computer-implemented authentication system to perform one or more operations for record storage based on a trusted execution environment (TEE), comprising:

receiving operation instructions sent by a first client device, wherein the operation instructions indicates application data to be used for performing one or more operations, wherein the application data comprises sample data used to train a machine-learning model;

determining the application data based on the operation instructions;

determining one or more second client devices associated with the application data;

determining operation codes in the TEE associated with the application data to be executed to perform the one or more operations, wherein the operation codes comprise codes of the machine-learning model;

determining that the operation codes have been executed for K times based on an indicator, where K is a non-negative integer;

executing the operation codes in the TEE based on the application data to generate an operation log, wherein the operation log comprises a trained machine-learning model obtained from training the machine-learning model based on the sample data;

updating an indicator indicating a number of times the operation codes are executed from K to K+1, where K is a non-negative integer; and

sending the operation log and the indicator as an operation record to a database server, the first client device, and the one or more second client devices to be stored.

14. The non-transitory, computer-readable medium of claim 13 , wherein the application data is encrypted by using a public key and is decrypted by the one or more second client devices by using a private key obtained from the TEE corresponding to the public key.

15. The non-transitory, computer-readable medium of claim 13 , further comprising:

receiving, from the database server, a hash value of the operation record; and

sending the hash value to the first client device and the one or more second client devices.

16. The non-transitory, computer-readable medium of claim 13 , wherein the operation record is recorded to a blockchain-type ledger by the database server to generate a data block that comprises a hash value of the data block and the operation record, wherein a block height of the data block is greater than a block height of a previous data block.

17. The non-transitory, computer-readable medium of claim 16 , wherein a hash value of the operation record is sent to an application server.

18. The non-transitory, computer-readable medium of claim 16 , wherein the data block is generated in response to determining that a predetermined condition is satisfied, and wherein the predetermined condition is one of a volume of the operation record reaches a predetermined threshold or a last data block has been generated for a predetermined time.

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 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 Apr 7, 2020
From: WANG, LEI; YANG, XINYING; MAO, QINGKAI; ZHAO, MENGYUN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 052335/0455 →