abstract |
An integrated circuit is provided. The IC runs a boot program that verifies programs before the programs can be loaded onto, or run by, the IC by verifying whether the programs are signed with a boot key, verifies, with the boot program, a developmental boot program signed with the boot key which verifies developmental programs before the developmental programs can be loaded onto, or run by, the IC by verifying whether the IC has a predetermined identifier, and loads the verified developmental boot program and run the loaded developmental booth program thereby enabling loading or running of the developmental programs on the IC if the IC has the predetermined identifier. The IC is programmed with program code configured to receive encrypted software data, decrypt the software data, and validate the software data. The decrypted software is executed only when the validation is successful. |