-
BEREICH DER
ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf ein Verfahren und eine Einheit
zur sicheren Informationsbehandlung in einem kryptographischen Informationsverarbeitungssystem.
-
HINTERGRUND
DER ERFINDUNG
-
Die
Erfindung bezieht sich auf ein Verfahren und eine Einheit zur sicheren
Informationsbehandlung in einem kryptographischen Informationsverarbeitungssystem
oder einer -einheit, insbesondere einer Chipkarte, wobei die Informationen
Informationseinheiten mit N Informationselementen umfasst und von
wenigstens einem kryptographischen Prozess verarbeitet wird, der
wenigstens ein extern feststellbares Signal verursacht.
-
Als
ein Teil der aktuellen Forschungsaktivitäten zu Kryptosystemen ist ein
Bedarf vorhanden, die Sicherheit der Informationen zu verbessern,
die in Informationsverarbeitungssystemen oder einer -einheit benutzt
wird, vorwiegend tragbare kryptographische Token wie intelligente
(Chip-)Karten. In den letzten Jahren haben Wissenschaftler mit den
Chipkarten-Anbietern zusammengearbeitet, um Angriffen zu begegnen,
und haben Angriffe wie EINFACHE LEISTUNGSANALYSE (SIMPLE POWER ANALYSIS) (SPA),
DIFFERENTIELLE LEISTUNGSANALYSE (DPA), DIFFERENTIELLE LEISTUNGSANALYSE HÖHERER ORDNUNG
(DPA HÖHERER
ORDNUNG) und weitere verwandte Techniken entwickelt. Dies sind technisch
ausgefeilte und außerordentlich leistungsfähige Analysewerkzeuge,
die von Kryptoanalysten benutzt werden können, um geheime Schlüssel aus
kryptographischen Geräten
herauszuholen.
-
In
einem vorveröffentlichten
Artikel von Paul Kocher, der unter www.cryptography.com verfügbar ist,
wird ein Verfahren beschrieben, Chipkarten auf der Grundlage von
Strommustern auf der Stromversorgungsleitung anzugreifen. Es wird
hiermit betont, dass dies keine theoretischen Angriffe sind und
sie bereits erfolgreich benutzt wurden, um eine große Anzahl
von Chipkarten-Erzeugnissen
zu analysieren. Während
das in dem obigen Artikel beschriebene Verfahren einwandfrei arbeitet,
ist und zu beliebiger Zeit wieder angewendet werden kann, gibt es
verschiedene Mechanismen, die die Ursache dafür sind, dass ein Chip Informationen
preisgibt. Eine Hauptquelle der Preisgabe (leakage) sind Datenübertragungen über Busse
innerhalb des Chips. Die Zentraleinheit (CPU) hat auf Speicher wie
ROM, RAM oder EEPROM zuzugreifen, um Programmbefehle zu erhalten
und muss mit variablen Daten oder mit ständig gespeicherten Daten arbeiten.
Wenn die Daten über die
Busse übertragen
werden, müssen
die einzelnen Busleitungen auf die jeweiligen logischen Pegel, d.h. auf
hohe oder niedrige Pegel, gebracht werden. Das Entladen oder Laden
der Leitungen erfordert einen elektrischen Strom, der festgestellt
werden kann. Andere Teile der Hardware wie die CPU selbst können auch
Informationen preisgeben, sie werden aber als viel weniger angriffsanfällig angesehen.
-
Eine
der Operationen in einer Chipkarte, die sorgfältig geschützt werden muss ist die Verschlüsselung
(encryption) oder Entschlüsselung
(decryption) mit Hilfe eines Schlüssels, der im Speicher gespeichert
ist. Wenn ein Angreifer eine Hypothese über ein Bit aufstellen kann,
ob das Bit hoch oder niedrig ist, und Strommuster auf der Stromversorgungsleitung
erfasst, kann er mit statistischen Verfahren überprüfen, dass die Hypothese korrekt
ist. Dann wendet er kryptoanalytische Verfahren an, um dieses wissen
auszunutzen, und leitet den Schlüssel ab.
-
Während einige
der auf dem Markt erhältlichen
Chipkarten-Produkte,
einer einfachen Leistungsanalyse widerstehen können, wurden keine handelsüblichen
Produkte gefunden, die einer DPA Widerstand leisten.
-
Diese
Analysetechniken sind von beträchtlicher
Wichtigkeit, da die Angriffe schnell arrangiert und unter Benutzung
fertig verfügbarer
Hardware realisiert werden können,
die nur einige hundert bis einige tausend Dollar kostet. Der für den Angriff
und die Analyse erforderliche Zeitaufwand hängt von der Art des Angriffs
ab (DPA, SPA usw.) und ändert
sich etwas pro Gerät.
SPA-Angriffe dauern
typischerweise einige Sekunden pro Karte, während DPA-Angriffe mehrere
Stunden dauern können.
-
Ein
allgemein bekanntes kryptographisches Gerät 1, das einen geheimen
Schlüssel
benutzt, um Eingabeinformationen zu verarbeiten und/oder Ausgabeinformationen
zu erzeugen, ist in 1a schematisch dargestellt.
Protokollentwürfe
nehmen typischerweise an, dass Eingabenachrichten 2 und
Ausgabenachrichten 3 für
Angreifer verfügbar
sind, aber weitere Informationen über die geheimen Schlüssel 4 nicht
verfügbar
ist, was durch den 'abgeschlossenen' Kasten 5 in 1a veranschaulicht
wird.
-
Leistungsanalyse-Angriffe
funktionieren, weil oft andere Informationen für Angreifer verfügbar ist. Dies
wird durch die weitere schematische Darstellung der kryptographischen
Einheit 1 entsprechend 1b gezeigt,
die einige beispielhafte Informationen 6 zeigt, die möglicherweise
von einem Angreifer erfasst werden können. Die physikalischen Eigenschaften
der verlorenen Informationen 6 können genau überwacht werden, wenn das Gerät 1 kryptographische
Operationen ausführt.
Insbesondere kann ein einfaches, aus einer ohmschen Last hergestelltes Amperemeter
benutzt werden, um den Leistungsverbrauch zu überwachen.
-
Der
physische Ursprung solcher verlorenen Informationen wird jetzt bezüglich 2 beschrieben,
wo ein typischer MOS-Transistor 10 in
einer integrierten Schaltung (nicht dargestellt) gezeigt wird, die üblicherweise
in kryptographischen Informationsverarbeitungssystemen und eine
-einheit (auch nicht dargestellt), insbesondere in Chipkarten, verwendet wird.
Integrierte Schaltungen bestehen aus einzelnen Transistoren 10,
die als spannungsgesteuerte Schalter 11 funktionieren.
Ein Strom 12 fließt über ein
Transistorsubstrat 13 durch einen Draht 14, wenn
eine Ladung an eine Gate-Elektrode 15 angelegt (oder von ihr
entfernt) wird. Dieser Strom 12 liefert dann eine Ladung
an die Gate-Elektroden anderer Transistoren, an Verbindungsdrähte und
andere Schaltungslasten (nicht dargestellt). Die Bewegung elektrischer Ladungen
auf Grund des Stromes 12 verbraucht Leistung und erzeugt
elektromagnetische Strahlung, und beides ist von außen feststellbar.
Deshalb erzeugen einzelne Transistoren ein extern beobachtbares elektrisches
Verhalten. Da die Logikbausteine eines Mikroprozessors reguläre Transistorschaltmuster zeigen,
ist es möglich,
Makroeigenschaften, zum Beispiel die Aktivität des Mikroprozessors, leicht
zu identifizieren durch ein einfaches Überwachen des Leistungsverbrauches.
-
Bei
SPA-Angriffen beobachtet ein Angreifer direkt die Leistungsaufnahme
eines Systems. Der Betrag an aufgenommener Leistung ändert sich
in Abhängigkeit
vom ausgeführten
Mikroprozessorbefehl. Zwei exemplarische Leistungsverbrauchskurven
sind in 3 dargestellt. Die vom Mikroprozessor
ausgeführten
Operationen ändern
sich während verschiedener
Teile dieser Operationen, Prozessen wie Verschlüsselung/Entschlüsselung
von Daten, zum Beispiel entsprechend dem Data Encryption Standard
(DES), der vom National Bureau of Standards in 'Federal Information Processing Standards Publication
46', Januar 1977,
veröffentlicht
wurde, auf deutliche Art und Weise. In der im oberen Teil von 3 dargestellten
exemplarischen Leistungsverbrauchskurve, in der die obere Spur 20 eine
vollständige
Verschlüsselungsoperation
zeigt, kann man als ein erstes Signal eine anfängliche Permutation erschließen, gefolgt
von 16 DES-Runden oder -Zyklen sowie eine abschließende Permutation.
Die untere Spur 21 ist eine ausführliche Ansicht der zweiten
und dritten DES-Runde. Bei stärkerer
Vergrößerung (hier nicht
dargestellt) kann man sogar einzelne Befehle unterscheiden.
-
Im
Gegensatz zur SPA ist die DPA ein viel leistungsfähigerer
Angriff und führt
eine raffiniertere Interpretation der erfassten Informationen durch
und ist demzufolge schwieriger zu verhindern. Während SPA-Angriffe vorwiegend
eine visuelle Inspektion benutzen, um relevante Leistungsschwankungen
zu identifizieren, benutzen DPA-Angriffe Techniken der statistischen
Analyse und der Fehlerkorrektur, um Informationen herauszuholen,
die mit geheimen Schlüsseln
korrelieren.
-
Die
Durchführung
eines DPA-Angriffes umfasst zwei Phasen: Datenerfassung und Datenanalyse.
Die Datenerfassung für
DPA kann wie oben beschrieben ausgeführt werden, indem die Leistungsaufnahme
einer Einheit während
kryptographischer Operationen als eine Zeitfunktion abgetastet wird. Für die DPA
werden eine Anzahl von kryptographischen Operationen, die den Zielschlüssel benutzen, beobachtet.
-
Jetzt
wird unter Bezugnahme auf 4 ausführlicher
beschrieben, wie ein geheimer Schlüssel insgesamt aus der oben
beschriebenen Messung von preisgegebener Information gewonnen werden kann.
Entsprechend der in 4 dargestellten Verfahren wird
vorausgesetzt, dass eine große
Anzahl von 4-Bit-Abtastdaten 30 in eine sogenannte S-BOX 31 eingegeben
wird, die die zugrundeliegende Verschlüsselung der Eingangsdaten 30 ausführt. Es
wird weiter vorausgesetzt, dass eine Anzahl von 2000 Abtastdaten 30 und
ein geheimer Schlüssel
mit einer Länge
von 6 Bit benutzt wird, was somit zu 64 Unterschlüsseln 32 führt. Diese 2000 Abtastdaten 30 werden
in die zugrundeliegende kryptographische Einheit 1, d.h.
eine Chipkarte, eingegeben, und die 2000 entstehenden Leistungsverbrauchsspuren 20, 21 werden überlagert,
um die Rauschsignale zu verringern, die durch den zugrundeliegenden
Signalerkennungsmechanismus verursacht werden. Da für die Eingabedaten
Permutationen der 4-Bit-Signale benutzt werden, ist die entstehende
statistische Kurve normalerweise eine Kurve wie die in 4 dargestellte,
d.h. eine nichtcharakteristische Kurve 33 mit nur statistischem
Rauschen innerhalb eines Bandes. Die im oberen Teil der beiden Spuren
in 4 dargestellte Spur 34 zeigt das vorher
beschriebene Signal, und die untere Spur 35 zeigt das entsprechende
invertierte Signal. Unter normalen Bedingungen sollte eine Überlagerung
der beiden Spuren eine Kurve zeigen wie die, die unter den oben erwähnten zwei
Spuren dargestellt ist, d.h. eine Spur 36 mit einem sehr schmalen
Bandrauschen.
-
Es
wird wiederum betont, dass es gegenwärtig keine kommerziell verfügbaren Produkte
gibt, die einer DPA widerstehen.
-
EP 0 981 223 A2 offenbart
eine Verschlüsselungsvorrichtung.
Informationselemente werden von einem kryptographischen Prozess
(„first
round" bis „sixteenth
round") verarbeitet,
der ein extern feststellbares Signal verursacht. Vor der Durchführung des kryptographischen
Prozesses mittels S-Box S1 bis S8 werden die Informationen durch
Anwendung einer N:N Operation (initial Permutation) transformiert.
Der kryptographische Prozess wird in den Boxen mit den transformierten
Informationen ausgeführt
und die kryptographisch verarbeiteten Informationen werden durch
Anwendung einer inversen N:N Operation (final Permutation) rücktransformiert.
-
AUFGABE DER
ERFINDUNG
-
Es
ist Aufgabe der vorliegenden Erfindung ein verbessertes Verfahren
und Einheit zur sicheren Informationsbehandlung in einem kryptographischen Informationsverarbeitungssystem
bereit zu stellen.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Um
diese obigen Aufgaben zu erlösen,
stellt die Erfindung ein Verfahren zur sicheren Informationsbehandlung
in einem solchen kryptographischen Informationsverarbeitungssystem
bereit, wobei die Informationen Informationseinheiten mit N Informationselementen
umfassen und von wenigstens einem kryptographischen Prozess verarbeitet
werden, der wenigstens ein extern feststellbares Signal verursacht, die
Transformation der Informationen vor der Durchführung des kryptographischen
Prozesses durch Anwendung einer N:N Maskierungsoperation auf die
Elements der Informationen mit mindestens einem Datenstrom aus Maskierungselementen,
wobei jedes Element der Information genau einem Element der transformierten
Information entspricht; die Ausführung
des kryptographischen Prozesses mit den transformierten Informationen
und die Ausführung
des kryptographischen Prozesses mit mindestens einem Datenstrom
von Maskierungselementen, so dass jedem Element des N:N transformierten
Datenstroms zu mindestens ein Element des Datenstroms der Maskierungselemente
entspricht; die Rücktransformation
der transformierten und kryptographisch verarbeiteten Informationen
durch die N:N Verknüpfung
des maskierten Datenstroms und mindestens einem Datenstrom der Maskierungselemente
so, dass das Ergebnis dieser Verknüpfung dem Ergebnis der kryptographischen
Operation auf die unmaskierten Daten entspricht.
-
Das
zugrundeliegende Konzept der Erfindung besteht darin zu vermeiden,
dass Daten auf den Bussen der zugrundeliegenden Verarbeitungseinheit in
einem klaren Format erscheinen, sondern immer mit einem unbekannten
Faktor geweißt
(whitened) sind. Die Weißfunktion
(whitening function) ist in ihrem breitesten Sinn eine N:N-Operation
(Matrixoperation), in der jedes Element der nichttransformierten Informationen
zu genau einem Element der transformierten Informationen in Beziehung
steht. Es wird hierdurch garantiert, dass im Falle eines rein linearen kryptographischen
Prozesses mit den transformierten Informationen eine Rücktransformation
der transformierten und kryptographisch verarbeiteten Informationen
durch eine inverse N:N-Operation die ursprüngliche, aber kryptographisch
verarbeiteten Informationen ergibt.
-
Die
vorgeschlagene N:N-Operation benutzt einen Operator, z. B. eine
N × M – Matrix,
der entsprechend einer bevorzugten Ausführungsform der Erfindung durch
den kryptographischen Prozess als eine zweite Datenmenge verarbeitet
werden kann, was somit insgesamt zwei Datenmengen ergibt, wobei
die erste Datenmenge die transformierten Informationen selbst und
die zweite Datenmenge den jeweiligen Operator für die N:N-Operation darstellt.
-
Als
eine weitere Ausführungsform
der Erfindung wird die N:N-Operation
durch eine XOR-Operation (Exklusiv-Oder) mit einem Maskenwert dargestellt,
wobei der Vorteil der Benutzung einer solchen XOR-Operation darin
besteht, dass eine andere XOR-Operation
mit dem gleichen Maskenwert die nicht transformierten Informationen
wieder zurückgewinnt.
-
In
einer alternativen Ausführungsform
wird die N:N-Operation durch einen beliebigen Maskierungswert ausgeführt, wobei
die inverse mathematische Operation die nicht transformierten Informationen
entsprechend zurückspeichert.
Die vorher erwähnten
Maskierungswerte können
vorteilhafterweise durch eine ZUFALLSoperation (RANDOM operation)
realisiert werden, wodurch ein zufälliger Maskierungswert gezeigt
wird und dementsprechend eine sicherere und nicht vorhersehbare
Transformation der verarbeiteten Informationen entsprechend der Erfindung.
Da der Maskierungswert, der zu oder von einem Speicher übertragen
wird, nicht der reale Wert ist, kann ein Angreifer das Strommuster,
das diese Übertragungsoperation
hervorruft, nicht analysieren. Während
des Programmlaufes können
mehrere solche Zufallswerte zur Maskierung der Daten erhalten werden.
Die Vielfachheit der Maskierungswerte kann sich entweder auf getrennte
Ausführungen
eines Algorithmus oder auf gewisse Teile der gleichen Ausführung beziehen.
-
Entsprechend
einer weiteren Ausführungsform
der Erfindung ist die N:N-Operation eine per Zufall erzeugte N:N-Beziehung,
bei der jedes der N Elemente der Informationen einem entsprechenden
Element der transformierten Information zugeordnet ist, wobei diese
Beziehung zwischen diesen Elementen zufällig hergestellt wird. Hierdurch
wird eine Menge von N zufälligen
Werten zwischen 1 und N für
die Transformation ausgewählt,
bevor der kryptographische Algorithmus ausgeführt und auf die Daten angewendet
wird, die geschützt
werden müssen.
Die neue Menge maskierender werte wird jedes Mal abgeleitet, bevor
der Algorithmus ausgeführt
wird.
-
Entsprechend
einer anderen Ausführungsform
der Erfindung ist die N:N-Operation eine, die transformierte Informationen
ergibt, deren Hamming-Gewicht, d.h. die Anzahl der Bits, die "1" sind, immer konstant ist. Dies bringt
mit sich, dass nur ein Teil einer Speichereinheit, normalerweise
ein Byte in kleinen Prozessoren wie denen auf Chipkarten, für tatsächliche
Daten verwendet werden kann. Der andere Teil wird benutzt, um die
Anzahl der Bits auszugleichen, die "ON" sind.
-
Um
die Sicherheit der vorgeschlagenen Einheit und des vorgeschlagenen
Systems zur Informationsbehandlung in einem zugrundeliegenden kryptographischen
informationsverarbeitenden System oder einer Einheit weiter zu verbessern,
können
für die
Transformation der Informationen, die verarbeitet werden sollen,
zwei oder mehr Maskierungswerte benutzt werden, um die Informationen
zu maskieren oder zu weißen
und dementsprechend wenigstens zwei Datenmengen zu benutzen, die
durch den kryptographischen Prozess verarbeitet werden. Hierbei bezieht
sich entsprechend einer weiteren vorteilhaften Ausführungsform
der Erfindung die N:N-Operation nur auf gewisse Informationselemente,
was ein anderes Niveau der Maskierungsinformationen entsprechend
der Erfindung ergibt. Entsprechend einem weiteren Niveau, die Informationen
zu weißen,
kann die Zuweisung der N:N-Operation an gewisse Elemente zwischen
aufeinanderfolgenden kryptographischen Prozessen variieren.
-
Das
Niveau des weißens
der Informationen kann weiter verstärkt werden durch Anwendung
einer N:N-Operation nur während
eines gewissen zeitlichen Rahmens der Realisierung des kryptographischen
Prozesses und durch Ersetzen einer Operation durch eine andere N:N-Operation
nach jedem dieser zeitlichen Rahmen. Alternativ kann mehr als eine N:N-Operation
vorgesehen werden, wobei jede auf gewisse Elemente der gesamten
Informationen angewendet wird und alle Operationen zusammen auf die
gesamten Informationen angewendet werden. Hierdurch kann auch eine
Zeitabhängigkeit
wie oben angewendet werden, wenn eine oder mehrere N:N-Operationen
in einem gewissen Zeitintervall während der Realisierung des
kryptographischen Prozesses durch eine andere Operation ersetzt
werden.
-
Im
Falle vorhandener nichtlinearer Teile des zugrundeliegenden kryptographischen
Algorithmus würde
die Anwendung einer N:N-Operation
auf die Informationselemente nicht garantieren, dass die transformierten
und kryptographisch verarbeiteten Informationen durch Anwendung
einer inversen N:N-Operation auf die transformierten und kryptographisch
verarbeiteten Informationen rücktransformiert werden
können.
Deshalb wird entsprechend einer weiteren Ausführungsform die N:N-Operation
nur auf lineare Teile des zugrundeliegenden kryptographischen Algorithmus
angewendet, und nichtlineare Teile werden entweder unter Verwendung
eines konstanten Wertes als Maskierungswert transformiert, oder
die Elemente der Informationen, die zum nichtlinearen Teil des Algorithmus
gehören,
werden nicht transformiert.
-
Schließlich kann,
entsprechend einer weiteren Ausführungsform
der Erfindung, die Transformation der Informationen bereits mit
der Eingabe der Informationen in das zugrundeliegende Informationsverarbeitungssystem
oder die -einheit geschehen, wodurch vorteilhaft vermieden wird,
dass die Transformationsoperation (N:N-Operation) mit dem Beginn eines
kryptographischen Prozesses ausgelöst wird, weil eine derartige
Auslösung
eine gewisse Zeit vor dem Start des kryptographischen Prozesses
gestartet werden müsste,
angesichts der entsprechenden Zeit, die für die Transformationsoperation
selbst erforderlich ist. Als Ergebnis dessen erscheint nur transformierte
Information auf dem Bus (den Bussen), in der Verarbeitungseinheit
und im Speicher des informationsverarbeitenden Systems oder der Einheit.
Die anschließende
ausschließliche
Verwendung von transformierten Informationen ergibt eine maximale
Sicherheit gegen jede Art von Angriff.
-
Die
Erfindung kann auf alle Arten von Informationsverarbeitungs-Hard- und -Software
angewendet und selbst als Teil des gesamten Verarbeitungssystems
oder der Gerätehardware
ausgeführt werden.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Weitere
Vorteile, Merkmale und Einzelheiten der vorliegenden Erfindung werden
während
des folgenden Teils der Beschreibung offensichtlich, in dem eine
bevorzugte Ausführungsform
der Erfindung ausführlicher
beschrieben wird, unter Bezugnahme auf die beigefügten Zeichnungen.
-
Bei
den Zeichnungen ist
-
1a eine
schematische Darstellung einer üblichen
kryptographischen Einheit, die dem Stand der Technik entspricht
und die einen geheimen Schlüssel
benutzt, um Eingangsinformationen zu verarbeiten bzw. Ausgangsinformationen
zu erzeugen;
-
1b ist
eine schematische Darstellung einer bekannten kryptographischen
Einheit wie in 1a, die bestimmte exemplarische
preisgegebene Informationen zeigt, die potentiell von einem Angreifer
erfasst werden können;
-
2 zeigt
einen typischen MOS-Transistor in einem integrierten Schaltkreis,
der üblicherweise
in dem Stand der Technik entsprechenden Informationsverarbeitungssytemen
und eine -einheit verwendet wird;
-
3 zeigt
zwei exemplarische Leistungsverbrauchskurven entsprechend dem Stand
der Technik;
-
4 zeigt
eine schematische Darstellung eines bekannten Verfahrens zum Angriff
auf eine kryptographische Einheit zusammen mit exemplarischen Leistungsverbrauchskurven,
die von der Einheit erhalten wurden;
-
5 zeigt
ein Blockschaltbild, das ein bevorzugtes Verfahren entsprechend
der Erfindung darstellt; und
-
6 zeigt
eine exemplarische Ausführungsform
der N:N-Operation
entsprechend der Erfindung.
-
WEITERE BESCHREIBUNG
DER ERFINDUNG
-
1 bis 4, die den
Stand der Technik in dem vorliegenden technischen Bereich veranschaulichen,
wurden bereits im einleitenden Teil der Beschreibung erörtert.
-
Wir
beziehen uns jetzt auf 5, wo eine bevorzugte Ausführungsform
der Erfindung gezeigt wird. In dieser Ausführungsform wird eine Datenmenge 40 (Informationen)
transformiert, indem eine XOR-Operation durch eine XOR-Einheit 41 mit
einem Operanden b 42 auf die Datenmenge 40 angewendet
wird.
-
Die
transformierte Datenmenge 43 wird dann zu einer Datenverschlüsselungseinheit 44 geschickt, z.
B. ein Programm-Modul,
das nach dem DES-Standard arbeitet. In entsprechender Weise wird
der Operand b 42 zu einer weiteren DES-Einheit 46 übertragen 45 und
verschlüsselt.
Es wird betont, dass die Benutzung von zwei DES-Einheiten 44, 46 nur
exemplarisch ist und dass sowohl die transformierte Datenmenge 43 als
auch der Operand b 42 zu nur einer DES-Einheit 44 übertragen
werden können.
Alternativ hierzu können
anstelle der Verschlüsselung/Entschlüsselung
von Daten auch andere kryptographische Prozesse wie eine digitale
Unterschrift (signature) und die entsprechende Signaturüberprüfung auf die
zugrundeliegenden Informationen entsprechend dem Bereich der Erfindung
angewendet werden. Beides, die transformierte und verschlüsselte Datenmenge 47 und
der verschlüsselte
Operand b 48, werden in eine Rücktransformationseinheit 49 eingegeben,
wobei die XOR-Operation zum zweiten Mal ausgeführt wird, was eine nichttransformierte
verschlüsselte
Datenmenge 50 ergibt. Für
die Einzelheiten der XOR-Operation wird auf das allgemeine Wissen
eines Fachmannes Bezug genommen.
-
Um
die Sicherheit gegen Angreifer entsprechend der Erfindung weiter
zu verstärken,
umfasst eine weitere Ausführungsform
wenigstens einen zweiten Operanden c 51, durch den die
Eingabedatenmenge 40 ein zweites Mal transformiert wird.
In dem vorliegenden Beispiel wird der Operand c 51 auch
durch die XOR-Einheit 41 benutzt,
was somit eine zweite transformierte Datenmenge 52 ergibt. Um
die Eingabedatenmenge 40 in die zwei Datenmengen 45, 52 aufzuteilen,
enthält
die XOR-Einheit 41 ein entsprechendes (nicht dargestelltes)
Aufteilungsmodul. Alternativ dazu kann der zweite Transformationspfad
unter Verwendung einer weiteren N:N-Operation realisiert werden,
was demzufolge eine zweite Transformationseinheit (nicht dargestellt) und
eine zweite Rücktransformationseinheit
(nicht dargestellt), aber nicht die obige Aufteilungsfunktionalität erfordert.
Die zweite transformierte Datenmenge 52 und der zweite
Operand c 53 werden in weitere DES-Einheiten 54, 55 eingegeben.
Die verschlüsselte
Datenmenge 56 und der verschlüsselte Operand c 57 werden
entsprechend zur Rücktransformationseinheit 49 rückgekoppelt,
was somit die verschlüsselte
Datenmenge 50 ergibt.
-
Es
sollte betont werden, dass die XOR-Operation nur eine exemplarische
Operation für
die Transformation der Informationen ist und durch eine andere N:N-Operation
ersetzt werden kann, die eine eindeutige N:N-Beziehung zwischen
den Elementen der Informationen und den Elementen der transformierten
Informationen umfasst, beispielsweise eine ZUFALLS-Operation, die
in 6 dargestellt ist, oder eine Hamming-Gewichtungsoperation,
die nach dem entsprechenden Stand der Technik wohlbekannt ist. In
diesen Fällen
wird der Operand b durch eine Operationsmatrix ersetzt, wie sie
in 6 dargestellt ist. In einer weiteren Ausführungsform
können
mehr als zwei Pfade vorgesehen werden, um die Datensicherheit des
vorgeschlagenen Mechanismus weiter zu erhöhen.
-
Wir
nehmen jetzt auf 6 Bezug, wo ein Beispiel der
vorgeschlagenen N:N-Operation dargestellt ist, und zwar für eine ZUFALLS-Operation.
Es wird eine ZUFALLS-N:N-Beziehung 60 zwischen einer ersten
Datenmenge 61 und einer zweiten Datenmenge 62 dargestellt,
wobei jede der Datenmengen 61, 62 exemplarisch
N = 8 Elemente enthält.
Die entsprechende Transformation kann durch eine N x M-Matrix 'OP' 63 mit
M = 2 dargestellt werden, wobei die Anwendung der Operation mit
der inversen Matrix 'OP-1' 64 auf
die bereits transformierte Datenmenge 62, was die Rücktransformation der
transformierten Datenmenge 62 bedeutet, die ursprüngliche
Datenmenge 61 ergibt.