DE102013014214A1 - Microprocessor device with access-protected data object - Google Patents

Microprocessor device with access-protected data object Download PDF

Info

Publication number
DE102013014214A1
DE102013014214A1 DE102013014214.8A DE102013014214A DE102013014214A1 DE 102013014214 A1 DE102013014214 A1 DE 102013014214A1 DE 102013014214 A DE102013014214 A DE 102013014214A DE 102013014214 A1 DE102013014214 A1 DE 102013014214A1
Authority
DE
Germany
Prior art keywords
verification
access
data object
input
token
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
Application number
DE102013014214.8A
Other languages
German (de)
Inventor
Manfred Hockauf
Rainer Urian
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.)
Giesecke and Devrient Mobile Security GmbH
Original Assignee
Giesecke and Devrient GmbH
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 Giesecke and Devrient GmbH filed Critical Giesecke and Devrient GmbH
Priority to DE102013014214.8A priority Critical patent/DE102013014214A1/en
Publication of DE102013014214A1 publication Critical patent/DE102013014214A1/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • 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
    • H04L9/004Countermeasures against attacks on cryptographic mechanisms for fault attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

Die Erfindung schafft eine Mikroprozessoreinrichtung, mit einem darin zugriffsgesichert abgespeicherten Datenobjekt (K), und mit einer Zugriffssicherungseinrichtung, die dazu eingerichtet ist, einen gesicherten Zugriff auf das Datenobjekt (K) durchzuführen, und die eine Verifizierungseinrichtung und eine Zugriffseinrichtung umfasst, wobei – die Verifizierungseinrichtung dazu eingerichtet ist, einen Verifizierungsvorgang durchzuführen, bei dem eine in die Zugriffssicherungseinrichtung eingegebene Verifizierungseingabe zu einer Verifizierungsausgabe verarbeitet wird, und – die Zugriffseinrichtung dazu eingerichtet ist, in Abhängigkeit von der Verifizierungsausgabe einen Zugriffsvorgang des Zugreifens auf das Datenobjekt (K) durchzuführen, dadurch gekennzeichnet, dass die Zugriffssicherungseinrichtung gegen Fehlerangriffe gesichert ist, indem – das Datenobjekt (K) verschlüsselt (eK) abgespeichert ist, – die Verifizierungseinrichtung dazu eingerichtet ist, als Verifizierungsausgabe ein Zugriffstoken zu erzeugen, und – die Zugriffseinrichtung dazu eingerichtet ist, den Zugriffsvorgang derart in Abhängigkeit von der Verifizierungsausgabe durchzuführen, dass dabei das verschlüsselte Datenobjekt (eK) unter Verwendung des erzeugten Zugriffstokens entschlüsselt wird.The invention provides a microprocessor device with a data object (K) stored in an access-protected manner, and with an access protection device which is set up to perform secure access to the data object (K) and which comprises a verification device and an access device, wherein - the verification device is arranged to perform a verification process in which a verification input entered into the access protection device is processed into a verification output, and - the access device is adapted to perform an access operation of accessing the data object (K) in dependence on the verification output, characterized that the access protection device is secured against error attacks in that - the data object (K) is encrypted (eK) stored, - the verification device is set up as a verification device to generate an access token, and - the access device is adapted to perform the access operation in dependence on the verification output, thereby decrypting the encrypted data object (eK) using the generated access token.

Description

Die Erfindung betrifft eine Mikroprozessoreinrichtung mit einem darin zugriffsgesichert abgespeicherten Datenobjekt und mit einer Zugriffssicherungseinrichtung, die dazu eingerichtet ist, einen gesicherten Zugriff auf das Datenobjekt durchzuführen, gemäß dem Oberbegriff von Anspruch 1.The invention relates to a microprocessor device having a data object stored therein in an access-protected manner and having an access security device which is set up to perform secure access to the data object, according to the preamble of claim 1.

Die Mikroprozessoreinrichtung ist wahlweise in einem mobilen Sicherheitsgerät (mobile secure device) implementiert. Als mobiles Sicherheitsgerät kann wahlweise vorgesehen sein: ein Datenträger, beispielsweise Chipmodul, Chipkarte, Smartcard oder Token; oder ein mobiles Endgerät, beispielsweise ein Mobiltelefon, Smartphone, Tablet PC oder PDA.The microprocessor device is optionally implemented in a mobile security device. As a mobile security device can optionally be provided: a disk, such as chip module, smart card, smart card or token; or a mobile terminal, for example a mobile phone, smartphone, tablet PC or PDA.

In Mikroprozessoreinrichtungen werden verbreitet schätzenswerte Datenobjekte abgespeichert. Beispielsweise ist, falls die Mikroprozessoreinrichtung in einer Signaturchipkarte oder in einem mobilen Endgerät mit Signaturapplikation eingerichtet ist, in der Mikroprozessoreinrichtung ein Signaturschlüssel abgespeichert, mittels dessen sich eine digitale Signatur erzeugen lässt. Die Signatur kann der Inhaber des Signaturschlüssels dazu verwenden, um sich gegenüber Applikationen, die außerhalb seiner Signaturchipkarte oder seines mobilen Endgeräts, auf einem entfernten Server, eingerichtet sind, zu authentisieren. Ein Beispiel für eine Signaturchipkarte ist der deutsche Personalausweis mit Signaturfunktion, der die Nutzung einer Reihe von Applikationen ermöglicht, mit der im Personalausweis erzeugten Signatur als Authentisierungsmittel.In microprocessor devices widely estimated data objects are stored. For example, if the microprocessor device is set up in a signature chip card or in a mobile terminal with a signature application, a signature key is stored in the microprocessor device, by means of which a digital signature can be generated. The signature may be used by the owner of the signature key to authenticate himself to applications set up outside of his signature chip card or mobile terminal on a remote server. An example of a signature chipcard is the German identity card with signature function, which allows the use of a number of applications, with the signature generated in the identity card as authentication means.

Um Datenobjekte zu schützen werden zwei unterschiedliche Ansätze verfolgt. Der eine besteht darin, den Zugriff auf das Datenobjekt zu verhindern. Der andere, das Datenobjekt für einen Angreifer unbrauchbar zu machen.To protect data objects two different approaches are pursued. One is to prevent access to the data object. The other is to disable the data object for an attacker.

Zugriffschutz wird beispielsweise durch das Erfordernis der Eingabe eines Zugriffscodes, beispielsweise einer PIN (personal identification number), oder eines Passworts erreicht. Bei Eingabe des richtigen Zugriffscodes wird der Zugriff auf das Datenobjekt gewährt. Bei Eingabe eines falschen Zugriffscodes wird der Zugriff auf das Datenobjekt verwehrt. Dabei wird mittels einer binären Entscheidung Zugriffscode richtig/falsch festgelegt, ob der Zugriff gewährt wird oder nicht.Access protection is achieved, for example, by the requirement of entering an access code, for example a PIN (personal identification number), or a password. Entering the correct access code grants access to the data object. If an incorrect access code is entered, access to the data object is denied. In this case, by means of a binary decision access code is set correctly / incorrectly, whether the access is granted or not.

Daten für Angreifer unbrauchbar zu machen, wird beispielsweise dadurch erreicht, dass die Daten verschlüsselt abgespeichert werden. Zugriff auf die verschlüsselten Daten kann dabei jedermann haben. Nur der Inhaber des zur Entschlüsselung notwendigen Entschlüsselungsschlüssels kann die Daten entschlüsseln. Somit hat nur der Inhaber des Entschlüsselungsschlüssels Zugriff auf die Daten in einer verwendbaren Form.Making data unusable for attackers is achieved, for example, by encrypting the data. Anyone can access the encrypted data. Only the owner of the decryption key necessary for decryption can decrypt the data. Thus, only the owner of the decryption key has access to the data in a usable form.

Auch verschlüsselt abgespeicherte Daten können zusätzlich durch einen Zugriffscode (z. B. PIN) gesichert sein, damit selbst verschlüsselte, an sich unbrauchbare Daten nicht unberechtigt ausgelesen werden können.Encrypted stored data can additionally be secured by an access code (eg PIN), so that even encrypted, in itself useless data can not be read out without authorization.

Seit längerer Zeit sind Fehlerangriffe auf Mikroprozessoreinrichtungen bekannt. Dabei wird durch eine Störung, beispielsweise einen Lichtblitz oder eine Spannungsspitze, der Arbeitsablauf der Mikroprozessoreinrichtung gestört. Insbesondere kann durch einen Fehlerangriff die binäre Entscheidung über einen Zugriffscode gekippt werden, so dass trotz der Eingabe eines falsches Zugriffscodes der weitere Arbeitsablauf im Mikroprozessor so abläuft, als wäre der richtige oder ein richtiger Zugriffscode eingegeben worden. Fehlerangriffe sind beispielsweise beschrieben in D. Boneh, R. A. DeMillo, and R. J. Lipton, „On the importance of checking cryptographic protocols for faults”, in Advances in Cryptology – EUROCRYPT'97, vol. 1233 of Lecture Notes in Computer Science, pages 37–51. Springer-Verlag, 1997 .For a long time, error attacks on microprocessor devices have been known. In this case, the operation of the microprocessor device is disturbed by a fault, such as a flash of light or a voltage spike. In particular, the binary decision about an access code can be tipped by an error attack, so that despite the input of an incorrect access code, the further workflow in the microprocessor proceeds as if the correct or a correct access code had been entered. Error attacks are described for example in D. Boneh, RA DeMillo, and RJ Lipton, in Advances in Cryptology - EUROCRYPT '97, vol. 1233 of Lecture Notes in Computer Science, pages 37-51. Springer-Verlag, 1997 ,

EP 1 569 118 B1 beschreibt eine durch Doppelberechnung gegen Fehlerangriffe geschützte Berechnung einer Speicheradresse. Hierbei wird die Speicheradresse zweimal berechnet und nur dann verwendet, wenn beide Rechenergebnisse gleich sind. Andernfalls wird vermutet, dass ein Fehlerangriff erfolgt ist und ein Speicherzugriff mit der Speicheradresse verhindert. EP 1 569 118 B1 describes a double-computation against error attacks protected calculation of a memory address. Here, the memory address is calculated twice and used only if both results are equal. Otherwise, it is assumed that an error attack has occurred and prevents memory access with the memory address.

Doppelberechnungen können mit Mehrfachangriffen angreifbar sein. Hiergegen werden wiederum Mehrfachberechnungen mit beispielsweise vier Berechnungen eingesetzt.Double calculations may be vulnerable to multiple attacks. In turn, multiple calculations with, for example, four calculations are used against this.

Doppelberechnungen und Mehrfachberechnungen bieten andererseits Angriffsfläche für statistische Auswertungen, da zweimal dieselbe Berechnung durchgeführt wird. Somit wäre eine Lösung vorteilhaft, bei der eine Doppelberechnung gar nicht erst erforderlich ist.Double calculations and multiple calculations, on the other hand, offer scope for statistical evaluations since the same calculation is performed twice. Thus, a solution would be advantageous in which a double calculation is not even necessary.

Die Erfindung geht gemäß dem Oberbegriff von Anspruch 1 aus von einer Mikroprozessoreinrichtung, mit einem darin zugriffsgesichert abgespeicherten Datenobjekt (Asset), und mit einer Zugriffssicherungseinrichtung, die dazu eingerichtet ist, einen gesicherten Zugriff auf das Datenobjekt durchzuführen, und die eine Verifizierungseinrichtung und eine Zugriffseinrichtung umfasst. Dabei ist die Verifizierungseinrichtung dazu eingerichtet, einen Verifizierungsvorgang durchzuführen, bei dem eine in die Zugriffssicherungseinrichtung eingegebene Verifizierungseingabe zu einer Verifizierungsausgabe verarbeitet wird. Bei einer PIN-Sicherung gemäß dem Stand der Technik würde z. B. eine PIN als Verifizierungseingabe eingegeben und bei dem Verifizierungsvorgang als Verifizierungsausgabe ein PIN-Entscheidung „eingegebene PIN ist richtig” bzw. „eingegebene PIN ist falsch” erzeugt. Die Zugriffseinrichtung ist dazu eingerichtet, in Abhängigkeit von der Verifizierungsausgabe einen Zugriffsvorgang des Zugreifens auf das Datenobjekt durchzuführen. Im Fall der herkömmlichen PIN-Sicherung ist die Abhängigkeit des Zugriffsvorgangs von der Verifizierungsausgabe dadurch verwirklicht, dass bei richtiger PIN der Zugriff durchgeführt wird und bei falscher PIN der Zugriff nicht durchgeführt wird. Wie oben beschrieben, kann eine PIN-Entscheidung durch Fehlerangriffe gekippt werden.According to the preamble of claim 1, the invention is based on a microprocessor device with a data object (asset) stored in an access-protected manner, and with an access protection device which is set up to perform secure access to the data object and which comprises a verification device and an access device , In this case, the verification device is set up to perform a verification process, in which a verification input entered into the access assurance device is processed into a verification output. For a PIN fuse according to the Prior art would z. For example, a PIN is entered as the verification input, and in the verification process as the verification output, a PIN decision of "entered PIN is correct" or "entered PIN is false" is generated. The access device is configured to perform an access operation of accessing the data object depending on the verification output. In the case of the conventional PIN backup, the dependence of the access process on the verification output is realized by the fact that the access is performed with the correct PIN and the access is not carried out if the PIN is incorrect. As described above, a PIN decision can be tipped by error attacks.

Der Erfindung liegt die Aufgabe zu Grunde, eine Mikroprozessoreinrichtung mit einem zuverlässig zugriffsgesichert abgespeicherten Datenobjekt zu schaffen.The invention is based on the object to provide a microprocessor device with a reliable access secured stored data object.

Die Aufgabe wird gelöst durch eine Mikroprozessoreinrichtung nach Anspruch 1. Vorteilhafte Ausgestaltungen der Erfindung sind in den abhängigen Ansprüchen angegeben.The object is achieved by a microprocessor device according to claim 1. Advantageous embodiments of the invention are specified in the dependent claims.

Die Mikroprozessoreinrichtung nach Anspruch 1 zeichnet sich dadurch aus, dass die Zugriffssicherungseinrichtung gegen Fehlerangriffe gesichert ist, indem

  • – das Datenobjekt verschlüsselt abgespeichert ist,
  • – die Verifizierungseinrichtung dazu eingerichtet ist, als Verifizierungsausgabe ein Zugriffstoken zu erzeugen, und
  • – die Zugriffseinrichtung dazu eingerichtet ist, den Zugriffsvorgang derart in Abhängigkeit von der Verifizierungsausgabe durchzuführen, dass dabei das verschlüsselte Datenobjekt unter Verwendung des erzeugten Zugriffstokens entschlüsselt wird.
The microprocessor device according to claim 1 is characterized in that the access protection device is secured against error attacks by
  • The data object is stored in encrypted form,
  • The verification device is set up to generate an access token as the verification output, and
  • - The access device is adapted to perform the access operation in such a manner in dependence on the Verification output, that while the encrypted data object is decrypted using the generated access token.

Der abstrakte Grund dafür, dass die herkömmliche PIN-Entscheidung leicht von dem Wert „falsch”, bei dem der Zugriff auf das Datenobjekt gesperrt bleibt, auf den Wert „richtig” gekippt werden kann, bei dem der Zugriff auf das Datenobjekt gewährt wird, ist die niedrige Entropie der PIN-Entscheidung. Die binäre PIN-Entscheidung hat die Entropie eins. Die PIN mag zwar lang sein und somit eine hohe Entropie haben. Die zwischen die PIN und den Zugriff auf das Datenobjekt geschaltete binäre PIN-Entscheidung bildet einen Schwachpunkt.The abstract reason that the conventional PIN decision can easily be tipped from the value "false", which leaves the access to the data object locked, to the value "true", which grants access to the data object the low entropy of the PIN decision. The binary PIN decision has the entropy one. The PIN may be long and thus have a high entropy. The binary PIN decision between the PIN and the access to the data object is a weak point.

Bei der erfindungsgemäßen Lösung dagegen fließt die Verifizierungsausgabe aus dem Verifizierungsvorgang, d. h. das Zugriffstoken, zur Entschlüsselung des Datenobjekts in den Zugriffsvorgang ein. Hierdurch sind der Verifizierungsvorgang und der Zugriffsvorgang miteinander verwoben. Die hohe Entropie der Verifizierungseingabe (z. B. PIN) fließt ohne die niederentrope Schwachstelle einer binären Entscheidung in den Zugriffsvorgang ein, wie nachfolgend ausgeführt wird.In contrast, in the inventive solution, the verification output flows from the verification process, i. H. the access token used to decrypt the data object in the access process. As a result, the verification process and the access process are interwoven. The high entropy of the verification input (e.g., PIN) flows into the access process without the low-order vulnerability of a binary decision, as discussed below.

Wird das Zugriffstoken (d. h. die Verifizierungsausgabe) oder der Verifizierungsvorgang durch einen Fehlerangriff erfolgreich manipuliert, so wird für den nachfolgenden Zugriffsvorgang statt des richtigen Zugrifftokens irgendein anderes, höchstwahrscheinlich unbrauchbaren Falschtoken bereitgestellt, mit dem sich das Datenobjekt höchstwahrscheinlich nicht richtig entschlüsseln lässt. Abstrakt betrachtet bedeutet die Existenz einer Vielzahl von möglichen Falschtoken im Vergleich zu dem einzigen richtigen Zugriffstoken, dass die erfindungsgemäße Verifizierungsausgabe (d. h. das Zugriffstoken) eine hohe Entropie hat. Da durch das Zugriffstoken der Entschlüsselungsschlüssel gebildet ist, mit dem das Datenobjekt zur Klartextform entschlüsselbar ist, bleibt beim Übergang vom Verifizierungsvorgang zum Zugriffsvorgang eine hohe Entropie erhalten. Ein simples Kompromittieren der Zugriffssicherung durch Kippen der Verifizierungsausgabe, wie dies bei der herkömmlichen PIN-Sicherung möglich ist, ist bei der Erfindung konstruktionsbedingt unmöglich.If the access token (i.e., the verification output) or the verification process is successfully manipulated by an error attack, then for the subsequent access process, instead of the correct access token, any other, most likely useless, false token is provided that is unlikely to properly decrypt the data object. In the abstract, the existence of a large number of possible false tokens compared to the single correct access token means that the verification output of the invention (i.e., the access token) has high entropy. Since the decryption key is formed by the access token, with which the data object can be decrypted to clear text form, a high degree of entropy is maintained during the transition from the verification process to the access process. A simple compromise of access security by tilting the Verification output, as is possible with the conventional PIN fuse is structurally impossible in the invention.

Daher ist gemäß Anspruch 1 eine Mikroprozessoreinrichtung mit einem zuverlässig zugriffsgesichert abgespeicherten Datenobjekt geschaffen.Therefore, according to claim 1, a microprocessor device is provided with a reliably secured access protected data object.

Das Datenobjekt ist wahlweise mit einem (symmetrischen) Verschlüsselungsalgorithmus verschlüsselt, beispielsweise AES, insbesondere AES-CTR (counter mode), oder AES XTS-mode („harddisk encryption standard”).The data object is optionally encrypted with a (symmetric) encryption algorithm, for example AES, in particular AES-CTR (counter mode), or AES XTS-mode ("hard disk encryption standard").

Als Zugriffstoken wird wahlweise der Entschlüsselungsschlüssel erzeugt, der dem zur Verschlüsselung des Datenobjekts verwendeten Verschlüsselungsschlüssel entspricht. Bei symmetrischer Entschlüsselung wird als Zugriffstoken z. B. der Ver- und Entschlüsselungsschlüssel erzeugt.As an access token, the decryption key is optionally generated, which corresponds to the encryption key used to encrypt the data object. For symmetric decryption is used as access token z. B. generates the encryption and decryption key.

Wahlweise ist das Datenobjekt in einer sicheren Umgebung verschlüsselt worden und in verschlüsselter Form abgespeichert worden. Als sichere Umgebung ist beispielsweise eine Produktionsanlage zur Produktion von Mikroprozessoreinrichtungen oder von Sicherheitsgeräten mit solchen Mikroprozessoreinrichtungen vorgesehen, auf die der spätere Nutzer der Mikroprozessoreinrichtung bzw. des Sicherheitsgeräts keinen Zugriff hat. Wahlweise hat die Mikroprozessoreinrichtung oder das Sicherheitsgerät einen speziell zugriffsgesicherten Bereich, in dem das Datenobjekt verschlüsselt wird, ohne Einwirkungsmöglichkeit für einen Nutzer. Der zugriffsgesicherte Bereich innerhalb der Mikroprozessoreinrichtung bzw. des Sicherheitsgeräts ist beispielsweise an einem vorgelagerten Zeitpunkt in einer sicheren Produktionsanlage eingerichtet worden.Optionally, the data object has been encrypted in a secure environment and stored in encrypted form. As a safe environment, for example, a production plant for the production of microprocessor devices or security devices with such microprocessor devices is provided to which the later user of the microprocessor device or the security device has no access. Optionally, the microprocessor device or the security device has a special access-secured area in which the data object is encrypted, without the possibility of influencing a user. The access-secured area within the microprocessor device or the security device has been set up, for example, at an upstream point in time in a secure production facility.

Wahlweise ist die Zugriffseinrichtung weiter dazu eingerichtet, in dem Fall, dass die Verifizierungseingabe oder/und die Verifizierungsaungabe vorbestimmten Kriterien entspricht, das verschlüsselte Datenobjekt zum unverschlüsselten Datenobjekt zu entschlüsseln. Falls als Verifizierungseingabe eine PIN eingegeben wird, entspricht beispielsweise die Verifizierungseingabe den Kriterien, wenn die eingegebene PIN gleich der richtigen PIN ist. Optionally, the access device is further configured to decrypt the encrypted data object to the unencrypted data object in the event that the verification input or / and the verification device corresponds to predetermined criteria. For example, if a PIN is entered as the verification input, the verification input corresponds to the criteria if the input PIN is the same as the correct PIN.

Wahlweise ist die Zugriffseinrichtung weiter dazu eingerichtet, in dem Fall, dass die Verifizierungseingabe oder/und die Verifizierungsaungabe vorbestimmten Kriterien nicht entspricht, das verschlüsselte Datenobjekt zu einem vom unverschlüsselten Datenobjekt unterschiedlichen Entschlüsselungsergebnis zu entschlüsseln. In diesem Fall wird also als Zugriffstoken irgendein Falschtoken erzeugt, das ungleich dem Entschlüsselungsschlüssel ist. Durch einen Fehlerangriff wird aus dem Falschtoken irgendein anderes manipuliertes Falschtoken erzeugt, das höchstwahrscheinlich ebenfalls ungleich dem Entschlüsselungsschlüssel ist. Die Wahrscheinlichkeit, dass durch einen Fehlerangriff auf ein Falschtoken das richtige Zugriffstoken erzeugt wird, ist, sofern einige Vorgaben berücksichtigt werden, beliebig gering.Optionally, the access device is further configured to decrypt the encrypted data object to a decryption result different from the unencrypted data object in the event that the verification input or / and the verification device does not meet predetermined criteria. In this case, therefore, any false token other than the decryption key is generated as an access token. An error attack generates from the false token any other manipulated false token that is most likely also different from the decryption key. The probability that the correct access token is generated by an error attack on a false token, is, as long as some specifications are considered arbitrarily small.

Gemäß der zuletzt angeführten Ausführungsform wird also das Datenobjekt auch dann mit dem Zugriffstoken entschlüsselt, wenn eine falsche Verifizierungseingabe (z. B. PIN) eingegeben worden ist. Diese Ausführungsform hat den Vorteil, dass ein Angreifer zwischen richtig und falsch eingegebener Verifizierungseingabe (z. B. PIN) keinen Unterschied bemerkt. In beiden Fällen wird ein Zugriffstoken erzeugt und mit dem Zugriffstoken ein Entschlüsselungsvorgang am Datenobjekt durchgeführt. Nur falls die Verifizierungseingabe richtig war, wird durch den Entschlüsselungsvorgang das Datenobjekt im Klartext wiederhergestellt. In allen anderen Fällen ist das Entschlüsselungsergebnis in der Regel unbrauchbar.Thus, according to the last-mentioned embodiment, the data object is decrypted with the access token even if an incorrect verification input (eg, PIN) has been input. This embodiment has the advantage that an attacker between right and wrong input verification input (e.g., PIN) will not notice a difference. In both cases, an access token is generated and a decryption operation is performed on the data object with the access token. Only if the verification input was correct, the decryption process restores the data object in plain text. In all other cases, the decryption result is usually useless.

Wahlweise hat die Verifizierungseingabe eine Eingabe-Entropie und das als Verifizierungsausgabe erzeugte Zugriffstoken eine Token-Entropie, und wobei die Token-Entropie mindestens gleich einer Mindest-Token-Entropie ist, beispielsweise mindestens 32 (zweiunddreißig) oder 64 (vierundsechzig). Alternativ oder zusätzlich ist wahlweise die Token-Entropie gegenüber der Eingabe-Entropie nicht verringert oder zumindest nicht erheblich verringert, insbesondere zumindest um einen lediglich geringen Faktor verringert. Gemäß diesen Ausführungsformen wird die Vorgabe berücksichtigt, dass das Zugriffstoken eine ausreichend hohe Entropie hat. Eine PIN-Entscheidung hat die Entropie eins, da sie lediglich die beiden möglichen Werte „PIN falsch” und „PIN richtig” hat, die den beiden Werten eines einzigen binären Bits entsprechen. Auf Grund der geringen Entropie der PIN-Entscheidung lässt sich die PIN-Entscheidung leicht aushebeln. Selbst bei einer sehr langen PIN, die eine hohe Entropie hat, hat die binäre PIN-Entscheidung PIN falsch/richtig stets nur die Entropie eins. Beim herkömmlichen PIN-Prüfungsverfahren ist somit die Entropie der Verifizierungsausgabe (PIN-Entscheidung falsch/richtig)) gegenüber der Entropie der Verifizierungseingabe (eingegebene PIN) erheblich verringert. Das erfindungsgemäße Zugriffstoken hat dagegen eine hohe Entropie und kann daher nicht zuverlässig von einem falschen Wert auf den einzigen richtigen Wert gekippt werden. Dabei gibt es viele mögliche falsche Werte des Zugriffstokens aber nur einen einzigen richtigen Wert des Zugriffstokens.Optionally, the verification input has an input entropy and the access token generated as a verification output has token entropy, and wherein the token entropy is at least equal to a minimum token entropy, for example at least 32 (thirty-two) or 64 (sixty-four). Alternatively or additionally, the token entropy is optionally not reduced compared to the input entropy or at least not significantly reduced, in particular at least reduced by a small factor. According to these embodiments, the provision is considered that the access token has a sufficiently high entropy. A PIN decision has one entropy, as it only has the two possible values, "PIN false" and "PIN correct," which correspond to the two values of a single binary bit. Due to the low entropy of the PIN decision, the PIN decision can easily be reversed. Even with a very long PIN, which has a high entropy, the binary PIN decision PIN wrong / correct always has only the entropy one. Thus, in the conventional PIN verification method, the entropy of the verification output (PIN decision wrong / proper)) is significantly reduced from the entropy of the verification input (input PIN). By contrast, the access token according to the invention has a high degree of entropy and therefore can not be reliably tilted from an incorrect value to the only correct value. There are many possible incorrect values of the access token, but only one correct value of the access token.

Wahlweise hat die Verifizierungseingabe eine Eingabe-Entropie und das als Verifizierungsausgabe erzeugte Zugriffstoken eine Token-Entropie, und wobei die Token-Entropie oder/und die Eingabe-Entropie so, insbesondere so hoch, gewählt ist, dass die Wahrscheinlichkeit, ausgehend von einer Verifizierungseingabe, die den vorbestimmten Kriterien nicht entspricht, durch ein zufälliges Variieren der Verifizierungseingabe, der Verifizierungsausgabe oder/und des Verifizierungsvorgangs ein Verifizierungstoken zu erzeugen, mit dem das verschlüsselte Datenobjekt zum unverschlüsselten Datenobjekt entschlüsselbar ist, einen vorbestimmten Wahrscheinlichkeits-Grenzwert unterschreitet oder zumindest nicht überschreitet. Je höher die Token-Entropie ist, umso mehr mögliche Werte gibt es für das Zugriffstoken. Von den möglichen Werten des Zugriffstokens ist in der Regel ein einziger richtig, und alle anderen sind falsch. Nur mit dem richtigen Zugriffstoken lässt sich das Datenobjekt erfolgreich entschlüsseln. Je höher die Eingabe-Entropie ist (z. B. je länger die Bitlänge einer PIN ist), umso mehr mögliche Werte gibt es für die Verifizierungseingabe (z. B. PIN), und somit umso mehr mögliche aus falscher Verifizierungseingabe abgeleitete Zugriffstoken.Optionally, the verification input has an input entropy and the access token generated as a verification output has a token entropy, and wherein the token entropy and / or the input entropy is chosen to be particularly high enough that the probability, starting from a verification input, which does not meet the predetermined criteria, by randomly varying the verification input, the verification output, and / or the verification process to generate a verification token that decrypts the encrypted data object to the unencrypted data object, does not exceed, or at least does not exceed, a predetermined probability limit. The higher the token entropy, the more possible values are available for the access token. Of the possible values of the access token, one is usually correct, and all others are wrong. Only with the correct access token can the data object be successfully decrypted. The higher the input entropy is (for example, the longer the bit length of a PIN), the more possible values are available for the verification input (eg, PIN), and thus the more possible access tokens derived from incorrect verification input.

Wahlweise hat die Verifizierungseingabe eine Bitlänge und das Zugriffstoken eine (kürzere oder gleich lange) Bitlänge, und wobei die Eingabe-Entropie durch die Bitlänge der Verifizierungseingabe bestimmt ist und die Token-Entropie durch die Bitlänge des Zugriffstokens bestimmt ist. Eine 256 Bit lange Verifizierungseingabe hat so die Entropie 256. Ein 32 Bit langes Zugriffstoken hat die Entropie 32.Optionally, the verification input has a bit length and the access token a (shorter or equal length) bit length, and wherein the input entropy is determined by the bit length of the verification input and the token entropy is determined by the bit length of the access token. A 256-bit verify input thus has entropy 256. A 32-bit access token has entropy 32.

Gemäß einer Ausführungsform der Erfindung wird als Zugriffstoken die Verifizierungseingabe (z. B. PIN) verwendet, d. h. das Datenobjekt ist mit der Verifizierungseingabe verschlüsselt. Dabei sind Verifizierungseingabe, Verifizierungsausgabe und Zugriffstoken gleich. Die Abbildungsvorschrift zur Ableitung des Zugriffstokens aus der Verifizierungseingabe ist die Identität. Insbesondere hat das Zugriffstoken die gleiche Entropie (und Bitlänge) wie die Verifizierungseingabe, insbesondere ist die Entropie des Zugriffstoken gegenüber der hohen Entropie der Verifizierungseingabe nicht verringert, d. h. die hohe Entropie der Verifizierungseingabe bleibt erhalten.According to one embodiment of the invention, the verification input (eg PIN) is used as the access token, ie the data object is encrypted with the verification input. Verification input, verification output, and access token are the same. The mapping rule for deriving the access token from the verification input is the identity. In particular, the access token has the same entropy (and bit length) as the Verification input, in particular the entropy of the access token is not reduced compared to the high entropy of the verification input, ie the high entropy of the verification input is preserved.

Gemäß einer Ausführungsform der Erfindung wird weiter, entweder in dem Verifizierungsvorgang oder in einem zusätzlichen Entscheidungs-Verifizierungsvorgang, eine Entscheidungs-Verifizierungsausgabe erzeugt, die, falls die Verifizierungseingabe vorbestimmten Kriterien entspricht, einen ersten Entscheidungswert hat, und die, falls die Verifizierungseingabe vorbestimmten Kriterien nicht entspricht, einen zweiten Entscheidungswert hat. Hierbei wird im Verifizierungsvorgang nach wie vor ein Zugriffstoken erzeugt. Zusätzlich wird entweder im Verifizierungsvorgang selbst oder in einem zusätzlichen Vorgang beispielsweise eine PIN-Entscheidung erzeugt, mit dem Wert entweder „PIN falsch” oder „PIN richtig”. Manche formale Vorgaben, beispielsweise Richtlinien, Gesetze, Verordnungen, Standards etc., schreiben zwingend vor, dass ein gesichert abgespeichertes Datenobjekt durch eine PIN-Prüfungs-Routine abgesichert ist. Gemäß der hier beschriebenen Ausführungsform wird z. B. zusätzlich die herkömmliche PIN-Prüfung mit PIN-Entscheidung PIN richtig/falsch vorgesehen, um formale Vorgaben zu erfüllen. Die eigentliche Absicherung des Datenobjekts wird mittels der Verschlüsselung und des Zugriffstokens erreicht.According to an embodiment of the invention, further, either in the verification process or in an additional decision verification process, a decision verification output is generated which, if the verification input meets predetermined criteria, has a first decision value and if the verification input does not meet predetermined criteria , has a second decision value. In this case, an access token is still generated in the verification process. In addition, either in the verification process itself or in an additional process, for example, a PIN decision is generated, with the value either "PIN wrong" or "PIN correct". Some formal requirements, such as guidelines, laws, ordinances, standards, etc., require that a saved data object be protected by a PIN-check routine. According to the embodiment described here, z. For example, in addition to the conventional PIN check with PIN decision PIN right / wrong provided to meet formal requirements. The actual protection of the data object is achieved by means of encryption and the access token.

Wahlweise wird bei der vorstehend beschriebenen Ausführungsform, falls die Entscheidungs-Verifizierungsausgabe den ersten Entscheidungswert hat, der Zugriff auf das Datenobjekt durchgeführt, und/oder, falls die Entscheidungs-Verifizierungsausgabe den zweiten Entscheidungswert hat, der Zugriff auf das Datenobjekt nicht durchgeführt. Beispielsweise wird, falls eine richtige PIN eingegeben wurde, der Zugriff mit dem erzeugten Zugriffstoken durchgeführt und, falls eine falsche PIN eingegeben wurde, der Zugriff nicht durchgeführt. Durch die PIN-Prüfung sind formale Vorgaben erfüllt.Optionally, in the embodiment described above, if the decision verification output has the first decision value, the access to the data object is made, and / or if the decision verification output has the second decision value, access to the data object is not performed. For example, if a correct PIN has been entered, access will be made with the generated access token and, if an incorrect PIN has been entered, access will not be made. The PIN check fulfills formal requirements.

Wahlweise ist als Verifizierungseingabe eines der folgenden vorgesehen: eine PIN; ein Passwort; eine Zufallszahl, die vor jedem Zugriffsvorgang neu zu erzeugen ist; ein Hash-Wert; ein bei einer vorangehenden Durchführung des Verifizierungsvorgangs erzeugtes Vorgänger-Zugriffstoken (d. h. Verifizierung und Erzeugung eines Zugriffstokens werden zwei- oder mehrmals nacheinander kaskadiert durchgeführt); eine Sequenz von mehreren Vorgänger-Zugriffstoken.Optionally, one of the following is provided as a verification input: a PIN; a password; a random number to be recreated before each access operation; a hash value; a predecessor access token generated in a previous execution of the verification operation (i.e., verification and generation of an access token are performed cascaded two or more times in succession); a sequence of multiple predecessor access tokens.

Wahlweise ist als Datenobjekt eines der folgenden vorgesehen: ein geheimer Schlüssel, insbesondere ein Signaturschlüssel zur Erzeugung einer digitalen Signatur; ein biometrischer Datensatz; Nutzerdaten; Personendaten; ein Fehlbedienungszähler, insbesondere ein Zählerstand eines Fehlbedienungszählers oder eine Zählerstand-Differenz eines Fehlbedienungszählers; ein Datenverarbeitungsprogramm, insbesondere ein Betriebssystem; eine Teilfunktionalität eines Datenverarbeitungsprogramms, insbesondere eine Teilfunktionalität eines Betriebssystems.Optionally, one of the following is provided as a data object: a secret key, in particular a signature key for generating a digital signature; a biometric record; User data; Personal data; an erroneous operation counter, in particular a counter reading of a misoperation counter or a counter reading difference of a misoperation counter; a data processing program, in particular an operating system; a partial functionality of a data processing program, in particular a partial functionality of an operating system.

Der Fall, dass als Datenobjekt ein Datenverarbeitungsprogramm, insbesondere ein Betriebssystem oder eine Teilfunktionalität eines Datenverarbeitungsprogramms, insbesondere eine Teilfunktionalität eines Betriebssystems, vorgesehen ist, wird näher betrachtet. Das Datenverarbeitungsprogramm oder Betriebssystem oder eine Teilfunktionalität desselben ist vorzugsweise in einer im weitesten Sinne verschlüsselten (d. h. deaktivierten) Form vorgesehen. Beispielsweise ist bei einem Datenverarbeitungsprogramm, Betriebssystem bzw. einer Teilfunktionalität davon die Verschlüsselung dadurch bewirkt, dass ein notwendiger Komplettierungsschlüssel noch nicht implementiert ist, so dass das Datenverarbeitungsprogramm, Betriebssystem bzw. die Teilfunktionalität nicht funktionsfähig ist. Mittels eines Komplettierungsschlüssels lässt sich das Datenverarbeitungsprogramm, Betriebssystem bzw. die Teilfunktionalität entschlüsseln, d. h. komplettieren und dadurch funktionsfähig machen. In diesem Fall wird im Verifizierungsvorgang als Verifizierungsausgabe der Komplettierungsschlüssel erzeugt. Nur falls die richtige Verifizierungseingabe eingegeben wird, wird der richtige Komplettierungsschlüssel erzeugt, der das Datenverarbeitungsprogramm, Betriebssystem bzw. die Teilfunktionalität funktionsfähig macht. Wird eine falsche Verifizierungseingabe eingegeben, wird zwar – je nach Ausführungsform – evtl. ein Komplettierungsschlüssel erzeugt. Mit diesem lässt sich das Datenverarbeitungsprogramm, Betriebssystem bzw. die Teilfunktionalität allerdings nicht funktionsfähig machen.The case that a data processing program, in particular an operating system or a partial functionality of a data processing program, in particular a partial functionality of an operating system, is provided as the data object is considered in greater detail. The data processing program or operating system or a subfunctionality thereof is preferably provided in a broadly encrypted (i.e., deactivated) form. For example, in a data processing program, operating system or a partial functionality of the encryption is effected in that a necessary completion key is not yet implemented, so that the data processing program, operating system or the sub-functionality is not functional. By means of a completion key, the data processing program, operating system or the partial functionality can be decrypted, i. H. complete and make it functional. In this case, the completion key is generated in the verification process as a verification output. Only if the correct verification input is entered is the correct completion key generated which renders the data processing program, operating system or subfunctioning functional. If an incorrect verification input is entered, a completion key may be generated, depending on the embodiment. However, this does not make the data processing program, operating system or subfunctionality functional.

Als Teilfunktionalität ist wahlweise insbesondere eine Ladefunktionalität zum Herunterladen eines Applets in ein Sicherheitsgerät (Smartcard, Smartphone etc.) vorgesehen. Ohne diese Ladefunktionalität können keine Applets heruntergeladen werden. Mit dem Zugriffstoken wird die Fähigkeit, Applets herunterzuladen, aktiviert (Enablement des Applet-Ladens).As a partial functionality, a charging functionality for downloading an applet into a security device (smartcard, smartphone, etc.) is optionally provided. Without this loading functionality, no applets can be downloaded. The access token enables the ability to download applets (enablement of applet loading).

Wahlweise ist die Mikroprozessoreinrichtung in einem mobilen Sicherheitsgerät (mobile secure device) implementiert, beispielsweise einem Datenträger, beispielsweise Chipmodul, Chipkarte, Smartcard oder Token; oder in einem mobilen Endgerät, beispielsweise Mobiltelefon, Smartphone, Tablet PC oder PDA. Wahlweise ist das mobile Sicherheitsgerät im Feld befindlich, d. h. an einen Nutzer ausgeliefert. Wahlweise ist bei dem im Feld befindlichen Sicherheitsgerät insbesondere als Teilfunktionalität eines Betriebssystems eine Ladefunktionalität vorgesehen, die es ermöglicht, in das im Feld befindliche Sicherheitsgerät Applikationen zu laden. Durch den Verifizierungsvorgang wird bei dem im Feld befindlichen Gerät die Ladefunktionalität, Applikationen nachzuladen, freigeschaltet.Optionally, the microprocessor device is implemented in a mobile security device, for example a data carrier, for example chip module, chip card, smart card or token; or in a mobile terminal, for example a mobile phone, smartphone, tablet PC or PDA. Optionally, the mobile security device is located in the field, ie delivered to a user. Optionally, in the field in the safety device in particular as a partial functionality of a Operating system provided a charging functionality, which makes it possible to load applications in the field located in the field. Through the verification process, the charging functionality for reloading applications is enabled for the device in the field.

Die Mikroprozessoreinrichtung ist, gemäß einer Ausführungsform, in einer Signaturkarte (Signatur-Chipkarte) implementiert, in der weiter ein Signaturschlüssel in verschlüsselter Form abgespeichert ist. Die Mikroprozessoreinrichtung ist dazu eingerichtet, mittels des Signaturschlüssels eine digitale Signatur zu berechnen. Um die Berechnung einer digitalen Signatur in der Signaturkarte zu bewirken, ist die Eingabe einer PIN als Verifizierungseingabe erforderlich. Aus der eingegebenen PIN wird ein Zugriffstoken abgeleitet, wahlweise insbesondere die PIN als Zugriffstoken verwendet. Mit dem Zugriffstoken, ggf. direkt mit der PIN, wird der verschlüsselte Signaturschlüssel entschlüsselt. Mit dem Ergebnis des Entschlüsseln des verschlüsselten Signaturschlüssels wird eine digitale Signatur berechnet.The microprocessor device is, according to one embodiment, implemented in a signature card (signature smart card), in which further a signature key is stored in encrypted form. The microprocessor device is set up to calculate a digital signature by means of the signature key. To effect the calculation of a digital signature in the signature card, it is necessary to input a PIN as a verification input. An access token is derived from the entered PIN, optionally using in particular the PIN as the access token. The encrypted signature key is decrypted with the access token, if necessary directly with the PIN. The result of decrypting the encrypted signature key computes a digital signature.

Gemäß einer Weiterbildung der Erfindung, ist im abgeleiteten Zugriffstoken Information über das Datenobjekt enthalten (Asset-spezifisches Token).According to one embodiment of the invention, the derived access token contains information about the data object (asset-specific token).

Im Folgenden wird die Erfindung an Hand von Ausführungsbeispielen und unter Bezugnahme auf die Zeichnung näher erläutert, in der zeigen:In the following the invention will be explained in more detail with reference to exemplary embodiments and with reference to the drawing, in which:

1 eine PIN-gesicherte Signaturkarte, gemäß dem Stand der Technik; 1 a PIN-secured signature card, according to the prior art;

2 eine PIN-gesicherte Signaturkarte, mit optionaler PIN-Entscheidung, gemäß einer Ausführungsform der Erfindung. 2 a PIN-secured signature card, with optional PIN decision, according to an embodiment of the invention.

1 zeigt eine PIN-gesicherte Signaturkarte, gemäß dem Stand der Technik. Als Signaturkarte SC kann beispielsweise ein Identifikationsdokument mit Signaturfunktionalität vorgesehen sein, z. B. der deutsche Personalausweis nPA. Ein Nutzer kontaktiert die Signaturkarte SC mittels eines beliebigen geeigneten kontaktlosen oder kontaktbehafteten Kartenterminals (nicht dargestellt), das zumindest einen Kartenleser, eine Eingabeschnittstelle (z. B. Tastatur) und eine Ausgabeschnittstelle (z. B. Display) hat. Das Kartenterminal wird im weitesten Sinn verstanden und kann z. B. ein separater Kartenleser mit angebundener Ein-/Ausgabeschnittstelle, ein Smartphone, ein ortsfestes Service-Terminal, ein PC mit Tastatur-Kartenleser etc. sein. In der Signaturkarte ist ein Signaturschlüssel K abgespeichert, mit dem sich eine digitale Signatur S(K) erzeugen lässt. Anlässlich einer Aufforderung eines Nutzers an die Signaturkarte SC, eine digitale Signatur S(K) zu erzeugen, gibt die Signaturkarte SC an den Nutzer eine Aufforderung aus, eine PIN einzugeben. Die Ausgabe der Aufforderung an den Nutzer erfolgt z. B. über eine Schnittstelle (z. B. Display) des Kartenterminals bzw. eines mit dem Kartenterminal verbundenen Geräts. Auf die Aufforderung hin gibt der Nutzer über die Eingabeschnittstelle des Kartenterminals (z. B. Tastatur) eine PIN in die Signaturkarte SC ein. Der Schlüssel K ist typischerweise der private Schlüssel K = PrK eines asymmetrischen Schlüsselpaars (PuK, PrK), mit PuK als dem öffentlichen Schlüssel. 1 shows a PIN-secured signature card, according to the prior art. As a signature card SC, for example, an identification document with signature functionality may be provided, for. B. the German identity card nPA. A user contacts the signature card SC via any suitable contactless or contact card terminal (not shown) having at least one card reader, an input interface (eg, keyboard), and an output interface (eg, display). The card terminal is understood in the broadest sense and can, for. B. a separate card reader with attached input / output interface, a smartphone, a fixed service terminal, a PC with keyboard card reader, etc. be. In the signature card, a signature key K is stored with which a digital signature S (K) can be generated. On the occasion of a request from a user to the signature card SC to generate a digital signature S (K), the signature card SC to the user a request to enter a PIN. The output of the request to the user is z. Example, via an interface (eg display) of the card terminal or a device connected to the card terminal. Upon request, the user inputs a PIN into the signature card SC via the input interface of the card terminal (eg keyboard). The key K is typically the private key K = PrK of an asymmetric key pair (PuK, PrK), with PuK as the public key.

Nun wird in der Signaturkarte SC die herkömmliche PIN-Prüfung durchgeführt. Die Signaturkarte SC prüft, ob die eingegebene PIN richtig ist. Ist die eingegebene PIN richtig, wird die Erzeugung einer digitalen Signatur S(K) in der Signaturkarte SC veranlasst. Ist die eingegebene PIN falsch, wird keine digitale Signatur S(K) erzeugt (und ggf. der Fehlbedienungszähler der Signaturkarte SC hochgezählt).Now the conventional PIN check is performed in the signature card SC. The signature card SC checks whether the entered PIN is correct. If the entered PIN is correct, the generation of a digital signature S (K) in the signature card SC is initiated. If the entered PIN is incorrect, no digital signature S (K) is generated (and if necessary, the misoperation counter of the signature card SC is incremented).

2 zeigt eine PIN-gesicherte Signaturkarte SC, gemäß einer Ausführungsform der Erfindung. 2 shows a PIN-secured signature card SC, according to an embodiment of the invention.

Die Kontaktierung der Signaturkarte SC mit einem Kartenterminal erfolgt auf herkömmliche Weise. Der Nutzer fordert auf herkömmliche Weise die Signaturkarte SC auf, eine digitale Signatur S(K) zu erzeugen. Die Signaturkarte SC gibt in Reaktion an den Nutzer eine Aufforderung aus, eine PIN einzugeben. Der Nutzer gibt wie herkömmlich über das Kartenterminal eine PIN in die Signaturkarte SC ein. Optional wird die PIN auf Richtigkeit geprüft. Bei richtiger PIN wird das Verfahren weitergeführt. Bei falscher PIN wird das Verfahren, je nach Ausführungsform, entweder auch weitergeführt oder abgebrochen. Der Abbruch wegen falscher PIN erfolgt z. B. um Formalvorgaben zu erfüllen, notwendig wäre er nicht.The contacting of the signature card SC with a card terminal takes place in a conventional manner. The user conventionally requests the signature card SC to generate a digital signature S (K). The signature card SC issues a request to enter a PIN in response to the user. As usual, the user enters a PIN into the signature card SC via the card terminal. Optionally, the PIN is checked for correctness. If the PIN is correct, the procedure continues. If the PIN is incorrect, the procedure is either continued or aborted depending on the embodiment. The cancellation due to the wrong PIN is z. B. to meet formal requirements, he would not be necessary.

Im Unterschied zum Stand der Technik ist der Signaturschlüssel K in verschlüsselter Form eK in der Signaturkarte SC abgespeichert. Im Beispiel aus 2 ist der Signaturschlüssel K mit einem symmetrischen Verfahren und Schlüssel verschlüsselt. Als Schlüssel zur Verschlüsselung des Signaturschlüssels K ist im Beispiel aus 2 die richtige PIN verwendet. K ist somit als eK, verschlüsselt gemäß eK = ENC(TOK)K = ENC(PIN)K, in der Signaturkarte SC abgespeichert.In contrast to the prior art, the signature key K is stored in encrypted form eK in the signature card SC. In the example off 2 the signature key K is encrypted with a symmetric method and key. The key to encrypting the signature key K is in the example 2 used the correct PIN. K is thus stored as eK, encrypted according to eK = ENC (TOK) K = ENC (PIN) K, in the signature card SC.

Mit der im Verifizierungsvorgang eingegebenen PIN wird der verschlüsselte Signaturschlüssel eK entschlüsselt, gemäß K* = DEC(TOK)eK = DEC(ENC(TOK))K = DEC(PIN)eK = DEC(ENC(PIN))K.With the PIN entered in the verification process, the encrypted signature key eK is decrypted, according to K * = DEC (TOK) eK = DEC (ENC (TOK)) K = DEC (PIN) eK = DEC (ENC (PIN)) K.

Falls die eingegebene PIN richtig ist, ist das Entschlüsselungsergebnis K* gleich dem ursprünglichen Signaturschlüssel K im Klartext. In allen anderen Fällen ist das Entschlüsselungsergebnis K* unterschiedlich vom ursprünglichen Signaturschlüssel K im Klartext.If the entered PIN is correct, the decryption result K * is equal to the original signature key K in plain text. In all other cases, the decryption result K * is different from the original signature key K in plain text.

Schließlich wird mit dem entschlüsselten Signaturschlüssel K die digitale Signatur S(K) auf an sich bekannte Weise berechnet. Finally, with the decrypted signature key K, the digital signature S (K) is calculated in a manner known per se.

Die direkte Verwendung der PIN zur Ver-/Entschlüsselung ist ein besonders einfaches Beispiel. Wahlweise wird das Zugriffstoken gemäß einer komplexeren Abbildungsvorschrift aus der Verifizierungseingabe abgeleitet.The direct use of the PIN for encryption / decryption is a particularly simple example. Optionally, the access token is derived from the verification input according to a more complex mapping policy.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES 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 of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • EP 1569118 B1 [0009] EP 1569118 B1 [0009]

Zitierte Nicht-PatentliteraturCited non-patent literature

  • D. Boneh, R. A. DeMillo, and R. J. Lipton, „On the importance of checking cryptographic protocols for faults”, in Advances in Cryptology – EUROCRYPT'97, vol. 1233 of Lecture Notes in Computer Science, pages 37–51. Springer-Verlag, 1997 [0008] D. Boneh, RA DeMillo, and RJ Lipton, in Advances in Cryptology - EUROCRYPT '97, vol. 1233 of Lecture Notes in Computer Science, pages 37-51. Springer-Verlag, 1997 [0008]

Claims (11)

Mikroprozessoreinrichtung, mit einem darin zugriffsgesichert abgespeicherten Datenobjekt (K), und mit einer Zugriffssicherungseinrichtung, die dazu eingerichtet ist, einen gesicherten Zugriff auf das Datenobjekt (K) durchzuführen, und die eine Verifizierungseinrichtung und eine Zugriffseinrichtung umfasst, wobei – die Verifizierungseinrichtung dazu eingerichtet ist, einen Verifizierungsvorgang durchzuführen, bei dem eine in die Zugriffssicherungseinrichtung eingegebene Verifizierungseingabe zu einer Verifizierungsausgabe verarbeitet wird, und – die Zugriffseinrichtung dazu eingerichtet ist, in Abhängigkeit von der Verifizierungsausgabe einen Zugriffsvorgang des Zugreifens auf das Datenobjekt (K) durchzuführen, dadurch gekennzeichnet, dass die Zugriffssicherungseinrichtung gegen Fehlerangriffe gesichert ist, indem – das Datenobjekt (K) verschlüsselt (eK) abgespeichert ist, – die Verifizierungseinrichtung dazu eingerichtet ist, als Verifizierungsausgabe ein Zugriffstoken zu erzeugen, und – die Zugriffseinrichtung dazu eingerichtet ist, den Zugriffsvorgang derart in Abhängigkeit von der Verifizierungsausgabe durchzuführen, dass dabei das verschlüsselte Datenobjekt (eK) unter Verwendung des erzeugten Zugriffstokens entschlüsselt wird.Microprocessor device, with a data object (K) stored therein secured with access protection, and with an access protection device which is set up to perform secure access to the data object (K) and which comprises a verification device and an access device, wherein - the verification device is adapted to perform a verification operation in which a verification input entered into the access protection device is processed into a verification output, and - the access device is adapted to perform an access operation of accessing the data object (K) in dependence on the verification output, characterized in that the access protection device against Error attacks is secured by - the data object (K) is encrypted (eK) is stored, - the verification device is set up as an access token as a verification output and the access device is arranged to perform the access operation in dependence on the verification output, thereby decrypting the encrypted data object (eK) using the generated access token. Mikroprozessoreinrichtung nach Anspruch 1, wobei die Zugriffseinrichtung weiter dazu eingerichtet ist, in dem Fall, dass die Verifizierungseingabe oder/und die Verifizierungsausgabe vorbestimmten Kriterien entspricht, das verschlüsselte Datenobjekt (eK) zum unverschlüsselten Datenobjekt (K) zu entschlüsseln.The microprocessor device of claim 1, wherein the access device is further configured to decrypt the encrypted data object (eK) to the unencrypted data object (K) in case the verification input and / or the verification output meet predetermined criteria. Mikroprozessoreinrichtung nach Anspruch 1 oder 2, wobei die Zugriffseinrichtung weiter dazu eingerichtet ist, in dem Fall, dass die Verifizierungseingabe oder/und die Verifizierungsaungabe vorbestimmten Kriterien nicht entspricht, das verschlüsselte Datenobjekt (eK) zu einem vom unverschlüsselten Datenobjekt (K) unterschiedlichen Entschlüsselungsergebnis zu entschlüsseln.Microprocessor device according to claim 1 or 2, wherein the access device is further configured to decrypt the encrypted data object (eK) to a decryption result different from the unencrypted data object (K) in the event that the verification input or / and the verification device does not meet predetermined criteria , Mikroprozessoreinrichtung nach einem der Ansprüche 1 bis 3, wobei die Verifizierungseingabe eine Eingabe-Entropie hat und das als Verifizierungsausgabe erzeugte Zugriffstoken eine Token-Entropie hat, und wobei die Token-Entropie oder/und die Eingabe-Entropie so, insbesondere so hoch, gewählt ist, dass die Wahrscheinlichkeit, ausgehend von einer Verifizierungseingabe, die den vorbestimmten Kriterien nicht entspricht, durch ein zufälliges Variieren der Verifizierungseingabe, der Verifizierungsaungabe oder/und des Verifizierungsvorgangs ein Verifizierungstoken zu erzeugen, mit dem das verschlüsselte Datenobjekt (eK) zum unverschlüsselten Datenobjekt (K) entschlüsselbar ist, einen vorbestimmten Wahrscheinlichkeits-Grenzwert unterschreitet oder zumindest nicht überschreitet.A microprocessor device according to any one of claims 1 to 3, wherein the verification input has an input entropy and the access token generated as a verification output has a token entropy, and wherein the token entropy and / or the input entropy is chosen to be, in particular, so high in that the probability of generating, on the basis of a verification input that does not meet the predetermined criteria, by randomly varying the verification input, the verification action or / and the verification process, a verification token with which the encrypted data object (eK) to the unencrypted data object (K) is decipherable, falls below a predetermined probability threshold or at least does not exceed. Mikroprozessoreinrichtung nach Anspruch 4, wobei die Eingabe-Entropie gleich der Token-Entropie ist.A microprocessor device according to claim 4, wherein the input entropy is equal to the token entropy. Mikroprozessoreinrichtung nach einem der Ansprüche 1 bis 5, wobei die Verifizierungseinrichtung dazu eingerichtet ist, die Verifizierungseingabe (PIN) als Zugriffstoken (PIN) bereitzustellen.Microprocessor device according to one of claims 1 to 5, wherein the verification device is adapted to provide the verification input (PIN) as an access token (PIN). Mikroprozessoreinrichtung nach einem der Ansprüche 1 bis 6, die weiter dazu eingerichtet ist, dass in dem Verifizierungsvorgang oder in einem zusätzlichen Entscheidungs-Verifizierungsvorgang, eine Entscheidungs-Verifizierungsausgabe erzeugt wird, die, falls die Verifizierungseingabe vorbestimmten Kriterien entspricht, einen ersten Entscheidungswert hat, und die, falls die Verifizierungseingabe vorbestimmten Kriterien nicht entspricht, einen zweiten Entscheidungswert hat.The microprocessor device of claim 1, further configured to generate, in the verification process or in an additional decision verification process, a decision verification output that, if the verification input meets predetermined criteria, has a first decision value, and if the verification input does not satisfy predetermined criteria, has a second decision value. Mikroprozessoreinrichtung nach Anspruch 7, wobei, falls die Entscheidungs-Verifizierungsausgabe den ersten Entscheidungswert hat, der Zugriff auf das Datenobjekt (K) durchgeführt wird, und/oder, falls die Entscheidungs-Verifizierungsausgabe den zweiten Entscheidungswert hat, der Zugriff auf das Datenobjekt (K) entweder nicht durchgeführt wird oder durchgeführt wird.Microprocessor device according to claim 7, wherein, if the decision verification output has the first decision value, the access to the data object (K) is performed, and / or, if the decision verification output has the second decision value, access to the data object (K) either not performed or performed. Mikroprozessoreinrichtung nach einem der Ansprüche 1 bis 8, wobei als Verifizierungseingabe eines der folgenden vorgesehen ist: eine PIN; ein Passwort; eine Zufallszahl, die vor jedem Zugriffsvorgang neu zu erzeugen ist; ein Hash-Wert; ein bei einer vorangehenden Durchführung des Verifizierungsvorgangs erzeugtes Vorgänger-Zugriffstoken; eine Sequenz von mehreren Vorgänger-Zugriffstoken.Microprocessor device according to one of claims 1 to 8, wherein as Verifying input one of the following is provided: a PIN; a password; a random number to be recreated before each access operation; a hash value; a predecessor access token generated in a previous performance of the verify operation; a sequence of multiple predecessor access tokens. Mikroprozessoreinrichtung nach einem der Ansprüche 1 bis 9, wobei als Datenobjekt eines der folgenden vorgesehen ist: ein geheimer Schlüssel, insbesondere Signaturschlüssel zur Erzeugung einer digitalen Signatur; ein biometrischer Datensatz; Nutzerdaten; Personendaten; ein Fehlbedienungszähler, insbesondere ein Zählerstand eines Fehlbedienungszählers oder eine Zählerstand-Differenz eines Fehlbedienungszählers; ein Datenverarbeitungsprogramm, insbesondere ein Betriebssystem; eine Teilfunktionalität eines Datenverarbeitungsprogramms, insbesondere eine Teilfunktionalität eines Betriebssystems.Microprocessor device according to one of claims 1 to 9, wherein as a data object one of the following is provided: a secret key, in particular signature key for generating a digital signature; a biometric record; User data; Personal data; an erroneous operation counter, in particular a counter reading of a misoperation counter or a counter reading difference of a misoperation counter; a data processing program, in particular an operating system; a partial functionality of a data processing program, in particular a partial functionality of an operating system. Mikroprozessoreinrichtung nach Anspruch 10, wobei als Datenobjekt vorgesehen ist: ein Datenverarbeitungsprogramm, insbesondere ein Betriebssystem; oder eine Teilfunktionalität eines Datenverarbeitungsprogramms, insbesondere eine Teilfunktionalität eines Betriebssystems; und wobei als Zugriffstoken ein Komplettierungsschlüssel vorgesehen ist, das dazu eingerichtet ist, sich das Datenverarbeitungsprogramm bzw. das Betriebssystem bzw. die Teilfunktionalität funktionsfähig zu machen.Microprocessor device according to claim 10, wherein as a data object is provided: a Data processing program, in particular an operating system; or a partial functionality of a data processing program, in particular a partial functionality of an operating system; and wherein as access token a completion key is provided which is adapted to make the data processing program or the operating system or the partial functionality functional.
DE102013014214.8A 2013-08-26 2013-08-26 Microprocessor device with access-protected data object Withdrawn DE102013014214A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102013014214.8A DE102013014214A1 (en) 2013-08-26 2013-08-26 Microprocessor device with access-protected data object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102013014214.8A DE102013014214A1 (en) 2013-08-26 2013-08-26 Microprocessor device with access-protected data object

Publications (1)

Publication Number Publication Date
DE102013014214A1 true DE102013014214A1 (en) 2015-02-26

Family

ID=52446576

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013014214.8A Withdrawn DE102013014214A1 (en) 2013-08-26 2013-08-26 Microprocessor device with access-protected data object

Country Status (1)

Country Link
DE (1) DE102013014214A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1569118B1 (en) 2004-02-24 2008-10-22 Giesecke & Devrient GmbH Method for safe calculation of results in a microprocessor system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1569118B1 (en) 2004-02-24 2008-10-22 Giesecke & Devrient GmbH Method for safe calculation of results in a microprocessor system

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
aespipe(1) - Man Page. Archiviert in Archive.org mit Stand vom 9.November 2012.URL: https://web.archive.org/web/20121109235438/http://linux.die.net/man/1/aespipe *
aespipe(1) – Man Page. Archiviert in Archive.org mit Stand vom 9.November 2012.URL: https://web.archive.org/web/20121109235438/http://linux.die.net/man/1/aespipe
Anleitung zur Verschlüsselung von Datenträgern mit TrueCrypt. Universität Tübingen Oktober 2008. Archiviert in Archive.org mit Stand vom 17.April 2012. URL: https://web.archive.org/web/20120315000000*/http://www.jura.uni-tuebingen.de/ einrichtungen/cz/veranstaltungen/TrueCrypt.pdf
Anleitung zur Verschlüsselung von Datenträgern mit TrueCrypt. Universität Tübingen Oktober 2008. Archiviert in Archive.org mit Stand vom 17.April 2012. URL: https://web.archive.org/web/20120315000000*/http://www.jura.uni-tuebingen.de/ einrichtungen/cz/veranstaltungen/TrueCrypt.pdf *
D. Boneh, R. A. DeMillo, and R. J. Lipton, "On the importance of checking cryptographic protocols for faults", in Advances in Cryptology - EUROCRYPT'97, vol. 1233 of Lecture Notes in Computer Science, pages 37-51. Springer-Verlag, 1997

Similar Documents

Publication Publication Date Title
EP2765752B1 (en) Method for equipping a mobile terminal with an authentication certificate
DE102014220808B4 (en) Method and device for logging in medical devices
DE112011100182T5 (en) Transaction check for data security devices
EP2340502B1 (en) Data processing system for providing authorization keys
DE102017218729A1 (en) Access control using a blockchain
DE112015000213T5 (en) Password-based authorization check
WO2013083375A1 (en) Device and method for decrypting data
WO2001015378A1 (en) Method of data protection
DE102015205428A1 (en) Method and system for improving data security in a communication process
DE102011081421A1 (en) System for the secure transmission of data and procedures
EP3552344B1 (en) Bidirectionally linked blockchain structure
DE102008055076A1 (en) Device and method for protecting data, computer program, computer program product
DE102014210282A1 (en) Generate a cryptographic key
DE102016202262A1 (en) A method and system for authenticating a mobile telecommunication terminal to a service computer system and mobile telecommunication terminal
EP3767513B1 (en) Method for secure execution of a remote signature, and security system
EP1915718B1 (en) Method for protecting the authentication of a portable data carrier relative to a reading device via an unsecure communications path
DE102013014214A1 (en) Microprocessor device with access-protected data object
WO2005038633A1 (en) Device and method for securing and monitoring protected data
DE102013014189A1 (en) Microprocessor device with access-protected data object
EP3358488B1 (en) Method for detecting unauthorised copies of a digital security token
WO2016116278A1 (en) Method for operating a computer unit with a secure runtime environment, and such a computer unit
EP3186741B1 (en) Access protection for external data in the non-volatile memory of a token
EP1652131B1 (en) Method for the issuing of a portable data support
DE102004059265A1 (en) Securing digital data on data medium involves encrypting data using externally inaccessible secret value, writing data to non-volatile memory in mobile device, decoding encrypted data and feeding it to computer for further use
EP1715617B1 (en) Method for operating a system with a portable data carrier and a terminal device

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R081 Change of applicant/patentee

Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GMBH, DE

Free format text: FORMER OWNER: GIESECKE & DEVRIENT GMBH, 81677 MUENCHEN, DE

R120 Application withdrawn or ip right abandoned