DE19936918A1 - Verschlüsselungsverfahren zum Ausführen von kryptographischen Operationen - Google Patents
Verschlüsselungsverfahren zum Ausführen von kryptographischen OperationenInfo
- Publication number
- DE19936918A1 DE19936918A1 DE19936918A DE19936918A DE19936918A1 DE 19936918 A1 DE19936918 A1 DE 19936918A1 DE 19936918 A DE19936918 A DE 19936918A DE 19936918 A DE19936918 A DE 19936918A DE 19936918 A1 DE19936918 A1 DE 19936918A1
- Authority
- DE
- Germany
- Prior art keywords
- bit
- data
- sub
- control signal
- inverter
- 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- 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/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/72—Indexing scheme relating to groups G06F7/72 - G06F7/729
- G06F2207/7219—Countermeasures against side channel or fault attacks
- G06F2207/7223—Randomisation as countermeasure against side channel attacks
- G06F2207/7233—Masking, e.g. (A**e)+r mod n
- G06F2207/7238—Operand masking, i.e. message blinding, e.g. (A+r)**e mod n; k.(P+R)
-
- 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/08—Randomization, e.g. dummy operations or using noise
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
Die vorliegende Erfindung betrifft ein Verschlüsselungsverfahren sowie eine Verschlüsselungsvorrichtung, wobei wenigstens eine kryptographische Teiloperation y¶i¶ = f¶i¶(x¶i¶, k¶i¶) von digital als Datenbitworte gespeicherten Daten x¶i¶, k¶i¶ ausgeführt und das jeweilige Ergebnis bzw. jeweilige Zwischenergebnisse y¶i¶ digital als Datenbitworte abgespeichert bzw. zwischengespeichert werden. Hierbei wird wenigstens eines der Daten x¶i¶, k¶i¶ und/oder das Ergebnis bzw. wenigstens ein Zwischenergebnis y¶i¶ in Abhängigkeit von einem auf Zufallszahlen basierenden Steuersignal r¶i¶ wahlweise bitweise zu DOLLAR I1 und/oder DOLLAR I2 komplementiert oder nicht.
Description
Die Erfindung betrifft ein Verschlüsselungsverfahren, wobei wenigstens
eine kryptographische Teiloperation yi = fi (xi, ki) von digital als Datenbit
worte gespeicherten Daten xi, ki ausgeführt und das jeweilige Ergebnis
bzw. jeweilige Zwischenergebnisse yi digital als Datenbitworte abgespei
chert bzw. zwischengespeichert werden, gemäß dem Oberbegriff des An
spruchs 1. Die Erfindung betrifft ferner eine Verschlüsselungsvorrichtung
mit einer Berechnungseinheit und Registern Ri, wobei die Berechnungs
einheit wenigstens eine kryptographische Teiloperation yi = fi (xi, ki) von di
gital in den Registern Ri der Verschlüsselungsvorrichtung als Datenbit
worte gespeicherten Operanden xi, ki ausführt und das jeweilige Ergebnis
bzw. Zwischenergebnisse yi digital in den Registern Ri der Verschlüsse
lungsvorrichtung als Datenbitworte abspeichert, bzw. zwischenspeichert,
gemäß dem Oberbegriff des Anspruchs 8.
In vielen Datenverarbeitungsgeräten dienen kryptographische Operatio
nen zum Schutz des Betriebes dieser Geräte bzw. zum Schutz von in dem
Gerät transportierten Daten. Die hierfür notwendigen Berechnungsopera
tionen werden dabei sowohl von Standard-Rechenwerken als auch von
dedizierten Crypto-Rechenwerken durchgeführt. Ein typisches Beispiel für
letzteres sind Chipkarten bzw. IC-Karten. Bei derartigen kryptographi
schen Berechnungen, wie in Fig. 1 veranschaulicht, ist es oftmals not
wendig, entsprechende Speicherbereiche bzw. Register des Datenverar
beitungsgerätes mit Operanden xi, ki zu initialisieren. Während der i-ten
Berechnung werden ggf Zwischenergebnisse yi in Speicherbereichen
oder Registern Ri abgelegt oder abschließend das Ergebnis der Berech
nung zur Weiterverarbeitung in Speicherbereichen oder Registern abge
legt. Das Register ri befindet sich zwischen einer vorherigen i-ten krypto
graphischen Berechnung und einer nachfolgenden (i+1)-ten kryptographi
schen Berechnung. Bei den in diesem Zusammenhang verwendeten Da
ten xi , ki bzw. Zwischenergebnissen yi handelt es sich üblicherweise um
sicherheitsrelevante Informationen, wie beispielsweise kryptographische
Schlüssel oder Operanden.
Zur Berechnung der kryptographischen Algorithmen werden in den Daten
verarbeitungsgeräten logische Verknüpfungen zwischen Operanden ki
bzw. Zwischenergebnissen yi bzw. xi , xi+1 durchgeführt. In Abhängigkeit
von der verwendeten Technologie führen diese Operationen, insbesonde
re das Laden der Speicherbereiche bzw. Register mit Daten, zu einem
erhöhten Stromverbrauch der Datenverarbeitungsgeräte. Bei komple
mentärer Logik, wie beispielsweise der CMOS-Technik, tritt ein erhöhter
Stromverbrauch dann auf, wenn der Wert einer Bit-Speicherzelle geändert
wird, d. h. sein Wert sich von "0" auf "1" bzw. von "1" auf "0" ändert. Der
erhöhte Verbrauch hängt dabei von der Anzahl der im Speicher bzw. Re
gister geänderten Bitstellen ab. Mit anderen Worten lässt das Laden eines
zuvor gelöschten Registers einen Stromverbrauch proportional zum
Hamminggewicht des Operanden (= Anzahl der Bits mit dem Wert "1")
bzw. der Differenz im Hamminggewicht ansteigen. Durch eine entspre
chende Analyse dieser Stromänderung könnte es möglich sein, Informa
tionen über die berechneten Operationen zu extrahieren, so dass eine
erfolgreiche Kryptoanalyse von geheimen Operanden, wie beispielsweise
kryptographischen Schlüsseln, möglich ist. Mittels Durchführung mehrerer
Strommessungen am Datenverarbeitungsgerät könnten beispielsweise bei
sehr kleinen Signaländerungen eine hinreichende Extraktion der Informa
tionen ermöglicht werden. Andererseits könnten mehrere Strommessun
gen eine ggf. erforderliche Differenzbildung ermöglichen. Diese Art der
Kryptoanalyse wird auch als "Differential Power Analysis" bezeichnet,
mittels derer ein Außenstehender durch reine Beobachtung von Änderun
gen des Stromverbrauches des Datenverarbeitungsgerätes eine ggf. un
berechtigte Kryptoanalyse der kryptographischen Operationen, Algorith
men, Operanden bzw. Daten erfolgreich ausführen kann.
Aus der US 5 297 201 ist es bekannt, einen Hochfrequenz abstrahlenden
Computer mit einer Einrichtung zu kombinieren, welche ebenfalls Hoch
frequenz ähnlich zu derjenigen des Computers abstrahlt. Dadurch ist es
für einen unberechtigten Dritten nicht mehr möglich, die Hochfrequenzab
strahlung des Computers zu dekodieren. Eine Kryptoanalyse durch einen
Dritten, der unmittelbar Zugang zum Computer hat, kann dieses System
jedoch nicht verhindern.
Um bei Chipkarten eine Korrelation zwischen einer Ausgabe eines Ergeb
nisses einer kryptographischen Operation bzw. einer Übertragung einer
Schlüsselinformation für eine kryptographischen Operation und der kryp
tographischen Operation selbst zu beseitigen ist es aus Patent Abstracts
of Japan 100 69 222 A bekannt, das Ergebnis der kryptographischen Ope
ration bzw. die Übertragung der Schlüsselinformation für die kryptographi
schen Operationen zeitlich zu verzögern. Jedoch ist auch dieses System
mittels der "Differential Power Analysis" analysierbar, da sich auch die
verzögerte Datenübertragung im Stromverbrauch des Datenverarbei
tungsgerätes verrät.
Es ist Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren
sowie eine verbesserte Vorrichtung der obengenannten Art zur Verfügung
zu stellen, welche die obengenannten Nachteile beseitigen und eine er
folgreiche Kryptoanalyse mittels Beobachtung eines Stromverbrauches
eines Datenverarbeitungsgerätes wirksam verhindert.
Diese Aufgabe wird durch ein Verfahren der o. g. Art mit den in Anspruch 1
gekennzeichneten Merkmalen gelöst.
Dazu ist es erfindungsgemäß vorgesehen, dass wenigstens eines der
Daten xi, ki und/oder das Ergebnis bzw. wenigstens ein Zwischenergebnis
yi in Abhängigkeit von einem auf Zufallszahlen basierenden Steuersignal ri
wahlweise bitweise zu y=f(x, k) und/oder, yi komplementiert wird oder nicht.
Dies hat den Vorteil, dass bei wiederholter Ausführung derselben krypto
graphischen Operation andere Bitfolgen bearbeitet bzw. abgespeichert
werden, so dass sich bei der jeweiligen Ausführung einer kryptographi
schen Operation bzw. mehrerer kryptographischer Operationen andere
Stromänderungen des Datenverarbeitungsgerätes ergeben. Unabhängig
vom eigentlichen Wert der Teilergebnisse wird somit bei wiederholter
Ausführung der Gesamtberechnung erreicht, dass jeder Datenpfad bei
einer echten Zufallszahlenreihe gleichhäufig bzw. bei einer Pseudozufalls
zahlenreihe nahezu gleichhäufig von "0" auf "0", von "0" auf "1", von "1"
auf "0" und von "1" auf "1" wechselt. Da jedoch das auf Zufallszahlen ba
sierende Steuersignal ri nicht bekannt bzw. vorbestimmt ist, fehlt eine Kor
relation zwischen den Stromänderungen und den Bitwerten der Daten und
Ergebnisse, so dass eine "Differential Power Analysis" nicht mehr zu einer
erfolgreichen Kryptoanalyse führt. Mit anderen Worten enthält der mittlere
Stromverbrauch der Gesamtoperation keine brauchbare Information über
die verwendeten Teiloperanden bzw. Zwischenergebnisse in den Teilope
rationen.
Vorzugsweise Weitergestaltungen der Vorrichtung sind in den Ansprüchen
2 bis 7 beschrieben.
Zweckmäßigerweise werden in den kryptographischen Teiloperationen
eine oder mehrere XOR-Verknüfungen (Exklusiv-Oder-Verknüfung) aus
geführt.
Die Daten umfassen beispielsweise kryptographische Schlüssel und/oder
Operanden.
In einer bevorzugten Ausführungsform werden Zwischenergebnisse yi
zwischen der Ausführung von aufeinander folgenden kryptographischen
Teiloperationen in einem Register Ri zwischengespeichert und als Ope
rand xi+1 der nachfolgenden kryptographischen Teiloperationen zugeführt.
Zum Herstellen eines originalen, nicht invertierten Wertes nach jeder Tei
loperation wird eine aus dem Zwischenergebnis yi einer vorangegangenen
Teiloperation i erhaltene Bitfolge xi+1 = yi für eine nachfolgende Teilopera
tion i+1 bitweise zu xi+1, komplementiert, wenn die Daten xi, ki der voran
gegangenen Teiloperation i bitweise komplementiert wurden.
In einer besonders bevorzugten Ausführungsform werden bei der bitwei
sen Komplementierung wenigstens ein Bitwert, insbesondere die geraden
Bitwerte, die ungeraden Bitwerte oder alle Bitwerte, eines Datenbitwortes
xi , ki, bzw. yi invertiert. Hierbei ist es besonders vorteilhaft, wenn eine In
vertierung von Bitwerten bzw. Bitadressen eines Datenbitwortes xi, ki, bzw.
yi bei der bitweisen Komplementierung mittels einer XOR-Operation (Ex
klusiv-Oder-Operation) durchgeführt wird.
Bei einer Vorrichtung der o. g. Art ist erfindungsgemäß wenigstens ein von
einem Steuersignal ri steuerbarer Inverter für wenigstens eines der Daten
xi, ki und/oder das Ergebnis bzw. wenigstens ein Zwischenergebnis yi , ein
Zufallszahlengenerator, welcher Zufallszahlen erzeugt, sowie eine Vor
richtung zum Erzeugen des Steuersignals ri auf den Zufallszahlen basie
rend vorgesehen, wobei der steuerbare Inverter in Abhängigkeit von dem
Steuersignal ri wahlweise die Bitfolgen xi, ki bzw. yi zu ihrem bitweisen
Komplement xi, ki bzw. yi, umsetzt oder unverändert lässt.
Dies hat den Vorteil, dass bei wiederholter Ausführung derselben krypto
graphischen Operation andere Bitfolgen bearbeitet bzw. abgespeichert
werden, so dass sich bei der jeweiligen Ausführung der kryptographischen
Operation bzw. kryptographischen Operationen andere Stromänderungen
des Datenverarbeitungsgerätes ergeben. Unabhängig vom eigentlichen
Wert der Teilergebnisse wird somit bei wiederholter Ausführung der Ge
samtberechnung erreicht, dass jeder Datenpfad bei einer echten Zufalls
zahlenreihe gleichhäufig bzw. bei einer Pseudozufallszahlenreihe nahezu
gleichhäufig von "0" auf "0", von "0" auf "1", von "1" auf "0" und von "1"
auf "1" wechselt. Da jedoch das auf Zufallszahlen basierende Steuersi
gnal ri nicht bekannt bzw. vorbestimmt ist, fehlt eine Korrelation zwischen
den Stromänderungen und den Bitwerten der Daten und Ergebnisse, so
dass eine "Differential Power Analysis" nicht mehr zu einer erfolgreichen
Kryptoanalyse führt. Mit anderen Worten enthält der mittlere Stromver
brauch der Gesamtoperation keine brauchbare Information über die ver
wendeten Teiloperanden bzw. Zwischenergebnisse in den Teiloperatio
nen.
Vorzugsweise Weitergestaltungen der Vorrichtung sind in den Ansprüchen
9 bis 14 beschrieben.
In einer bevorzugten Ausführungsform ist wenigstens einem Register Ri
ein Inverter nachgeschaltet, welcher das identische Steuersignal ri erhält,
wie die der i-ten Teiloperation vorgeschalteten Inverter für die Daten xi, ki.
Dieser einem Register Ri der i-ten Teiloperation nachgeschaltete Inverter
ist dabei bevorzugt mit einem der nachfolgenden (i+1)-ten Teiloperation
vorgeschalteten Inverter für ein Eingangsdatum xi+1 kombiniert. Der kom
binierte Inverter erhält zweckmäßigerweise sowohl das Steuersignal ri der
vorangegangenen i-ten Teiloperation als auch das Steuersignal ri+1 der
nachfolgenden (i+1)-ten Teiloperation.
Die Daten umfassen beispielsweise kryptographische Schlüssel und/oder
Operanden.
In einer bevorzugten Ausführungsform speichert ein Register Ri zwischen
einer vorangegangenen i-ten Teiloperation und einer nachfolgenden (i+1)-
ten Teiloperation ein Zwischenergebnis yi der vorangegangenen i-ten
Teiloperation und leitet dieses Zwischenergebnis als Eingangswert xi+1 an
die nachfolgende (i+1)-te Teiloperation weiter.
Zweckmäßigerweise invertiert die bitweise Komplementierung wenigstens
einen Bitwert, insbesondere die geraden Bitwerte, die ungeraden Bitwerte
oder alle Bitwerte, eines Datenbitwortes xi, ki bzw. yi.
Nachstehend wird die Erfindung anhand der beigefügten Zeichnungen
näher erläutert. Diese zeigen in
Fig. 1 ein Ablaufschema eines Teiles einer kryptographischen Ope
ration gemäß dem Stand der Technik,
Fig. 2 ein Ablaufschema eines Teiles einer ersten bevorzugten
Ausführungsform einer erfindungsgemäßen kryptographi
schen Operation und
Fig. 3 ein Ablaufschema eines Teiles einer zweiten bevorzugten
Ausführungsform einer erfindungsgemäßen kryptographi
schen Operation.
Bei der in Fig. 2 dargestellten ersten bevorzugten Ausführungsform eines
erfindungsgemäßen Verschlüsselungsverfahrens wird durch eine Kette
von Teiloperationen fi (xi, ki ), innerhalb derer ein oder mehrere logische
XOR-Verknüpfungen (Exklusiv-Oder-Verknüpfung) ausgeführt werden,
eine kryptographische Gesamtoperation durchgeführt. Dargestellt sind
zwei Teiloperationen, nämlich die i-te Teiloperation 10 und die (i+1)-te
Teiloperation 12, wobei jede Teiloperation von einer Berechnungseinheit
ausgeführt wird. Jeder Teiloperation 10, 12 ist eine Speicherzelle oder ein
Register Ri 14 bzw. eine Speicherzelle oder ein Register Ri 16 nachge
schaltet. Jede Teiloperation 10, 12 hat als Eingangswert ein Datum xi , xi+1
sowie einen Operanden ki, ki+1, welche als Datenbitworte zur Verfügung
stehen.
Jeder Teiloperation 10, 12 vorgeschaltet ist jeweils ein steuerbarer Inver
ter 18 bzw. 20 für die Daten xi, xi+1 sowie jeweils ein steuerbarer Inverter
22, 24 für die Operanden ki, ki+1. Ferner ist bei jeder Teiloperation 10, 12
dem jeweiligen Register Ri 14 bzw. Ri +Ri+1 16 ein steuerbarer Inverter 26, 28
für das Zwischenergebnis yi, yi+1 nachgeschaltet, wobei dieses Zwischen
ergebnis von dem jeweiligen Register Ri 14 bzw. Ri+1 16 als Eingangsda
ten xi+1 bzw. xi+2 an eine nachfolgende Teiloperation 12 weiter gegeben
werden. Diese Inverter 18 bis 28 sind durch ein Steuersignal ri bzw. ri+1
derart steuerbar, dass sie in Abhängigkeit von dem jeweiligen Steuersi
gnal ri bzw. ri+1 wahlweise die zugeordneten Datenbitworte bitweise kom
plementieren oder nicht. Hierbei erhalten alle Inverter 18, 22, 26 bzw. 20,
24, 28 einer Teiloperation 10 bzw. 12 dasselbe Steuersignal ri bzw. ri+1.
Mit anderen Worten wird die Entscheidung, ob eine Invertierung der ent
sprechenden Eingangswerte der Inverter 18 bis 28 durchgeführt wird oder
ob die Eingangswerte unbearbeitet die Inverter 18 bis 28 durchlaufen,
durch das zusätzliche Steuersignal ri bzw. ri+1 entschieden. Diese Anord
nung von Registern 14, 16 zwischen Teiloperationen 10, 12 findet vor al
lem dann Anwendung, wenn die Teiloperationen 10, 12 zeitlich nachein
ander von ein und derselben Einheit berechnet werden und somit die
Teilergebnisse zwischengespeichert werden müssen.
Das Steuersignal wird durch Zufallswerte aus einem Zufallsgenerator da
hingehend gesteuert, dass die Teiloperation abhängig vom Wert der Zu
fallszahlen entweder das Originalergebnis y = f(x, k) oder das bitinvertierte
Ergebnis y = f(x, k) liefert. Hierdurch wird realisiert, dass sowohl die
Berechnung als auch die Speicherung der Daten in den Registern Ri 14,
18 entweder mit Originalwerten oder mit bitinvertierten Werten durchge
führt wird. Unabhängig vom eigentlichen Wert der Teilergebnisse wird
somit bei wiederholter Ausführung der Gesamtberechnung erreicht, dass
jeder Datenpfad gleich häufig von "0" auf "0", von "0" auf "1", von "1" auf
"0" und von "1" auf "1" wechselt. Der mittlere Stromverbrauch der Ge
samtoperation enthält somit keine brauchbare Information über die ver
wendeten Teiloperanden ki bzw. Zwischenergebnisse yi in den Teilopera
tionen 10, 12. Der dem Register 14, 16 nachgeschaltete Inverter 26, 28
stellt für die folgende Teiloperation 12 wieder den originalen, nicht inver
tierten Wert her.
Die zweite bevorzugte Ausführungsform des erfindungsgemäßen Ver
sohlüsselungsverfahrens gemäß Fig. 3 entspricht der ersten Ausfüh
rungsform von Fig. 2 mit dem einzigen Unterschied, dass die den Regi
stern 14, 16 nachgeschalteten Inverter 26, 28 mit dem jeweiligen Ein
gangsinverter 20 der folgenden Stufe 12 zu einem Inverter 30 kombiniert
sind.
Die Inverter invertieren beispielsweise auch nur einen Teil der Bitwerte
des jeweiligen Datenbitwortes. So werden beispielsweise nur die geraden
oder ungeraden Bitworte bzw. Bitadressen invertiert. Die Invertierung der
Bitwerte erfolgt beispielsweise mittels einer XOR-Operation (Exklusiv-
Oder-Operation).
10
i-te Teiloperation
12
(i+1)-te Teiloperation
14
Register Ri
,
16
Register Ri+1
18
steuerbarer Inverter für xi
20
steuerbarer Inverter für xi+1
22
steuerbarer Inverter für ki
24
steuerbarer Inverter für ki+1
26
steuerbarer Inverter für yi
28
steuerbarer Inverter für yi+1
30
kombinierter Inverter
Claims (14)
1. Verschlüsselungsverfahren, wobei wenigstens eine kryptographi
sche Teiloperation yi = fi (xi , ki) von digital als Datenbitworte gespei
cherten Daten xi, ki ausgeführt und das jeweilige Ergebnis bzw. je
weilige Zwischenergebnisse yi digital als Datenbitworte abgespei
chert bzw. zwischengespeichert werden,
dadurch gekennzeichnet, dass
wenigstens eines der Daten xi, ki und/oder das Ergebnis bzw. we
nigstens ein Zwischenergebnis yi in Abhängigkeit von einem auf
Zufallszahlen basierenden Steuersignal ri wahlweise bitweise zu
xi, ki und/oder yi komplementiert wird oder nicht.
2. Verschlüsselungsverfahren nach Anspruch 1,
dadurch gekennzeichnet, dass
in den kryptographischen Teiloperationen eine oder mehrere XOR-
Verknüpfungen (Exklusiv-Oder-Verknüpfung) ausgeführt werden.
3. Verschlüsselungsverfahren nach Anspruch 1 oder 2,
dadurch gekennzeichnet, dass
die Daten kryptographische Schlüssel und/oder Operanden umfas
sen.
4. Verschlüsselungsverfahren nach einem der vorhergehenden An
sprüche,
dadurch gekennzeichnet, dass
Zwischenergebnisse yi zwischen der Ausführung von aufeinander
folgenden kryptographischen Teiloperationen in einem Register Ri
zwischengespeichert und als Operand xi+1 der nachfolgenden
kryptographischen Teiloperationen zugeführt werden.
5. Verschlüsselungsverfahren nach einem der vorhergehenden An
sprüche,
dadurch gekennzeichnet, dass
eine aus dem Zwischenergebnis yi einer vorangegangenen Teilope
ration i erhaltene Bitfolge xi+1 = yi für eine nachfolgende Teiloperati
on i+1 bitweise zu xi+1, komplementiert wird, wenn die Daten xi , ki
der vorangegangenen Teiloperation i bitweise komplementiert wur
den.
6. Verschlüsselungsverfahren nach einem der vorhergehenden An
sprüche,
dadurch gekennzeichnet, dass
bei der bitweisen Komplementierung wenigstens ein Bitwert, insbe
sondere die geraden Bitwerte, die ungeraden Bitwerte oder alle
Bitwerte, eines Datenbitwortes xi, ki , bzw. yi invertiert werden.
7. Verschlüsselungsverfahren nach einem der vorhergehenden An
sprüche,
dadurch gekennzeichnet, dass
eine Invertierung von Bitwerten bzw. Bitadressen eines Datenbit
wortes xi, ki , bzw. yi bei der bitweisen Komplementierung mittels ei
ner XOR-Operation (Exklusiv-Oder-Operation) durchgeführt wird.
8. Verschlüsselungsvorrichtung mit einer Berechnungseinheit und
Registern Ri (14, 16), wobei die Berechnungseinheit wenigstens ei
ne kryptographische Teiloperation yi = fi (xi, ki) (10, 12) von digital in
den Registern Ri (14, 16) der Verschlüsselungsvorrichtung als Da
tenbitworte gespeicherten Operanden xi, ki ausführt und das jewei
lige Ergebnis bzw. Zwischenergebnisse yi digital in den Registern Ri
(14, 16) der Verschlüsselungsvorrichtung als Datenbitworte abspei
chert bzw. zwischenspeichert,
dadurch gekennzeichnet, dass
wenigstens ein von einem Steuersignal ri steuerbarer Inverter (18
bis 28; 30) für wenigstens eines der Daten xi, ki und/oder das Er
gebnis bzw. wenigstens ein Zwischenergebnis yi, ein Zufallszahlen
generator, welcher Zufallszahlen erzeugt, sowie eine Vorrichtung
zum Erzeugen des Steuersignal ri auf den Zufallszahlen basierend
vorgesehen ist, wobei der steuerbare Inverter (18 bis 28; 30) in Ab
hängigkeit von dem Steuersignals ri wahlweise die Bitfolgen xi, ki
bzw. yi zu ihrem bitweisen Komplement xi , ki, bzw. yi umsetzt oder
unverändert lässt.
9. Verschlüsselungsvorrichtung nach Anspruch 8,
dadurch gekennzeichnet, dass
wenigstens einem Register Ri (14, 16) ein Inverter (26, 28; 30)
nachgeschaltet ist, welcher das identische Steuersignal ri erhält,
wie die der i-ten Teiloperation (10, 12) vorgeschalteten Inverter
(18, 20) für die Daten xi, ki.
10. Verschlüsselungsvorrichtung nach Anspruch 9,
dadurch gekennzeichnet, dass
der einem Register Ri (14, 16) der i-ten Teiloperation (10, 12)
nachgeschaltete Inverter (26, 28) mit einem der nachfolgenden
(i+1)-ten Teiloperation (12) vorgeschalteten Inverter (20) für ein
Eingangsdatum xi+1 kombiniert ist.
11. Verschlüsselungsvorrichtung nach Anspruch 10,
dadurch gekennzeichnet, dass
der kombinierte Inverter (30) sowohl das Steuersignal ri der voran
gegangenen i-ten Teiloperation (10) als auch das Steuersignal ri+1
der nachfolgenden (i+1)-ten Teiloperation (12) erhält.
12. Verschlüsselungsvorrichtung nach einem der Ansprüche 8 bis 11,
dadurch gekennzeichnet, dass
die Daten kryptographische Schlüssel und/oder Operanden umfas
sen.
13. Verschlüsselungsvorrichtung nach einem der Ansprüche 8 bis 12,
dadurch gekennzeichnet, dass
ein Register Ri (14, 16) zwischen einer vorangegangenen i-ten
Teiloperation (10) und einer nachfolgenden (i+1)-ten Teiloperation
(12) ein Zwischenergebnis yi der vorangegangenen i-ten Teilopera
tion (10) speichert und dieses Zwischenergebnis als Eingangswert
xi+1 an die nachfolgende (i+1)-te Teiloperation (12) weiterleitet.
14. Verschlüsselungsvorrichtung nach einem der Ansprüche 8 bis 13,
dadurch gekennzeichnet, dass
die bitweise Komplementierung wenigstens einen Bitwert, insbe
sondere die geraden Bitwerte, die ungeraden Bitwerte oder alle
Bitwerte, eines Datenbitwortes xi, ki, bzw. yi invertiert.
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE19936918A DE19936918A1 (de) | 1998-09-30 | 1999-08-05 | Verschlüsselungsverfahren zum Ausführen von kryptographischen Operationen |
| PCT/EP1999/007012 WO2000019656A1 (de) | 1998-09-30 | 1999-09-17 | Verschlüsselungsverfahren zum ausführen von kryptographischen operationen |
| EP99948819A EP1044533A1 (de) | 1998-09-30 | 1999-09-17 | Verschlüsselungsverfahren zum ausführen von kryptographischen operationen |
| JP2000573037A JP2003524916A (ja) | 1998-09-30 | 1999-09-17 | 暗号処理を実行するための符号化方法 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE19845095 | 1998-09-30 | ||
| DE19936918A DE19936918A1 (de) | 1998-09-30 | 1999-08-05 | Verschlüsselungsverfahren zum Ausführen von kryptographischen Operationen |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE19936918A1 true DE19936918A1 (de) | 2000-04-06 |
Family
ID=7882966
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE19936918A Withdrawn DE19936918A1 (de) | 1998-09-30 | 1999-08-05 | Verschlüsselungsverfahren zum Ausführen von kryptographischen Operationen |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE19936918A1 (de) |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2818847A1 (fr) * | 2000-12-26 | 2002-06-28 | St Microelectronics Sa | Circuit logique a polarite variable |
| DE10202700A1 (de) * | 2002-01-24 | 2003-08-07 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Erzeugen eines Befehlscodes |
| EP1398901A1 (de) * | 2002-09-11 | 2004-03-17 | Kabushiki Kaisha Toshiba | Feistel-Verschlüsselungsverfahren und - Vorrichtung mit Schutz gegen DPA-Angriffe |
| FR2847093A1 (fr) * | 2002-11-12 | 2004-05-14 | Samsung Electronics Co Ltd | Procede et appareil de chiffrement avec une structure (des) parallele |
| WO2004070496A3 (de) * | 2003-02-06 | 2004-11-04 | Infineon Technologies Ag | Schaltung mit schutz vor manipulativen angriffen und verfahren |
| DE102004001235A1 (de) * | 2004-01-07 | 2005-08-11 | Infineon Technologies Ag | Übertragungsvorrichtung |
| US6954047B2 (en) | 2001-08-10 | 2005-10-11 | Robert Bosch Gmbh | Transmission detector for a window body, in particular the windshield of a motor vehicle, and a cleaning device for a viewing area of a window body |
| US7161869B2 (en) | 2004-01-07 | 2007-01-09 | Infineon Technologies Ag | Transmission device |
| WO2009138287A1 (de) * | 2008-05-16 | 2009-11-19 | Siemens Aktiengesellschaft | Verfahren und speichervorrichtung zum bereitstellen eines kryptografischen schlüssels |
-
1999
- 1999-08-05 DE DE19936918A patent/DE19936918A1/de not_active Withdrawn
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2818847A1 (fr) * | 2000-12-26 | 2002-06-28 | St Microelectronics Sa | Circuit logique a polarite variable |
| WO2002052782A1 (fr) * | 2000-12-26 | 2002-07-04 | Stmicroelectronics Sa | Circuit logique a polarites internes variables |
| US7290151B2 (en) | 2000-12-26 | 2007-10-30 | Stmicroelectronics Sa | Logic circuit with variable internal polarities |
| US6954047B2 (en) | 2001-08-10 | 2005-10-11 | Robert Bosch Gmbh | Transmission detector for a window body, in particular the windshield of a motor vehicle, and a cleaning device for a viewing area of a window body |
| DE10202700A1 (de) * | 2002-01-24 | 2003-08-07 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Erzeugen eines Befehlscodes |
| EP1398901A1 (de) * | 2002-09-11 | 2004-03-17 | Kabushiki Kaisha Toshiba | Feistel-Verschlüsselungsverfahren und - Vorrichtung mit Schutz gegen DPA-Angriffe |
| FR2847093A1 (fr) * | 2002-11-12 | 2004-05-14 | Samsung Electronics Co Ltd | Procede et appareil de chiffrement avec une structure (des) parallele |
| WO2004070496A3 (de) * | 2003-02-06 | 2004-11-04 | Infineon Technologies Ag | Schaltung mit schutz vor manipulativen angriffen und verfahren |
| DE102004001235A1 (de) * | 2004-01-07 | 2005-08-11 | Infineon Technologies Ag | Übertragungsvorrichtung |
| DE102004001235B4 (de) * | 2004-01-07 | 2005-12-15 | Infineon Technologies Ag | Übertragungsvorrichtung |
| US7161869B2 (en) | 2004-01-07 | 2007-01-09 | Infineon Technologies Ag | Transmission device |
| WO2009138287A1 (de) * | 2008-05-16 | 2009-11-19 | Siemens Aktiengesellschaft | Verfahren und speichervorrichtung zum bereitstellen eines kryptografischen schlüssels |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE60222052T2 (de) | Verschlüsselung gesichert gegen Angriffe durch die Analyse der Leistungsaufnahme (DPA) | |
| DE10201449C1 (de) | Rechenwerk, Verfahren zum Ausführen einer Operation mit einem verschlüsselten Operanden, Carry-Select-Addierer und Kryptographieprozessor | |
| DE602004013206T2 (de) | Verfahren und diesbezügliche einrichtung zur hardwareorientierten umsetzung zwischen arithmetik- und boolscher zufallsmaskierung | |
| DE69936024T2 (de) | Vorrichtung zur Verschlüsselung/Entschlüsselung | |
| DE69416684T2 (de) | System und anordnung zum blockweisen verschlüsseln/entschlüsseln von daten | |
| DE102005012098B4 (de) | Datenchiffrierprozessor sowie AES-Chiffriersystem und AES-Chiffrierverfahren | |
| DE60302512T2 (de) | Feistel-Verschlüsselungsverfahren und -vorrichtung mit Schutz gegen DPA-Angriffe | |
| DE60036499T2 (de) | Eine Technik, um einen Parameter, wie z.b. eine Prüfsumme, durch ein Primitiv zu erzeugen, welche elementare Register-Operationen verwendet | |
| DE69911815T2 (de) | Selbstkorrigierendes zufallsverschlüsselungssystem und -verfahren | |
| EP1298834B1 (de) | Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten | |
| DE10304451B3 (de) | Modulare Exponentiation mit randomisiertem Exponenten | |
| DE69514261T2 (de) | Pseudozufallzahlengenerator und Kommunikationsverfahren und -einrichtung unter Verwendung eines verschlüsselten Textes basierend auf mittels dieses Generators erzeugten Pseudozufallszahlen | |
| DE19936918A1 (de) | Verschlüsselungsverfahren zum Ausführen von kryptographischen Operationen | |
| DE102005009170B4 (de) | Logikschaltung und zugehöriges Verfahren | |
| DE102004061312B4 (de) | Vorrichtung und Verfahren zum Detektieren eines potentiellen Angriffs auf eine kryptographische Berechnung | |
| DE112020007024T5 (de) | Vertrauliche-information-verarbeitungssystem, verschlüsselungsvorrichtung, verschlüsselungsverfahren und verschlüsselungsprogramm | |
| EP1044533A1 (de) | Verschlüsselungsverfahren zum ausführen von kryptographischen operationen | |
| DE102020102796A1 (de) | Datenverarbeitungsvorrichtung und verfahren zum verarbeiten von geheimen daten | |
| DE102004037814B4 (de) | Vorrichtung und Verfahren zum Erzeugen einer Folge von Zahlen | |
| DE69520847T2 (de) | Verschlüsselungseinrichtung mit öffentlichem Schlüssel wobei das Chiffrat mit einem öffentlichen Schlüssel verarbeitet wird | |
| EP1446711B1 (de) | Schiebevorrichtung und verfahren zum verschieben | |
| DE10201450B4 (de) | Carry-Skip-Addierer für verschlüsselte Daten | |
| DE60302249T2 (de) | Aes mixcolumn transformation | |
| DE102021100538A1 (de) | Schaltung und verfahren zur rotationsinvarianten ausführung einer oder mehrerer operationen mit mindestens einem operanden | |
| EP1466245B1 (de) | Rechenwerk und verfahren zum kombinieren eines ersten operanden mit einem zweiten operanden |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8127 | New person/name/address of the applicant |
Owner name: PHILIPS INTELLECTUAL PROPERTY & STANDARDS GMBH, 20 |
|
| 8141 | Disposal/no request for examination |