DE10042234A1 - Verfahren und Vorrichtung zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor - Google Patents

Verfahren und Vorrichtung zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor

Info

Publication number
DE10042234A1
DE10042234A1 DE10042234A DE10042234A DE10042234A1 DE 10042234 A1 DE10042234 A1 DE 10042234A1 DE 10042234 A DE10042234 A DE 10042234A DE 10042234 A DE10042234 A DE 10042234A DE 10042234 A1 DE10042234 A1 DE 10042234A1
Authority
DE
Germany
Prior art keywords
symbol
random number
module
exponent
numbers
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.)
Granted
Application number
DE10042234A
Other languages
English (en)
Other versions
DE10042234C2 (de
Inventor
Holger Sedlak
Jean-Pierre Seifert
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10042234A priority Critical patent/DE10042234C2/de
Priority to AU2001287675A priority patent/AU2001287675A1/en
Priority to PCT/EP2001/009285 priority patent/WO2002019065A2/de
Publication of DE10042234A1 publication Critical patent/DE10042234A1/de
Application granted granted Critical
Publication of DE10042234C2 publication Critical patent/DE10042234C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/75Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
    • G06F21/755Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation with measures against power attack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/723Modular exponentiation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks
    • G06F2207/7223Randomisation as countermeasure against side channel attacks
    • G06F2207/7257Random modification not requiring correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks
    • G06F2207/7271Fault verification, e.g. comparing two values which should be the same, unless a computational fault occurred

Abstract

Das erfindungsgemäße Verfahren zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor verwendet eine Randomisierung des Exponenten der modularen Exponentiation unter Verwendung der Carmichaelschen lambda-Funktion. Zur zusätzlichen Homogenisierung des Leistungs- und Zeitverhaltens des kryptographischen Prozessors kann ferner eine Randomisierung der Basis der modularen Exponentiation durchgeführt werden. Damit kann durch entsprechende Festlegung der Länge der zur Randomisierung verwendeten Zufallszahl(en) ein optimaler Kompromiß zwischen Sicherheitsstandard einerseits und Verarbeitungsaufwand andererseits für eine große Bandbreite von unterschiedlichen Anwendungen erreicht werden. Dies gilt um so mehr, da die Randomisierung des Exponenten unter Verwendung der Carmichaelschen lambda-Funktion im Vergleich zu einer Randomisierung des Exponenten unter Verwendung der Eulerschen phi-Funktion deutlich weniger rechenaufwendig ist und dennoch einen vergleichbaren Sicherheitsstandard liefert.

Description

Die vorliegende Erfindung bezieht sich auf die Kryptographie und insbesondere auf die modulare Exponentiation als eine der wichtigsten arithmetischen Operationen beispielsweise in Public-Key-Kryptographie-Verfahren.
Seit einigen Jahren gibt es sogenannte Informations-Leck-At­ tacken auf Kryptographie-Prozessoren, welche versuchen, ge­ heime Daten aus der Berechnung der modularen Exponentiation zu gewinnen, welche eine der zentralen Rechenoperationen beispielsweise bei Public-Key-Kryptographie-Verfahren ist. Ein dominierendes, derartiges Verfahren ist beispielsweise das RSA-Verfahren zum Erzeugen einer RSA-Signatur einer Nachricht M, d. h. C : = Md mod N.
Alternativ kann neben der RSA-Signatur die modulare Exponen­ tiation beispielsweise auch bei der RSA-Entschlüsselung ver­ wendet werden. In diesem Fall ist M die verschlüsselte Nach­ richt, während C die entschlüsselte Nachricht ist. Daraus wird ersichtlich, daß die modulare Exponentiation sowohl bei einer Verschlüsselung, wie z. B. der RSA-Signatur, als auch bei einer Entschlüsselung, wie z. B. der RSA- Entschlüsselung, eingesetzt werden kann. Die mathematische Operation bleibt die gleiche; die Bedeutungen der Variablen C und M sind jedoch in beiden Fällen genau entgegengesetzt.
Bei einer RSA-Signatur ist der Modul N üblicherweise be­ kannt, während der Exponent d geheim ist.
Sogenannte Informations-Leck-Attacken versuchen, aus der Be­ rechnung der modularen Exponentiation geheime Daten bei­ spielsweise über den geheimen Schlüssel oder Exponenten d zu gewinnen. Hierzu sei lediglich beispielhaft auf folgende Veröffentlichungen hingewiesen: P. Kocher "Timing Attacks an Implementations of DH, RSA, DSS and other Systems" (Proc. Of CRYPTO' 96), D. Boneh, R. DeMillo, R. Lipton "On the Impor­ tance of Checking Cryptographic Protocols for Faults" (Proc. Of EUROCRYPT' 97), P. Kocher, J. Jaffe, B. Jun "Differential- Power-Analysis" (Proc. Of CRYPTO' 99) and J. Quisquater, D. Samyde "Electromagnetic-Analysis-Attacks" (Rumpsession of EUROCRYPT' 00).
Im nachfolgenden wird auf Fig. 3 eingegangen, welche ein Flußdiagramm einer üblichen modularen Exponentiation zeigt. Der Algorithmus beginnt in einem Block 100 und initialisiert zunächst die benötigten Variablen, nämlich den Modul N, den Exponenten d und die zu signierende Nachricht M bzw. alter­ nativ die zu entschlüsselnde Nachricht (im Falle einer RSA- Entschlüsselung) in einem Block 102. Aus diesen Größen wird unter Verwendung der im Block 104 gegebenen üblichen Formel zur modularen Exponentiation das verschlüsselte Symbol C im Falle einer RSA-Signatur bzw. das entschlüsselte Symbol C im Falle einer RSA-Entschlüsselung berechnet. Das Ergebnis wird dann in einem Block 106 ausgegeben, wonach der Algorithmus in einem Block 108 beendet ist.
Dieses allgemeine Schema zur Berechnung der im Block 104 ge­ gebenen modularen Exponentiation umfaßt keinerlei Gegenmaß­ nahmen gegen irgendeine Form von Attacken, wie z. B. eine Timing-Attacke, eine Leistungs-Attacke oder eine Strahlungs- Attacke.
Die DE 198 28 936 A1 umfaßt ein Verfahren und eine Vorrich­ tung zum Verarbeiten von Daten, um eine modulare Exponentia­ tion besser gegen äußere Attacken sichern zu können. Das in der DE 198 28 936 A1 offenbarte Verfahren stellt sich etwa wie in Fig. 4 aufgezeichnet dar. Im Unterschied zu dem in Fig. 3 gezeigten bekannten Ausführungsbeispiel wird bei dem in Fig. 4 gezeigten bekannten Verfahren eine Randomisierung des Exponenten d unter Verwendung einer Zufallszahl r1 sowie eine Randomisierung der Basis unter Verwendung einer Zufallszahl r2 vorgeschlagen. Im einzelnen werden in einem Block 110 die Variablen M, d, N und ϕ(N) initialisiert. ϕ(N) stellt dabei die sogenannte Eulersche ϕ-Funktion dar, welche durch (p - 1) × (q - 1) definiert ist, wie es in der in Fig. 4 dargestellten Gleichung zu sehen ist. Daraufhin wird eine Zufallszahl r1 in einem Schritt 112 zum Randomisieren des Exponenten ausgewählt. Anschließend wird eine Zufallszahl r2 in einem Schritt 114 zum Randomisieren der Basis M ausge­ wählt. Daraufhin wird bei dem bekannten Verfahren die im Block 116 dargestellte modulare Exponentiation durchgeführt, um das verarbeitete Symbol C in dem Block 106 zu erhalten, wonach der Algorithmus beendet ist.
Ein ähnliches Verfahren wird auch in dem US-Patent Nr. 5,991,415 von Adi Shamir beschrieben. Auch hier wird die Eu­ lersche ϕ-Funktion zur Randomisierung des Exponenten einge­ setzt.
Ein anderes Verfahren zum Berechnen der modularen Exponen­ tiation besteht darin, die modulare Exponentiation unter Verwendung des chinesischen Restsatzes (CRT; CRT = Chinese Residue bzw. Reminder Theorem) durchzuführen. Die modulare Exponentiation unter Verwendung des chinesischen Restsatzes ist in der Technik bekannt und beispielsweise im "Handbook of Applied Cryptography" von Menezes, von Oorschort und von Sto­ ne, Seiten 610 bis 613, erschienen im Springer-Verlag, be­ schrieben. Zunächst werden in einem Block 118 die nötigen Variablen M, dp, dq, p und q initialisiert. Wie es unten in Fig. 5 dargestellt ist, sind p und q die geheimen RSA- Primzahlen, deren Produkt den Modul N ergibt. Die Variable d ist wieder der geheime RSA-Exponent. Die Hilfsgrößen dp und dq werden berechnet, wie es ebenfalls in Fig. 5 dargestellt ist. ϕ(p) bedeutet hier wieder die Eulersche ϕ-Funktion.
Entsprechend dem chinesischen Restsatz werden dann die Grö­ ßen Cp und Cq berechnet, wie es in den Blöcken 120 bzw. 122 dargestellt ist. Die Größe xp ergibt sich aus Cp und Cq, wie es in einem Block 124 veranschaulicht ist. Das verarbeitete Symbol C ergibt sich dann aus der Bestimmungsgleichung für C, die in einem Block 126 in Fig. 5 dargestellt ist. Es sei darauf hingewiesen, daß Fig. 5 die modulare Exponentiation mittels des chinesischen Restsatzes nach dem Algorithmus von H. L. Garner darstellt.
Die bisherigen Abwehrmaßnahmen der eingangs aufgeführten At­ tacken lassen sich gemäß der Berechnung der Exponentiation in zwei Gruppen unterteilen: Nicht-Benutzung oder aber Be­ nutzung des chinesischen Restsatzes zur Berechnung der modu­ laren Exponentiation. Abwehrmaßnahmen für beide Fälle sind in dem US-Patent Nr. 5,991,415 beschrieben und basieren im wesentlichen auf einer randomisierten Berechnung der modula­ ren Exponentiation.
Die Verwendung des chinesischen Restsatzes zur modularen Ex­ ponentiation, wie es in Fig. 5 dargestellt ist, liefert je­ doch keine Gegenmaßnahmen gegen sogenannte Differential Fault Attacks nach Boneh, DeMillo und Lipton. Sogenannte Fault Attacks basieren darauf, Fehler in die kryptographi­ sche Berechnung einzuführen, und den Schlüssel zu identifi­ zieren, indem die mathematischen und statistischen Eigen­ schaften der fehlerhaft berechneten Ergebnisse analysiert werden. Unter den vielen vorgeschlagenen Techniken zum Ein­ fügen solcher Fehler befinden sich die Verwendung einer io­ nisierenden Strahlung, unüblicher Betriebstemperaturen, Lei­ stungs- und Taktveränderungen sowie eine Laser-basierte Chip-Mikrochirurgie. Bestimmte Attacken sind differentiell, d. h. es wird sowohl eine korrekte als auch eine fehlerhafte Berechnung unter Verwendung der gleichen Eingabe durchge­ führt, woraufhin die Differenzen der Ergebnisse analysiert werden. Bezüglich näherer Details und weiterer solcher At­ tacken wird auf das US-Patent Nr. 5,991,415 verwiesen.
Eine Möglichkeit, um diese Attacken zu umgehen, besteht dar­ in, im wesentlichen die in Fig. 5 gezeigte Berechnung zwei­ mal auszuführen, wobei es bevorzugt wird, unterschiedliche Algorithmen zu verwenden. Wenn irgendeine Diskrepanz zwischen den zwei Ergebnissen gefunden werden sollte, sollte der kryptographische Prozessor, der beispielsweise in einer Geldkarte oder Smartcard untergebracht ist, keinerlei Ausga­ ben liefern. Dies erzeugt einen starken Schutz vor zufälli­ gen Fehlern, welche lediglich mit einer sehr geringen Wahr­ scheinlichkeit zwei Berechnungen auf identische Art und Wei­ se beeinträchtigen. Diese Maßnahme führt jedoch zu einer Verringerung der Rechengeschwindigkeit um den Faktor 2. Eine solche Verringerung ist jedoch besonders in Smart-Card-Im­ plementationen, welche eine begrenzte Rechenleistung mit sich bringen, oftmals nicht tolerabel. Wenn insbesondere an die breite Verwendung von Geldkarten bzw. Ausweisen mit Si­ gnaturchips gedacht wird, so ist es ohne weiteres einsich­ tig, daß der kryptographische Algorithmus zwar sehr sicher sein muß, jedoch in der benötigten Rechenleistung begrenzt sein muß, da sonst die Anschaffungskosten für Lesegeräte derart immens werden, daß ein solches System lediglich eine sehr schlechte Marktakzeptanz erreichen wird.
Daraus folgt jedoch, daß bei kryptographischen Systemen na­ türlich die Sicherheit ein wesentlicher Faktor ist, daß je­ doch auf die Effizienz der Berechnung, d. h. ein sinnvoller und sparsamer Umgang mit Rechenressourcen, ebenfalls ein ge­ wichtiger Faktor ist, welcher oftmals letztendlich darüber entscheiden wird, ob ein System vom Markt angenommen wird oder nicht.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren und eine Vorrichtung zum Durchführen einer modula­ ren Exponentiation zu schaffen, welche einen hohen Sicher­ heitsstandard liefern, jedoch gleichzeitig keinen all zu ho­ hen Rechenaufwand erfordern.
Diese Aufgabe wird durch ein Verfahren zum Durchführen einer modularen Exponentiation nach Patentanspruch 1 oder durch eine Vorrichtung zum Durchführen einer modularen Exponentia­ tion nach Patentanspruch 13 gelöst.
Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, daß die Verwendung der Eulerschen ϕ-Funktion zur Randomisie­ rung des Exponenten d zwar einen effektiven Schutz gegenüber äußeren Attacken liefert, da diese Randomisierung zu einer starken Homogenisierung des Strom- und Zeitprofils bei der Berechnung der modularen Exponentiation führt, daß jedoch der Rechenaufwand beträchtlich werden kann. Erfindungsgemäß wird daher von einer Randomisierung des Exponenten d unter Verwendung der Eulerschen ϕ-Funktion weggegangen. Statt des­ sen wird eine Randomisierung unter Verwendung der Carmicha­ elschen λ-Funktion verwendet, welche bei ähnlich großem Si­ cherheitsstandard zu einer deutlichen Reduktion der erfor­ derlichen Rechenleistung führt. Der randomisierte Exponent d' ergibt sich aus folgendem Zusammenhang:
d' : = d + r1.λ(N).
Diese Randomisierung ist durch die folgende Identität ge­ stützt:
M(λ(N)) = 1 mod N.
Damit gilt:
M(d+r1.λ(N)) = Md mod N.
Üblicherweise handelt es sich bei dem Modul N der modularen Exponentiation um ein sogenanntes RSA-Modul der Form N = p.q, wobei p und q zwei gleich lange Primzahlen sind. Damit gilt folgender Zusammenhang zwischen der Eulerschen ϕ-Funk­ tion und der Carmichaelschen λ-Funktion:
λ(N) = ϕ(N)/ggT(p - 1, q - 1).
Es ist zu sehen, daß die Carmichaelsche λ-Funktion um den größten gemeinsamen Teiler (ggT) von (p - 1) und (q - 1) kleiner ist als die Eulersche ϕ-Funktion. Der Exponent ist damit um einige Bits kürzer als der Exponent, der unter Verwendung der Eulerschen Funktion randomisiert worden ist, so daß die modifizierte modulare Exponentiation schneller berechenbar ist, als es mit dem System erreicht werden kann, das in Fig. 4 dargestellt ist.
Es sei darauf hingewiesen, daß die Carmichaelsche λ-Funktion nicht nur mit zwei Primzahlen gebildet werden kann, sondern unter Verwendung einer beliebigen Anzahl von Primzahlen, so­ lange das Produkt der Anzahl von Primzahlen gleich dem Modul N ist. In Worten ausgedrückt, ist λ durch den Quotienten aus dem Produkt von zumindest zwei Zahlen und dem größten ge­ meinsamen Teiler aus den zumindest zwei Zahlen definiert, wobei jede der Zahlen gleich der Differenz zwischen ei­ ner Primzahl und Eins ist, und wobei das Produkt aus den zu­ mindest zwei Primzahlen, die den zumindest zwei Zahlen zu­ grunde liegen, gleich dem Modul (N) ist.
Für zwei Primzahlen p, q berechnet sich die Funktion λ dem­ nach folgendermaßen:
λ = (p - 1)(q - 1)/ggT(p - 1, q - 1).
Für drei Primzahlen p, q, r berechnet sich die Funktion λ demnach folgendermaßen:
λ = (p - 1)(q - 1)(r - 1)/ggT(p - 1, q - 1, r - 1).
Analog kann die Funktion λ für beliebige Anzahlen von Prim­ zahlen gebildet werden.
Gemäß bevorzugten Ausführungsbeispielen der vorliegenden Er­ findung wird die Randomisierung des Exponenten unter Verwen­ dung der Carmichaelschen λ-Funktion für eine Berechnung der modularen Exponentiation entweder mit oder ohne chinesischem Restsatz eingesetzt.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Figuren näher erläutert. Es zeigen:
Fig. 1 ein Flußdiagramm des Verfahrens gemäß einem ersten Ausführungsbeispiel der vorliegenden Erfindung ohne Verwendung des chinesischen Restsatzes;
Fig. 2A und 2B ein Flußdiagramm des Verfahrens gemäß einem zweiten Ausführungsbeispiel der vorliegenden Erfin­ dung unter Verwendung des chinesischen Restsatzes;
Fig. 3 ein bekanntes Verfahren zur Berechnung der modularen Exponentiation;
Fig. 4 ein bekanntes Verfahren mit randomisiertem Exponen­ ten zur Berechnung der modularen Exponentiation ohne Verwendung des chinesischen Restsatzes, und
Fig. 5 ein bekanntes Verfahren zum Berechnen der modularen Exponentiation unter Verwendung des chinesischen Restsatzes.
Fig. 1 zeigt ein Flußdiagramm eines Verfahrens gemäß einem ersten Ausführungsbeispiel der vorliegenden Erfindung. Das Verfahren wird durch einen Block 10 begonnen. Hierauf werden die notwendigen Variablen M, d, N und λ in einem Block 12 initialisiert. λ stellt die Carmichaelsche λ-Funktion dar und wird, wie es in Fig. 1 links unten dargestellt ist, aus den Primzahlen p und q berechnet, wobei das Produkt aus den Primzahlen p und q den Modul N ergibt. Es sei darauf hinge­ wiesen, daß die Carmichaelsche Funktion nicht nur dann ver­ wendet werden kann, wenn die beiden Primzahlen p, q die gleiche Länge haben, sondern daß diese Funktion immer genom­ men werden kann, wenn das Produkt aus p und q den Modul N ergibt.
In einem Schritt 14 wird eine Zufallszahl beispielsweise zwischen 0 und 232 gewählt, welche zur Randomisierung des Exponenten verwendet wird. Optional kann in einem Schritt 16 eine Zufallszahl r2 gewählt werden, mit der die Basis, d. h. das Symbol M, randomisiert werden kann, um die Stromauf­ nahme- und Leistungsprofile eines Kryptoprozessors noch ho­ mogener zu verteilen, so daß es Angreifern noch schwerer ge­ macht wird, geheime Informationen herauszufinden.
Es sei jedoch darauf hingewiesen, daß bereits die Randomi­ sierung des Exponenten unter Verwendung der Carmichaelschen λ-Funktion eine bedeutende Erhöhung der Sicherheit gegen In­ formations-Lecks mit sich bringt, und daß die Randomisierung der Basis lediglich optional noch für ein weiteres Absichern eingesetzt werden kann.
Mit der in einem Block 18 gegebenen Bestimmungsgleichung wird dann das verarbeitete Symbol, das im Falle der RSA- Signatur das verschlüsselte Symbol ist, bzw. das im Falle einer RSA-Entschlüsselung das entschlüsselte Symbol ist, be­ rechnet. Der Wert für C wird schließlich in einem Block 20 gespeichert, wonach der Algorithmus in einem Block 22 endet. Bezüglich der Randomisierung der Basis sei folgendes ange­ merkt. Wenn die Basis M durch die Basis M + r2.M ersetzt wird, wobei r0 eine zufällige n-Bit-Zahl ist, findet keine Ände­ rung der Endergebnisse statt, da folgender Zusammenhang gilt:
(M + r0.N) = N mod N.
Bezüglich der Zufallszahlen r1 und r2 sei folgendes ange­ merkt. Es wird bevorzugt, für dieselben 32-Bit-Zahlen zu nehmen, wenn der Modul N ein 1024-Bit-Modul ist. Falls der Modul N ein 2048-Bit-Modul ist, so wird es bevorzugt, für r1 und r2 64-Bit-Zahlen zu nehmen. Es sei insbesondere darauf hingewiesen, daß durch die Länge der Zufallszahlen zwei Din­ ge erreicht werden. Zunächst wird durch die höhere Rando­ misierung die Sicherheit erhöht. Andererseits wird jedoch auch die Verarbeitungsgeschwindigkeit erhöht, die jedoch durch die erfindungsgemäße Verwendung der Carmichaelschen λ- Funktion in jedem Fall besser als bei der Verwendung der Eu­ lerschen ϕ-Funktion ist, da der Zusammenhang zwischen λ und ϕ nicht von der Länge der Zahlen r1 und r2 abhängt. Die Aus­ wahl der Zufallszahlen r1 und r2 liefert also eine wesentli­ che Flexibilität dahingehend, daß mit ein und demselben Al­ gorithmus bzw. mit ein und demselben Chip für eine Vielzahl von verschiedenen Anforderungen ein optimales Verhältnis zwischen Sicherheit einerseits und Berechnungsaufwand ande­ rerseits geschaffen werden kann. Werden die Zufallszahlen sehr kurz gewählt, so ist die Verarbeitung schnell, während die Sicherheit jedoch Einbußen erleiden könnte. Werden dage­ gen für Hochsicherheitsanwendungen, bei denen die Verarbei­ tungsgeschwindigkeit nicht ein wesentliches Kriterium ist, die Zufallszahlen sehr lang verwendet, so kann ohne weiteres ein maximaler Sicherheitsstandard erreicht werden.
In Fig. 2A ist ein zweites Ausführungsbeispiel gemäß der vorliegenden Erfindung dargestellt, bei dem ebenso wie bei dem in Fig. 1 gezeigten ersten Ausführungsbeispiel sowohl der Exponent als auch die Basis randomisiert werden. Im Un­ terschied zu dem in Fig. 1 gezeigten Ausführungsbeispiel findet bei dem in Fig. 2A und Fig. 2B gezeigten Ausführungs­ beispiel die Berechnung der modularen Exponentiation unter Verwendung des chinesischen Restsatzes statt. Hierzu werden in dem Block 12 M, d, p und q initialisiert, wobei M wieder das zu verarbeitende Symbol ist, während d der Exponent ist und p und q zwei Primzahlen sind, deren Produkt dem Modul M entspricht. In einem Schritt 14 wird ein Parameter t ausge­ wählt, wobei der Parameter t eine zufällige Primzahl ist, welche eine Länge zwischen bevorzugterweise 16 und 32 hat. Die Länge in Bits des Parameters t ist jedoch prinzipiell beliebig einstellbar. Darüber hinaus werden in den Schritten 14 und 16 die Zufallszahlen r1 und r2 ausgewählt, wobei in einem Schritt 24 die randomisierte Basis Mt unter Verwendung der Zufallszahl r2 berechnet wird, während in einem Block 26 der randomisierte Exponent dt unter Verwendung der Zufallszahl r1 berechnet wird. Es sei darauf hingewiesen, daß in dem Block 26 bereits die in Fig. 1 links unten gegebene Gleichung für die λ-Funktion ausgeschrieben ist. In den Blöcken 28 bis 34 werden dann gemäß den in Fig. 2A gegebenen Gleichungen die einzelnen Parameter Cpt, Cqt, xpt und Ct be­ rechnet, wobei besonders darauf hingewiesen wird, daß bei­ spielsweise in dem Block 28 die Carmichaelsche λ-Funktion von p und t berechnet wird, während in dem Block 30 die Car­ michaelsche λ-Funktion von q und t berechnet wird.
Es sei darauf hingewiesen, daß sich die Gleichungen in Fig. 2A entsprechend ändern, wenn eine Carmichaelsche Funktion mit mehr als zwei Primzahlen verwendet wird. Hierzu wird auf das "Handbook of Applied Cryptography" verwiesen.
In einem Block 36 wird dann festgestellt, ob der Ausdruck Ct - Cqt) mod t = 0 erfüllt ist. Diese Überprüfung stellt si­ cher, daß keine Fehler während des Ausführen der Berechnun­ gen in den Blöcken 24 bis 34 gemacht wurden. Auch ein Fehler aufgrund eines bewußten Angriffs im Sinne einer Differential Fault Attack, beispielsweise durch Ausüben von physischem Streß auf den Kryptoprozessor, würde hier erkannt werden. Wird die in dem Block 36 gezeigte Bedingung nicht erfüllt, so wird die Berechnung der modularen Exponentiation abgebro­ chen (Block 38). Gleichzeitig wird keinerlei Ausgabe er­ zeugt, so daß ein Angreifer keine Daten erhält, mit denen er eventuell den geheimen Exponenten ermitteln könnte. Wird die in dem Block 36 gegebene Bedingung erfüllt, so wird auf ei­ nen Block 40 übergesprungen, in dem das verarbeitete Symbol gemäß der in Fig. 2b im Block 40 gegebenen Gleichung berech­ net wird. Das verarbeitete Symbol wird schließlich in einem Block 20 gespeichert, woraufhin der Algorithmus in einem Block 22 beendet wird.
Es sei besonders auf die Fehlerüberprüfung im Block 36 hin­ gewiesen. Sie findet im Gegensatz zum Stand der Technik, bei dem das in Fig. 5 gezeigte Flußdiagramm zweimal abgearbeitet wird, wesentlich weniger rechenzeitaufwendig statt, da keine doppelte Abarbeitung erforderlich ist. Block 36 liefert so­ mit gewissermaßen eine Selbsttestfunktion durch Überprüfung der Beziehung zwischen den Parametern Ct, Cqt und t.
Gegenüber der doppelten Abarbeitung des in Fig. 5 darge­ stellten Konzepts zur Fehlerüberprüfung wird somit ein Fak­ tor 2 an Rechenzeitersparnis bei nahezu gleichem Sicher­ heitsstandard neben der Rechenzeitersparnis durch die erfin­ dungsgemäße Randomisierung des Exponenten geschaffen.
Es sei darauf hingewiesen, daß das erfindungsgemäße Verfah­ ren bzw. die erfindungsgemäße Vorrichtung auf verschiedene Arten und Weisen implementiert werden können. So ist selbst­ verständlich eine rein softwaremäßige Implementation auf ei­ nem Allzweckrechner denkbar, um beispielsweise eine RSA-Si­ gnatur oder eine RSA-Entschlüsselung durchzuführen. Noch be­ vorzugter sind jedoch die Anwendungen des erfindungsgemäßen Konzepts in Kryptoprozessoren auf Geldkarten, Smartcards, Ausweisen oder ähnlichem, da diese Elemente in großen Stück­ zahlen verwendet werden sollen und daher Lesegeräte mit be­ grenztem Kostenrahmen unabdingbar sind. Bei solchen Anwen­ dungen kann das erfindungsgemäße Konzept teilweise oder so­ gar vollständig in Hardware realisiert sein.

Claims (13)

1. Verfahren zum Durchführen einer modularen Exponentiati­ on in einem kryptographischen Prozessor unter Verwen­ dung eines Symbols (M), eines Exponenten (d) und eines Moduls (N), mit folgenden Schritten:
Erhalten (14) einer Zufallszahl (r1);
Kombinieren des Exponenten (d) mit dem Produkt aus der Zufallszahl (r1) und einer Randomisierungszahl (λ), um einen randomisierten Exponenten zu erhalten,
wobei (λ) durch den Quotienten aus dem Produkt von zumin­ dest zwei Zahlen und dem größten gemeinsamen Teiler aus den zumindest zwei Zahlen definiert ist, wobei jede der Zahlen gleich der Differenz zwischen einer Primzahl und Eins ist, und wobei das Produkt aus den zumindest zwei Primzahlen, die den zumindest zwei Zahlen zugrunde lie­ gen, gleich dem Modul (N) ist; und
Durchführen (18; 28-40) einer modularen Exponentiation unter Verwendung des Symbols (M), des Moduls (N) und des randomisierten Exponenten, um als Ergebnis ein ver­ arbeitetes Symbol (C) zu erhalten.
2. Verfahren nach Anspruch 1, bei dem im Schritt des Durchführens folgende Gleichung verwendet wird:
C = M(d+r1.λ) mod N,
wobei r1 die Zufallszahl ist, wobei N der Modul ist, wobei λ die Carmichaelsche Funktion ist, wobei d der Exponent ist, wobei M das Symbol ist, und wobei C das verarbeitete Symbol ist.
3. Verfahren nach Anspruch 1, das ferner folgende Schritte aufweist:
Auswählen (16) einer weiteren Zufallszahl (r2);
Kombinieren (24) des Symbols mit dem Produkt aus der weiteren Zufallszahl (r2) und dem Modul (N), um ein ran­ domisiertes Symbol zu erhalten; und
bei dem im Schritt des Durchführens folgende Gleichung verwendet wird:
C = (M + r2.N)(d+r1.λ) mod N,
wobei r1 die Zufallszahl ist, wobei r2 die weitere Zu­ fallszahl ist, wobei N der Modul ist, wobei λ die Car­ michaelsche Funktion ist, wobei d der Exponent ist, wo­ bei M das Symbol ist, und wobei C das verarbeitete Sym­ bol ist.
4. Verfahren nach einem der vorhergehenden Ansprüche, bei dem der Schritt des Durchführens der modularen Exponen­ tiation unter Verwendung des chinesischen Restsatzes durchgeführt wird.
5. Verfahren nach Anspruch 4, bei dem die Randomisierungs­ zahl (λ) unter Verwendung von zwei Primzahlen berechnet wird, und bei dem der Schritt des Durchführens der mo­ dularen Exponentiation unter Verwendung des chinesi­ schen Restsatzes folgende Schritte aufweist:
Auswählen (13) einer dritten Zufallszahl (t):
Berechnen (28) von Cpt unter Verwendung der folgenden Gleichung:
Cpt = (Mt mod pt)^[dt mod[(p - 1)(q - 1)/ggT(p - 1, q - 1)]]mod pt,
wobei Mt ein randomisiertes Symbol darstellt und fol­ gendermaßen gegeben ist:
Mt = M + r2 N
und wobei dt der randomisierte Exponent ist und folgen­ dermaßen gegeben ist:
dt = d + r1.[(p - 1)(q - 1)/ggT(p - 1, q - 1)],
wobei r1 die Zufallszahl ist, wobei r2 die weitere Zu­ fallszahl ist, wobei N der Modul ist, wobei d der Expo­ nent ist, wobei M das Symbol ist, und wobei C das ver­ arbeitete Symbol ist;
Berechnen (30) von Cqt unter Verwendung folgender Glei­ chung:
Cqt = (Mt mod qt)^[dt mod[(q - 1)(t - 1)/ggT(q - 1, t - 1)]] mod pt;
Berechnen (32) von xpt unter Verwendung folgender Glei­ chung:
xpt = (Cpt - Cqt)(q-1 mod p) mod pt;
Berechnen (34) von Ct unter Verwendung der folgenden Gleichung:
Ct = Cqt + xpt q;
Berechnen (40) des verarbeiteten Symbols unter Verwen­ dung der folgenden Gleichung:
C = Ct mod N.
6. Verfahren nach Anspruch 5, das vor dem Schritt des Berechnens (40) des verarbeite­ ten Symbols folgende Schritte aufweist:
Überprüfen (36), ob ein Fehler aufgetreten ist;
falls ein Fehler aufgetreten ist, Abbrechen (38) ohne Ausgabe eines Ergebnisses, und
falls kein Fehler aufgetreten ist, Fortsetzen (40) der modularen Exponentiation.
7. Verfahren nach Anspruch 1, bei dem im Schritt des Aus­ wählens (14) einer Zufallszahl eine 16-32-Bit-Zufalls­ zahl ausgewählt wird, falls der Modul (M) 1024 Bit lang ist, und bei dem eine 32-64-Bit-Zufallszahl ausgewählt wird, falls der Modul (M) 2048 Bit lang ist.
8. Verfahren nach Anspruch 3, bei dem im Schritt des Auswählens (16) einer weiteren Zufallszahl eine 16-32-Bit-Zufallszahl ausgewählt wird, falls der Modul (M) 1024 Bit lang ist, und bei dem eine 32-64-Bit-Zufallszahl ausgewählt wird, falls der Modul (M) 2048 Bit lang ist.
9. Verfahren nach Anspruch 5, bei dem im Schritt des Auswählens (13) einer dritten Zufallszahl eine Primzahl mit einer Länge zwischen 16 und 32 Bit ausgewählt wird.
10. Verfahren nach einem der vorhergehenden Ansprüche, bei dem der Exponent (d) geheim ist, während der Modul (N) bekannt ist.
11. Verfahren nach einem der vorhergehenden Ansprüche, bei dem der kryptographische Prozessor unter Verwendung der modularen Exponentiation eine Signatur (C) des Symbols (M) erzeugt, wobei das Symbol die zu signierende Nach­ richt darstellt, während das verarbeitete Symbol die signierte Nachricht darstellt.
12. Verfahren nach einem der Ansprüche 1 bis 10, bei dem der kryptographische Prozessor unter Verwendung der mo­ dularen Exponentiation eine Entschlüsselung durchführt, so daß das Symbol (M) eine verschlüsselte Nachricht darstellt und das verarbeitete Symbol (C) eine ent­ schlüsselte Nachricht darstellt.
13. Vorrichtung zum Durchführen einer modularen Exponentia­ tion, mit folgenden Merkmalen:
einer Einrichtung zum Erhalten (14) einer Zufallszahl (r1);
einer Einrichtung zum Kombinieren des Exponenten (d) mit dem Produkt aus der Zufallszahl (r1) und einer Ran­ domisierungszahl (λ), um einen randomisierten Exponenten zu erhalten, wobei (λ) durch den Quotienten aus dem Pro­ dukt von zumindest zwei Zahlen und dem größten gemein­ samen Teiler aus den zumindest zwei Zahlen definiert ist, wobei jede der Zahlen gleich der Differenz zwi­ schen einer Primzahl und Eins ist, und wobei das Pro­ dukt aus den zumindest zwei Primzahlen, die den zumin­ dest zwei Zahlen zugrunde liegen, gleich dem Modul (N) ist; und
einer Einrichtung zum Durchführen (18; 28-40) einer mo­ dularen Exponentiation unter Verwendung des Symbols (M), des Moduls (N) und des randomisierten Exponenten, um als Ergebnis ein verarbeitetes Symbol (C) zu erhal­ ten.
DE10042234A 2000-08-28 2000-08-28 Verfahren und Vorrichtung zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor Expired - Fee Related DE10042234C2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE10042234A DE10042234C2 (de) 2000-08-28 2000-08-28 Verfahren und Vorrichtung zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor
AU2001287675A AU2001287675A1 (en) 2000-08-28 2001-08-10 Method and device for carrying out a modular exponentiation in a cryptographic processor
PCT/EP2001/009285 WO2002019065A2 (de) 2000-08-28 2001-08-10 Verfahren und vorrichtung zum durchführen einer modularen exponentiation in einem kryptographischen prozessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10042234A DE10042234C2 (de) 2000-08-28 2000-08-28 Verfahren und Vorrichtung zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor

Publications (2)

Publication Number Publication Date
DE10042234A1 true DE10042234A1 (de) 2002-03-14
DE10042234C2 DE10042234C2 (de) 2002-06-20

Family

ID=7654065

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10042234A Expired - Fee Related DE10042234C2 (de) 2000-08-28 2000-08-28 Verfahren und Vorrichtung zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor

Country Status (3)

Country Link
AU (1) AU2001287675A1 (de)
DE (1) DE10042234C2 (de)
WO (1) WO2002019065A2 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004070497A2 (de) * 2003-02-04 2004-08-19 Infineon Technologies Ag Modulare exponentiation mit randomisierten exponenten
FR2869430A1 (fr) * 2004-04-27 2005-10-28 St Microelectronics Sa Controle de l'execution d'un algorithme par un circuit integre
WO2009136361A1 (en) * 2008-05-07 2009-11-12 Koninklijke Philips Electronics N.V. Exponent obfuscation
DE102010039273A1 (de) * 2010-08-12 2012-02-16 Infineon Technologies Ag Kryptographi-Prozessor, Chipkarte und Verfahren zur Berechnung eines Ergebnisses einer Exponentiation
WO2013041200A1 (de) * 2011-09-19 2013-03-28 Giesecke & Devrient Gmbh Gegen ausspähung schützbarer geheimer rsa verschlüsselungsexponent

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10326057B4 (de) * 2003-06-11 2010-06-10 Cv Cryptovision Gmbh Gegen Seitenkanalangriffe geschütztes Verfahren zum Testen einer natürlichen Zahl auf Primalität

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5046094A (en) * 1989-02-02 1991-09-03 Kabushiki Kaisha Toshiba Server-aided computation method and distributed information processing unit
US5991415A (en) * 1997-05-12 1999-11-23 Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science Method and apparatus for protecting public key schemes from timing and fault attacks
DE19828936A1 (de) * 1998-05-29 1999-12-02 Siemens Ag Verfahren und Vorrichtung zum Verarbeiten von Daten

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5046094A (en) * 1989-02-02 1991-09-03 Kabushiki Kaisha Toshiba Server-aided computation method and distributed information processing unit
US5991415A (en) * 1997-05-12 1999-11-23 Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science Method and apparatus for protecting public key schemes from timing and fault attacks
DE19828936A1 (de) * 1998-05-29 1999-12-02 Siemens Ag Verfahren und Vorrichtung zum Verarbeiten von Daten

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SAKAI, R. u.a. New key generation algorithm for RSA cryptosystem, in: IEICE Trans. Fundamentals, Vol. E77-A, No. 1, Jan. 1994, S. 89-97 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004070497A2 (de) * 2003-02-04 2004-08-19 Infineon Technologies Ag Modulare exponentiation mit randomisierten exponenten
WO2004070497A3 (de) * 2003-02-04 2005-01-06 Infineon Technologies Ag Modulare exponentiation mit randomisierten exponenten
US7908641B2 (en) 2003-02-04 2011-03-15 Infineon Technologies Ag Modular exponentiation with randomized exponent
FR2869430A1 (fr) * 2004-04-27 2005-10-28 St Microelectronics Sa Controle de l'execution d'un algorithme par un circuit integre
EP1591866A1 (de) * 2004-04-27 2005-11-02 St Microelectronics S.A. Kontrolle der Ausführung eines Algorithmuses durch eine integrierte Schaltung
US7797574B2 (en) 2004-04-27 2010-09-14 Stmicroelectronics S.A. Control of the execution of an algorithm by an integrated circuit
WO2009136361A1 (en) * 2008-05-07 2009-11-12 Koninklijke Philips Electronics N.V. Exponent obfuscation
US8600047B2 (en) 2008-05-07 2013-12-03 Irdeto Corporate B.V. Exponent obfuscation
EP2669789A3 (de) * 2008-05-07 2014-06-25 Irdeto Corporate B.V. Verschattung von Exponenten
DE102010039273A1 (de) * 2010-08-12 2012-02-16 Infineon Technologies Ag Kryptographi-Prozessor, Chipkarte und Verfahren zur Berechnung eines Ergebnisses einer Exponentiation
DE102010039273B4 (de) * 2010-08-12 2014-12-04 Infineon Technologies Ag Kryptographie-Prozessor, Chipkarte und Verfahren zur Berechnung eines Ergebnisses einer Exponentiation
WO2013041200A1 (de) * 2011-09-19 2013-03-28 Giesecke & Devrient Gmbh Gegen ausspähung schützbarer geheimer rsa verschlüsselungsexponent

Also Published As

Publication number Publication date
WO2002019065A8 (de) 2002-09-26
AU2001287675A1 (en) 2002-03-13
WO2002019065A2 (de) 2002-03-07
DE10042234C2 (de) 2002-06-20

Similar Documents

Publication Publication Date Title
DE69828787T2 (de) Verbessertes verfahren und vorrichtung zum schutz eines verschlüsselungsverfahrens mit öffentlichem schlüssel gegen angriffe mit zeitmessung und fehlereinspeisung
DE69930334T2 (de) IC-Karte ausgerüstet mit einer Verarbeitungsanlage für Elliptische-Kurven-Verschlüsselung
WO2001048974A1 (de) Tragbarer datenträger mit zugriffsschutz durch schlüsselteilung
DE112008000668T5 (de) Kryptografisches Verfahren und System
EP2197149A1 (de) Verfahren und Vorrichtung zum Verarbeiten von Daten
DE102005028662A1 (de) Verfahren und Vorrichtung zum Berechnen einer Polynom-Multiplikation, insbesondere für die elliptische Kurven-Kryptographie
EP1922837B1 (de) Verfahren zum sicheren ver- oder entschlüsseln einer nachricht
DE602004006628T2 (de) Verfahren zur gesicherten ausführung eines rsa kryptographischen algorithmus, sowie diesbezüglicher baustein.
EP1290545B1 (de) Kryptographisches verfahren und kryptographische vorrichtung
DE102008051447B9 (de) Verfahren und Vorrichtung zum Schützen einer RSA-Berechnung an einer Ausgabe mit Hilfe des chinesischen Restsatzes
WO2013060467A1 (de) Effiziente primzahlprüfung
DE102005024609A1 (de) Bestimmung einer modularen Inversen
DE10143728A1 (de) Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer modularen Exponentiation
EP1346509B1 (de) Verfahren und Vorrichtung zum Ermitteln eines Schlüsselpaars und zum Erzeugen von RSA-Sclüsseln
DE60320016T2 (de) Verfahren zur ganzzahldivision gegen angriffe an versteckten kanälen
DE112018002723B4 (de) System, verfahren und vorrichtung zur verschleierung von vorrichtungsoperationen
DE10042234C2 (de) Verfahren und Vorrichtung zum Durchführen einer modularen Exponentiation in einem kryptographischen Prozessor
EP1540880A1 (de) Geschützte kryptographische berechnung
EP1442391B1 (de) Verfahren und vorrichtung zum absichern einer berechnung in einem kryptographischen algorithmus
EP1454260B1 (de) Verfahren und vorrichtung zum absichern einer exponentiations-berechnung mittels dem chinesischen restsatz (crt)
DE60221863T2 (de) Verfahren zur implementierung eines kryptographischen algorithmus zum finden des öffentlichen exponenten in einer elektronischen komponente
DE10162496B4 (de) Verfahren und Vorrichtung zum Absichern einer Berechnung in einem kryptographischen Algorithmus
EP2128754B1 (de) Sichere sliding window exponentiation
DE10326057B4 (de) Gegen Seitenkanalangriffe geschütztes Verfahren zum Testen einer natürlichen Zahl auf Primalität
DE102004001659B4 (de) Vorrichtung und Verfahren zum Konvertieren einer ersten Nachricht in eine zweite Nachricht

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee