IP Library Granted Patent US 6,959,391
Granted Patent B1
US 6,959,391 · App. 09/926,376 · Granted Oct 25, 2005

Protection of the core part of computer against external manipulation

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 6,959,391
App. No.
09/926,376
Granted
Oct 25, 2005
Kind
B1
Abstract

A method is proposed for protecting the central processing unit of a computer, in particular a smart card. Individual security-related registers are logically combined to form a check sum after the CPU has executed an instruction. The check sum is stored and compared with an accordingly formed check sum before the onset of processing of the next instruction. If the compared check sums fail to match, this indicates manipulation of the register contents of the CPU in the time period between the execution of the two instructions. In such a case a corresponding error message is issued and the processor stopped or the card confiscated.

Claims (21)

1. A method for protecting a computer with a central processing unit (CPU) and a clock signal supply providing a clock signal to the CPU from external manipulation, comprising the steps of:

determining a final check sum by mathematical combination with reference to register contents of the CPU arising at the end of processing of an instruction by the CPU,

storing the final check sum, and

determining an initial check sum with reference to the register contents arising before the onset of processing of the next instruction by the CPU, and creating an error message if the initial check sum does not match the final check sum.

2. The method according to claim 1 , wherein upon loading of the instruction a counter is started for counting clock cycles necessary for executing the instruction and outputting an error signal when the predetermined clock cycles are overshot or undershot.

3. The method according to claim 2 , wherein the error signal triggers an interrupt or leads to discontinuance of the clock signal supply.

4. The method according to claim 2 , wherein the number of clock cycles necessary for executing an instruction is derived from the opcode of the instruction by a logic circuit.

5. The method according to claim 1 , wherein the mathematical combination takes place by means of exclusive-OR combination of the register contents.

6. The method according to claim 1 , wherein the initiation of the method is triggered by random or defined events.

7. The method according to claim 6 , wherein the method is triggered in time-dependent fashion.

8. The method according to claim 6 , wherein the method is triggered when the content of one or more registers of the CPU corresponds to a predetermined pattern.

9. The method according to claim 6 , wherein the method is triggered after processing of a predetermined number of instructions.

10. A central processing unit (CPU) for a computer for carrying out the method according to claim 1 , comprising:

a combination of several registers of the CPU by logic elements to form a check sum,

a check sum memory for storing a first check sum determined by the logic elements,

a comparer for comparing a second check sum determined by the logic elements with the first check sum stored in the memory, and

a control device for controlling the storage of the first check sum in the check sum memory and for controlling the comparer.

11. The central processing unit according to claim 10 , including a counter for counting the clock cycles required for an instruction execution.

12. The central processing unit according to claim 10 , including a logic circuit arranged to determine from the opcode of the instruction the clock cycles necessary for executing an instruction.

13. A computer comprising a central processing unit made according to claim 10 .

14. A smart card comprising a central processing unit made according to claim 10 .

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2017
From: GIESECKE & DEVRIENT GMBH
To: GIESECKE+DEVRIENT MOBILE SECURITY GMBH
Reel/Frame 044559/0969 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2001
From: BALDISCHWEILER, MICHAEL
To: GIESECKE & DEVRIENT GMBH
Reel/Frame 012378/0463 →