Microprocessor with program and data protection function under multi-task environment
AssigneeKabushiki Kaisha Toshiba
InventorsKenji Shirakawa, Mikio Hashimoto, Keiichi Teramoto, Satoshi Ozaki, Kensaku Fujimoto
Life of this patent
Estimating the term…
Abstract
In a microprocessor, a program key for decrypting a program and a data key for encrypting/decrypting data processed by the program are handled as cryptographically inseparable pair inside the microprocessor, so that it becomes possible for the microprocessor to protect processes that actually execute the program, without an intervention of the operating system, and it becomes possible to conceal secret information of the program not only from the other user program but also from the operating system.
Claims20
A microprocessor, comprising:
- an instruction decryption processing unit configured to decrypt a program in an encrypted form by using a first encryption key;
- a data encryption/decryption processing unit configured to encrypt/decrypt data processed by the program in a decrypted form by using a second encryption key;
- a key pair management unit connected to the instruction decryption processing unit and the data encryption/decryption processing unit, having a first memory region for storing the first encryption key and the second encryption key in correspondence as a key pair;
- and
- a second memory region for storing an identifier for identifying the key pair, along with related data of the program.
A data protection method for a microprocessor, the data protection method comprising:
- decrypting a program in an encrypted form by using a first encryption key;
- generating a second encryption key corresponding to the first encryption key, for encrypting/decrypting data processed by the program in a decrypted form;
- storing the first encryption key and the second encryption key in correspondence as a key pair;
- giving an identifier for identifying the key pair, to the key pair;
- and
- reading out the second encryption key according to the identifier, encrypting the data by using the second encryption key and saving the data in an encrypted form to an external memory when an exception occurs during an execution of the program.
Dependencies are inferred from the claim text.