IP Library Granted Patent US 10,790,979
Granted Patent B1
US 10,790,979 · App. 16/815,596 · Granted Sep 29, 2020

Providing high availability computing service by issuing a certificate

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,790,979
App. No.
16/815,596
Granted
Sep 29, 2020
Kind
B1
Abstract

This disclosure relates to providing a high availability computing service in a distributed system. In one aspect, a method includes sending, by a computing unit of multiple computing units that are each executing a respective copy of a computing task, a certificate request to a trusted certificate generator. The request includes authentication information. The authentication information includes a code hash of the computing task. The computing unit receives a certificate report including a public key certificate in a certificate chain generated for the code hash and a private key corresponding to the public key certificate. The public key certificate and the private key form a certificate pair. The certificate chain includes multiple certificates including the public key certificate and a root certificate corresponding to the public key certificate. The computing unit is used as a TLS server. The certificate pair is set as a certificate pair of the TLS server.

Claims (56)

1. A computer-implemented method, comprising:

sending, by a first computing unit of a plurality of computing units that are each executing a respective copy of a first computing task, a first certificate request to a trusted certificate generator, wherein the first certificate request comprises first authentication information that is used to perform trusted authentication on the first computing unit, the first authentication information comprising a first code hash of the first computing task;

receiving, by the first computing unit and from the trusted certificate generator, a first certificate report comprising a first public key certificate in a first certificate chain generated for the first code hash and a first private key corresponding to the first public key certificate, wherein the first public key certificate and the first private key form a first certificate pair, and the first certificate chain comprises multiple certificates including at least the first public key certificate and a first root certificate corresponding to the first public key certificate; and

using the first computing unit as a transport layer security (TLS) server, and setting the first certificate pair as a certificate pair of the TLS server; and

providing, for a TLS client having the first root certificate, a computing service corresponding to the first computing task.

2. The computer-implemented method of claim 1 , wherein the first computing unit is implemented as a trusted enclave configured to execute the first computing task in a trusted execution environment.

3. The computer-implemented method of claim 1 , further comprising, before sending the first certificate request to the trusted certificate generator:

generating a unit report file of the first computing unit, wherein the unit report file comprises the first code hash and signature information of the first computing unit;

sending the unit report file to a third-party authentication institution to obtain an authentication result file;

receiving, from the third-party authentication institution, the authentication result file comprising signature information of the third-party authentication institution; and

including the authentication result file in the first certificate request as the first authentication information.

4. The computer-implemented method of claim 1 , further comprising, before sending the first certificate request to the trusted certificate generator:

generating a unit report file of the first computing unit, wherein the unit report file comprises the first code hash and signature information of the first computing unit; and

including the unit report file in the first certificate request as the first authentication information.

5. The computer-implemented method of claim 1 , further comprising, before sending the first certificate request to the trusted certificate generator:

performing key negotiation with the trusted certificate generator to establish a trusted channel, wherein: the trusted channel is used to send the first certificate request and receive the first certificate report

sending the first certificate request to the trusted certificate generator comprises sending the first certificate request over the trusted channel; and

receiving the first certificate report comprises receiving the first certificate report over the trusted channel.

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

sending, by a first computing unit of a plurality of computing units that are each executing a respective copy of a first computing task, a first certificate request to a trusted certificate generator, wherein the first certificate request comprises first authentication information that is used to perform trusted authentication on the first computing unit, the first authentication information comprising a first code hash of the first computing task;

receiving, by the first computing unit and from the trusted certificate generator, a first certificate report comprising a first public key certificate in a first certificate chain generated for the first code hash and a first private key corresponding to the first public key certificate, wherein the first public key certificate and the first private key form a first certificate pair, and the first certificate chain comprises multiple certificates including at least the first public key certificate and a first root certificate corresponding to the first public key certificate; and

using the first computing unit as a transport layer security (TLS) server, and setting the first certificate pair as a certificate pair of the TLS server; and

providing, for a TLS client having the first root certificate, a computing service corresponding to the first computing task.

7. The non-transitory, computer-readable medium of claim 6 , wherein the first computing unit is implemented as a trusted enclave configured to execute the first computing task in a trusted execution environment.

8. The non-transitory, computer-readable medium of claim 6 , wherein the operations comprise, before sending the first certificate request to the trusted certificate generator:

generating a unit report file of the first computing unit, wherein the unit report file comprises the first code hash and signature information of the first computing unit;

sending the unit report file to a third-party authentication institution to obtain an authentication result file;

receiving, from the third-party authentication institution, the authentication result file comprising signature information of the third-party authentication institution; and

including the authentication result file in the first certificate request as the first authentication information.

9. The non-transitory, computer-readable medium of claim 6 , wherein the operations comprise, before sending the first certificate request to the trusted certificate generator:

generating a unit report file of the first computing unit, wherein the unit report file comprises the first code hash and signature information of the first computing unit; and

including the unit report file in the first certificate request as the first authentication information.

10. The non-transitory, computer-readable medium of claim 6 , wherein the operations comprise, before sending the first certificate request to the trusted certificate generator:

performing key negotiation with the trusted certificate generator to establish a trusted channel, wherein: the trusted channel is used to send the first certificate request and receive the first certificate report

sending the first certificate request to the trusted certificate generator comprises sending the first certificate request over the trusted channel; and

receiving the first certificate report comprises receiving the first certificate report over the trusted channel.

11. 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:

sending, by a first computing unit of a plurality of computing units that are each executing a respective copy of a first computing task, a first certificate request to a trusted certificate generator, wherein the first certificate request comprises first authentication information that is used to perform trusted authentication on the first computing unit, the first authentication information comprising a first code hash of the first computing task;

receiving, by the first computing unit and from the trusted certificate generator, a first certificate report comprising a first public key certificate in a first certificate chain generated for the first code hash and a first private key corresponding to the first public key certificate, wherein the first public key certificate and the first private key form a first certificate pair, and the first certificate chain comprises multiple certificates including at least the first public key certificate and a first root certificate corresponding to the first public key certificate; and

using the first computing unit as a transport layer security (TLS) server, and setting the first certificate pair as a certificate pair of the TLS server; and

providing, for a TLS client having the first root certificate, a computing service corresponding to the first computing task.

12. The computer-implemented system of claim 11 , wherein the first computing unit is implemented as a trusted enclave configured to execute the first computing task in a trusted execution environment.

13. The computer-implemented system of claim 11 , wherein the operations comprise, before sending the first certificate request to the trusted certificate generator:

generating a unit report file of the first computing unit, wherein the unit report file comprises the first code hash and signature information of the first computing unit;

sending the unit report file to a third-party authentication institution to obtain an authentication result file;

receiving, from the third-party authentication institution, the authentication result file comprising signature information of the third-party authentication institution; and

including the authentication result file in the first certificate request as the first authentication information.

14. The computer-implemented system of claim 11 , wherein the operations comprise, before sending the first certificate request to the trusted certificate generator:

generating a unit report file of the first computing unit, wherein the unit report file comprises the first code hash and signature information of the first computing unit; and

including the unit report file in the first certificate request as the first authentication information.

15. The computer-implemented system of claim 11 , wherein the operations comprise, before sending the first certificate request to the trusted certificate generator:

performing key negotiation with the trusted certificate generator to establish a trusted channel, wherein: the trusted channel is used to send the first certificate request and receive the first certificate report

sending the first certificate request to the trusted certificate generator comprises sending the first certificate request over the trusted channel; and

receiving the first certificate report comprises receiving the first certificate report over the trusted channel.

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 Mar 24, 2020
From: YU, CHAOFAN; WANG, LEI; ZHOU, AIHUI; ZHANG, NING; TIAN, HONGLIANG; XIAO, JUNXIAN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 052211/0489 →