IP Library Granted Patent US 8,181,040
Granted Patent B2
US 8,181,040 · App. 12/367,076 · Granted May 15, 2012

Program execution device

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,181,040
App. No.
12/367,076
Granted
May 15, 2012
Kind
B2
Abstract

A program execution device capable of protecting a program against unauthorized analysis and alteration is provided. The program execution device includes an execution unit, a first protection unit, and a second protection unit. The execution unit executes a first program and a second program, and is connected with an external device that is capable of controlling the execution. The first protection unit disconnects the execution unit from the external device while the execution unit is executing the first program. The second protection unit protects the first program while the execution unit is executing the second program.

Claims (31)

1. An information processing device comprising:

a storing unit operable to store a first set of program instructions including one or more program instructions for detecting a tampering, and a second set of program instructions; and

a control unit operable to (i) read the one or more program instructions of the first set of program instructions from the storing unit and store the one or more read program instructions in a protected memory, the protected memory being protected such that an external device is unable to observe content of the memory, (ii) judge whether or not at least part of the second set of program instructions is tampered with, by executing the one or more program instructions of the first set of program instructions with use of the protected memory, and (iii) execute, when judging negatively, one or more program instructions of the second set of program instructions.

2. The information processing device of claim 1 , further comprising,

a key storing unit operable to store (i) a first key to which access is permitted only by executing one or more program instructions of the first set of program instructions; and (ii) a second key which has been encrypted using the first key.

3. The information processing device of claim 2 , wherein

the first key is unique to the information processing device.

4. The information processing device of claim 1 , further comprising:

an interface operable to connect the control unit to the external device; and

a disconnecting unit operable to disconnect the control unit from the interface, wherein

the first set of program instructions includes one or more program instructions for disconnecting the control unit from the external device by causing the disconnecting unit to disconnect the control unit from the interface.

5. The information processing device of claim 1 , wherein

the one or more program instructions of the first set of program instructions executed by the control unit judge whether or not the at least part of the second set of program instructions is tampered with, by (i) calculating a hash value of the at least part of the second set of program instructions, and (ii) comparing the calculated hash value with a tamper detection value, the tamper detection value being a hash value which has been pre-calculated for the at least part of the second set of program instructions.

6. The information processing device of claim 4 , wherein

the information processing device operates in one of a plurality of operation modes, and

the control unit changes the operation mode of the information processing device to, (i) when one or more program instructions of the first set of program instructions are to be executed, a first mode in which the content of the memory is protected from being observed by the external device, and (ii) when the one or more program instructions of the second set of program instructions are to be executed, a second mode in which the content of the memory is not protected from being observed by the external device.

7. The information processing device of claim 1 , wherein

the first set of program instructions includes one or more other program instructions for managing a key used for decrypting encrypted digital content.

8. The information processing device of claim 1 , wherein

the second set of program instructions includes one or more other program instructions for decrypting encrypted digital content using a decryption key.

9. A non-transitory computer readable recording medium having stored thereon a program used by an information processing device,

the information processing device including a storing unit operable to store a first set of program instructions which includes one or more program instructions for detecting a tampering, and a second set of program instructions, and

the program causing the information processing device to perform at least the steps of:

reading the one or more program instructions of the first set of program instructions from the storing unit and storing the one or more read program instructions in a protected memory, the protected memory being protected such that an external device is unable to observe content of the memory,

judging whether or not at least part of the second set of program instructions is tampered with, by executing the one or more program instructions of the first set of program instructions with use of the protected memory; and

executing, when the judgment is negative, one or more program instructions of the second set of program instructions.

10. A method for an information processing device, the information processing device including a storing unit operable to store a first set of program instructions including one or more program instructions for detecting a tampering, and a second set of program instructions, and

the method comprising the steps of:

reading the one or more program instructions of the first set of program instructions from the storing unit and storing the one or more read program instructions in a protected memory, the protected memory being protected such that an external device is unable to observe content of the memory,

judging whether or not at least part of the second set of program instructions is tampered with, by executing the one or more program instructions of the first set of program instructions with use of the protected memory; and

executing, when the judgment is negative, one or more program instructions of the second set of program instructions.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2023
From: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
To: PANASONIC HOLDINGS CORPORATION
Reel/Frame 063237/0143 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2014
From: PANASONIC CORPORATION
To: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
Reel/Frame 033182/0895 →