# US 12,010,249 B1 · Method and device for zero-trust fusion computation of multi-party data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,010,249 B1
- Document ID: US12010249B1
- Status: Granted
- Kind: B1
- Application number: 18/369,289
- Filed: 2023-09-18
- Published: 2024-06-13
- Granted: 2024-06-11
- Earliest claimed: 2022-12-07
- Assignees: Nanhu Laboratory
- Applicants: Nanhu Laboratory
- Inventors: Lei Zhang; Zhichao Yan
- Web page: https://patentgrep.com/patent/US12010249B1

## CPC

- H04L 9/3263: {involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements (network architectures or network communication protocols for supporting authentication of entities using certificates in a packet data network H04L63/0823)}
- H04L 9/0866: {involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics}
- H04L 9/0897: {involving additional devices, e.g. trusted platform module [TPM], smartcard or USB}
- H04L 9/3236: {using cryptographic hash functions}
- H04L 9/3247: {involving digital signatures}
- H04L 2209/46: Secure multiparty computation, e.g. millionaire problem
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method and device for zero-trust fusion computation of multi-party data is provided, which adopts a chip-level based trusted execution environment (TEE) technique, and by improving a development preparation phase of a fusion computation background and improving a calculation phase, enable fusion computation of multi-party data to be performed in a zero-trust secure running environment, guaranteeing that the data is in a secure state without trusting any party during an entire process of transmission, storage and fusion computation, and allowing for enhanced data privacy protection. The solution brings many advantages in terms of data storage security, data transmission security and data use security as well as universality and performance superiority.

## Claims

### Claim 1

A method for zero-trust fusion computation of multi-party data, comprising:
upon receiving a fusion computation request, starting up a fusion computation background in a trusted execution environment (TEE) and loading the fusion computation background into an encrypted memory;
verifying, in the TEE, a unique metric value hash1 of the fusion computation background in response to the unique metric value hash1 being consistent with a unique metric value hash1 obtained by verification and measurement of the fusion computation background and storage thereof at a deployment stage, starting running a program and acquiring a key key1 derived by the TEE and uniquely bound to the fusion computation background, and in response to the unique metric value hash1 being inconsistent with a unique metric value hash1 obtained by verification and measurement of the fusion computation background and storage thereof at a deployment stage, reporting an error and quitting;
determining whether the fusion computation background has a self-signed certificate, in response to a determination that the fusion computation background does not have a self-signed certificate, generating a self-signed certificate comprising a root certificate CA1, a back-end server certificate, and a back-end server private key using a self-signed certificate generating tool of the fusion computation background, and encrypting and saving the back-end server private key using the key key1;
in response to a determination that the fusion computation background has a self-signed certificate, decrypting and loading an encrypted and saved back-end server private key based on the key key1, in response to the decrypting being successful, continuing to run the program, and in response to the decrypting being unsuccessful, determining that the loading an encrypted and saved back-end server private key fails;
enabling, by the fusion computation background, an Https interface service based on the self-signed certificate for a front-end web service to invoke;
receiving, by the fusion computation background, in the TEE, database configuration information, and encrypting and saving the database configuration information by the key key1 of the TEE; and
performing a decrypting process, comprising: when a start running interface is invoked, decrypting, by the fusion computation background, in the TEE, the corresponding database configuration information and loading the database configuration information into the encrypted memory, establishing a secure link with all parties' databases based on the database configuration information, pulling corresponding data into the encrypted memory for fusion computation according to a data fusion computation logic of the fusion computation background, and returning a result to one or more parties requesting a fusion result after completion of the fusion computation.

### Claim 2 (depends on 1)

The method for zero-trust fusion computation of multi-party data according to claim 1, wherein the fusion computation background is embedded with the self-signed certificate generating tool at a development stage;
at a deployment stage of the fusion computation background, the fusion computation background is measured by a program integrity verifying tool to obtain the unique metric value hash1; and
in the verifying, the loaded fusion computation background is measured by a same program integrity verifying tool in the TEE to obtain the unique metric value hash1.

### Claim 3 (depends on 2)

The method for zero-trust fusion computation of multi-party data according to claim 2, further comprising at a deployment stage of a software of the fusion computation background, before startup of the fusion computation background, measuring the fusion computation background by the program integrity verifying tool to obtain the unique metric value hash1 and save the metric value hash1;
when the fusion computation background is started up for the first time, measuring, by using the same program integrity verifying tool, in the TEE, the loaded fusion computation background to obtain the unique metric value hash1, and comparing the unique metric value hash1 with the saved hash1, in response to the unique metric value hash1 and the saved hash1 being consistent, starting to run the program, and deriving the unique corresponding key key1 for the unique metric value hash1 based on the unique metric value hash1; and
in the verifying, when verified in TEE that the unique metric value hash1 of the fusion computation background is consistent with the unique metric value hash1 thereof saved at the deployment stage, starting the program, and obtaining the correct key key 1.

### Claim 4 (depends on 2)

The method for zero-trust fusion computation of multi-party data according to claim 2, wherein the root certificate CA1 of the fusion computation background is in a program of a front-end web service; and
in the enabling, the self-signed certificate of the fusion computation background is verified by using the root certificate CA1, in response to verification being successful, an Http connection between the front-end web service program and the fusion computation background is established, in response to the verification failing, connection fails.

### Claim 5 (depends on 4)

The method for zero-trust fusion computation of multi-party data according to claim 4, wherein the front-end web service is embedded with the self-signed certificate generating tool at the development stage, the method further comprising before the decrypting process:
performing a loading process, comprising: starting up the front-end web service, in the TEE, loading the front-end web service into the encrypted memory, verifying, in the TEE, a unique metric value hash2 of the front-end web service, and if in response to the unique metric value hash2 being consistent with a unique metric value hash2 obtained by measuring the front-end web service and saved at the deployment stage, starting running and acquiring a key key2 derived by the TEE and uniquely bound to the front-end web service, in response to the unique metric value hash2 being inconsistent with a unique metric value hash2 obtained by measuring the front-end web service and saved at the deployment stage, reporting an error and quitting;
after the front-end web service starts up, determining whether the front-end web service has a self-signed certificate, in response to a determination that the front-end web service does not have a self-signed certificate, generating a self-signed certificate comprising a root certificate CA2, a front-end server certificate and a front-end server private key using the self-signed certificate generating tool of the front-end web service, and encrypting and saving the front-end server private key using the key_key2; and
in response to a determination that the front-end web service has a self-signed certificate, decrypting and loading an encrypted and saved front-end server private key based on the key key2, in response to the decrypting an encrypted and saved front-end server private key being successful, continuing to run the program, in response to the decrypting an encrypted and saved front-end server private key being unsuccessful, determining that the loading an encrypted and saved front-end server private key fails.

### Claim 6 (depends on 5)

The method for zero-trust fusion computation of multi-party data according to claim 5, further comprising at a deployment stage of a software of the program of the front-end web service, before startup of the front-end web service, measuring the front-end web service and the root certificate CA1 by the program integrity verifying tool to generate the unique metric value hash2 for identifying the program of the front-end web service, and saving the unique metric value hash2:
When the front-end web service starts for the first time, measuring the loaded front-end web service, by using the same integrity verifying tool, in the TEE, to obtain the unique metric value hash2, and comparing the unique metric value hash2 with the saved hash2, in response to the unique metric value hash2 and the saved hash2 being consistent, starting to run the program, and deriving the unique corresponding key key2 for the unique metric value hash2 based on the unique metric value hash2; and
wherein during the loading process, when the TEE verifies that the unique metric value hash2 of the front-end web service is consistent with the unique metric value hash2 thereof saved at the deployment stage, the program starts to run, and the correct key key2 is obtained.

### Claim 7 (depends on 6)

The method for zero-trust fusion computation of multi-party data according to claim 6, wherein a browser used by a user is installed with the root certificate CA2, when each party of data accesses the front-end web service through the browser, a transport layer security (TLS) certificate of an access link is verified by using the root certificate CA2, and feedback is provided according to a verification result.
