WO2000070620A1 - Speicheranordnung mit adressverwürfelung - Google Patents

Speicheranordnung mit adressverwürfelung Download PDF

Info

Publication number
WO2000070620A1
WO2000070620A1 PCT/EP2000/004285 EP0004285W WO0070620A1 WO 2000070620 A1 WO2000070620 A1 WO 2000070620A1 EP 0004285 W EP0004285 W EP 0004285W WO 0070620 A1 WO0070620 A1 WO 0070620A1
Authority
WO
WIPO (PCT)
Prior art keywords
memory
scrambling
address
selection device
memory cell
Prior art date
Application number
PCT/EP2000/004285
Other languages
English (en)
French (fr)
Inventor
Michael Baldischweiler
Stefan Eckardt
Original Assignee
Giesecke & Devrient Gmbh
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Giesecke & Devrient Gmbh filed Critical Giesecke & Devrient Gmbh
Priority to EP00931196A priority Critical patent/EP1183690B1/de
Priority to US09/959,895 priority patent/US6572024B1/en
Priority to AU49211/00A priority patent/AU4921100A/en
Priority to JP2000618984A priority patent/JP2003500786A/ja
Priority to AT00931196T priority patent/ATE229219T1/de
Priority to DE50000882T priority patent/DE50000882D1/de
Publication of WO2000070620A1 publication Critical patent/WO2000070620A1/de

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms 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/10Mechanisms 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/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/357Cards having a plurality of specified features

Definitions

  • the invention relates to a memory arrangement according to the type of the main claim. Storage arrangements of this type are part of all common microcomputers and others. in “Chip and System” R. Zaks, SYBEX-Verlag, 1984, page 133 ff. Fundamentally similar microcomputers are also used in security-relevant applications, for example in chip card systems for carrying out financial transactions. In these cases, however, additional measures are regularly taken to prevent security attacks through manipulation of the microcomputer. An example of such a measure can be found in "Chip Cards", Karlheinz Fietta, Weghig Verlag, 1989, pages 68 to 72. In the TS 1834 chip from THOMSON described therein, the address and data bus are made invisible to the outside by means of an interface .
  • EP 694846 AI Another measure to increase the security against manipulation of the microcomputer can be found in EP 694846 AI. Thereafter, it is provided that the data transmitted over the data bus may be reused several times, so that an evaluation and thus manipulation of the data is not possible even if it is possible to read them out.
  • the invention has for its object to provide further measures that perform this.
  • the object is achieved by an arrangement and a method having the features of the independent claims 1 and 7.
  • at least one memory with random access in the microcomputer is preceded by a scrambling device which overrides the Address bus transmitted logical addresses in an unpredictable way physically allocated cells in the memory.
  • the memory arrangement according to the invention thereby offers the advantage that manipulation of the microcomputer by analysis of the contents of the memory cells of the memory with random access becomes impossible.
  • the logic required to implement the scrambling device takes up little space and can be easily incorporated into ongoing microcomputer manufacturing.
  • the scrambling is preferably renewed regularly on defined events.
  • the figure shows a memory arrangement of a microcomputer.
  • the figure shows a section of the overall structure of a microcomputer whose memory arrangement.
  • Reference number 11 denotes a random access memory, i.e. As a rule, a volatile or increasingly non-volatile RAM memory, which can be divided into a plurality of register banks 12.
  • Each register bank 12 is in turn divided into a defined number of memory cells 10, the physical position of which within a register bank 12 is uniquely identified by an assigned address 13.
  • Each memory cell 10 stores information of one byte, a register bank 12 usually contains eight memory cells 10 or an integer multiple thereof.
  • the memory 11 is connected to a microcontroller 25 via a data bus 21. Its essential function is the execution of program instructions 26, 27, 28, which are preferably carried out in a conventional manner non-volatile memory device are stored.
  • the processing of the program instructions includes write and read accesses to the memory 11.
  • the data content to be written to or read from the register banks 12 is carried out via the data bus 21.
  • the memory 11 is also connected to a selection device 14 via a second bus connection 19. It assigns the data contents transmitted via the data bus 21 to memory cells 10, into which the data contents are physically stored or from which they are read.
  • the selection device 14 is also connected to the microcontroller 25 via a second bus, the address bus 20. From him, the selection device 14 receives in the form of logical addresses 23 via the address bus 20, for each data content, the information about which memory cell 10 is to be accessed.
  • the selection device 14 further includes a scrambling device 15. This assigns the logical addresses 23 supplied via the address bus 20 in an unpredictable manner to addresses 13 in the memory 11 which are then actually physically accessed, i.e. which are written or read. The assignment can preferably be redefined at any time.
  • the scrambling device 15 is connected to the microcontroller 25 via a control line 16.
  • the command sequence consists of two commands 27, 28, which are not necessarily immediately consecutive, the first of which first places the value "1" in a register R2 and the second calls the content of the register R2 again at a later time in order to convert it into a " Result register "called register.
  • the first command 27 can be represented symbolically as follows: "MOV R2, # 1";"MOV” stands for the function to be carried out, R2 logically denotes the address of a memory cell 10 in memory 11, to which the value 1 marked by "#" is to be placed.
  • the corresponding symbolic representation of the second command 28 is: "MOV erg, R2";"MOV” in turn designates the move function, "erg” the logical address 23 of the result register, R2 a memory cell to be read out in the memory 11.
  • the command sequence 27, 28 is part of a program or a comprehensive command sequence 29, which is not shown, which as All of this is used, for example, to implement a function of the microcomputer or a device controlled by the microcomputer.
  • the command sequence 29 is further preceded by a command 26 for starting a scrambling in the selection device 14. This can be programmed or also automatically formed by the microcontroller depending on a triggering event.
  • the microcontroller 25 executes the start command 26 and, via the control line 16, sends a signal to start the scrambling device 15.
  • the start signal triggers a scrambling process in the selection device 14, by means of which the logical addresses 23 transmitted via the address bus 20 are assigned physical addresses in the memory 11.
  • the scrambling expediently assigns an address 13 in the memory 11 to all possible logical addresses 23.
  • the assignment obtained by the scrambling is retained for the subsequent execution of the program sequence 29, and is therefore also valid for the instructions 27, 28. If the command 27 is thus executed, the microcontroller 25 transmits the logical address R2 to the selection device 14 via the address bus 20.
  • the selection device 14 determines the assigned memory cell 10 in the memory 11.
  • the selection device determines cell 10 with address R5 as the memory cell assigned to logical address R2 and writes therein the data content transmitted with command 27, ie the value 1.
  • the microcontroller 25 transmits the logical address 23 of the target register to the selection device 14, in this case the address "erg" of the result register, and, symbolically, what is to be found in the target register is loaded, namely the content of register R2.
  • the selection device 14 determines the physical address 13 in the memory 11 corresponding to the logical address 23 R2, i.e. the memory cell R5 and then reads out its content via the data bus 21.
  • the scrambling device 15 can immediately trigger an assignment scrambling, i.e. the issuing of a start command 26 may be provided. Even a multiple execution of the same program sequence 28 is then associated with a regularly changing assignment of memory cells 10 in the memory 11. Alternatively, the scrambling device 15 can only be restarted after executing several, for example a predetermined number of program sequences 29 or e.g. be provided only after restarting the microcontroller 25.
  • the implementation of the invention is unpredictable while maintaining its basic idea, namely the assignment of physically actually addressed addresses 13 in the memory 11 to logical addresses 23 used in the program instructions by a scrambling device. to make bar, variable in a wide range.
  • a different type of memory with a completely different structure can be selected, or the scrambling of assignments can relate to groups of memory cells 10.
  • another method can be selected for transmitting the logical addresses 23 to the selection device 14.
  • the time and frequency of the re-scrambling by the scrambler 15 can also be triggered by other events and controlled in other ways.
  • the arrangement and methods are also suitable, for example, for program command sequences created according to object-oriented concepts.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Vorgeschlagen wird eine Speicheranordnung mit einem Speicher mit einer Vielzahl von Speicherzellen (10) sowie einer Auswahleinrichtung (14), die aufgrund einer über einen Adressbus (20) zugeführten logischen Adresse (23) eine Speicherzelle (10) für einen physikalischen Zugriff auswählt. Die Auswahleinrichtung (14) beinhaltet eine Verwürfelungsvorrichtung (15), die einer der Auswahleinrichtung (14) übermittelten logischen Adresse (23) durch Verwürfelung in vorhersehbarer Weise eine Speicherzelle (10) in der Speicheranordnung zuordnet, auf die anschließend der physikalische Zugriff erfolgt.

Description

Speicheranordnung mit Adreßverwürf elung
Die Erfindung geht aus von einer Speicheranordnung nach der Gattung des Hauptanspruchs. Speicheranordnungen dieser Art sind Bestandteil aller gängigen Mikrocomputer und u.a. in "Chip und System" R. Zaks, SYBEX- Verlag, 1984, Seite 133 ff. beschrieben. Grundsätzlich gleichartige Mikrocomputer werden auch in sicherheitsrelevanten Anwendungen, etwa in Chipkartensystemen zur Durchführung von Finanztransaktionen, eingesetzt. Allerdings werden in diesen Fällen regelmäßig zusätzliche Maßnahmen er- griffen, um Angriffe auf die Sicherheit durch Manipulation des Mikrocomputers zu verhindern. Ein Beispiel für eine solche Maßnahme findet sich in "Chipkarten", Karlheinz Fietta, Hüthig Verlag, 1989, Seiten 68 bis 72. Bei dem darin beschriebenen Chip TS 1834 der Firma THOMSON sind der Adreß- und Datenbus mittels eines Interfaces nach außen hin unsichtbar gemacht. Eine andere Maßnahme zur Erhöhung der Manipulationssicherheit des Mikrocomputers ist aus EP 694846 AI entnehmbar. Danach ist vorgesehen, die über den Datenbus übertragenen Daten gegebenenfalls mehrfach zu verwürfein, so daß eine Auswertung und damit eine Manipulation der Daten selbst dann nicht möglich ist, wenn es gelingt sie auszulesen.
Obgleich bereits die bekannten Maßnahmen ein hohes Maß an Sicherheit gewährleisten, ist es mit Blick auf die besondere Bedeutung der Sicherheit von im Zusammenhang mit der Ausführung von Finanztransaktionen eingesetzten Mikrocomputern wünschenswert, deren Manipulationssicherheit weiter zu verbessern. Der Erfindung liegt die Aufgabe zugrunde, weitere dieses leistende Maßnahmen anzugeben.
Die Aufgabe wird gelöst durch eine Anordnung sowie ein Verfahren mit den Merkmalen der unabhängigen Ansprüche 1 und 7. Erfindungsgemäß wird wenigstens einem im Mikrocomputer vorhandenen Speicher mit wahlfreiem Zugriff eine Verwürfelungseinrichtung vorgeschaltet, welche den über den Adreßbus übermittelten logischen Adressen in unvorhersehbarer Weise physikalisch darauf tatsächlich belegte Zellen im Speicher zuordnet. Die erfindungsgemäße Speicheranordnung bietet dadurch den Vorteil, daß eine Manipulation des Mikrocomputers durch Analyse der Inhalte der Speicherzellen des Speichers mit wahlfreiem Zugriff unmöglich wird. Die zur Realisierung der Verwürf elungseinrichtung benötigte Logik verbraucht wenig Platz und läßt sich ohne weiteres in laufende Mikrocomputerfertigungen einbeziehen. Bevorzugt wird die Verwürfelung auf definierte Ereignisse hin regelmäßig erneuert.
Unter Bezugnahme auf die Zeichnung wird nachfolgend ein Ausführungsbeispiel der Erfindung näher erläutert.
Die Figur zeigt eine Speicheranordnung eines Mikrocomputers.
Die Figur zeigt als Ausschnitt aus der Gesamtstruktur eines Mikrocomputers dessen Speicheranordnung. Bezugszahl 11 bezeichnet dabei einen Speicher mit wahlfreiem Zugriff, d.h. in der Regel einen flüchtigen oder zunehmend auch nichtflüchtigen RAM-Speicher, welcher in eine Vielzahl von Register- bänken 12 gegliedert sein kann. Jede Registerbank 12 gliedert sich ihrerseits in eine definierte Zahl von Speicherzellen 10, deren physikalische Position innerhalb einer Registerbank 12 jeweils durch eine zugeordnete Adresse 13 eindeutig bezeichnet ist. Jede Speicherzelle 10 speichert eine Information von einem Byte, eine Registerbank 12 beinhaltet üblicherweise acht Speicherzel- len 10 oder ein ganzzahliges Vielfaches davon.
Der Speicher 11 ist über einen Datenbus 21 mit einem Mikrocontroller 25 verbunden. Dessen wesentliche Funktion ist die Ausführung von Programmbefehlen 26, 27, 28, welche in üblicher Weise in einer vorzugsweise nichtflüchtigen Speichereinrichtung abgelegt sind. Die Abarbeitung der Pro- grammbefehle beinhaltet Schreib- und Lesezugriffe auf den Speicher 11. Über den Datenbus 21 erfolgt dabei der Transport der in die Registerbänke 12 einzuschreibenden bzw. auszulesenden Dateninhalte. Über eine zweite Busverbindung 19 ist der Speicher 11 weiterhin mit einer Auswahleinrich- tung 14 verbunden. Sie ordnet den über den Datenbus 21 übertragenen Da- te inhalten Speicherzellen 10 zu, in welche die Dateninhalte physikalisch abgelegt bzw. aus denen sie ausgelesen werden. Für die Zuordnung ist die Auswahleinrichtung 14 über einen zweiten Bus, den Adreßbus 20, ebenfalls mit dem Mikrocontroller 25 verbunden. Von ihm erhält die Auswahleinrichtung 14 in Form von logischen Adressen 23 über den Adreßbus 20 zu jedem Dateninhalt jeweils die Information, auf welche Speicherzelle 10 ein Zugriff erfolgen soll.
Die Auswahleinrichtung 14 beinhaltet weiterhin eine Verwürfelungseinrich- tung 15. Diese ordnet den über den Adreßbus 20 zugeführten logischen Adressen 23 in unvorhersehbarer Weise Adressen 13 im Speicher 11 zu, auf die sodann tatsächlich physikalisch zugegriffen wird, d.h. die beschrieben bzw. ausgelesen werden. Die Zuordnung ist vorzugsweise jederzeit neu festlegbar. Zum Auslösen einer Neuzuordnung ist die Verwürfelungsein- richtung 15 über eine Steuerleitung 16 mit dem Mikrocontroller 25 verbunden.
Anhand einer beispielhaften Befehlssequenz wird im folgenden die Funkti- onsweise der vorbeschriebenen Anordnung erläutert. Die Befehlssequenz bestehe aus zwei, nicht notwendig unmittelbar aufeinanderfolgenden, Befehlen 27, 28, wovon der erste zunächst den Wert "1" in ein Register R2 legt und der zweite den Inhalt des Registers R2 zu einem späteren Zeitpunkt erneut aufruft, um ihn in ein "Ergebnisregister" genanntes Register zu schreiben. Der erste Befehl 27 läßt sich symbolisch wie folgt darstellen: "MOV R2, #1"; darin steht "MOV" für die auszuführende Funktion Bewegen, R2 bezeichnet logisch die Adresse einer Speicherzelle 10 im Speicher 11, wohin der durch "#" gekennzeichnete Wert 1 gelegt werden soll. Die entsprechende symboli- sehe Darstellung des zweiten Befehls 28 ist: "MOV erg, R2"; darin bezeichnet "MOV" wiederum die Funktion Bewegen, "erg" die logische Adresse 23 des Ergebnisregisters, R2 eine auszulesende Speicherzelle im Speicher 11. Die Befehlssequenz 27, 28 sei Teil eines Programmes bzw. einer nicht weiter dargestellten, umgreifenden Befehlsfolge 29, welche als Ganze z.B. zur Realisie- rung einer Funktion des Mikrocomputers oder einer durch den Mikrocomputer gesteuerten Einrichtung dient. Der Bef ehlsfolge 29 ist des weiteren ein Befehl 26 zum Starten einer Verwürf elung in der Auswahleinrichtung 14 vorangestellt. Dieser kann programmiert oder auch selbsttätig vom Mikrocontroller in Abhängigkeit von einem auslösenden Ereignis gebildet sein.
Bevor er mit der Ausführung der Befehlsfolge 29 beginnt, führt der Mikrocontroller 25 den Startbefehl 26 aus und bewirkt über die Steuerleitung 16 die Absetzung eines Signales zum Start der Verwürf elungseinrichtung 15. Das Startsignal löst in der Auswahleinrichtung 14 einen Verwürfelungsvor- gang aus, durch welchen den über den Adreßbus 20 übertragenen logischen Adressen 23 physikalische Adressen im Speicher 11 zugeordnet werden. Zweckmäßig wird durch die Verwürfelung allen möglichen logischen Adressen 23 jeweils eine Adresse 13 im Speicher 11 zugeordnet. Die durch die Verwürfelung erhaltene Zuordnung wird für die nachfolgende Abarbei- tung der Programmfolge 29 beibehalten, sie hat mithin auch für die Befehle 27, 28 Gültigkeit. Kommt somit der Befehl 27 zur Ausführung, übermittelt der Mikrocontroller 25 der Auswahleinrichtung 14 über den Adreßbus 20 die logische Adresse R2. Die Auswahleinrichtung 14 ermittelt hierauf die zugeordnete Speicherzelle 10 im Speicher 11. Es sei angenommen, daß die Ver- würfelungseir-richtung 15 der logischen Adresse R2 im Speicher 11 physikalisch die Speicherzelle 10 mit der Adresse R5 zugeordnet habe. Die Auswahleinrichtung ermittelt daher als der logischen Adresse R2 zugeordnete Speicherzelle die Zelle 10 mit der Adresse R5 und schreibt darin den mit dem Befehl 27 übermittelten Dateninhalt, d.h. den Wert 1.
Kommt anschließend die Ausführung der Befehlsfolge 29 an den Befehl 18, übermittelt der Mikrocontroller 25 der Auswahleinrichtung 14 die logische Adresse 23 des Zielregisters, in diesem Fall die Adresse "erg" des Ergebnis- registers, sowie, in symbolischer Angabe, was in das Zielregister zu laden ist, nämlich der Inhalt des Registers R2. Die Auswahleinrichtung 14 ermittelt darauf wiederum die der logischen Adresse 23 R2 entsprechende physikalische Adresse 13 im Speicher 11, d.h. die Speicherzelle R5 und liest sodann deren Inhalt über den Datenbus 21 aus.
Ist die Programmfolge 29 abgearbeitet, kann unmittelbar erneut die Auslösung einer Zuordnungsverwürfelung durch die Verwürfelungseinrichtung 15, d.h. die Absetzung eines Startbefehles 26 vorgesehen sein. Selbst eine Mehrfachausführung derselben Programmfolge 28 ist dann mit einer regel- mäßig wechselnden Belegung von Speicherzellen 10 im Speicher 11 verbunden. Alternativ kann ein erneuter Start der Verwürfelungseinrichtung 15 erst nach Durchführung mehrerer, etwa einer vorbestimmten Zahl von Programmfolgen 29 oder aber z.B. nur nach Neustart des Mikrocontrollers 25 vorgesehen sein.
Die Umsetzung der Erfindung ist unter Beibehaltung ihrer zugrundeliegenden Idee, nämlich die Zuordnung von physikalisch tatsächlich angesprochenen Adressen 13 im Speicher 11 zu in den Programmbefehlen verwendeten logischen Adressen 23 durch eine Verwürfelungseinrichtung unvorherseh- bar zu machen, in einem weiten Rahmen variierbar. So kann ein anderer Speichertyp mit völlig anderer Gliederung gewählt werden oder die Verwürfelung von Zuordnungen sich auf Gruppen von Speicherzellen 10 beziehen. Anstelle eines gesonderten Adreßbusses 20 kann zur Übermittlung der logischen Adressen 23 an die Auswahleinrichtung 14 ein anderes Verfahren gewählt werden. Zeitpunkt und Häufigkeit der Wiederholung der Verwürfelung durch die Verwürfelungseinrichtung 15 können ferner durch andere Ereignisse ausgelöst sein und auf andere Weise gesteuert werden. Anordnung wie Verfahren eignen sich des weiteren außer für die der Einfachheit halber zugrundegelegte serielle Befehlsabarbeitung in gleicher Weise etwa auch für nach objektorientierten Konzepten erstellte Programmbefehlsfolgen.

Claims

P a t e n t a n s p r ü c h e
1. Speicheranordnung mit einem Speicher mit einer Vielzahl von Speicherzellen (10) sowie einer Auswahleinrichtung (14), die aufgrund einer über einen Adreßbus (20) zugeführten logischen Adresse (23) eine Speicherzelle (10) auswählt, auf die anschließend ein physikalischer Zugriff erfolgt, dadurch gekennzeichnet, daß die Auswahleinrichtung (14) eine Verwürfe- lungsvorrichtung (15) beinhaltet, die, wenn eine Verwürfelung ausgelöst wurde, einer der Auswahleinrichtung (14) übermittelten logischen Adresse (23) in unvorhersehbarer Weise eine Speicherzelle (10) zuordnet und der anschließende physikalische Zugriff auf die zugeordnete Speicherzelle (10) erfolgt.
2. Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Auswahleinrichtung (14) einen Steuereingang (16) aufweist, über den die
Verwürf elungs Vorrichtung (15) startbar ist.
3. Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Auswahleinrichtung (14) eine durch einen Verwürf elungsvorgang vorge- nommene Zuordnung während der Abarbeitung einer ein Programm bildenden Befehlsfolge (29) beibehält.
4. Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Verwürfelungseinrichtung (15) auf ein Startsignal (26) hin jeweils für alle Zellen (10) in einem Speicher (11) eine Zuordnung zu logischen Adressen (13) vornimmt.
5. Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Speicher (11) ein Speicher mit wahlfreiem Zugriff ist.
6. Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Speicher (11) ein flüchtiger Speicher ist.
7. Verfahren zum Speichern von Dateninhalten in einen Speicher (11), wobei der Speicher (11) in Speicherzellen (10) gegliedert ist und die zu speichernden Daten jeweils einen Dateninhalt sowie eine logische Adresse (23) zur Bezeichnung einer Speicherzelle (10) im Speicher (11) enthalten, dadurch gekennzeichnet, daß regelmäßig oder auf den Eintritt bestimmter Ereignisse hin eine Verwürfelung ausgeführt wird, in der aus der logischen Adresse
(23) durch Verwürfelung die Adresse (13) einer Speicherzelle (10) gewonnen und der Dateninhalt in dem Speicher (11) an der durch die Verwürfelung erzeugten Adresse (13) abgelegt wird.
PCT/EP2000/004285 1999-05-12 2000-05-11 Speicheranordnung mit adressverwürfelung WO2000070620A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
EP00931196A EP1183690B1 (de) 1999-05-12 2000-05-11 Speicheranordnung mit adressverwürfelung
US09/959,895 US6572024B1 (en) 1999-05-12 2000-05-11 Memory array with address scrambling
AU49211/00A AU4921100A (en) 1999-05-12 2000-05-11 Memory array with address scrambling
JP2000618984A JP2003500786A (ja) 1999-05-12 2000-05-11 アドレスのスクランブリング機能付きメモリアレー
AT00931196T ATE229219T1 (de) 1999-05-12 2000-05-11 Speicheranordnung mit adressverwürfelung
DE50000882T DE50000882D1 (de) 1999-05-12 2000-05-11 Speicheranordnung mit adressverwürfelung

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19922155.3 1999-05-12
DE19922155A DE19922155A1 (de) 1999-05-12 1999-05-12 Speicheranordnung mit Adreßverwürfelung

Publications (1)

Publication Number Publication Date
WO2000070620A1 true WO2000070620A1 (de) 2000-11-23

Family

ID=7908004

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2000/004285 WO2000070620A1 (de) 1999-05-12 2000-05-11 Speicheranordnung mit adressverwürfelung

Country Status (10)

Country Link
US (1) US6572024B1 (de)
EP (1) EP1183690B1 (de)
JP (1) JP2003500786A (de)
KR (1) KR100648325B1 (de)
CN (1) CN1185658C (de)
AT (1) ATE229219T1 (de)
AU (1) AU4921100A (de)
DE (2) DE19922155A1 (de)
ES (1) ES2187475T3 (de)
WO (1) WO2000070620A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7057201B2 (en) 2003-09-02 2006-06-06 Infineon Technologies Ag Integrated semiconductor memory
KR100813627B1 (ko) * 2007-01-04 2008-03-14 삼성전자주식회사 멀티-비트 데이터를 저장할 수 있는 플래시 메모리 장치를제어하는 메모리 제어기와 그것을 포함한 메모리 시스템

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4683442B2 (ja) * 2000-07-13 2011-05-18 富士通フロンテック株式会社 処理装置および集積回路
WO2002071231A1 (en) 2001-02-15 2002-09-12 Nokia Corporation Method and arrangement for protecting information
DE10127181A1 (de) * 2001-06-05 2002-12-19 Infineon Technologies Ag Sicherheitsmodul, Verfahren zum Konfigurieren desselben und Verfahren und Vorrichtung zum Herstellen desselben
US20060161743A1 (en) * 2005-01-18 2006-07-20 Khaled Fekih-Romdhane Intelligent memory array switching logic
US20060171233A1 (en) * 2005-01-18 2006-08-03 Khaled Fekih-Romdhane Near pad ordering logic
US20060171234A1 (en) * 2005-01-18 2006-08-03 Liu Skip S DDR II DRAM data path
US20060245230A1 (en) * 2005-04-29 2006-11-02 Ambroggi Luca D Memory module and method for operating a memory module
JP4583305B2 (ja) * 2005-12-28 2010-11-17 シャープ株式会社 記録方法、記録装置及びicカード
JP2008003976A (ja) * 2006-06-26 2008-01-10 Sony Corp メモリアクセス制御装置および方法、並びに、通信装置
JP2008027327A (ja) * 2006-07-25 2008-02-07 Sony Corp メモリアクセス制御装置および方法、並びに、通信装置
JP5571883B2 (ja) * 2007-06-18 2014-08-13 軒▲ソン▼科技有限公司 デジタル情報の保護方法、装置およびコンピュータによるアクセス可能な記録媒体
IL210169A0 (en) 2010-12-22 2011-03-31 Yehuda Binder System and method for routing-based internet security
JP5839659B2 (ja) * 2011-06-20 2016-01-06 ルネサスエレクトロニクス株式会社 半導体装置
JP2013114644A (ja) 2011-12-01 2013-06-10 Fujitsu Ltd メモリモジュールおよび半導体記憶装置
DE112011106076B4 (de) * 2011-12-28 2020-01-23 Intel Corp. Generischer Adressen-Scrambler für Speicherschaltungs-Testengine
KR101997623B1 (ko) 2013-02-26 2019-07-09 삼성전자주식회사 메모리 장치 및 그것을 포함하는 메모리 시스템
JP5986279B2 (ja) * 2015-08-28 2016-09-06 ルネサスエレクトロニクス株式会社 半導体装置
GB2544546B (en) 2015-11-20 2020-07-15 Advanced Risc Mach Ltd Dynamic memory scrambling
DE102018128980A1 (de) 2018-11-19 2020-05-20 Technische Universität München Verfahren und vorrichtung zum betreiben einer speicheranordnung

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5081675A (en) * 1989-11-13 1992-01-14 Kitti Kittirutsunetorn System for protection of software in memory against unauthorized use
US5748641A (en) * 1994-02-24 1998-05-05 Kabushiki Kaisha Toshiba Test circuit of semiconductor memory device having data scramble function
US5765197A (en) * 1993-12-16 1998-06-09 International Business Machines Corporation Method and system for authentication of a memory unit for a computer system
US5787498A (en) * 1989-05-15 1998-07-28 Dallas Semiconductor Corporation Integrated circuit memory with verification unit which resets an address translation register upon failure to define one-to-one correspondences between addresses and memory cells
US5850452A (en) * 1994-07-29 1998-12-15 Stmicroelectronics S.A. Method for numerically scrambling data and its application to a programmable circuit
US5943283A (en) * 1997-12-05 1999-08-24 Invox Technology Address scrambling in a semiconductor memory

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5332A (en) * 1976-06-23 1978-01-05 Fujitsu Ltd Memory redundance system
JPS6344242A (ja) * 1986-08-11 1988-02-25 Fujitsu Ltd マイクロプロセツサ
JPS63167588A (ja) * 1986-12-27 1988-07-11 Toshiba Corp 暗号情報伝送システム
JPH0314147A (ja) * 1989-06-13 1991-01-22 Fujitsu Ltd プログラム暗号化回路
JP2685915B2 (ja) * 1989-08-22 1997-12-08 株式会社東芝 有料放送受信装置
JPH03168831A (ja) * 1989-11-29 1991-07-22 Nec Corp プログラム秘匿装置
GB2248702B (en) * 1990-10-11 1994-11-02 Viserge Limited Data-processing apparatus
JPH05189327A (ja) * 1992-01-17 1993-07-30 Fujitsu Ltd 集積回路の内蔵メモリ故障時の救済方法
JP3935515B2 (ja) * 1994-08-03 2007-06-27 富士通株式会社 コピー防止機能付半導体集積回路装置
JPH08227588A (ja) * 1995-02-21 1996-09-03 Hitachi Ltd 情報保護機能付き不揮発性半導体記憶装置
JPH08234709A (ja) * 1995-02-23 1996-09-13 Sony Corp 情報表示方法および装置
US5815572A (en) * 1995-08-31 1998-09-29 Lucent Technologies Inc. Video scrambling
JP3747520B2 (ja) * 1996-01-30 2006-02-22 富士ゼロックス株式会社 情報処理装置及び情報処理方法
JPH10187543A (ja) * 1996-12-24 1998-07-21 Toshiba Corp メモリアクセス方法および情報処理装置およびカード処理装置
GB2321728B (en) * 1997-01-30 2001-12-19 Motorola Inc Apparatus and method for accessing secured data stored in a portable data carrier
JPH1145212A (ja) * 1997-07-29 1999-02-16 Matsushita Electric Ind Co Ltd 秘密情報の解読攻撃対抗方法
JPH11167526A (ja) * 1997-12-03 1999-06-22 Tamura Electric Works Ltd メモリリード・ライト方法及びメモリリード・ライト装置
JP2000029790A (ja) * 1998-07-15 2000-01-28 Matsushita Electric Ind Co Ltd データセキュリティシステム
JP4174326B2 (ja) * 2003-01-15 2008-10-29 日本放送協会 セキュリティモジュール、限定受信装置、限定受信方法および限定受信プログラム
JP4791741B2 (ja) * 2005-03-16 2011-10-12 株式会社リコー データ処理装置とデータ処理方法
JP4349389B2 (ja) * 2006-07-28 2009-10-21 ソニー株式会社 データ記憶装置、および、通信装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787498A (en) * 1989-05-15 1998-07-28 Dallas Semiconductor Corporation Integrated circuit memory with verification unit which resets an address translation register upon failure to define one-to-one correspondences between addresses and memory cells
US5081675A (en) * 1989-11-13 1992-01-14 Kitti Kittirutsunetorn System for protection of software in memory against unauthorized use
US5765197A (en) * 1993-12-16 1998-06-09 International Business Machines Corporation Method and system for authentication of a memory unit for a computer system
US5748641A (en) * 1994-02-24 1998-05-05 Kabushiki Kaisha Toshiba Test circuit of semiconductor memory device having data scramble function
US5850452A (en) * 1994-07-29 1998-12-15 Stmicroelectronics S.A. Method for numerically scrambling data and its application to a programmable circuit
US5943283A (en) * 1997-12-05 1999-08-24 Invox Technology Address scrambling in a semiconductor memory

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7057201B2 (en) 2003-09-02 2006-06-06 Infineon Technologies Ag Integrated semiconductor memory
KR100813627B1 (ko) * 2007-01-04 2008-03-14 삼성전자주식회사 멀티-비트 데이터를 저장할 수 있는 플래시 메모리 장치를제어하는 메모리 제어기와 그것을 포함한 메모리 시스템

Also Published As

Publication number Publication date
JP2003500786A (ja) 2003-01-07
DE19922155A1 (de) 2000-11-23
DE50000882D1 (de) 2003-01-16
KR20020001877A (ko) 2002-01-09
US6572024B1 (en) 2003-06-03
EP1183690B1 (de) 2002-12-04
CN1185658C (zh) 2005-01-19
KR100648325B1 (ko) 2006-11-23
AU4921100A (en) 2000-12-05
ATE229219T1 (de) 2002-12-15
ES2187475T3 (es) 2003-06-16
EP1183690A1 (de) 2002-03-06
CN1355922A (zh) 2002-06-26

Similar Documents

Publication Publication Date Title
EP1183690B1 (de) Speicheranordnung mit adressverwürfelung
DE60030876T2 (de) Bereichsverwaltung eines nichtflüchtigen Speichers mit hoher Kapazität
EP0766211A2 (de) Multifunktionale Chipkarte
EP0128362B1 (de) Schaltungsanordnung mit einem Speicher und einer Zugriffskontrolleinheit
DE2844357A1 (de) Speichererweiterung
DE1499182A1 (de) Elektrische Datenverarbeitungsanlage
EP0651536A2 (de) Verfahren zur Wiederherstellung einer vorgegebenen Reihenfolge für ATM-Zellen
DE102009033961A1 (de) Emulation eines einmal programmierbaren Speichers
EP1352318B1 (de) Mikroprozessorschaltung für tragbare datenträger
DE4302553A1 (en) High security binary counting method for chip card - offsetting final state of binary number w.r.t. sequence such that contents of counter never represents number smaller than previous value
DE2062164A1 (de) Verfahren zur Erzeugung eines mehr stufigen Index für gespeicherte Daten einheiten
DE19709975C2 (de) Mikrocomputer
DE10252059B3 (de) Verfahren zum Betreiben einer Speicheranordnung
DE102006059626A1 (de) Verfahren zum Auslesen von Daten aus einem Speichermedium
EP0890172B1 (de) Halbleiterspeichervorrichtung
DE10321104B4 (de) Verfahren zur Ablage von veränderlichen Daten
WO2001006347A1 (de) Operandenstapelspeicher und verfahren zum betreiben eines operandenstapelspeichers
DE102008001739A1 (de) Verfahren zum Steuern eines Zugriffs auf Bereiche eines Speichers aus mehreren Prozessen heraus und Kommunikations-Modul mit einem Nachrichten-Speicher zur Realisierung des Verfahrens
WO1998049622A1 (de) Chipkarte mit speicherzugriffsmaximierung und protokollierung
EP1625592A1 (de) Vorrichtung und verfahren zum behandeln eines zustands eines speichers
EP1564754B1 (de) Verfahren und Vorrichtung zur Verwaltung von Daten in einem nichtflüchtigen Datenspeicher
EP0556430B1 (de) Verfahren zur Steuerung eines Peripheriesystems
WO2002099650A2 (de) Verfahren zur verwaltung eines speichers einer chipkarte
WO2005093580A1 (de) Speicherbereinigung (garbage collection) für smart cards
DE4220877A1 (de) Verfahren für nichtflüchtige, lösch- und programmierbare Speichereinrichtungen

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 00808950.7

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
ENP Entry into the national phase

Ref document number: 2000 618984

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 1020017014385

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2000931196

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020017014385

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 09959895

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2000931196

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2000931196

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1020017014385

Country of ref document: KR