Apparatus and method for secure program upgrade
First Claim
1. A method of upgrading a program stored on an appliance, comprising:
- receiving from a communication link an encrypted update file at an external interface of an appliance;
storing the encrypted update file on an open portion of a memory accessible through the external interface;
isolating the appliance from the communication link thereby preventing the appliance from communicating via the communications link;
while the appliance is isolated from the communications link, decrypting the encrypted update file;
while the appliance is isolated from the communications link, modifying at least a portion of a program stored on a hidden portion of memory based at least in part on the decrypted update file;
while the appliance is isolated from the communications link and after modifying the at least a portion of the program, deleting the decrypted update file from the open portion of memory; and
after deleting the decrypted update file, re-establishing communication between the communication link and the appliance;
wherein the hidden portion of memory is inaccessible through the external interface.
1 Assignment
0 Petitions
Accused Products
Abstract
An appliance includes a memory having at least a hidden partition of memory. The hidden partition of memory operates to store at least a portion of a program capable of contributing to one or more functions of the appliance. The appliance also includes a controller operable to process at least a portion of the program stored on the hidden portion of memory. The appliance further includes an external interface operable to provide access to at least an open portion of the memory. In one particular embodiment, the hidden portion of memory is inaccessible through the external interface. After modifying the at least a portion of the program, a decrypted update file is deleted from the open portion of memory and the external interface may be reestablished.
53 Citations
6 Claims
-
1. A method of upgrading a program stored on an appliance, comprising:
-
receiving from a communication link an encrypted update file at an external interface of an appliance; storing the encrypted update file on an open portion of a memory accessible through the external interface; isolating the appliance from the communication link thereby preventing the appliance from communicating via the communications link; while the appliance is isolated from the communications link, decrypting the encrypted update file; while the appliance is isolated from the communications link, modifying at least a portion of a program stored on a hidden portion of memory based at least in part on the decrypted update file; while the appliance is isolated from the communications link and after modifying the at least a portion of the program, deleting the decrypted update file from the open portion of memory; and after deleting the decrypted update file, re-establishing communication between the communication link and the appliance; wherein the hidden portion of memory is inaccessible through the external interface. - View Dependent Claims (2, 3, 4, 5, 6)
-
Specification