IP Library › Granted Patent US 12,339,974
Granted Patent B2
US 12,339,974 · App. 17/565,079 · Granted Jun 24, 2025

Methods and apparatus for provisioning a device

Inventors: Brendan James Moran (Histon, GB); Hanno Becker (Cambridge, GB)
Assignee: Arm Limited
G06F21/602G06F21/572G06F21/64G06F21/107
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,339,974
App. No.
17/565,079
Granted
Jun 24, 2025
Kind
B2
Abstract

Aspects of the present disclosure relate to an apparatus comprising interface circuitry to interface with a device that is to be provisioned by the apparatus; and secure enclave circuitry. The secure enclave circuitry is configured to: maintain provisioning data with which the device is to be provisioned; establish a secure connection with the device; perform, with the device and via the secure connection, an attestation process in respect of said provisioning data; and subsequent to successfully completing said attestation process, provisioning the device with the provisioning data, via the secure connection.

Claims (74)

1. An apparatus comprising:

interface circuitry to interface with a device that is to be provisioned by the apparatus as part of an initial configuration process of the device; and

secure enclave circuitry to:

maintain provisioning data with which the device is to be provisioned, the provisioning data comprising cryptographic entropy data to be used by the device to generate at least one cryptographic key;

establish a secure connection with the device;

perform in response to an attestation request received from the device, with the device and via the secure connection, an attestation process, and determine whether said cryptographic entropy data has not been tampered with based on the attestation process; and

subsequent to successfully completing said attestation process, provisioning the device with the cryptographic entropy data, via the secure connection;

wherein the secure enclave circuitry is configured to, as part of the attestation process:

generate first attestation evidence data indicative of the provisioning data;

transmit the first attestation evidence data to an attestation verification entity;

receive, from the attestation verification entity, first attestation verification data in respect of the first attestation evidence data; and

transmit the first attestation verification data to the device; and

wherein the secure enclave circuitry is configured to perform, with the device, an attestation process in respect of the device, and the secure enclave circuitry is configured, to, as part of the attestation process in respect of the device:

receive second attestation evidence data from the device, the second attestation evidence data being indicative of functionality of the device;

transmit the second attestation evidence to the attestation verification entity; and

receive, from the attestation verification entity in response to the second attestation evidence data, second attestation verification data in respect of the second attestation evidence data.

2. An apparatus according to claim 1 , wherein said first attestation evidence data comprises at least one of:

data indicative of the provisioning data; and

data indicative of computer instructions to be executed by the secure enclave circuitry to generate the provisioning data.

3. An apparatus according to claim 1 , wherein at least part of the first attestation verification data is cryptographically signed by the attestation verification entity.

4. An apparatus according to claim 1 , comprising device programming circuitry to provision the device with functionality data defining at least one of:

secure connection functionality to establish said secure connection with the apparatus; and

attestation functionality to perform said attestation process with the apparatus.

5. An apparatus according to claim 4 , wherein the functionality data comprises at least one of:

a firmware image;

a read-only memory, ROM, image; and

a bootloader.

6. An apparatus according to claim 4 , wherein the functionality data is verifiable, by the device, based on verification data stored by the device.

7. An apparatus according to claim 1 , wherein the provisioning data comprises secure configuration data including at least one cryptographic key to be used by the device.

8. A method comprising:

establishing a connection with secure enclave circuitry of a provisioning apparatus;

performing in response to an attestation request received from a device, with the secure enclave circuitry and via the connection, an attestation process, and determining whether provisioning data comprising cryptographic entropy data to be received from the secure enclave has not been tampered with based on the attestation process, the cryptographic entropy data to be used by the device to generate at least one cryptographic key;

subsequent to successfully completing said attestation process, receiving the cryptographic entropy data via the connection; and

installing the cryptographic entropy data as part of an initial configuration process of the device;

wherein the attestation process comprises:

generating first attestation evidence data indicative of the provisioning data;

transmitting the first attestation evidence data to an attestation verification entity;

receiving, from the attestation verification entity, first attestation verification data in respect of the first attestation evidence data; and

transmitting the first attestation verification data to the device; and

performing an attestation process in respect of the device, the attestation process in respect of the device comprising:

receiving second attestation evidence data from the device, the second attestation evidence being indicative of functionality of the device;

transmitting the second attestation evidence data to the attestation verification entity; and

receiving, from the attestation verification entity in response to the second attestation evidence data, second attestation verification data in respect of the second attestation evidence data.

9. A method according to claim 8 , wherein the method further comprises:

generating local entropy data;

generating a cryptographic key based on the cryptographic entropy data and the local entropy data; and

using the cryptographic key to establish a secure connection with the secure enclave circuitry.

10. A method according to claim 8 comprising, responsive to a failure of the attestation process, blocking installation of the provisioning data.

11. A method according to claim 8 , comprising:

receiving, from device programming circuitry of the provisioning apparatus, functionality data defining at least one of:

secure connection functionality to perform said establishing the secure connection with the apparatus; and

attestation functionality to perform said attestation process with the apparatus, and

installing said functionality data to permit performance of said at least one of the secure connection functionality and the attestation functionality.

12. A method according to claim 11 , comprising verifying said functionality data based on pre-stored verification data.

13. A method according to claim 12 , comprising receiving and pre-storing said verification data as part of a manufacturing process prior to communication with the provisioning apparatus.

14. A system comprising:

a device that is to be provisioned by an apparatus; and

said apparatus, comprising:

interface circuitry to interface with a device that is to be provisioned by the apparatus as part of an initial configuration process of the device; and

secure enclave circuitry to:

maintain provisioning data with which the device is to be provisioned, the provisioning data comprising cryptographic entropy data to be used by the device to generate at least one cryptographic key;

establish a secure connection with the device;

perform in response to an attestation request received from the device, with the device and via the secure connection, an attestation process, and determine whether said cryptographic entropy data has not been tampered with based on the attestation process; and

subsequent to successfully completing said attestation process, provisioning the device with the cryptographic entropy data, via the secure connection;

wherein the secure enclave circuitry is configured to, as part of the attestation process:

generate first attestation evidence data indicative of the provisioning data;

transmit the first attestation evidence data to an attestation verification entity;

receive, from the attestation verification entity, first attestation verification data in respect of the first attestation evidence data; and

transmit the first attestation verification data to the device; and

wherein the secure enclave circuitry is configured to perform, with the device, an attestation process in respect of the device, and the secure enclave circuitry is configured, to, as part of the attestation process in respect of the device:

receive second attestation evidence data from the device, the second attestation evidence being indicative of functionality of the device;

transmit the second attestation evidence data to the attestation verification entity; and

receive, from the attestation verification entity in response to the second attestation evidence data, second attestation verification data in respect of the second attestation evidence data,

wherein said device is configured to install said cryptographic entropy data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 29, 2021
From: MORAN, BRENDAN JAMES; BECKER, HANNO
To: ARM LIMITED
Reel/Frame 058502/0964 →
Continuity (1)
Related Publication 20230205895A1 · Jun 29, 2023
References Cited (21)
US 10602353B1 · Berdy · 2020 [cited by examiner]
US 20060075077A1 · Brookner · 2006 [cited by examiner]
US 20100287547A1 · Korkishko · 2010 [cited by examiner]
US 20120137137A1 · Brickell · 2012 [cited by examiner]
US 20140208105A1 · Carapelli · 2014 [cited by examiner]
US 20140250215A1 · Bowen · 2014 [cited by examiner]
US 20140380432A1 · Niu · 2014 [cited by examiner]
US 20150121072A1 · Choi · 2015 [cited by examiner]
US 20150277930A1 · Sarangdhar · 2015 [cited by examiner]
US 20180176229A1 · Bathen · 2018 [cited by examiner]
US 20190207813A1 · Uehara · 2019 [cited by examiner]
US 20190268308A1 · Sinha · 2019 [cited by examiner]
US 20200026857A1 · Muller · 2020 [cited by examiner]
US 20200304299A1 · Medvinsky · 2020 [cited by examiner]
US 20200344075A1 · Gremaud · 2020 [cited by examiner]
US 20210203649A1 · Touitou · 2021 [cited by examiner]
US 20210328971A1 · Bandi · 2021 [cited by examiner]
US 20210374232A1 · Bursell · 2021 [cited by examiner]
US 20230088197A1 · Cline · 2023 [cited by examiner]
US 20230142278A1 · Elbert · 2023 [cited by examiner]
Zhang Z, Pei Q, Ma J, Yang L. Implementing trustworthy dissemination of digital contents by using a third party attestation proxy-enabling remote attestation model. In2008 International Conference on MultiMedia and Info… [cited by examiner]
Cited By (1)
US 12,475,262