IP Library Granted Patent US 12688315
Granted Patent B2
US 12688315 · App. 18/705,674 · Granted Jul 21, 2026

Method to store data persistently by a software payload

Inventors: François-Xavier Marseille (Marly le Roi, FR); Fadela Letourneur (Maurepas, FR); Frédéric Ruget (Nanterre, FR)
G06F21/6209G06F21/53G06F21/57G06F21/602G06F21/6218H04L9/0861H04L63/06H04L9/3263
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 12688315
App. No.
18/705,674
Granted
Jul 21, 2026
Kind
B2
Abstract

A method to store data persistently by a payload of an owner, the method including establishing a secure channel between the owner and the software payload itself when running into a hardware-based trusted executed environment, HW TEE, at the instance of a cloud service provider; generating, by the owner, a payload identifier using information shared from the payload during the establishment of the secure channel; generating, by the owner, a key initiator and persistently storing at the owner side the key initiator associated to the payload identifier; sending, by the owner, the payload identifier and the key initiator to the payload; using the key initiator, by the payload, to encrypt data; and persistently storing, by the payload, the encrypted data and the payload identifier.

Claims (45)

1 . A computer-implemented method to store data persistently by a software payload of an owner device, the method comprising the following steps:

establishing a secure channel between the owner device and the software payload itself when running into a hardware-based trusted executed environment, HW TEE, at the instance of a cloud service provider;

generating, by the owner device, a payload identifier using information shared from the payload during the establishment of the secure channel;

generating, by the owner device, a key initiator and persistently storing at the owner device the key initiator associated to the payload identifier;

sending, by the owner device, the payload identifier and the key initiator to the payload;

using the key initiator, by the payload, to encrypt data;

persistently storing, by the payload, the encrypted data and the payload identifier; and

encrypting, by the owner device, the payload identifier using a first encryption key before sending it to the payload for its persistent storing in encrypted form.

2 . The method according to claim 1 , wherein either:

the key initiator is a symmetric key, or

the key initiator is first passed through a key derivation function, KDF, by the payload, to generate a symmetric key that encrypts the data.

3 . The method according to claim 1 , wherein the key initiator is passed through a key derivation function, KDF, by the payload, to generate a Message Authentication Code (MAC) that allows the payload to subsequently check the integrity of the persistently stored data.

4 . The method according to claim 1 , wherein the secure channel between the owner device and the software payload is backed by a computation, by the HW TEE, of an attestation, and wherein the payload identifier is derived from the attestation information such as at least one of information relative to the HW TEE, the version of the payload, and the instantiation of the payload.

5 . A computer-implemented method to retrieve data persistently stored by a payload of an owner device according to claim 1 , the method comprising the following steps:

having established or re-establishing a secure channel between the owner device and the software payload itself when running into the HW TEE at the instance of a cloud service provider;

retrieving, by the payload, the stored payload identifier and sending it to the owner device;

retrieving, by the owner device, the key initiator associated to the received payload identifier;

sending, by the owner device, the key initiator to the payload; and

using the key initiator, by the payload, to decrypt the persistently stored data.

6 . The method according to claim 5 , wherein the stored payload identifier had been previously encrypted by the owner device using the first encryption key, the method comprising the following steps:

sending, by the owner device, the first encryption key to the payload; and

after being retrieved, decrypting, by the payload, the payload identifier and sending it to the owner device.

7 . The method according to claim 5 , wherein the stored payload identifier had been previously encrypted by the owner device using the first encryption key, the method comprising the following steps:

sending, by the payload, the encrypted payload identifier to the owner device;

decrypting, by the owner device, the payload identifier; and

retrieving, by the owner device, the key initiator associated to the decrypted payload identifier.

8 . A system for persistently storing data by a software payload of an owner device, the system comprising:

the owner device of the software payload configured to send the software payload to the a hardware-based trusted executed environment (HW TEE) for its execution, the software payload configured to run into the HW TEE, and the HW TEE operated by a cloud service provider;

wherein the owner device of the software payload and the software payload itself are configured to establish a secure channel between them when the payload is running into the HW TEE at the instance of the cloud service provider;

wherein the owner device is further configured to

generate a payload identifier using information shared from the payload during the establishment of the secure channel;

generate a key initiator;

persistently store at the owner device the key initiator associated to the payload identifier;

send the payload identifier and the key initiator to the payload; and

encrypt the payload identifier using a first encryption key before sending it to the payload for its persistent storing in encrypted form; and

wherein the payload is further configured to

use the key initiator to encrypt data; and

persistently store the encrypted data and the payload identifier.

9 . An owner device of a software payload for persistently storing data by the software payload, the owner device of the software payload configured to send the software payload to a hardware-based trusted executed environment (HW TEE) for its execution, wherein the owner device is further configured to

establish a secure channel with the payload when the payload is running into the HW TEE at the instance of a cloud service provider;

generate a payload identifier using information shared from the payload during the establishment of the secure channel;

generate a key initiator;

persistently store at the owner device the key initiator associated to the payload identifier;

send the payload identifier and the key initiator to the payload which will use the key initiator to encrypt data and persistently store it and the payload identifier; and

encrypt the payload identifier using a first encryption key before sending it to the payload for its persistent storing in encrypted form.