EP0932867B1 - Elektronische datenverarbeitungsschaltung - Google Patents

Elektronische datenverarbeitungsschaltung Download PDF

Info

Publication number
EP0932867B1
EP0932867B1 EP97944712A EP97944712A EP0932867B1 EP 0932867 B1 EP0932867 B1 EP 0932867B1 EP 97944712 A EP97944712 A EP 97944712A EP 97944712 A EP97944712 A EP 97944712A EP 0932867 B1 EP0932867 B1 EP 0932867B1
Authority
EP
European Patent Office
Prior art keywords
processing circuit
data processing
data
circuit according
electronic data
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.)
Expired - Lifetime
Application number
EP97944712A
Other languages
English (en)
French (fr)
Other versions
EP0932867A1 (de
Inventor
Stefan Pfab
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of EP0932867A1 publication Critical patent/EP0932867A1/de
Application granted granted Critical
Publication of EP0932867B1 publication Critical patent/EP0932867B1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/86Secure or tamper-resistant housings

Definitions

  • the invention relates to an electronic data processing circuit having an operating assembly such as a microprocessor, with at least one data memory and with a data bus extending between the data memory and the operating subassembly, wherein the data traffic between the operating subassembly and the at least one data memory is encrypted.
  • an operating assembly such as a microprocessor
  • the generic electronic data processing circuits are often used in safety-critical applications.
  • confidential data, monetary values and access authorizations are stored in the data memory, which are processed by the operating assembly, for example, to an external request.
  • a generic electronic data processing circuit is designed as an integrated circuit, this can be covered with different passivation layers.
  • the passivation layers can be designed such that a removal of a passivation layer results in the destruction of the data memory. Furthermore, one can bury the data memory in deeper layers of the integrated circuit, so that access to it is difficult.
  • Another way to protect an electronic data processing circuit against unwanted manipulation is to use sensors that sense operating conditions of the electronic data processing circuit. As soon as a value sampled by a sensor is outside a normal value, appropriate safeguards are triggered which lead to an inactivation of the electronic data processing circuit or also to a deletion of the data memory.
  • the publication EP0449256 discloses an electronic data processing circuit having a microprocessor and two data memories, wherein an encryption module is provided in the area between the data lines of the data bus connecting the data memories and the operating module.
  • the publication GB-A-2099616 describes an electronic data processing circuit with a microprocessor and a data memory which stores encrypted data, wherein in the area between the microprocessor and the Data memory a decryption module and an encryption module are mounted in parallel on a data bus.
  • the US 5,386,469 describes a key generator that generates a key to decrypt encrypted instructions from a memory by means of an EXOR member to then send the decrypted instructions to a microprocessor.
  • the US 4,598,170 describes the encryption of data by selectively changing the connection order of the data lines of the data bus.
  • the invention is based on the realization essential to the invention that the manipulability of electronic data processing circuits designed as integrated circuits has been made easier by new technical methods.
  • an electronic data processing circuit in an integrated circuit is no longer seen as a chip in its entirety but as a system consisting of individual components on a silicon substrate in which the components can be separately accessed.
  • encryption device which term is expressly not limited to devices that perform encryption only. According to the basic idea of the invention, this term also refers to devices which have both an encryption and a Decrypt or perform only one of these two operations.
  • the inventive design of the electronic data processing circuit ensures that even with a successful tracking of data traffic on the data bus can not be directly closed to the data stored in the data memory. Furthermore, it is not readily possible to deduce the program sequence from the information obtained when tracking the data traffic on the data bus. Indeed, even with a successful readout of the data stored in the data memory can not be readily deduced their meaning, since these make no sense to an unbiased observer.
  • the encryption and decryption is distributed or dislocated according to the invention over the entire chip, because for a successful manipulation simultaneous observation of multiple points of the electronic data processing circuit would be necessary, which is technically difficult to perform ,
  • the encryption module is arranged so that the content of the latch is always encrypted. Namely, the contents of the latches can be relatively easily observed, so that their contents must be encrypted in the operation of the data processing circuit according to the invention for safety's sake.
  • Encryption and decryption may, according to the invention, extend into a CPU of a data processing circuit according to the invention. Furthermore the encryption and decryption can also be independent of each other in multiple encryption modules.
  • the encryption module is designed such that data traffic on the data bus can be encrypted by means of an encryption algorithm.
  • Such a trained encryption assembly has the advantage of being particularly cost-effective to produce in a mass production.
  • encryption with an algorithm takes a long time because it requires extensive computation in the operating assembly. A real-time operation of this data processing circuit according to the invention is therefore currently not possible.
  • the first and the second encryption module are designed so that data traffic on the data bus is encrypted by means of hardware encryption.
  • hardware encryption an operation of the data processing circuits according to the invention in real time can already be realized in a very simple manner, both during reading and during write access to the data memory.
  • a hardware encryption can be carried out according to the invention with a first or a second encryption module, which is designed so that the weights of individual bits of the data traffic is selectively changeable. Then bits that are stored in the memory as "LOW", for example, appear as "HIGH" in the data bus traffic. This can be done, for example, with an encryption module having at least one EXOR element.
  • the first or the second encryption module can be designed so that the connection order of data lines of the data bus can be selectively changed. This manifests itself to the outside as if individual bit lines of the data bus were reversed.
  • the hardware encryption can also be carried out by an encryption module which is designed so that the data traffic between the data bus and the operating module and / or between the data bus and the data memory can be selectively delayed at least partially.
  • an essential feature of the data processing circuit according to the invention is that the first or the second encryption module is designed so that the encryption works selectively. This not only means that encryption can be optional or omitted.
  • this also means that it is possible to switch between different keys for encrypting the data traffic.
  • the use of the encryption module according to the invention gets a dynamic behavior.
  • data processing circuits of a production lot each receive different and individual keys. This ensures that even with knowledge of the key of a data processing circuit can not yet be concluded on the keys of other data processing circuits.
  • the first or the second encryption module has at least one input for the input of at least one key.
  • this input to the cryptographic assembly can also be used to switch between certain keys stored in the cryptographic card itself and even between the cryptographic methods used in the cryptographic card. It is also quite possible to activate or deactivate a single encryption method. Deviating from this, a key stored outside the encryption module can also be input via the input.
  • the key is advantageously stored in a FLASH cell or in an EEPROM cell.
  • the above cells are considered relative certainly, because the information is stored on a floating gate with only a few electrons. Most attempts to read their contents destroy the stored information. Therefore, according to this embodiment of the invention results in a particularly secure encryption of Traffic.
  • all FLASH cells have the advantage of programmability.
  • individual keys can be programmed in a simple manner in the delivery of the data processing circuit according to the invention in each circuit and locked for further changes.
  • a further improvement in security results when the key is stored in a buried structure of an integrated component, wherein the integrated component advantageously also accommodates the data processing circuit.
  • Buried structures have the advantage that they can be implemented decentrally at different points of the integrated module. This considerably enhances security because it is very difficult to simultaneously observe different locations of a data processing circuit incorporated in an integrated package.
  • sensors may also be provided which scan the manipulations of the location where the key is stored and deactivate or otherwise disable the data processing circuit according to the invention for this case.
  • a random generator can also be provided with which a key can be selected at random.
  • the selection of the key used in the encryption module is performed by the operating module, in particular during the program execution.
  • the data processing circuit according to the invention is designed so that when executing predetermined operations by the operating assembly, a key to the encryption module can be entered.
  • the key selection is advantageously done hidden in the normal program code.
  • the operating assembly could be configured to change the encryption key key upon execution of an innocuous command such as CLR C ("CLEAR CARRY").
  • a time measuring device may be provided which monitors a change of the key, and triggers such a change, if the key is not changed often enough.
  • the keys will be generated by the operating board or the CPU. This is done, for example, by deriving a key with a translation method from an address generated by the CPU.
  • the advantage of this method is that the key is constantly changing - that is, with each address. By choosing different translation methods, the programmer of the operating module can influence the encryption.
  • the data traffic in the data processing circuit according to the invention can only be understood by a manipulator if the key used in the encryption module is known.
  • the data stored in the data memory can only be understood by knowing the key belonging to the data store. This considerably increases the security against manipulation.
  • a programmer who programs the operating assembly of the data processing circuitry must keep a confidential list associated with the key He has stored data in which addresses of the data memory or the data processing circuit.
  • the programmer may also provide certain prerequisites to be met, such as expressing the need to always read value pairs.
  • the electronic data processing circuit is set up in such a way that at least two encryption modules are provided in the region of at least one data line of the data bus connecting the operating module and at least one data memory, which are designed such that a complete encryption or decryption only takes place through the interaction of the two encryption modules is executable.
  • the two encryption modules are arranged at different locations of the electronic data processing circuit.
  • the embodiment according to the invention ensures that an encryption of the data traffic takes place at two different locations.
  • a typical manipulator may only be able to track encryption in a single location, namely a single encryption device, and still not get a useful result when applying the encryption.
  • the encryption assemblies so executed may be configured such that an encryption device in one location encrypts the lower four bits of a data bus, while the other encryption device encrypts the remaining bits of the data bus.
  • Another advantage of the arrangement according to the invention results in those generic data processing circuits, where you want to achieve for security reasons that not all components of the data processing circuit can communicate with each other. Then can be communicated by appropriate design of the key, for example, with a defined number of encryption units only in the designated connection paths of the data bus. All other connections with inappropriate encryption can not work properly.
  • FIG. 1 shows a data processing circuit having a CPU 101 as an operating assembly and a plurality of data storage.
  • these are a ROM 102, an EEPROM 103, a FLASH memory 104, and a RAM 105.
  • the data memories 102, 103, 104, 105 and the CPU 101 are connected to each other via a data bus 106.
  • an encryption unit 107 which encrypts the data traffic between the CPU 1 and the data memories 102, 103, 104 and 105.
  • encryption device although it is expressly not limited to a device that performs encryption only. This term also refers to a device which executes both an encryption and a decryption or only one of these two operations.
  • the encryption or decryption can be done by a suitable delay, by exchanging individual bit lines of the data bus or by changing the valences of individual data bits.
  • Software encryption can also be performed.
  • the data processing circuit has a multiplexer 108, which is connected to the FLASH memory 104 via a data line 109.
  • the multiplexer 108 is connected via a data line 110 to a timer 111, to which a random number 113 can be supplied via a data line 112 from a random generator 113.
  • the multiplexer 108 also has a drive line 114 via which it communicates with the ROM 102.
  • a RESET line 115 to the multiplexer 108 is provided, via which the multiplexer 108 can be reset to a ground state upon a reset of the data processing circuit.
  • the output of the multiplexer 108 is connected to the encryption board 107 via a drive line 116, wherein the encryption board 107 is supplied with a new key in response to an output signal of the multiplexer 108. It is also envisaged that in the encryption module 107 to an output signal of the multiplexer 108 via the control line 116 out in the Encryption module 107 is used to switch encryption methods.
  • the electronic data processing circuit behaves as follows.
  • the program starts also a signal on the RESET line 115 in
  • Multiplexer set a startup key. Thereafter, data traffic between data bus 106 and CPU 101 in encryption unit 107 is decrypted, with a corresponding operation being performed according to the data flow direction on each pass of data through encryption unit 107.
  • the ROM 102 sends a drive pulse to the multiplexer 108 via the drive line 114.
  • the multiplexer 108 then fetches one of the three keys KEY 3, KEY 2, KEY 1 from the FLASH memory via the data line 109 104 and transmits it to the encryption module 107.
  • the key used in the encryption module 107 is exchanged or, depending on the significance of the signal present on the control line 116, a switchover between an encryption method applied in the encryption module 107 is effected. If a certain operating time of the data processing circuit is exceeded without the multiplexer 108 being activated by the ROM 102, the timer 111 will be activated. By actuating the timer 111, the multiplexer 108 is sent a random number from the random generator 113 via the data line 110. The multiplexer 108 then transmits the random number to the encryption device 107.
  • the data in the data memories 102, 103, 104 and 105 are stored in encrypted form. Therefore, the data on the data bus 106 is encrypted and transported to the CPU 101, where it is decrypted again by the encryption board 107. Only then will the data be available unencrypted for processing in the CPU.
  • FIG. 2 shows a variant of the data processing circuit FIG. 1 , which also has a CPU 101 as an operating assembly and a plurality of data storage. Specifically, these are a ROM 102, an EEPROM 103, a FLASH memory 104, and a RAM 105. The data memories 102, 103, 104, 105 and the CPU 101 are interconnected via a data bus 106.
  • an encryption unit 107 is provided which encrypts the data traffic between the CPU 1 and the data memories 102, 103, 104 and 105.
  • the data processing circuit off FIG. 2 has in contrast to those off FIG. 1 no multiplexer for supplying encryption key 107 with a new key. Instead, the data processing circuit is off FIG. 2 is connected via a drive line 122 to a conversion module 120, which in turn communicates with an address bus 121 of the CPU 101. A further control line 123 leads to the conversion module 120, with which a specific conversion from a selection of different translations stored in the conversion module 120 from "address" to "key” can be selected. As a result of the conversion module 120, a key is derived from an address present in the CPU 101.
  • the electronic data processing circuitry behaves FIG. 2 essentially like the one out FIG. 1 .
  • a start key in the encryption module 107 is set to a signal on the drive line 123.
  • all data traffic between data bus 106 and CPU 101 in encryption unit 107 is decrypted, with each pass of data through encryption unit 107 performing a corresponding operation according to the data flow direction.
  • the conversion module 120 derives a key from an address present in the CPU 101 based on a new conversion.
  • the data in the data memories 102, 103, 104 and 105 are always stored in encrypted form. Therefore, the data on the data bus 106 is encrypted and transported to the CPU 101, where it is decrypted again by the encryption board 107. Only then will the data be available unencrypted for processing in the CPU.
  • FIG. 3 has a CPU 1 as an operating board as well as several data memories. Specifically, these are a ROM 2, an EEPROM 3, a FLASH memory 4 and a RAM 5.
  • the data memories 2, 3, 4, 5 and the CPU 1 are connected to each other via a data bus, not shown in this view. Instead of the data bus, individual data lines 6, 7, 8, 9, 10, 11, 12, 13, 14 and 15 are provided in this view, via which the CPU 1 exchanges data with the data memories 2, 3, 4, 5.
  • the EEPROM 3 the FLASH 4 and the RAM 5 is still a latch latch 16, 17, 18, 19 are arranged.
  • encryption boards 20, 21, 22 and 35 are provided which encrypt or decrypt the data traffic on their assigned data lines.
  • encryption device although they are expressly not limited to devices that perform encryption only. In accordance with the basic idea of the invention, this term also refers to devices which execute both an encryption and a decryption or only one of these two operations.
  • the encryption or decryption can be done by a suitable delay, by swapping individual bit lines of the data lines or by a Change the valence of individual data bits done.
  • Software encryption can also be performed.
  • the encryption modules 20, 21, 22 and 35 are designed such that the data traffic on the data lines assigned to them is respectively only partially encrypted or decrypted. A complete encryption or decryption only results from an interaction of each of the encryption modules 20, 21, 22 with the encryption module 35.
  • the data processing circuit has a multiplexer 23 which is connected to the FLASH memory 4 via a data line 24.
  • the multiplexer 23 is connected via a data line 25 to a timer 26, to which a random number can be supplied via a data line 27 from a random number generator 28.
  • the multiplexer 23 also has a drive line 29, via which it communicates with the ROM 2.
  • the output of the multiplexer 23 is connected via control lines 30, 31, 32, 33, 34 with the encryption modules 20, 21, 22, 35, wherein the encryption modules 20, 21, 22, 35 in response to an output signal of the multiplexer 23 with a new Keys are supplied.
  • the electronic data processing circuit behaves as follows. Each time the instruction "CLR C" is executed, the ROM 2 transmits a drive pulse to the multiplexer 23 via the drive line 29. The multiplexer 23 then fetches one of the three keys KEY 3, KEY 2, KEY 1 from the FLASH memory via the data line 24 4 and transmits this to the encryption boards 20, 21, 22 and 35. If a predetermined operating time of the data processing circuit is exceeded without the multiplexer 23 being activated by the ROM 2, then the timer 26 is activated. By the operation of the timer 26 is the multiplexer 23 via the data line 25 a random number transmitted from the random number generator 28. The multiplexer 23 then transmits the random number to the encryption modules 20, 21, 22, 35.
  • the data in the ROM 2 are stored encrypted and they are only partially decrypted when read in the latch 16 by the encryption device 20. Therefore, the data from the ROM 2 on the data line 8 is still partly encrypted transported to the CPU 1, where they are completely decrypted by the encryption board 35. Only then are the data unencrypted for processing in the CPU 1 ready.
  • the encrypted data provided in the EEPROM 3 are transmitted encrypted via the data line 9 to the latch 17 and forwarded from there to the encryption module 21, where they are partially decrypted. From there, the still partially encrypted data pass via the data line 11 to the CPU 1, where they are completely decrypted by the encryption module 35 and then ready for processing.
  • Data for the FLASH memory 4 and for the RAM 5 are first partially encrypted by the encryption module 35 and by the encryption module 22 before being stored in encrypted form in the FLASH memory 4 or in the RAM 5.
  • the data partially encrypted in the encryption module 35 of the CPU 1 are transmitted via the data line 11 to the encryption module 22 where they are completely encrypted before being assigned to the FLASH memory 4 and the RAM 5 via the data lines 13 and 14, respectively Latches 18, 19 are handed over. Of the latches 18, 19, the encrypted data pass via data lines 12, 15 to the FLASH memory 4 or RAM 5.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)
  • Credit Cards Or The Like (AREA)

Description

  • Die Erfindung betrifft eine elektronische Datenverarbeitungsschaltung mit einer Betriebsbaugruppe wie beispielsweise einem Mikroprozessor, mit wenigstens einem Datenspeicher und mit einem sich zwischen Datenspeicher und Betriebsbaugruppe erstreckendem Datenbus, wobei der Datenverkehr zwischen der Betriebsbaugruppe und dem wenigstens einen Datenspeicher verschlüsselt wird.
  • Die gattungsgemäßen elektronischen Datenverarbeitungsschaltungen werden häufig bei sicherheitskritischen Anwendungen eingesetzt. Dabei werden im Datenspeicher vertrauliche Daten, Geldwerte und Zugangsberechtigungen abgelegt, die von der Betriebsbaugruppe beispielsweise auf eine externe Anforderung hin verarbeitet werden.
  • Da der Speicher Informationen enthält, auf die möglichst nicht zugegriffen werden soll, ist es notwendig, Sicherheitsmaßnahmen gegen Manipulationen der elektronischen Datenverarbeitungsschaltung zu treffen.
  • Wenn eine gattungsgemäße elektronische Datenverarbeitungsschaltung als integrierter Schaltkreis ausgeführt ist, kann diese mit verschiedenen Passivierungsschichten abgedeckt werden. Dabei können die Passivierungsschichten so angelegt sein, dass eine Entfernung einer Passivierungsschicht die Zerstörung des Datenspeichers zur Folge hat. Weiterhin kann man den Datenspeicher in tieferliegenden Schichten des integrierten Schaltkreises vergraben, so dass der Zugriff auf ihn erschwert wird.
  • Eine weitere Möglichkeit, eine elektronische Datenverarbeitungsschaltung gegen unerwünschte Manipulationen zu schützen, besteht in der Verwendung von Sensoren, die Betriebsbedingungen der elektronischen Datenverarbeitungsschaltung abtasten. Sobald ein von einem Sensor abgetastete Wert außerhalb eines normalen Wertes liegt, werden entsprechende Sicherungsmaßnahmen ausgelöst, die zu einer Inaktivierung der elektronischen Datenverarbeitungsschaltung oder auch zu einem Löschen des Datenspeichers führen.
  • Weiterhin gibt es auch Software-Sensoren, die den Betrieb der Betriebsbaugruppe auf verbotene Befehle hin oder auf Zugriffe auf Adressbereiche hin überwachen, die für einen bestimmungsgemäßen Betrieb gesperrt sind. Außerdem kann die Zugangssequenz auf ihre Richtigkeit hin überwacht werden.
  • Schließlich ist es noch bekannt, in einem besonderen Herstellungsmodus erlaubte Speicherzugriffe der Betriebsbaugruppe auf den Datenspeicher durch besondere Hardware-Vorrichtungen wie beispielsweise auftrennbar ausgestaltete Verbindungsbahnen einzuschränken.
  • Die Druckschrift EP0449256 offenbart eine elektronische Datenverarbeitungsschaltung mit einem Mikroprozessor und zwei Datenspeichern, wobei im Bereich zwischen den die Datenspeicher und die Betriebsbaugruppe verbindenden Datenleitungen des Datenbuses eine Verschlüsselungsbaugruppe vorgesehen ist.
  • Die Druckschrift GB-A-2099616 beschreibt eine elektronische Datenverarbeitungsschaltung mit einem Mikroprozessor und einem Datenspeicher, der verschlüsselte Daten speichert, wobei im Bereich zwischen dem Mikroprozessor und dem Datenspeicher eine Entschlüsselungsbaugruppe und eine Verschlüsselungsbaugruppe parallel auf einem Datenbus angebracht sind.
  • In dem Dokument "Section 1: Introduction Data Book Soft Microcontroller, 6. Oktober 1993, Seiten 1-3, 7, 8, 73, 77-80, 82, 152-156, 229, 290-292" werden Speicherdaten mittels einem Algorithmus und einem Schlüssel, der durch einen Hardwarezufallsgenerator generiert wird, verschlüsselt.
  • Die US 5,386,469 beschreibt einen Schlüsselgenerator, der einen Schlüssel generiert, um verschlüsselte Instruktionen von einem Speicher mittels eines EXOR-Gliedes zu entschlüsseln, um die entschlüsselten Instruktionen dann an einen Mikroprozessor zu senden.
  • Die US 4,598,170 beschreibt die Verschlüsselung von Daten indem die Anschlußreihenfolge von den Datenleitungen des Datenbuses selektiv verändert wird.
  • In der WO-A-95/16238 werden die Schlüssel, mittels denen verschlüsselt bzw. entschlüsselt wird, in einer Flash-Zelle abgelegt.
  • Trotz der bevorstehend ausgeführten Sicherheitsmaßnahmen kommt es dennoch gelegentlich zu unerwünschten Manipulationen an den gattungsgemäßen elektronischen Datenverarbeitungsschaltungen.
  • Es ist daher Aufgabe der Erfindung, eine gattungsgemäße elektronische Datenverarbeitungsschaltung bereitzustellen, die einen verbesserten Schutz gegen unerwünschte Veränderungen aufweist.
  • Diese Aufgabe wird gemäß der Erfindung durch eine elektronische Datenverarbeitungsschaltung gemäß Anspruch 1 gelöst.
  • Die Erfindung beruht auf der erfindungswesentlichen Erkenntnis, daß sich durch neue technische Verfahren die Manipulierbarkeit gerade von als integrierte Schaltkreise ausgeführte elektronische Datenverarbeitungsschaltungen erleichtert hat. So ist aus der Sicht eines Manipulierers eine elektronische Datenverarbeitungsschaltung in einem integrierten Schaltkreis nicht mehr nur als Chip in seiner Gesamtheit zu sehen, sondern als ein aus einzelnen Komponenten auf einem Siliziumträger bestehendes System, bei dem auf die Komponenten separat zugegriffen werden kann.
  • Demzufolge gibt es die Möglichkeit, durch Beobachtung des Datenverkehrs auf dem Datenbus oder durch Auslesen des Datenspeichers Rückschlüsse auf die im Datenspeicher gespeicherten Informationen zu ziehen, so daß eine Manipulation erleichtert wird.
  • Gemäß einer weiteren erfindungswesentlichen Erkenntnis lassen sich viele Manipulationen an den gattungsgemäßen elektronischen Datenverarbeitungsschaltungen darauf zurückführen, daß es gelungen ist, den Datenverkehr auf dem Datenbus "abzuhören", so daß der Programmablauf in der Betriebsbaugruppe beobachtet und unerwünschterweise verstanden werden kann.
  • Gemäß der Erfindung wird vorgeschlagen, die Daten in der elektronischen Datenverarbeitungsschaltung verschlüsselt zu transportieren, wobei zwischen Datenbus und Datenspeicher bzw. Betriebsbaugruppe und Datenbus Einrichtungen vorgesehen sind, um den auf dem Datenbus transportierten Datenverkehr zu verschlüsseln und zu entschlüsseln. Die derartigen Einrichtungen werden nachfolgend mit "Verschlüsselungsbaugruppe" bezeichnet, wobei diese Bezeichnung ausdrücklich nicht auf Einrichtungen beschränkt ist, die lediglich eine Verschlüsselung ausführen. Gemäß dem Grundgedanken der Erfindung sind mit dieser Bezeichnung auch Einrichtungen gemeint, die sowohl eine Verschlüsselung als auch eine Entschlüsselung bzw. nur eine dieser beiden Operationen ausführen.
  • Durch die erfindungsgemäße Ausgestaltung der elektronischen Datenverarbeitungsschaltung ist gewährleistet, daß selbst bei einem erfolgreichen Nachverfolgen des Datenverkehrs auf dem Datenbus nicht direkt auf die im Datenspeicher gespeicherten Daten geschlossen werden kann. Weiterhin ist es nicht ohne weiteres möglich, aus den beim Nachverfolgen des Datenverkehrs auf dem Datenbus gewonnenen Informationen auf den Programmablauf zurückzuschließen. Selbst bei einem erfolgreichen Auslesen der im Datenspeicher gespeicherten Daten kann nämlich nicht ohne weiteres auf deren Bedeutung zurückgeschlossen werden, da diese für einen unbefangenen Beobachter keinen Sinn ergeben.
  • Dabei ist es gemäß der Erfindung besonders vorteilhaft, daß die Verschlüsselung und Entschlüsselung gemäß der Erfindung über den gesamten Chip verteilt bzw. disloziert erfolgt, weil für eine erfolgreiche Manipulation eine gleichzeitige Beobachtung von mehreren Stellen der elektronischen Datenverarbeitungsschaltung notwendig wäre, was technisch nur schwer durchzuführen ist.
  • Dabei ist bei einem mit Latch-Zwischenspeicher zur Zwischenspeicherung von Zugriffen auf den Datenspeicher versehenen elektronischen Datenverarbeitungsschaltungen wesentlich, daß die Verschlüsselungsbaugruppe so angeordnet wird, daß der Inhalt des Latch-Zwischenspeichers stets verschlüsselt ist. Der Inhalt der Latches kann nämlich relativ leicht beobachtet werden, so daß deren Inhalt im Betrieb der erfindungsgemäßen Datenverarbeitungsschaltung sicherheitshalber verschlüsselt vorliegen muß.
  • Die Verschlüsselung und Entschlüsselung kann sich gemäß der Erfindung bis in eine CPU einer erfindungsgemäßen Datenverarbeitungsschaltung hinein erstrecken. Darüber hinaus kann die Verschlüsselung und die Entschlüsselung auch voneinander unabhängig in mehreren Verschlüsselungsbaugruppen erfolgen.
  • Schließlich ergibt sich noch ein Vorteil bei Datenverarbeitungsschaltungen, die in einer Multitasking-Verarbeitung verschiedene Applikationen simultan verarbeiten. Dann können durch geeignete Verschlüsselung verschiedenen Applikationen bzw. Tasks verschiedene Datenspeicher zugeordnet werden, wobei für jede Task ein unterschiedlicher Schlüssel vereinbart wird. Dadurch kann eine Task nicht auf Daten der anderen Task zugreifen.
  • Zusammenfassend läßt sich daher feststellen, daß es gemäß der Erfindung nun nicht mehr genügt, die Datenverarbeitungsschaltung nur physikalisch zu untersuchen. Zusätzlich muß nun insbesondere unter gleichzeitiger Beobachtung mehrerer Komponenten auch der in der Verschlüsselungsbaugruppe bzw. in den Verschlüsselungsbaugruppen gespeicherte Schlüssel und gegebenenfalls die Aktivierung dieses Schlüssels erkannt werden.
  • In Ausbildung der Erfindung ist die Verschlüsselungsbaugruppe so ausgebildet, daß Datenverkehr auf dem Datenbus mittels eines Verschlüsselungs-Algorithmus verschlüsselbar ist. Eine derartig ausgebildete Verschlüsselungsbaugruppe bringt den Vorteil mit sich, bei einer Massenfertigung besonders kostengünstig herstellbar zu sein. Jedoch dauert eine Verschlüsselung mit einem Algorithmus sehr lang, da dadurch umfangreiche Berechnungen in der Betriebsbaugruppe notwendig werden. Ein Echtzeit-Betrieb dieser erfindungsgemäßen Datenverarbeitungsschaltung ist daher derzeit noch nicht möglich.
  • In weiterer Ausgestaltung der Erfindung sind die erste und die zweite Verschlüsselungsbaugruppe so ausgebildet, dass Datenverkehr auf dem Datenbus mittels Hardware-Verschlüsselung verschlüsselt wird. Gerade bei Hardware-Verschlüsselung ist ein Betrieb der erfindungsgemäßen Datenverarbeitungsschaltungen in Echtzeit bereits auf sehr einfache Weise zu verwirklichen, und zwar sowohl bei Lese- als auch bei Schreibzugriff auf den Datenspeicher.
  • Eine Hardware-Verschlüsselung kann gemäß der Erfindung mit einer ersten oder einer zweiten Verschlüsselungsbaugruppe erfolgen, die so ausgebildet ist, dass die Wertigkeiten einzelner Bit des Datenverkehrs selektiv änderbar ist. Dann erscheinen Bits, die im Speicher beispielsweise als "LOW" abgelegt sind, im Datenverkehr auf dem Datenbus als "HIGH". Dies kann zum Beispiel mit einer Verschlüsselungsbaugruppe erfolgen, die wenigstens ein EXOR-Glied aufweist.
  • In weiterer Ausgestaltung der Erfindung kann die erste oder die zweite Verschlüsselungsbaugruppe so ausgebildet sein, dass die Anschlussreihenfolge von Datenleitungen des Datenbus selektiv änderbar ist. Dies äußert sich nach außen hin so, als ob einzelne Bitleitungen des Datenbus vertauscht wären.
  • Schließlich kann die Hardware-Verschlüsselung bei der erfindungsgemäßen Datenverarbeitungsschaltung auch durch eine Verschlüsselungsbaugruppe ausgeführt werden, die so ausgebildet ist, dass der Datenverkehr zwischen Datenbus und Betriebsbaugruppe und/oder zwischen Datenbus und Datenspeicher wenigstens teilweise selektiv verzögerbar ist. Dadurch wird auf dem Datenbus ein Datenverkehr vorgetäuscht, der keinen Bezug zu dem momentanen Betriebszustand der erfindungsgemäßen elektronischen Datenverarbeitungsschaltung hat. Dabei besteht ein wesentliches Merkmal der erfindungsgemäßen Datenverarbeitungsschaltung darin, dass die erste oder die zweite Verschlüsselungsbaugruppe so ausgebildet ist, dass die Verschlüsselung selektiv arbeitet. Dies bedeutet nicht nur, dass eine Verschlüsselung wahlweise erfolgen oder unterbleiben kann. Darüber hinaus umfasst dies gemäß der Erfindung auch, dass zwischen verschiedenen Schlüsseln zum Verschlüsseln des Datenverkehrs gewechselt werden kann. In diesem Fall bekommt der Einsatz der erfindungsgemäßen Verschlüsselungsbaugruppe ein dynamisches Verhalten.
  • Gerade bei der erfindungsgemäßen Datenverarbeitungsschaltung mit wechselnden Schlüsseln ist vorgesehen, dass Datenverarbeitungsschaltungen eines Fertigungsloses jeweils unterschiedliche und individuelle Schlüssel bekommen. Dadurch ist gewährleistet, dass selbst bei Kenntnis des Schlüssels einer Datenverarbeitungsschaltung noch nicht auf die Schlüssel anderer Datenverarbeitungsschaltungen geschlossen werden kann.
  • In Ausgestaltung des Grundgedankens der Erfindung weist die erste oder die zweite Verschlüsselungsbaugruppe wenigstens einen Eingang zur Eingabe wenigstens eines Schlüssels auf. Dieser Eingang in die Verschlüsselungsbaugruppe kann jedoch auch dazu verwendet werden, zwischen bestimmten, in der Verschlüsselungsbaugruppe selbst gespeicherten Schlüsseln und sogar zwischen den in der Verschlüsselungsbaugruppe angewendeten Verschlüsselungsverfahren umzuschalten. Es ist auch ganz einfach möglich, ein einziges Verschlüsselungsverfahren zu aktivieren bzw. zu deaktivieren. Abweichend davon kann über den Eingang auch ein außerhalb der Verschlüsselungsbaugruppe abgespeicherter Schlüssel eingegeben werden. Dazu wird der Schlüssel vorteilhafterweise in einer FLASH-Zelle oder in einer EEPROM-Zelle abgelegt. Die vorstehenden Zellen gelten als relativ sicher, weil die Informationen auf einem Floating-Gate mit nur "wenigen" Elektronen gespeichert sind. Die meisten Versuche, deren Inhalt auszulesen, zerstören die gespeicherte Information. Von daher ergibt sich gemäß dieser Ausgestaltung der Erfindung eine besonders sichere Verschlüsselung des Datenverkehrs. Weiterhin haben alle FLASH-Zellen den Vorteil der Programmierbarkeit. So können auf einfache Weise bei der Auslieferung der erfindungsgemäßen Datenverarbeitungsschaltung in jede Schaltung individuelle Schlüssel einprogrammiert und für weitere Veränderungen gesperrt werden.
  • Eine weitere Verbesserung der Sicherheit ergibt sich dann, wenn der Schlüssel in einer vergrabenen Struktur eines integrierten Bausteins abgelegt ist, wobei der integrierte Baustein vorteilhafterweise auch die Datenverarbeitungsschaltung aufnimmt. Vergrabene Strukturen bieten den Vorteil, daß sie dezentral an verschiedenen Stellen des integrierten Bausteins ausgeführt werden können. Dies erhöht die Sicherheit beträchtlich, da es sehr schwierig ist, verschiedene Stellen einer in einen integrierten Baustein aufgenommenen Datenverarbeitungsschaltung gleichzeitig zu beobachten. Darüber hinaus können auch Sensoren vorgesehen sein, die Manipulationen des Orts, an dem der Schlüssel abgelegt ist, abtasten und die erfindungsgemäße Datenverarbeitungsschaltung für diesen Fall deaktivieren oder sonstwie unbrauchbar machen.
  • Alternativ zu den bei der Herstellung der erfindungsgemäßen Datenverarbeitungsschaltung abgespeicherten Schlüsseln kann jedoch auch ein Zufallsgenerator vorgesehen sein, mit dem ein Schlüssel zufällig auswählbar ist.
  • Gemäß einer besonders vorteilhaften Ausgestaltung der Erfindung wird die Auswahl des in der Verschlüsselungsbaugruppe verwendeten Schlüssels von der Betriebsbaugruppe insbesondere während des Programmablaufs durchgeführt. Dazu ist die Datenverarbeitungsschaltung gemäß der Erfindung so ausgebildet, daß bei Ausführung vorbestimmter Operationen durch die Betriebsbaugruppe ein Schlüssel an die Verschlüsselungsbaugruppe eingebbar ist. Da der Programmcode der Betriebsbaugruppe eventuell bekannt sein kann, erfolgt die Schlüsselauswahl vorteilhafterweise versteckt im normalen Programmcode. So könnte die Betriebsbaugruppe beispielsweise derart ausgebildet sein, daß bei Ausführen eines unverfänglichen Befehls wie beispielsweise CLR C ("CLEAR CARRY") der Schlüssel der Verschlüsselungs-baugruppe bzw. Verschlüsselungsbaugruppen gewechselt wird.
  • Darüber hinaus kann auch eine Zeitmessvorrichtung vorgesehen sein, die einen Wechsel des Schlüssels überwacht, und einen solchen Wechsel auslöst, wenn der Schlüssel nicht oft genug gewechselt wird.
  • Schließlich ist hinsichtlich der in den Verschlüsselungsbaugruppen verwendeten Schlüssel vorgesehen, daß die Schlüssel durch die Betriebsbaugruppe bzw. die CPU erzeugt werden. Dies erfolgt beispielsweise durch Ableiten eines Schlüssels mit einem Umsetzungsverfahren aus einer durch die CPU generierten Adresse. Der Vorteil dieses Verfahrens besteht darin, daß sich der Schlüssel ständig - also mit jeder Adresse - ändert. Durch die Auswahl verschiedener Umsetzungsverfahren kann der Programmierer der Betriebsbaugruppe auf die Verschlüsselung Einfluß nehmen.
  • Zusammenfassend ist zu sagen, daß der Datenverkehr in der erfindungsgemäßen Datenverarbeitungsschaltung von einem Manipulierer nur dann verstanden werden kann, wenn der jeweils in der Verschlüsselungsbaugruppe verwendete Schlüssel bekannt ist. Auch die im Datenspeicher abgelegten Daten können nur unter Kenntnis des zum Datenspeicher zugehörigen Schlüssels verstanden werden. Dies erhöht die Sicherheit gegen Manipulationen beträchtlich.
  • Selbstverständlich muß ein Programmierer, der die Betriebsbaugruppe der Datenverarbeitungsschaltung programmiert, eine vertrauliche Liste führen, welche zum Schlüssel zugehörigen Daten er in welchen Adressen des Datenspeichers bzw. der Datenverarbeitungsschaltung abgelegt hat. Je nach Art des Schlüssels kann der Programmierer auch gewisse zu erfüllende Vorbedingungen vorsehen, die sich beispielsweise dadurch äußern, dass immer Werte-Paare gelesen werden müssen.
  • Gemäß der Erfindung ist die elektronische Datenverarbeitungsschaltung derart eingerichtet, dass im Bereich mindestens einer die Betriebsbaugruppe und wenigstens einen Datenspeicher verbindenden Datenleitung des Datenbus wenigstens zwei Verschlüsselungsbaugruppen vorgesehen sind, die so ausgebildet sind, dass eine vollständige Verschlüsselung bzw. Entschlüsselung erst durch das Zusammenwirken der beiden Verschlüsselungsbaugruppen ausführbar ist. Vorteilhafterweise sind die beiden Verschlüsselungsbaugruppen an verschiedenen Orten der elektronischen Datenverarbeitungsschaltung angeordnet. Durch die erfindungsgemäße Ausgestaltung ist gewährleistet, dass eine Verschlüsselung des Datenverkehrs an zwei verschiedenen Orten erfolgt. Ein typischer Manipulierer wird möglicherweise nur eine Verschlüsselung an einem einzigen Ort, nämlich bei einer einzigen Verschlüsselungsbaugruppe nachvollziehen und beim Anwenden der Verschlüsselung trotzdem zu keinem brauchbaren Ergebnis kommen. Gerade bei einer Ausführung mit zwei Verschlüsselungsbaugruppen, die an verschiedenen Orten untergebracht sind, ist es nämlich besonders schwierig, eine Verschlüsselung nachzuvollziehen, da zwei verschiedene Orte einer Mikrostruktur nur auf besonders schwierige Weise gleichzeitig beobachtet werden können. Die so ausgeführten Verschlüsselungsbaugruppen können beispielsweise dergestalt ausgeführt sein, dass eine Verschlüsselungsbaugruppe an einem Ort die unteren vier Bits eines Datenbus verschlüsselt bzw. entschlüsselt, während die andere Verschlüsselungsbaugruppe die übrigen Bits des Datenbus verschlüsselt bzw. entschlüsselt. Ein weiterer Vorteil der erfindungsgemäßen Anordnung ergibt sich bei denjenigen gattungsgemäßen Datenverarbeitungsschaltungen, bei denen man aus Sicherheitsgründen erreichen möchte, dass nicht alle Komponenten der Datenverarbeitungsschaltung miteinander kommunizieren können. Dann kann durch geeignete Ausgestaltung des Schlüssels beispielsweise mit einer definierten Anzahl von Verschlüsselungs-Einheiten nur bei den dafür vorgesehenen Verbindungswegen des Datenbus kommuniziert werden. Alle anderen Verbindungen mit nicht geeigneten Verschlüsselungen können nicht richtig funktionieren.
  • Die Erfindung ist in der Zeichnung anhand der Figur 3 näher veranschaulicht. Es zeigen:
  • Figur 1
    zeigt eine elektronische Datenverarbeitungsschaltung mit nur einer einzigen Verschlüsselungseinrichtung in der CPU,
    Figur 2
    zeigt eine Variante der elektronischen Datenverarbeitungsschaltung aus Figur 1, und
    Figur 3
    zeigt eine erfindungsgemäße elektronische Datenverarbeitungsschaltung mit Verschlüsselungseinrichtungen in der CPU sowie im Bereich der Datenspeicher.
  • Figur 1 zeigt eine Datenverarbeitungsschaltung, die eine CPU 101 als Betriebsbaugruppe sowie mehrere Datenspeicher aufweist. Im Einzelnen sind dies ein ROM 102, ein EEPROM 103, ein FLASH-Speicher 104 sowie ein RAM 105. Die Datenspeicher 102, 103, 104, 105 und die CPU 101 sind über einen Datenbus 106 miteinander verbunden.
  • In der CPU 101 ist eine Verschlüsselungsbaugruppe 107 vorgesehen, die den Datenverkehr zwischen CPU 1 und den Datenspeichern 102, 103, 104 sowie 105 verschlüsselt bzw. entschlüsselt. Hier sei noch einmal darauf hingewiesen, dass die derartige Einrichtung nachfolgend mit "Verschlüsselungsbaugruppe" bezeichnet wird, obwohl sie ausdrücklich nicht auf eine Einrichtung beschränkt ist, die lediglich eine Verschlüsselung ausführt. Mit dieser Bezeichnung ist auch eine Einrichtung gemeint, die sowohl eine Verschlüsselung als auch eine Entschlüsselung bzw. nur eine dieser beiden Operationen ausführt. Die Ver- bzw. Entschlüsselung kann dabei durch eine geeignete Verzögerung, durch ein Vertauschen von einzelnen Bitleitungen des Datenbus oder durch ein Verändern der Wertigkeiten einzelner Datenbits erfolgen. Auch eine Software-Verschlüsselung kann ausgeführt werden.
  • Weiterhin hat die Datenverarbeitungsschaltung einen Multiplexer 108, der über eine Datenleitung 109 mit dem FLASH-Speicher 104 in Verbindung steht. Der Multiplexer 108 steht über eine Datenleitung 110 mit einem Timer 111 in Verbindung, dem über eine Datenleitung 112 von einem Zufallgenerator 113 eine Zufallszahl zuführbar ist. Der Multiplexer 108 weist auch eine Ansteuerleitung 114 auf, über die er mit dem ROM 102 in Verbindung steht. Schließlich ist noch eine RESET-Leitung 115 zum Multiplexer 108 vorgesehen, über die der Multiplexer 108 bei einem Reset der Datenverarbeitungsschaltung auf einen Grundzustand rücksetzbar ist. Der Ausgang des Multiplexers 108 steht über eine Ansteuerleitung 116 mit der Verschlüsselungsbaugruppe 107 in Verbindung, wobei die Verschlüsselungsbaugruppe 107 auf ein Ausgangssignal des Multiplexers 108 hin mit einem neuen Schlüssel versorgt wird. Es ist auch vorgesehen, dass in der Verschlüsselungsbaugruppe 107 auf ein Ausgangssignal des Multiplexers 108 über die Ansteuerleitung 116 hin das in der Verschlüsselungsbaugruppe 107 verwendete Verschlüsselungsverfahren umgeschaltet wird.
  • Im Betrieb verhält sich die elektronische Datenverarbeitungsschaltung wie folgt. Beim Programmstart (RESET) wird auch ein Signal auf der RESET-Leitung 115 im
  • Multiplexer ein Start-Schlüssel eingestellt. Daraufhin wird der Datenverkehr zwischen Datenbus 106 und CPU 101 in der Verschlüsselungsbaugruppe 107 verschlüsselt bzw. entschlüsselt, wobei bei jedem Durchgang von Daten durch die Verschlüsselungsbaugruppe 107 eine entsprechende Operation entsprechend der Datenflußrichtung ausgeführt wird. Bei jeder Ausführung des Befehls "CLR C" übermittelt das ROM 102 über die Ansteuerleitung 114 einen Ansteuerimpuls an den Multiplexer 108. Der Multiplexer 108 holt daraufhin über die Datenleitung 109 einen der drei Schüssel KEY 3, KEY 2, KEY 1 aus dem FLASH-Speicher 104 und übermittelt diesen an die Verschlüsselungsbaugruppe 107. Daraufhin wird entweder der in der Verschlüsselungsbaugruppe 107 verwendete Schlüssel ausgetauscht oder je nach Wertigkeit des auf der Ansteuerleitung 116 anliegenden Signals eine Umschaltung zwischen einem in der Verschlüsselungsbaugruppe 107 angewendeten Verschlüsselungsverfahren bewirkt. Wird eine bestimmte Betriebszeit der Datenverarbeitungsschaltung überschritten, ohne daß der Multiplexer 108 durch das ROM 102 aktiviert wird, tritt der Timer 111 in Aktion. Durch die Betätigung des Timers 111 wird dem Multiplexer 108 über die Datenleitung 110 eine Zufallszahl aus dem Zufallsgenerator 113 übermittelt. Der Multiplexer 108 übermittelt dann die Zufallszahl an die Verschlüsselungsbaugruppe 107.
  • Die Daten in den Datenspeichern 102, 103, 104 und 105 sind verschlüsselt abgelegt. Daher werden die Daten auf dem Datenbus 106 verschlüsselt zur CPU 101 transportiert, wo sie von der Verschlüsselungsbaugruppe 107 wieder entschlüsselt werden. Erst danach stehen die Daten unverschlüsselt zur Verarbeitung in der CPU bereit.
  • Figur 2 zeigt eine Variante der Datenverarbeitungsschaltung aus Figur 1, die ebenfalls eine CPU 101 als Betriebsbaugruppe sowie mehrere Datenspeicher aufweist. Im Einzelnen sind dies ein ROM 102, ein EEPROM 103, ein FLASH-Speicher 104 sowie ein RAM 105. Die Datenspeicher 102, 103, 104, 105 und die CPU 101 sind über einen Datenbus 106 miteinander verbunden.
  • In der CPU 101 ist eine Verschlüsselungsbaugruppe 107 vorgesehen, die den Datenverkehr zwischen CPU 1 und den Datenspeichern 102, 103, 104 sowie 105 verschlüsselt bzw. entschlüsselt.
  • Die Datenverarbeitungsschaltung aus Figur 2 hat im Gegensatz zu derjenigen aus Figur 1 keinen Multiplexer zur Versorgung der Verschlüsselungsbaugruppe 107 mit einem neuen Schlüssel. Statt dessen ist die Datenverarbeitungsschaltung aus Figur 2 über eine Ansteuerleitung 122 mit einer Umsetzungsbaugruppe 120 verbunden, die ihrerseits mit einem Adressbus 121 der CPU 101 in Verbindung steht. Zu der Umsetzungsbaugruppe 120 führt eine weitere Ansteuerleitung 123, mit der eine bestimmte Umsetzung aus einer Auswahl verschiedener in der Umsetzungsbaugruppe 120 gespeicherter Umsetzungen von "Adresse" auf "Schlüssel" auswählbar ist. Durch die Umsetzungsbaugruppe 120 wird dadurch ein Schlüssel aus einer in der CPU 101 anliegenden Adresse abgeleitet.
  • Im Betrieb verhält sich die elektronische Datenverarbeitungsschaltung aus Figur 2 im wesentlichen wie diejenige aus Figur 1. Beim Programmstart (RESET) wird auf ein Signal auf der Ansteuerleitung 123 ein Start-Schlüssel in der Verschlüsselungsbaugruppe 107 eingestellt. Daraufhin wird jeglicher Datenverkehr zwischen Datenbus 106 und CPU 101 in der Verschlüsselungsbaugruppe 107 verschlüsselt bzw. entschlüsselt, wobei bei jedem Durchgang von Daten durch die Verschlüsselungsbaugruppe 107 eine entsprechende Operation entsprechend der Datenflußrichtung ausgeführt wird. Bei jeder Aktivierung der Ansteuerleitung 123 leitet die Umsetzungsbaugruppe 120 auf der Basis einer neuen Umsetzung einen Schlüssel aus einer in der CPU 101 anliegenden Adresse ab.
  • Die Daten in den Datenspeichern 102, 103, 104 und 105 sind stets verschlüsselt abgelegt. Daher werden die Daten auf dem Datenbus 106 verschlüsselt zur CPU 101 transportiert, wo sie von der Verschlüsselungsbaugruppe 107 wieder entschlüsselt werden. Erst danach stehen die Daten unverschlüsselt zur Verarbeitung in der CPU bereit.
  • Die erfindungsgemäße Datenverarbeitungsschaltung aus Figur 3 hat eine CPU 1 als Betriebsbaugruppe sowie mehrere Datenspeicher. Im Einzelnen sind dies ein ROM 2, ein EEPROM 3, ein FLASH-Speicher 4 sowie ein RAM 5. Die Datenspeicher 2, 3, 4, 5 und die CPU 1 sind über einen in dieser Ansicht nicht dargestellten Datenbus miteinander verbunden. Anstelle des Datenbus sind in dieser Ansicht einzelne Datenleitungen 6, 7, 8, 9, 10, 11, 12, 13, 14 und 15 vorgesehen, über die die CPU 1 Daten mit den Datenspeichern 2, 3, 4, 5 austauscht. Zwischen der CPU 1 und dem ROM 2, dem EEPROM 3, dem FLASH 4 und dem RAM 5 ist noch je ein Latch-Zwischenspeicher 16, 17, 18, 19 angeordnet.
  • Im Bereich zwischen dem ROM 2 und dem Latch 16, im Bereich zwischen dem Latch 17 und der CPU 1, im Bereich zwischen den Latches 18, 19 und der CPU 1 sowie in der CPU 1 selbst sind Verschlüsselungsbaugruppen 20, 21, 22 und 35 vorgesehen, die den Datenverkehr auf den ihnen zugeordneten Datenleitungen verschlüsseln bzw. entschlüsseln. Hier sei noch einmal darauf hingewiesen, daß die derartigen Einrichtungen nachfolgend mit "Verschlüsselungsbaugruppe" bezeichnet werden, obwohl sie ausdrücklich nicht auf Einrichtungen beschränkt sind, die lediglich eine Verschlüsselung ausführen. Gemäß dem Grundgedanken der Erfindung sind mit dieser Bezeichnung auch Einrichtungen gemeint, die sowohl eine Verschlüsselung als auch eine Entschlüsselung bzw. nur eine dieser beiden Operationen ausführen. Die Ver- bzw. Entschlüsselung kann dabei durch eine geeignete Verzögerung, durch ein Vertauschen von einzelnen Bitleitungen der Datenleitungen oder durch ein Verändern der Wertigkeit einzelner Datenbits erfolgen. Auch eine Software-Verschlüsselung kann ausgeführt werden.
  • Die Verschlüsselungsbaugruppen 20, 21, 22 und 35 sind so ausgebildet, daß der Datenverkehr auf den ihnen zugeordneten Datenleitungen jeweils nur teilweise verschlüsselt bzw. entschlüsselt wird. Eine vollständige Verschlüsselung bzw. Entschlüsselung ergibt sich erst bei einem Zusammenwirken je einer der Verschlüsselungsbaugruppen 20, 21, 22 mit der Verschlüsselungsbaugruppe 35.
  • Weiterhin hat die erfindungsgemäße Datenverarbeitungsschaltung einen Multiplexer 23, der über eine Datenleitung 24 mit dem FLASH-Speicher 4 in Verbindung steht. Der Multiplexer 23 steht über eine Datenleitung 25 mit einem Timer 26 in Verbindung, dem über eine Datenleitung 27 von einem Zufallszahlgenerator 28 eine Zufallszahl zuführbar ist. Der Multiplexer 23 weist auch eine Ansteuerleitung 29 auf, über die er mit dem ROM 2 in Verbindung steht.
  • Der Ausgang des Multiplexers 23 steht über Ansteuerleitungen 30, 31, 32, 33, 34 mit den Verschlüsselungsbaugruppen 20, 21, 22, 35 in Verbindung, wobei die Verschlüsselungsbaugruppen 20, 21, 22, 35 auf ein Ausgangssignal des Multiplexers 23 hin mit einem neuen Schlüssel versorgt werden.
  • Im Betrieb verhält sich die erfindungsgemäße elektronische Datenverarbeitungsschaltung wie folgt. Bei jeder Ausführung des Befehls "CLR C" übermittelt das ROM 2 über die Ansteuerleitung 29 einen Ansteuerimpuls an den Multiplexer 23. Der Multiplexer 23 holt daraufhin über die Datenleitung 24 einen der drei Schlüssel KEY 3, KEY 2, KEY 1 aus dem FLASH-Speicher 4 und übermittelt diesen an die Verschlüsselungsbaugruppen 20, 21, 22 und 35. Wird eine vorbestimmte Betriebszeit der Datenverarbeitungsschaltung überschritten, ohne daß der Multiplexer 23 durch das ROM 2 aktiviert wird, dann tritt der Timer 26 in Aktion. Durch die Betätigung des Timers 26 wird dem Multiplexer 23 über die Datenleitung 25 eine Zufallszahl aus dem Zufallsgenerator 28 übermittelt. Der Multiplexer 23 übermittelt dann die Zufallszahl an die Verschlüsselungsbaugruppen 20, 21, 22, 35.
  • Die Daten im ROM 2 sind verschlüsselt abgelegt und sie werden beim Auslesen in den Latch 16 durch die Verschlüsselungsvorrichtung 20 nur teilweise entschlüsselt. Daher werden die Daten aus dem ROM 2 auf der Datenleitung 8 noch teilweise verschlüsselt bis zur CPU 1 transportiert, wo sie von der Verschlüsselungsbaugruppe 35 vollständig entschlüsselt werden. Erst danach stehen die Daten unverschlüsselt zur Verarbeitung in der CPU 1 bereit.
  • Die verschlüsselt im EEPROM 3 vorgesehenen Daten werden verschlüsselt über die Datenleitung 9 an den Latch 17 übermittelt und von dort an die Verschlüsselungsbaugruppe 21 weitergeleitet, wo sie teilweise entschlüsselt werden. Von dort gelangen die noch teilweise verschlüsselten Daten über die Datenleitung 11 zur CPU 1, wo sie von der Verschlüsselungsbaugruppe 35 vollständig entschlüsselt werden und danach zur Verarbeitung bereitstehen.
  • Daten für den FLASH-Speicher 4 und für das RAM 5 werden zunächst jeweils teilweise durch die Verschlüsselungsbaugruppe 35 und durch die Verschlüsselungsbaugruppe 22 verschlüsselt, bevor sie vollständig verschlüsselt im FLASH-Speicher 4 oder im RAM 5 abgespeichert werden. Dazu werden die in der Verschlüsselungsbaugruppe 35 der CPU 1 teilweise verschlüsselten Daten über die Datenleitung 11 an die Verschlüsselungsbaugruppe 22 übermittelt, wo sie vollständig verschlüsselt werden, bevor sie über die Datenleitungen 13 bzw. 14 an die dem FLASH-Speicher 4 und dem RAM 5 zugeordneten Latches 18, 19 übergeben werden. Von den Latches 18, 19 gelangen die verschlüsselten Daten über Datenleitungen 12, 15 zum FLASH-Speicher 4 bzw. RAM 5.
  • Beim Auslesen der Daten aus dem FLASH-Speicher 4 und aus dem RAM 5 werden diese zunächst jeweils teilweise durch die Verschlüsselungsbaugruppe 22 und durch die Verschlüsselungsbaugruppe 35 entschlüsselt, bevor sie vollständig entschlüsselt in der CPU 1 zur Verarbeitung bereitstehen.

Claims (16)

  1. Elektronische Datenverarbeitungsschaltung mit einer Betriebsbaugruppe (1) wie einem Mikroprozessor (1), mit wenigstens einem Datenspeicher (2, 3, 4, 5) und mit einem sich zwischen Datenspeicher (2, 3, 4, 5) und Betriebsbaugruppe (1) erstreckenden Datenbus, wobei
    dadurch gekennzeichnet, dass
    die Daten in dem wenigstens einen Datenspeicher verschlüsselt abgelegt sind,
    in der Betriebsbaugruppe (1) eine erste Verschlüsselungsbaugruppe (35), die den Datenverkehr auf den ihr zugeordneten Datenleitungen (8, 11) des Datenbusses nur teilweise verschlüsselt bzw. entschlüsselt, vorgesehen ist,
    im Bereich zwischen jedem wenigstens einen Datenspeicher (2, 3, 4, 5) und der Betriebsbaugruppe (1) eine zweite Verschlüsselungsbaugruppe (20, 21, 22), die den Datenverkehr auf den ihnen zugeordneten Datenleitungen (6-15) des Datenbusses nur teilweise verschlüsselt bzw. entschlüsselt,
    wobei sich eine vollständige Verschlüsselung bzw.
    Entschlüsselung durch das Zusammenwirken jeder zweiten Verschlüsselungsbaugruppe (20, 21, 22) mit der ersten Verschlüsselungsbaugruppe (35) ergibt.
  2. Elektronische Datenverarbeitungsschaltung nach Anspruch 1,
    dadurch gekennzeichnet, dass
    die Verschlüsselungsbaugruppen (20, 21, 22, 35) an verschiedenen Orten der elektronischen Datenverarbeitungsschaltung angeordnet sind.
  3. Elektronische Datenverarbeitungsschaltung nach Anspruch 1 oder Anspruch 2,
    dadurch gekennzeichnet, dass
    die erste oder die zweite Verschlüsselungsbaugruppe (20, 21, 22, 35) so ausgebildet sind, dass der Datenverkehr mittels eines Verschlüsselungs-Algorithmus verschlüsselt wird.
  4. Elektronische Datenverarbeitungsschaltung nach einem der
    Ansprüche 1 bis 3,
    dadurch gekennzeichnet, dass
    die erste oder die zweite Verschlüsselungsbaugruppe (20, 21, 22, 35) so ausgebildet ist, dass der Datenverkehr mittels Hardware-Verschlüsselung verschlüsselbar ist.
  5. Elektronische Datenverarbeitungsschaltung nach einem der vorhergehenden Ansprüche,
    dadurch gekennzeichnet, dass
    die erste oder die zweite Verschlüsselungsbaugruppe (20, 21, 22, 35) so ausgebildet ist, dass die Wertigkeit einzelner Bits des Datenverkehrs selektiv änderbar ist.
  6. Elektronische Datenverarbeitungsschaltung nach Anspruch 5,
    dadurch gekennzeichnet, dass
    die erste oder die zweite Verschlüsselungsbaugruppe wenigstens ein EXOR-Glied aufweist.
  7. Elektronische Datenverarbeitungsschaltung nach einem der
    vorhergehenden Ansprüche,
    dadurch gekennzeichnet, dass
    die erste oder die zweite Verschlüsselungsbaugruppe (20, 21, 22, 35) so ausgebildet ist, dass die Anschlussreihenfolge von Datenleitungen des Datenbus selektiv änderbar ist.
  8. Elektronische Datenverarbeitungsschaltung nach einem der vorhergehenden Ansprüche,
    dadurch gekennzeichnet, dass
    die erste oder die zweite Verschlüsselungsbaugruppe (20, 21, 22, 35) so ausgebildet ist, dass der Datenverkehr wenigstens teilweise selektiv verzögerbar ist.
  9. Elektronische Datenverarbeitungsschaltung nach einem der
    vorhergehenden Ansprüche,
    dadurch gekennzeichnet, dass
    die erste oder die zweite Verschlüsselungsbaugruppe (20, 21, 22, 35) wenigstens einen Eingang zur Eingabe wenigstens eines Schlüssels aufweist.
  10. Elektronische Datenverarbeitungsschaltung nach Anspruch 9, dadurch gekennzeichnet, dass
    der bzw. die Schlüssel in einer Flash-Zelle der Datenverarbeitungsschaltung abgelegt ist bzw. sind.
  11. Elektronische Datenverarbeitungsschaltung nach Anspruch 9 oder 10,
    dadurch gekennzeichnet, dass
    der Schlüssel in einer vergrabenen Struktur eines integrierten Bausteins zur Aufnahme der Datenverarbeitungsschaltung abgelegt ist.
  12. Elektronische Datenverarbeitungsschaltung nach Anspruch 9 oder 10,
    dadurch gekennzeichnet, dass
    eine Sensorik zum Abtasten von Manipulationen des Orts, an dem der Schlüssel abgelegt ist, aufweist.
  13. Elektronische Datenverarbeitungsschaltung nach einem der Ansprüche 9 bis 12,
    dadurch gekennzeichnet, dass
    die Datenverarbeitungsschaltung so ausgebildet ist, dass bei Ausführung vorbestimmter Operationen durch die Betriebsbaugruppe ein Schlüssel in die Verschlüsselungsbaugruppe (20, 21, 22, 35, 107) eingebbar ist.
  14. Elektronische Datenverarbeitungsschaltung nach einem der Ansprüche 9 bis 13,
    dadurch gekennzeichnet, dass
    ein Zufallsgenerator (28) vorgesehen ist, mit dem ein Schlüssel zufällig auswählbar ist.
  15. Elektronische Datenverarbeitungsschaltung nach einem der Ansprüche 9 bis 14,
    dadurch gekennzeichnet, dass
    eine Einrichtung (120) zum Ableiten eines Schlüssels aus einer in der Betriebsbaugruppe (101) verwendeten Adresse vorgesehen ist.
  16. Elektronische Datenverarbeitungsschaltung nach einem der Ansprüche 9 bis 14,
    dadurch gekennzeichnet, dass
    eine Zeitmessvorrichtung (26) vorgesehen ist, durch die ein Wechsel des Schlüssels einleitbar ist.
EP97944712A 1996-10-15 1997-09-15 Elektronische datenverarbeitungsschaltung Expired - Lifetime EP0932867B1 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19642560A DE19642560A1 (de) 1996-10-15 1996-10-15 Elektronische Datenverarbeitungsschaltung
DE19642560 1996-10-15
PCT/DE1997/002070 WO1998016883A1 (de) 1996-10-15 1997-09-15 Elektronische datenverarbeitungsschaltung

Publications (2)

Publication Number Publication Date
EP0932867A1 EP0932867A1 (de) 1999-08-04
EP0932867B1 true EP0932867B1 (de) 2010-10-27

Family

ID=7808837

Family Applications (1)

Application Number Title Priority Date Filing Date
EP97944712A Expired - Lifetime EP0932867B1 (de) 1996-10-15 1997-09-15 Elektronische datenverarbeitungsschaltung

Country Status (10)

Country Link
US (1) US6195752B1 (de)
EP (1) EP0932867B1 (de)
JP (1) JP2000504137A (de)
KR (1) KR100421629B1 (de)
CN (1) CN1127692C (de)
AT (1) ATE486320T1 (de)
BR (1) BR9712529A (de)
DE (2) DE19642560A1 (de)
UA (1) UA52690C2 (de)
WO (1) WO1998016883A1 (de)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19828936A1 (de) * 1998-05-29 1999-12-02 Siemens Ag Verfahren und Vorrichtung zum Verarbeiten von Daten
JP4083925B2 (ja) * 1999-06-24 2008-04-30 株式会社日立製作所 情報処理装置、カード部材および情報処理システム
FR2801751B1 (fr) * 1999-11-30 2002-01-18 St Microelectronics Sa Composant electronique de securite
DE50015839D1 (de) 1999-12-02 2010-02-25 Infineon Technologies Ag
FR2802668B1 (fr) * 1999-12-15 2002-02-08 St Microelectronics Sa Procede de transfert securise de donnees
FR2802669B1 (fr) * 1999-12-15 2002-02-08 St Microelectronics Sa Procede non deterministe de transfert securise de donnees
ATE249664T1 (de) 2000-01-18 2003-09-15 Infineon Technologies Ag Mikroprozessoranordnung mit verschlüsselung
FR2808360B1 (fr) * 2000-04-28 2002-06-28 Gemplus Card Int Procede de contre mesure dans un microcircuit mettant en oeuvre le procede et carte a puce comportant ledit microcircuit
DE10036372A1 (de) * 2000-07-18 2002-01-31 Univ Berlin Tech Sender, Empfänger sowie Sender- und Empfängeranordnung
JP3977592B2 (ja) 2000-12-28 2007-09-19 株式会社東芝 データ処理装置
JP4787434B2 (ja) * 2001-08-24 2011-10-05 富士通コンポーネント株式会社 暗号化方法、通信システム、データ入力装置
DE10164174A1 (de) * 2001-12-27 2003-07-17 Infineon Technologies Ag Datenverarbeidungsvorrichtung
FR2836735A1 (fr) * 2002-03-01 2003-09-05 Canal Plus Technologies Circuit integre et procede de gestion de la memoire programme d'un tel circuit integre
JP4173768B2 (ja) 2002-05-21 2008-10-29 松下電器産業株式会社 回路装置およびその動作方法
FR2853097B1 (fr) * 2003-03-24 2005-07-15 Innova Card Circuit programmable pourvu d'une memoire securisee
US7444523B2 (en) 2004-08-27 2008-10-28 Microsoft Corporation System and method for using address bits to signal security attributes of data in the address space
US7734926B2 (en) * 2004-08-27 2010-06-08 Microsoft Corporation System and method for applying security to memory reads and writes
US7822993B2 (en) * 2004-08-27 2010-10-26 Microsoft Corporation System and method for using address bits to affect encryption
US7653802B2 (en) * 2004-08-27 2010-01-26 Microsoft Corporation System and method for using address lines to control memory usage
US20060117122A1 (en) * 2004-11-04 2006-06-01 Intel Corporation Method and apparatus for conditionally obfuscating bus communications
US20070239605A1 (en) * 2006-04-06 2007-10-11 Peter Munguia Supporting multiple key ladders using a common private key set
CN100395733C (zh) * 2006-08-01 2008-06-18 浪潮齐鲁软件产业有限公司 提高金融税控专用soc芯片安全性的方法
DE102006055830A1 (de) * 2006-11-27 2008-05-29 Robert Bosch Gmbh Verfahren zum Schutz eines Steuergeräts vor Manipulation
US8588421B2 (en) * 2007-01-26 2013-11-19 Microsoft Corporation Cryptographic key containers on a USB token
DE102007007699A1 (de) * 2007-02-09 2008-08-14 IHP GmbH - Innovations for High Performance Microelectronics/Institut für innovative Mikroelektronik Reduktion von Seiten-Kanal-Informationen durch interagierende Krypto-Blocks
CN101839928B (zh) * 2009-03-19 2013-04-24 北京普源精电科技有限公司 数字示波器和数据存取方法
US20150317255A1 (en) * 2011-02-15 2015-11-05 Chengdu Haicun Ip Technology Llc Secure Printed Memory
US9870462B2 (en) * 2014-09-22 2018-01-16 Intel Corporation Prevention of cable-swap security attack on storage devices

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2099616A (en) * 1981-06-03 1982-12-08 Jpm Automatic Machines Ltd Improvements relating to microprocessor units
US4598170A (en) * 1984-05-17 1986-07-01 Motorola, Inc. Secure microprocessor
CH694306A5 (de) 1988-04-11 2004-11-15 Syspatronic Ag Spa Chipkarte.
JPH03276345A (ja) * 1990-03-27 1991-12-06 Toshiba Corp マイクロコントローラ
JPH04149652A (ja) * 1990-10-09 1992-05-22 Mitsubishi Electric Corp マイクロコンピュータ
DE4120398A1 (de) * 1991-06-20 1993-01-07 Standard Elektrik Lorenz Ag Datenverarbeitungsanlage
US5386469A (en) * 1993-08-05 1995-01-31 Zilog, Inc. Firmware encryption for microprocessor/microcomputer
AU1265195A (en) * 1993-12-06 1995-06-27 Telequip Corporation Secure computer memory card

Also Published As

Publication number Publication date
UA52690C2 (uk) 2003-01-15
BR9712529A (pt) 1999-10-19
EP0932867A1 (de) 1999-08-04
KR20000049114A (ko) 2000-07-25
JP2000504137A (ja) 2000-04-04
US6195752B1 (en) 2001-02-27
ATE486320T1 (de) 2010-11-15
CN1233333A (zh) 1999-10-27
CN1127692C (zh) 2003-11-12
DE19642560A1 (de) 1998-04-16
WO1998016883A1 (de) 1998-04-23
DE59713047D1 (de) 2010-12-09
KR100421629B1 (ko) 2004-03-10

Similar Documents

Publication Publication Date Title
EP0932867B1 (de) Elektronische datenverarbeitungsschaltung
EP0965076B1 (de) Elektronische datenverarbeitungseinrichtung und -system
EP0155399A2 (de) Schutzanordnung zur Verhinderung der unerlaubten Ausführung eines Programms
DE112009002502T5 (de) Multilayer inhalte-schützender Mikrocontoller
EP0766211A2 (de) Multifunktionale Chipkarte
DE102014208855A1 (de) Verfahren zum Durchführen einer Kommunikation zwischen Steuergeräten
WO2011054639A1 (de) Kryptographisches Hardwaremodul bzw. Verfahren zur Aktualisierung eines kryptographischen Schlüssels
EP1118941B1 (de) Mikroprozessoranordnung und Verfahren zum Betreiben einer Mikroprozessoranordnung
DE102014208851A1 (de) Verfahren zum Verhindern eines unbefugten Betriebs eines Kraftfahrzeugs
DE60020794T2 (de) Verschlüsselungsschaltungsarchitektur zur gleichzeitigen Ausführung mehrerer Verschlüsselungsalgorithmen ohne Leistungseinbusse
EP2510475B1 (de) Hardware-einrichtung
DE102015201298A1 (de) Verfahren zum kryptographischen Bearbeiten von Daten
DE112006004173T5 (de) Schutz eines programmierbaren Speichers gegen unberechtigte Veränderung
EP0276450A1 (de) Datenschutzschaltung zur Sperrung der Uebertragung von Signalen über einen Bus
EP1022659B1 (de) Schaltungsanordnung zur elektonischen Datenverarbeitung
DE102014208848A1 (de) Verfahren zum Überwachen eines elektronischen Sicherheitsmoduls
DE102021131424A1 (de) Verfahren und systeme zur sitzungsbasierten und gesicherten zugriffsteuerung auf ein datenspeichersystem
EP1930834A1 (de) Kryptographisch gesichertes Prozessorsystem
DE102017005057A1 (de) Personalisieren eines Halbleiterelements
EP1807994B1 (de) Verfahren und vorrichtung zur entschlüsselung breitbandiger daten
DE60033654T2 (de) Verfahren zur sicherung von softwareanwendungen mit hilfe einer einheit zur verarbeitung und speicherung geheimer daten und system dafür
DE102014208853A1 (de) Verfahren zum Betreiben eines Steuergeräts
DE10101972A1 (de) Vorrichtung mit einem Steuergerät und einem nicht-flüchtigen Speicher sowie Verfahren zum Betreiben einer solchen Vorrichtung
DE10056792A1 (de) Verschlüsselungs-/Entschlüsselungsspeicher und Verfahren zum Speichern und Auslesen
DE102005027709A1 (de) Verfahren zum Betreiben eines tragbaren Datenträgers

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT CH DE ES FR GB IT LI

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: INFINEON TECHNOLOGIES AG

17P Request for examination filed

Effective date: 19990406

17Q First examination report despatched

Effective date: 20070405

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: INFINEON TECHNOLOGIES AG

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 21/00 20060101ALI20100210BHEP

Ipc: G06F 12/14 20060101AFI20100210BHEP

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT CH DE ES FR GB IT LI

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REF Corresponds to:

Ref document number: 59713047

Country of ref document: DE

Date of ref document: 20101209

Kind code of ref document: P

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20110207

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20110728

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 59713047

Country of ref document: DE

Effective date: 20110728

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20101027

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20110930

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20110930

REG Reference to a national code

Ref country code: AT

Ref legal event code: MM01

Ref document number: 486320

Country of ref document: AT

Kind code of ref document: T

Effective date: 20110915

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20110915

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20151119

Year of fee payment: 19

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20160920

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20160921

Year of fee payment: 20

REG Reference to a national code

Ref country code: DE

Ref legal event code: R119

Ref document number: 59713047

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20170401

REG Reference to a national code

Ref country code: GB

Ref legal event code: PE20

Expiry date: 20170914

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20170914