Die Erfindung hat ein Verfahren zur gesicherten Datenübertragung
in einer programmierbaren Schaltung zum Gegenstand. Insbesondere zielt die Erfindung
darauf ab, die in einem Speicher enthaltenen Daten während ihrer Übertragung
in einen anderen Speicher vor einer eventuellen Einsicht zu schützen. Die Erfindung
betrifft insbesondere jede programmierbare Schaltung, welche geheime Daten verwendet.
Geheime Daten sind beispielsweise persönliche Daten, welche den
Inhaber der programmierbaren Schaltung identifizieren, Programmanweisungen oder
auch Algorithmenschlüssel zur Verschlüsselung von Daten. Die geheimen
Daten werden sehr häufig in Festspeichern der programmierbaren Schaltung bei
deren Herstellung gespeichert. Bekannte Mittel werden eingesetzt, um den Inhalt
von Festspeichern vor einer visuellen Einsicht zu schützen. Beispielhaft können
die Daten in dem Speicher gestreut werden. Wenn sie allerdings verwendet werden,
bewegen sich die geheimen Daten klar und deutlich auf einem Datenbus, der leicht
ausspioniert werden kann.
Eine klassische Spionagetechnik besteht darin den Strom zu messen,
der in dem Bus fließt; er ist in der Tat repräsentativ für die Daten,
die in dem Bus laufen. Es reicht somit aus K Strommessungen während K Übertragungen
der gleichen Daten durchzuführen und den Mittelwert dieser K Messungen zu nehmen,
um das Rauschen der Messung zu eliminieren und den exakten Wert der Daten zu erhalten.
Als Hinweis ist es notwendig ungefähr K = 1000 Messungen durchzuführen,
um das Rauschen zu eliminieren und den exakten Wert der Daten zu erhalten, die auf
dem Bus laufen. Diese Spionagetechnik ist unter dem angelsächsischen Begriff
„Simple Power Analysis" bekannt.
Um außerdem die Herstellungskosten der Produkte zu verringern,
sind die geheimen Daten oft teilweise die gleichen für eine gegebene Familie
von programmierbaren Schaltungen. Wenn es somit einem Spion gelingt, die in einem
Produkt gespeicherten geheimen Daten zu lesen, kann er sie für eine ganze Produktfamilie
verwenden.
Ein Ziel der Erfindung besteht darin die Sicherheit von Daten in einer
programmierbaren Schaltung und zwar insbesondere während ihres Übergangs
auf den Datenbus zu verbessern. Zum Erreichen dieses Ziels, betrifft die Erfindung
ein Verfahren zur gesicherten Datenübertragung in einer programmierbaren Schaltung
mit einer Steuereinheit, einem Festspeicher mit zu übertragenden Daten, einem
beschreibbaren Speicher und einem zwischen dem Festspeicher und dem beschreibbaren
Speicher angeschlossenen Datenbus, wobei der Datenbus von der Steuereinheit gesteuert
ist, wobei das Übertragungsverfahren dadurch gekennzeichnet ist, dass zu übertragende
geheime Daten mit N Bytes Byte für Byte auf den Datenbus übertragen werden,
wobei jedes Byte ein einziges Mal auf den Datenbus läuft, und dass die Bytes
gemäß einem Übertragungsgesetz übertragen werden, welches zumindest
einen Parameter aufweist, der zufällig von der Steuereinheit vor jeder Übertragung
der geheimen Daten ausgewählt ist.
Das Verfahren der Erfindung besteht somit darin die geheimen Daten
in einer Reihenfolge auf den Bus zu übertragen, die zufällig von der den
Datenbus steuernden Steuereinheit vor jeder Übertragung der geheimen Daten
ausgewählt worden ist. So werden mit der Erfindung bei jeder Übertragung
derselben Daten die Worte der Daten in einer unterschiedlichen Reihenfolge übertragen.
Die derzeit eingesetzten Spionageverfahren reichen somit nicht mehr aus den exakten
Wert von geheimen Daten, die sich auf dem Datenbus bewegen, zu erhalten.
Gemäß einer bevorzugten Ausführungsform verwendet das
Verfahren der Erfindung ein Übertragungsgesetz, welches eine Vertauschung der
Elemente der Gesamtheit von N Bytes der zu übertragenden Geheimdaten ist. Vorzugsweise
ist die Permutation durch das Verhältnis
X = (X0 + SENS·PAS·j)modulo N
definiert, wobei ein erster Parameter PAS, der zwischen 0 und N – 1 liegt,
den Schritt der Permutation definiert, wobei ein zweiter Parameter SENS, der zwei
Werte 1 oder –1 annimmt, die Laufrichtung der Gesamtheit der N Bytes der
geheimen Daten definiert, wobei ein dritter Parameter X0, der zwischen 0 und N –
1 liegt, den Ausgangspunkt der Permutation definiert, und wobei eine laufende Zahl
X, die anhand des ersten bis dritten Parameters und einer Zykluszahl j erhalten
wird, die zwischen 0 und N – 1 variiert, das Gewicht eines Bytes der zu übertragenden
geheimen Daten anzeigt.
Hier und im nachfolgenden Teil ist festzuhalten, dass sich der Ausdruck
„Gewicht eines Bytes" auf den Rang oder auf die Zahl eines Bytes der geheimen
Daten bezieht. Mit anderen Worten, geheime Daten weisen N Bytes auf und jedes Byte
ist durch ein Gewicht zwischen 0 und N – 1 festgelegt, wobei das Byte 0 den
acht Bits mit dem leichtesten Gewicht entspricht und das Byte mit dem Gewicht N
– 1 den acht Bits mit dem schwersten Gewicht der geheimen Daten entspricht.
Vorzugsweise werden der erste und/oder der zweite und/oder der dritte
Parameter vor jeder Übertragung der geheimen Daten von der Steuereinheit zufällig
ausgewählt. Ebenefalls vorzugsweise weisen der erste Parameter
der Permutation und die Zahl N keinen gemeinsamen Teiler miteinander auf. Beispielsweise
ist die Zahl N eine ganze Primzahl und der erste Parameter der Permutation ist eine
Ganzzahl zwischen 1 und N – 1.
Gemäß der bevorzugten Ausführungsform weist das Verfahren
der Erfindung die folgenden Schritte auf:
E0: Initialisierung des Verfahrens und Wahl des ersten bis dritten Parameters, wobei
zumindest einer des ersten bis dritten Parameters zufällig von der Steuereinheit
gewählt wird, wobei der erste bis dritte Parameter in einem ersten Register
der Steuereinheit gespeichert werden.
E1: Initialisierung der Zykluszahl und der laufenden Zahl,
E2: N-malige Wiederholung der nachfolgenden Schritte:
ET1: Auslesen eines Bytes der zu übertragenden Daten aus dem Festspeicher,
wobei das Gewicht des ausgelesenen Bytes gleich der laufenden Zahl ist, und Speichern
des ausgelesenen Bytes in einem zweiten Register der Steuereinheit,
ET2: Schreiben des in dem zweiten Register enthaltenen Bytes in den Lebendspeicher,
ET3: Inkrementieren der Zykluszahl und Veränderung der laufenden Zahl.
Schließlich hat die Erfindung ebenfalls eine programmierbare
Schaltung zum Gegenstand mit einer Steuereinheit, einem Festspeicher mit zu übertragenden
Daten, einem beschreibbaren Speicher und einem zwischen dem Festspeicher und dem
beschreibbaren Speicher angeschlossenen Datenbus, wobei der Datenbus von der Steuereinheit
gesteuert ist, wobei die programmierbare Schaltung dadurch gekennzeichnet ist, dass
sie außerdem einen Zufallszahlengenerator aufweist, um zumindest einen Parameter
eines Datenübertragungsgesetzes zu liefern, welches eingesetzt wird, um geheime
Daten mit N Bytes von dem Festspeicher in den Lebendspeicher zu übertragen,
wobei die Bytes der zu übertragenden geheimen Daten Byte für Byte auf
den Datenbus übertragen werden, wobei jedes Byte ein einziges Mal auf den Datenbus
läuft, wobei zumindest ein Parameter bei jeder Übertragung der geheimen
Daten unterschiedlich ist.
Die Erfindung wird besser verstanden werden und weitere Eigenschaften
und Vorteile werden deutlich werden bei der Lektüre der nachfolgenden Beschreibung,
wobei sich die Beschreibung auf die beigefügte Zeichnung bezieht, in welcher:
ein Blockschema einer die Erfindung einsetzenden
programmierbaren Schaltung ist,
ein Diagramm eines Algorithmus zur Umsetzung
einer erfindungsgemäßen gesicherten Datenübertragung ist.
Die programmierbare Schaltung CP der
umfasst einen Festspeicher ROM, der geheime Daten mit N Bytes enthält, welche
auf den Adressen s0 bis sN-1 gespeichert sind, einen Lebendspeicher
RAM, eine Steuereinheit UC, einen Zufallszahlengenerator GA und einen Datenbus DBUS,
der alle Elemente miteinander verbindet.
Der Lebendspeicher RAM ist ein beschreibbarer oder wieder beschreibbarer
Speicher, beispielsweise der Art EPROM oder EEPROM. Der Zufallszahlengenerator GA
ist eine bekannte Schaltung, welche in Reaktion auf eine Anweisung CO von der Steuereinheit
UC zufällige Ganzzahlen zwischen 0 und einer Ganzzahl MAX, beispielsweise gleich
255, liefern kann. Die Steuereinheit UC empfängt in dem Festspeicher ROM enthaltene
Anweisungen und steuert unter anderem den Lebendspeicher RAM und den Zufallszahlengenerator
GA. Die Steuereinheit UC umfasst insbesondere zwei Register RA und RX mit jeweils
einem Byte.
Selbstverständlich umfasst die programmierbare Schaltung CP auch
andere Elemente, wie beispielsweise Daten- oder Anweisungsregister, arithmetische
und logische Rechenschaltungen, Zählwerke, Taktgeberschaltungen oder auch Eingangsports
und/oder Ausgangsports. Die programmierbare Schaltung kann ebenfalls mehrere Lebendspeicher,
mehrere Festspeicher und/oder mehrere Zufallszahlengeneratoren aufweisen. Außerdem
können alle Elemente der programmierbaren Schaltung CP eventuell mit einem
oder mehreren anderen Elementen mittels eines Steuerbusses, eines Datenbusses und/oder
eines Adressenbusses in Verbindung stehen. Allerdings sind aus Gründen der
Vereinfachung nur die Elemente der programmierbaren Schaltung CP in
dargestellt worden, die zum Verständnis der Erfindung unbedingt notwendig sind.
In einem Beispiel sind geheime Daten mit N Bytes Oct0 bis
OctN-1 unter den Adressen S0 bis sN-1 des Festspeichers
ROM der programmierbaren Schaltung CP gespeichert und sollen von dem Festspeicher
ROM in den Lebendspeicher RAM unter den Adressen d0 bis dN-1
übertragen werden, um später verwendet zu werden. In dem Beispiel ist
N gleich 4 gewählt.
Das Verfahren der Erfindung besteht darin die geheimen Daten Byte
für Byte zu übertragen, wobei die Gesamtheit der N Bytes bei jeder Übertragung
der geheimen Daten in einer unterschiedlichen Reihenfolge übertragen wird,
wobei jedes Byte der geheimen Daten ein und nur ein einziges Mal während einer
gleichen Datenübertragung übertragen wird. Hierzu verwendet das Verfahren
der Erfindung ein Übertragungsgesetz, welches einen oder mehrere Parameter
aufweist, die von der Steuereinheit vor jeder geheimen Datenübertragung auf
den Datenbus zufällig ausgewählt werden.
Das Übertragungsgesetz des Verfahrens definiert die Reihenfolge,
in welcher die Daten von dem Festspeicher ROM auf den Lebendspeicher RAM übertragen
werden, d.h. die Reihenfolge, in welcher die Bytes der geheimen Daten auf den Datenbus
übergehen.
Gemäß einer Ausführungsform verwendet das Verfahren
der Erfindung eine Permutation als Übertragungsgesetz, wobei ein oder die Parameter
der Permutation zufällig ausgewählt ist/sind. Das Verfahren der Erfindung
weist gemäß die folgenden Schritte
auf:
E0: Initialisierung des Verfahrens: Wahl der Parameter des Übertragungsgesetzes,
E1: Initialisierung einer Zykluszahl j = 0 und einer laufenden Zahl X = X0,
E2: N-malige Wiederholung der folgenden Schritte:
ET1: Auslesen des Bytes Octx mit dem Gewicht X der zu übertragenden
Daten, das sich unter der Adresse sx des Festspeichers ROM befindet,
und Speichern des ausgelesenen Bytes in dem Register RA der Steuereinheit UC,
ET2: Schreiben des in dem Register RA enthaltenen Bytes in den Lebendspeicher RAM
unter der Adresse dx,
ET3: Inkrementierung der Zykluszahl j (j = j + 1) und Veränderung der laufenden
Zahl X in Abhängigkeit von der Zykluszahl j.
Das Übertragungsgesetz des Verfahrens der Erfindung definiert
die Reihenfolge, in welcher die Bytes der geheimen Daten auf den Datenbus DBUS übergehen,
wobei diese Reihenfolge durch die Veränderungen der laufenden Zahl X in Abhängigkeit
von der Zykluszahl j definiert ist. Die laufende Zahl X kann auf verschiedene Arten
variieren, wobei das Wesentlich ist, dass die laufende Zahl X im Verlauf der Durchführung
der N Schritte E2 ein und ein einziges Mal die Gesamtheit der ganzen Werte zwischen
0 und N – 1 annimmt.
In allgemeiner Weise schlägt das Verfahren der Erfindung vor
Permutationen durchzuführen, die durch das folgende Übertragungsgesetz
gekennzeichnet sind:
X = (X0 + SENS·PAS·j)modulo N,
wobei X die laufende Zahl ist, welche das Gewicht des zu übertragenden Bytes
angibt, wobei j die Zykluszahl des Verfahrens ist, die zwischen 0 und N –
1 variiert, wobei PAS, X0 und SENS drei Parameter des Übertragungsgesetzes
sind. Die laufende Zahl X wird in dem Register RX der Steuereinheit UC gespeichert.
Der erste Parameter PAS, der zwischen 0 und N – 1 liegt, definiert
die Differenz, modulo N, zwischen den jeweiligen Gewichten von zwei nacheinander
übertragenen Bytes. Wenn beispielsweise die Bytes Oct0 und Oct3
der geheimen Daten mit den jeweiligen Gewichten 0 und 3 nacheinander auf den Datenbus
DBUS übertragen werden, ist der Schritt der Permutation PAS = 3 – 0
= 3.
Der zweite Parameter X0, der zwischen 0 und N – 1 liegt, definiert
das Gewicht des ersten während der Umsetzung des Verfahrens übertragenen
Bytes.
Der dritte Parameter SENS nimmt zwei Werte 1 oder –1 an, welche
angeben, in welcher Richtung das Verfahren die Gesamtheit der Bytes der zu übertragenden
Daten durchläuft.
Die Wahl der Parameter der Permutation ist wichtig. In der Tat muss
die laufende Zahl X im Verlauf der Durchführung des Schrittes E2 des Verfahrens
alle ganzen Werte zwischen 0 und N – 1 annehmen, wenn die Zykluszahl j von
0 bis N – 1 variiert.
In einer ersten Ausführungsform der Erfindung wird der Parameter
PAS zufällig gewählt und die Parameter X0 und SENS sind konstant und in
dem Festspeicher ROM der programmierbaren Schaltung gespeichert. Bei dieser Ausführungsform
liefert der Zufallszahlengenerator GA während des Initialisierungsschrittes
des Verfahrens E0 eine Zufallszahl an die Steuereinheit UC, wenn ein Steuersignal
CO empfangen wird. Wenn die Zufallszahl eventuell größer N – 1
ist, reduziert die Steuereinheit UC sie um modulo N, um einen Parameter PAS zwischen
0 und N – 1 zu erhalten. Schließlich liest die Steuereinheit UC aus
dem Festspeicher die Werte des Ausgangspunktes X0 und der Richtung der Permutation
SENS aus.
Für beispielsweise die Übertragung von Daten mit N = 4 Bytes,
wenn der Generator GA eine Zahl PAS = 1 liefert, und wenn X0 = 2 und SENS = 1 ist,
schreibt sich das Übertragungsgesetz „X = (2 + j) modulo 4" und die
Bytes der Daten werden in der folgenden Reihenfolge übertragen: zuerst Oct2,
dann Oct3, dann Oct0, dann Oct1.
In einem anderen Beispiel, wenn PAS = 3 ist (mit X0 = 2 und SENS =
1), schreibt sich das Übertragungsgesetz „X = (2 + 3·j) modulo
4" und die Bytes der Daten werden in der folgenden Reihenfolge übertragen:
zuerst Oct2, dann Oct1, dann Oct0, dann Oct3.
Der Parameter PAS und die Zahl N der zu übertragenden Bytes müssen
so gewählt werden, dass sie keinen gemeinsamen Teiler miteinander aufweisen,
um die Übertragung aller Bytes der Daten zu erreichen. Hierzu ist die Zahl
N vorzugsweise eine Primzahl. Im gegenteiligen Fall ist es möglich
die Bytes mit schwerem Gewicht der Daten durch „0" zu ergänzen, um eine
Primzahl N von zu übertragenden Bytes zu erhalten. Wenn die Zahl N keine Primzahl
ist, ist es allerdings auch möglich eine Steuereinheit einzusetzen, welche
Mittel aufweist zum Überprüfen, ob die von dem Generator GA gelieferte
Zahl PAS und die Zahl N keinen gemeinsamen Teiler miteinander aufweisen, und Mittel,
um eventuell eine neue Zufallszahl PAS von dem Generator GA abzufragen.
Bei dieser ersten Ausführungsform des Verfahrens der Erfindung
kann die zufällig gewählte und eventuell, falls erforderlich, um modulo
N reduzierte Zahl PAS maximal N verschiedene Werte von 0 bis N – 1 annehmen,
so dass die Gesamtheit der Bytes der geheimen Daten in N unterschiedlichen Reihenfolgen
übertragen werden kann.
Bei einer zweiten Ausführungsform der Erfindung wird der Ausgangspunkt
X0 zufällig gewählt und die Parameter PAS und SENS sind konstant und in
dem Festspeicher ROM der programmierbaren Schaltung CP gespeichert. Bei dieser Ausführungsform
liefert der Zufallszahlengenerator GA während des Initialisierungsschrittes
des Verfahrens E0 irgendeine Zahl an die Steuereinheit UC, wenn ein Steuersignal
CO empfangen wird. Wenn die gelieferte Zufallszahl eventuell größer N
– 1 ist, reduziert die Steuereinheit UC sie um modulo N, um einen Ausgangspunkt
X0 zwischen 0 und N – 1 zu erhalten. Schließlich liest die Steuereinheit
UC aus dem Festspeicher ROM die Werte der Parameter PAS und SENS aus.
Für beispielsweise die Übertragung von Daten mit N = 4 Bytes,
wenn der Generator GA einen Ausgangspunkt X0 = 2 liefert, und wenn PAS = 1 und SENS
= 1 ist, schreibt sich das Übertragungsgesetz „X = (2 – j) modulo
4" und die Bytes der Daten werden in der folgenden Reihenfolge übertragen:
zuerst Oct2, dann Oct1, dann Oct0, dann Oct3.
In einem anderen Beispiel, wenn X0 = 3 ist (mit PAS = 1 und SENS = 1), werden die
Bytes der Daten in der folgenden Reihenfolge übertragen: zuerst Oct3,
dann Oct2, dann Oct1, dann Oct0.
Bei dieser zweiten Ausführungsform kann der zufällig gewählte
und eventuell, falls erforderlich, um modulo N reduzierte Ausgangspunkt X0 maximal
N verschiedene Werte zwischen 0 und N – 1 annehmen. So kann die Gesamtheit
der Bytes während jeder Datenübertragung in N unterschiedlichen Reihenfolgen
übertragen werden.
Bei einer dritten Ausführungsform der Erfindung wird die Richtung
der Permutation SENS zufällig gewählt und die Parameter PAS und X0 sind
konstant und in dem Festspeicher ROM der programmierbaren Schaltung CP gespeichert.
Bei dieser Ausführungsform liefert der Zufallszahlengenerator GA während
des Initialisierungsschrittes des Verfahrens E0 eine Zufallszahl an die Steuereinheit
UC, wenn ein Steuersignal CO empfangen wird. Wenn die gelieferte Zufallszahl eventuell
größer 1 ist, reduziert die Steuereinheit UC sie um modulo 2, um eine
Zufallszahl gleich 0 oder 1 zu erhalten. Dann wenn die Zufallszahl gleich „0"
ist, wählt die Steuereinheit SENS = –1 und umgekehrt, wenn die Zufallszahl
gleich 1 ist, wählt die Steuereinheit SENS = 1. Im Verlauf des Schrittes E0
liest die Steuereinheit UC dann aus dem Festspeicher ROM die Werte der Parameter
PAS und des Ausgangspunktes der Permutation X0 aus.
Für beispielsweise die Übertragung von Daten mit N = 4 Bytes,
wenn der Generator GA eine Permutationsrichtung SENS = 1 liefert, und wenn PAS =
1 und X0 = 0 ist, werden die Bytes der Daten in der folgenden Reihenfolge übertragen:
zuerst Oct0, dann Oct1, dann Oct2, dann Oct3.
In einem anderen Beispiel, wenn SENS = –1 ist (mit PAS = 1 und X0 = 0), werden
die Bytes der Daten in der folgenden Reihenfolge übertragen: zuerst Oct0,
dann Oct3, dann Oct2, dann Oct1.
Bei dieser dritten Ausführungsform kann die zufällig gewählte
und eventuell, falls erforderlich, um modulo 2 reduzierte Zahl SENS maximal 2 verschiedene
Werte 0 und 1 annehmen. Diese dritte Ausführungsform ist somit weniger leistungsfähig
in dem Sinne, dass die Anzahl der verschiedenen Kombinationen der Gesamtheit der
Bytes der zu übertragenden Daten auf 2 begrenzt ist: die Daten können
somit ziemlich leicht gefunden werden.
Es ist ebenfalls möglich die erste und/oder zweite und/oder dritte
Ausführungsform der Erfindung zu kombinieren, um ein sichereres Übertragungsverfahren
zu erhalten. Beispielsweise werden in einer vierten Ausführungsform der Erfindung
die drei Parameter des Permutationsgesetzes PAS, X0 und SENS zufällig gewählt.
Bei dieser Ausführungsform liefert der Zufallszahlengenerator
GA während des Initialisierungsschrittes des Verfahrens E0 zuerst eine erste
Zufallszahl an die Steuereinheit UC, wenn ein erstes Steuersignal CO1
empfangen wird. Wenn die erste Zufallszahl eventuell größer N –
1 ist, reduziert die Steuereinheit UC sie um modulo N, um einen Parameter PAS zwischen
0 und N – 1 zu erhalten.
Der Generator GA liefert dann eine zweite Zufallszahl an die Steuereinheit,
wenn ein zweites Steuersignal CO2 empfangen wird. Wenn die zweite Zufallszahl
eventuell größer N – 1 ist, reduziert die Steuereinheit UC sie
um modulo N, um einen Ausgangspunkt X0 zwischen 0 und N – 1 zu erhalten.
Dann wenn ein drittes Steuersignal CO3 empfangen wird,
liefert der Generator GA eine dritte Zufallszahl, die eventuell von der Steuereinheit
um modulo 2 reduziert wird, wenn sie größer als 1 ist. Dann wählt
die Steuereinheit SENS = –1, wenn die dritte Zufallszahl gleich 0 ist, und
SENS = 1, wenn die dritte Zufallszahl gleich 1 ist. Selbstverständlich ist
die Reihenfolge des Empfangs der Signale CO1, CO2 und CO3
ohne Bedeutung.
Diese vierte Ausführungsform ist besonders interessant. Da in
der Tat alle Parameter der Permutation PAS, X0 und SENS zufällig gewählt
werden, gibt es p·N·2 mögliche Kombinationen der Bytes der gleichen
Daten, wobei p die Anzahl der möglichen Werte für den Parameter PAS ist,
wobei bekannt ist, dass PAS und N miteinander keinen gemeinsamen Teiler aufweisen
dürfen. Wenn außerdem die Zahl N eine Primzahl ist, gibt es eine maximale
Anzahl 2·N·N von möglichen Kombinationen der Bytes der gleichen Daten,
und es ist somit schwieriger den richtigen Wert der übertragenen Daten zu finden.
Selbstverständlich ist auch jede andere Kombination der ersten,
zweiten und dritten Ausführungsform der Erfindung möglich. Beispielsweise
ist es möglich den Parameter PAS und den Ausgangspunkt X0 zufällig zu
wählen und den Wert von SENS auf 1 oder –1 festzulegen.
Ein Vorteil der Erfindung liegt darin, die Spionagetechnik der Stromanalyse
außer Kraft zu setzen. Wenn in der Tat K Strommessungen während K Übertragungen
der gleichen Daten auf den Bus DBUS durchgeführt werden und wenn ein Mittelwert
dieser K Messungen genommen wird, um das Rauschen der Messung zu eliminieren, besteht
das erhaltene Ergebnis aus Daten mit 8·N identischen Bits gleich dem Mittelwert
der 8·N Bits der realen Daten.
Ein weiterer Vorteil der Erfindung liegt darin ein Datenübertragungsverfahren
vorzuschlagen, das parallel zu weiteren Datenschutzverfahren eingesetzt werden kann,
ohne die Funktionsweise dieser letzteren zu beeinträchtigen. Beispielsweise
sind in der oben gegebenen Beschreibung die Adressen so bis sN-1 und
d0 bis dN-1 als aufeinander folgend angenommen worden. Es
wäre jedoch auch genauso gut möglich Daten, deren Bytes in dem Festspeicher
ROM gestreut sind, zu übertragen.