Patent ID: 8239688

Claim:
A computer implemented method, comprising: verifying if a first code image is certified in a first booting state of a device for booting the device, the first code image stored in a storage of the device, wherein the device transitions from the first booting state to a second booting state for booting the device if the first code image is certified; if the first code image is not certified, sending, in a third booting state of the device, to a host over a communication link a status indicating the third booting state of the device, wherein the device transitions from the first booting state to the third booting state for booting the device if the first code image is not certified; loading, subsequent to the sending of the status, a code image from the host into the device over the communication link in the third booting state of the device, the code image digitally signed by a first signature; in response to receiving a command to execute the code image from the host over the communication link in the third booting state of the device, determining if the code image is certified by verifying the first signature using a fingerprint embedded within a memory of the device, wherein the device in the third booting state is controlled by the host and wherein the device transitions from the third booting state to the second booting state without reentering the first booting state for booting the device if the code image is certified; signing a second signature derived from the code image into a header of the code image if the code image is certified according to the first signature; storing the certified code image including the header signed with the second signature in the storage of the device, the certified code image replacing the first code image in the storage; and executing the certified code image in the second booting state of the device to establish an operating environment of the device without reentering the first booting state of the device.