DE102020202532A1 - Vorrichtungen und verfahren zur authentifizierung - Google Patents

Vorrichtungen und verfahren zur authentifizierung Download PDF

Info

Publication number
DE102020202532A1
DE102020202532A1 DE102020202532.0A DE102020202532A DE102020202532A1 DE 102020202532 A1 DE102020202532 A1 DE 102020202532A1 DE 102020202532 A DE102020202532 A DE 102020202532A DE 102020202532 A1 DE102020202532 A1 DE 102020202532A1
Authority
DE
Germany
Prior art keywords
message
authentication
communication partner
key
data packet
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.)
Pending
Application number
DE102020202532.0A
Other languages
English (en)
Inventor
Thomas Poeppelmann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE102020202532.0A priority Critical patent/DE102020202532A1/de
Priority to US17/186,450 priority patent/US20210273939A1/en
Publication of DE102020202532A1 publication Critical patent/DE102020202532A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/062Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

Eine Vorrichtung umfasst eine Empfangseinrichtung, die ausgebildet ist, um ein Datenpaket von einem Kommunikationspartner zu empfangen. Die Vorrichtung umfasst eine Datenverarbeitungseinrichtung, die konfiguriert ist, um das Datenpaket zu verarbeiten, um einen geheimen Wert zu erhalten. Die Vorrichtung umfasst ferner eine Sendeeinrichtung, die ausgebildet ist, um eine Sende-Nachricht an den Kommunikationspartner zu senden, die eine auf dem geheimen Wert basierend Informationen aufweist. Die Vorrichtung umfasst ferner eine Authentifizierungseinrichtung, die ausgebildet ist, um eine Challenge-Nachricht zu empfangen, um den geheimen Wert zum Erstellen einer Response-Nachricht zu verwenden. Die Sendeeinrichtung ist ausgebildet, um die Sende-Nachricht so zu erstellen, dass diese die Response-Nachricht aufweist.

Description

  • Ausführungsbeispiele beziehen sich auf Vorrichtungen zur wechselseitigen Authentifizierung, wie es beispielsweise im Bereich der Consumables „Verbrauchsgüter“ einsetzbar ist. Ausführungsbeispiele beziehen sich ferner auf ein Konzept zur Schlüsseldiversifikation für eine sichere Authentifizierung.
  • Nachahmungen sind ein wichtiges Thema in Endverbrauchermärkten mit Verbrauchsgütern. Es besteht ein hohes Risiko, dass Nachahmer-Unternehmen Klone von Geräten, insbesondere Authentifizierungschips, erstellen, die sich genauso verhalten wie ein Originalgerät. In solchen Systemen kann es möglich sein, dass der Erhalt eines geheimen Schlüssels (auf welchem Weg auch immer) es ermöglicht, Klone herzustellen, die auf mehreren verbrauchenden Geräten funktionieren. Ein sogenannten Blacklisting (Ausschließen bestimmter Geräte) ist ein dieser Stelle nicht immer möglich. Wenn Klone auf dem Markt erscheinen, gibt es nur begrenzte Möglichkeiten, diese zu erkennen und deren Nutzung zu verhindern, da sie sich wie das Originalgerät verhalten.
  • Es sind dementsprechend Herangehensweisen wünschenswert, die das Klonen von Verbrauchsgütern erschweren.
  • Gemäß einem Ausführungsbeispiel weist eine Vorrichtung eine Empfangseinrichtung, eine Datenverarbeitungseinrichtung, eine Sendeeinrichtung und eine Authentifizierungseinrichtung auf. Die Empfangseinrichtung ist ausgebildet, um ein Datenpaket von einem Kommunikationspartner zu empfangen. Die Datenverarbeitungseinrichtung ist konfiguriert, um das Datenpaket zu verarbeiten, um einen geheimen Wert zu erhalten. Die Sendeeinrichtung ist ausgebildet, um eine Sende-Nachricht an den Kommunikationspartner zu senden, die eine auf dem geheimen Wert basierend Informationen aufweist. Die Authentifizierungseinrichtung ist ausgebildet, um eine Challenge-Nachricht zu empfangen, und um den geheimen Wert zum Erstellen einer Response-Nachricht zu verwenden. Die Sendeeinrichtung ist ausgebildet, um die Sende-Nachricht so zu erstellen, dass diese die Response-Nachricht aufweist.
  • Gemäß einem weiteren Ausführungsbeispiel umfasst eine Vorrichtung, die ausgebildet ist, um einen Kommunikationspartner zu authentifizieren, einen Datenspeicher, eine Datenschnittstelle, eine Steuerungseinrichtung und eine Authentifizierungseinrichtung. Der Datenspeicher ist ausgebildet, um ein Datenpaket und einen Schlüssel zu speichern. Die Datenschnittstelle ist zum Austausch von Nachrichten mit einem Kommunikationspartner eingerichtet. Die Steuerungseinrichtung ist ausgebildet, um das Datenpaket aus dem Datenspeicher zu lesen und mittels der Datenschnittstelle an den Kommunikationspartner zu senden. Die Authentifizierungseinrichtung ist ausgebildet, um mittels der Datenschnittstelle eine Nachricht von dem Kommunikationspartner zu empfangen, die eine Authentifizierungsinformation aufweist. Die Authentifizierungseinrichtung ist ausgebildet, um unter Verwendung des Schlüssels die Authentifizierungsinformation auf eine Korrespondenz mit dem Datenpaket zu überprüfen, um ein Authentifizierungsergebnis zu erhalten. Die Vorrichtung ist dabei ausgebildet, eine weitere Interaktion mit dem Kommunikationspartner abhängig von dem Authentifizierungsergebnis auszuführen.
  • Ein weiteres Ausführungsbeispiel bezieht sich auf ein System mit jeweils zumindest einer der vorangehenden Vorrichtungen, wobei die Vorrichtungen wechselseitige Kommunikationspartner bilden.
  • Weitere Ausführungsbeispiele beziehen sich auf Verfahren zum Bereitstellen entsprechender Vorrichtungen und auf Verfahren zur Authentifizierung.
  • Weitere vorteilhafte Ausführungsbeispiele sind in den abhängigen Patentansprüchen definiert.
  • Ausführungsbeispiele werden nachfolgend bezugnehmend auf die beiliegenden Zeichnungen erläutert. Es zeigen:
    • 1 ein schematisches Blockschaltbild eines Systems gemäß einem Ausführungsbeispiel, das eine beispielshafte Verbrauchsgutanordnung darstellt;
    • 2 ein schematisches Blockschaltbild eines Systems gemäß einem Ausführungsbeispiel mit einer authentifizierenden Vorrichtung und einer authentifizierenden Vorrichtung;
    • 3 ein schematisches Blockschaltbild eines Systems gemäß einem Ausführungsbeispiel sowie einen Nachrichtenfluss zur Übermittlung eines Datenpakets, einer Challenge-Nachricht und einer Response-Nachricht zur Authentifizierung;
    • 4 ein schematisches Blockschaltbild eines Systems gemäß einem Ausführungsbeispiel, das ein Verbrauchsgut und eine verbrauchende Einrichtung aufweist;
    • 5 schematisches Ablaufdiagramm eines Verfahrens zum Bereitstellen einer Vorrichtung zu authentifizierenden Vorrichtung;
    • 6 ein schematisches Ablaufdiagramm eines Verfahrens zum Bereitstellen einer authentifizierenden Vorrichtung;
    • 7 ein schematisches Ablaufdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel, das zum Herstellen einer Mehrzahl von Vorrichtungen implementiert werden kann;
    • 8 ein schematisches Ablaufdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel, das beispielsweise von der Vorrichtung aus 5 implementiert werden kann;
    • 9 ein schematisches Ablaufdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel, das zum Authentifizieren eines Kommunikationspartners angewendet werden kann;
    • 10 ein schematisches Ablaufdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel, das Schritte der Verfahren aus 8 und 9 kombiniert;
    • 11 ein schematisches Blockschaltbild einer Vorrichtung gemäß einem Ausführungsbeispiel; und
    • 12 ein schematisches Blockschaltbild einer Vorrichtung gemäß einem Ausführungsbeispiel, die zusätzliche Sicherungsmechanismen aufweist.
  • Bevor nachfolgend Ausführungsbeispiele der vorliegenden Erfindung im Detail anhand der Zeichnungen näher erläutert werden, wird darauf hingewiesen, dass identische, funktionsgleiche oder gleichwirkende Elemente, Objekte und/oder Strukturen in den unterschiedlichen Figuren mit den gleichen Bezugszeichen versehen sind, so dass die in unterschiedlichen Ausführungsbeispielen dargestellte Beschreibung dieser Elemente untereinander austauschbar ist bzw. aufeinander angewendet werden kann.
  • Nachfolgend beschriebene Ausführungsbeispiele werden im Zusammenhang mit einer Vielzahl von Details beschrieben. Ausführungsbeispiele können jedoch auch ohne diese detaillierten Merkmale implementiert werden. Des Weiteren werden Ausführungsbeispiele der Verständlichkeit wegen unter Verwendung von Blockschaltbildern als Ersatz einer Detaildarstellung beschrieben. Ferner können Details und/oder Merkmale einzelner Ausführungsbeispiele ohne Weiteres mit einander kombiniert werden, solange es nicht explizit gegenteilig beschrieben ist.
  • Nachfolgende Ausführungsbeispiele beziehen sich auf Vorrichtungen und Verfahren, die eine Authentifizierung einer Vorrichtung gegenüber einer anderen Vorrichtung ermöglichen. Nachfolgende Ausführungsbeispiele werden dabei beispielhaft im Zusammenhang mit einem Verbrauchsgut beschrieben, das von einem verbrauchenden (oder nutzenden) Gerät authentifiziert wird. Das Verbrauchsgut (engl.: consumable) kann dabei eine Vorrichtung sein, die eine Ressource bereitstellt (und beispielsweise speichert), die bei Betrieb des verbrauchenden Geräts (engl.: host) verbraucht wird. Beispiele für Paare von Verbrauchsgut und verbrauchendem Gerät sind:
    • • Druckerpatrone - Drucker
    • • Batterie - elektrische Vorrichtung, die von der Batterie versorgt wird
    • • Nachfüllpatrone - E-Zigarette
    • • Guthabenkarte - Prepaid-Handy
    • • Kaffeekapsel - Kaffeemaschine
    • • Wasserfilterkartusche - Wasserfilter.
  • Beispielsweise enthält das Verbrauchsgut ein (körperliches) Material, das verbraucht wird, wie bei einer Druckerpatrone, bestimmten Batterietypen oder einer E-Zigaretten-Nachfüllpatrone oder auch einer medizinischen Substanz (z. B. Arznei) für ein medizinisches Gerät in einem entsprechenden Behälter. Das Verbrauchsgut kann in einer anderen Ausführungsform aber auch eine nicht-körperliche Ressource enthalten, die verbraucht wird, wie beispielsweise ein Guthaben, etwa für ein Prepaid-Handy.
  • 1 zeigt hierzu ein schematisches Blockschaltbild eines Systems, das eine beispielshafte Verbrauchsgutanordnung 100 darstellt. Das System 100 umfasst eine Vorrichtung 110 gemäß einem Ausführungsbeispiel. Beispielhaft kann die Vorrichtung 110 zumindest einen Teil eines Verbrauchsguts bereitstellen. Das System 100 umfasst ferner eine Vorrichtung 120, die zur Kommunikation mit der Vorrichtung 110 eingerichtet ist, so dass die Vorrichtungen 110 und 120 wechselseitige Kommunikationspartner bilden. Die Vorrichtung 120 kann zumindest einen Teil einer verbrauchenden Vorrichtung bereitstellen. Alternativ oder zusätzlich kann die Vorrichtung 110, das bedeutet ein Verbrauchsgut oder eine damit verbundene Vorrichtung, ein zu authentifizierender Kommunikationspartner sein.
  • Die Vorrichtung 110 kann beispielsweise mit der Vorrichtung 120 körperlich verbunden werden, etwa eingesteckt oder eingebaut oder in sonstiger Weise in Verbindung gebracht werden, etwa über eine drahtgebundene oder drahtlose Kommunikationsverbindung, etwa WiFi®, ZigBee® oder Bluetooth® oder dergleichen. Hierzu kann die Vorrichtung 110 möglicherweise auswechselbar (insbesondere lösbar) mit der Vorrichtung 120 verbunden werden. Im Bereich der Consumables wünscht der Hersteller des verbrauchenden Geräts typischerweise, dass nur Verbrauchsgüter, die von ihm selbst (oder einem Lizenznehmer) hergestellt werden, mit dem verbrauchenden Gerät verwendet werden, so dass es wünschenswert ist, die Vorrichtung 110 seitens der Vorrichtung 120 zu authentifizieren.
  • Die Vorrichtung 110 umfasst hierzu eine Empfangseinrichtung 12, die ausgebildet ist, um ein Datenpaket 14 von einem Kommunikationspartner zu empfangen. Der Kommunikationspartner ist an dieser Stelle beispielsweise die Vorrichtung 120. Die Vorrichtung 110 umfasst ferner eine Datenverarbeitungseinrichtung 16, die konfiguriert ist, um das Datenpaket 14 zu verarbeiten, um einen geheimen Wert 18 zu erhalten. Das bedeutet, aus dem Datenpaket 14 kann mittels der Datenverarbeitung in der Datenverarbeitungseinrichtung 16 ein in dem Datenpaket 14 möglicherweise nicht im Klartext vorliegender Wert abgeleitet werden, der einen geheimen Wert darstellt. Der geheime Wert kann auch als Geheimnis verstanden werden, welches beispielsweise für eine Ausführung eines Verschlüsselungsverfahrens oder eines Signaturverfahrens verwendet werden kann.
  • Die Vorrichtung 110 umfasst eine Authentifizierungseinrichtung 22, die ausgebildet ist, um eine Challenge-Nachricht 24 zu empfangen, beispielsweise von der Vorrichtung 120 oder einer anderen autorisierten Einrichtung. Die Challenge-Nachricht kann als Aufforderung oder Herausforderung bezeichnet werden, im Zuge deren Beantwortung die Vorrichtung 110, insbesondere die Authentifizierungseinrichtung 22, aufgefordert wird, um mittels Bereitstellen einer mit der Challenge-Nachricht 24 assoziierten Response-Nachricht 26 eine Beantwortung der Challenge-Nachricht 24 bereitzustellen. Da der Inhalt der Response-Nachricht 26, also der Antwort, vom Inhalt der Challenge-Nachricht 24 abhängt, kann hier durch eine Authentifizierung der Vorrichtung 110 vorgenommen werden. Die Authentifizierungseinrichtung 22 ist dabei ausgebildet, um die Challenge-Nachricht 24 zu empfangen und die Response-Nachricht 26 unter Verwendung des geheimen Wert 18 zu erstellen.
  • Die Vorrichtung 110 umfasst ferner eine Sendeeinrichtung 28, die ausgebildet ist, um eine Sende-Nachricht 32 an die Vorrichtung 120 zu senden. Die Sende-Nachricht 32 umfasst dabei die Response-Nachricht 26, so dass die Sende-Nachricht 32 eine auf dem geheimen Wert basierende Information aufweist. Es ist dabei möglich, dass die Sende-Nachricht 32 so erzeugt wird, dass diese den geheimen Wert 18 selbst aufweist oder einen beliebigen hieraus abgeleiteten Wert. Die Response-Nachricht 26 kann in der Sende-Nachricht 32 ebenfalls im Klartext vorliegen, kann aber auch in beliebiger Weise verschlüsselt oder codiert werden.
  • Die Vorrichtung 120 kann dabei ausgebildet sein, um die Vorrichtung 110 zu authentifizieren. Hierzu kann die Vorrichtung 120 einen Datenspeicher 34 aufweisen, der ausgebildet ist, um Informationen zu speichern. Beispielsweise sind in dem Datenspeicher 34 zumindest das Datenpaket 14 und ein Schlüssel 36 gespeichert. Der Schlüssel 36 kann dabei eine Bitfolge oder eine Zeichenkette oder einen sonstigen digital zu speichernden Wert aufweisen.
  • Die Vorrichtung 120 umfasst ferner eine Steuerungseinrichtung, die ausgebildet ist, um das Datenpaket 14 aus dem Datenspeicher 34 zu lesen und mittels einer Datenschnittstelle 42 an die Vorrichtung 110 zu senden. Die Datenschnittstelle 42 ist dabei zum Austausch von Nachrichten mit der Vorrichtung 110 eingerichtet und beispielsweise konfiguriert, um die Sende-Nachricht 32 der Vorrichtung 110 zu empfangen. Beispielsweise kann auch die Challenge-Nachricht 24 mit der Datenschnittstelle 42 an die Vorrichtung 110 gesendet werden, etwa indem die Challenge-Nachricht 24 von einer Authentifizierungseinrichtung 44 der Vorrichtung 120 bereitgestellt wird. Die Authentifizierungseinrichtung 44 ist ausgebildet, um mittels der Datenschnittstelle 42 die Sende-Nachricht 32 von der Vorrichtung 110 zu empfangen. Die Sende-Nachricht 32 weist dabei eine Authentifizierungsinformation auf, insbesondere die auf dem geheimen Wert 18 basierende Information bzw. die Response-Nachricht 26. Die Authentifizierungseinrichtung 44 ist ausgebildet, um unter Verwendung des Schlüssels 36 die Authentifizierungsinformation auf eine Korrespondenz mit dem Datenpaket 14 zu überprüfen, um ein Authentifizierungsergebnis 46 zu erhalten. Die Vorrichtung 120 ist ausgebildet, um eine weitere Interaktion mit der Vorrichtung 110 abhängig von dem Authentifizierungsergebnis 46 auszuführen.
  • Innerhalb des Systems 100 ist es somit möglich, dass die Vorrichtung 120 die Vorrichtung 110 authentifiziert, ohne hierzu Kenntnisse über den geheimen Wert 18 in unverschlüsselter Form vorweisen zu müssen. Dies ermöglicht eine Vermeidung eines Abgriffs geheimer Werte aus Vorrichtungen 120, insbesondere dahin gehend, dass es vermieden wird, einen dadurch abgegriffenen geheimen Wert zum Erstellen von Klonen zu verwenden, die auch in anderen Vorrichtungen 120 betrieben werden könnten.
  • Anders als in Systemen, in denen ein verbrauchendes Gerät einen öffentlichen Schlüssel (Public Key - PK) und ein Zertifikat von dem Verbrauchsgut empfängt und die Authentizität des öffentlichen Schlüssels überprüft, wobei hierzu das Geheimnis in dem Verbrauchsgut hinterlegt ist, um in dem Verbrauchsgut eine Antwort auf eine vom Host erstellte Aufforderung (Challenge) generieren zu können, welche dann im Host unter Verwendung des öffentlichen Schlüssels erneut verifiziert wird, ermöglichen es Ausführungsbeispiele, dass auch in der Vorrichtung 110 auf eine Speicherung des geheimen Werts 18 verzichtet werden kann. Da der geheime Wert 18 aus dem empfangenen Datenpaket 14 abgeleitet wird, kann die Response-Nachricht 26 direkt aus dem empfangenen Datenpaket 14 abgeleitet werden, was vielfältige Möglichkeiten bietet. Zum einen kann auf die Speicherung des geheimen Werts 18 in der Vorrichtung 110 verzichtet werden, was die Zeitpunkte, zu denen ein Angreifer auf den geheimen Wert 18 zugreifen könnte, deutlich reduziert. Darüber hinaus ist es möglich, den geheimen Wert 18 bezüglich der Vorrichtung 120 vorrichtungsindividuell auszugestalten oder für eine Gruppe von Vorrichtungen 120 gruppenindividuell auszugestalten, während er für andere Vorrichtungen oder Gruppen hiervon verschieden ist. Diese ermöglicht es, dass ein dennoch von einem Angreifer abgefangener geheimer Wert 14 lediglich für die individuelle Vorrichtung 120 bzw. die Gruppe von Vorrichtungen gültig ist. Für den Hersteller eines Klons ist es jedoch schwierig, bei der Herstellung abzuschätzen, in welcher späteren Vorrichtung dieser Klon verwendet werden soll. Dies erschwert die Verwertbarkeit des Klons.
  • In anderen Worten schaffen die Ausführungsbeispiele ein System, bei dem ein Host die Authentizität einer Vorrichtung überprüft, um die Nachahmung von Verbrauchsgütern (z. B. Druckerpatronen) zu verhindern. Einige Ausführungsbeispiele kommen ohne einen nicht-flüchtiger Speicher (non-volatile memory - NVM) in der Vorrichtung aus, während trotzdem eine ausreichende Sicherheitsebene beibehalten wird. Außerdem kann das System zur verzögerten Merkmalsaktivierung verwendet werden, sowie zur Erhöhung der Sicherheitsebene einer Authentifizierungsvorrichtung bei geringen Kosten. So ermöglichen Ausführungsbeispiele die Herstellung kosteneffektiver Authentifizierungsvorrichtungen.
  • 2 zeigt ein schematisches Blockschaltbild eines Systems 200 gemäß einem Ausführungsbeispiel, bei dem die Kommunikationspartner von einer in Übereinstimmung mit der Vorrichtung 120 gebildeten Vorrichtung 210 und einer Vorrichtung 220, die in Übereinstimmung mit den Ausführungen zur Vorrichtung 120 gebildet ist, implementiert werden. Die Vorrichtung 210 ist beispielhaft eine Druckerpatrone, während die Vorrichtung 220 beispielhaft ein Drucker ist, so dass das System 200 eine Verbrauchsgutanordnung mit einem Verbrauchsgut und einem verbrauchenden Gerät bereitstellt. Zur verbesserten Übersichtlichkeit sind nicht alle derer in 1 erläuterten Elemente auch in 2 dargestellt.
  • In dem Datenspeicher 34 sind beispielsweise der Schlüssel 36 sowie das Datenpaket 14 gespeichert. Gemäß einem Ausführungsbeispiel ist das Datenpaket 14 ein verschlüsseltes Datenpaket (engl.: Encrypted Data Packet - EDP), wobei dies nicht zwingend erforderlich ist. Hierzu kann die Datenverarbeitungseinrichtung 16 zur Entschlüsselung des verschlüsselten Datenpakets 14 eingerichtet sein, also zur Decodierung (DEC). Der geheime Wert 18 kann insofern ein geheimer Schlüssel (engl.: secret key - sk) sein, der mit dem öffentlichen Schlüssel (engl.: public key - pk) assoziiert ist. Die Authentifizierungseinrichtung 22 kann ausgebildet sein, um in Beantwortung der Challenge-Nachricht 24 und unter Verwendung des geheimen Schlüssels sk die Response-Nachricht zu erzeugen und um die Response-Nachricht an die Vorrichtung 220 zu übermitteln, um dort die Echtheit der Vorrichtung 210 überprüfen zu lassen, das bedeutet, eine Authentifizierung zu ermöglichen. Zur Übermittlung kann die Sende-Nachricht 32 verwendet werden, etwa indem eine die Response-Nachricht angebende Information eingebettet wird.
  • Die in dem Datenspeicher 34 der Vorrichtung 220 gespeicherten Informationen können dabei ohne besondere Sicherheitsmaßnahmen gespeichert werden, da ohne Kenntnis der konkreten Berechnungsweisen aus den Informationen 14 und 36 der geheime Wert 18 nicht herleitbar ist, so dass ein Abgriff der in dem Datenspeicher 34 gespeicherten Informationen nicht zwingend ein Sicherheitsrisiko darstellt.
  • Mit anderen Worten beruhen Ausführungsbeispiele darauf, dass anstelle von Verbrauchsgut-spezifischen Schlüsseln mit Schlüsseln gearbeitet wird, die für den Host (verbrauchendes Gerät) spezifisch sind. Der geheime Wert 18/sk ist beispielsweise in verschlüsselter Form in einem Datenpaket (EDP) gespeichert, wobei gilt, dass EDP ist gleich ENC(sk), das bedeutet, eine Verschlüsselung des geheimen Werts 18 erfolgt. Die Vorrichtung 110 bzw. 120 kann den geheimen Wert durch Entschlüsselung von EDP erhalten und dann für die Authentifizierung verwenden. Dies ermöglicht, dass die Vorrichtung 110 bzw. 120 nicht zwingend einen umprogrammierbaren Speicher, etwa einen NVM (Non-Volatile Memory, nicht-flüchtiger Speicher) benötigt. Hierunter wird verstanden, dass die Vorrichtung 110 und/oder 120 zwar Speicher aufweisen kann, die auch in nicht-flüchtiger Weise Informationen speichern können, diese Speicher so ausgestaltet sind, dass sie während eines auf eine Auslieferung folgenden Betriebs stets auf den Auslieferungszustand zurückfallen und nicht dauerhaft umprogrammiert werden können. Das bedeutet, es können zwar temporär Informationen in dem Speicher abgelegt werden, eine dauerhafte Veränderung des Speicherinhalts ist jedoch nicht notwendig oder möglich. So kann beispielsweise im Falle eines Neustarts oder der temporären Entfernung von Energieversorgungsquellen stets wieder auf den Auslieferungszustand mit den zugehörigen dauerhaft gespeicherten Informationen zurückgefallen werden. Das bedeutet, dass die Vorrichtung 110 und/oder 210 ausgebildet sein kann, um den geheimen Wert 18 ausschließlich in einem flüchtigen Datenspeicher zu speichern. Hierzu kann die Vorrichtung möglicherweise keinen nicht-flüchtigen Speicher im Sinne von beschreibbaren Speicherzellen aufweisen. Alternativ können Speicherzellen des nicht-flüchtigen Speichers permanentprogrammiert sein, um nach der Fertigung unveränderlich zu sein.
  • Ferner ermöglichen es Ausführungsbeispiele, dass die Sicherheitsvorkehrungen in der Decodierfunktion der Vorrichtung 110/210, etwa der Datenverarbeitungseinrichtung 16, konzentriert werden können, die durch entsprechende Maßnahmen zum Vermeiden eines Reverse-Engineering (Nachkonstruktion) geschützt werden kann. Die Vorrichtung kann so implementiert sein, dass ein eventueller Angreifer das Ergebnis der Decodierung nicht erkennen kann. Physikalische Angriffe auf die Authentifizierung können so zumindest größtenteils nutzlos werden, da ein Angreifer selbst im Erfolgsfall lediglich den Schlüssel sk (Geheimnis 18) eines Druckers erhält, was keine Herstellung universell einsetzbarer Klone ermöglicht.
  • Die Datenverarbeitungseinrichtung 16 kann ausgebildet sein, um zum Erhalt des geheimen Werts eine Verschlüsselungs- und/oder Entschlüsselungsfunktion unter Verwendung eines geheimen Schlüssels auszuführen. So kann beispielsweise ein verschlüsseltes Datenpaket entschlüsselt werden, so dass das Ergebnis der Entschlüsselung wieder der geheime Wert ist. Alternativ oder zusätzlich kann die Datenverarbeitungseinrichtung 16 ausgebildet sein, um eine geheime schwer vorhersagbare Funktion auszuführen, um den geheimen Wert 18 zu erhalten. Als schwer vorhersagbare Funktion kann eine Funktion verstanden werden, die gemäß Ausführungsformen unbekannt ist und/oder den zumindest einen Eingabewert in nicht-trivialer Weise ggf. für einen Angreifer unvorhersehbar ändern. Zu solchen Funktionen gehört bspw. eine geheime Funktion, wie bspw. eine Hash-Funktion. So kann beispielsweise das Datenpaket 14 einen Startwert oder Grundwert als Eingangswert für eine Hashfunktion bereitstellen.
  • Ausführungsbeispiele sehen dabei ferner vor, dass die Datenverarbeitungseinrichtung obfuskiert implementiert ist. Das bedeutet, die Datenverarbeitungseinrichtung 16 kann ausgebildet sein, um bei Implementierung der geheimen Hashfunktion selbige obfuskiert auszuführen, um den geheimen Wert zu erhalten. Im Falle der Verschlüsselungs- und/oder Entschlüsselungsfunktion kann die Datenverarbeitungseinrichtung 16 ausgebildet sein, um diese unter Verwendung des geheimen Schlüssels und obfusktiert auszuführen, um den geheimen Wert zu erhalten. Hierunter wird verstanden, dass die Abfolge von Schritten in der Implementierung der Funktion derart verschleiert wird, dass ein Reverse Engineering zumindest erschwert ist. Eine derartige Verschleierung kann sowohl in Hardware als auch in Software implementiert werden.
  • Ausführungsbeispiele sehen vor, dass der geheime Wert 18 einen Startwert (engl.: seed) zur Generierung eines privaten Schlüssels (sk) eines Authentifizierungsverfahrens umfasst. Alternativ oder zusätzlich kann der geheime Wert 18 ein Nonce umfassen, d. h., einen Wert, der für bestimmte Operationen und/oder für eine bestimmte Zeitdauer Gültigkeit aufweist. Diese Werte können zwar verschlüsselt übertragen werden, Ausführungsbeispiele sehen jedoch auch eine unverschlüsselte Übertagung vor, da eine Verarbeitung (die Ausgestaltung der verarbeitenden Funktion) des geheimen Werts 18 ebenfalls geheim sein kann, so dass ein Abgriff des geheimen Werts 18 problemlos sein kann.
  • Die Vorrichtung 110 und/oder 210 kann ausgebildet sein, um den privaten Schlüssel zum Erstellen zumindest eines Teils der Sende-Nachricht, insbesondere der Response-Nachricht 26, zu verwenden. Als Authentifizierungsverfahren sehen Ausführungsbeispiele mehrere mögliche Implementierungen vor, darunter ein asymmetrisches Verschlüsselungsverfahren, wobei der einem privaten/geheimen Schlüssel ein öffentlicher Schlüssel assoziiert ist, wie es beispielsweise im Zusammenhang mit der 2 beschrieben ist. Alternativ oder zusätzlich kann auch ein Signaturverfahren verwendet werden, um das Authentifizierungsverfahren zu implementieren.
  • Wie es vorangehend bereits angedeutet wurde, kann der Schlüssel 36 ein öffentlicher Schlüssel eines Authentifizierungsverfahrens umfassen. Dieser öffentliche Schlüssel kann mit dem geheimen Wert 18 assoziiert sein, beispielsweise indem der geheime Wert 18 ein korrespondierender oder aussoziierter privater Schlüssel ist. Der Host kann ausgebildet sein, um die Authentifizierungsinformation, das bedeutet, den Inhalt der Response-Nachricht 26, in Unkenntnis des privaten Schlüssels des Authentifizierungsverfahrens zu überprüfen. So ist es beispielsweise möglich, dass die Authentifizierungseinrichtung 44 der Vorrichtung 120 oder 220 ausgebildet ist, um unter Verwendung der Datenschnittstelle 42 die Challenge-Nachricht 24 an die Vorrichtung 110/210 zu senden und, um die Sende-Nachricht 32 als zur Challenge-Nachricht 24 gehörige Response-Nachricht zu empfangen, die unter Verwendung eines privaten Schlüssels des Authentifizierungsverfahrens erzeugt wurde, wobei dieser private Schlüssel dem Host selbst unbekannt ist. Der private Schlüssel kann unter Verwendung des geheimen Werts erzeugt sein, was auch beinhaltet, dass der private Schlüssel der geheime Wert ist, in beiden Fällen wird der private Schlüssel aus dem Datenpaket 14 durch Weiterverarbeitung in der Datenverarbeitungseinrichtung 16 erhalten.
  • In anderen Worten kann bei einem Ausführungsbeispiel der Host durch eine Host-ID (HID) identifiziert werden. Der Host kann während der Herstellung oder Personalisierung des Host-Chips oder über ein Software-Update oder über einen Online-interaktiven Kanal zu einem Server oder über ein sicheres Hardware-Token mit einem verschlüsselten Datenpaket EDPHID ausgestattet werden. Das EDPHID ist bspw. mit einem Schlüssel k verschlüsselt und beinhaltet einen geheimen Wert v, so dass Folgendes gilt: EDPHID = Enck (v). Ein Host ist außerdem ausgestattet mit einem öffentlichen Schlüssel pk, der einem EDPHID entspricht, wobei hier pk = GEN_PKs (v) für eine Schlüsselerzeugungsfunktion GEN und den Wert v für eine geeignete kryptographische Funktion s zutrifft. Es wird jedoch darauf hingewiesen, dass der Host selbst den Wert von v nicht kennt, da nur pk und EDPHID in dem Host gespeichert sind. In den meisten praktischen Fällen hat jeder Host ein individuelles EDPHID und einen individuellen pk, diese Werte können jedoch manchmal auch gemeinschaftlich unter (Gruppen von) Hosts verwendet werden und Hosts könnten mehrere Paare von EDPHID und pk besitzen.
  • Um die Authentizität einer Vorrichtung zu überprüfen, die bspw. an einem Verbrauchsgut angebracht ist, verwendet der Host eine geeignete Schnittstelle (z. B. 12C), die eine Kommunikation mit einer Host-Vorrichtung ermöglicht. Dann sendet der Host das EDPHID an die Vorrichtung. Die Vorrichtung verwendet bspw. einen Entschlüsselungsschaltungsaufbau Deck, für den Folgendes gilt: v = Deck(Enck(v)), und kann so unter Verwendung des Schlüssels k den Wert v = Deck(EDPHID) erhalten. Außerdem implementiert die Vorrichtung die GEN_SKs(v)-Funktion, um einen geheimen Schlüssel sk = GEN_SKs(v) zu erhalten. GEN_SKs ist die Komplementärfunktion zu GEN_PKs und ermöglicht die Berechnung eines geheimen Schlüssels (SK), zu welchem unter Verwendung eines geeigneten Verfahrens ein öffentlichen Schlüssels (PK) für eine Öffentlicher-Schlüssel-Identifizierung oder ein Digitalsignaturschema s erzeugt werden kann. Hier wird beispielsweise Folgendes angenommen: s=ECDSA-NIST-P256-SHA256 (Elliptical Curve Digital Signature Algorithm (ECDSA - Elliptische-Kurve-Digitalsignaturalgorithmus) des National Institute of Standards and Technology (NIST), standardisierte Primkurve secp256r1 unter Verwendung eines Secure Hash Algorithm (SCA - sicherer Hash-Algorithmus) 2 mit 256-Bit-Ausgabe, wie beschrieben ist in FIPS 186-4 - Digital Signature Standard (DSS - Digitalsignaturstandard). Für diesen Fall könnte sk = GEN_SKs(v) einfach v ausgeben und diesen als geheimen Skalar und so als geheimen Schlüssel behandein. Dies ist von Vorteil, da die GEN_SKs(v)-Funktion auf der Vorrichtung implementiert ist und auf Leistung und Schaltungsgröße optimiert sein sollte. GEN_PKs kann die Schlüsselerzeugung des ECDSA-Algorithmus unter Verwendung von sk = dA als geheimem Schlüssel durchführen, um QA = dA × G zu berechnen. Es wird darauf hingewiesen, dass GEN_PKs nicht auf der Vorrichtung oder dem Host ausgeführt wird und nur das Ergebnis pk in einem Host gespeichert ist.
  • Nachdem die Vorrichtung das EDPHID verarbeitet hat, erzeugt der Host eine Challenge (Aufforderung) unter Verwendung der c = CHALLs-Funktion für das Schema s. Für s=ECDSA-NIST-P256-SHA256 ist diese Challenge c lediglich ein zufällig ausgewählter Wert mit einer Länge von z.B. 128 bis 256 Bits. Diese Challenge wird an die Vorrichtung gesendet, die eine r = AUTHs(c, sk)-Funktion ausführt, die als Eingabe die Challenge c und den geheimen Schlüssel sk verwendet und dann eine Response (Antwort) r zurückgibt. Für s= ECDSA-NIST-P256-SHA256 ist dies die ECDSA-Signaturerzeugungsfunktion und die Response ist eine Signatur über den Zufallswert c, der durch den Host bereitgestellt wird. Die Response r wird dann an den Host übertragen und der Host führt die VERs(r, pk)-Funktion aus, um zu verifizieren, ob die Response gültig ist. Eine Response kann mit dem öffentlichen Schlüssel pk überprüft werden und ist gültig, wenn die Vorrichtung Kenntnis des geheimen Schlüssels sk nachgewiesen hat (ohne sk zu enthüllen). In dem Fall von s=ECDSA-NIST-P256-SHA256 führt die VERs-Funktion die Signaturverifizierung durch und überprüft, dass die Signatur r über die Challenge c mit dem öffentlichen Schlüssel pk verifiziert werden kann. Wenn die Verifizierung erfolgreich ist, wird die Vorrichtung als authentisch betrachtet, und wenn die Verifizierung fehlschlägt, wird die Vorrichtung als nicht authentisch behandelt. Der Host könnte dann die Verwendung eines Verbrauchsguts stoppen oder könnte seine Funktion stoppen, da eine nicht authentische und so wahrscheinlich gefährliche Komponente in das System eingeführt wurde.
  • 3 zeigt ein schematisches Blockschaltbild eines Systems 300 gemäß einem Ausführungsbeispiel, bei dem ein Nachrichtenfluss zur Übermittlung des Datenpakets 14, der Challenge-Nachricht 24 und der Response-Nachricht 26 zur Authentifizierung zwischen einer Vorrichtung 310 (device) und einer Vorrichtung 320 (host) ausgeführt werden kann. Die Vorrichtung 310 kann dabei in Übereinstimmung mit der Vorrichtung 110 und/oder 210 ausgeführt sein, während die Vorrichtung 320 in Übereinstimmung mit der Vorrichtung 120 und/oder 220 ausgebildet sein kann.
  • 4 zeigt ein schematisches Blockschaltbild eines Systems 400 gemäß einem Ausführungsbeispiel, das beispielsweise ein Verbrauchsgut 410 und eine verbrauchende Einrichtung 420 aufweist. Das Verbrauchsgut 410 kann dabei beispielsweise mit der Vorrichtung 310 gekoppelt sein, während die Vorrichtung 320 mit der verbrauchenden Vorrichtung 420 gekoppelt sein kann oder einen Teil hiervon bilden kann, so dass die von dem Verbrauchsgut 410 gespeicherte Ressource sowie deren Verbrauch seitens der Vorrichtung 420 authentifiziert werden kann. So kann es sich bei dem System 400 um eine beliebige Verbrauchsgutanordnung handeln, beispielsweise als Batterie 410, die einen elektrischen Verbraucher 420, etwa in Automobilen, mit elektrischem Strom versorgt.
  • In anderen Worten können hierin beschriebene Systeme zur Vorrichtungsauthentifizierung verwendet werden und das einmalige Merkmal bereitstellen, dass eine Vorrichtung keinen NVM benötigt, um eine Schlüsseldiversifikation zu erzielen. Beispielsweise ist ein privater Schlüssel in geschützter Weise in einer Vorrichtung in einem NVM gespeichert und der Host kann auf einen öffentlichen Schlüssel und ein Zertifikat zugreifen, um ein Authentifizierungsprotokoll auf Basis von Challenge und Response durchzuführen. Ein NVM könnte für eine Vorrichtung verbietend hohe zusätzliche Kosten bedeuten. Andererseits ist es wünschenswert, unterschiedliche Schlüssel für den Öffentlicher-Schlüssel-Authentifizierungsmechanismus zu verwenden, um zu verhindern, dass ein Angreifer Klone unter Verwendung extrahierter geheimer Schlüssel baut. Ferner wird keine Sicherheitssteuerung auf Host-Seite benötigt, da der Host keine Geheimnisse verarbeitet. Dies wäre der Fall, wenn ein symmetrisches Challenge-Response-Schema zur Authentifizierung verwendet würde, siehe bspw. 2.
  • Mit der Grundidee eines Speicherns eines Host-individuellen öffentlichen Schlüssels (pk) und des Host-individuellen verschlüsselten geheimen Schlüssels EDPHID in dem Host kann dieses Problem überwunden werden. Unter der Annahme, dass ein Angreifer nicht in der Lage ist, die Deck-Funktionalität zu durchbrechen, ist es nicht wirtschaftlich machbar, geklonte Vorrichtungen zu erzeugen. In diesem Sinn bedeutet Durchbrechen ein Reverse Engineering des Algorithmus Dec und eine Extrahierung des geheimen Schlüssels k (es wird angemerkt, dass der Algorithmus und der Schlüssel in einen Schaltungsblock verschmolzen werden können). Deck kann wie folgt geschützt werden:
    • Es werden deshalb Gegenmaßnahmen gegen das Klonen der DECk Schaltung geschaffen, beispielsweise Maßnahmen, die das Risiko erhöhen, dass bei einer Nachahmung der Schaltung die nachgeahmte (geklonte) Schaltung fehlerhaft ist, d.h. Klonfehler auftreten.
  • Dazu können Techniken eingesetzt werden, die das Klonen digitaler Implementierungen möglichst fehleranfällig machen. Techniken sehen die Integration von Schaltungsblöcken vor, die theoretisch oder nur mit hohem Aufwand geklont werden können. Ein Beispiel sind Spezialzellen mit besonderen Eigenschaften zum Erschweren der Analyse oder Physical Unclonable Functions (PUFs - physisch nicht klonbare Funktionen).
  • Die Deck-Schaltung kann auch unter Verwendung standardisierter Blockchiffrierungen realisiert werden, wie Advanced Encryption Standard (AES) oder Data Encryption Standard (DES), oder von Varianten derartiger Algorithmen (unterschiedliche S-Boxen, Rundenanzahl, unterschiedliche Konstanten). Sie könnte außerdem Stromchiffrierungen verwenden, wie z. B. Trivium, oder sogenannte Schwamm (engl. Sponge)-basierte Konstrukte, wie SHA3/Keyak, oder Varianten derartiger Algorithmen. Eine Vorrichtung könnte auch Varianten oder unterschiedliche Instanziierungen von Deck implementieren (z. B. für unterschiedliche Marktsegmente).
  • Selbst wenn ein Angreifer einen Wert v oder einen geheimen Schlüssel sk erhält und mit diesen Werten einen Klon erzeugt, wird dieser Klon nur mit einem spezifischen Host funktionieren. Der Grund hierfür besteht darin, dass jeder Host nur einen Host-individuellen öffentlichen Schlüssel akzeptiert. Ein geklonter Vorrichtungsklon würde mit einem anderen Host nicht funktionieren, da der Host ein unterschiedliches EDP und pk besitzt. Ohne vollständige Extrahierung/Reverse Engineering des Deck-Schaltungsaufbaus ist der Angreifer nicht in der Lage, universell funktionierende Klone herzustellen. Es wird angemerkt, dass die Beschreibung der Schaltung von Deck und Enck nicht auf dem Host vorhanden ist. Der Host ist nur mit einem EDPHID ausgestattet, die Verschlüsselung wird jedoch in einer geschützten Umgebung durchgeführt. Folglich ist es möglich, Anstrengungen für den physischen Schutz von sk = GEN_SKs(v) und AUTHs(c, sk) einzusparen. Wenn die Anstrengungen, diese Werte zu erhalten, hoch genug sind (z. B. ein Entpacken der Vorrichtung erforderlich ist), wird nur ein kleiner Bruchteil von Eigentümern des Hosts geklonte Vorrichtungen kaufen und derartige Klone selbst bereitstellen. Außerdem werden nachgeahmte Waren immer identifiziert und der Eigentümer des Hosts wird bemerken, dass die Vorrichtung nicht authentisch ist.
  • 5 zeigt schematisches Ablaufdiagramm eines Verfahrens zum Bereitstellen einer Vorrichtung, etwa der Vorrichtung 110, 210 oder 310. Ein Schritt 510 umfasst ein Anordnen in einer Empfangseinrichtung zum Empfangen eines Datenpakets von einem Kommunikationspartner. Ein Schritt 520 umfasst ein Anordnen einer Datenverarbeitungseinrichtung, so dass diese konfiguriert ist, um das Datenpaket zu verarbeiten, um einen geheimen Wert zu erhalten. Ein Schritt 530 umfasst ein Anordnen einer Sendeeinrichtung, so dass diese ausgebildet ist, um eine Sende-Nachricht an den Kommunikationspartner zu senden, die eine auf dem geheimen Wert basierende Information aufweist. Ein Schritt 540 umfasst ein Anordnen einer Authentifizierungseinrichtung, so dass diese ausgebildet ist, um eine Challenge-Nachricht zu empfangen, um den geheimen Wert zum Erstellen einer Response-Nachricht zu verwenden, so dass die Serideeinrichtung ausgebildet ist, um die Sende-Nachricht so zu erstellen, dass diese die Response-Nachricht aufweist.
  • 6 zeigt ein schematisches Ablaufdiagramm eines Verfahrens 600 zum Bereitstellen einer Vorrichtung, etwa der Vorrichtung 120, 220 oder 320. Ein Schritt 610 umfasst ein Anordnen eines Datenspeichers, so dass diese eingerichtet ist, um ein Datenpaket und einen Schlüssel zu speichern. Ein Schritt 620 umfasst ein Anordnen einer Datenschnittstelle zum Austausch von Nachrichten mit einem Kommunikationspartner. Ein Schritt 630 umfasst ein Anordnen einer Steuerungseinrichtung, so dass diese ausgebildet ist, um das Datenpaket aus dem Datenspeicher zu lesen und mittels der Datenschnittstelle an den Kommunikationspartner zu senden. Ein Schritt 640 umfasst ein Anordnen einer Authentifizierungseinrichtung, so dass diese ausgebildet ist, um mittels der Datenschnittstelle eine Nachricht von dem Kommunikationspartner zu empfangen, die eine Authentifizierungsinformation aufweist. Ferner wird der Schritt so ausgeführt, dass die Authentifizierungseinrichtung ausgebildet ist, um unter Verwendung des Schlüssels die Authentifizierungsinformation auf eine Gültigkeit in Bezugnahme auf das Datenpaket zu überprüfen, um ein Authentifizierungsergebnis zu erhalten, so dass die Vorrichtung ausgebildet ist, um den Kommunikationspartner zu authentifizieren und eine weitere Interaktion mit dem Kommunikationspartner abhängig von dem Authentifizierungsergebnis auszuführen.
  • Das Verfahren 600 kann dabei mehrfach ausgeführt werden, um eine Mehrzahl von Vorrichtungen bereitzustellen. Ein derart mehrfach ausgeführtes Verfahren kann dabei ferner so ausgeführt werden, dass ein vorrichtungsindividuelles oder gruppenindividuelles Hinterlegen eines der Gruppe bzw. Vorrichtung zugehörigen Datenpaketes und eines dem Datenpaket assoziierten Schlüssel erfolgt. Der Schlüssel kann dabei beispielsweise insofern dem Datenpaket assoziiert sein, als auch dem Datenpaket ein dem Schlüssel zugehöriger weiterer Schlüssel erzeugt wird. Es kann somit eingerichtet werden, dass die Datenpakete sowie der zugehörige Schlüssel zwischen Vorrichtungen bzw. Gruppen unterschiedlich sind, um selbst bei erfolgreichem Erzeugen eines Klons eine Verwertbarkeit dieser Klone zu erschweren.
  • 7 zeigt ein schematisches Ablaufdiagramm eines Verfahrens 700, das zum Herstellen einer Mehrzahl von Vorrichtungen implementiert werden kann. In einem Schritt 710 erfolgt ein Einrichten der Mehrzahl von Vorrichtungen so, dass jede der Mehrzahl von Vorrichtungen ein Datenpaket und einen assoziierten Schlüssel aufweist und eingerichtet ist, um eine Authentifizierung eines Kommunikationspartners unter Übermittlung des Datenpakets an den Kommunikationspartner, sowie möglicherweise einer Challenge-Nachricht, und unter Überprüfung einer von dem Kommunikationspartner erhaltenen Authentifizierungsinformation auf eine Korrespondenz mit dem Datenpaket unter Verwendung des Schlüssels auszuführen. Das Verfahren wird dabei so ausgeführt, dass in der Mehrzahl von Vorrichtungen vorrichtungsindividuell oder gruppenindividuell verschiedene Datenpakete und Schlüssel gespeichert sind.
  • Das Verfahren 700 kann dabei so ausgeführt werden, dass ein unberechtigter Abgriff eines in dem Datenpaket enthaltenen geheimen Werts, bzw. ein aus dem Datenpaket abgeleiteter geheimer Wert und ein Transfer des geheimen Werts auf einen Klon des Kommunikationspartners höchstens für die Vorrichtung oder die korrespondierende Gruppe von Vorrichtungen zu einem positiven Authentifizierungsergebnis bei Verwenden des Klons führt. Dies kann dadurch erreicht werden, dass die Challenge-Nachricht Bezug nimmt auf den geheimen Wert, so dass andere Vorrichtungen bzw. Gruppen eine andere Authentifizierungsnachricht versenden und somit die Verwendung eines anderen geheimen Werts erwarten, was durch den abgegriffenen geheimen Wert nicht erfüllt werden kann.
  • 8 zeigt ein schematisches Ablaufdiagramm eines Verfahrens 800 gemäß einem Ausführungsbeispiel, das beispielsweise von einer hierin beschriebenen Vorrichtung, etwa der Vorrichtung 110, 210 oder 310 ausgeführt werden kann, aber auch unabhängig von diesen Vorrichtungen implementiert werden kann. Ein Schritt 810 umfasst ein Empfangen eines Datenpakets von einem Kommunikationspartner. Ein Schritt 820 umfasst ein Empfangen einer Challenge-Nachricht. Ein Schritt 830 umfasst ein Verarbeiten des Datenpakets, um einen geheimen Wert zu erhalten. Ein Schritt 840 umfasst ein Verwenden des geheimen Werts zum Erstellen einer Response-Nachricht, die eine Antwort auf die Challenge-Nachricht darstellen kann. Ein Schritt 850 umfasst ein Senden einer Sende-Nachricht an den Kommunikationspartner, so dass die Sende-Nachricht eine auf dem geheimen Wert basierende Information aufweist.
  • 9 zeigt ein schematisches Ablaufdiagramm eines Verfahrens 900 gemäß einem Ausführungsbeispiel, das zum Authentifizieren eines Kommunikationspartners angewendet werden kann und beispielhaft von der Vorrichtung 120, 220 oder 320 implementiert werden kann, aber auch unabhängig hiervon ausgeführt werden kann. Ein Schritt 910 umfasst ein Lesen eines Datenpakets aus einem Datenspeicher. Ein Schritt 920 umfasst ein Lesen eines Schlüssels aus dem Datenspeicher. Ein Schritt 930 umfasst ein Senden des Datenpakets an den Kommunikationspartner. Ein Schritt 940 umfasst ein Empfangen einer Nachricht von dem Kommunikationspartner, wobei die Nachricht eine Authentifizierungsinformation aufweist. Ein Schritt 950 umfasst ein Überprüfen der Authentifizierungsinformation unter Verwendung des Schlüssels, um ein Authentifizierungsergebnis zu erhalten. Ein Schritt 960 umfasst ein Ausführen einer weiteren Interaktion mit dem Kommunikationspartner abhängig von dem Authentifizierungsergebnis.
  • 10 zeigt ein schematisches Ablaufdiagramm eines Verfahrens 1000 gemäß einem Ausführungsbeispiel. Das Verfahren 1000 kann die Schritte 910 und 920 umfassen. Ferner kann in einem Schritt 1030 ein Übermitteln des in dem Schritt 910 gelesenen Datenpakets von einer Vorrichtung an einen Kommunikationspartner erfolgen, etwa an die zu authentifizierende Vorrichtung. Dieses Datenpaket kann beispielsweise in dem Schritt 810 von der Vorrichtung empfangen werden. Ein Schritt 1040 umfasst das Übermitteln einer Challenge-Nachricht an den Kommunikationspartner, die beispielsweise in dem Schritt 820 empfangen werden kann.
  • Ferner weist das Verfahren die Schritte 830, 840 und 850 auf, in denen die empfangenen Informationen verarbeitet werden, um den geheimen Wert zu erhalten, daraus die Response-Nachricht zu erstellen und die Sende-Nachricht zu erstellen, die die auf dem geheimen Wert basierende Authentifizierungsinformation aufweist. Ferner umfasst das Verfahren 1000 die Schritte 950 und 960, in denen die Überprüfung der Authentifizierungsinformation sowie das Ausführen der weiteren Interaktion abhängig von dem Authentifizierungsergebnis erfolgt.
  • Es wird darauf hingewiesen, dass in den vorliegend beschriebenen Verfahren eine Reihe der Schritte abweichen kann von den in den Figuren dargestellten Reihenfolgen. So kann beispielsweise ein Zeitpunkt oder eine Reihenfolge des Lesens von Informationen anders ausgeführt werden als dargestellt. Auch können einzelne Berechnungsschritte in anderer Reihenfolge ausgeführt werden.
  • Vorangehend beschriebene Ausführungsbeispiele beziehen sich zumindest teilweise darauf, dass die Herstellung von Klonen dadurch erschwert wird, dass der geheime Wert in der zu authentifizierenden Vorrichtung erst erzeugt wird. Weitere Ausführungsbeispiele beziehen sich darauf, Funktionen in der Vorrichtung vorzusehen, die das Risiko bergen oder erhöhen, dass ein Klon in einer späteren Vorrichtung nicht oder lediglich fehlerhaft betrieben wird. Hierzu können beispielsweise physikalische Gegenmaßnahmen zählen, wobei Ausführungsbeispiele insbesondere das Implementieren sogenannter versteckter Funktionen vorsehen, die zu einem späteren Zeitpunkt aktiviert werden. Gemäß einem Ausführungsbeispiel ist dabei vorgesehen, dass Verfahren oder Prozesse zum Erhalten geheimer Werte und/oder zur Authentifizierung im laufenden Betrieb geändert werden. So sehen Ausführungsbeispiele Vorrichtungen vor, die ausgebildet sind, um eine Auswahlnachricht zu empfangen. Beispielsweise handelt es sich hier um Weiterbildungen der Vorrichtung 110, 210, 310 oder 410. Eine derartige Vorrichtung kann einen Datenspeicher aufweisen, der ausgebildet ist, um einen Schlüssel für die Datenverarbeitungseinrichtung 16 bereitzustellen. Die Vorrichtung kann ausgebildet sein, um den Schlüssel in Reaktion auf die Auswahlnachricht zu ändern. Eine solche Vorrichtung ist beispielhaft in 11 als schematisches Blockschaltbild dargestellt. Die dort dargestellte Vorrichtung 1100 kann die in 1 beschriebene Empfangseinrichtung 12 und die Sendeeinrichtung 28 aufweisen. Die Vorrichtung 1100 weist eine Datenverarbeitungseinrichtung 48, die gegenüber der Datenverarbeitungseinrichtung 16 modifiziert ist, und/oder eine Authentifizierungseinrichtung 52, die gegenüber der Authentifizierungseinrichtung 22 modifiziert ist, auf. Optional kann anstelle der Datenverarbeitungseinrichtung 48 die Datenverarbeitungseinrichtung 16 angeordnet sein oder es kann anstelle der Authentifizierungseinrichtung 52 die Authentifizierungseinrichtung 22 angeordnet sein. Optional kann die Vorrichtung 1100 einen Datenspeicher 450 aufweisen, der ausgebildet ist, um einen oder mehrere Schlüssel, das heißt, Bitfolgen, zu speichern. Diese Schlüssel können von der Datenverarbeitungseinrichtung 48 oder 16 dazu verwendet werden, um den geheimen Wert zu erhalten.
  • Die Vorrichtung 1100 kann ausgebildet sein, um die Auswahlnachricht 56 zu erhalten, beispielsweise mittels der Empfangseinrichtung 12. In Reaktion auf die Auswahlnachricht kann die Vorrichtung ausgebildet sein, um einen anderen Schlüssel aus dem Datenspeicher 54 zu verwenden, um ihn der Datenverarbeitungseinrichtung 48 oder 16 bereitzustellen. Das bedeutet, in Reaktion auf die Auswahlnachricht 56 kann der Schlüssel zum Erhalt des geheimen Werts 18 verändert werden. Dies ermöglicht die nachträgliche Änderung der Struktur des Datenpakets 14 auch im laufenden Betrieb. So kann beispielsweise eine Konfiguration des Hosts (Vorrichtung 120, 220 oder 320) im laufenden Betrieb geändert werden.
  • So kann die Verwendung von Klonen selbst bei korrumpierten oder gestohlenen Schlüssel erschwert werden.
  • Alternativ oder zusätzlich ist es in Ausführungsbeispielen vorgesehen, dass die Datenverarbeitungseinrichtung 48 eine oder mehrere Verarbeitungs-Logikschaltungen aufweist, die eingerichtet sind, mehrere Varianten einer Logikfunktion zur Verarbeitung des Datenpakets vorzusehen oder zu implementieren. Die Vorrichtung 1100 kann eine Auswahleinrichtung 58 aufweisen, die eingerichtet ist, um in Reaktion auf den Empfang der Auswahlnachricht 56 die Verwendung einer ersten Variante der Logikfunktion zum Verarbeiten in der Datenverarbeitungseinrichtung 48 zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zum Verarbeiten des Datenpakets 14 zu beginnen. Alternativ oder zusätzlich kann die Authentifizierungseinrichtung 52 eine oder mehrere Authentifizierungs-Logikschaltungen aufweisen, die eingerichtet sind, mehrere Varianten einer Logikfunktion zur Authentifizierung der Vorrichtung zu implementieren. Die Auswahleinrichtung 58 kann ausgebildet sein, um in Reaktion auf den Empfang der Auswahlnachricht 56 die Verwendung einer ersten Variante der Logikfunktion zur Authentifizierung zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zur Authentifizierung zu beginnen.
  • Anders ausgedrückt kann in Reaktion auf die Auswahlnachricht 56 die Art und Weise verändert werden, wie das Datenpaket 14 ausgewertet oder verarbeitet wird und/oder es kann die Art und Weise der Generierung der Response-Nachricht verändert werden, was ein hohes Maß an Sicherheit bietet.
  • Die Auswahleinrichtung 58 kann dabei ausgebildet sein, um die Auswahlnachricht 56 zu empfangen und auszuwerten. Dabei kann die Auswahleinrichtung 58 ausgebildet sein, um die Auswahlnachricht 56 zu verifizieren, das bedeutet, sicherzustellen, dass diese aus vertrauenswürdiger Quelle stammt. Die Auswahleinrichtung 58 kann ausgebildet sein, um die erste Variante der Logikfunktion in der Datenverarbeitungseinrichtung 48 und/oder der Authentifizierungseinrichtung 52 nur dann zu beenden und durch eine andere Variante zu ersetzen, das heißt, diese zu beginnen, wenn die Verifikation erfolgreich ist. Für die Verifikation stehen unterschiedliche Möglichkeiten bereit. So kann beispielsweise eine Verschlüsselung, Entschlüsselung oder Signatur verwendet werden. Ausführungsbeispiele sehen vor, dass die Auswahleinrichtung 58 ausgebildet ist, um unter Verwendung einer Hashfunktion einen Hashwert basierend auf der Auswahlnachricht 56 zu bestimmen, und um die Verifikation als erfolgreich einzustufen, wenn der Hashwert einem vorbestimmten Hashwert entspricht. Dies ist gleichbedeutend damit, die Verifikation als nicht erfolgreich einzustufen, wenn der Hashwert dem vorbestimmten Wert nicht entspricht. Alternativ oder zusätzlich kann der Hashwert auch auf eine Übereinstimmung innerhalb eines Toleranzbereichs überprüft werden, d. h., ob der Hashwert innerhalb eines vorbestimmten Wertebereichs liegt, jeweils mit und/oder ohne die Wertebereichsgrenzen.
  • Die Auswahlnachricht 56 kann beispielsweise von einer entsprechend eingerichteten Vorrichtung 120, 220 oder 320 gesendet werden. Diese Vorrichtung kann ausgebildet sein, um die Auswahlnachricht 56 an den Kommunikationspartner, das bedeutet, die Verbrauchseinrichtung, zu senden, so dass diese eine Anweisung enthält, um einen Schlüssel zum Verarbeiten des Datenpakets in Reaktion auf die Auswahlnachricht 56 zu ändern. Alternativ oder zusätzlich kann die Auswahlnachricht 56 eine Anweisung enthalten, um in Reaktion auf den Empfang der Auswahlnachricht 56 die Verwendung einer ersten Variante einer Logikfunktion zum Verarbeiten des Datenpakets zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zum Verarbeiten des Datenpakets zu beginnen. Alternativ oder zusätzlich kann die Auswahlnachricht 56 eine Anweisung enthalten, um in Reaktion auf den Empfang der Auswahlnachricht 56 die Verwendung einer ersten Variante einer Logikfunktion zur Authentifizierung zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zur Authentifizierung zu beginnen.
  • In der Datenverarbeitungseinrichtung 48 und/oder der Authentifizierungseinrichtung 52 kann eine beliebige Anzahl von Logikfunktionen vorgesehen sein, beispielsweise zumindest zwei, zumindest drei, zumindest fünf, zumindest zehn oder eine beliebige andere Anzahl.
  • Die Logikfunktionsvarianten, das bedeutet, die einzelnen Schaltungen bzw. die die Logikfunktionsvarianten implementierenden Teilschaltungen sowie die Auswahleinrichtung 58 können gegenüber einem Reverse-Engineering mittels geeigneter Gegenmaßnahme geschützt werden. Ein Beispiel für eine solche Gegenmaßnahme ist eine Kontaktloch-Camouflage, bei der Kontaktlöcher zwischen unterschiedlichen Schichten eines Chips vorgesehen werden, die jedoch keinen Kontakt zwischen den Schichten herstellen und somit einen Nachahmer hinsichtlich in der jeweiligen Teilschaltung vorhandener Verbindungen in die Irre führen. Die Logikfunktionen können beispielsweise kryptographische Logikfunktionen sein, können aber im Allgemeinen aber jegliche digitale Funktion implementieren, die Daten manipulieren. Bei einer kryptographischen Logikfunktion kann erreicht werden, dass das Risiko von Klonfehlern erhöht wird, da eine solche typischerweise die Eigenschaft hat, dass die Änderung eines Eingabebits der Logikfunktion mit hoher Wahrscheinlichkeit dazu führt, dass sich viele Ausgabebits der Logikfunktion ändern. Alternativ oder zusätzlich können Maßnahmen zum Obfuskieren, bspw. mit Kontaktloch-Camouflage auch bei anderen Vorrichtungsteilen, etwa der Datenverarbeitungseinrichtung 16 oder Teilen hiervon eingesetzt werden, d. h., derartigen Maßnahmen sind nicht begrenzt oder eingeschränkt auf die Funktion zum verzögerten Aktivieren von Features.
  • Die Auswahleinrichtung 56 kann unter Verwendung einer kryptographischen Hashfunktion oder einer Permutation implementiert werden. Die Verwendung einer anderen Logikfunktionsvariante ist beispielsweise durch einen Aktivierungsmechanismus geschützt, bei der die Host-Authentifizierungsschaltung 44 (beispielsweise initiiert durch einen Benutzer) ein Entsperr-Passwort oder einen Entsperr-Code der Verbrauchsgut-Authentifizierungsschaltung 52 zuführt, die von der Verbrauchsgut-Authentifizierungsschaltung 52 unter Verwendung einer Hashfunktion gehasht wird und mit einem in der Verbrauchsgut-Authentifizierungsschaltung 52 gespeicherten Vergleichswert (für diese zu aktivierende Logikfunktion) gespeichert ist. Allgemein kann die Host-Authentifizierungsschaltung 44 die Verwendung einer anderen Logikfunktionsvariante aktivieren, indem sie gegenüber der Verbrauchsgut-Authentifizierungsschaltung 52 die Kenntnis eines Geheimnisses (wie eines Passworts oder eines Freischaltcodes) nachweist. Nur wenn der erzeugte Hashwert mit dem Vergleichswert übereinstimmt, der mit der zu aktivierende Funktionsvariante assoziiert ist, führt die Verbrauchsgut-Authentifizierungsschaltung bzw. die Auswahleinrichtung 58 die Auswahl der Logikfunktionsvariante durch.
  • In anderen Worten können Authentifizierungssysteme gemäß Ausführungsbeispielen auch in einem Szenario verwendet werden, in dem Logik mit Klon-Gegenmaßnahmen eingeführt wird, die nicht ab der anfänglichen Markteinführung aktiv sind. In diesem Fall wird ein Logikblock vor Reverse Engineering geschützt und bei der Markteinführung nicht verwendet. Da die Logik nicht beim anfänglichen Betrieb verwendet wird und auch vor Verwendung geschützt ist, ist das Risiko von Reverse Engineering-Fehlern erheblich erhöht. Der Vorteil besteht darin, dass eine Reverse Engineering-Unternehmen nicht die Mittel besitzt, extrahierte Logik auf Korrektheit zu verifizieren. Gezwungenermaßen muss zumindest eine zusätzliche Runde von Reverse Engineering zu einer späteren Stufe stattfindet, was erhöhte Kosten und Anstrengungen für die Erzeugung von Vorrichtungsklonen bedeutet.
  • Bei einem derartigen Ausführungsbeispiel kann eine Vorrichtung mit einer Funktionalität zur asymmetrischen Challenge-Response-Authentifizierung ausgestattet sein, die die gleiche sein kann wie bei dem beschriebenen System oder die unabhängig sein kann - die jedoch unterschiedliche pk1/sk1-Paare verwendet. Dieses Basis-Authentifizierungssystem kann unmittelbar nach der Markteinführung verwendet werden.
  • Hierzu zeigt bspw. 12 ein schematisches Blockschaltbild einer Vorrichtung 1200 gemäß einem Ausführungsbeispiel. Obwohl nicht alle Elemente dargestellt sind, kann die Vorrichtung 1200 eine Funktionalität aufweisen, die bspw. im Zusammenhang mit den Vorrichtungen 110, 210 oder 310 erläutert ist.
  • Der Deck-Block ist die vorstehend erwähnte Logik, die zuerst deaktiviert ist, um Reverse Engineering schwierig zu machen. Er ist konfiguriert, um falsch codierte EDPHID-Daten zurückzuweisen, und der Host hat bei der Markteinführung keinen Zugriff auf diese Informationen. So kann der Host den Deck-Logikblock nicht nutzen und Reverse Engineering ist kompliziert. Eine bestimmte Zeit nach der Markteinführung von Vorrichtung und Host-Einheit erhält der Host nun, beispielsweise mittels SW-Update, EDPHID und pk2, bspw. in Form einer Auswahlnachricht 56. Da das Host-individuelle EDPHID-Datenpaket korrekt codiert ist, kann es durch Deck verarbeitet werden. Der Host kann dann die Authentifizierung mit dem Schema s verwenden und sk2, das in das EDPHID eingebettet ist, das dem pk2 entspricht. Hierzu kann der neue Schlüssel sk2 in einem entsprechenden Speicher 58 abgelegt werden. Es wird darauf hingewiesen, dass für diese Funktionalität ein gemeinschaftliches Ressourcen-Verwenden mit dem Basis-Authentifizierungssystem in Betracht kommt. Die Response-Nachricht 26 kann somit unter Verwendung des Schlüssels sk1 oder des Schlüssels sk2 erzeugt werden.
  • Ein Angreifer sieht sich nun dem Problem ausgesetzt, dass ein möglicher Klon keinen funktionierenden Block für Deck besitzt, und zwar unter der Annahme, dass der Angreifer nicht in der Lage war, die Funktionalität der Schaltung zu verifizieren und diese korrekt zu implementieren. Bei diesem Ausführungsbeispiel verwendet die Vorrichtung entweder einen geheimen Schlüssel sk1, der von dem NVM (für das Basis-Authentifizierungsschema) erhalten wird, kann jedoch auch einen geheimen Schlüssel sk2 verwenden, der von einem EDP erhalten wird. Der zugrundeliegende Algorithmus ist in beiden Fällen gleich, etwa ECDSA. Mache Bauteile, etwa umfassend Deck und GEN_SKs, können gegen Analyse durch Reverse Engineering geschützt sein.
  • Bei einem alternativen Ausführungsbeispiel kann ein geheimer Schlüssel k' verwendet werden, um jedes Host-individuelle EDPHID zu verschlüsseln. So beinhalten bei der Markteinführung Hosts nur das verschlüsselte EDP'HID = Enc''k(EDPHID). Nun muss zur verzögerten Merkmalsaktivierung nicht notwendigerweise jeder Host ein individuelles EDPHID/pk-Paar empfangen, sondern es kann bspw. der Empfang von lediglich k' genügen, um die bereits vorhandenen, Host-individuellen EDPHID/pk-Paare zu entriegeln. Ohne Zugriff auf k' ist es rechentechnisch nicht machbar, die verschlüsselten Daten zu erhalten, z. B. wenn eine starke Chiffrierung, wie AES (Advanced Encryption Standard), verwendet wird.
  • Ein Vorteil der beschriebenen Verfahrens besteht darin, dass es die Annahme über die Schlüsselsicherheit verdreht. In diesem Sinn besitzt im Stand der Technik jede Vorrichtung einen unterschiedlichen Schlüssel und die Authentizität des Schlüssels wird durch ein digitales Zertifikat sichergestellt. Wenn ein Schlüssel verloren geht, kann er kopiert und für Authentifizierungen verwendet werden, die durch jeden beliebigen Host akzeptiert werden. Da die Schlüssel nun jedoch an einen Host gebunden sind, wird, selbst wenn ein Angreifer einen Schlüssel sk oder v aus einer Vorrichtung extrahieren kann, die Erzeugung eines funktionierenden Klons nicht ermöglicht. Da andere Hosts mit unterschiedlichen EDP/pk-Paaren versehen sind, wird der Schlüssel nicht akzeptiert werden. So müsste ein Benutzer, um eine geklonte Vorrichtung zu ermöglichen (unter der Annahme, dass DECk nicht geklont wurde), zuerst sk extrahieren, das dem EDP des Hosts entspricht, und diesen in einen Klon übertragen. Oder aber der Benutzer müsste EDP/pk in einem Host durch dasjenige ersetzen, mit dem der Klon programmiert wurde. Beides scheint wirtschaftlich schwer machbar.
  • Folglich könnten Ausführungsbeispiele auch unmittelbar nach der Markteinführung als eine zusätzliche Sicherheitsmaßnahme verwendet werden, um Angriffe auf die Basis-Authentifizierung (z. B. Seitenkanal- oder Fehlerangriffe) weniger hilfreich zu machen. Ein Angreifer kann nicht mehr durch Extrahieren eines geheimen Schlüssels aus dem asymmetrischen Authentifizierungssystem Erfolg haben, da auch die Funktionalität von Deck geklont werden muss. Der Angreifer kann den Schlüssel, der durch das Host-System verwendet wird, auf das der Klon letztendlich angewendet wird, nicht antizipieren. Ferner können diese Merkmale ohne Kryptographie oder hochentwickelte Geheimschlüssel-Speicherung in dem Host erzielt werden. Die einzige Bedingung besteht in der Bereitstellung von Hosts (oder Gruppen von Hosts) mit individuellen EDPHID/pk-Paaren.
  • Zur erweiterten Variabilität von Ausführungsbeispielen kann die Deck-Schaltung durch eine ROM-Maske ausgebildet sein. Zusätzliche Daten könnten in einer ROM-Maske oder durch Einsetzen von Sicherungen vorhanden sein. Dies verhindert die Wiederverwendung eines Chips für unterschiedliche Anwendungsszenarien.
  • Eine Vorrichtung könnte durch den Host unter Verwendung eines analogen Merkmals (z. B. eines großen Stroms) deaktiviert werden, wenn das Verbrauchsgut aufgebraucht ist.
  • Ausführungsbeispiele ermöglichen die Verwendung eines Öffentlicher-Schlüssel-Schemas mit sehr kurzer Schlüssellänge. Da nun jeder Host einen individuellen Schlüssel besitzt, wird der Wert des Durchbrechens des kryptographischen Mechanismus stark vermindert. Folglich könnten selbst Authentifizierungsprotokolle mit elliptischen Kurven mit einer Länge von höchstens 200 Bits, höchstens 150 Bits oder 100 Bits ausreichend Sicherheit schaffen, da ein kryptographischer Angriff nur einen Aufbau von Klonen ermöglicht, die mit einem spezifischen Host funktionieren. Das Langzeitgeheimnis ist die Funktionalität von DECk. Außerdem wird für das erfundene Verfahren keine Verifizierung von Zertifikaten oder Transfer von öffentlichen Schlüsseln benötigt. Dies kann den Code-Fußabdruck von Software auf dem Host oder der Vorrichtung vermindern.
  • Es wird außerdem darauf hingewiesen, dass ein Wert in dem NVM auch als geheime Eingabe in DECk verwendet werden könnte. Dies ermöglicht die Verwendung eines Chips für mehrere Kunden. Dieser Ansatz verhindert eine „Überkreuz-Verwendung“. Es wird ferner darauf hingewiesen, dass keine vollständig funktionsfähige Verschlüsselung/Entschlüsselung nötig ist, die aus einer Prozedur für ENCk/DECk besteht. Eine geheime Funktion y = f (x) ist ausreichend. Das Datenpaket, etwa EDP ist dann x und der Wert f(EDP) ist der geheime Schlüssel sk.
  • Ausführungsbeispiele können angewendet werden zur
    • - Verbesserung der Sicherheit von Produkten mit einem Basis-Authentifizierungsmechanism us
    • - Bereitstellung einer verzögerten Funktionsaktivierung
    • - Einzel-Verwendung für eine ultrakostengünstige Authentifizierung für Vorrichtungen ohne NVM oder mit nur sehr eingeschränktem nicht-flüchtigen Speicher
  • Obwohl manche Aspekte im Zusammenhang mit einer Vorrichtung beschrieben wurden, versteht es sich, dass diese Aspekte auch eine Beschreibung des entsprechenden Verfahrens darstellen, sodass ein Block oder ein Bauelement einer Vorrichtung auch als ein entsprechender Verfahrensschritt oder als ein Merkmal eines Verfahrensschrittes zu verstehen ist. Analog dazu stellen Aspekte, die im Zusammenhang mit einem oder als ein Verfahrensschritt beschrieben wurden, auch eine Beschreibung eines entsprechenden Blocks oder Details oder Merkmals einer entsprechenden Vorrichtung dar.
  • Je nach bestimmten Implementierungsanforderungen können Ausführungsbeispiele der Erfindung in Hardware oder in Software implementiert sein. Die Implementierung kann unter Verwendung eines digitalen Speichermediums, beispielsweise einer Floppy-Disk, einer DVD, einer Blu-ray Disc, einer CD, eines ROM, eines PROM, eines EPROM, eines EEPROM oder eines FLASH-Speichers, einer Festplatte oder eines anderen magnetischen oder optischen Speichers durchgeführt werden, auf dem elektronisch lesbare Steuersignale gespeichert sind, die mit einem programmierbaren Computersystem derart zusammenwirken können oder zusammenwirken, dass das jeweilige Verfahren durchgeführt wird. Deshalb kann das digitale Speichermedium computerlesbar sein. Manche Ausführungsbeispiele gemäß der Erfindung umfassen also einen Datenträger, der elektronisch lesbare Steuersignale aufweist, die in der Lage sind, mit einem programmierbaren Computersystem derart zusammenzuwirken, dass eines der hierin beschriebenen Verfahren durchgeführt wird.
  • Allgemein können Ausführungsbeispiele der vorliegenden Erfindung als Computerprogrammprodukt mit einem Programmcode implementiert sein, wobei der Programmcode dahin gehend wirksam ist, eines der Verfahren durchzuführen, wenn das Computerprogrammprodukt auf einem Computer abläuft. Der Programmcode kann beispielsweise auch auf einem maschinenlesbaren Träger gespeichert sein.
  • Andere Ausführungsbeispiele umfassen das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren, wobei das Computerprogramm auf einem maschinenlesbaren Träger gespeichert ist.
  • Mit anderen Worten ist ein Ausführungsbeispiel des erfindungsgemäßen Verfahrens somit ein Computerprogramm, das einen Programmcode zum Durchführen eines der hierin beschriebenen Verfahren aufweist, wenn das Computerprogramm auf einem Computer abläuft. Ein weiteres Ausführungsbeispiel der erfindungsgemäßen Verfahren ist somit ein Datenträger (oder ein digitales Speichermedium oder ein computerlesbares Medium), auf dem das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren aufgezeichnet ist.
  • Ein weiteres Ausführungsbeispiel des erfindungsgemäßen Verfahrens ist somit ein Datenstrom oder eine Sequenz von Signalen, der bzw. die das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren darstellt bzw. darstellen. Der Datenstrom oder die Sequenz von Signalen kann bzw. können beispielsweise dahin gehend konfiguriert sein, über eine Datenkommunikationsverbindung, beispielsweise über das Internet, transferiert zu werden.
  • Ein weiteres Ausführungsbeispiel umfasst eine Verarbeitungseinrichtung, beispielsweise einen Computer oder ein programmierbares Logikbauelement, die dahin gehend konfiguriert oder angepasst ist, eines der hierin beschriebenen Verfahren durchzuführen.
  • Ein weiteres Ausführungsbeispiel umfasst einen Computer, auf dem das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren installiert ist.
  • Bei manchen Ausführungsbeispielen kann ein programmierbares Logikbauelement (beispielsweise ein feldprogrammierbares Gatterarray, ein FPGA) dazu verwendet werden, manche oder alle Funktionalitäten der hierin beschriebenen Verfahren durchzuführen. Bei manchen Ausführungsbeispielen kann ein feldprogrammierbares Gatterarray mit einem Mikroprozessor zusammenwirken, um eines der hierin beschriebenen Verfahren durchzuführen. Allgemein werden die Verfahren bei einigen Ausführungsbeispielen seitens einer beliebigen Hardwarevorrichtung durchgeführt. Diese kann eine universell einsetzbare Hardware wie ein Computerprozessor (CPU) sein oder für das Verfahren spezifische Hardware, wie beispielsweise ein ASIC.
  • Die oben beschriebenen Ausführungsbeispiele stellen lediglich eine Veranschaulichung der Prinzipien der vorliegenden Erfindung dar. Es versteht sich, dass Modifikationen und Variationen der hierin beschriebenen Anordnungen und Einzelheiten anderen Fachleuten einleuchten werden. Deshalb ist beabsichtigt, dass die Erfindung lediglich durch den Schutzumfang der nachstehenden Patentansprüche und nicht durch die spezifischen Einzelheiten, die anhand der Beschreibung und der Erläuterung der Ausführungsbeispiele hierin präsentiert wurden, beschränkt sei.

Claims (28)

  1. Vorrichtung mit: einer Empfangseinrichtung (12), die ausgebildet ist, um ein Datenpaket (14) von einem Kommunikationspartner zu empfangen; einer Datenverarbeitungseinrichtung (16; 48), die konfiguriert ist, um das Datenpaket (14) zu verarbeiten, um einen geheimen Wert (18) zu erhalten; und einer Sendeeinrichtung (28); und einer Authentifizierungseinrichtung (22; 52), die ausgebildet ist, um eine Challenge-Nachricht (24) zu empfangen, um den geheimen Wert zum Erstellen einer Response-Nachricht (26) zu verwenden; wobei die Sendeeinrichtung (28) ausgebildet ist, um die Sende-Nachricht (32) so zu erstellen, dass diese die Response-Nachricht (26) aufweist.
  2. Vorrichtung gemäß Anspruch 1, bei der die Datenverarbeitungseinrichtung (16; 48) ausgebildet ist, um eine schwer vorhersagbare Funktion auszuführen, um den geheimen Wert (18) zu erhalten; oder um eine Verschlüsselungs- oder Entschlüsselungsfunktion unter Verwendung eines geheimen Schlüssels (18) auszuführen, um den geheimen Wert zu erhalten.
  3. Vorrichtung gemäß Anspruch 2, bei der die Datenverarbeitungseinrichtung (16; 48) ausgebildet ist, um die schwer vorhersagbare Funktion obfuskiert auszuführen, um den geheimen Wert (18) zu erhalten; oder um die Verschlüsselungs- oder Entschlüsselungsfunktion unter Verwendung eines geheimen Schlüssels und obfuskiert auszuführen, um den geheimen Wert (18) zu erhalten.
  4. Vorrichtung gemäß einem der vorangehenden Ansprüche, bei der der geheime Wert (18) einen Startwert zur Generierung eines privaten Schlüssels eines Authentifizierungsverfahrens umfasst; und die Vorrichtung eingerichtet ist, um den privaten Schlüssel zum Erstellen zumindest eines Teils der Sende-Nachricht (32) zu verwenden.
  5. Vorrichtung gemäß Anspruch 4, bei der das Authentifizierungsverfahren ein asymmetrisches Verschlüsselungsverfahren oder ein Signaturverfahren umfasst.
  6. Vorrichtung gemäß einem der vorangehenden Ansprüche, die ausgebildet ist, um den geheimen Wert (18) ausschließlich in einem flüchtigen Datenspeicher zu speichern.
  7. Vorrichtung gemäß einem der vorangehenden Ansprüche, die keinen nicht-flüchtigen Speicher aufweist; oder bei der Speicherzellen eines nicht-flüchtigen Speichers permanentprogrammiert sind.
  8. Vorrichtung gemäß einem der vorangehenden Ansprüche, die ausgebildet ist, um eine Auswahlnachricht (56) zu empfangen; und einen Datenspeicher (54) aufweist, der ausgebildet ist, um einen Schlüssel für die Datenverarbeitungseinrichtung (48) bereitzustellen, wobei die Vorrichtung ausgebildet ist, um den Schlüssel in Reaktion auf die Auswahlnachricht (56) zu ändern.
  9. Vorrichtung gemäß einem der vorangehenden Ansprüche, die ausgebildet ist, um eine Auswahlnachricht zu empfangen; und eine oder mehrere Verarbeitungs-Logikschaltungen aufweist, die eingerichtet sind, mehrere Varianten einer Logikfunktion zur Verarbeitung des Datenpakets (14) vorzusehen; wobei die Vorrichtung eine Auswahleinrichtung (58) aufweist, die eingerichtet ist, um in Reaktion auf den Empfang der Auswahlnachricht (56) die Verwendung einer ersten Variante der Logikfunktion zum Verarbeiten zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zum Verarbeiten zu beginnen; und/oder eine oder mehrere Authentifizierungs-Logikschaltungen aufweist, die eingerichtet sind, mehrere Varianten einer Logikfunktion zur Authentifizierung der Vorrichtung zu implementieren; und eine Auswahleinrichtung (58) aufweist, die eingerichtet ist, in Reaktion auf den Empfang der Auswahlnachricht (56) die Verwendung einer ersten Variante der Logikfunktion zur Authentifizierung zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zur Authentifizierung zu beginnen.
  10. Vorrichtung gemäß einem der vorangehenden Ansprüche, die eine Auswahleinrichtung (58) aufweist, die ausgebildet ist, um die Auswahlnachricht (56) zu empfangen und auszuwerten und um die Auswahlnachricht (56) zu verifizieren; wobei die Auswahleinrichtung ausgebildet ist, um die erste Variante der Logikfunktion nur dann zu beenden und die zweite Variante der Logikfunktion zu beginnen, wenn die Verifikation erfolgreich ist.
  11. Vorrichtung gemäß Anspruch 10, bei der die Auswahleinrichtung (58) ausgebildet ist, um unter Verwendung einer Hashfunktion einen Hashwert basierend auf der Auswahlnachricht (56) zu bestimmen, und um die Verifikation als erfolgreich einzustufen, wenn der Hashwert einem vorbestimmten Wert entspricht und/oder in einem vorbestimmten Wertebereich liegt; oder um die die Verifikation als nicht erfolgreich einzustufen, wenn der Hashwert dem vorbestimmten Wert nicht entspricht.
  12. Verbrauchsgut umfassend eine Vorrichtung nach einem der vorangehenden Ansprüche.
  13. Vorrichtung, die ausgebildet ist, um einen Kommunikationspartner zu authentifizieren, und die Folgendes aufweist: einen Datenspeicher (34), der eingerichtet ist, um ein Datenpaket (14) und einen Schlüssel (36) zu speichern; eine Datenschnittstelle (42), die zum Austausch von Nachrichten mit einem Kommunikationspartner eingerichtet ist; eine Steuerungseinrichtung (38), die ausgebildet ist, um das Datenpaket (14) aus dem Datenspeicher (34) zu lesen und mittels der Datenschnittstelle (42) an den Kommunikationspartner zu senden; und eine Authentifizierungseinrichtung (44), die ausgebildet ist, um mittels der Datenschnittstelle (42) eine Nachricht (32) von dem Kommunikationspartner zu empfangen, die eine Authentifizierungsinformation aufweist; und um unter Verwendung des Schlüssels (36) die Authentifizierungsinformation auf eine Gültigkeit in Bezugnahme auf das Datenpaket zu überprüfen, um ein Authentifizierungsergebnis (46) zu erhalten; wobei die Vorrichtung ausgebildet ist, um eine weitere Interaktion mit dem Kommunikationspartner abhängig von dem Authentifizierungsergebnis (46) auszuführen.
  14. Vorrichtung gemäß Anspruch 13, bei der der Schlüssel einen öffentlichen Schlüssel eines Authentifizierungsverfahrens umfasst, wobei die Vorrichtung ausgebildet ist, um die Authentifizierungsinformation in Unkenntnis eines privaten Schlüssels des Authentifizierungsverfahrens zu überprüfen.
  15. Vorrichtung gemäß Anspruch 13 oder 14, bei der die Authentifizierungseinrichtung (22; 52) ausgebildet ist, um unter Verwendung der Datenschnittstelle (42) eine Challenge-Nachricht (24) an den Kommunikationspartner zu senden; und um die Nachricht als zur Challenge-Nachricht (24) gehörige Response-Nachricht (26) zu empfangen, die unter Verwendung eines privaten Schlüssels des Authentifizierungsverfahrens erzeugt wurde; wobei der Schlüssel ein zum privaten Schlüssel gehöriger öffentlicher Schlüssel des Authentifizierungsverfahrens ist.
  16. Vorrichtung gemäß Anspruch 15, bei der der private Schlüssel unter Verwendung eines geheimen Werts (18) erzeugt ist, der aus dem Datenpaket durch Weiterverarbeitung erhalten wird.
  17. Vorrichtung gemäß einem der Ansprüche 13 bis 16, die ausgebildet ist, um eine Auswahlnachricht (56) an den Kommunikationspartner zu senden, die eine Anweisung enthält, um einen Schlüssel zum Verarbeiten des Datenpakets in Reaktion auf die Auswahlnachricht (56) zu ändern; und/oder um in Reaktion auf den Empfang der Auswahlnachricht die Verwendung einer ersten Variante einer Logikfunktion zum Verarbeiten des Datenpakets zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zur Verarbeitung des Datenpakets (14) zu beginnen; und/oder um in Reaktion auf den Empfang der Auswahlnachricht die Verwendung einer ersten Variante einer Logikfunktion zur Authentifizierung zu beenden und die Verwendung einer zweiten Variante der Logikfunktion zur Authentifizierung zu beginnen.
  18. Vorrichtung gemäß einem der Ansprüche 13 bis 17, die als verbrauchende Vorrichtung für ein Verbrauchsgut eingerichtet ist, wobei das Verbrauchsgut oder eine damit verbundene Vorrichtung der Kommunikationspartner ist.
  19. System mit: einer authentifizierenden Vorrichtung gemäß einem der Ansprüche 13 bis 18; und einer zu authentifizierenden Vorrichtung nach einem der Ansprüche 1 bis 12; wobei die authentifizierende Vorrichtung und die zu authentifizierenden Vorrichtung wechselseitige Kommunikationspartner bilden.
  20. Verfahren (500) zum Bereitstellen einer Vorrichtung mit folgenden Schritten: Anordnen (510) einer Empfangseinrichtung zum Empfangen eines Datenpakets von einem Kommunikationspartner; Anordnen (520) einer Datenverarbeitungseinrichtung, so dass diese konfiguriert ist, um das Datenpaket zu verarbeiten, um einen geheimen Wert zu erhalten; Anordnen (530) einer Sendeeinrichtung; und Anordnen (540) einer Authentifizierungseinrichtung, so dass diese ausgebildet ist, um eine Challenge-Nachricht zu empfangen, um den geheimen Wert zum Erstellen einer Response-Nachricht zu verwenden; so dass die Sendeeinrichtung ausgebildet ist, um die Sende-Nachricht so zu erstellen, dass diese die Response-Nachricht aufweist.
  21. Verfahren (600) zum Bereitstellen einer Vorrichtung mit folgenden Schritten: Anordnen (610) eines Datenspeichers, so dass dieser eingerichtet ist, um ein Datenpaket und einen Schlüssel zu speichern; Anordnen (620) einer Datenschnittstelle zum Austausch von Nachrichten mit einem Kommunikationspartner; Anordnen (630) einer Steuerungseinrichtung, so dass diese ausgebildet ist, um das Datenpaket aus dem Datenspeicher zu lesen und mittels der Datenschnittstelle an den Kommunikationspartner zu senden; und Anordnen (640) einer Authentifizierungseinrichtung, so dass diese ausgebildet ist, um mittels der Datenschnittstelle eine Nachricht von dem Kommunikationspartner zu empfangen, die eine Authentifizierungsinformation aufweist; und um unter Verwendung des Schlüssels die Authentifizierungsinformation auf eine Korrespondenz mit dem Datenpaket zu überprüfen, um ein Authentifizierungsergebnis zu erhalten; so dass die Vorrichtung ausgebildet ist, um den Kommunikationspartner zu authentifizieren und eine weitere Interaktion mit dem Kommunikationspartner abhängig von dem Authentifizierungsergebnis auszuführen.
  22. Verfahren nach Anspruch 21, das mehrfach ausgeführt wird, um eine Mehrzahl von Vorrichtungen bereitzustellen, wobei das Verfahren ferner aufweist: vorrichtungsindividuelles oder gruppenindividuelles Hinterlegen von eines der Gruppe oder der Vorrichtung zugehörigen Datenpakets und assoziiertem Schlüssel.
  23. Verfahren (700) zum Herstellen einer Mehrzahl von Vorrichtungen mit folgendem Schritt: Einrichten (710) der Mehrzahl von Vorrichtungen, so dass jede der Mehrzahl von Vorrichtungen ein Datenpaket und einen assoziierten Schlüssel aufweist, und eingerichtet ist, um eine Authentifizierung eines Kommunikationspartners unter Übermittlung des Datenpaketes an den Kommunikationspartner und unter Überprüfung einer von dem Kommunikationspartner erhaltenen Authentifizierungsinformation auf eine Korrespondenz mit dem Datenpaket unter Verwendung des Schlüssels auszuführen, so dass in der Mehrzahl von Vorrichtungen vorrichtungsindividuell oder gruppenindividuell verschiedene Datenpakete und Schlüssel gespeichert sind.
  24. Verfahren nach Anspruch 23, das ausgeführt wird, so dass ein unberechtigter Abgriff eines in dem Datenpaket enthaltenen geheimen Werts und ein Transfer des geheimen Werts auf einen Klon eines Kommunikationspartners, höchstens für die Vorrichtung oder eine Gruppe von Vorrichtungen zu einem positiven Authentifizierungsergebnis bei Verwenden des Klons führt.
  25. Verfahren (800) mit folgenden Schritten: Empfangen (810) eines Datenpakets von einem Kommunikationspartner; Empfangen (820) einer Challenge-Nachricht; Verarbeiten (830) des Datenpakets, um einen geheimen Wert zu erhalten; und Verwenden (840) des geheimen Werts zum Erstellen einer Response-Nachricht; Senden (850) einer Sende-Nachricht an den Kommunikationspartner, so dass die Sende-Nachricht eine auf dem geheimen Wert basierende Information und die Response-Nachricht aufweist.
  26. Verfahren (900) zum Authentifizieren eines Kommunikationspartners mit folgenden Schritten: Lesen (910) eines Datenpakets aus einem Datenspeicher; Lesen (920) eines Schlüssels aus dem Datenspeicher; Senden (930) des Datenpakets an den Kommunikationspartner; Empfangen (940) einer Nachricht von dem Kommunikationspartner, die eine Authentifizierungsinformation aufweist; Überprüfen (950) der Authentifizierungsinformation unter Verwendung des Schlüssels, um ein Authentifizierungsergebnis zu erhalten; und Ausführen (960) einer weiteren Interaktion mit dem Kommunikationspartner abhängig von dem Authentifizierungsergebnis.
  27. Authentifizierungsverfahren (1000) mit folgenden Schritten: Lesen (910) eines Datenpakets aus einem Datenspeicher; Lesen (920) eines Schlüssels aus dem Datenspeicher; Übermitteln (1030) des Datenpakets von einer Vorrichtung an einen Kommunikationspartner; Übermitteln (1040) einer Challenge-Nachricht an den Kommunikationspartner; Verarbeiten (830) des Datenpakets durch den Kommunikationspartner, um einen geheimen Wert zu erhalten; Verwenden (840) des geheimen Werts zum Erstellen einer Response-Nachricht; Senden (850) einer Nachricht, die eine auf dem geheimen Wert basierende Authentifizierungsinformation und die Response-Nachricht aufweist, durch den Kommunikationspartner an die Vorrichtung; Überprüfen (950) der Authentifizierungsinformation durch die Vorrichtung unter Verwendung des Schlüssels, um ein Authentifizierungsergebnis zu erhalten; und Ausführen (960) einer weiteren Interaktion zwischen der Vorrichtung und dem Kommunikationspartner abhängig von dem Authentifizierungsergebnis.
  28. Computerprogramm mit einem Programmcode zur Durchführung des Verfahrens nach einem der Ansprüche 25 bis 27, wenn das Programm auf einem Computer läuft.
DE102020202532.0A 2020-02-27 2020-02-27 Vorrichtungen und verfahren zur authentifizierung Pending DE102020202532A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102020202532.0A DE102020202532A1 (de) 2020-02-27 2020-02-27 Vorrichtungen und verfahren zur authentifizierung
US17/186,450 US20210273939A1 (en) 2020-02-27 2021-02-26 Devices and methods for authentication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020202532.0A DE102020202532A1 (de) 2020-02-27 2020-02-27 Vorrichtungen und verfahren zur authentifizierung

Publications (1)

Publication Number Publication Date
DE102020202532A1 true DE102020202532A1 (de) 2021-09-02

Family

ID=77271441

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020202532.0A Pending DE102020202532A1 (de) 2020-02-27 2020-02-27 Vorrichtungen und verfahren zur authentifizierung

Country Status (2)

Country Link
US (1) US20210273939A1 (de)
DE (1) DE102020202532A1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060204004A1 (en) 2005-03-08 2006-09-14 Texas Instruments Incorporated System and method for secure authentication of a "smart" battery by a host
DE102014108221A1 (de) 2013-06-18 2014-12-18 Maxim Integrated Products, Inc. Gesicherte Module unter Verwendung eindeutiger Identifikationselemente
US20150318998A1 (en) 2014-05-05 2015-11-05 Securekey Technologies Inc. Methods and systems for client-enhanced challenge-response authentication
US20170257367A1 (en) 2016-03-07 2017-09-07 Electronics And Telecommunications Research Institute Electronic devices and method for performing authentication between electronic devices

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8301833B1 (en) * 2007-06-01 2012-10-30 Netlist, Inc. Non-volatile memory module
EP2731040B1 (de) * 2012-11-08 2017-04-19 CompuGroup Medical SE Computersystem zum Speichern und Aufrufen von verschlüsselten Datenposten, Client-Computer, Computerprogrammprodukt und computerimplementiertes Verfahren
WO2016032975A1 (en) * 2014-08-28 2016-03-03 Cryptography Research, Inc. Generating a device identification key from a base key for authentication with a network
US10375043B2 (en) * 2014-10-28 2019-08-06 International Business Machines Corporation End-to-end encryption in a software defined network
US9516065B2 (en) * 2014-12-23 2016-12-06 Freescale Semiconductor, Inc. Secure communication device and method
EP3349393A1 (de) * 2015-06-30 2018-07-18 Visa International Service Association Gegenseitige authentifizierung von vertraulicher kommunikation
US9942757B2 (en) * 2016-01-19 2018-04-10 Google Inc. Identifying a mobile computing device
US9992029B1 (en) * 2017-04-05 2018-06-05 Stripe, Inc. Systems and methods for providing authentication to a plurality of devices
WO2018222132A2 (zh) * 2017-05-29 2018-12-06 华为国际有限公司 网络认证方法、网络设备及核心网设备
US10715318B2 (en) * 2018-01-23 2020-07-14 International Business Machines Corporation Lightweight cryptographic service for simplified key life-cycle management
FR3081654A1 (fr) * 2018-06-22 2019-11-29 Orange Procede, dispositif et serveur de distribution securisee d'une configuration a un terminal
US11093627B2 (en) * 2018-10-31 2021-08-17 L3 Technologies, Inc. Key provisioning
EP3664361B1 (de) * 2018-12-06 2024-05-22 Secure-IC SAS Verfahren und vorrichtungen für gesicherte identitätsbasierte verschlüsselungssysteme mit zwei vertrauenswürdigen zentren
US10462112B1 (en) * 2019-01-09 2019-10-29 Cyberark Software Ltd. Secure distributed authentication data
US11347411B2 (en) * 2019-07-17 2022-05-31 Ubs Business Solutions Ag Secure storing and processing of data
US11516207B2 (en) * 2020-06-02 2022-11-29 Jpmorgan Chase Bank, N.A. Method for provision of identity verification certificate

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060204004A1 (en) 2005-03-08 2006-09-14 Texas Instruments Incorporated System and method for secure authentication of a "smart" battery by a host
DE102014108221A1 (de) 2013-06-18 2014-12-18 Maxim Integrated Products, Inc. Gesicherte Module unter Verwendung eindeutiger Identifikationselemente
US20150318998A1 (en) 2014-05-05 2015-11-05 Securekey Technologies Inc. Methods and systems for client-enhanced challenge-response authentication
US20170257367A1 (en) 2016-03-07 2017-09-07 Electronics And Telecommunications Research Institute Electronic devices and method for performing authentication between electronic devices

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Hamilton E., u.a.: Clarifying Obfuscation: Improving the Security of White-Box DES. Proceedings of the International Conference on Information Technology: Coding and Computing (ITCC 2005), 2005.

Also Published As

Publication number Publication date
US20210273939A1 (en) 2021-09-02

Similar Documents

Publication Publication Date Title
EP3108610B1 (de) Verfarhen und system zum erstellen und zur gültigkeitsprüfung von gerätezertifikaten
EP3474172B1 (de) Zugangskontrolle unter verwendung einer blockchain
DE102009024604B4 (de) Erzeugung eines Session-Schlüssels zur Authentisierung und sicheren Datenübertragung
DE60200081T2 (de) Sichere Benutzer- und Datenauthenifizierung über ein Kommunikationsnetzwerk
DE60202605T2 (de) Verfahren zur sicherung eines elektronischen geräts, sicherheitssystem und elektronisches gerät
DE112005001654B4 (de) Verfahren zum Übermitteln von Direct-Proof-Privatschlüsseln an Geräte mittels einer Verteilungs-CD
EP2765752B1 (de) Verfahren zum versehen eines mobilen endgeräts mit einem authentisierungszertifikat
DE102012219112A1 (de) Verwenden einer PUF zur Prüfung einer Authentisierung, insbesondere zum Schutz vor unberechtigtem Zugriff auf eine Funktion eines ICs oder Steuergerätes
DE102014204713A1 (de) Erzeugung von Schlüsseln unter Verwendung sicherer Hardware
DE112011100182T5 (de) Transaktionsprüfung für Datensicherheitsvorrichtungen
DE112008001436T5 (de) Sichere Kommunikation
WO2012010380A1 (de) Verfahren zum kryptographischen schutz einer applikation
EP3337085B1 (de) Nachladen kryptographischer programminstruktionen
DE102020205993B3 (de) Konzept zum Austausch von kryptographischen Schlüsselinformationen
EP2442251B9 (de) Individuelle Aktualisierung von Computerprogrammen
WO2015180867A1 (de) Erzeugen eines kryptographischen schlüssels
EP1801724B1 (de) Verfahren und Anordnung zum Bereitstellen sicherheitsrelevanter Dienste durch ein Sicherheitsmodul einer Frankiermaschine
DE102020206561A1 (de) Vorrichtungen und verfahren zur authentifizierung
DE102020202532A1 (de) Vorrichtungen und verfahren zur authentifizierung
DE102009058516A1 (de) Vorrichtung und Verfahren zum Gewähren von Zugriffsrechten auf eine Wartungsfunktionalität
EP3289509B1 (de) Verfahren zur erzeugung einer elektronischen signatur
EP3882796A1 (de) Nutzerauthentifizierung unter verwendung zweier unabhängiger sicherheitselemente
DE102020201768A1 (de) Vorrichtung und Verfahren zum Betreiben derselben
WO2014063775A1 (de) Verfahren zum sicheren verwalten von teilnehmeridentitätsdaten
EP2880810B1 (de) Authentifizierung eines dokuments gegenüber einem lesegerät

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication