DE10254396A1 - Vorrichtung und Verfahren zum Verschlüsseln von Daten - Google Patents
Vorrichtung und Verfahren zum Verschlüsseln von DatenInfo
- Publication number
- DE10254396A1 DE10254396A1 DE10254396A DE10254396A DE10254396A1 DE 10254396 A1 DE10254396 A1 DE 10254396A1 DE 10254396 A DE10254396 A DE 10254396A DE 10254396 A DE10254396 A DE 10254396A DE 10254396 A1 DE10254396 A1 DE 10254396A1
- Authority
- DE
- Germany
- Prior art keywords
- index
- data
- memory
- encryption
- key
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
Es werden eine Vorrichtung und ein Verfahren zum Verschlüsseln von Daten zwischen einem Prozessor (10) und einem Speicher (20) angegeben, bei denen unnötige Schreibvorgänge durch Wiederverschlüsselung vermieden sind, wodurch der Energieverbrauch gesenkt wird. Bei einem Schreibvorgang wird ein Index (IND), der anzeigt, welcher von mehreren geheimen Schlüsseln zur Datenverschlüsselung verwendet wird, in einem Schlüsselzustandsspeicher (22), der ein spezieller Speicherbereich ist, aufgezeichnet, und beim Lesen von Daten wird dieser im Schlüsselzustandsspeicher abgespeicherte Index gelesen und zur Entschlüsselung verwendet.
Description
- Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Verschlüsseln von Daten, die zwischen einem Prozessor und einem Speicher angewandt werden.
- Verschlüsselungssysteme dienen dazu, ein System im Inneren gegen Angriffe von außen zu schützen. Zum Beispiel ist es in der derzeitigen Informationsgesellschaft, in der intelligente Karten in weitem Umfang verteilt sind, wesentlich, persönliche Information und Bankkonteninformation von Benutzern, wie sie in den intelligenten Karten gespeichert sind, zu schützen. Da derartige Information nach einem speziellen Operationsprozess in einen vorbestimmten Speicher eingespeichert wird, kann derselbe das Angriffsziel externen Angreifer bilden.
- Bei zwischen einem Prozessor und einem Speicher verwendeten Datenverschlüsselungsverfahren wurden ein Speicher-Verwürfelungsverfahren, ein Bus-Verwürfelungsverfahren und ein Verfahren mit dynamischer Verschlüsselung verwendet.
- Beim Speicher-Verwürfelungsverfahren wird, wenn Daten in einen Speicher eingespeichert werden, die Speicherposition für die Daten dadurch geändert, dass eine durch einen bestimmten Algorithmus veränderte Adresse anstelle der ursprünglichen Adresse verwendet wird. Demgemäß können externe Angreifer den Speicherinhalt nicht erfassen.
- Beim Bus-Verwürfelungsverfahren werden Busse zwischen einem Prozessor und einem Speicher nicht sequenziell ausgerichtet. Selbst wenn externe Angreifer die Busse anzapfen, können sie den Businhalt nicht entschlüsseln.
- Da jedoch die oben genannten Verfahren beim Chipdesign statisch festgelegt werden, können Daten durch empirische Vorgehensweise von Angreifern angezapft werden. Um gegenüber derartigen statischen Verwürfelungsverfahren eine Verbesserung zu erzielen, wurde im US-Patent Nr. 5,987,572 ein dynamisches Verschlüsselungsverfahren vorgeschlagen.
- Beim dynamischen Verschlüsselungsverfahren wird Wiederverschlüsselung verwendet. Während keine Speicherzugriffsanforderung vorliegt, werden Daten entsprechend einer Spezifizierung durch einen Zeiger aus einem Speicher ausgelesen, unter Verwendung eines ersten geheimen Schlüssels entschlüsselt, unter Verwendung eines zweiten geheimen Schlüssels verschlüsselt und dann wieder gemäß der Spezifizierung durch den Zeiger in den Speicher eingeschrieben. Beim dynamischen Verschlüsselungsverfahren werden also Daten im durch einen Zeiger spezifizierten Speicherbereich unter Verwendung zweier verschiedener geheimer Schlüssel verschlüsselt.
- Hierbei hält der Wiederverschlüsselungsprozess, wie er ausgeführt wird, um Information eines geheimen Schlüssels zu erneuern, wenn keine Speicherzugriffsanforderung erzeugt wird, lediglich die Datenverschlüsselung aufrecht. Daher wird bei einem vom Prozessor ausgeführten Datenverschlüsselungsvorgang keine Wiederverschlüsselung benötigt.
- Bei EEPROMs, wie sie üblicherweise bei intelligenten Karten verwendet werden, besteht eine beschränkte Anzahl von Schreibvorgängen. Durch überflüssige Wiederverschlüsselungen wird die Lebensdauer derartiger Karten verkürzt. Außerdem wird der Energieverbrauch von Chips durch häufige Wiederverschlüsselung erhöht.
- Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren und eine Vorrichtung zur Verschlüsselung von Daten zu schaffen, bei denen Speicherschreiboperationen aufgrund überflüssiger Verschlüsselung bei dynamischer Datenverschlüsselung zwischen einem Prozessor und einem Speicher vermieden sind.
- Diese Aufgabe ist hinsichtlich der Vorrichtung durch die Lehre des beigefügten Anspruchs 1 und hinsichtlich des Verfahrens durch die Lehre des beigefügten Anspruchs 8 gelöst.
- Beim Verfahren und der Vorrichtung gemäß der Erfindung wird zur Datenverschlüsselung in einem speziellen Speicherbereich eines Speichers beim Einschreiben von Daten ein Index aufgezeichnet, der anzeigt, welcher von mehreren geheimen Schlüsseln verwendet wurde, und beim Lesen verschlüsselter Daten wird der gespeicherte Index gelesen und zur Entschlüsselung verwendet.
- Wenn die Erfindung bei EEPROMs angewandt wird, kann deren Lebensdauer verlängert werden, da weniger Umschreibvorgänge durch neue Verschlüsselung erforderlich sind.
- Die Erfindung wird unter Bezugnahme auf die beigefügten Zeichnungen, die nur veranschaulichend angegeben sind und demgemäß für die Erfindung nicht beschränkend sind, besser zu verstehen sein.
- Fig. 1 ist ein Blockdiagramm zum Veranschaulichen einer Vorrichtung zum Verschlüsseln von Daten zwischen einem Prozessor und einem Speicher gemäß der Erfindung;
- Fig. 2 ist ein Diagramm zum Veranschaulichen eines Datenverschlüsselungsprozesses zwischen einem Prozessor und einem Speicher gemäß der Erfindung;
- Fig. 3 ist ein Diagramm zum Veranschaulichen eines Datenentschlüsselungsprozesses zwischen einem Prozessor und einem Speicher gemäß der Erfindung;
- Fig. 4 ist ein Flussdiagramm zum Veranschaulichen eines Verfahrens zum Verschlüsseln von Daten zwischen einem Prozessor und einem Speicher gemäß der Erfindung;
- Fig. 5 ist ein Flussdiagramm zum Veranschaulichen eines Verfahrens zum Entschlüsseln von Daten zwischen einem Prozessor und einem Speicher gemäß der Erfindung.
- Nun wird unter Bezugnahme auf die Fig. 1 eine Vorrichtung zum Verschlüsseln von Daten und ein zugehöriges Verfahren gemäß einer bevorzugten Ausführungsform der Erfindung detailliert beschrieben.
- Gemäß der Fig. 1 verfügt die Vorrichtung zum Verschlüsseln von Daten über einen Prozessor 10 und einen Speicherblock 20. Der Prozessor 10 weist Folgendes auf: einen Kern 11 zum Speichern extern eingegebener Daten DATA; ein Verschlüsselungs/Entschlüsselungs-Modul 12 zum Verschlüsseln der im Kern 11 gespeicherten Daten DATA; eine Schlüsseltabelle 13 zum Speichern geheimer Schlüssel K1-Kn zur Daten-Verschlüsselung/Entschlüsselung sowie eine Datenverschlüsselungs-Steuereinheit 14 zum Erzeugen eines Indexes IND zum Auswählen eines geheimen Schlüssels Ki zur Daten-Verschlüsselung/Entschlüsselung. Der Speicherblock 20 weist Folgendes auf: ein Speicherzellenarray 21 zum Speichern von im Prozessor 10 verschlüsselten Daten EDATA sowie einen Schlüsselzustandsspeicher 22 zum Speichern des zur Datenverschlüsselung verwendeten Indexes IND.
- Hierbei ist der Index IND, der die dynamische Datenverschlüsselungsinformation bildet, im Schlüsselzustandsspeicher 22 des Speicherblocks 20 gespeichert. D. h., dass der Index IND, der anzeigt, welcher der n geheimen Schlüssel K1-Kn zur Datenverschlüsselung verwendet wird, beim Schreiben von Daten im Schlüsselzustandsspeicher 22 aufgezeichnet wird. Außerdem wird der im Schlüsselzustandsspeicher 22 gespeicherte Index IND mit den verschlüsselten Daten EDATA gelesen und zur Datenentschlüsselung verwendet. Der Schlüsselzustandsspeicher 22 wird dadurch aufgebaut, dass zu jeder Minimalzugriffseinheit (im Allgemeinen 1 Byte des Speichers) eine 2 N-Bit-Zelle hinzugefügt wird. Eine Speicherzelle des Schlüsselzustandsspeichers weist dieselbe Konfiguration wie eine übliche Zelle auf.
- Die Schlüsseltabelle 13 verfügt über ein Register oder eine Speicherzelle zum Speichern n geheimer Schlüssel K1-Kn.
- Entsprechend dem von der Datenverschlüsselungs-Steuereinheit 14 bei der Verschlüsselung oder dem vom Schlüsselzustandsspeicher 22 des Speicherblocks 20 bei der Entschlüsselung ausgegebenen Index IND wird mittels eines N-auf-1-Multiplexers 15 ein geheimer Schlüssel Ki oder Km aus den n geheimen Schlüsseln K1-Kn ausgewählt und zur Ver- oder Entschlüsselung verwendet.
- Es ist angenommen, dass n eine frei einstellbare Zahl ist, die entsprechend Spezifikationen des Systems gewählt wird, und dass die n geheimen Schlüssel K1-Kn vorab mittels eines Zufallszahlengenerators (nicht dargestellt) erzeugt werden.
- Die Datenverschlüsselungs-Steuereinheit 14 bestimmt den Index IND des geheimen Schlüssels, wenn sie die tatsächliche Verschlüsselung ausführt, unter den in der Schlüsseltabelle 13 gespeicherten geheimen Schlüsseln. Hierbei verfügt die Datenverschlüsselungs-Steuereinheit 14 über ein 2N -Bit-Register 17 zum Speichern eines globalen Indexes sowie einen 2N-Bit-Inkrementierer 18.
- Bei einer anderen Ausführungsform der Erfindung kann die Datenverschlüsselungs-Steuereinheit 14 einen 2N -Bit-Zufallszahlengenerator zum Erzeugen des Indexes IND aufweisen.
- Bei einer Speicherschreiboperation wird ein im Bitregister 17 abgespeicherter Wert als Verschlüsselungsindex IND verwendet, er wird während einer folgenden Speicherschreiboperation im Inkrementierer 18 um +1 inkrementiert, und er wird in das Bitregister 17 eingespeichert. Entsprechend einer Operation nach dem Inkrementieren können auch die unter derselben Adresse abgespeicherten Daten an jeden Punkt der Speicherschreiboperation dynamisch unter Verwendung verschiedener geheimer Schlüssel verschlüsselt werden.
- Der zur Verschlüsselung verwendete Index IND wird in den Schlüsselzustandsspeicher 22 des Speicherblocks 20eingespeichert, um den geheimen Schlüssel für die Entschlüsselung mit demjenigen für die Verschlüsselung in Übereinstimmung zu bringen.
- Das Verschlüsselungs/Entschlüsselungs-Modul 12 verschlüsselt die Daten DATA des Prozessors 10, oder es entschlüsselt die im Speicher abgespeicherten Daten EDATA unter Verwendung des aus der Schlüsseltabelle 13 ausgewählten geheimen Schlüssels. Demgemäß wird bei jeder Verschlüsselung mittels des Indexes IND der Datenverschlüsselungs-Steuereinheit 14 ein anderer geheimer Schlüssel ausgewählt, um eine dynamische Datenverschlüsselung auszuführen.
- Eine Verschlüsselungs/Entschlüsselungs-Einheit 16 führt eine Verschlüsselung/Entschlüsselung der Daten und des geheimen Schlüssels entsprechend einer logischen XOR-Operation aus. Da die logische XOR-Operation eine symmetrische Operation zum Entschlüsseln der verschlüsselten Daten EDATA durch den zur Verschlüsselung verwendeten geheimen Schlüssel ist, werden die ursprünglichen Daten genau wiederhergestellt.
- Wie es in der Fig. 2 dargestellt ist, wird bei einer Datenschreiboperation der Verschlüsselungsindex IND in der Datenverschlüsselungs-Steuereinheit 14 erzeugt. Hierbei wird der Verschlüsselungsindex IND durch den Inkrementierer 18 inkrementiert, damit er bei jeder Speicherschreiboperation einen anderen Wert aufweist, und er wird in das Bitregister 17 eingespeichert.
- Entsprechend dem Index IND von der Datenverschlüsselungs- Steuereinheit 14 wählt der Multiplexer 15 den geheimen Schlüssel Ki zur Verschlüsselung unter den mehreren geheimen Schlüsseln K1-Kn aus, wie sie von der Schlüsseltabelle 13 ausgegeben werden. Unter Verwendung des ausgewählten geheimen Schlüssels Ki verschlüsselt die Verschlüsselungs/Entschlüsselungs-Einheit 16, die über ein XOR-Gatter verfügt, die im Kern 11 abgespeicherten Daten DATA. Die verschlüsselten Daten EDATA werden in das Speicherzellenarray 21 des Speicherblocks 20 eingeschrieben. Hierbei wird auch der zur Verschlüsselung verwendete Index IND in den Schlüsselzustandsspeicher 22 des Speicherblocks 20 eingespeichert.
- Wie es in der Fig. 3 dargestellt ist, werden bei einer Datenleseoperation die im Speicherzellenarray 21 des Speicherblocks 20 abgespeicherten verschlüsselten Daten EDATA als Erstes mit dem im Schlüsselzustandsspeicher 22 des Speicherblocks 20 gespeicherten Index IND gelesen. Entsprechend dem aus dem Schlüsselzustandsspeicher 22 des Speicherblocks 20 ausgelesenen Index IND wählt der Multiplexer 15 den geheimen Schlüssel Km aus der Schlüsseltabelle 13 aus, der für die verschlüsselten Daten EDATA verwendet wird.
- Da derselbe Index IND als geheimer Schlüssel für die Verschlüsselung und die Entschlüsselung ausgewählt wird, wird für die Verschlüsselung/Entschlüsselung von Daten derselbe Schlüssel verwendet. Im Ergebnis werden die verschlüsselten Daten EDATA durch den Entschlüsselungsprozess genau in die ursprünglichen Daten DATA wiederhergestellt.
- Gemäß der Fig. 4 erzeugt die Datenverschlüsselungs-Steuereinheit 14 den Verschlüsselungsindex IND (S1). Dann erzeugt sie einen Index IND' für den Gebrauch beim nächsten Mal. Entsprechend dem in der Datenverschlüsselungs-Steuereinheit 14 erzeugten Index IND wählt der Multiplexer 15 den geheimen Schlüssel Ki unter den in der Schlüsseltabelle 13 abgespeicherten mehreren geheimen Schlüsseln K1 - Kn aus (S2). Der zur Verschlüsselung verwendete Index IND wird in den Schlüsselzustandsspeicher 22 des Speicherblocks 20 eingespeichert (S3). Die eingegebenen Daten DATA werden unter Verwendung des ausgewählten geheimen Schlüssels Ki verschlüsselt (S4).
- Die verschlüsselten Daten EDATA werden in das Speicherzellenarray 21 des Speicherblocks 20 eingespeichert (S5).
- Gemäß der Fig. 5 werden die im Speicherzellenarray 21 des Speicherblocks 20 abgespeicherten verschlüsselten Daten EDATA gelesen (S11). Hierbei wird auch der im selben Schlüsselzustandsspeicher 22 des Speicherblocks 20 abgespeicherte Index IND gelesen (S12). Entsprechend dem Index IND wählt der Multiplexer 15 den geheimen Schlüssel Km unter den mehreren geheimen Schlüsseln K1-Kn zur Entschlüsselung aus (S13). Die verschlüsselten Daten EDATA werden un-cer Verwendung des ausgewählten geheimen Schlüssels Km entschlüsselt, und es werden die entschlüsselten Daten ausgegeben (S14).
- Wie bereits erörtert, können mit der Vorrichtung und dem Verfahren gemäß der Erfindung zum Verschlüsseln von Daten zwischen einem Prozessor und einem Speicher unnötige Schreibvorgänge durch Wiederverschlüsselung verhindert werden, wodurch der Energieverbrauch gesenkt wird. Dies erfolgt dadurch, dass ein Index, der anzeigt, welcher von mehreren geheimen Schlüsseln zur Datenverschlüsselung verwendet wurde, in einem Schlüsselzustandsspeicher, bei dem es sich um einen speziellen Speicherbereich handelt, beim Schreiben von Daten abgespeichert wird, während beim Lesen von Daten auch der im Schlüsselzustandsspeicher gespeicherte Index gelesen und zur Entschlüsselung verwendet wird.
Claims (10)
1. Vorrichtung zum Verschlüsseln von Daten zwischen einem
Prozessor und einem Speicher,
wobei der Prozessor (10) Folgendes aufweist:
ein Modul (12) zum Verschlüsseln eingegebener Daten (DATA) oder zum Entschlüssen verschlüsselter Daten (EDATA);
eine Schlüsseltabelle (13) zum Speichern geheimer Schlüssel zur Daten-Verschlüsselung/Entschlüsselung; und
eine Steuereinrichtung (14) zum Erzeugen eines Indexes (IND) für den Verschlüsselungsvorgang des Moduls; und
wobei der Speicher (20) Folgendes aufweist:
ein Speicherzellenarray (21) zum Speichern von durch das Modul des Prozessors verschlüsselten Daten und
einen Schlüsselzustandsspeicher (22) zum Speichern des in der Steuereinrichtung des Prozessors erzeugten Indexes, und der zur Verschlüsselung der eingegebenen Daten verwendet wird.
wobei der Prozessor (10) Folgendes aufweist:
ein Modul (12) zum Verschlüsseln eingegebener Daten (DATA) oder zum Entschlüssen verschlüsselter Daten (EDATA);
eine Schlüsseltabelle (13) zum Speichern geheimer Schlüssel zur Daten-Verschlüsselung/Entschlüsselung; und
eine Steuereinrichtung (14) zum Erzeugen eines Indexes (IND) für den Verschlüsselungsvorgang des Moduls; und
wobei der Speicher (20) Folgendes aufweist:
ein Speicherzellenarray (21) zum Speichern von durch das Modul des Prozessors verschlüsselten Daten und
einen Schlüsselzustandsspeicher (22) zum Speichern des in der Steuereinrichtung des Prozessors erzeugten Indexes, und der zur Verschlüsselung der eingegebenen Daten verwendet wird.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet,
dass das Modul (20) Folgendes aufweist:
einen Multiplexer (15) zum Auswählen eines der in der Schlüsseltabelle (13) abgespeicherten geheimen Schlüssels und
eine Operationseinrichtung (16) zum Verschlüsseln eingegebener Daten oder zum Entschlüsseln verschlüsselter Daten, wie sie im Speicher abgespeichert sind, entsprechend dem vom Multiplexer ausgewählten geheimen Schlüssel.
einen Multiplexer (15) zum Auswählen eines der in der Schlüsseltabelle (13) abgespeicherten geheimen Schlüssels und
eine Operationseinrichtung (16) zum Verschlüsseln eingegebener Daten oder zum Entschlüsseln verschlüsselter Daten, wie sie im Speicher abgespeichert sind, entsprechend dem vom Multiplexer ausgewählten geheimen Schlüssel.
3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet,
dass der Multiplexer (15) einen der in der Schlüsseltabelle
(13) gespeicherten geheimen Schlüssel entsprechend dem
während der Verschlüsselung in der Steuereinrichtung (14)
erzeugten Index auswählt und er einen der in der
Schlüsseltabelle gespeicherten geheimen Schlüssel während der
Entschlüsselung entsprechend dem im Schlüsselzustandsspeicher
(22) des Speichers gespeicherten Index auswählt.
4. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet,
dass als Operationseinrichtung eine
XOR-Operationseinrichtung (16) vorhanden ist.
5. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet,
dass die Steuereinrichtung (14) Folgendes aufweist:
ein Register (17) zum Speichern eines globalen Indexes; und
eine Inkrementiereinrichtung (18) zum Inkrementieren des Werts des zur Verschlüsselung verwendeten Indexes und zum Einspeichern des Werts in das Register.
ein Register (17) zum Speichern eines globalen Indexes; und
eine Inkrementiereinrichtung (18) zum Inkrementieren des Werts des zur Verschlüsselung verwendeten Indexes und zum Einspeichern des Werts in das Register.
6. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet,
dass die Steuerungseinrichtung (14) einen
Zufallszahlengenerator zum Erzeugen des Indexes aufweist.
7. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet,
dass der Schlüsselzustandsspeicher (22) Speicherzellen
aufweist, die mit denen identisch sind, die das
Speicherzellenarray (21) bilden.
8. Verfahren zur Verschlüsselung und Entschlüsselung von
Daten,
wobei ein Verschlüsselungsprozess Folgendes aufweist:
einen Indexerzeugungsschritt zum Erzeugen eines Indexes (IND);
einen Schlüsselauswählschritt zum Auswählen eines geheimen Schlüssels zur Verschlüsselung entsprechend dem Index;
einen Indexspeicherschritt zum Speichern des zur Verschlüsselung verwendeten Indexes in einem speziellen Speicherbereich des Speichers; und
einen Verschlüsselungsschritt zum Verschlüsseln eingegebener Daten (DATA) unter Verwendung des ausgewählten geheimen Schlüssels; und
wobei ein Entschlüsselungsprozess Folgendes aufweist:
einen Datenleseschritt zum Lesen verschlüsselter Daten (EDATA), die im Speicher abgespeichert sind;
einen Indexleseschritt zum Lesen des im Speicherbereich des Speichers abgespeicherten Indexes;
einen Geheimschlüssel-Auswählschritt zum Auswählen eines geheimen Schlüssels zur Entschlüsselung entsprechend dem Index;
einen Entschlüsselungsschritt zum Entschlüsseln der verschlüsselten Daten unter Verwendung des ausgewählten geheimen Schlüssels.
wobei ein Verschlüsselungsprozess Folgendes aufweist:
einen Indexerzeugungsschritt zum Erzeugen eines Indexes (IND);
einen Schlüsselauswählschritt zum Auswählen eines geheimen Schlüssels zur Verschlüsselung entsprechend dem Index;
einen Indexspeicherschritt zum Speichern des zur Verschlüsselung verwendeten Indexes in einem speziellen Speicherbereich des Speichers; und
einen Verschlüsselungsschritt zum Verschlüsseln eingegebener Daten (DATA) unter Verwendung des ausgewählten geheimen Schlüssels; und
wobei ein Entschlüsselungsprozess Folgendes aufweist:
einen Datenleseschritt zum Lesen verschlüsselter Daten (EDATA), die im Speicher abgespeichert sind;
einen Indexleseschritt zum Lesen des im Speicherbereich des Speichers abgespeicherten Indexes;
einen Geheimschlüssel-Auswählschritt zum Auswählen eines geheimen Schlüssels zur Entschlüsselung entsprechend dem Index;
einen Entschlüsselungsschritt zum Entschlüsseln der verschlüsselten Daten unter Verwendung des ausgewählten geheimen Schlüssels.
9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass
der Indexerzeugungsschritt die folgenden Unterschritte
aufweist:
- Speichern eines globalen Indexes; und
- Inkrementieren des Werts des Indexes, der für die folgende
Verschlüsselung zu verwenden ist.
10. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass
der Indexerzeugungsschritt den Index durch einen
Zufallszahlengenerator zufällig erzeugt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0075492A KR100445406B1 (ko) | 2001-11-30 | 2001-11-30 | 데이터 암호화 장치 및 그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10254396A1 true DE10254396A1 (de) | 2003-08-21 |
Family
ID=19716509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10254396A Withdrawn DE10254396A1 (de) | 2001-11-30 | 2002-11-21 | Vorrichtung und Verfahren zum Verschlüsseln von Daten |
Country Status (5)
Country | Link |
---|---|
US (1) | US20030105967A1 (de) |
JP (1) | JP2003198534A (de) |
KR (1) | KR100445406B1 (de) |
DE (1) | DE10254396A1 (de) |
FR (1) | FR2833120B1 (de) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7162636B2 (en) | 1998-06-22 | 2007-01-09 | Semtek Innovative Solutions, Inc. | Method and apparatus for securing and authenticating encoded data and documents containing such data |
FI114061B (fi) * | 2002-05-17 | 2004-07-30 | Nokia Corp | Menetelmä ja järjestelmä digitaalisessa langattomassa tiedonsiirtoverkossa datasalauksen järjestämiseksi ja vastaava palvelin |
JP4263976B2 (ja) * | 2003-09-24 | 2009-05-13 | 株式会社東芝 | オンチップマルチコア型耐タンパプロセッサ |
DE10345454A1 (de) * | 2003-09-30 | 2005-04-28 | Infineon Technologies Ag | Wortindividuelle Schlüsselerzeugung |
US7562230B2 (en) * | 2003-10-14 | 2009-07-14 | Intel Corporation | Data security |
KR100585135B1 (ko) * | 2004-02-28 | 2006-06-01 | 삼성전자주식회사 | 불법 복제 방지 기능을 갖는 aes 엔진 장치 및 이의암호화/복호화 방법 |
US7543158B2 (en) * | 2004-03-23 | 2009-06-02 | Texas Instruments Incorporated | Hybrid cryptographic accelerator and method of operation thereof |
US7506812B2 (en) | 2004-09-07 | 2009-03-24 | Semtek Innovative Solutions Corporation | Transparently securing data for transmission on financial networks |
US7711965B2 (en) * | 2004-10-20 | 2010-05-04 | Intel Corporation | Data security |
KR20060066626A (ko) * | 2004-12-13 | 2006-06-16 | 엘지전자 주식회사 | 컨텐트의 암호/해독을 위한 키를 기록하고 사용하는 방법및 장치와 그 방법에 의해 키가 기록되어 있는 기록매체 |
EP1825470A4 (de) * | 2004-12-13 | 2009-04-29 | Lg Electronics Inc | Verfahren und vorrichtung zum schreiben und benutzen von schlüsseln zum verschlüsseln/entschlüsseln eines inhalts und durch das verfahren geschriebene schlüssel speicherndes aufzeichnungsmedium |
WO2006065033A1 (en) * | 2004-12-13 | 2006-06-22 | Lg Electronics Inc. | Method and apparatus for writing and using keys for encrypting/decrypting a content and a recording medium storing keys written by the method |
KR20060066627A (ko) * | 2004-12-13 | 2006-06-16 | 엘지전자 주식회사 | 컨텐트의 암호/해독을 위한 키를 기록하고 사용하는 방법및 장치와 그 방법에 의해 키가 기록되어 있는 기록매체 |
JP2008530663A (ja) * | 2005-02-11 | 2008-08-07 | ユニバーサル データ プロテクション コーポレーション | マイクロプロセッサのデータセキュリティの方法およびシステム |
US20060194603A1 (en) * | 2005-02-28 | 2006-08-31 | Rudelic John C | Architecture partitioning of a nonvolatile memory |
US8165302B2 (en) * | 2005-06-07 | 2012-04-24 | Sony Corporation | Key table and authorization table management |
DE602005021120D1 (de) * | 2005-10-28 | 2010-06-17 | Emma Mixed Signal Cv | Zugriffskontrolle auf eine Entschlüsselungstabelle von ASIC bzw. ASSP |
US8001591B2 (en) * | 2006-01-31 | 2011-08-16 | Freescale Semiconductor, Inc. | Distributed resource access protection |
US20070239605A1 (en) * | 2006-04-06 | 2007-10-11 | Peter Munguia | Supporting multiple key ladders using a common private key set |
US9361617B2 (en) | 2008-06-17 | 2016-06-07 | Verifone, Inc. | Variable-length cipher system and method |
US9123042B2 (en) * | 2006-10-17 | 2015-09-01 | Verifone, Inc. | Pin block replacement |
US8769275B2 (en) | 2006-10-17 | 2014-07-01 | Verifone, Inc. | Batch settlement transactions system and method |
US20080288403A1 (en) * | 2007-05-18 | 2008-11-20 | Clay Von Mueller | Pin encryption device security |
US8355982B2 (en) | 2007-08-16 | 2013-01-15 | Verifone, Inc. | Metrics systems and methods for token transactions |
EP2028603B1 (de) | 2007-08-20 | 2011-07-13 | NTT DoCoMo, Inc. | Adapter für ein externes Speichermedium |
JP2009064055A (ja) * | 2007-09-04 | 2009-03-26 | Hitachi Ltd | 計算機システム及びセキュリティ管理方法 |
KR101012770B1 (ko) * | 2008-05-16 | 2011-02-08 | 한국표준과학연구원 | 가변압력을 이용한 건조기 및 이를 이용한 건조방법 |
EP2662796A3 (de) * | 2008-06-24 | 2014-03-05 | Nds Limited | Sicherheit in integrierten Schaltkreisen |
US8144940B2 (en) | 2008-08-07 | 2012-03-27 | Clay Von Mueller | System and method for authentication of data |
JP4648461B2 (ja) * | 2009-01-30 | 2011-03-09 | 株式会社東芝 | 磁気ディスク装置及び同装置における暗号鍵更新方法 |
US8251283B1 (en) | 2009-05-08 | 2012-08-28 | Oberon Labs, LLC | Token authentication using spatial characteristics |
WO2012161505A1 (en) * | 2011-05-23 | 2012-11-29 | Samsung Electronics Co., Ltd. | Method and apparatus for authenticating a non-volatile memory device |
KR101878682B1 (ko) * | 2011-11-14 | 2018-07-18 | 삼성전자주식회사 | 컨텐츠를 보호하기 위한 방법 및 저장 매체 |
KR101329084B1 (ko) * | 2012-05-17 | 2013-11-14 | 한국전자통신연구원 | 무중단 암호통신을 위한 암복호 통신 방법 및 장치 |
US9672519B2 (en) | 2012-06-08 | 2017-06-06 | Fmr Llc | Mobile device software radio for securely passing financial information between a customer and a financial services firm |
KR102218715B1 (ko) * | 2014-06-19 | 2021-02-23 | 삼성전자주식회사 | 채널별로 데이터를 보호할 수 있는 반도체 장치 |
KR101625018B1 (ko) | 2014-09-30 | 2016-05-30 | 칩스브레인글로벌주식회사 | 데이터 암호화 장치 및 방법, 그를 이용한 컴퓨팅 장치 및 통신 장치 |
KR101828234B1 (ko) * | 2016-04-05 | 2018-02-12 | 주식회사 다산네트웍스 | 시각 동기 기반의 차량용 전자 제어 시스템, 장치 및 방법 |
KR101932680B1 (ko) | 2018-09-27 | 2018-12-26 | (주)아이엔아이 | 데이터를 안전하게 보호하는 암호화 키 생성 모듈 |
KR102285885B1 (ko) * | 2019-05-22 | 2021-08-05 | 주식회사 디지트로그 | 무선 데이터 통신용 대칭형 양자 암호화 키 기반 암호화 장치 |
CN111556071B (zh) * | 2020-05-12 | 2020-12-04 | 深圳市汇智通咨询有限公司 | 一种用于计算机的数据加密算法与系统 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5253294A (en) * | 1983-02-22 | 1993-10-12 | At&T Bell Laboratories | Secure transmission system |
US4731840A (en) * | 1985-05-06 | 1988-03-15 | The United States Of America As Represented By The United States Department Of Energy | Method for encryption and transmission of digital keying data |
US4853962A (en) * | 1987-12-07 | 1989-08-01 | Universal Computer Consulting, Inc. | Encryption system |
US5265162A (en) * | 1990-01-16 | 1993-11-23 | George Bush | Portable pin card |
US5222137A (en) * | 1991-04-03 | 1993-06-22 | Motorola, Inc. | Dynamic encryption key selection for encrypted radio transmissions |
US5365589A (en) * | 1992-02-07 | 1994-11-15 | Gutowitz Howard A | Method and apparatus for encryption, decryption and authentication using dynamical systems |
JPH104403A (ja) * | 1996-06-17 | 1998-01-06 | N T T Data Tsushin Kk | 暗号化装置、復号化装置およびその方法 |
KR100201396B1 (ko) * | 1996-07-20 | 1999-06-15 | 구본준 | 이피롬의 비화코드 해독 방지회로 |
US5987572A (en) * | 1997-09-29 | 1999-11-16 | Intel Corporation | Method and apparatus employing a dynamic encryption interface between a processor and a memory |
US5970147A (en) * | 1997-09-30 | 1999-10-19 | Intel Corporation | System and method for configuring and registering a cryptographic device |
US6061449A (en) * | 1997-10-10 | 2000-05-09 | General Instrument Corporation | Secure processor with external memory using block chaining and block re-ordering |
US7457415B2 (en) * | 1998-08-20 | 2008-11-25 | Akikaze Technologies, Llc | Secure information distribution system utilizing information segment scrambling |
JP4206529B2 (ja) * | 1998-09-17 | 2009-01-14 | ソニー株式会社 | コンテンツ管理方法及びコンテンツ記憶システム |
US6490353B1 (en) * | 1998-11-23 | 2002-12-03 | Tan Daniel Tiong Hok | Data encrypting and decrypting apparatus and method |
US6094368A (en) * | 1999-03-04 | 2000-07-25 | Invox Technology | Auto-tracking write and read processes for multi-bit-per-cell non-volatile memories |
WO2001040950A2 (de) * | 1999-12-02 | 2001-06-07 | Infineon Technologies Ag | Mikroprozessoranordnung mit verschlüsselung |
US7005733B2 (en) * | 1999-12-30 | 2006-02-28 | Koemmerling Oliver | Anti tamper encapsulation for an integrated circuit |
JP2001325153A (ja) * | 2000-05-15 | 2001-11-22 | Toyo Commun Equip Co Ltd | フィールドプログラマブルゲートアレイの回路情報保護方法 |
US7277542B2 (en) * | 2000-09-25 | 2007-10-02 | Broadcom Corporation | Stream cipher encryption application accelerator and methods thereof |
JP2002344441A (ja) * | 2001-05-11 | 2002-11-29 | Ricoh Co Ltd | ディジタルデータ暗号システム、ディジタルデータ再生装置、ディジタルデータ暗号方法、ディジタルデータ再生方法およびそれらの方法をコンピュータに実行させるプログラム |
US7594265B2 (en) * | 2001-11-14 | 2009-09-22 | Ati Technologies, Inc. | System for preventing unauthorized access to sensitive data and a method thereof |
-
2001
- 2001-11-30 KR KR10-2001-0075492A patent/KR100445406B1/ko not_active IP Right Cessation
-
2002
- 2002-09-25 JP JP2002279831A patent/JP2003198534A/ja not_active Withdrawn
- 2002-11-07 US US10/289,927 patent/US20030105967A1/en not_active Abandoned
- 2002-11-21 DE DE10254396A patent/DE10254396A1/de not_active Withdrawn
- 2002-11-27 FR FR0214878A patent/FR2833120B1/fr not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
FR2833120B1 (fr) | 2005-04-08 |
FR2833120A1 (fr) | 2003-06-06 |
US20030105967A1 (en) | 2003-06-05 |
JP2003198534A (ja) | 2003-07-11 |
KR100445406B1 (ko) | 2004-08-25 |
KR20030044654A (ko) | 2003-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10254396A1 (de) | Vorrichtung und Verfahren zum Verschlüsseln von Daten | |
EP1668515B1 (de) | Wortindividuelle schlüsselerzeugung | |
DE19782169C2 (de) | Kryptographisch geschütztes Seitenwechsel-Subsystem | |
EP1668516B1 (de) | Entschlüsselung und verschlüsselung bei schreibzugriffen auf einen speicher | |
DE69821159T2 (de) | System und Verfahren zur Authentifikation, und Vorrichtung und Verfahren zur Authentifikation | |
DE69824251T2 (de) | Entschlüsselungsvorrichtung | |
DE102007044330A1 (de) | Verschlüsselungsprozessor und Verfahren zum Schreiben und Lesen von Daten | |
EP1883906B1 (de) | Tragbarer datenträger mit sicherer datenverarbeitung | |
DE3407642A1 (de) | Verfahren und einrichtung zur sicherung des zugriffs zu dateien | |
EP1234239A2 (de) | Mikroprozessoranordnung mit verschlüsselung | |
DE602004001732T2 (de) | Datenverschlüsselung in einem elektronischen Gerät mit mehreren symmetrischen Prozessoren | |
EP1118941A1 (de) | Mikroprozessoranordnung und Verfahren zum Betreiben einer Mikroprozessoranordnung | |
DE10232348A1 (de) | Integrierte Halbleiterschaltung mit interner Busdatenübertragung und zugehöriges Datenübertragungsverfahren | |
DE3705736A1 (de) | Verfahren zum sichern von programmen und zur integritaetskontrolle gesicherter programme | |
DE102019110440A1 (de) | Replay-Schutz für Speicher auf der Basis eines Schlüsselauffrischens | |
EP1022659B1 (de) | Schaltungsanordnung zur elektonischen Datenverarbeitung | |
DE102004019681A1 (de) | Verfahren zum Schreiben von Daten und Datenverarbeitungsgerät | |
EP1150190B1 (de) | Vorrichtung und Verfahren zur Steuerung und/oder Regelung einer Anlage | |
DE10205316B4 (de) | Schlüsselmanagementeinrichtung und Verfahren zur verschlüsselten Ablage von digitalen Datenwörtern | |
DE102006037016A1 (de) | Pseudo-Zufallszahlengenerator für eine Chipkarte | |
DE602004012096T2 (de) | Verfahren und vorrichtung für eine hadwareimplementierung der schlüsselexpansionsfunktion mit wenig speicher | |
EP0135888B1 (de) | Verfahren zur Verhinderung des Ablaufs eines Programms auf für den Ablauf dieses Programms nicht zugelassenen Rechnern | |
EP3371733B1 (de) | Verschlüsseln des speicherinhalts eines speichers in einem eingebetteten system | |
EP0968436A2 (de) | Integrierte schaltung und verfahren zum testen der integrierten schaltung | |
EP1482453A2 (de) | Verfahren zum Laden von Daten in eine Speichereinrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OR8 | Request for search as to paragraph 43 lit. 1 sentence 1 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: MAGNACHIP SEMICONDUCTOR, LTD., CHEONGJU, KR |
|
8105 | Search report available | ||
8139 | Disposal/non-payment of the annual fee |