Flash update using a trusted platform module
View Patent ↗An update utility requests a signature verification of the utility's signature along with a request to unlock the flash memory stored in the utility. A trusted platform module (“TPM”) performs a signature verification of the utility using a previously stored public key. Upon verification of the signature, the TPM unlocks the flash memory to permit update of the utility. Upon completion of the update, the flash utility issues a lock request to the TPM to relock the flash memory.
1. A method for updating a program in a data processing system comprising the steps of:
requesting a trusted platform module (“TPM”) to perform a signature verification of an update to the program;
the TPM performing the signature verification of the update to the program;
if the signature verification of the update to the program is successful, using the TPM for unlocking a memory unit storing the program; and
modifying the program with the update to the program in response to the unlocking of the memory unit storing the program.
2. The method as recited in claim 1 , further comprising the step of:
locking the memory unit after the modifying step.
3. The method as recited in claim 2 , wherein the locking step is performed by the TPM.
4. A computer program product for storage on a computer readable medium and operable for updating a BIOS stored in a flash memory in a data processing system, comprising:
a BIOS update application program receiving an updated BIOS image;
the BIOS update application requesting a TPM to perform a signature verification of the updated BIOS image;
a TPM program receiving the request from the BIOS update application to perform the signature verification of the updated BIOS image;
the TPM program performing the signature verification of the updated BIOS image and posting a result of the signature verification of the updated BIOS image to the BIOS update application;
if the result of the signature verification of the updated BIOS image determines that the updated BIOS image is authentic, then the TPM program unlocks the flash memory; and
the BIOS update application modifies the BIOS with the updated BIOS image.
5. The computer program product as recited in claim 4 , further comprising:
programming for locking the flash memory after the BIOS update application modifies the BIOS with the updated BIOS image.
6. The computer program product as recited in claim 5 , further comprising:
if the result of the signature verification of the updated BIOS image determines that the updated BIOS image is not authentic, then an error message is output.
7. A data processing system having circuitry for updating a BIOS stored in a flash memory in the data processing system, comprising:
input circuitry for receiving an updated BIOS image;
circuitry for requesting a TPM to perform a signature verification of the updated BIOS image;
the TPM performing the signature verification of the updated BIOS image;
the TPM unlocking the flash memory if the signature verification of the updated BIOS image determines that the updated BIOS image is authentic; and
circuitry for modifying the BIOS with the updated BIOS image.
8. The system as recited in claim 7 , further comprising:
circuitry for locking the flash memory after the BIOS is modified with the updated BIOS image.
9. The system as recited in claim 7 , further comprising:
circuitry for outputting an error if the signature verification of the updated BIOS image determines that the updated BIOS image is not authentic.