Patent ID: 7546468

Claim:
A method for updating a program in a system including an LSI device and an external memory, the method comprising: a step of transmitting by the system an ID, which is implemented before the program update, of the LSI device and an application ID which is identification information of an update object program to a server; a step of determining by the server whether or not the update object program may be transmitted based on the transmitted ID and application ID, and transmitting by the server additional information of the update object program if it is determined that the update object program may be transmitted; a step of determining by the system whether or not program update is possible based on the transmitted additional information, and requesting by the system that the server to transmit a common key-encrypted program generated by encryption with a common key if it is determined that program update is possible; a step of receiving by the system the common key-encrypted program transmitted from the server; a step of decrypting by the system the received common key-encrypted program to generate a raw program; a step of re-encrypting by the system the raw program with an inherent key unique to the LSI device and storing the re-encrypted program in the external memory as a new inherent key-encrypted program; a step of determining whether updating the program was successfully performed; and a step of deleting old program from a secure memory and writing information about the update object program into the secure memory if it is determined that updating the program was successfully performed.