Patent ID: 11934516
Assignee: AXIS AB
Field: Digital communication (Electrical engineering)
Classification: CPC G  H | IPC G  H

Claim 8:
9. A system comprising:
a first device comprising a processor and a memory configured to run a trusted execution environment, and a secure application framework configured to be run in the trusted execution environment, to control all input to and output from an untrusted processing application running in the trusted execution environment, and to execute:
an encrypted data receiving function configured to receive data encrypted using a first random key;
a secure key receiving function configured to receive the first random key in a secure way;
a data decrypting function configured to decrypt the encrypted data using the first random key, thereby obtaining the data;
an inputting function configured to input the data to the untrusted processing application;
an executing function configured to execute the untrusted processing application to process the input data; and

an output data receiving function configured to receive output data from the untrusted processing application, wherein the output data are unencrypted;
a second random key generating function configured to generate a second random key;
an output data encrypting function configured to encrypt the output data using the second random key;
a second random key encrypting function configured to encrypt the second random key using a public key of a storage device;
a sending function configured to send the encrypted output data and the encrypted second random key to the storage device, wherein the storage device is located outside the trusted execution environment, and

a second device comprising a secure module configured to execute:
a storage device key generating function configured to generate a private/public key pair for the storage device;
an encrypted key receiving function configured to receive the first random key encrypted using the public key of the storage device;
a first random key decrypting function configured to decrypt the first random key using the private key of the storage device; and
a secure key sending function configured to send the first random key in a secure way to the secure application framework,

wherein the secure application framework is further configured to execute:
a processing application key generating function configured to generate a private/public key pair for the untrusted processing application,
wherein the secure key receiving function is further configured to:
receive the first random key encrypted using the public key of the untrusted processing application; and
decrypt the first random key using the private key of the untrusted processing application.