IP Library › Granted Patent US 12,524,547
Granted Patent B2
US 12,524,547 · App. 18/276,542 · Granted Jan 13, 2026

Methods and apparatuses for starting application on target platform

Inventors: Yulong Zhang (Hangzhou, CN); Tao Wei (Hangzhou, CN)
Assignee: Alipay (Hangzhou) Information Technology Co., Ltd.
G06F21/57G06F9/44505G06F9/4401
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 12,524,547
App. No.
18/276,542
Granted
Jan 13, 2026
Kind
B2
Abstract

Embodiments of this specification provide a method and an apparatus for starting an application on a target platform, where the target platform includes at least a verifiable startup chip and a trusted execution environment, and the method includes: sequentially starting a plurality of system startup items based on a predetermined startup order, where starting a first startup item included in the plurality of system startup items includes: measuring a next startup item of the first startup item, and recording a measurement result into the verifiable startup chip; starting an attestation proxy program based on the trusted execution environment; and starting a first user application based on the trusted execution environment, and determining, by the attestation proxy program, first attestation information corresponding to the first user application based on local attestation in the trusted execution environment.

Claims (38)

1 . A method for starting an application on a target platform, wherein the target platform comprises at least a verifiable startup chip and a trusted execution environment, and the method comprises:

sequentially starting a plurality of system startup items based on a predetermined startup order, wherein starting a first startup item comprised in the plurality of system startup items comprises: measuring a next startup item of the first startup item, and recording a measurement result into the verifiable startup chip;

starting an attestation proxy program based on the trusted execution environment;

starting a first user application based on the trusted execution environment, and determining, by the attestation proxy program, first attestation information corresponding to the first user application based on local attestation in the trusted execution environment, wherein the first attestation information is maintained by the attestation proxy program;

in response to an access request of a remote user for the verifiable startup chip, providing a second record for the remote user, wherein the second record is generated by the verifiable startup chip based on a first measurement result recorded when a tail startup item in the plurality of system startup items is started; and

in response to a connection request of the remote user based on the first measurement result, establishing, by the attestation proxy program, a trust channel with the remote user, and providing the first attestation information for the remote user by using the trust channel.

2 . The method according to claim 1 , further comprising: recording the first attestation information into the verifiable startup chip.

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

in response to an access request of a remote user of the target platform for the verifiable startup chip, providing, for the remote user, a first record generated by the verifiable startup chip based on the first attestation information, so that the remote user determines security of the first user application and/or security of the target platform based on the first record.

4 . The method according to claim 1 , wherein the second record is used by the remote user to determine security of the target platform based on the second record.

5 . The method according to claim 4 , wherein the determining security of the target platform based on the second record comprises: attesting, based on the second record, whether a version of an operating system (OS) and/or a virtual machine monitor (VMM) that are/is started on the target platform is a predetermined version, and determining security of the target platform based on an attestation result.

6 . The method according to claim 1 , wherein the first attestation information is used by the remote user to determine security of the first user application based on the first attestation information.

7 . The method according to claim 1 , wherein the verifiable startup chip comprises one of a trusted platform module (TPM) chip, a trusted cryptography module (TCM) chip, a trusted platform control module (TPCM) chip, and a Titan chip.

8 . The method according to claim 1 , wherein after the first user application is started, the method further comprises:

starting a second user application based on the trusted execution environment; and

determining, by the attestation proxy program, second attestation information corresponding to the second user application based on local attestation in the trusted execution environment.

9 . The method according to claim 1 , wherein the first startup item in the plurality of system startup items is a core root of trust measurement (CRTM).

10 . The method according to claim 9 , wherein the plurality of system startup items further comprise several of a bootloader, an operating system (OS), and a virtual machine monitor (VMM).

11 . The method according to claim 1 , wherein the attestation proxy program comprises at least a trusted part;

the starting an attestation proxy program comprises at least: executing the trusted part in the trusted execution environment; and

starting the last item in the plurality of system startup items comprises: measuring the trusted part, and recording a measurement result into the verifiable startup chip.

12 . The method according to claim 1 , wherein the first user application comprises at least a trusted part;

the starting a first user application based on the trusted execution environment comprises at least: executing the trusted part in the trusted execution environment; and

the determining, by the attestation proxy program, first attestation information of the first user application based on local attestation in the trusted execution environment comprises:

determining, by the attestation proxy program, the first attestation information corresponding to the first user application based on local attestation in the trusted execution environment and the trusted part.

13 . The method according to claim 1 , wherein the determining, by the attestation proxy program, first attestation information corresponding to the first user application based on local attestation in the trusted execution environment comprises: invoking, by the attestation proxy program, a local attestation instruction of software guard extensions (SGX) to obtain the first attestation information corresponding to the first user application.

14 . A non-transitory computer-readable storage medium having stored therein instructions that, when executed by a processor of a device, cause the device to:

sequentially start a plurality of system startup items based on a predetermined startup order, wherein starting a first startup item comprised in the plurality of system startup items comprises: measuring a next startup item of the first startup item, and recording a measurement result into the verifiable startup chip;

start an attestation proxy program based on the trusted execution environment;

start a first user application based on the trusted execution environment, and determine, by the attestation proxy program, first attestation information corresponding to the first user application based on local attestation in the trusted execution environment, wherein the first attestation information is maintained by the attestation proxy program;

in response to an access request of a remote user for the verifiable startup chip, provide a second record for the remote user, wherein the second record is generated by the verifiable startup chip based on a first measurement result recorded when a tail startup item in the plurality of system startup items is started; and

in response to a connection request of the remote user based on the first measurement result, establish, by the attestation proxy program, a trust channel with the remote user, and provide the first attestation information for the remote user by using the trust channel.

15 . A computing device, comprising a memory and a processor, wherein the memory stores executable instructions that, in response to execution by the processor, cause the computing device to:

sequentially start a plurality of system startup items based on a predetermined startup order, wherein starting a first startup item comprised in the plurality of system startup items comprises: measuring a next startup item of the first startup item, and recording a measurement result into the verifiable startup chip;

start an attestation proxy program based on the trusted execution environment;

start a first user application based on the trusted execution environment, and determine, by the attestation proxy program, first attestation information corresponding to the first user application based on local attestation in the trusted execution environment, wherein the first attestation information is maintained by the attestation proxy program;

in response to an access request of a remote user for the verifiable startup chip, provide a second record for the remote user, wherein the second record is generated by the verifiable startup chip based on a first measurement result recorded when a tail startup item in the plurality of system startup items is started; and

in response to a connection request of the remote user based on the first measurement result, establish, by the attestation proxy program, a trust channel with the remote user, and provide the first attestation information for the remote user by using the trust channel.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2024
From: WEI, TAO
To: ALIPAY (HANGZHOU) INFORMATION TECHNOLOGY CO., LTD.
Reel/Frame 066886/0730 →
Priority Claims (1)
CN 202110176522.7 · Feb 9, 2021 · national
Continuity (1)
Related Publication 20240095362A1 · Mar 21, 2024
References Cited (25)
US 8176336B1 · Mao · 2012 [cited by examiner]
US 10185595B1 · Ramatchandirane · 2019 [cited by examiner]
US 10742421B1 · Wentz · 2020 [cited by examiner]
US 20080244569A1 · Challener · 2008 [cited by examiner]
US 20090307487A1 · Movva · 2009 [cited by examiner]
US 20120096560A1 · Selander · 2012 [cited by examiner]
US 20130198838A1 · Schmidt et al. · 2013 [cited by applicant]
US 20150188944A1 · Dyer · 2015 [cited by examiner]
US 20150199520A1 · Woolley · 2015 [cited by examiner]
US 20150271435A1 · Gao · 2015 [cited by examiner]
US 20160050071A1 · Collart · 2016 [cited by examiner]
US 20160350534A1 · Poornachandran · 2016 [cited by examiner]
US 20180034793A1 · Kibalo et al. · 2018 [cited by applicant]
US 20180109538A1 · Kumar · 2018 [cited by examiner]
US 20190243963A1 · Soriente · 2019 [cited by examiner]
US 20200349252A1 · Yu et al. · 2020 [cited by applicant]
US 20210224757A1 · Carthy · 2021 [cited by examiner]
US 20220067165A1 · Huang · 2022 [cited by examiner]
US 20220277083A1 · Sasaki · 2022 [cited by examiner]
CN 102332070A · 2012 [cited by applicant]
CN 107533609A · 2018 [cited by applicant]
CN 112329005A · 2021 [cited by applicant]
CN 112988262A · 2021 [cited by applicant]
The International Search Report and Written Opinion of the International Searching Authority for International Application No. PCT/CN2022/073725 mailed on Apr. 6, 2022. [cited by applicant]
“Extended European Search report” regarding Application No. 22752127.5, mailed on Oct. 9, 2024. pp. 1-12. [cited by applicant]