Trusting an Unverified Code Image in a Computing Device
AssigneeApple Inc.
InventorsJoshua de Cesare, Michael Smith, Dallas Blake De Atley, John Andrew Wright
Life of this patent
Estimating the term…
Abstract
A method and an apparatus for configuring a key stored within a secure storage area (e.g., ROM) of a device including one of enabling and disabling the key according to a predetermined condition to execute a code image are described. The key may uniquely identify the device. The code image may be loaded from a provider satisfying a predetermined condition to set up at least one component of an operating environment of the device. Verification of the code image may be optional according to the configuration of the key. Secure execution of an unverified code image may be based on a configuration that disables the key.
Claims25
A computer implemented method, comprising:
- configuring a key stored within a ROM of a device including one of enabling and disabling the key according to a predetermined condition, the key uniquely identifying the device;
- and
- executing a code image from a provider to set up at least one component of an operating environment of the device, the provider satisfying the predetermined condition, wherein the code image is optionally verified based on the configuration of the key.
A machine-readable medium having instructions stored therein, which when executed by a machine, cause the machine to perform a method, the method comprising:
- configuring a key stored within a ROM of a device including one of enabling and disabling the key according to a predetermined condition, the key uniquely identifying the device;
- and
- executing a code image from a provider to set up at least one component of an operating environment of the device, the provider satisfying the predetermined condition, wherein the code image is optionally verified based on the configuration of the key.
An apparatus, comprising:
- means for configuring a key stored within a ROM of a device including one of enabling and disabling the key according to a predetermined condition, the key uniquely identifying the device;
- and
- means for executing a code image from a provider satisfying the predetermined condition, wherein the code image is optionally verified based on the configuration of the key.
A computer implemented method, comprising:
- executing an initialization code from a secure ROM (read-only memory) of a portable device to locate an executable image stored in a memory associated with the portable device;
- determining whether the memory of the portable device includes data stored therein indicating that the executable image satisfying a predetermined condition;
- executing the executable image without verifying the executable image to establish an operating environment of the portable device, if the executable image satisfies the predetermined condition;
- verifying the executable image using a key embedded within secure ROM if the executable image does not satisfy the predetermined condition, the key uniquely identifying the portable device;
- and
- upon successfully verifying the executable image, executing the executable image to establish the operating environment of the portable device.
A machine-readable medium having instructions therein, which when executed by a machine, cause a machine to perform a method, the method comprising:
- executing an initialization code from a secure ROM (read-only memory) of a portable device to locate an executable image stored in a memory associated with the portable device:
- determining whether the memory of the portable device includes data stored therein indicating that the executable image satisfying a predetermined condition;
- executing the executable image without verifying the executable image to establish an operating environment of the portable device, if the executable image satisfies the predetermined condition;
- verifying the executable image using a key embedded within secure ROM if the executable image does not satisfy the predetermined condition, the key uniquely identifying the portable device;
- and
- upon successfully verifying the executable image, executing the executable image to establish the operating environment of the portable device.
A computer implemented method, comprising:
- configuring a key stored within a ROM of a device including one of enabling and disabling the key, the key uniquely identifying the device;
- and
- executing a code image to set up at least one component of an operating environment of the device, wherein the code image is optionally verified based on the configuration of the key.
A computer implemented method, comprising:
- enabling or disabling a key stored within a ROM of a device according to a condition, the key uniquely identifying the device;
- and
- executing a code image from a provider to set up at least one component of an operating environment of the device, the provider satisfying the condition, wherein the code image is optionally verified based on the configuration of the key.
A computer implemented method, comprising:
- optionally verifying a code image based on a configuration of a key stored within a secure storage area of a device, the key uniquely identifying the device;
- and
- upon successfully verifying the code image, executing the code image to set up at least one component of an operating environment of the device,
Dependencies are inferred from the claim text.