DE10122505A1 - Verfahren zum Schützen eines Rechners gegen Manipulation von Registerinhalten und Rechner zum Durchführen des Verfahrens - Google Patents
Verfahren zum Schützen eines Rechners gegen Manipulation von Registerinhalten und Rechner zum Durchführen des VerfahrensInfo
- Publication number
- DE10122505A1 DE10122505A1 DE10122505A DE10122505A DE10122505A1 DE 10122505 A1 DE10122505 A1 DE 10122505A1 DE 10122505 A DE10122505 A DE 10122505A DE 10122505 A DE10122505 A DE 10122505A DE 10122505 A1 DE10122505 A1 DE 10122505A1
- Authority
- DE
- Germany
- Prior art keywords
- register
- protected
- copy
- computer
- contents
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/0806—Details of the card
- G07F7/0813—Specific details related to card security
- G07F7/082—Features insuring the integrity of the data on or in the card
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
- Hardware Redundancy (AREA)
- Executing Machine-Instructions (AREA)
- Retry When Errors Occur (AREA)
Abstract
Zum Schützen eines Rechners vor Manipulation von Registerinhalten werden für zu schützende Register (6; PC) Kopien in getrennten Redundanz-Registern (10a-10c) angelegt. Bei jeder Befehlsausführung erfolgt ein Vergleich des Inhalts des zu schützenden Registers mit dessen Kopie. Nur bei Übereinstimmung der Registerinhalte erfolgt die Ausführung des Befehls. Bei Nichtübereinstimmung der Registerinhalte wird dies als Hinweis auf eine erfolgte Manipulation des Inhalts des zu schützenden Registers interpretiert, und es wird eine Fehlerbehandlung durchgeführt.
Description
Die Erfindung betrifft ein Verfahren zum Schützen eines Rechners,
insbesondere eines Mikrocontrollers (µC) oder eines Mikroprozessors (µP)
gegen Manipulation von Registerinhalten. Außerdem betrifft die Erfindung
eine Chipkarte, die von einem solchen Verfahren bzw. einem solchen
Rechner Gebrauch macht.
Der Schutz von Teilen eines Rechners gegen Manipulation ist in vielen
Anwendungsfällen für einen sinnvollen Einsatz eines Rechners unerläßlich,
so zum Beispiel bei mit Rechnern ausgestatteten Chipkarten. Es ist bekannt,
Register gegen eine Manipulation durch Datenverschlüsselung zu schützen.
Aus der DE 199 18 620 A1 ist ein Verfahren zum Schützen eines Rechners vor
Manipulation bekannt, bei dem jeweils nach Ausführung eines
Programmbefehls durch eine zentrale Verarbeitungseinheit eine logische
Verknüpfung verschiedener Registerinhalte durchgeführt wird,
insbesondere eine XOR-Verknüpfung, das Ergebnis dieser Verknüpfung in
einem Speicher abgelegt wird, um dann vor der Ausführung des nächsten
Befehls die gleiche Verknüpfung für die Inhalte derselben Register
durchzuführen und das dann erhaltene Verknüpfungsergebnis mit dem
zuvor abgespeicherten Verknüpfungsergebnis zu vergleichen. Dieses
Verfahren hat sich bewährt.
Durch die vorliegende Erfindung soll ein alternatives Verfahren zum
Schützen eines Rechners der eingangs genannten Art angegeben werden.
Zu diesem Zweck schafft die Erfindung ein Verfahren zum Schützen eines
Rechners gegen Manipulation von Registerinhalten, indem von dem Inhalt
eines zu schützenden Registers eine Kopie angelegt wird und der Inhalt des
zu schützenden Registers mit dessen Kopie bedarfsweise verglichen wird.
Bedarfsweises Vergleichen heißt zum Beispiel insbesondere, daß bei jeder
Ausführung eines Befehls der Vergleich durchgeführt wird, um festzustellen,
ob in der Zeitspanne zwischen der Ausführung eines vorausgehenden
Befehls und der jetzt anstehenden Befehlsausführung eine Manipulation des
Inhalts des zu schützenden Registers erfolgt ist. Damit läßt sich der Vergleich
zeitlich koppeln mit der Erhöhung des Befehlszählers (programm counter),
dessen Inhalt die abzuarbeitende Befehlsfolge festlegt.
Um zusätzliche Sicherheit zu erhalten, ist in einer bevorzugten
Ausgestaltung der Erfindung vorgesehen, den Inhalt des zu schützenden
Registers in modifizierter Form als Kopie abzulegen. Hierdurch wird
vermieden, daß durch manipulatives Vergleichen von Registerinhalten
bestimmte Register erkannt und damit der Schutz wirkungslos gemacht
wird. Die Modifizierung läßt einen einfachen Vergleich des Inhalts des zu
schützenden Registers mit der Kopie nicht ohne weiteres zu.
Das Modifizieren der Daten kann durch bitweises Invertieren geschehen.
Hierdurch hat die Kopie des Inhalts des zu schützenden Registers dann die
Form des Einer-Komplements des Inhalts des zu schützenden Registers.
Vorteilhaft hierbei ist, daß der Vergleich zum Beispiel durch einfaches
Subtrahieren der Kopie von dem Inhalt des zu schützenden Registers
durchgeführt werden kann. Bei Übereinstimmung ergibt sich durch die
Subtraktion der Wert Null. Ein von Null abweichender Wert bedeutet eine
Verfälschung der Daten in dem zu schützenden Register (oder in der Kopie).
In einer Ausgestaltung der Erfindung ist vorgesehen, daß das zu schützende
Register und/oder das die Kopie enthaltende Register abgeschirmt wird.
Eine solche Abschirmung kann zum Beispiel in der Weise geschehen, daß
das betreffende Register indirekt adressiert wird.
Als besondere Ausgestaltung der Erfindung wird eine Verschleierung der
physikalischen Zusammenhänge zwischen dem zu schützenden Register
und dem für die Kopie angelegten Register vorgeschlagen. Eine solche
Verschleierung kann zum Beispiel in der Weise geschehen, daß das Register
an einer anderen Stelle als das zu schützende Register innerhalb des
Halbleiterspeichers angelegt wird. Das Anlegen des für die Kopie
vorgesehenen Registers an einer von dem zu schützenden Register
getrennten Stelle innerhalb des Halbleiterspeichers kann eine tatsächliche
räumliche Trennung bedeuten, aber auch eine virtuelle oder logische
Trennung durch Modifizierung der Adresse des die Kopie aufnehmenden
Registers.
Besonders bevorzugt wird für den Vergleich der Inhalt des zu schützenden
Registers und des die Kopie aufnehmenden Registers ein Hardware-
Vergleicher, alternativ ein Vergleich durch Mikro-Code. Diese Art des
Vergleichs ist besonders schnell und verzögert den Ablauf bei der
Programmverarbeitung nur unwesentlich. Vergleicher zum Vergleichen von
Registerinhalten Bit für Bit sind bekannt. Alternativ zu dieser Möglichkeit
können die zu vergleichenden Registerinhalte auch durch
Subtraktion/Addition auf Übereinstimmung geprüft werden. Ist die Kopie
eine nicht modifizierte Version des Inhalts des zu schützenden Registers, so
erfolgt eine normale Subtraktion. Bei einem von Null verschiedenen Ergebnis
wird der zentralen Verarbeitungseinheit (CPU) des Rechners signalisiert, daß
eine Manipulation stattgefunden hat. Es können dann besondere
Programmschritte zur Behandlung dieser Manipulations-Erkennung
abgearbeitet werden.
Wird in dem für die Kopie angelegten Register eine invertierte Version des
Inhalts des zu schützenden Registers gespeichert, so läßt sich die Subtraktion
einfach durch bloßes Addieren der beiden Registerinhalte realisieren.
In einer speziellen Ausgestaltung der Erfindung kann die Kopie des Inhalts
des zu schützenden Registers auch nur teilweise manipuliert werden. Man
kann ein acht Bit langes Register auch in zwei gleich lange Abschnitte von je
vier Bits unterteilen, um den ersten Teil unmodifiziert und den zweiten Teil
invertiert als Kopie abzulegen. Bei dem durchzuführenden Vergleich wird
diese besondere Art der Modifikation dann berücksichtigt.
Die Erfindung schafft außerdem einen Rechner in Form eines
Mikrocontrollers oder Mikroprozessors zum Durchführen des oben
beschriebenen Verfahrens. Dieser Rechner enthält einen ersten
Registerspeichersatz mit mindestens einem zu schützenden Register,
weiterhin einen zweiten Registerspeichersatz mit mindestens einem
Redundanz-Register, welches die (eventuell modifizierte) Kopie des zu
schützenden Registerinhalts aufnimmt, weiterhin einen Vergleicher, der die
Registerinhalte bedarfsweise vergleicht, um abhängig vom
Vergleichsergebnis eine Behandlung durch die zentrale Verarbeitungseinheit
des Rechners anzustoßen.
Schließlich schafft die Erfindung auch eine Chipkarte, die mit einem solchen
Rechner ausgestattet ist.
Im folgenden werden Ausführungsbeispiele der Erfindung anhand der
Zeichnung näher erläutert. Es zeigen:
Fig. 1 ein Blockschaltbild eines schematisierten Rechners mit Maßnahmen
zum Schutz vor Manipulation des Inhalts eines oder mehrerer Register;
Fig. 2 ein Blockschaltbild einer Vorrichtung zum Vergleichen der Inhalte
eines zu schützenden Registers und eines Redundanzregisters;
Fig. 3 ein Blockschaltbild einer bezüglich Fig. 2 alternativen
Ausführungsform;
Fig. 4 ein Blockschaltbild einer bezüglich Fig. 2 alternativen
Ausführungsform einer Schaltung zum Vergleichen zweier Registerinhalte.
In Fig. 1 ist in Form eines Blockschaltbilds schematisiert ein Rechner
dargestellt. Die Erfindung betrifft speziell einen Mikrocontroller (µC) oder
einen Mikroprozessor (µP), ist jedoch nicht hierauf beschränkt. Ein spezieller
Anwendungsfall ist die Chipkarte, in deren Chip Inhalte bestimmter Register
vor Manipulation zu schützen sind.
Gemäß Fig. 1 ist in einem als ROM ausgebildeten Programmspeicher 2 ein
abzuarbeitendes Programm gespeichert. Ein auszuführender Befehl wird aus
dem Programmspeicher 2 abhängig vom Inhalt eines Befehlszählers PC
(programm counter) 6 ausgelesen. Der ausgelesene Befehl steht dann in
einem Puffer oder Befehlsregister 4.
Der Befehlszähler 6 ist Teil eines Registersatzes in einem RAM 20. Der
Registersatz ist hier mit 14 bezeichnet und umfaßt außer dem Befehlszähler 6
noch weitere Register R1, R2, . . . sowie ein Zeigerregister (stack pointer) SP.
Die weiteren Register außer dem Befehlszähler 6 sind in Fig. 1 mit dem
Bezugszeichen 8 bezeichnet.
An einer logisch und/oder räumlich von dem Registersatz 14 getrennten
Stelle des RAM 20 befindet sich ein zweiter Registersatz 12 mit - im
vorliegenden Beispiel drei - Redundanz-Registern 10a, 10b und 10c. In diesen
Redundanz-Registern 10a, 10b und 10c werden Kopien des Befehlszählers
(PC'), des Registers R1 (R1') und des Stack-Pointers (SP') abgelegt.
Eine Steuerung 100 (CPU) steht mit dem Programmspeicher 2, dem RAM 20
und dem Befehlsregister 4 über Steuerleitungen in Verbindung, sie ist
außerdem mit dem RAM 20 über eine Busverbindung gekoppelt, hier
schematisch dargestellt in Form eines ABUS, der an den Speicherbereich für
den Registersatz 14 angeschlossen ist, und einen BBUS, der an den
Speicherbereich für den Registersatz 12 angeschlossen ist.
Fig. 2 zeigt schematisch eine Vergleicheranordnung zum Vergleichen des
Befehlszählers PC in dem zu schützenden Register 6 mit der Befehlszähler-
Kopie PC' in dem Redundanz-Register 10a. Die beiden Registerinhalte
werden von einem Subtrahierer 22 subtrahiert. Das Ergebnis ist bei
Übereinstimmung der Registerinhalte Null. Ein davon abweichender Wert
signalisiert, daß eine Manipulation des einen oder des anderen Registers 6,
10a (oder beider Register) stattgefunden hat.
Beim Betrieb des Rechners wird vor dem Auslesen eines Befehls aus dem
Programmspeicher 2 der Befehlszähler PC verglichen mit seiner zuvor in
dem Redundanz-Register 10a abgelegten Kopie PC'. Nur bei
Übereinstimmung wird dann der Lesevorgang des Programmspeichers 2
durchgeführt oder der ausgelesene Befehl, der dann im Befehlsregister 4
steht, tatsächlich ausgeführt. Bei Nichtübereinstimmung von PC und PC'
wird die Ausführung gesperrt, und es erfolgt eine hier nicht näher
interessierende Fehlerroutine.
Bei der Ausführungsform des Vergleichers nach Fig. 2 ist davon
ausgegangen worden, daß die Kopie PC in dem Redundanz-Register 10a
eine exakte Kopie von PC ist.
Alternativ kann man die Kopie aber auch in Form einer modifizierten
Version des Inhalts des zu schützenden Registers ablegen.
Fig. 3 zeigt als Beispiel einer solchen modifizierten Kopie das Ablegen einer
bitweise invertierten Version des Inhalts des Registers R1. Nach jeder
Befehlsausführung wird der Inhalt von R1 bitweise invertiert, hier
schematisch durch einen Negator 26 angedeutet, so daß in dem Redundanz-
Register 10b die bitweise invertierte Version des Registerinhalts von R1 als
Kopie R1' gespeichert ist. Durch das bitweise Invertieren entspricht die
Kopie R1' dann dem Einer-Komplement des Inhalts von R1. Durch Addieren
der beiden Registerinhalte müßte sich bei Übereinstimmung, das heißt bei
nicht erfolgter Manipulation eines Registerinhalts, das Vergleichsergebnis
Null ergeben.
Fig. 4 zeigt eine noch weitere Abwandlung für die Ausbildung des
Vergleichers bzw. das Anlegen einer Kopie des Inhalts eines zu schützenden
Registers, hier wiederum dargestellt anhand des Registers R1.
Nach Fig. 4 ist ein hier mit 30 bezeichnetes Register R1 in zwei gleich lange
Hälften 30a und 30b mit beispielsweise jeweils vier Bits aufgeteilt. Als Kopie
R1' werden die beiden Inhalts-Hälften des Registers 30 einerseits
unverändert als Teilkopie übernommen, andererseits bitweise invertiert. Der
Inhalt der linken Registerhälfte 30a wird unverändert in ein Redundanz-
Register 32, und zwar in dessen linke Hälfte 32a einkopiert. Der Inhalt der
rechten Registerhälfte 30b wird bitweise invertiert in die rechte Hälfte 32b
des Redundanz-Registers 32 geladen, hier durch einen Negator 36
symbolisiert. Die Kopie R1' des Inhalts des zu schützenden Registers ist
demnach eine teilweise identische und teilweise bitweise invertierte Version
des zu schützenden Registerinhalts.
Zur Ausführung des Vergleichs mit Hilfe eines Subtrahierers 40 werden die
jeweils linken Hälften 30a und 32a der Register 30 und 32 subtrahiert, und
von der rechten Hälfte 30b des Registers 30 wird die mit Hilfe eines Negators
34 wiederum bitweise invertierte Version der Daten in der rechten Hälfte 32b
des Registers 32 subtrahiert. Auch hier liegt Übereinstimmung, das heißt
nicht erfolgte Manipulation des zu schützenden Registers nur dann vor,
wenn das Berechnungs- oder Vergleichsergebnis das Resultat Null liefert.
Claims (13)
1. Verfahren zum Schützen eines Rechners, insbesondere eines
Mikrocontrollers (µC) oder Mikroprozessors (µP) gegen Manipulation von
Registerinhalten, gekennzeichnet durch Anlegen einer Kopie (PC') eines zu
schützenden Registers (PC) und bedarfsweises Vergleichen des Inhalts des
zu schützenden Registers und dessen Kopie.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Daten der
Kopie gegenüber dem Inhalt des zu schützenden Registers modifiziert
werden.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß das
Modifizieren durch bitweises Invertieren der Daten erfolgt.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet,
daß das zu schützende Register und/oder das die Kopie enthaltende
Register (10a-10c) abgeschirmt wird/werden.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß das
Abschirmen des Registers durch indirektes Adressieren des Registers erfolgt.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet,
daß eine Verschleierung der physikalischen Zusammenhänge zwischen dem
zu schützenden Register (6, 8) und dem die Kopie enthaltenden Register (10)
vorgenommen wird.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß die
Verschleierung in der Weise erfolgt, daß das Register für die Kopie (PC') an
einer von der Stelle des zu schützenden Registers (6, 8) virtuell oder räumlich
getrennten Stelle angelegt wird.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet,
daß der Vergleich der Inhalte des zu schützenden Registers und der Kopie
(PC')
- a) mittels eines Hardware-Vergleichers (22, 24, 40), oder
- b) durch Mikro-Code
9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet,
daß der Vergleich durch bitweises Vergleichen der Daten vorgenommen
wird.
10. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet,
daß der Vergleich durch Subtraktion der Registerinhalte vorgenommen
wird.
11. Rechner, insbesondere in Form eines Mikrocontrollers oder
Mikroprozessors, zum Durchführen des Verfahrens nach einem der
Ansprüche 1 bis 10, gekennzeichnet durch:
einen ersten Registerspeichersatz (14) mit mindestens einem zu schützenden Register (6, 8);
einen zweiten Registerspeichersatz (12) mit mindestens einem Redundanz-Register (10a-10c) zur Aufnahme einer Kopie des Inhalts eines zu schützenden Registers, und
einen Vergleicher (22, 24, 40), der die Inhalte des zu schützenden Registers und des Redundanz-Registers bedarfsweise vergleicht.
einen ersten Registerspeichersatz (14) mit mindestens einem zu schützenden Register (6, 8);
einen zweiten Registerspeichersatz (12) mit mindestens einem Redundanz-Register (10a-10c) zur Aufnahme einer Kopie des Inhalts eines zu schützenden Registers, und
einen Vergleicher (22, 24, 40), der die Inhalte des zu schützenden Registers und des Redundanz-Registers bedarfsweise vergleicht.
12. Rechner nach Anspruch 11, dadurch gekennzeichnet, daß eine Steuerung
(100) den Vergleicher so steuert, daß er den Vergleich bei jeder
Befehlsausführung des Rechners ausführt.
13. Chipkarte mit einem Rechner nach Anspruch 11 oder 12.
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10122505A DE10122505A1 (de) | 2001-05-10 | 2001-05-10 | Verfahren zum Schützen eines Rechners gegen Manipulation von Registerinhalten und Rechner zum Durchführen des Verfahrens |
EP02735339A EP1410344A2 (de) | 2001-05-10 | 2002-05-06 | Verfahren zum schützen eines rechners gegen manipulation von registerinhalten und rechner zum durchführen des verfahrens |
JP2002588360A JP4537003B2 (ja) | 2001-05-10 | 2002-05-06 | レジスタ内容の不正操作からコンピュータを保護するための方法及びこの方法を実施するためのコンピュータ |
US10/477,140 US7647495B2 (en) | 2001-05-10 | 2002-05-06 | Method for protecting a computer from the manipulation of register contents and a corresponding computer for carrying out this method |
AU2002310806A AU2002310806A1 (en) | 2001-05-10 | 2002-05-06 | Method for protecting a computer from the manipulation of register contents and a corresponding computer for carrying out this method |
PCT/EP2002/004983 WO2002091168A2 (de) | 2001-05-10 | 2002-05-06 | Verfahren zum schützen eines rechners gegen manipulation von registerinhalten und rechner zum durchführen des verfahrens |
RU2003134151/09A RU2310906C2 (ru) | 2001-05-10 | 2002-05-06 | Способ защиты вычислительного устройства от несанкционированного выполнения операций с содержимым его регистров и вычислительное устройство для осуществления этого способа |
CNB028096290A CN1294480C (zh) | 2001-05-10 | 2002-05-06 | 保护计算机寄存器内容免受操纵的方法及执行其的计算机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10122505A DE10122505A1 (de) | 2001-05-10 | 2001-05-10 | Verfahren zum Schützen eines Rechners gegen Manipulation von Registerinhalten und Rechner zum Durchführen des Verfahrens |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10122505A1 true DE10122505A1 (de) | 2002-11-14 |
Family
ID=7684144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10122505A Ceased DE10122505A1 (de) | 2001-05-10 | 2001-05-10 | Verfahren zum Schützen eines Rechners gegen Manipulation von Registerinhalten und Rechner zum Durchführen des Verfahrens |
Country Status (8)
Country | Link |
---|---|
US (1) | US7647495B2 (de) |
EP (1) | EP1410344A2 (de) |
JP (1) | JP4537003B2 (de) |
CN (1) | CN1294480C (de) |
AU (1) | AU2002310806A1 (de) |
DE (1) | DE10122505A1 (de) |
RU (1) | RU2310906C2 (de) |
WO (1) | WO2002091168A2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1591864A2 (de) * | 2004-04-29 | 2005-11-02 | Giesecke & Devrient GmbH | Verfahren zum Schützen von Daten eines Datenträgers gegen DFA-Angriffe |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004037590B4 (de) * | 2004-08-03 | 2006-06-14 | Infineon Technologies Ag | Integrierte Schaltung und Verfahren zum Betrieb einer solchen |
TW200805065A (en) * | 2006-01-17 | 2008-01-16 | Nxp Bv | Region protection unit, instruction set and method for protecting a memory region |
KR100881025B1 (ko) * | 2006-11-07 | 2009-02-05 | 삼성전자주식회사 | 보안 데이터를 관리하는 장치 및 그 방법 |
FR2910145A1 (fr) | 2006-12-18 | 2008-06-20 | St Microelectronics Sa | Procede et dispositif pour securiser la lecture d'une memoire. |
JP4588751B2 (ja) * | 2007-11-13 | 2010-12-01 | 株式会社コナミデジタルエンタテインメント | 記憶処理装置、記憶処理方法、ならびに、プログラム |
US8549260B2 (en) * | 2009-01-29 | 2013-10-01 | Infineon Technologies Ag | Apparatus for processing data and method for generating manipulated and re-manipulated configuration data for processor |
WO2013048420A1 (en) * | 2011-09-29 | 2013-04-04 | Intel Corporation | Bi-directional copying of register content into shadow registers |
US8826440B2 (en) * | 2011-10-19 | 2014-09-02 | Google Inc. | Defensive techniques to increase computer security |
CN103618523A (zh) * | 2013-11-27 | 2014-03-05 | 中国航空工业集团公司第六三一研究所 | 一种基于离散量信号的双通道校验电路及方法 |
CN103853695B (zh) * | 2013-12-10 | 2016-11-02 | 中国航空工业集团公司第六三一研究所 | 一种离散量的上电自检电路 |
EP2993605A1 (de) | 2014-09-02 | 2016-03-09 | Gemalto Sa | System und verfahren zum schutz einer vorrichtung vor angriffen auf verarbeitungsabläufe unter verwendung einer code-zeiger-ergänzung |
JP7476140B2 (ja) | 2021-06-15 | 2024-04-30 | 株式会社東芝 | 情報処理装置、情報処理方法、およびプログラム |
CN117744075A (zh) * | 2023-12-25 | 2024-03-22 | 国创芯科技(江苏)有限公司 | 一种芯片测试模式防护电路及防护方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19701166A1 (de) * | 1997-01-15 | 1998-07-23 | Siemens Ag | Verfahren zur Überwachung der bestimmungsgemäßen Ausführung von Softwareprogrammen |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6159543A (ja) * | 1984-08-31 | 1986-03-27 | Hitachi Ltd | 情報処理装置 |
JPS63167934A (ja) * | 1986-12-29 | 1988-07-12 | Matsushita Electric Ind Co Ltd | レジスタ動的割当方法 |
JPS6419401A (en) * | 1987-07-15 | 1989-01-23 | Toyota Motor Corp | Electronic controller |
JPH04209038A (ja) * | 1990-11-30 | 1992-07-30 | Nec Corp | シングルチップ・マイクロコンピュータ |
US5434970A (en) * | 1991-02-14 | 1995-07-18 | Cray Research, Inc. | System for distributed multiprocessor communication |
JP3178147B2 (ja) * | 1993-03-01 | 2001-06-18 | 株式会社デンソー | バックアップメモリを備えた電子制御装置 |
FR2732133B1 (fr) * | 1995-03-21 | 1997-04-25 | Sgs Thomson Microelectronics | Detecteur de coherence d'informations contenues dans un circuit integre |
US5784577A (en) * | 1996-08-05 | 1998-07-21 | Xilinx Inc | Automated control system for programming PLDs |
US6282501B1 (en) * | 1998-10-20 | 2001-08-28 | Adaptec, Inc. | Disk drive testing |
EP2320318A1 (de) * | 1999-01-28 | 2011-05-11 | ATI Technologies ULC | Ausführung von Programmen für eine erste Rechnerarchitektur auf einem Rechner mit einer zweiten Architektur |
DE19918620A1 (de) * | 1999-04-23 | 2000-10-26 | Giesecke & Devrient Gmbh | Sicherung eines Rechnerkerns gegen äußere Manipulationen |
JP2001022410A (ja) * | 1999-07-08 | 2001-01-26 | Koyo Seiko Co Ltd | プログラマブルコントローラのためのプログラム作成方法、およびプログラム作成装置、ならびにプログラム作成プログラムを記録した記録媒体 |
-
2001
- 2001-05-10 DE DE10122505A patent/DE10122505A1/de not_active Ceased
-
2002
- 2002-05-06 JP JP2002588360A patent/JP4537003B2/ja not_active Expired - Fee Related
- 2002-05-06 RU RU2003134151/09A patent/RU2310906C2/ru not_active IP Right Cessation
- 2002-05-06 EP EP02735339A patent/EP1410344A2/de not_active Ceased
- 2002-05-06 US US10/477,140 patent/US7647495B2/en not_active Expired - Fee Related
- 2002-05-06 CN CNB028096290A patent/CN1294480C/zh not_active Expired - Fee Related
- 2002-05-06 WO PCT/EP2002/004983 patent/WO2002091168A2/de active Application Filing
- 2002-05-06 AU AU2002310806A patent/AU2002310806A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19701166A1 (de) * | 1997-01-15 | 1998-07-23 | Siemens Ag | Verfahren zur Überwachung der bestimmungsgemäßen Ausführung von Softwareprogrammen |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1591864A2 (de) * | 2004-04-29 | 2005-11-02 | Giesecke & Devrient GmbH | Verfahren zum Schützen von Daten eines Datenträgers gegen DFA-Angriffe |
DE102004021088A1 (de) * | 2004-04-29 | 2005-11-17 | Giesecke & Devrient Gmbh | Verfahren zum Schützen von Daten eines Datenträgers gegen DFA-Angriffe |
EP1591864A3 (de) * | 2004-04-29 | 2006-05-24 | Giesecke & Devrient GmbH | Verfahren zum Schützen von Daten eines Datenträgers gegen DFA-Angriffe |
Also Published As
Publication number | Publication date |
---|---|
JP2004531819A (ja) | 2004-10-14 |
WO2002091168A3 (de) | 2003-12-31 |
WO2002091168A2 (de) | 2002-11-14 |
JP4537003B2 (ja) | 2010-09-01 |
CN1294480C (zh) | 2007-01-10 |
US20040210737A1 (en) | 2004-10-21 |
AU2002310806A1 (en) | 2002-11-18 |
EP1410344A2 (de) | 2004-04-21 |
RU2310906C2 (ru) | 2007-11-20 |
RU2003134151A (ru) | 2005-05-27 |
CN1507609A (zh) | 2004-06-23 |
US7647495B2 (en) | 2010-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0520228B1 (de) | Datenverarbeitungsanlage mit Zugriffsschutz | |
DE10122505A1 (de) | Verfahren zum Schützen eines Rechners gegen Manipulation von Registerinhalten und Rechner zum Durchführen des Verfahrens | |
DE3048365C2 (de) | ||
DE69419450T2 (de) | Vorrichtung und Verfahren zum Schutz der Schlüssel einer IC-Karte | |
DE69327206T2 (de) | System zur ununterbrochenen Verarbeitung verschlüsselter und unverschlüsselter Daten und Befehle | |
DE69533312T2 (de) | Geschütztes speichersystem und verfahren dafür | |
DE10297433B4 (de) | Speicherverwaltungseinheit, Verfahren zum Bereitstellen einer Speicherzugriffssicherheit auf der Basis einer linearen Adresse und Prozessor | |
DE60127310T2 (de) | Vorrichtung zum schutz digitaler daten | |
DE19914730A1 (de) | Verfahren zum Verhindern eines Datenübertrags an beschädigte Adressen | |
DE69624191T2 (de) | Atomisches Aktualisieren von EDC-geschützten Daten | |
DE2817431A1 (de) | Speicherhierarchie | |
DE2810421C2 (de) | Speicherschutzeinrichtung | |
DE69716722T2 (de) | Verfahren und vorrichtung für den schutz von daten mit verwendung von verriegelungswerten in einem rechnersystem | |
DE10297686B4 (de) | System und Verfahren zum Steuern der Zugriffe zwischen einzelnen Geräten innerhalb eines Computersystems | |
DE9420092U1 (de) | Modul zum Schutz von Software | |
EP0080244B1 (de) | Verfahren zum Identifizieren eines systemverwandten, physikalisch trennbaren Programmspeichers und ein dieses Verfahren verwendendes Datenverarbeitungssystem | |
EP2405317B1 (de) | Verfahren zur sicheren Parametrierung eines Sicherheitsgeräts | |
DE60212169T2 (de) | Laden von software | |
DE4034444A1 (de) | Datenschuetzender arbeitsplatzrechner | |
DE69626282T2 (de) | Programmierbare vorrichtung und verfahren zum befehlsauffang | |
DE4103173C5 (de) | Vorrichtung zum Schutz gegen unautorisierte Benutzung von Software | |
DE102009055390A1 (de) | Vorrichtung und Verfahren zum Schreiben von Daten, die zu speichern sind, in einen vorbestimmten Speicherbereich | |
Edwards | Exchange terms in direct nuclear reaction theories | |
DE1940296C3 (de) | Einrichtung in elektronischen Datenverarbeitungsmaschinen zum Schutz des Steuerprogramms | |
DE102023106166B3 (de) | Sicherheits-controller und verfahren zur durchführung einer auswahlfunktion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OM8 | Search report available as to paragraph 43 lit. 1 sentence 1 patent law | ||
8110 | Request for examination paragraph 44 | ||
8131 | Rejection |