DE602004001732T2 - Datenverschlüsselung in einem elektronischen Gerät mit mehreren symmetrischen Prozessoren - Google Patents

Datenverschlüsselung in einem elektronischen Gerät mit mehreren symmetrischen Prozessoren Download PDF

Info

Publication number
DE602004001732T2
DE602004001732T2 DE602004001732T DE602004001732T DE602004001732T2 DE 602004001732 T2 DE602004001732 T2 DE 602004001732T2 DE 602004001732 T DE602004001732 T DE 602004001732T DE 602004001732 T DE602004001732 T DE 602004001732T DE 602004001732 T2 DE602004001732 T2 DE 602004001732T2
Authority
DE
Germany
Prior art keywords
data word
circuit
key
secret key
unit
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.)
Active
Application number
DE602004001732T
Other languages
English (en)
Other versions
DE602004001732D1 (de
Inventor
Marcus Volp
Claude Anguille
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.)
STMicroelectronics SA
Original Assignee
STMicroelectronics SA
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 STMicroelectronics SA filed Critical STMicroelectronics SA
Publication of DE602004001732D1 publication Critical patent/DE602004001732D1/de
Application granted granted Critical
Publication of DE602004001732T2 publication Critical patent/DE602004001732T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Description

  • Die vorliegende Erfindung betrifft im Allgemeinen das Chiffrieren oder Verschlüsseln von Daten, die dazu bestimmt sind, in einem oder mehreren Prozessoren verwendet zu werden, wenn diese Daten in einem Speicher außerhalb der Prozessoren gespeichert werden sollen.
  • Sie findet insbesondere Anwendungen in den elektronischen Geräten, die eine Architektur mit mehreren symmetrischen Prozessoren und externem geteiltem Speicher haben (oder SMP-Architektur aus dem Englischen „Symetric Multi-Processor"). Genauer genommen betrifft die vorliegende Erfindung die Anwendungen, bei welchen man verhindern will, dass ein nicht zugelassener Benutzer nutzbar auf Daten zugreift, und bei welchen die Daten zumindest zum Teil über mehr als einen Schaltkreis zugänglich sein müssen.
  • Es wird hier auf den Begriff „Daten" Bezug genommen, um gleichermaßen jeden beliebigen binären Code zu bezeichnen, ob es sich um ausführbare Programme oder um binäre Daten handelt, die von diesen Programmen verarbeitet werden. Ferner wird auf den Begriff „Schaltkreis" Bezug genommen, um gleichermaßen jede beliebige funktionale Einheit eines elektronischen Geräts zu bezeichnen, die mit anderen Funktionseinheiten über einen oder mehrere Kommunikationsbusse verbunden ist, ob es sich nun um einen Prozessor, einen Peripheriegerätcontroller (zum Beispiel einen Festplattencontroller), eine Netzkarte usw. handelt.
  • 1 veranschaulicht schematisch die SMP-Architektur eines elektronischen Geräts, für das die vorliegende Erfindung gilt. Mehrere Prozessoren 2 (CPU) sind mit einem externen Speicher 4 (EXT MEM), über einen oder mehrere Busse 3 gekoppelt. Man kann eine Zone 1, abgesicherte Zone definieren, innerhalb welcher sich einer oder mehrere Prozessoren 2 befinden, und in deren Innerem man annimmt, dass auf die verarbeiteten Daten nicht unrechtmäßig zugegriffen werden soll. In der Praxis umfasst die abgesicherte Zone 1 meistens einen oder mehrere Chips für integrierte Schaltkreise, die jeweiligen Prozessoren entsprechen, wobei der Speicher 4 ein weiterer Chip ist, der nicht zu der abgesicherten Zone gehört. Ferner können weitere Schaltkreise 5, wie ein Festplattencontroller (DSK CTRL) oder eine Netzkarte (NET CARD) mit den Prozessoren 2 über Busse 3 verbunden werden.
  • Das Verschlüsseln, an das die vorliegende Erfindung angewandt wird, betrifft insbesondere das von Daten, die über den oder die Busse 3 zwischen dem Speicher 4 und dem oder den Prozessoren 2 der Zone 1 laufen. In der Fachsprache spricht man von Verschlüsseln des Speichers oder auch von Verschlüsseln des Busses. Dieses Verschlüsseln besteht darin, die in dem Speicher 4 gespeicherten Daten mit Hilfe eines Busverschlüsselungsschlüssels, der den betreffenden Prozessoren bekannt ist, in dem Speicher 4 zu verschlüsseln.
  • Lösungsbeispiele für das Verschlüsseln eines externen Speichers mit einem Mikroprozessor sind in den amerikanischen Patenten 5 825 878, 5 982 887 und 6 061 449 beschrieben.
  • Diese Lösungen sind nicht für den Fall der Systeme mit SMP-Architektur geeignet, insofern als man den gleichen Busverschlüsselungsschlüssel zum Verschlüsseln und Entschlüsseln der Daten verwenden muss, während jeder Prozessor einen eigenen Busverschlüsselungsschlüssel verwendet. Es müssen nämlich Maßnahmen getroffen werden, um es einem anderen Prozessor der abgesicherten Zone zu erlauben, verschlüsselte Daten, die in dem externen Speicher gespeichert sind, der mit einem anderen Prozessor der abgesicherten Zone geteilt wird, zu entschlüsseln, um sie zu verwenden. Diese Maßnahmen müssen jedoch mit dem Geheimschlüsselcharakter der Busverschlüsselungsschlüssel kompatibel sein.
  • Eine weitere Auflage ist mit der verwendeten Verschlüsselungsmethode verbunden. Beim früheren Stand der Technik verwendet man allgemein Verschlüsselungen in Blöcken mit Algorithmen des Typs DES („Data Encryption System") oder AES („Advanced Encryption System"), gemäß einem Modus mit elektronischem Codierungsheft, ECB („Electronic Code Book") genannt, oder einem Modus durch Verketten von Blöcken, CBC-Modus („Cipher-Block Chaining") genannt. Die Größe eines Blocks hängt von dem verwendeten Verschlüsselungsalgorithmus ab. Im ECB-Modus werden zwei identische Blöcke gleich verschlüsselt. Angriffe sind daher durch die so genannte „Wörterbuchtechnik" insofern möglich, als die Redundanz auf identische Weise verschlüsselter Mitteilungen die Identifikation der Mitteilungen in Klarschrift erlauben kann. Dem entgegen wird beim CBC-Modus jeder Block in Abhängigkeit von den vorhergehenden Blöcken verschlüsselt. Dieser Modus ist robuster. Er erfordert nichtsdestotrotz einen sequenziellen Zugriff auf den Speicher, was ihn mit dem Verschlüsseln von Daten, auf welche man willkürlich in dem externen Speicher zugreifen können will, unvereinbar macht.
  • Die vorliegende Erfindung zielt darauf ab, in dem Kontext eines elektronischen Geräts mit SMP-Architektur eine neue Verschlüsselungstechnik durch einen Prozessor für Daten vorzuschlagen, die in einem diesem Prozessor externen Speicher zu speichern sind, wenn diese Daten von mehr als einem Prozessor nutzbar sein müssen.
  • Dazu sieht ein erster Aspekt der Erfindung ein Verschlüsselungsverfahren in einem Schaltkreis eines elektronischen Geräts von Daten vor, die in einem Speicher zu speichern sind, der außerhalb des Schaltkreises ist, das die Schritte umfasst, die in Folgendem bestehen:
    • – Auswählen eines geheimen Schlüssels ausgehend von einer Liste Geheimschlüssel, die jeweils in einer Einheit von Registern des Schaltkreises gespeichert sind, wobei jeder mit einem Schlüsselidentifikator verbunden ist, wobei mindestens einer der Schlüssel ein Schlüssel ist, der mit mindestens einem anderen Schaltkreis des elektronischen Geräts geteilt wird,
    • – Unterteilen der Daten in einen Strom von Datenwörtern mit festgelegter Größe und schließlich für jedes Datenwort
    • – Erzeugen einer pseudozufälligen Zahl mit festgelegter Größe mittels eines Pseudozufallsgenerators, der einen Algorithmus zum Erzeugen in Abhängigkeit von dem geheimen Schlüssel und einem Initialisierungsvektor, der bei jedem Datenwort den Wert wechselt, umsetzt,
    • – Kombinieren des Datenworts und der entsprechenden Pseudozufallszahl, um ein verschlüsseltes Datenwort zu erzeugen, dann
    • – Speichern jedes verschlüsselten Datenworts im externen Speicher verbunden mit dem Initialisierungsvektor und dem Schlüsselidentifikator verbunden mit dem geheimen Schlüssel, der dazu gedient hat, ihn zu verschlüsseln.
  • Ein zweiter Aspekt der Erfindung sieht ein Entschlüsselungsverfahren in einem Schaltkreis eines elektronischen Geräts von Daten vor, die in Form von verschlüsselten Datenwörtern in einem Speicher außerhalb des Schaltkreises gespeichert sind, die Schritte umfassend, die in Folgendem bestehen:
    • – aus dem externen Speicher Lesen eines verschlüsselten Datenworts und eines Identifikators eines geheimen Schlüssels, die jeweils mit dem Datenwort verbunden sind,
    • – Auswählen eines geheimen Schlüsseln ausgehend von einer Liste geheimer Schlüssel, die jeweils in einer Einheit von Registern des Schaltkreises gespeichert sind, und von welchen mindestens einer ein Schlüssel ist, der mit mindestens einem anderen Schaltkreis des elektronischen Geräts geteilt wird, und ferner ausgehend von dem Identifikator, und kontinuierlich für jedes verschlüsselte Datenwort
    • – Erzeugen einer Pseudozufallszahl mit festgelegter Größe mittels eines Pseudozufallsgenerators, der einen Algorithmus zum Erzeugen in Abhängigkeit von dem geheimen Schlüssel und dem Initialisierungsvektor umsetzt, und
    • – Kombinieren des Datenworts und der entsprechenden Pseudozufallszahl, um ein entschlüsseltes Datenwort zu erzeugen.
  • Ein dritter Aspekt der Erfindung betrifft eine Vorrichtung zum Umsetzen eines Verschlüsselungsverfahrens gemäß dem ersten Aspekt, umfassend:
    • – eine Einheit von Registern, die die geheimen Schlüssel speichern, von welchen mindestens einer ein mit einem anderen Schaltkreis des elektronischen Geräts geteilter Schlüssel ist, wobei jeder mit einem Schlüsselidentifikator verbunden ist,
    • – eine Einheit zum Auswählen von geheimen Schlüsseln, die einen geheimen Schlüssel ausgehend von der Liste der Schlüssel, die in der Registereinheit gespeichert sind, auswählen kann,
    • – eine Segmentierungseinheit, die die Daten so aufteilen kann, dass ein Strom von Datenwörtern mit festgelegter Größe gebildet wird,
    • – einen Generator von Initialisierungsvektoren, der einen Strom von Initialisierungsvektoren erzeugen kann, der den Wert bei jedem Datenwort wechselt,
    • – einen Generator für Pseudozufallszahlen, der einen Erzeugungsalgorithmus umsetzt, der für jedes Datenwort in Abhängigkeit von dem geheimen Schlüssel und einem bestimmten der Initialisierungsvektoren eine Pseudozufallszahl mit bestimmter Größe erzeugen kann,
    • – eine Kombinationseinheit, die das Datenwort und die entsprechende Pseudozufallszahl kontinuierlich kombinieren kann, um ein verschlüsseltes Datenwort zu erzeugen, und
    • – Mittel zum Speichern in dem externen Speicher jedes verschlüsselten Datenworts verbunden mit dem festgelegten Initialisierungsvektor und dem Schlüsselidentifikator, der mit dem geheimen Schlüssel verbunden ist, der dazu gedient hat, ihn zu verschlüsseln.
  • Ferner schlägt die Erfindung gemäß einem vierten Aspekt eine Vorrichtung zum Umsetzen eines Entschlüsselungsverfahrens gemäß dem zweiten Aspekt vor. Diese Vorrichtung umfasst:
    • – eine Einheit von Registern, die jeweilige Schlüssel speichern, von welchen mindestens einer ein geteilter Schlüssel ist, wobei jeder mit einem Schlüsselidentifikator verbunden ist,
    • – Lesemittel zum Lesen in dem externen Speicher eines Datenworts sowie eines Initialisierungsvektors und eines Identifikators eines jeweiligen mit dem Datenwort verbundenen geheimen Schlüssels,
    • – Auswahlmittel zum Auswählen für jedes Datenwort eines geheimen Schlüssels ausgehend von einer Liste von Schlüsseln, die in den Registern gespeichert sind und ausgehend ferner von dem Schlüsselidentifikator,
    • – einen Generator für Pseudozufallszahlen, der einen Erzeugungsalgorithmus umsetzt, der für jedes Datenwort in Abhängigkeit von dem geheimen Schlüssel und dem Initialisierungsvektor eine Pseudozufallszahl mit bestimmter Größe erzeugen kann, und
    • – eine Kombinationseinheit, die das Datenwort und die entsprechende Pseudozufallszahl so kombinieren kann, dass das verschlüsselte Datenwort entschlüsselt wird.
  • Ein fünfter Aspekt der Erfindung betrifft einen Schaltkreis, der eine Verschlüsselungs-/Entschlüsselungseinheit enthält, die eine Verschlüsselungsvorrichtung gemäß dem dritten Aspekt und eine Entschlüsselungsvorrichtung gemäß dem vierten Aspekt bildet. Die Einheit von Registern, der Erzeuger von Pseudozufallszahlen und die Kombinationseinheit gehören daher gemeinsam zu zwei Vorrichtungen.
  • Gemäß einem sechsten und letzten Aspekt schlägt die Erfindung auch ein elektronisches Gerät vor, das mindestens zwei Schaltkreise gemäß dem fünften Aspekt aufweist, indem mindestens einer der geheimen Schlüssel von den Schaltkreisen so geteilt wird, dass ein gesichertes Untersystem gebildet wird.
  • Die Schlüssel werden in dem Sinn geteilt genannt, dass andere Schaltkreise des elektronischen Geräts sie kennen, zum Beispiel die Schaltkreise, die zu der abgesicherten Zone gehören, das heißt zu dem abgesicherten Untersystem. Die Erfindung bietet daher eine Lösung, die es erlaubt, das Verschlüsseln gemäß dem Prozessor, der es durchführt, zu individualisieren, und dabei sicherzustellen, dass alle Prozessoren, die die Genehmigung zum Gebrauch der in dem externen Speicher gespeicherten Daten besitzen, sie entschlüsseln können.
  • Das erfindungsgemäße Verschlüsseln gehört zu dem Typ eines kontinuierlichen Verschlüsselns („Stream Cipher"), das einfacher und daher schneller ist als ein Verschlüsseln in Blöcken. Ein kontinuierliches Verschlüsseln ist ferner für „Wörterbuchangriffe" unempfindlich, denn das gleiche Datenwort wird bei jedem Verschlüsseln in ein anderes Datenwort verschlüsselt.
  • Ferner ist das erfindungsgemäße Verschlüsseln mit einem zufälligen Zugriff auf den externen Speicher kompatibel.
  • Weitere Merkmale und Vorteile der Erfindung ergeben sich noch bei der Lektüre der folgenden Beschreibung. Diese dient rein der Veranschaulichung und muss unter Bezugnahme auf die anliegenden Zeichnungen gelesen werden, in welchen:
  • 1 ein Schema eines elektronischen Geräts ist, an das die verschiedenen Aspekte der Erfindung angewandt werden können,
  • 2 ein Wirkbild eines Beispiels für einen Schaltkreis ist, der an einen externen Speicher gekoppelt ist, gemäß einer Ausführungsform eines erfindungsgemäßen Schaltkreises.
  • Auf den Zeichnungen sind gleiche Elemente mit den gleichen Bezugszeichen in den verschiedenen Figuren bezeichnet. Zur Klarheit wurden nur die Schritte des Verfahrens und die Elemente dargestellt und anschließend beschrieben, die für das Verstehen der Erfindung erforderlich sind. Insbesondere wurden nicht alle Elemente eines Schaltkreises detailliert, denn die Erfindung nutzt zu ihrer Umsetzung bekannte Bauteile.
  • Ein Merkmal der vorliegenden Erfindung besteht darin, Daten (Programme, beliebige binäre Daten), die in einem externen Speicher zu speichern sind, den sich mehrere Schaltkreise eines elektronischen Geräts teilen, zu verschlüsseln. Die Daten werden mittels eines geheimen Schlüssels verschlüsselt, der dem Schaltkreis eigen ist, der das Verschlüsseln durchführt, der anders sein kann als der geheime Schlüssel, der von anderen Schaltkreisen für ein vergleichbares Verschlüsseln verwendet wird.
  • Um den Gebrauch der verschlüsselten Daten durch mehr als einen Schaltkreis zu erlauben, werden zumindest bestimmte der geheimen Schlüssel, die von einem Schaltkreis verwendet werden können, mit einem oder mehreren Schaltkreisen geteilt, das heißt, dass sie diesen Schaltkreisen bekannt und gleichzeitig gegenüber dem Rest des Systems geheim sind.
  • Ein geteilter Schlüssel definiert ein Untersystem von Schaltkreisen, die gemeinsame Daten verwenden können, die in dem externen Speicher gespeichert sind. Typisch kann dieses Untersystem einer abgesicherten Zone wie der entsprechen, die eingangs zum Schema der 1 präsentiert wurde.
  • Außerdem werden die Daten in dem externen Speicher verbunden mit einem Identifikator des Geheimschlüssels, der dazu gedient hat, sie zu verschlüsseln, gespeichert. Dieser Identifikator erlaubt es den zugelassenen Schaltkreisen, den Geheimschlüssel zu bestimmen, der für das Entschlüsseln der Daten zu verwenden ist. Dieser Identifikator kann einem Index in einer Einheit interner Register entsprechen, in welchen die Geheimschlüssel, die von dem Schaltkreis unterstützt werden, jeweils gespeichert sind. Es ist daher nicht der Geheimschlüssel selbst, der mit den durch ihn verschlüsselten Daten gespeichert wird, sondern der Identifikator dieses Geheimschlüssels. Die Offenbarung des Identifikators durch Speichern in dem externen Speicher bewirkt keine Schwäche der Verschlüsselung, denn nur die zugelassenen Schaltkreise können den Geheimschlüssel kennen, der ausgehend von diesem Identifikator zu verwenden ist.
  • Ein weiteres Merkmal der vorliegenden Erfindung besteht darin, dass ein Verschlüsseln und ein Entschlüsseln kontinuierlich bei Datentransfers zwischen einem Schaltkreis und dem externen Speicher vorgesehen sind. Diese kontinuierliche Verschlüsseln wird ausgehend von einem Aufteilen der Daten in Wörter mit festgelegter Größe erzielt, die danach in verschlüsselter Form in dem externen Speicher gespeichert werden. Man sieht ferner vor, dass das Verschlüsseln die Kombination eines Datenworts mit einer Pseudozufallszahl verwendet, die ausgehend von dem Geheimschlüssel und von einem Initialisierungsvektor erzeugt wird.
  • Vorteilhafterweise wechselt der Initialisierungsvektor den Wert für jedes Wort, vorzugsweise zufällig, um die Sicherheit des Verschlüsselns zu verstärken. Der Initialisierungsvektor, der zum Verschlüsseln eines Datenworts gedient hat, wird vorteilhafterweise in dem externen Speicher verbunden mit dem verschlüsselten Datenwort gespeichert, ebenso wie der Identifikator des Geheimschlüssels, wie oben angegeben. Man entledigt sich so der Probleme in Zusammenhang mit dem kontinuierlichen Verschlüsseln, die herkömmlich mit direkten Zufallszugriffen zu einem Speicher nicht vereinbar sind.
  • Das Schema der 2 zeigt die wesentlichen Mittel einer Ausführungsform eines Schaltkreises, der für die Umsetzung des Verschlüsselungsverfahrens geeignet ist (veranschaulicht durch die Pfeile in vollen Strichen), und für das Umsetzen des Entschlüsselungsverfahrens (veranschaulicht durch die gestrichpunkteten Pfeile).
  • Der Schaltkreis ist hier ein Prozessor 2 (CPU), der einen Prozessorkern 44 (CORE) enthält, Cache-Speicher 33 und 34 (CACHE), eine Einheit 31 (KSEL) zur Auswahl des Verschlüsselungsschlüssels (K) und eine Einheit 38 (BEU) zum Verschlüsseln/Entschlüsseln.
  • Die Einheit 38 umfasst eine Einheit 22 (SEGM) zum Segmentieren der Daten, eine Einheit 32 (KREG) von Geheimschlüsselregistern, einen ersten Pseudozufallsgenerator 24 (IVGEN), einen Cache-Speicher 25 (IVCACHE), ein Verschlüsselungsschlüsselregister 12 und ein Initialisierungsvektorregister 13, einen zweiten Pseudozufallsgenerator 10 (PRNG) und schließlich eine Kombinationseinheit 11.
  • Die Segmentierungseinheit 22 hat die Aufgabe, die zu verschlüsselnden Daten (DATA), die sie von dem Prozessorkern 44 erhält, in Datenwörter (W) mit festgelegter Größe zu teilen. Ein Datenwort kann daher ein einziges Bit umfassen. Vorzugsweise ist die Größe eines Worts jedoch gleich einem Byte, das heißt, dass ein Wort 8 Bits enthält.
  • Jedes Register der Einheit 32 kann nicht flüchtig einen Geheimschlüssel (K) speichern, mit dem ein Geheimschlüsselidentifikator (KID) verbunden ist. Ein Teil oder die ganzen Geheimschlüssel können dem Prozessor über einen abgesicherten Kanal geliefert werden, zum Beispiel bei der Herstellung des Systems. Zumindest bestimmte der Geheimschlüssel können umgekehrt intern gemäß einem Ad-Hoc-Schlüssel erzeugt werden, dessen Beschreibung nicht in die vorliegende Darlegung fällt. Bei einem aufgrund seiner Einfachheit bevorzugten Beispiel ist der Identifikator ein Index, wie zum Beispiel eine Registernummer, die es erlaubt, auf den entsprechenden Geheimschlüssel in der Liste der von dem Prozessor unterstützten Geheimschlüssel, die in der Einheit 32 gespeichert sind, zuzugreifen.
  • Der Zufallsgenerator 24 kann Initialisierungsvektoren im Rhythmus von einem Initialisierungsvektor pro zu verschlüsselndem Datenwort gemäß einem beliebigen Pseudozufallsalgorithmus erzeugen.
  • Der Cache-Speicher 25 kann Paare speichern, die jeweils aus einem Initialisierungsvektor und einem Geheimschlüsselidentifikator, die mit einem Datenwort verbunden sind, gebildet sind.
  • Das Register 12 kann einen Verschlüsselungsschlüssel speichern, nämlich einen der Geheimschlüssel, die in der Registereinheit 32 gespeichert sind. Dieses Register wird hier zur Klarheit der Darlegung angegeben, es kann jedoch weggelassen werden, wenn man geeignete Mittel zum Verwalten der Einheit von Registern 32 vorsieht.
  • Das Initialisierungsvektorregister 13 hat die Aufgabe, den Initialisierungsvektor zu speichern, der kontinuierlich von dem Pseudozufallsgenerator 24 erzeugt wird. Vorzugsweise ist die Größe der Initialisierungsvektoren gleich der Größe der zu verschlüsselnden Datenwörter.
  • Die Aufgabe des Pseudozufallsgenerators 10 besteht darin, kontinuierlich einen Strom von Pseudozufallszahlen (PN) zu jeweils einer bestimmten Anzahl pro zu verschlüsselndem Datenwort zu erzeugen. Jede Pseudozufallszahl wird ausgehend von dem Verschlüsselungsschlüssel erzeugt, der in dem Register 12 gespeichert ist, und ausgehend von dem Initialisierungsvektor, der in dem Register 13 gespeichert ist, wobei dieser Letztere bei jedem Datenwort den Wert wechselt.
  • Bei einem Beispiel ist die Kombinationseinheit ein ODER-Exklusiv-Gatter (XOR). Der Pseudozufallsgenerator 10 und das XOR-Gatter bilden ein Cryptosystem, das dem Fachmann als solches gut bekannt ist. Die verschlüsselten Datenwörter, die es am Ausgang liefert, haben die gleiche Größe wie die Datenwörter (vor dem Verschlüsseln), die am Eingang empfangen werden. Ein solches Cryptosystem weist den Vorteil auf, dass es einen einfachen und daher schnellen Verschlüsselungsalgorithmus präsentiert und dessen Beständigkeit gegenüber Sicherheitsangriffen von den internen Details des Pseudozufallsgenerators 10 festgelegt wird. Je zufälliger die von Letzterem erzeugte Zahl PN ist, desto besser ist die Sicherheit des Verschlüsselungsalgorithmus. Ein weiterer Vorteil eines Verschlüsselungsalgorithmus über XOR-Gatter besteht darin, dass das Entschlüsseln in der gleichen Weise erfolgt wie das Verschlüsseln, was die materielle Konzeption des Cryptosystems vereinfacht.
  • Das Funktionieren des Schaltkreises im Verschlüsselungsmodus wird unten unter Berücksichtigung der Pfeile in vollen Strichen, die in 2 dargestellt sind, erklärt.
  • Der Verschlüsselungsmodus wird typisch von dem Prozessorkern des Prozessors 44 aktiviert, wenn Daten DATA, die in dem Cache-Speicher 34 gespeichert sind oder durch ihn laufen, in den externen Speicher 23 geschrieben und dazu über den Kommunikationsbus 3 laufen müssen.
  • Der Prozessorkern 44 steuert die Auswahleinheit 31 so, dass einer der Geheimschlüssel ausgewählt wird, die in der Registereinheit 32 gespeichert sind. Bei einem Beispiel wählt die Einheit 31 einen Geheimschlüsselidentifikator KIDi aus, der mit einem bestimmten Geheimschlüssel verbunden ist. Dieser Identifikator KIDi wird von der Einheit 31 zu der Verschlüsselungseinheit 38 geliefert.
  • In der Verschlüsselungseinheit 38 wird der Schlüssel Ki, der mit dem Identifikator KIDi verbunden ist, aus der Registereinheit 32 mit Hilfe des Identifikators KIDi gelesen, der zum Beispiel als Index in dem Durchlaufen der Registereinheit 32 verwendet wird. Der Schlüssel Ki wird dann in dem Register 12 gespeichert.
  • Ferner steuert der Prozessorkern 44 den Cache-Speicher 34 derart, dass die Daten DATA zu der Verschlüsselungseinheit 38 geliefert werden und insbesondere an den Eingang der Segmentierungseinheit 22. Letztere liefert einen Strom binärer Wörter Wi, die jeweils einem Segment des Datenstroms DATA entsprechen. Parallel dazu erzeugt der Pseudozufallsgenerator 24 einen Strom von Initialisierungsvektoren IVi im Rhythmus der Lieferung der Datenwörter Wi durch die Einheit 32, wobei diese Initialisierungsvektoren den Wert bei jedem der Wörter Wi wechseln. Mit anderen Worten ist jedes Datenwort Wi mit einem Initialisierungsvektor IVi verbunden, dessen Wert anders ist als der des mit dem vorhergehenden Wort in dem Strom von Datenwörtern verbundenen Initialisierungsvektors. Die Initialisierungsvektoren IVi, die kontinuierlich erzeugt werden, werden jeweils in dem Register 13 gespeichert.
  • Für jedes Datenwort Wi werden daher die folgenden Operationen kontinuierlich durchgeführt.
  • Einerseits erzeugt der Pseudozufallsgenerator 10 eine Pseudozufallszahl PNi in Abhängigkeit von dem Geheimschlüssel Ki, der in dem Register 12 gespeichert ist, und von dem Initialisierungsvektor IVi, der in dem Register 13 gespeichert ist. Jedes Mal wird die Zahl PNi auf einen zweiten Eingang des XOR-Gatters 11 geliefert.
  • Andererseits werden das Datenwort Wi und die entsprechende Pseudozufallszahl PNi von dem XOR-Gatter 11 kombiniert, so dass ein verschlüsseltes Datenwort Ci erzeugt wird.
  • Die Verschlüsselungseinheit 38 speichert dann das Wort Ci in dem externen Speicher 23 sowie und verbunden mit ihm den Initialisierungsvektor IVi, und den Geheimschlüsselidentifikator KIDi, die zu seinem Verschlüsseln gedient haben. Zu diesem Schreiben laufen das verschlüsselte Datenwort CI, der Initialisierungsvektor IVi und der Geheimschlüsselidentifikator KIDi über den Kommunikationsbus 3. Das ist jedoch keine Sicherheitsschwäche des Verschlüsselungsverfahrens insofern, als das Wort Ci verschlüsselt ist, wobei der Initialisierungsvektor IVi allein nicht reicht, um das Entschlüsseln durchzuführen und wobei der Identifikator KIDi keine Bedeutung für einen anderen Schaltkreis hat, der nicht über den mit diesem Identifikator verbundenen Geheimschlüssel verfügt.
  • Das Funktionieren des Schaltkreises im Entschlüsselungsmodus wird nun unter Bezugnahme auf die gestrichpunkteten Pfeile erklärt, die in 2 dargestellt sind.
  • Unter der Steuerung des Prozessorkerns 44 werden verschlüsselte Datenwörter aus dem externen Speicher 23 an bestimmten Adressen gelesen. Jedes Wort Cj, das so gelesen wird, wird auf den ersten Eingang des XOR-Gatters 11 geliefert. Für jedes Wort Cj werden ferner der Initialisierungsvektor IVj und der Geheimschlüsselidentifikator KIDj, die mit diesem Wort verbunden sind, ebenfalls aus dem externen Speicher 23 gelesen.
  • Ausgehend von dem Identifikator KIDj wählt die Entschlüsselungseinheit 38 den Geheimschlüssel Kj aus, der mit diesem Identifikator verbunden ist, indem sie in der Liste der Geheimschlüssel, die in der Einheit von Registern 32 gespeichert sind, sucht. Der so ausgewählte Schlüssel Kj wird in das Register 12 gespeichert. Parallel dazu wird der Vektor IVj in das Register 13 gespeichert.
  • Eigentlich laufen der Vektor IVj und der Identifikator KIDj über den Cache-Speicher 25. Diese Cache-Speicherung erlaubt es, die Leistungen der Entschlüsselungseinheit hinsichtlich der Entschlüsselungsgeschwindigkeit zu verbessern. Der Pseudozufallsgenerator 10 erzeugt dabei eine Pseudozufallszahl PNj ausgehend von dem Schlüssel Kj, der in dem Register 12 gespeichert ist, und ausgehend von dem Vektor IVj, der in dem Register 13 gespeichert ist. Die Zahl PNj wird auf den zweiten Eingang des XOR-Gatters 11 geliefert.
  • Das XOR-Gatter 11 kombiniert das verschlüsselte Datenwort Cj und die Pseudozufallszahl PNj und liefert am Ausgang ein Datenwort Wj, das dem entschlüsselten Wort Cj entspricht.
  • Das entschlüsselte Datenwort Wj wird dann an den Prozessorkern 44 über den Cache-Speicher 33 geliefert.
  • Natürlich kann die vorliegende Erfindung verschiedenen Varianten und Modifikationen, die der Fachmann erkennt, unterzogen werden. Insbesondere kann die Erfindung mit jedem beliebigen bekannten Algorithmus zum kontinuierlichen Verschlüsseln umgesetzt werden, was den Pseudozufallsgenerator 10 ausgehend von dem Geheimschlüssel und Initialisierungsvektoren konditioniert. Ferner wird davon ausgegangen, dass die praktische Herstellung der Erfindung dem Fachmann ausgehend von den oben gegebenen funktionalen Angaben zugänglich ist. In dieser Hinsicht ist zu bemerken, dass gemäß einer hier beschriebenen Ausführungsform der Erfindung die verschiedenen Verschlüsselungs- und Entschlüsselungswerkzeuge von materiellen Ressourcen des Prozessors hergestellt werden. Eine Umsetzung durch Softwareressourcen kann natürlich in Betracht gezogen werden.
  • Ferner beschränkt sich die Erfindung in keiner Weise auf eine Anwendung in einem Prozessor. Ganz im Gegenteil kann eine Verschlüsselungs-/Entschlüsselungseinheit wie die Einheit 38, die weiter oben beschrieben wurde, in anderen Schaltkreisen eines elektronischen Geräts, wie zum Beispiel in 1 dargestellt vorgesehen werden, insbesondere in dem Controller der Festplatte oder in der Netzkarte.
  • Zu bemerken ist auch, dass sämtliche in dem externen Speicher gespeicherten Daten nicht zwingend zu verschlüsseln sind. In diesem Hinblick kann man vorsehen, dass ein Schlüsselidentifikator, der den Wert Null hat, dem Fehlen von Verschlüsselung des entsprechenden Datenworts entspricht, das heißt, dass das Datenwort in Klarschrift in den externen Speicher gespeichert wird.

Claims (14)

  1. Verfahren zum Verschlüsseln in einem Schaltkreis (2) eines elektronischen Geräts von Daten, die in einem Speicher (23) zu speichern sind, der außerhalb des Schaltkreises ist, das die Schritte umfasst, die in Folgendem bestehen: – Auswählen eines geheimen Schlüssels (Ki) ausgehend von einer Liste Geheimschlüssel (K), die jeweils in einer Einheit von Registern (32) des Schaltkreises gespeichert sind, wobei jeder mit einem Schlüsselidentifikator (KID) verbunden ist, wobei mindestens einer der Schlüssel ein Schlüssel ist, der mit mindestens einem anderen Schaltkreis des elektronischen Geräts geteilt wird, – Unterteilen der Daten in einen Strom von Datenwörtern (Wi) mit festgelegter Größe, und schließlich für jedes Datenwort – Erzeugen einer pseudozufälligen Zahl (PNi) mit festgelegter Größe mittels eines Pseudozufallsgenerators, der einen Algorithmus zum Erzeugen in Abhängigkeit von dem geheimen Schlüssel und einem Initialisierungsvektor (IVi), der bei jedem Datenwort den Wert wechselt, umsetzt, – Kombinieren des Datenworts und der entsprechenden Pseudozufallszahl, um ein verschlüsseltes Datenwort (Ci) zu erzeugen, dann – Speichern jedes verschlüsselten Datenworts im externen Speicher verbunden mit dem Initialisierungsvektor und dem Schlüsselidentifikator (KIDi) verbunden mit dem geheimen Schlüssel, der dazu gedient hat, ihn zu verschlüsseln.
  2. Verfahren nach Anspruch 1, bei dem die Kombination des Typs ODER-Exklusiv ist, wobei die Größe der Pseudozufallszahlen gleich der Größe der Datenwörter ist.
  3. Verfahren nach einem der vorhergehenden Ansprüche, bei dem mindestens einer der geheimen Schlüssel dem Schaltkreis eigen ist.
  4. Verfahren zum Entschlüsseln in einem Schaltkreis (2) eines elektronischen Geräts von Daten, die in Form von verschlüsselten Datenwörtern in einem Speicher (23) außerhalb des Schaltkreises gespeichert sind, die Schritte umfassend, die in Folgendem bestehen: – aus dem externen Speicher Lesen eines verschlüsselten Datenworts (Cj) sowie eines Initialisierungsvektors (IVj) und eines Identifikators eines geheimen Schlüssels (KIDj), die jeweils mit dem Datenwort verbunden sind, – Auswählen eines geheimen Schlüssels (Kj) ausgehend von einer Liste geheimer Schlüssel (K), die in einer Einheit von Registern (32) des Schaltkreises gespeichert sind und von welchen mindestens einer ein Schlüssel ist, der mit mindestens einem anderen Schaltkreis des elektronischen Geräts geteilt wird, und ferner ausgehend von dem Identifikator, und kontinuierlich für jedes verschlüsselte Datenwort – Erzeugen einer Pseudozufallszahl (PNj) mit festgelegter Größe mittels eines Pseudozufallsgenerators (10), der einen Algorithmus zum Erzeugen in Abhängigkeit von dem geheimen Schlüssel und dem Initialisierungsvektor umsetzt, und – Kombinieren des Datenworts und der entsprechenden Pseudozufallszahl, um ein entschlüsseltes Datenwort (Wj) zu erzeugen.
  5. Verfahren nach Anspruch 4, bei dem die Kombination des Typs ODER-Exklusiv ist, wobei die Größe der Pseudozufallszahlen gleich der Größe der Datenwörter ist.
  6. Verfahren nach einem der Ansprüche 4 und 5, bei dem der Initialisierungsvektor und der Identifikator des geheimen Schlüssels, die aus dem externen Speicher gelesen werden, miteinander verbunden in einem Cache-Speicher (25) des Schaltkreises gespeichert sind.
  7. Vorrichtung zum Umsetzen eines Verschlüsselungsverfahrens nach einem der Ansprüche 1 bis 3, umfassend: – eine Einheit der Register (32), die die geheimen Schlüssel (K) speichern, von welchen mindestens einer ein mit einem anderen Schaltkreis des elektronischen Geräts geteilter Schlüssel ist, wobei jeder mit einem Schlüsselidentifikator (KID) verbunden ist, – eine Einheit zum Auswählen von geheimen Schlüsseln, die einen geheimen Schlüssel (Ki) ausgehend von der Liste der Schlüssel, die in der Registereinheit gespeichert sind, auswählen kann, – eine Segmentierungseinheit (22), die die Daten so aufteilen kann, dass ein Strom von Datenwörtern (Wi) mit festgelegter Größe gebildet wird, – einen Generator von Initialisierungsvektoren (24), der einen Strom von Initialisierungsvektoren (IVi) erzeugen kann, der den Wert bei jedem Datenwort wechselt, – ein Generator für Pseudozufallszahlen (10), der einen Erzeugungsalgorithmus umsetzt, der für jedes Datenwort in Abhängigkeit von dem geheimen Schlüssel und einem bestimmten der Initialisierungsvektoren eine Pseudozufallszahl (PNi) mit bestimmter Größe erzeugen kann, – eine Kombinationseinheit (11), die das Datenwort und die entsprechende Pseudozufallszahl kontinuierlich kombinieren kann, um ein verschlüsseltes Datenwort (Ci) zu erzeugen, und – Mittel zum Speichern in dem externen Speicher jedes verschlüsselten Datenworts verbunden mit dem festgelegten Initialisierungsvektor und dem Schlüsselidentifikator, der mit dem geheimen Schlüssel verbunden ist, der dazu gedient hat, ihn zu verschlüsseln.
  8. Vorrichtung zum Umsetzen eines Entschlüsselungsverfahrens nach einem der Ansprüche 4 bis 6, umfassend: – eine Einheit von Registern, die jeweilige Schlüssel speichern, von welchen mindestens einer ein geteilter Schlüssel ist, wobei jeder mit einem Schlüsselidentifikator verbunden ist, – Lesemittel zum Lesen in dem externen Speicher eines Datenworts sowie eines Initialisierungsvektors und eines Identifikators eines jeweiligen mit dem Datenwort verbundenen geheimen Schlüssels, – Auswahlmittel zum Auswählen für jedes Datenwort eines geheimen Schlüssels ausgehend von einer Liste von Schlüsseln, die in den Registern gespeichert sind und ausgehend ferner von dem Schlüsselidentifikator, – einen Generator für Pseudozufallszahlen (10), der einen Erzeugungsalgorithmus umsetzt, der für jedes Datenwort in Abhängigkeit von dem geheimen Schlüssel und dem Initialisierungsvektor eine Pseudozufallszahl mit bestimmter Größe erzeugen kann, und – eine Kombinationseinheit, die das Datenwort und die entsprechende Pseudozufallszahl so kombinieren kann, dass das verschlüsselte Datenwort entschlüsselt wird.
  9. Schaltkreis umfassend eine Verschlüsselungs-/Entschlüsselungseinheit (38), die eine Verschlüsselungsvorrichtung nach Anspruch 7 und Entschlüsselungsvorrichtung nach Anspruch 8 bildet, wobei die Einheit von Registern, der Generator für Pseudozufallswörter und die Kombinationseinheit für die zwei Vorrichtungen gemeinsam sind.
  10. Schaltkreis nach Anspruch 9, bei dem die Kombinationseinheit ein ODER-Exklusiv-Gatter ist, wobei die Größe der Pseudozufallszahlen gleich der Größe der Datenwörter ist.
  11. Schaltkreis nach einem der Ansprüche 9 und 10, bei dem mindestens einer der geheimen Schlüssel dem Schaltkreis eigen ist.
  12. Schaltkreis nach einem der Ansprüche 9 bis 11, bei dem mindestens einer der geheimen Schlüssel mit einem anderen Schaltkreis eines elektronischen Geräts geteilt wird.
  13. Schaltkreis nach einem der Ansprüche 9 bis 12, bei dem die Verschlüsselungs-/Entschlüsselungseinheit einen Cache-Speicher (25) umfasst, in dem der Initialisierungsvektor und der Identifikator für geheimen Schlüssel, die in dem externen Speicher gelesen werden, miteinander verbunden gespeichert werden.
  14. Elektronisches Gerät, das mindestens zwei Schaltkreise gemäß einem der Ansprüche 9 bis 13 enthält, bei dem mindestens einer der geheimen Schlüssel zwischen den Schaltkreisen geteilt ist, so dass ein gesichertes Untersystem gebildet wird.
DE602004001732T 2003-10-17 2004-09-06 Datenverschlüsselung in einem elektronischen Gerät mit mehreren symmetrischen Prozessoren Active DE602004001732T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0312206A FR2861234A1 (fr) 2003-10-17 2003-10-17 Chiffrement de donnees dans un appareil electronique a plusieurs processeurs symetriques
FR0312206 2003-10-17

Publications (2)

Publication Number Publication Date
DE602004001732D1 DE602004001732D1 (de) 2006-09-14
DE602004001732T2 true DE602004001732T2 (de) 2007-08-09

Family

ID=34355508

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004001732T Active DE602004001732T2 (de) 2003-10-17 2004-09-06 Datenverschlüsselung in einem elektronischen Gerät mit mehreren symmetrischen Prozessoren

Country Status (5)

Country Link
US (1) US7657034B2 (de)
EP (1) EP1524795B1 (de)
JP (1) JP2005122745A (de)
DE (1) DE602004001732T2 (de)
FR (1) FR2861234A1 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070258586A1 (en) * 2006-04-28 2007-11-08 Chien-Chung Huang Personal video recorder having dynamic security functions and method thereof
US7903812B2 (en) * 2006-09-07 2011-03-08 International Business Machines Corporation Detection and handling of encryption key and initialization vector
US20080084995A1 (en) 2006-10-06 2008-04-10 Stephane Rodgers Method and system for variable and changing keys in a code encryption system
US7925890B2 (en) * 2006-10-23 2011-04-12 Harris Corporation Network centered recovery process for cryptographic processing modules
US8345713B2 (en) * 2006-10-25 2013-01-01 Verizon Patent And Licensing Inc. Methods and apparatus for content scrambling in a communications system
US8464069B2 (en) * 2007-02-05 2013-06-11 Freescale Semiconductors, Inc. Secure data access methods and apparatus
US8707082B1 (en) * 2009-10-29 2014-04-22 Symantec Corporation Method and system for enhanced granularity in fencing operations
US8990582B2 (en) * 2010-05-27 2015-03-24 Cisco Technology, Inc. Virtual machine memory compartmentalization in multi-core architectures
US8621260B1 (en) 2010-10-29 2013-12-31 Symantec Corporation Site-level sub-cluster dependencies
JP5806187B2 (ja) * 2012-09-14 2015-11-10 レノボ・シンガポール・プライベート・リミテッド 秘密情報の交換方法およびコンピュータ
WO2016178728A1 (en) * 2015-05-01 2016-11-10 Marvell World Trade Ltd. Systems and methods for secured data transfer via inter-chip hopping buses
US10438006B2 (en) * 2017-07-27 2019-10-08 Citrix Systems, Inc. Secure information storage
GB201713499D0 (en) 2017-08-23 2017-10-04 Nchain Holdings Ltd Computer-implemented system and method
US11727127B2 (en) * 2020-10-16 2023-08-15 Micron Technology, Inc. Secure storage device verification with multiple computing devices

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5438622A (en) * 1994-01-21 1995-08-01 Apple Computer, Inc. Method and apparatus for improving the security of an electronic codebook encryption scheme utilizing an offset in the pseudorandom sequence
JP3627384B2 (ja) * 1996-01-17 2005-03-09 富士ゼロックス株式会社 ソフトウェアの保護機能付き情報処理装置及びソフトウェアの保護機能付き情報処理方法
US5818939A (en) * 1996-12-18 1998-10-06 Intel Corporation Optimized security functionality in an electronic system
US6052466A (en) * 1997-08-28 2000-04-18 Telefonaktiebolaget L M Ericsson (Publ) Encryption of data packets using a sequence of private keys generated from a public key exchange
US6061449A (en) * 1997-10-10 2000-05-09 General Instrument Corporation Secure processor with external memory using block chaining and block re-ordering
US6857076B1 (en) * 1999-03-26 2005-02-15 Micron Technology, Inc. Data security for digital data storage
US7278016B1 (en) * 1999-10-26 2007-10-02 International Business Machines Corporation Encryption/decryption of stored data using non-accessible, unique encryption key
JP4098478B2 (ja) * 2001-01-31 2008-06-11 株式会社東芝 マイクロプロセッサ
WO2003034425A1 (en) * 2001-10-12 2003-04-24 Koninklijke Philips Electronics N.V. Apparatus and method for reading or writing block-wise stored user data
US20030196081A1 (en) * 2002-04-11 2003-10-16 Raymond Savarda Methods, systems, and computer program products for processing a packet-object using multiple pipelined processing modules
US7334124B2 (en) * 2002-07-22 2008-02-19 Vormetric, Inc. Logical access block processing protocol for transparent secure file storage
US8467534B2 (en) * 2003-04-16 2013-06-18 Broadcom Corporation Method and system for secure access and processing of an encryption/decryption key
US7543158B2 (en) * 2004-03-23 2009-06-02 Texas Instruments Incorporated Hybrid cryptographic accelerator and method of operation thereof

Also Published As

Publication number Publication date
US20050138403A1 (en) 2005-06-23
US7657034B2 (en) 2010-02-02
DE602004001732D1 (de) 2006-09-14
EP1524795A1 (de) 2005-04-20
JP2005122745A (ja) 2005-05-12
EP1524795B1 (de) 2006-08-02
FR2861234A1 (fr) 2005-04-22

Similar Documents

Publication Publication Date Title
EP1668516B1 (de) Entschlüsselung und verschlüsselung bei schreibzugriffen auf einen speicher
DE69728465T2 (de) Nichtparalleler Mehrzyklus-Verschlüsselungsapparat
DE69827742T2 (de) Verfahren zum speichen und bearbeiten sensibler informationen in einem sicherheitsmodul und dazugehöriges sicherheitsmodul
DE602004001732T2 (de) Datenverschlüsselung in einem elektronischen Gerät mit mehreren symmetrischen Prozessoren
EP1472587B1 (de) Rechenwerk und verfahren zum ausfuehren einer arithmetischen operation mit verschluesselten operanden
EP1668515B8 (de) Wortindividuelle schlüsselerzeugung
EP1133849B1 (de) Verfahren und vorrichtung zum erzeugen eines verschlüsselten nutzdatenstroms und verfahren und vorrichtung zum entschlüsseln eines verschlüsselten nutzdatenstroms
DE60117230T2 (de) Stromverschlüsselungsanwendungsbeschleuniger und zugehöriges Verfahren
DE69938539T2 (de) Kryptographische Einrichtung mit parallel geschalteten Verschlüsselungsblöcken
EP1777913B1 (de) Verfahren zur Verschlüsselung bzw. Entschlüsselung von Datenpaketen eines Datenstroms
DE10254396A1 (de) Vorrichtung und Verfahren zum Verschlüsseln von Daten
DE112017006020T5 (de) Verfahren und System für suchmusterblinde dynamische symmetrische durchsuchbare Verschlüsselung
WO2011054639A1 (de) Kryptographisches Hardwaremodul bzw. Verfahren zur Aktualisierung eines kryptographischen Schlüssels
DE102008014359A1 (de) Ausführen einer AES-Verschlüsselung oder -Entschlüsselung in mehreren Modi mit einem einzigen Befehl
DE60116195T2 (de) Vorrichtung und Verfahren zur Verschleierung von Eingangsparametern
DE60004409T2 (de) Schaltung und Verfahren zur Zufallszahlerzeugung
DE60305781T2 (de) Verschlüsselung des Inhalts eines ausserhalb eines Prozessors angeordneten Speichers
DE10324422B4 (de) Verfahren und Vorrichtung zur Abbildung eines abzubildenden Eingangswertes auf einen verschlüsselten abgebildeten Ausgangswert
DE102004018874B4 (de) Verfahren und Vorrichtung zum Bestimmen eines Ergebnisses
DE102010045580A1 (de) Schaltungsanordnung und Verfahren zum Betreiben einer Schaltungsanordnung
DE69934707T2 (de) Gegenmassnahmenvorrichtung in einem elektronischen bauteil um einen krypto-algorithmus mit geheimschlüssel durchzuführen
EP0198384A2 (de) Verfahren und Anordnung zum Verschlüsseln von Daten
DE10344636B4 (de) Datenabhängige Ver/Entschlüsselung
WO2016120362A1 (de) Intrinsische authentifizierung von programcode
DE102008054627A1 (de) Steuergerät mit dem Verfahren zum Manipulationsschutz Computerprogramm, Computerprogrammprodukt

Legal Events

Date Code Title Description
8364 No opposition during term of opposition