Program development method, program development supporting system, and program installation method
First Claim
1. A method for developing a program which is to be installed in a system having an LSI device, the LSI device having a secure memory which includes an unrewritable area, the method comprising the steps of:
- providing another LSI device having the same structure as that of the LSI device;
setting the provided LSI device to a development mode based on an inherent and permanent key information for the development mode, which is implemented in the unrewritable area of the LSI device in advance, so that the provided LSI device is used as a development LSI device, the development mode being different from a product operation mode employed at the times of program installation and product operation, the inherent and permanent key information for the development mode being different from an inherent and permanent key information for the product operation mode; and
developing the program on the development LSI device.
3 Assignments
0 Petitions
Accused Products
Abstract
An development environment of a high security level is provided for a key-installed system. Development of a program for a system having an LSI device which includes a secure memory is performed by providing another LSI device having the same structure and setting the provided LSI device to a development mode which is different from a product operation mode. Alternatively, the provided LSI device is set to an administrator mode to perform development and encryption of a key-generation program. The LSI device is set to a key-generation mode to execute the encrypted key-generation program, thereby generating various keys.
61 Citations
12 Claims
-
1. A method for developing a program which is to be installed in a system having an LSI device, the LSI device having a secure memory which includes an unrewritable area, the method comprising the steps of:
-
providing another LSI device having the same structure as that of the LSI device; setting the provided LSI device to a development mode based on an inherent and permanent key information for the development mode, which is implemented in the unrewritable area of the LSI device in advance, so that the provided LSI device is used as a development LSI device, the development mode being different from a product operation mode employed at the times of program installation and product operation, the inherent and permanent key information for the development mode being different from an inherent and permanent key information for the product operation mode; and developing the program on the development LSI device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 12)
-
-
8. A program development supporting system for supporting development of an encrypted program which is to be installed in a system having an LSI device, the LSI device having a secure memory which includes an unrewritable area, the system comprising:
-
a development LSI device having the same structure as that of the LSI device on which the encrypted program runs; and an external memory for storing a raw (binary) program, wherein the development LSI device includes a secure memory for storing encrypted common key information regarding a raw common key different from an inherent and permanent key used for product operation mode, which is implemented in the LSI device in advance, and the development LSI device is capable of executing a first step of obtaining the raw common key from the common key information stored in the secure memory, and a second step of encrypting the raw (binary) program input from the external memory using the raw common key.
-
-
9. A program development supporting system for supporting development of an encrypted program, comprising:
-
a development LSI device having the same structure as that of an LSI device on which the encrypted program runs; and an external memory for storing a raw (binary) program, wherein the development LSI device includes a secure memory for storing common key information regarding a raw common key, and the development LSI device is capable of executing a first step of obtaining the raw common key from the common key information stored in the secure memory, and a second step of encrypting the raw (binary) program input from the external memory using the raw common key, wherein; the common key information includes an encrypted common key which is obtained by encrypting the raw common key with a raw first intermediate key and an encrypted first intermediate key which is obtained by encrypting the raw first intermediate key with a second intermediate key; and the first step includes the step of obtaining the raw common key using the encrypted common key, the encrypted first intermediate key and a program encryption seed.
-
-
10. A program development supporting system for supporting development of an encrypted program which is to be installed in a system having an LSI device, the LSI device having a secure memory which includes an unrewritable area, the system comprising:
-
a development LSI device having the same structure as that of an LSI device on which the encrypted program runs; and an external memory for storing a raw (binary) program, wherein the development LSI device includes a secure memory for storing encrypted common key information regarding a raw common key different from an inherent and permanent key used for product operation mode, which is implemented in the LSI device in advance, and a boot ROM for storing a boot program, and by executing the boot program stored in the boot ROM, the development LSI device executes a first step of obtaining a raw common key from the common key information stored in the secure memory, and a second step of encrypting the raw (binary) program input from the external memory using the raw common key.
-
-
11. A program development supporting system for supporting development of an encrypted program, comprising:
-
a development LSI device having the same structure as that of an LSI device on which the encrypted program runs; and an external memory for storing a raw (binary) program, wherein the development LSI device includes a secure memory for storing common key information regarding a raw common key, and a boot ROM for storing a boot program, and by executing the boot program stored in the boot ROM, the development LSI device executes a first step of obtaining a raw common key from the common key information stored in the secure memory, and a second step of encrypting the raw (binary) program input from the external memory using the raw common key, wherein; the common key information includes an encrypted common key which is obtained by encrypting the raw common key with a raw first intermediate key and an encrypted first intermediate key which is obtained by encrypting the raw first intermediate key with a second intermediate key; and the first step includes the step of obtaining the raw common key using the encrypted common key, the encrypted first intermediate key and a program encryption seed.
-
Specification