DE102008056332A1 - Method for safe calculation of calculation result of cryptographic calculation, involves carrying out cryptographic calculation two times in data carrier - Google Patents
Method for safe calculation of calculation result of cryptographic calculation, involves carrying out cryptographic calculation two times in data carrier Download PDFInfo
- Publication number
- DE102008056332A1 DE102008056332A1 DE102008056332A DE102008056332A DE102008056332A1 DE 102008056332 A1 DE102008056332 A1 DE 102008056332A1 DE 102008056332 A DE102008056332 A DE 102008056332A DE 102008056332 A DE102008056332 A DE 102008056332A DE 102008056332 A1 DE102008056332 A1 DE 102008056332A1
- Authority
- DE
- Germany
- Prior art keywords
- calculation
- calculation result
- data carrier
- cryptographic
- result
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/72—Protecting 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 in cryptographic circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1497—Details of time redundant execution on a single processing unit
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
Description
Die Erfindung betrifft ein Verfahren zum sicheren Berechnen eines Rechenergebnisses einer kryptographischen Berechnung.The The invention relates to a method for the reliable calculation of a calculation result a cryptographic calculation.
Ein
Datenträger im Sinn der Erfindung ist ein Rechnersystem,
bei dem die Ressourcen, d. h. Speicherressourcen und/oder Rechenkapazität
(Rechenleistung) begrenzt sind, z. B. eine Chipkarte (Smart Card,
Mikroprozessor-Chipkarte). Der Datenträger hat einen Körper,
in dem eine CPU (ein Mikroprozessor) angeordnet ist, und der jede
beliebige standardisierte oder nicht standardisierte Gestalt haben
kann, beispielsweise die Gestalt einer flachen Chipkarte ohne Norm
oder nach einer Norm wie z. B.
Vielfach werden mit Datenträgern kryptographische Berechnungen durchgeführt, beispielsweise Ver- und Entschlüsselungen, Authentisierungen oder Signaturberechungen, bei denen geheime Daten verarbeitet werden, beispielsweise in dem Datenträger abgespeicherte geheime Schlüssel.frequently Cryptographic calculations are performed on disks for example, encryption and decryption, authentication or signature computations that process secret data for example, in the disk stored secret Key.
Durch Seitenkanalangriffe, insbesondere durch differentielle Fehleranalyse (differential fault analysis, DFA) lassen sich die geheimen Daten ausspähen. Bei einem DFA-Angriff werden, während in einem Datenträger eine kryptographische Berechnung durchgeführt wird, durch physikalische Einflüsse (z. B. Hitze, Strahlung) von außerhalb des Datenträgers Speicherfehler in einzelnen Bits in Speichern des Datenträgers erzeugt, so dass die Berechnung ein falsches Rechenergebnis liefert. Durch mathematische Analyse ausrei chend vieler fehlerhafter Rechenergebnisse lassen sich die geheimen Daten ermitteln.By Side channel attacks, in particular by differential error analysis (differential fault analysis, DFA) can be the secret data spy. During a DFA attack, while performed a cryptographic calculation in a disk is caused by physical influences (eg heat, radiation) from outside the disk storage error generated in individual bits in memories of the volume, so that the calculation gives a wrong calculation result. By mathematical analysis of sufficient number of incorrect calculation results The secret data can be determined.
Um DFA-Angriffe auf einen Datenträger zu erkennen, ist es bekannt, eine kryptographische Berechnung in dem Datenträger zwei Mal durchzuführen, die Rechenergebnisse der beiden Berechnungen zu vergleichen, und das Rechenergebnis als fehlerhaft zu verwerfen oder zurückzuhalten, falls die beiden Rechenergebnisse nicht übereinstimmen.Around Recognizing DFA attacks on a disk is it known, a cryptographic calculation in the disk to perform twice, the results of both To compare calculations, and the calculation result as faulty to reject or withhold, if the two calculation results do not match.
Teilweise werden Datenträger im Fall eines als fehlerhaft verworfenen Rechenergebnisses unwiderruflich gesperrt. Ein endgültiges Sperren des Datenträgers anlässlich von nicht übereinstimmenden Rechenergebnissen der doppelten Berechnung ist sicher, birgt aber auch die Gefahr, dass ein Datenträger versehentlich gesperrt wird. Daher wird bei manchen Datenträgern bei nicht übereinstimmenden Rechenergebnissen der Doppelberechnung das Rechenergebnis verworfen ohne den Datenträger zu sperren. Dies ermöglicht einem Angreifer, die doppelte Berechnung beliebig oft zu wiederholen und dadurch möglicherweise geheime Daten auszuspähen.Partially in the case of one disk are rejected as faulty Calculation result irrevocably locked. A definitive one Lock the volume due to mismatched computational results the double calculation is safe, but also carries the risk that a data carrier is locked by mistake. Therefore will mismatch on some disks Calculation results of the double calculation discarded the calculation result without locking the volume. this makes possible an attacker to repeat the double calculation as often as he likes and thereby potentially spy on secret data.
Der Erfindung liegt die Aufgabe zu Grunde, ein sicheres und zugleich bedienungsfreundliches Verfahren zum Berechnen eines Rechenergebnisses einer kryptographischen Berechnung zu schaffen.Of the Invention is based on the object, a safe and at the same time easy to use method for calculating a calculation result of a to create cryptographic calculation.
Die Aufgabe wird gelöst durch ein Verfahren nach dem unabhängigen Verfahrensanspruch. Vorteilhafte Ausgestaltungen der Erfindung sind in den abhängigen Ansprüchen angegeben.The The object is achieved by a method according to the independent Method claim. Advantageous embodiments of the invention are specified in the dependent claims.
Das erfindungsgemäße Verfahren gemäß Anspruch 1 ist zum sicheren Berechnen eines Rechenergebnisses einer kryptographischen Berechnung eingerichtet, wobei in einem Datenträger eine kryptographische Berechnung zwei Mal durchgeführt wird, wobei in den beiden Berechnungen ein erstes Rechenergebnis und ein zweites Rechenergebnis berechnet werden, und das erste Rechenergebnis und das zweite Rechenergebnis miteinander verglichen werden. Das Verfahren zeichnet sich dadurch aus, dass in dem Fall, dass gemäß dem Vergleich das erste Rechenergebnis und das zweite Rechenergebnis nicht übereinstimmen, ein Zählerstand eines Angriffszählers inkrementiert wird, und der Datenträger gesperrt wird, sobald der Zählerstand einen vorbestimmten Grenzzählerstand erreicht oder übersteigt.The inventive method according to claim 1 is for safely calculating a calculation result of a cryptographic Calculation set up, wherein in a data carrier a cryptographic Calculation is performed twice, being in the two Calculations calculated a first calculation result and a second calculation result and the first calculation result and the second calculation result compared with each other. The method is characterized that in the case that according to the comparison the first calculation result and the second calculation result do not match, a count of an attack counter is incremented is, and the disk is locked as soon as the count reaches or exceeds a predetermined limit count.
Bei dem erfindungsgemäßen Verfahren wird der Datenträger nicht sofort gesperrt, sobald – möglicherweise versehentlich – nicht übereinstimmende Rechenergebnisse einer doppelten Berechnung festgestellt werden. Hierdurch ist das Verfahren benutzerfreundlich. Andererseits ist die Anzahl möglicher nicht übereinstimmender Rechenergebnisse der Doppelberech nung durch den Angriffszähler auf den Grenzzählerstand begrenzt. DFA-Angriffe benötigen dagegen eine hohe Anzahl von Wiederholungen ein- und derselben Berechnung, damit eine Chance besteht, geheime Daten zu ermitteln. Bei geeignet gewähltem Grenzzählerstand ist somit ein erfolgreicher DFA-Angriff so gut wie unmöglich gemacht.In the method according to the invention, the data carrier is not blocked immediately as soon as - possibly accidentally - mismatched calculation results of a double calculation be put. This makes the procedure user-friendly. On the other hand, the number of possible mismatched calculation results of the double calculation by the attack counter is limited to the limit count. DFA attacks, on the other hand, require a high number of repetitions of the same calculation in order to have a chance to discover secret data. With a suitably selected limit count, a successful DFA attack is virtually impossible.
Daher ist gemäß Anspruch 1 ein sicheres und zugleich bedienungsfreundliches Verfahren zum Berechnen eines Rechenergebnisses einer kryptographischen Berechnung geschaffen.Therefore is a safe and at the same time according to claim 1 easy-to-use method for calculating a calculation result created a cryptographic calculation.
Das zweimalige Berechnen des Rechenergebnisses an sich erfolgt wie aus dem Stand der Technik, z. B. dem oben genannten, bekannt.The two-time calculation of the calculation result per se takes place as off the prior art, for. As the above, known.
Falls das erste und zweite Rechenergebnis nicht übereinstimmen, wird das Rechenergebnis vorzugsweise verworfen. Falls das erste und zweite Rechenergebnis übereinstimmen, wird das Rechenergebnis vorzugsweise verwendet, z. B. zur Authentisierung, Signaturberechnung, Ver-/Entschlüsselung.If the first and second results do not match, the calculation result is preferably discarded. If the first and the second calculation result, the calculation result becomes preferably used, for. For authentication, signature calculation, Encryption / decryption.
Wahlweise werden bei der kryptographischen Berechnung geheime Daten verarbeitet, beispielsweise geheime Schlüssel, die wahlweise in dem Datenträger gesichert abgespeichert sind, oder/und geheime Nachrichten, die mit dem Schlüssel verschlüsselt werden sollen.Optional secret data is processed during the cryptographic calculation, For example, secret keys that are optionally in the Data carriers are stored securely, and / or secret Messages encrypted with the key should be.
Als kryptographische Berechnung wird beispielsweise eine Berechnung zur Verschlüsselung oder Entschlüsselung von Daten mittels eines Schlüssels, zur Authentisierung oder zur Signaturberechnung durchgeführt, oder zumindest ein Teil einer Verschlüsselung, Entschlüsselung, Authentisierung oder Signaturberechnung.When Cryptographic calculation becomes, for example, a calculation for encryption or decryption of data by means of a key, for authentication or for Signature calculation performed, or at least a part encryption, decryption, authentication or Signature calculation.
Der Grenzzählerstand ist vorzugsweise geeignet gewählt, so dass einerseits ein Nutzer des Datenträgers einige Fehler „frei” hat, andererseits die Anzahl verfügbarer Versuche mit nicht übereinstimmenden Rechenergebnissen der doppelten Berechnung zu niedrig ist, um einen erfolgreichen DFA-Angriff zu ermöglichen.Of the Grenzzählerstand is preferably selected suitably so that on the one hand a user of the data carrier has some errors "free", on the other hand, the number of available experiments with mismatched ones Calculation results of the double calculation is too low to one to enable successful DFA attack.
Wahlweise wird bei dem Angriffszähler ein Anfangszählerstand eingestellt. Wahlweise wird der Zählerstand beginnend vom Anfangszählerstand inkrementiert. Wahlweise ist der Anfangszählerstand Null und der Grenzzählerstand von Null unterschiedlich (z. B. fünf oder zehn oder hundert), so dass das Inkrementieren des Zählerstands von Null an beginnt. Alternativ ist der Anfangszählerstand von Null unterschiedlich und der Grenzzählerstand Null, so dass das Sperren des Datenträgers beim Zählerstand Null erfolgt.Optional At the attack counter, an initial count becomes set. Optionally, the counter reading starts from the Incremented initial count. Optionally, the initial count is zero and the limit count varies from zero (e.g. five or ten or one hundred), so that incrementing the meter reading starts from zero. Alternatively, the Initial count of zero different and the count limit Zero, allowing the locking of the disk when counting Zero occurs.
Unter einem Inkrementieren des Zählerstands wird je nach Ausführungsform ein (betragsmäßiges) Erhöhen des Zählerstands (bei Anfangszählerstand Null) oder Verringern des Zählerstands (bei Grenzzählerstand Null) verstanden.Under incrementing the count will, depending on the embodiment a (amount-based) increase of the meter reading (at initial count zero) or decreasing the count (at Limit count zero) understood.
Ein erfindungsgemäßer Datenträger ist ausgestattet mit einem Mikroprozessor, mindestens einem Speicher und einem Angriffszähler, und ist dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen.One Inventive disk is equipped with a microprocessor, at least one memory and an attack counter, and is adapted to an inventive Perform procedure.
Im Folgenden wird die Erfindung an Hand von Ausführungsbeispielen und unter Bezugnahme auf die Zeichnung näher erläutert, in der zeigt:in the The invention is based on exemplary embodiments and explained in more detail with reference to the drawing, in the shows:
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list The documents listed by the applicant have been automated generated and is solely for better information recorded by the reader. The list is not part of the German Patent or utility model application. The DPMA takes over no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- - WO 03/085991 A1 [0006] WO 03/085991 A1 [0006]
- - EP 1569118 A2 [0007] - EP 1569118 A2 [0007]
Zitierte Nicht-PatentliteraturCited non-patent literature
- - ISO 7810 [0002] - ISO 7810 [0002]
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102008056332A DE102008056332A1 (en) | 2008-11-07 | 2008-11-07 | Method for safe calculation of calculation result of cryptographic calculation, involves carrying out cryptographic calculation two times in data carrier |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102008056332A DE102008056332A1 (en) | 2008-11-07 | 2008-11-07 | Method for safe calculation of calculation result of cryptographic calculation, involves carrying out cryptographic calculation two times in data carrier |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102008056332A1 true DE102008056332A1 (en) | 2010-05-20 |
Family
ID=42104916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102008056332A Ceased DE102008056332A1 (en) | 2008-11-07 | 2008-11-07 | Method for safe calculation of calculation result of cryptographic calculation, involves carrying out cryptographic calculation two times in data carrier |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102008056332A1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19506921C2 (en) * | 1995-02-28 | 1997-03-20 | Orga Kartensysteme Gmbh | Method for performing a secret code comparison on a microprocessor-based, portable data carrier |
DE19831884C2 (en) * | 1998-07-17 | 2001-09-20 | Ibm | System and method for protection against analytical spying on secret information |
WO2003085991A2 (en) | 2002-03-29 | 2003-10-16 | Sony Electronics, Inc. | Mixing of multiple streams of audio/video data from multiple sources within a receiving device allowing external control |
EP1569118A2 (en) | 2004-02-24 | 2005-08-31 | Giesecke & Devrient GmbH | Method for safe calculation of results in a microprocessor system |
-
2008
- 2008-11-07 DE DE102008056332A patent/DE102008056332A1/en not_active Ceased
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19506921C2 (en) * | 1995-02-28 | 1997-03-20 | Orga Kartensysteme Gmbh | Method for performing a secret code comparison on a microprocessor-based, portable data carrier |
DE19831884C2 (en) * | 1998-07-17 | 2001-09-20 | Ibm | System and method for protection against analytical spying on secret information |
WO2003085991A2 (en) | 2002-03-29 | 2003-10-16 | Sony Electronics, Inc. | Mixing of multiple streams of audio/video data from multiple sources within a receiving device allowing external control |
EP1569118A2 (en) | 2004-02-24 | 2005-08-31 | Giesecke & Devrient GmbH | Method for safe calculation of results in a microprocessor system |
Non-Patent Citations (1)
Title |
---|
ISO 7810 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4339460C1 (en) | Method for authenticating a system part by another system part of an information transmission system according to the challenge and response principle | |
DE69521641T2 (en) | Device limited to digital signatures and message verification, for secure exchange of data according to the RSA method, especially integrated on a smart card | |
DE68928170T2 (en) | CLASSIFICATION SYSTEM FOR PERSONAL SECRET NUMBERS | |
DE69626223T2 (en) | DEVICE AND METHOD FOR CRYPTOGRAPHICALLY SECURE COMMUNICATION | |
EP1214812A1 (en) | Method of data protection | |
EP1706957B1 (en) | Biometric authentication | |
DE10005487A1 (en) | User identification control at service terminal - using separate code generator to generate code for transmission from user terminal to service terminal for decryption and/or verification | |
WO1999048056A1 (en) | Method and device for verifying a biometric characteristic | |
EP2609711B1 (en) | Method for authenticating a portable data storage medium | |
EP0570924A2 (en) | Authentication method of one system-participant by another system-participant in an information transfer system composed of a terminal and of a portable data carrier | |
DE60108849T2 (en) | BIOMETRIC IDENTIFICATION METHOD, PORTABLE ELECTRONIC DEVICE, AND ELECTRONIC DEVICE FOR BIOMETRIC DATA CAPACITY FOR USE WITH ITSELIER | |
DE102008056332A1 (en) | Method for safe calculation of calculation result of cryptographic calculation, involves carrying out cryptographic calculation two times in data carrier | |
DE60105622T2 (en) | ACCESS SECURITY WITH A SECRET CODE FOR A DATA PROCESSOR | |
DE102012015158A1 (en) | Protected against spying protected cryptographic calculation | |
EP2127294B1 (en) | Authentication of portable data carriers | |
DE19818998B4 (en) | Method for protecting against attacks on the authentication algorithm or the secret key of a chip card | |
DE60106893T2 (en) | DETECTION OF FALSE ACCEPTANCE IN BIOMETRIC TESTING | |
WO2008034653A1 (en) | Method and arrangements for establishing an unauthorized manipulation of an electrical device | |
DE102012020367A1 (en) | Electronic device | |
DE19841862A1 (en) | Portable electronic communications instrument, combines typical functions of mobile telephone, electronic personal organizer, or pocket calculator, and chip card applications | |
DE112017005315T5 (en) | Data processing device and computer program | |
EP2281259B1 (en) | Variable pin for hardware token | |
DE102010055237A1 (en) | Method for protected execution of a cryptographic calculation | |
EP1715617B1 (en) | Method for operating a system with a portable data carrier and a terminal device | |
DE102006049814B4 (en) | Method and device for generating and storing auxiliary variables assigned to a secret combination and for recovering the secret combination |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |