DE102020201768A1 - Vorrichtung und Verfahren zum Betreiben derselben - Google Patents

Vorrichtung und Verfahren zum Betreiben derselben Download PDF

Info

Publication number
DE102020201768A1
DE102020201768A1 DE102020201768.9A DE102020201768A DE102020201768A1 DE 102020201768 A1 DE102020201768 A1 DE 102020201768A1 DE 102020201768 A DE102020201768 A DE 102020201768A DE 102020201768 A1 DE102020201768 A1 DE 102020201768A1
Authority
DE
Germany
Prior art keywords
signature
key
designed
memory
sender information
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
DE102020201768.9A
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 DE102020201768.9A priority Critical patent/DE102020201768A1/de
Publication of DE102020201768A1 publication Critical patent/DE102020201768A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

Eine Vorrichtung weist einen Speicher, der zum Speichern eines Schlüssels ausgebildet ist, eine Kommunikationsschnittstelle, die zum Empfangen eines Signals ausgebildet ist, das eine Senderinformation aufweist, und eine Steuereinheit auf, die zum Lesen des Schlüssels aus dem Speicher, zum Erzeugen einer Signatur über die Senderinformation unter Verwendung des Schlüssels und zum Deaktivieren des Schlüssels, um so eine weitere Verwendung des Schlüssels zur Erzeugung einer weiteren Signatur zu deaktivieren, ausgebildet ist. Die Vorrichtung ist zum Bereitstellen der Signatur ausgebildet.

Description

  • Die vorliegende Offenbarung bezieht sich auf Vorrichtungen und Verfahren zum Betreiben derselben. Die vorliegende Offenbarung bezieht sich insbesondere auf Vorrichtungen, insbesondere Verbrauchsartikel, die beispielsweise während einer Authentifizierung für eine Signatur sorgen.
  • Fälschungen sind ein großes Problem bei Verbrauchermärkten mit Verbrauchsartikeln. Es besteht ein hohes Risiko, dass professionelle Unternehmen Klone von Authentifizierungsvorrichtungen erzeugen, die sich genauso verhalten, wie es die Originalvorrichtung tun würde. In dem Fall, dass Klone auf dem Markt auftauchen, gibt es nur eingeschränkte Möglichkeiten, diese zu erkennen, weil sie sich wie die Originalvorrichtung verhalten.
  • Folglich besteht Bedarf nach der Behinderung des Klonens von Vorrichtungen.
  • Gemäß einem Ausführungsbeispiel weist eine Vorrichtung einen Speicher auf, der zum Speichern eines Schlüssels ausgebildet ist. Die Vorrichtung weist eine Kommunikationsschnittstelle auf, die zum Empfangen eines Signals ausgebildet ist, das eine Senderinformation aufweist. Die Vorrichtung weist ferner eine Steuereinheit auf, die zum Lesen des Schlüssels aus dem Speicher, zum Erzeugen einer Signatur über die Senderinformation unter Verwendung des Schlüssels und zum Deaktivieren des Schlüssels, um so eine weitere Verwendung des Schlüssels zur Erzeugung einer weiteren Signatur zu sperren, ausgebildet ist. Die Vorrichtung ist zum Bereitstellen der Signatur ausgebildet.
  • Gemäß einem Ausführungsbeispiel weist eine Vorrichtung einen ersten Speicherbereich, auf dem ein Schlüssel gespeichert ist, und einen zweiten Speicherbereich auf, auf dem eine Senderinformation gespeichert ist. Die Vorrichtung weist eine Kommunikationsschnittstelle auf, die zum Senden der Senderinformation und zum Empfangen, von einem Kommunikationspartner, einer Signatur und eines digitalen Zertifikats basierend auf dem Senden der Senderinformation ausgebildet ist. Die Vorrichtung weist eine Steuereinheit auf, die zum Verifizieren der empfangenen Signatur unter Verwendung des Schlüssels ausgebildet ist. Die Steuereinheit ist dazu ausgebildet, den Kommunikationspartner basierend auf der gesendeten Senderinformation und der empfangenen Signatur zu authentifizieren, und durch Verwenden des Zertifikats. In dem Fall einer fehlgeschlagenen Verifizierung ist die Vorrichtung dazu ausgebildet, eine Wechselwirkung mit dem Kommunikationspartner einzuschränken.
  • Weitere Ausführungsbeispiele beziehen sich auf Verfahren zum Betreiben derartiger Vorrichtungen und auf ein Computerprogramm, auf ein nicht flüchtiges Speichermedium, auf dem ein Programmcode zum Ausführen von Befehlen gespeichert ist, die, wenn derselbe auf einem Computer läuft, ein jeweiliges Verfahren implementieren.
  • Weitere Ausführungsbeispiele sind in den abhängigen Ansprüchen definiert.
  • Ausführungsbeispiele der vorliegenden Offenbarung werden Bezug nehmend auf die beigefügten Zeichnungen detaillierter beschrieben. Es zeigen:
    • 1 ein schematisches Blockdiagramm einer Vorrichtung, die zum Erzeugen einer Signatur ausgebildet ist, gemäß einem Ausführungsbeispiel;
    • 2 ein schematisches Blockdiagramm einer Vorrichtung, die zum Speichern der erzeugten Signatur in einem Speicher ausgebildet ist, in dem zuvor ein Schlüssel zum Erzeugen der Signatur gespeichert wurde, gemäß einem Ausführungsbeispiel;
    • 3a ein schematisches Blockdiagramm zumindest eines Teils eines Verfahrens gemäß einem Ausführungsbeispiel;
    • 3b ein schematisches Flussdiagramm eines weiteren Verfahrens gemäß einem Ausführungsbeispiel, das als Implementierung einer atomaren Operation betrachtet werden kann;
    • 4 ein schematisches Blockdiagramm einer Vorrichtung, die zum Verwenden zuvor berechneter Werte zum Erzeugen einer Signatur basierend auf ECDSA ausgebildet ist, gemäß einem Ausführungsbeispiel;
    • 5 ein schematisches Blockdiagramm einer Host-Vorrichtung gemäß einem Ausführungsbeispiel;
    • 6 ein schematisches Flussdiagramm eines Verfahrens zum Betreiben einer Vorrichtung gemäß einem Ausführungsbeispiel;
    • 7 ein schematisches Flussdiagramm eines Verfahrens zum Betreiben einer Host-Vorrichtung gemäß einem Ausführungsbeispiel; und
    • 8 ein schematisches Flussdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel, das durch die Vorrichtung aus 5 und eine Vorrichtung aus 1, 2 oder 4 durchgeführt wird.
  • Gleiche oder äquivalente Elemente oder Elemente mit gleicher oder äquivalenter Funktionalität sind in der folgenden Beschreibung durch gleiche oder äquivalente Bezugszeichen bezeichnet, selbst wenn sie in unterschiedlichen Figuren auftauchen.
  • In der folgenden Beschreibung ist eine Vielzahl von Details aufgeführt, um eine gründlichere Erläuterung von Ausführungsbeispielen der vorliegenden Erfindung bereitzustellen. Es ist für Fachleute auf diesem Gebiet jedoch zu erkennen, dass Ausführungsbeispiele der vorliegenden Erfindung ohne diese spezifischen Details praktiziert werden können. In anderen Fällen sind bekannte Strukturen und Vorrichtungen in Blockdiagrammform und nicht im Detail gezeigt, um eine Verschleierung von Ausführungsbeispielen der vorliegenden Erfindung zu vermeiden. Zusätzlich können Merkmale der hierin beschriebenen unterschiedlichen Ausführungsbeispiele miteinander kombiniert werden, es sei denn, dies ist ausdrücklich anderweitig angegeben.
  • Ausführungsbeispiele beziehen sich auf das Konzept einer Erzeugung einer Signatur, sowie zur Bereitstellung einer derartigen Signatur während eines Authentifizierungsvorgangs. Einige Ausführungsbeispiele beziehen sich auf ein Authentifizieren einer Vorrichtung an einer anderen Vorrichtung, wobei sich einige Ausführungsbeispiele auf das Authentifizieren eines Verbrauchsartikels an einem Host beziehen.
  • Als Verbrauchsartikel ist eine Vorrichtung zu verstehen, die zum Bereitstellen, Speichern und/oder Lagern eines Betriebsmittels (oder einer Ressource) ausgebildet ist, wobei das Betriebsmittel verwendet, ausgegeben oder verbraucht wird, wenn der Verbrauchsartikel betrieben wird. Ein derartiger Verbrauchsartikel kann beispielsweise durch einen Host betrieben werden, der das Betriebsmittel verwendet. Beispiele von Paaren aus Verbrauchsartikel und Host sind die folgenden:
    • • Patrone/Toner - Drucker
    • • Batterie - Elektronische Vorrichtung, die durch die Batterie versorgt wird
    • • Patrone - E-Zigarette
    • • Prepaid-Karte - Prepaid-Mobiltelefon
    • • Kaffeekapsel - Kaffeemaschine
    • • Wasserfilterpatrone - Wasserfilter
  • Beispielsweise weist der Verbrauchsartikel ein (physisches) Material auf, das verbraucht werden soll, wie beispielsweise eine Druckerpatrone, bestimmte spezifische Batterietypen oder eine Nachfüllpatrone einer E-Zigarette. Beispielsweise kann das Material eine medizinische Substanz (z. B. ein Pharmazeutikum) für eine medizinische Vorrichtung sein, das in einem jeweiligen Behälter gespeichert ist. Gemäß anderen Ausführungsbeispielen kann der Verbrauchsartikel ein nicht physisches Betriebsmittel aufweisen, das verbraucht werden soll, z. B. Guthaben, wie für ein Prepaid-Mobiltelefon.
  • Der Verbrauchsartikel kann beispielsweise auf physische Weise mit dem Host verbunden sein, er kann in den Host eingesteckt oder dort angebracht sein. Der Verbrauchsartikel kann austauschbar sein und kann deshalb von dem Host trennbar sein.
  • Der Hersteller des Hosts kann Interesse daran haben, dass nur Verbrauchsartikel, die von ihm selbst produziert werden, oder von einem Lizenznehmer, mit dem Host verwendet werden.
  • Deshalb kann der Host zum Durchführen einer Authentifizierungsprozedur oder eines Authentifizierungsverfahrens ausgebildet sein, durch die/das der Verbrauchsartikel sich selbst an dem Host authentifiziert. Der Host kann eine Steuereinheit aufweisen, die einen Betrieb des Hosts mit dem Verbrauchsartikel basierend auf einem Ergebnis der Authentifizierung steuert oder sogar einschränkt. Die Verwendung des Verbrauchsartikels könnte beispielsweise nur dann erlaubt sein, wenn der Verbrauchsartikel sich selbst an dem Host erfolgreich authentifiziert hat.
  • Es besteht jedoch ein Risiko, dass ein nicht autorisierter Plagiator des Verbrauchsartikels auch eine Authentifizierungsschaltung des Verbrauchsartikels klont. Dies kann beispielsweise durch reverse engineering (Nachkonstruktion) der Authentifizierungsschaltung des Verbrauchsartikels erfolgen, beispielsweise eines Chips, der die Authentifizierungsschaltung aufweist und in dem Verbrauchsartikel angebracht oder beinhaltet ist.
  • Deshalb haben sich Ausführungsbeispiele bisher auf Gegenmaßnahmen gegen das Klonen von Authentifizierungsschaltungen von Verbrauchsartikeln bezogen, zumindest in einer Weise, dass die Anstrengung zum Bereitstellen eines ausreichend gut funktionierenden Klons so hoch wird, dass es für sowohl den Plagiator oder den Verbraucher, der das geklonte Produkt kauft, uninteressant wird, den Klon zu erzeugen oder zu verwenden.
  • Derartige Maßnahmen können jedoch mit physischen Gegenmaßnahmen kombiniert werden, die das Risiko von Fehlern in einem Klon erhöhen. Eine Option besteht beispielsweise in der Implementierung einer versteckten Funktionalität, die zu einem späteren Zeitpunkt aktiviert wird.
  • 1 zeigt ein schematisches Blockdiagramm einer Vorrichtung 10 gemäß einem Ausführungsbeispiel. Die Vorrichtung 10 kann zumindest einen Teil einer Vorrichtung aufweisen, die an einem Verbrauchsartikel angebracht ist, oder kann einen Verbrauchsartikel aufweisen, z. B. wenn sie außerdem einen Speicher/Behälter zum Speichern des zu verbrauchenden Betriebsmittels aufweist.
  • Die Vorrichtung 10 kann für eine Einmal-Bindung oder Einmal-Einstellung implementiert sein, beispielsweise im Hinblick auf die Zuordnung ihres Betriebs zu einer spezifischen Vorrichtung, einem spezifischen Betriebsmodus oder dergleichen. Die Vorrichtung 10 kann beispielsweise ein Verbrauchsartikel sein. Die Bindung kann sich auf eine Authentifizierung bei einem spezifischen Host des Verbrauchsartikels beziehen. Alternativ kann die Vorrichtung 10 auf einen spezifischen Betriebsmodus eingestellt sein. Wie noch beschrieben werden wird, ist die Vorrichtung 10 zum Erzeugen einer Signatur 12 ausgebildet. Die Signatur 12 kann für eine Authentifizierung verwendet werden, z. B. bei einem Host, und so eine Einstellung oder Bindung der Vorrichtung 10 an dem oder den Host. Alternativ kann eine unterschiedliche Einstellung oder Programmierung durch die Signatur 12 beschrieben werden, z. B. der zuvor erwähnte Betriebsmodus.
  • Die Vorrichtung 10 weist einen Speicher 14 auf, der zum Speichern eines Schlüssels 16 ausgebildet ist, der in 1 gezeigt und als K bezeichnet ist. Bei dem in 1 beschriebenen Beispiel ist der Schlüssel 16 in dem Speicher 14 gespeichert.
  • Die Vorrichtung 18 weist eine Kommunikationsschnittstelle 181 auf, die zum Empfangen eines Signals 22 ausgebildet ist. Das Signal 22 kann eine Senderinformation (TI) 24 aufweisen, die in 1 gezeigt und als TI bezeichnet ist. Die Senderinformation 24 kann beispielsweise einen Identifizierer einer Vorrichtung aufweisen, die das Signal 22 sendet, nämlich die Senderinformation 24. Die Senderinformation 24 kann eine eindeutige Information oder ein eindeutiger Identifizierer innerhalb des jeweiligen Kommunikationssystems sein. Unter den Hosts oder einer Teilmenge derselben (beispielsweise basierend auf einem geographischen Ort, Betriebsmodus, Serie oder dergleichen) beispielsweise kann die Senderinformation 24 eindeutig sein.
  • Die Vorrichtung 10 weist eine Steuereinheit 26 auf, die in Kommunikation mit dem Speicher 14 und der Kommunikationsschnittstelle 181 steht, um so Zugriff auf den Schlüssel 16 und die Senderinformation 24 zu besitzen. Die Steuereinheit 26 ist so zum Lesen des Schlüssels 16 aus dem Speicher 14 ausgebildet. Ferner ist die Steuereinheit 26 zum Erzeugen der Signatur 12 über die Senderinformation 24 unter Verwendung des Schlüssels 16 ausgebildet. Die Steuereinheit 26 ist zum Deaktivieren des Schlüssels 16, nachdem dieser aus dem Speicher 14 gelesen wurde, ausgebildet, beispielsweise während oder nach einer Erzeugung der Signatur 12. Durch Deaktivieren des Schlüssels 16 wird auch eine weitere Verwendung des Schlüssels 16 gesperrt, insbesondere zur Erzeugung einer weiteren Signatur. Beispielsweise kann die Steuereinheit 26 für ein Steuersignal 28 an den Speicher 14 sorgen, um so den Schlüssel 16 zu manipulieren oder zu löschen.
  • Die Vorrichtung 10 ist zum Bereitstellen der Signatur 12, beispielsweise an einer Kommunikationsschnittstelle 182 , ausgebildet. Die Kommunikationsschnittstelle 181 und/oder 182 kann eine verdrahtete oder drahtlose Kommunikationsschnittstelle sein. Wahlweise können die Kommunikationsschnittstellen 181 und 182 eine gemeinsame Kommunikationsschnittstelle bilden. Gemäß einem Ausführungsbeispiel wird die Signatur 12 an den Sender des Signals 22, z. B. einen Host, bereitgestellt. Gemäß einem Ausführungsbeispiel ist die Vorrichtung 10 ein Verbrauchsartikel.
  • Die Vorrichtung 10 kann zum internen oder externen Bereitstellen der Signatur 12, beispielsweise an eine weitere Vorrichtung, ausgebildet sein. Bei dem beschriebenen Ausführungsbeispiel kann die Vorrichtung 10 zum Senden der Signatur 12 an den Host ausgebildet sein, während gemäß einem Ausführungsbeispiel die Vorrichtung 10 die Signatur 12 auch intern bereitstellen kann, z. B. zum Steuern spezifischer Betriebsmodi, die eingestellt, gebunden oder ausgelöst werden durch die Information, die mit dem Signal 22 empfangen wird, und die fix eingestellt sein können. Ein derartiges Fixieren kann erhalten werden, da ein neues oder späteres Signal 22 mit unterschiedlicher Senderinformation 24 nicht in eine weitere Signatur übertragen bleiben kann, da kein Schlüssel 16 vorhanden ist. Deshalb ist, sobald die Signatur 12 erzeugt ist, nur eine Information, die von dem Schlüssel 16 hergeleitet wird, verfügbar, der Schlüssel 16 selbst ist jedoch gesperrt.
  • Ein Deaktivieren des Schlüssels 16 kann bei einem Ausführungsbeispiel durch Löschen des Schlüssels 16 aus dem Speicher 14 implementiert sein. Dies bedeutet, dass das Signal 28 Befehle aufweisen kann, um so den Schlüssel 16 aus dem Speicher 14 zu löschen. Gemäß einem Ausführungsbeispiel ist die Vorrichtung 10 zum sicheren Löschen des Schlüssels 16 ausgebildet. Zum sicheren Löschen des Schlüssels 16 kann ein Inhalt der Speicherzellen, in denen der Wert des Schlüssels 16 gespeichert ist, zumindest einmal manipuliert werden, anstatt nur einen Bibliothekseintrag zu löschen, der auf den Schlüssel 16 zeigt. Zum Erhalten einer sicheren Löschung kann beispielsweise der Inhalt der Speicherzelle einmal oder mehrere Male überschrieben werden, um eine Rekonstruktion des zuvor gespeicherten Werts zu vermeiden. Alternativ oder zusätzlich kann die Vorrichtung auch die Signatur in anderen Teilen ihres Speichers speichern, insbesondere einem nicht flüchtigen Speicher. Ein Speichern der Signatur kann es ermöglichen, dass die Vorrichtung nach einem Herunterfahren dazu ausgebildet sein kann, die Signatur durch Lesen derselben aus dem Speicher wieder bereitzustellen.
  • 2 zeigt ein schematisches Blockdiagramm einer Vorrichtung 20 gemäß einem Ausführungsbeispiel. Die Vorrichtung 20 kann gleiche oder ähnliche Komponenten wie die Vorrichtung 10 aufweisen. Die Vorrichtung 20 kann zum Lesen des Schlüssels 16 aus dem Speicher 14 ausgebildet sein. Insbesondere kann der Schlüssel 16 in einem verbundenen oder verwürfelten Speicherbereich des Speichers 14 gespeichert sein, d. h. in einer Anzahl benachbarter oder verteilter Speicherzellen. Die Vorrichtung 20 kann zum Speichern der Signatur 12 in einem Speicherbereich des Speichers 14 ausgebildet sein, der zumindest teilweise den Speicherbereich beinhaltet, in dem der Schlüssel 16 gespeichert wurde oder gespeichert ist. Dies bedeutet, dass die Signatur 12 in zumindest einer Speicherzelle gespeichert ist, die zuvor Informationen des Schlüssels 16 getragen hat. Dadurch kann ein sicheres Löschen des Schlüssels 16 durchgeführt werden und kann gleichzeitig die Menge erforderlichen Speichers niedrig gehalten werden. Alternativ oder zusätzlich zu einem Speichern des Schlüssels 16 in verwürfelter Weise in dem Speicher 14 kann die Signatur 12 als Verwürfelungsdaten in dem Speicher 14 gespeichert sein. Ein Speichern von Daten in verwürfelter Weise kann als Speichern von Informationen in einer nicht offensichtlichen Anordnung oder Reihenfolge verstanden werden. Dies kann Verwürfelungsoperationen, Verschlüsselungstechniken, Verteilen von Daten über Speicherbereiche, die voneinander beabstandet sind, Verwenden von Hash-Funktionen oder dergleichen beinhalten.
  • Die Vorrichtung 10 und/oder die Vorrichtung 20 kann zum Erzeugen der Signatur 12 und zum Deaktivieren des Schlüssels 10 als atomare Operation ausgebildet sein. Als eine atomare Operation oder atomare Handlung ist zu verstehen, dass keine Fragmentierung oder Unterbrechung/Neustart der Prozedur möglich ist. Vor, während oder direkt nach Durchführung einer Erzeugung der Signatur 12 wird der Schlüssel 16 derart gelöscht, dass die Signatur 12 nur zu Zeiten zugänglich ist, zu denen der Schlüssel 16 deaktiviert wurde.
  • Die Vorrichtung 20 und/oder eine unterschiedliche Vorrichtung, die hierin beschrieben ist, wie beispielsweise die Vorrichtung 10, kann zum Blockieren ihres Betriebs, zumindest in Teilen, ausgebildet sein, bis ein erfolgreiches Binden durchgeführt wurde, d. h. bis eine Signatur basierend auf der empfangenen Senderinformation 24 erzeugt ist. Alternativ oder zusätzlich kann die Vorrichtung zum Blockieren zumindest eines Teils des Betriebs der Vorrichtung ausgebildet sein, an der diese angebracht ist, z. B. des Verbrauchsartikels, während dieser ungebunden ist.
  • Alternativ oder zusätzlich kann durch eine Verwendung der Kommunikationsschnittstelle 181 eine unterschiedliche Kommunikationsschnittstelle oder Signaleingabe eines Blockiersignals 32 empfangen werden, beispielsweise von dem Host. Das Blockiersignal kann eine Anforderung an die Vorrichtung 20 anzeigen, zumindest einen Teil ihres Betriebs zu blockieren. Die Vorrichtung 20 kann zum Blockieren ihres Betriebs, d. h. zumindest des angeforderten Teils, ansprechend auf das Blockiersignal 32 ausgebildet sein. Beispielsweise kann die Vorrichtung 10 und/oder 20 ein Betriebsblockierelement 34 aufweisen, z. B. ein physisches System, wie zum Beispiel einen Absperrhahn, einen Transistor oder dergleichen, der eine Freigabe des Betriebsmittels, das in dem Verbrauchsartikel gespeichert ist, verhindert. Basierend auf dem Blockiersignal 32 kann die Steuereinheit 26 das Betriebsblockierelement 34 steuern, z. B. unter Verwendung eines Steuersignals 36, das basierend auf dem Blockiersignal 32 erzeugt wird. Insbesondere kann ein derartiges Blockiersignal 32 erwartet oder empfangen werden, bevor die Signatur 12 erfolgreich erzeugt wurde oder wenn eine falsche Signatur 12 erzeugt wurde. Alternativ oder zusätzlich kann das Steuersignal 36 basierend auf einer Abwesenheit einer erzeugten Signatur erzeugt werden, d. h. basierend auf dem ungebundenen Zustand der Vorrichtung 10 und/oder 20.
  • Anders ausgedrückt kann eine nicht binäre Vorrichtung, die an einem Verbrauchsartikel, wie z. B. einer Druckerpatrone, angebracht ist, aktiv die Freigabe der Verbrauchsartikelware, z. B. Tinte, blockieren. So kann der Host die Verbrauchsartikelware nicht verwenden, bis die Bindung erfolgreich erfolgt ist. Diese Blockierung der Freigabe der Waren kann über einen allgemeinen vorgeschlagenen Eingabe-/Ausgabe-Stift (GPIO-Stift; GPIO = general proposed input/output) erzielt werden, oder andere Einrichtungen, wie z. B. Nahfeldkommunikation (NFC). Das Signal kann dann durch ein physisches System 32, z. B. einen Absperrhahn, verwendet werden, das die Freigabe einer Verbrauchsartikelware verhindert.
  • Wie beispielsweise in 3a dargestellt ist, die ein schematisches Blockdiagramm zumindest eines Teils eines Verfahrens gemäß einem Ausführungsbeispiel zeigt, das beispielsweise durch die Vorrichtung 10 oder 20 implementiert sein kann, kann der Schlüssel 16 aus dem Speicher 14 gelesen und bei einem Schritt 310 deaktiviert werden. Beispielsweise kann der Schlüssel 16 an einen RAM (Direktzugriffspeicher) der Steuereinheit 26 übertragen und dann aus dem Speicher 14 gelöscht werden. In einem derartigen Fall ist der Schlüssel 16 in diesem Moment nur in dem Speicher der Steuereinheit 26 vorhanden. Bei einem Schritt 320 kann die Signatur 12 unter Verwendung des Schlüssels 16 erzeugt werden. Wahlweise kann die Signatur 12 wieder in dem Speicher 14 gespeichert werden. Ein Unterbrechen des Verfahrens 300 zwischen den Schritten 310 und 320 jedoch könnte zu einer Situation führen, in der eine Erzeugung der Signatur 12 nicht neu gestartet werden kann, da der Schlüssel in dem Speicher 14 nicht mehr verfügbar ist. Basierend auf dem Neustart könnte der Schlüssel auch aus dem Speicher der Steuereinheit 26 verloren gehen. Eine Erzeugung der Signatur 12 ist jedoch ein kurzer Vorgang, so dass das Risiko einer erfolglosen Fertigstellung des Verfahrens 300 vergleichsweise gering ist, während gleichzeitig für die verbesserte Sicherheit gesorgt wird, dass der Schlüssel 16 nur ein einziges Mal an die Steuereinheit 26 übertragen wird, was die Gelegenheit für einen Angreifer, der beispielsweise die Datenleitungen angreift, auf eine einzige Gelegenheit einschränkt, den Schlüssel 16 zu erhalten. Das Verfahren 300 ist so eine atomare Operation.
  • 3b zeigt ein schematisches Flussdiagramm eines Verfahrens 350 gemäß einem Ausführungsbeispiel, das auch als eine atomare Operation betrachtet werden kann, die beinhaltet, dass die Signatur nur zu Zeiten zugänglich ist oder bereitgestellt wird, zu denen der Schlüssel deaktiviert wurde, um so einen Neustart der Prozedur oder eine Wiederverwendung des Schlüssels zu verhindern, z. B. wenn die Vorrichtung während einer Bestimmung der Signatur 12 von Leistung getrennt wird. Bei einem Schritt 360 wird der Schlüssel 16 aus dem Speicher 14 gelesen. Bei einem Schritt 370 wird die Signatur 12 unter Verwendung des Schlüssels 16 erzeugt. Bei einem Schritt 380 wird der Schlüssel 16 gelöscht und/oder zumindest teilweise durch Speichern der Signatur 12 in dem Speicher 16 überschrieben. Ein Implementieren der Schritte 370 und 380, zumindest teilweise gleichzeitig, kann auch ein Erhalten einer atomaren Operation eines Lesens des Schlüssels, Erzeugens der Signatur und Deaktivierens des Schlüssels ermöglichen. Erst nachdem der Schlüssel gelöscht wurde, wird die Signatur 12 für den Sender 182 verfügbar gemacht.
  • Gemäß einem Ausführungsbeispiel kann die Steuereinheit 26 zum Blockieren des Betriebs durch Steuern des Betriebsblockierelements 34, solange das Signal 32 empfangen wird, als Entsperrsignal, d. h. eine Bestätigung, die von dem Host empfangen wird, ausgebildet sein. Gemäß einem Ausführungsbeispiel kann die Vorrichtung 20 das Betriebsblockierelement 34 unabhängig von einem Blockiersignal 32 steuern, beispielsweise kann sie den Betrieb der Vorrichtung 20 blockieren, solange keine Signatur 12 erzeugt und/oder in dem Speicher 14 gespeichert wird. Dies bedeutet, dass erst nach erfolgreicher Erzeugung der Signatur 12 ein Betrieb der Vorrichtung 20 ermöglicht wird. Anders ausgedrückt haben sich Ausführungsbeispiele auf die Aufgabe bezogen, bei der ein Host die Authentizität einer Vorrichtung, die an einem Verbrauchsartikel angebracht ist, überprüft. Die beschriebenen Vorrichtungen und Verfahren ermöglichen die Verhinderung eines Klonens der Vorrichtung durch Einschränken der Fähigkeit eines Angreifers, einen Angriff auszuführen, auf einen kurzen Zeitrahmen. Ausführungsbeispiele basieren auf folgender Annahme:
    • • Die Vorrichtung sollte an einen spezifischen Host gebunden sein, wenn sie erstmals an dem Host angebracht wird; danach funktioniert die Vorrichtung nur mit diesem spezifischen Host. Der Host ist durch eine eindeutige Host-ID identifiziert.
    • • Ziel: Ein Kloner muss diesen Bindungsmechanismus durchbrechen, um in der Lage zu sein, ein „frisches“ Schlüsselpaar zu erhalten, das für einen Klon verwendet werden kann. Ein Klon darf nicht an eine spezifische Host-ID gebunden sein, um universell verwendbar zu sein.
    • • Das „Binden“ kann als eine atomare „einmalige“ Operation implementiert werden. So hat der Kloner nur eine Gelegenheit, an das Geheimnis zu gelangen. So wird die Entwicklung des Angriffs teuer (z. B. werden viele Vorrichtungen benötigt) und ein kleiner Fehler führt dazu, dass der Angreifer den physischen Angriff wiederholen muss (z. B. Verwendung von Sondierungsnadeln).
  • Ausführungsbeispiele beziehen sich ferner auf die Vorstellung, dass Kernmerkmale einer Vorrichtung, die an einem Verbrauchsartikel angebracht sein kann, solange funktionsunfähig bleiben, bis ein Bindungsvorgang durchgeführt wurde. Derartige Kernmerkmale können ein durch den Benutzer zugänglicher NVM (NVM = non-volatile memory; nicht flüchtiger Speicher), eine gegenseitige Authentifizierung basierend auf gemeinschaftlich verwendeten symmetrischen Schlüsseln oder eine Einweg-Authentifizierung basierend auf ECC (ECC = Elliptic Curve Cryptography; Elliptische-Kurven-Kryptographie) sein. Das Bindungsmerkmal kann jedoch auch die einzige verfügbare Sicherheitsfunktionalität sein.
  • 4 zeigt ein schematisches Blockdiagramm einer Vorrichtung 40 gemäß einem Ausführungsbeispiel. Die Vorrichtung 40 kann zumindest in Teilen gemäß der Vorrichtung 10 und/oder 20 implementiert sein. Zum Erzeugen der Signatur 12 kann die Vorrichtung zum Verwenden eines ECDSA (ECDSA = Elliptic Curve Digital Signature Algorithm; Elliptische-Kurve-Digitalsignaturalgorithmus) ausgebildet sein, was ein hohes Sicherheitsniveau ermöglicht. Ein derartiger Algorithmus kann jedoch für eine Mehrzahl von Optionen und Vielzahlen von Parametern sorgen. Bei der Vorrichtung 40 ist es möglich, dass diese implementiert ist, um die Signatur 12 nur einmal zu erzeugen, weshalb der jeweilige Algorithmus, wie zum Beispiel der ECDSA, nur ein einziges Mal verwendet wird. Für eine derartige einmalige Verwendung kann die Vorrichtung 40 vorberechnete Werte 38 verwenden, die in 4 gezeigt sind und als PDV (vorbestimmte Werte) bezeichnet werden und in dem Speicher 14 gespeichert sind. Diese vorberechneten Werte können eine Teilmenge von Werten aufweisen, die mit ECDSA erhältlich sind, und können vorberechnet sein, um diese zu speichern, z. B. während der Herstellung oder Programmierung. Derartige vorberechnete Werte können eine Einsparung oder Verhinderung von Bemühungen zum Bereitstellen der Fähigkeit für eine komplexe Erzeugung dieser Werte während eines Betriebs der Vorrichtung 40 ermöglichen, da diese zur nur einmaligen Erzeugung der Signatur entworfen sein kann. Ein Verwenden derartiger vorberechneter Werte kann eine Implementierung des Betriebs und Erzeugung der Signatur 12 auf schnelle und effiziente Weise ermöglichen.
  • Die Vorrichtung 40 kann zum derartigen Manipulieren des Speichers 14 ausgebildet sein, dass zumindest ein Teil der vordefinierten Werte aus dem Speicher gelöscht wird, nachdem die Signatur 12 erzeugt wurde. Dies bedeutet, dass nach einer Übertragung der vordefinierten Werte 38 an einen RAM der Steuereinheit 26 (vor, während oder nach einer Erzeugung der Signatur 12) zumindest ein Teil der vordefinierten Werte 38 aus dem Speicher 14 gelöscht werden kann.
  • Alternativ oder zusätzlich kann die Vorrichtung 40 zum Verwenden eines unterschiedlichen Einmal-Konzepts zur Erzeugung der Signatur 12 ausgebildet sein. Ein Beispiel eines derartigen unterschiedlichen Einmal-Signaturschemas kann die Verwendung einer Hash-basierten Funktion sein. Der beschriebene ECDSA kann über Binär- oder Primkurven durchgeführt werden. Alternativ zu EDCSA oder Hash-Codes können andere Digitalsignaturalgorithmus (DSA)-Verfahren implementiert sein.
  • Anders ausgedrückt kann zur Berechnung der Bindungssignatur ein beliebiges geeignetes Digitalsignaturschema, z. B. RSA-Signaturen, Digitalsignaturalgorithmus (DSA), Elliptische-Kurve-Digitalsignaturalgorithmus (ECDSA), verwendet werden. Ferner kann es in einigen Szenarien ausreichend sein, auch ein Identifizierungsschema (z. B. Feige-Fiat-Schamir) anstelle eines voll funktionellen Digitalsignaturschemas zu verwenden.
  • Zusätzlich ist es, da bei einigen Ausführungsbeispielen die Bindungssignatur nur einmal berechnet und der Schlüssel danach zerstört wird, möglich, Einmal-Signaturen zu verwenden. Das System kann (beispielsweise) mit ECDSA über Binär- oder Primärkurven oder DSA eingesetzt werden.
  • Zum Signieren einer Nachricht m können die folgenden Schritte implementiert werden:
    1. 1. Berechnen von e = HASH(m). (Hier ist HASH eine kryptografische Hash-Funktion, wie zum Beispiel SHA-2, wobei die Ausgabe in eine Ganzzahl umgewandelt wird.)
    2. 2. z soll die Ln Bits ganz links aus e sein, wobei Ln die Bitlänge der Gruppenordnung n ist. (Es wird darauf hingewiesen, dass z größer als n sein kann, jedoch nicht länger.)
    3. 3. Auswählen einer kryptografisch sicheren zufälligen Ganzzahl k aus [1, n - 1].
    4. 4. Berechnen des Kurvenpunkts (x1,y1) = k x G.
    5. 5. Berechnen von r = x1 mod n. Falls r = 0, zurück zu Schritt 3.
    6. 6. Berechnen von s = k-1(z + rdA) mod n. Falls s = 0, zurück zu Schritt 3.
    7. 7. Die Signatur ist das Paar (r, s). (Und (r, -s mod n) ist ebenso eine gültige Signatur.
  • In Verbindung mit Ausführungsbeispielen, z. B. Schritt 3 oben, wird darauf hingewiesen, dass „zufällig“ oder „einheitlich“ diesbezüglich (z. B. zufälliges Auswählen eines beliebigen zufälligen Werts/einer beliebigen zufälligen Ganzzahl) ein echt zufälliger, ein pseudozufälliger oder deterministischer Ansatz zur Erhaltung eines Werts sein kann. So kann die Eigenschaft einer derartigen „Zufälligkeit“ oder eines bestimmten zufälligen Effekts, der gemäß einem Ausführungsbeispiel verwendet wird, darin bestehen, dass ein Angreifer den Wert nicht kennt und dass Werte sich für zumindest einen Abschnitt von Operationen unterscheiden. Die Zufälligkeit fügt insbesondere ein bestimmtes Entropieniveau zwischen Werten hinzu, die „zufällig“ bestimmt, z. B. erzeugt oder ausgewählt, werden.
  • Ein eindeutiger öffentlicher Bindungsschlüssel QA kann gemäß dem ECDSA-Schema erzeugt werden. Die Vorrichtung kann mit den Werten r,k-1 und rdA ausgestattet sein. Beim Berechnen der Bindungssignatur s = k-1 (r + rdA) mod n kann die Vorrichtung z als den Hash der Nachricht m berechnen, was die Host-ID ist, die durch den Host bereitgestellt wird. Die Vorrichtung kann vordefinierte Werte k-1 und rdA löschen und speichert r, s als Bindungssignatur. Der öffentliche Bindungsschlüssel QA kann in dem NVM der Vorrichtung gespeichert und durch ein digitales Zertifikat authentifiziert werden.
  • Ein bemerkenswerter Vorteil dieses Verfahrens besteht darin, dass die Berechnung durch den Host auf sehr leichte Weise durchgeführt werden kann. Die einzige Operation ist eine Multiplikation und eine Addition in dem Basisfeld der elliptischen Kurve, z. B. Galois-Feld GF(p) oder GF(2m), wenn ECDSA verwendet wird. Folglich können sogar rechenmäßig aufwendige Verfahren des Stands der Technik zum Schutz gegen physische Angriffe verwendet werden, z. B. Maskierung, Teilen, Verstecken, Doppelberechnung oder Scheinberechnungen.
  • Für eine weitere Effizienz können das gleiche Elliptische-Kurven-System und Signaturschema für die Einmal-Signatur wie für die Verifizierung des digitalen Zertifikats verwendet werden. Auf diese Weise kann die Implementierung auf Host-Seite die Softwarebibliothek wiederverwenden, die bereits für die Verifizierung des digitalen Zertifikats vorhanden ist.
  • Ein weiteres Ausführungsbeispiel besteht in der Verwendung eines Hash-basierten Einmal-Signaturschemas. Eine kryptografische Hash-Funktion h(x)=z kann Daten mit willkürlicher Größe auf eine feste Größe abbilden. Die Hash-Funktion h(x) kann effizient berechnet werden. Es kann sehr schwer sein, die Hash-Funktion zu invertieren (x zu finden, wenn nur z gegeben ist), und eine kleine Veränderung an der Eingabe sollte zu einem vollständig unterschiedlichen Hash-Wert führen. Hash-basierte Schemata können lediglich verwendet werden, um Signaturschemata aufzubauen. Sie kombinieren ein Einmal-Signaturschema mit einer speziellen Art von Hash-Baum und wurden 1979 von Ralph Merkle erfunden. Eine Einmal-Signatur beruht lediglich auf Falltürfunktionen, die Funktionen sind, die einfach zu berechnen, jedoch schwierig zu invertieren sind. Eine Einmal-Signatur kann eine Nachricht nur signieren und Hash-basierte Schemata nähern sich diesem Problem durch Verwenden von Einmal-Signaturen zusammen mit einer Weise zum Authentifizieren der Einmal-Signatur an, ohne zuvor alle öffentlichen Schlüssel veröffentlichen zu müssen. Ein Hash-basiertes Signaturschema kann ein Paar aus öffentlichem/privatem Schlüssel und n Einmal-Signatur-Schlüsselpaare aufweisen. Ein Hash-Baum zusammen mit dem Paar aus öffentlichem/privatem Schlüssel wird verwendet, um diejenigen n Einmalschlüssel zu validieren, die (nur einmal) zur Signatur einer Nachricht verwendet werden. Wenn ein Schema zustandsabhängig ist, kann ein Paar aus Hashbasiertem öffentlichem/privatem Schlüssel nur eine eingeschränkte Anzahl von Nachrichten signieren. Beispiele Hash-basierter Signaturen sind XMSS: eXtended Merkle Signatur (RFC 8391) und Hash-basierte Leighton-Micali-Signaturen (RFC 8554). Diese Schemata können als Einmal-Signatur eingesetzt werden und können verwendet werden, um die Bindungssignatur zu berechnen.
  • Wie erläutert wurde, kann der Schlüssel 14 ein privater Schlüssel eines Paars aus öffentlichem Schlüssel/privatem Schlüssel sein. Die Vorrichtung 40 kann zum Senden, zusammen mit der Signatur 12, eines öffentlichen Schlüssels des Paars aus öffentlichem Schlüssel/privatem Schlüssel und einer digitalen Signatur, die dem privaten Schlüssel zugeordnet ist, ausgebildet sein. Ein derartiges Konzept kann auch durch die Vorrichtung 10 und/oder 20 implementiert sein und ermöglicht an dem Host eine Identifizierung dessen, dass ein korrekter Schlüssel zur Erzeugung der Signatur 12 verwendet wurde. Obwohl symmetrische Schlüssel zur Implementierung von Ausführungsbeispielen verwendet werden können, kann die Verwendung asymmetrischer Schlüssel für eine zusätzliche Sicherheit bzw. einen Anstieg an Schwierigkeiten für einen Angreifer führen, die Vorrichtung zu klonen. Wie in Verbindung mit der Einmal-Signatur erläutert wurde, die eine Einmalbindung ermöglicht, können die Vorrichtungen gemäß Ausführungsbeispielen zum Deaktivieren des Schlüssels 16 nach einer ersten Verwendung desselben zum Erzeugen der Signatur 12 ausgebildet sein. Die Vorrichtung 10, 20 und/oder 40 kann so angepasst sein, dass sie einen Identifizierer eines Senders empfangen, der das Signal 22 sendet, z. B. eine Host-ID. Und zwar unter der Voraussetzung, dass die Signatur 12 als ein Teil eines Authentifizierungsvorgangs ausgeführt werden kann, der zum Binden der Vorrichtung an den Sender eingesetzt werden kann. In diesem Fall kann die Signatur 12 die volle oder einen Teil der Host-ID beinhalten. Die Senderinformation kann auch in die Signatur 12 eingebaut sein und kann eine Zufallszahl aufweisen, die durch den Sender ausgewählt wird. Die Signatur 12 kann ferner Informationen über ein digitales Zertifikat oder einen öffentlichen Schlüssel beinhalten, der durch einen weiteren Authentifizierungsmechanismus verwendet wird. Ein derartiger zusätzlicher Mechanismus ist nicht auf eine Einmal-Authentifizierung eingeschränkt. Durch Binden der Einmal-Signatur an eine mehrmalige Signatur wird die Sicherheit des Gesamtsystems weiter erhöht.
  • Wie beschrieben wurde, können die Vorrichtungen 10, 20 und/oder 40 so implementiert sein, dass sie zumindest einen Teil ihres anvisierten Betriebs blockieren, bis die Bindung durchgeführt wurde. Beispielsweise kann, während eine Kommunikation mit dem Sender oder Host ermöglicht wird, eine Freigabe des Betriebsmittels blockiert werden, bis die Bindung erfolgreich durchgeführt wurde.
  • 5 zeigt ein schematisches Blockdiagramm einer Vorrichtung 50 gemäß einem Ausführungsbeispiel. Die Vorrichtung 50 kann gemäß einigen Ausführungsbeispielen als Host für die Vorrichtung 10, 20 und/oder 40 fungieren. Dies kann auch als Hosten der Vorrichtung 10, 20 beziehungsweise 40 bezeichnet werden. Das Hosten einer Vorrichtung kann als Ausbilden einer Verbindung mit der Vorrichtung, mechanisch und/oder logisch verstanden werden, zum Beispiel mittels Durchführung von Kommunikation. Während beispielweise eine mechanische Verbindung für eine Druckerpatrone geeignet sein kann, ist dies zum Beispiel für eine Karte oder ein Modul nicht notwendig, die/das in Verbindung mit einem Mobiltelefon verwendet werden soll. So kann die Vorrichtung, an die die Senderinformation 22 durch Verwendung einer Kommunikationsschnittstelle 42 gesendet wird, als Kommunikationspartner betrachtet werden.
  • Die Vorrichtung 50 weist einen Speicherbereich 44 auf, auf dem ein Schlüssel 45 gespeichert ist. Wobei in dem Fall eines symmetrischen Verfahrens der Schlüssel 45 der Schlüssel 16 sein kann, in dem Fall eines asymmetrischen Verfahrens jedoch kann der Schlüssel 45 ein öffentlicher Schlüssel einer asymmetrischen Authentifizierung sein, bei der der Schlüssel 16 als privater Schlüssel verwendet werden kann.
  • Die Vorrichtung 50 weist ferner einen Speicherbereich 46 auf, auf dem die Senderinformation 24 gespeichert ist. Die Speicherbereiche 44 und 46 können als zwei separate Speicher implementiert sein, die auf einer gleichen oder unterschiedlichen Technologien basieren, können jedoch auch Teile eines gleichen Speichers sein.
  • Die Vorrichtung 50 kann zum Empfangen, mit der Kommunikationsschnittstelle 42, eines Signals 48 von dem Kommunikationspartner ausgebildet sein, an den sie das Signal 22 gesendet hat. Die Vorrichtung 50 ist zum Empfangen, im Signal 48, der Signatur 12, die in 5 gezeigt und als externe Signatur SE bezeichnet wird, sowie eines digitalen Zertifikats ausgebildet, um so den Schüssel zu verifizieren, der zum Erzeugen der Signatur verwendet wird.
  • Die Vorrichtung 50 weist eine Steuereinheit 52 auf, die zum Authentifizieren des Kommunikationspartners basierend auf der gesendeten Senderinformation und der empfangenen Signatur 12 und durch Verwenden des Zertifikats ausgebildet ist. Die Steuereinheiten können beispielweise eine symmetrische Authentifizierung implementieren, z. B. durch Erzeugen einer internen Signatur SI 54 über die Senderinformation 24 unter Verwendung des Schlüssels 45. Alternativ oder zusätzlich kann ein beliebiges anderes Schema zum Verifizieren der empfangenen Signatur implementiert werden, z. B. unter Verwendung des digitalen Zertifikats und/oder des Schlüssels 45. Die Steuereinheit 52 und/oder die Steuereinheit 26 können als ein Prozessor implementiert sein, z. B. eine zentrale Verarbeitungseinheit (CPU), als eine Mikrosteuerung, eine integrierte Schaltung (IC), eine anwendungsspezifische integrierte Schaltung (ASIC), ein frei programmierbares Gatterarray (FPGA) oder dergleichen.
  • Die Steuereinheit 52 kann so die empfangene Signatur 12 verifizieren. Die Steuereinheit kann die empfangene Signatur durch die Verwendung des Zertifikats authentifizieren. In dem Fall einer verfehlten Verifizierung oder Authentifizierung kann die Vorrichtung 50 eine Wechselwirkung mit dem Kommunikationspartner einschränken. Eine verfehlte Verifizierung oder Authentifizierung kann auch zu finden sein, solange keine Bindung erfolgt ist. Die Vorrichtung 50 kann zum aktiven Blockieren zumindest eines Teils der Wechselwirkung mit dem Kommunikationspartner ausgebildet sein, solange keine Übereinstimmung mit der Signatur 12, die von dem Kommunikationspartner empfangen wird, bestimmt wurde.
  • In dem Fall einer Übereinstimmung kann die Vorrichtung 50 den Kommunikationspartner als autorisierten Kommunikationspartner betrachten, z. B. als gültigen Verbrauchsartikel. Beispielsweise kann ein Einschränken einer Wechselwirkung sich auf die Durchführung nur eines Teils der möglichen Funktionalitäten in Verbindung mit dem Kommunikationspartner beziehen, z. B. Verhindern einer Freigabe von Betriebsmitteln aus dem Verbrauchsartikel. Alternativ oder zusätzlich kann ein Einschränken der Wechselwirkung ein Erzeugen einer Warnung oder Information aufweisen. Ein derartiges Signal kann einem Benutzer anzeigen, dass der Kommunikationspartner als ungültige Vorrichtung betrachtet wird. Alternativ oder zusätzlich kann eine Art spezieller oder zweckgebundener Handlungen implementiert sein.
  • Die Vorrichtung 50 kann zum Senden der Senderinformation 24 an den Kommunikationspartner während einer Zuordnungsprozedur zwischen der Vorrichtung und dem Kommunikationspartner ausgebildet sein. Die Senderinformation 24 weist zum Beispiel einen Identifizierer auf, der eine Identifikation der Vorrichtung 50 und/oder einer Zufallszahl ermöglicht. Eine derartige Zuordnungsprozedur kann beispielsweise eine Verbindung oder Einfügung eines Verbrauchsartikels mit/in einem Host aufweisen.
  • Wie in Verbindung mit der Vorrichtung 40 beschrieben wurde, kann die Steuereinheit 52 zum Verwenden eines Elliptische-Kurven-Systems zum Erzeugen der Signatur 52 ausgebildet sein. Zum Verifizieren des Zertifikats kann auch ein Elliptische-Kurven-System verwendet werden. Gemäß einem Ausführungsbeispiel ist die Steuereinheit 52 zum Verwenden eines gleichen Elliptische-Kurven-Systems zum Erzeugen der Signatur 54 und zum Verifizieren des Zertifikats ausgebildet. Dies ermöglicht die Erzeugung einer Einmal-Signatur, z. B. basierend auf ECDSA, die durch den Host mit den gleichen Operationen oder Instruktionen verglichen mit einem Code verifiziert werden kann, der zum Verifizieren des Zertifikats verwendet wird. Dies kann die Implementierung einer geringen Rechenkomplexität und/oder einen geringen Code-Footprint in der Vorrichtung 50 ermöglichen.
  • Wahlweise kann die Vorrichtung 50 zum Senden des Blockiersignals 32 ausgebildet sein, um so eine Anforderung an den Kommunikationspartner zum Blockieren seines Betriebs im Fall einer fehlenden Übereinstimmung anzuzeigen.
  • Gemäß einem Ausführungsbeispiel ist die Vorrichtung 50 zum Durchführen zusätzlicher Sicherheitsoperationen, Sicherheitstechniken oder Sicherheitsverfahren an der Verifizierung der Signatur ausgebildet. Entsprechend kann/können die Vorrichtungen 10, 20 und/oder 40 entsprechende Sicherheitsoperationen durchführen. Dies bedeutet, dass eine derartige zusätzliche Sicherheitsoperation an dem Host und/oder an dem Verbrauchsartikel implementiert sein kann. Beispiele derartiger zusätzlicher Sicherheitstechniken sind Maskierung, z. B. von Daten oder Operationen, Verstecken von Daten, Durchführen einer doppelten Berechnung und/oder Durchführen von Scheinvorgängen, so dass selbst in dem Fall eines Abhörens des Betriebs der Steuereinheit 52 ein reverse engineering behindert wird.
  • Insgesamt kann die Vorrichtung 50 mit der Vorrichtung 10, 20 und/oder 40 kooperieren. Zur Durchführung der Bindung beispielsweise kann der Host seine eindeutige Host-ID an die Vorrichtung senden.
  • Die Vorrichtung berechnet eine Einmal-Bindungssignatur über die Host-ID unter Verwendung eines privaten Bindungsschlüssels und speichert die Signatur in dem NVM und deaktiviert den privaten Bindungsschlüssel auf atomare Art, der verwendet wird, um die Einmal-Signatur zu erzeugen (z. B. durch Löschen desselben).
  • Der Host erhält die Bindungssignatur und überprüft/verifiziert diese mit dem öffentlichen Bindungsschlüssel und seiner Host-ID. Der öffentliche Bindungsschlüssel wird durch ein digitales Zertifikat authentifiziert. Der Host besitzt unabhängige Mittel zur Überprüfung der Authentizität des digitalen Zertifikats.
  • Die Überprüfung der Bindungssignatur kann zu jeder Zeit durchgeführt werden, zu der der Host die Authentizität der Vorrichtung sicherstellen möchte. Insbesondere überprüft der Host nach einem Leistungszyklus, dass die Vorrichtung die korrekte Bindungssignatur aufweist, und weist die Vorrichtung andernfalls zurück.
  • Sobald die Bindungssignatur erzeugt wurde und der private Bindungsschlüssel gelöscht wurde, könnte ein Angreifer dennoch in der Lage sein, die Vorrichtung in dem momentanen Zustand zu klonen (z. B. Auslesen des NVM oder Durchführen eines Seitenkanalangriffs auf einen weiteren ECC-basierten Authentifizierungsmechanismus). Weitere Hosts werden eine derartige (geklonte) Vorrichtung jedoch nicht akzeptieren, da dies zu einer fehlenden Host-ID-Übereinstimmung führen wird. Da der private Bindungsschlüssel unbrauchbar gemacht wurde (z. B. durch Löschung), wird der Kloner nicht in der Lage sein, eine weitere Bindungssignatur zu erzeugen, und wird der Kloner nicht in der Lage sein, den privaten Bindungsschlüssel zu extrahieren. Der Kloner kann die Vorrichtung nur entweder in dem ungebundenen Zustand oder während des Bindungsvorgangs angreifen. In dem ungebundenen Zustand kann der private Bindungsschlüssel verwürfelt und/oder geschützt gespeichert werden und schwer zu lokalisieren sein. Während des Bindungsvorgangs wird der Schlüssel nur einmal verwendet, und so hat der Angreifer nur einen Versuch, diesen anzugreifen (z. B. durch einen Fehlerangriff oder Seitenkanalangriff).
  • Gemäß einem Ausführungsbeispiel wird die Bindungssignatur über die Host-ID erzeugt. Alternativ oder zusätzlich kann die Bindungssignatur Informationen wie folgende aufweisen:
    • • eine Vorrichtungs-ID
    • • ein Zeitstempel
    • • eine Zufallszahl
    • • eine Firmwareversion des Hosts
    • • die Firmware- oder Hardwareversion der Vorrichtung.
  • Außerdem kann die Bindungssignatur Informationen beinhalten, die an ein digitales Zertifikat gebunden sind, das zur Authentifizierung mit öffentlichem Schlüssel verwendet wird, nachdem die Bindung durchgeführt wurde. Zu diesem Zweck können einige Vorrichtungen ein asymmetrisches Authentifizierungsprotokoll implementieren. Außerdem können sie einen Zählerwert beinhalten, der verwendet werden kann, um eine erwartete Menge an Verbrauchsartikeln zu speichern (z. B. Tintenzähler oder verbleibende Lebensdauer der Vorrichtung). Bei diesem Szenario beinhaltet jede Authentifizierungsvorrichtung üblicherweise einen eindeutigen öffentlichen Authentifizierungs-Öffentlicher-Schlüssel und einen privaten Authentifizierungs-Privatschlüssel, der während der Herstellung erzeugt und in eine speziell geschützte Umgebung eingeführt wird. Der öffentliche Teil dieses Schlüssels kann zusammen mit einer Authentifizierungs-ID durch eine digitale Signatur signiert sein, um ein Authentifizierungs-Digitalzertifikat auszubilden. Ein Host ist in der Lage, die Integrität und Authentizität des Authentifizierungs-Digitalzertifikats und die beinhalteten Daten unter Verwendung öffentlicher Daten zu verifizieren (d. h. des öffentlichen Schlüssels des Authentifizierungs-Digitalzertifikats). Die Authentifizierungsvorrichtung kann gegenüber dem Host beweisen, dass sie in Besitz des Authentifizierungs-Privatschlüssels ist, der dem jeweiligen Authentifizierungs-Öffentlicher-Schlüssel in dem Authentifizierungs-Digitalzertifikat entspricht, und zwar unter Verwendung eines asymmetrischen Authentifizierungsprotokolls (z. B. unter Verwendung eines statischen Diffie-Hellmann-basierten Schemas oder des Elliptische-Kurven-Digitalsignaturalgorithmus (ECDSA)). Der Vorteil eines derartigen Protokolls besteht darin, dass keine geheimen Daten auf Host-Seite erforderlich sind.
  • Die Bindungssignatur kann dann die Host-ID, die Vorrichtungs-ID und die Authentifizierungs-ID beinhalten (nicht ausschließlich), die in dem Authentifizierungs-Digitalzertifikat beinhaltet ist. Dies reduziert die Wahrscheinlichkeit, dass ein Kloner eine Bindungssignatur von einer Vorrichtung in einer anderen Vorrichtung verwenden kann. Ein derartiges Szenario ist möglich, weil die Bindungssignatur nur statische Daten ist, die erhalten werden können durch Beobachten der Kommunikation oder durch einfaches Anfordern derselben von der Vorrichtung, wenn sie als echter Host agiert. Durch Binden weiterer Informationen an die Bindungssignatur wird es schwieriger für einen Angreifer, eine Bindungssignatur gemeinsam mit einer weiteren gehackten/geklonten Vorrichtung zu verwenden, wie zum Beispiel einer Vorrichtung mit unterschiedlicher Authentifizierungs-ID als die Vorrichtung, die verwendet wurde, um die gültige Bindungssignatur zu erzeugen.
  • Gemäß einem Ausführungsbeispiel kann anstelle der Authentifizierungs-ID ein Hash des Authentifizierungs-Digitalzertifikats verwendet werden, um die Bindungssignatur an weitere Informationen in der Vorrichtung zu binden. Alternativ oder zusätzlich können Gegenmaßnahmen eingesetzt werden, um ein einfaches Auslesen der Bindungssignatur zu verhindern. Dies könnte ein Verwürfeln der Informationen oder die Verwendung kryptographischer Protokolle sein, z. B. wenn sich der Host zuerst gegenüber der Vorrichtung authentifizieren muss, um in der Lage zu sein, die Bindungssignatur auszulesen. Ferner kann eine Einrichtung zum Verifizieren der Bindungssignatur auch in das Authentifizierungs-Digitalzertifikat integriert sein.
  • Ausführungsbeispiele können implementiert sein, beispielsweise wo ein Kunde einen Authentifizierungschip verwendet, der an einem Verbrauchsartikel angebracht ist. Insbesondere in Fällen, in denen ein Verbrauchsartikel nicht gemeinschaftlich unter Vorrichtungen verwendet werden sollte, z. B. aus Sicherheitsgründen, können Ausführungsbeispiele für Vorteile sorgen.
  • 6 zeigt ein schematisches Flussdiagramm eines Verfahrens 600 gemäß einem Ausführungsbeispiel. Das Verfahren 600 kann beispielsweise zum Betreiben der Vorrichtung 10, 20 und/oder 40 verwendet werden. Bei einem Schritt 610 wird ein Signal, das eine Senderinformation aufweist, mit der betriebenen Vorrichtung empfangen. Ein Schritt 620 weist ein Lesen eines Schlüssels aus einem Speicher auf. Ein Schritt 630 weist ein Erzeugen einer Signatur über die Senderinformation unter Verwendung des Schlüssels auf. Ein Schritt 640 weist ein Deaktivieren des Schlüssels auf, um so eine weitere Verwendung des Schlüssels zur Erzeugung einer weiteren Signatur zu deaktivieren. Ein Schritt 650 weist ein Bereitstellen der Signatur, beispielsweise zur Authentifizierung, auf. Wie erwähnt wurde, kann das Deaktivieren 640 vor, während oder nach Schritt 630 durchgeführt werden.
  • 7 zeigt ein schematisches Flussdiagramm eines Verfahrens 700 gemäß einem Ausführungsbeispiel. Das Verfahren 700 kann beispielsweise zum Betreiben der Vorrichtung 50 implementiert sein. Ein Schritt 710 weist ein Senden einer Senderinformation mit der Vorrichtung und ein Empfangen, von einem Kommunikationspartner, einer Signatur und eines digitalen Zertifikats basierend auf dem Senden der Senderinformation, auf. Ein Schritt 720 weist ein Erzeugen einer Signatur über die Senderinformation unter Verwendung eines Schlüssels auf, der in einem Speicher der Vorrichtung gespeichert ist. Ein Schritt 730 weist ein Vergleichen der empfangenen Signatur mit der erzeugten Signatur auf. Ein Schritt 740 weist ein Authentifizieren der empfangenen Signatur unter Verwendung des Zertifikats auf. Ein Schritt 750 weist ein Einschränken einer Wechselwirkung mit dem Kommunikationspartner auf. Schritt 750 wird in dem Fall einer fehlenden Übereinstimmung zwischen der empfangenen Signatur und der erzeugten Signatur ausgeführt.
  • 8 zeigt ein schematisches Flussdiagramm eines Verfahrens 800, das zwischen der Vorrichtung 50, die als Host wirkt, und einer Vorrichtung 10, 20 und/oder 40 durchgeführt wird. Wenn wahlweise ein regulärer Befehl gesendet wird 810, der beispielsweise auf einen Betrieb des Verbrauchsartikels bezogen ist, kann dieser eine Ausführung des jeweiligen Befehls blockieren, z. B. da dieser noch ungebunden ist, d. h. die Bindung noch nicht durchgeführt wurde. Ein derartiges Blockieren kann gemäß einem Ausführungsbeispiel durchgeführt werden, bis ein Bindungsbefehl 830 von der Vorrichtung 50 empfangen wird. Das Senden 830 des Bindungsbefehls kann zusammen mit einem Senden der Senderinformation 24 durchgeführt werden, z. B. der ID der Vorrichtung 50. Beispielsweise können beide Informationen mit dem Signal 22 gesendet werden. Basierend darauf kann der Verbrauchsartikel einen Schritt 840 implementieren, bei dem die Signatur berechnet wird, beispielsweise über die empfangene ID. Bei einem Schritt 850 kann die Signatur beispielsweise zusammen mit dem digitalen Zertifikat an den Host 50 gesendet werden.
  • Danach kann bei einem Schritt 860 ein Betrieb des Hosts 50 und/oder des Verbrauchsartikels mit der üblichen ECC(Elliptische-Kurven-Kryptographie)-Operation fortgesetzt werden. Alternativ oder zusätzlich kann ein mehrmaliges Challenge-Response- (oder Forderung-Antwort-) Verfahren zur weiteren Authentifizierung implementiert werden, z. B. unter Verwendung eines weiteren oder des bekannten öffentlichen Schlüssels.
  • Anders ausgedrückt sendet der Host zur Durchführung der Bindung eine eindeutige Host-ID an die Vorrichtung. Die Vorrichtung berechnet eine Einmal-Bindungssignatur über die Host-ID unter Verwendung eines privaten Bindungsschlüssels und speichert die Signatur in dem nicht flüchtigen Speicher und deaktiviert automatisch den privaten Bindungsschlüssel, der verwendet wird, um die Einmal-Signatur zu erzeugen, z. B. durch Löschen derselben. Der Host erhält die Bindungssignatur und überprüft diese mit dem öffentlichen Bindungsschlüssel und seiner Host-ID. Der öffentliche Bindungsschlüssel kann durch ein digitales Zertifikat authentifiziert werden. Der Host kann eine unabhängige Einrichtung zur Überprüfung der Authentizität des digitalen Zertifikats aufweisen. Die Überprüfung der Bindungssignatur wird zu einer beliebigen Zeit durchgeführt, zu der der Host die Authentizität der Vorrichtung sicherstellen möchte. Insbesondere nach einem Leistungszyklus kann der Host überprüfen, dass die Vorrichtung die korrekte Bindungssignatur aufweist, und kann die Vorrichtung andernfalls zurückweisen. Gemäß einem Ausführungsbeispiel kann der Host zum Authentifizieren des Kommunikationspartners (Verbrauchsartikels) unabhängig von einer Verbindung mit einer zentralen Authentifizierungsautorität ausgebildet sein, z. B. unabhängig und ohne ein Authentifizierungs-Backhaul-System.
  • Ausführungsbeispiele sorgen für Vorrichtungen und Verfahren zum Binden von Verbrauchsartikeln an einen Host, um einem Klonen entgegenzuwirken, unter Verwendung von Einmal-Signaturen bereit. Das Konzept zielt darauf ab, ein Klonen der Vorrichtung (Verbrauchsartikel) zu verhindern, indem eine Fähigkeit des Angreifers, einen Angriff auszuführen, auf einen kurzen Zeitrahmen/einen Versuch eingeschränkt wird. Ausführungsbeispiele schlagen so Vorrichtungen (Verbrauchsartikel) vor, die nicht funktionsfähig oder in eingeschränkter Weise funktionsfähig sind, bis ein Bindungsvorgang durchgeführt wurde. Der Bindungsvorgang zerstört den geheimen Schlüssel. Der Angreifer hat nur einen Versuch, den Schlüssel anzugreifen. Während jedes (nicht erfolgreichen) Angriffsversuchs wird der geheime Schlüssel in einem Muster überschrieben oder gelöscht. Ein Verbrauchsartikel ist gemäß Ausführungsbeispielen an eine spezifische Host-Vorrichtung gebunden. Beispielsweise wird die Vorrichtung an einen spezifischen Host gebunden, wenn sie erstmals an dem Host angebracht wird. Danach funktioniert die Vorrichtung nur mit diesem spezifischen Host. Der Host kann durch eine eindeutige Host-ID identifiziert werden. Dies behindert ein Klonen, da der Kloner diesen Bindungsmechanismus durchbrechen muss, um in der Lage zu sein, ein „frisches“ Schlüsselpaar zu erhalten, das für einen Klon verwendet werden kann. Ein Klon ist bestenfalls nicht an eine spezifische Host-ID gebunden, um universell verwendbar zu sein. Durch bloßes Kopieren der erhaltenen Signatur jedoch ist der Verbrauchsartikel an diese spezifische Host-ID gebunden. Das „Binden“ kann als eine atomare „Einmal“-Operation implementiert sein. So hat der Kloner nur eine Gelegenheit, das Geheimnis zu erhalten. So wird die Entwicklung des Angriffs teuer (z. B. werden viele Vorrichtungen benötigt) und ein kleiner Fehler führt zu einer Situation, bei der der Angreifer den physischen Angriff wiederholen muss (z. B. Verwendung und/oder Platzierung von Sondierungsnadeln).
  • Hierin beschriebene Ausführungsbeispiele beziehen sich auf ein Binden einer Vorrichtung (z. B. eines Verbrauchsartikels) an einen Host. Die Ausdrücke Verbrauchsartikel, Vorrichtung und Host werden jedoch zu Erläuterungszwecken verwendet und schränken den Schutzbereich der vorliegenden Offenbarung nicht ein. Insbesondere kann die bereitgestellte Beschreibung als Binden einer Vorrichtung an eine andere Vorrichtung verstanden werden, wodurch es auch ermöglicht wird, einen Host an eine Vorrichtung oder einen Verbrauchsartikel zu binden. Ausführungsbeispiele beziehen sich außerdem darauf, dass mehrere Bindungen durchgeführt werden, beispielsweise wird die Vorrichtung an den Host gebunden, danach wird der Host an die Vorrichtung und/oder an eine weitere Vorrichtung gebunden. Die Abfolge der erwähnten Bindungen kann in beliebiger Weise verändert werden.
  • Obwohl manche Aspekte im Zusammenhang mit einer Vorrichtung beschrieben wurden, versteht es sich, dass diese Aspekte auch eine Beschreibung des entsprechenden Verfahrens darstellen, wobei ein Block oder eine Vorrichtung einem Verfahrensschritt oder Merkmal eines Verfahrensschrittes entspricht. Analog dazu stellen Aspekte, die im Zusammenhang mit einem 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 durchgeführt sein unter Verwendung eines digitalen Speichermediums, beispielsweise einer Floppy-Disk, einer DVD, einer CD, eines ROM, eines PROM, eines EPROM, eines EEPROM oder eines FLASH-Speichers, 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.
  • Manche Ausführungsbeispiele gemäß der Erfindung umfassen 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 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 seitens einer beliebigen Hardwarevorrichtung durchgeführt.
  • 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 anhängigen 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 (30)

  1. Vorrichtung (10; 20; 40), die folgende Merkmale aufweist: einen Speicher (14), der zum Speichern eines Schlüssels (16) ausgebildet ist; eine Kommunikationsschnittstelle (18), die zum Empfangen eines Signals (22) ausgebildet ist, das eine Senderinformation (24) aufweist; eine Steuereinheit (26), die ausgebildet ist zum: Lesen des Schlüssels (16) aus dem Speicher (14); Erzeugen einer Signatur (12) über die Senderinformation (24) unter Verwendung des Schlüssels; und Deaktivieren des Schlüssels (16), um so eine weitere Verwendung des Schlüssels zur Erzeugung einer weiteren Signatur zu deaktivieren; wobei die Vorrichtung zum Bereitstellen der Signatur (12) ausgebildet ist.
  2. Vorrichtung gemäß Anspruch 1, wobei die Vorrichtung zum Speichern der Signatur in einem Speicher der Vorrichtung ausgebildet ist.
  3. Vorrichtung gemäß Anspruch 1 oder 2, wobei die Vorrichtung ein Verbrauchsartikel ist.
  4. Vorrichtung gemäß einem der vorherigen Ansprüche, wobei die Senderinformation (24) einen Identifizierer eines Senders aufweist, der die Senderinformation sendet.
  5. Die Vorrichtung gemäß einem der vorherigen Ansprüche, wobei die Vorrichtung zum Lesen des Schlüssels (16) aus einem ersten Speicherbereich des Speichers (14) ausgebildet ist; und zum Speichern der Signatur in einem zweiten Speicherbereich, der zumindest einen Teil des ersten Speicherbereichs aufweist.
  6. Die Vorrichtung gemäß einem der vorherigen Ansprüche, bei der zumindest ein Element des Schlüssels (16) und der Signatur (12) als verwürfelte Daten in dem Speicher gespeichert ist.
  7. Die Vorrichtung gemäß einem der vorherigen Ansprüche, wobei die Vorrichtung zum Erzeugen der Signatur (12) und Deaktivieren des Schlüssels (16) als atomare Operation ausgebildet ist.
  8. Die Vorrichtung gemäß einem der vorherigen Ansprüche, bei der der Schlüssel ein privater Schlüssel eines Paars aus öffentlichem Schlüssel/privatem Schlüssel ist.
  9. Die Vorrichtung gemäß einem der vorherigen Ansprüche, wobei die Vorrichtung zum Löschen des Schlüssels (16) ausgebildet ist, um so den Schlüssel zu deaktivieren.
  10. Die Vorrichtung gemäß Anspruch 9, wobei die Vorrichtung zum sicheren Löschen des Schlüssels (16) ausgebildet ist.
  11. Die Vorrichtung gemäß einem der vorherigen Ansprüche, wobei die Vorrichtung zum Deaktivieren des Schlüssels (16) nach einer ersten Verwendung desselben zum Erzeugen der Signatur (12) ausgebildet ist.
  12. Die Vorrichtung gemäß einem der vorherigen Ansprüche, bei der die Senderinformation (24) einen Identifizierer eines Senders aufweist; wobei das Bereitstellen der Signatur für eine Authentifizierung ausgeführt wird, die zum Binden der Vorrichtung an den Sender eingesetzt wird.
  13. Die Vorrichtung gemäß einem der vorherigen Ansprüche, bei der die Signatur eine Hash-basierte Einmal-Signatur ist.
  14. Die Vorrichtung gemäß einem der vorherigen Ansprüche, wobei die Vorrichtung zum Verwenden eines Elliptische-Kurven-Digitalsignaturalgorithmus (ECDSA) zur Erzeugung der Signatur ausgebildet ist.
  15. Die Vorrichtung gemäß Anspruch 14, wobei die Vorrichtung zum Verwenden vorberechneter Werte (38) des ECDSA, die in dem Speicher (14) gespeichert sind, zum Erzeugen der Signatur (12); und zum Manipulieren des Speichers (14) auf derartige Weise, dass zumindest ein Teil der vorberechneten Werte (38) aus dem Speicher (14) gelöscht wird, nachdem die Signatur (12) erzeugt wurde, ausgebildet ist.
  16. Die Vorrichtung gemäß einem der vorherigen Ansprüche, bei der der Schlüssel ein privater Schlüssel eines Paars aus öffentlichem Schlüssel/privatem Schlüssel ist, wobei die Vorrichtung zum Senden, zusammen mit der Signatur (12), eines öffentlichen Schlüssels des Paars aus öffentlichem Schlüssel/privatem Schlüssel und eines digitalen Zertifikats, das dem privaten Schlüssel zugeordnet ist, ausgebildet ist.
  17. Die Vorrichtung gemäß einem der vorherigen Ansprüche, die einen Signaleingang aufweist, der zum Empfangen eines Blockiersignals (32) ausgebildet ist, wobei die Vorrichtung zum Blockieren ihres Betriebs ansprechend auf das Blockiersignal ausgebildet ist.
  18. Die Vorrichtung gemäß einem der vorherigen Ansprüche, wobei die Vorrichtung zum Blockieren zumindest eines Teils ihres Betriebs ausgebildet ist, bis die Signatur erzeugt wurde.
  19. Vorrichtung, die folgende Merkmale aufweist: einen ersten Speicherbereich (44), auf dem ein Schlüssel (45) gespeichert ist; einen zweiten Speicherbereich (46), auf dem eine Senderinformation (24) gespeichert ist; eine Kommunikationsschnittstelle (42), die zum Senden der Senderinformation (24) und zum Empfangen, von einem Kommunikationspartner, einer Signatur (12) und eines digitalen Zertifikats basierend auf dem Senden der Senderinformation ausgebildet ist; eine Steuereinheit (52), die zum Verifizieren des Kommunikationspartners basierend auf der gesendeten Senderinformation und der empfangenen Signatur unter Verwendung des Schlüssels (45) ausgebildet ist; und durch Verwendung des Zertifikats; wobei im Fall einer fehlgeschlagenen Verifizierung die Vorrichtung dazu ausgebildet ist, eine Wechselwirkung mit dem Kommunikationspartner einzuschränken.
  20. Die Vorrichtung gemäß Anspruch 19, wobei die Vorrichtung zum Senden der Senderinformation (24) an den Kommunikationspartner während einer Zuordnungsprozedur zwischen der Vorrichtung und dem Kommunikationspartner ausgebildet ist.
  21. Die Vorrichtung gemäß Anspruch 19 oder 20, bei der die Steuereinheit zum Verwenden eines gleichen Elliptische-Kurven-Systems zum Erzeugen der Signatur (54) und zum Verifizieren des Zertifikats ausgebildet ist.
  22. Die Vorrichtung gemäß einem der Ansprüche 19 bis 21, wobei die Vorrichtung zum Authentifizieren des Kommunikationspartners unabhängig von einer Verbindung mit einer zentralen Authentifizierungsautorität ausgebildet ist.
  23. Die Vorrichtung gemäß einem der Ansprüche 19 bis 22, wobei die Vorrichtung zum aktiven Blockieren zumindest eines Teils der Wechselwirkung ausgebildet ist, solange keine Übereinstimmung mit einer Signatur (12), die von dem Kommunikationspartner empfangen wird, bestimmt wurde.
  24. Die Vorrichtung gemäß einem der Ansprüche 19 bis 23, die einen Signalausgang aufweist, der zum Senden, an den Kommunikationspartner, eines Blockiersignals, das eine Anforderung an den Kommunikationspartner zum Blockieren seines Betriebs ansprechend auf das Blockiersignal (32) anzeigt, ausgebildet ist.
  25. Die Vorrichtung gemäß einem der Ansprüche 19 bis 24, bei der die Senderinformation (24) einen Identifizierer aufweist, der die Vorrichtung identifiziert.
  26. Die Vorrichtung gemäß einem der Ansprüche 19 bis 25, wobei die Vorrichtung zum Durchführen zusätzlicher Sicherheitstechniken bei der Erzeugung der Signatur (54) ausgebildet ist.
  27. Die Vorrichtung gemäß einem der Ansprüche 19 bis 26, wobei die Vorrichtung ein Host ist, der zum Verbinden mit dem Kommunikationspartner als Verbrauchsartikel ausgebildet ist.
  28. Verfahren (600) zum Betreiben einer Vorrichtung, wobei das Verfahren folgende Schritte aufweist: Empfangen (610) eines Signals, das eine Senderinformation aufweist, mit der Vorrichtung; Lesen (620) eines Schlüssels aus einem Speicher; Erzeugen (630) einer Signatur über die Senderinformation unter Verwendung des Schlüssels; Deaktivieren (640) des Schlüssels, um so eine weitere Verwendung des Schlüssels zur Erzeugung einer weiteren Signatur zu deaktivieren; und Bereitstellen (650) der Signatur.
  29. Verfahren (700) zum Betreiben einer Vorrichtung, wobei das Verfahren folgende Schritte aufweist: Senden (710) einer Senderinformation mit der Vorrichtung und Empfangen, von einem Kommunikationspartner, einer Signatur und eines digitalen Zertifikats basierend auf dem Senden der Senderinformation; Erzeugen (720) einer Signatur über die Senderinformation unter Verwendung eines Schlüssels, der in einem Speicher der Vorrichtung gespeichert ist; Vergleichen (730) der empfangenen Signatur mit der erzeugten Signatur; Authentifizieren (740) der empfangenen Signatur unter Verwendung des Zertifikats; im Fall einer fehlenden Übereinstimmung zwischen der empfangenen Signatur und der erzeugten Signatur, Einschränken (750) einer Wechselwirkung mit dem Kommunikationspartner.
  30. Computerprogramm mit einem Programmcode für Code zur Durchführung eines Verfahrens gemäß Anspruch 28 oder 29, wenn dasselbe auf einem Computer abläuft.
DE102020201768.9A 2020-02-12 2020-02-12 Vorrichtung und Verfahren zum Betreiben derselben Pending DE102020201768A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020201768.9A DE102020201768A1 (de) 2020-02-12 2020-02-12 Vorrichtung und Verfahren zum Betreiben derselben

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020201768.9A DE102020201768A1 (de) 2020-02-12 2020-02-12 Vorrichtung und Verfahren zum Betreiben derselben

Publications (1)

Publication Number Publication Date
DE102020201768A1 true DE102020201768A1 (de) 2021-08-12

Family

ID=76968806

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020201768.9A Pending DE102020201768A1 (de) 2020-02-12 2020-02-12 Vorrichtung und Verfahren zum Betreiben derselben

Country Status (1)

Country Link
DE (1) DE102020201768A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113642007A (zh) * 2021-08-30 2021-11-12 京东方科技集团股份有限公司 代码验证方法、可联网的终端设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7917764B2 (en) 2005-01-24 2011-03-29 Panasonic Corporation Signature generation device and signature verification device
EP3288215A1 (de) 2016-08-24 2018-02-28 Siemens Aktiengesellschaft Verfahren und vorrichtung zur ausgabe von authentizitätsbescheinigungen sowie ein sicherheitsmodul
US20190327096A1 (en) 2016-12-28 2019-10-24 Intel Corporation Remote attestation with hash-based signatures
US20190372964A1 (en) 2006-08-22 2019-12-05 Stmicroelectronics, Inc. Method to prevent cloning of electronic components using public key infrastructure secure hardware device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7917764B2 (en) 2005-01-24 2011-03-29 Panasonic Corporation Signature generation device and signature verification device
US20190372964A1 (en) 2006-08-22 2019-12-05 Stmicroelectronics, Inc. Method to prevent cloning of electronic components using public key infrastructure secure hardware device
EP3288215A1 (de) 2016-08-24 2018-02-28 Siemens Aktiengesellschaft Verfahren und vorrichtung zur ausgabe von authentizitätsbescheinigungen sowie ein sicherheitsmodul
US20190327096A1 (en) 2016-12-28 2019-10-24 Intel Corporation Remote attestation with hash-based signatures

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HUELSING. A. [et al.]: Norm RFC 8391: XMSS: eXtended merkle signature scheme. Mai 2018. URL: https://tools.ietf.org/pdf/rfc8391 [abgerufen am 21. Februar 2020]
McGREW, D. [et al.]: Norm RFC 8554: Leighton-Micali Hash-Based Signatures. April 2019. URL: https://tools.ietf.org/pdf/rfc8391 [abgerufen am 21. Februar 2020]
VAN DER LINDE, Wouter: Post-quantum blockchain using one-time signature chains. Nijmegen, Niederlande : Radboud-Universität Nijmegen. Master Thesis, 2018. URL: https://www.ru.nl/publish/pages/769526/wouter_van_der_linde.pdf [abgerufen am 7. September 2020]

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113642007A (zh) * 2021-08-30 2021-11-12 京东方科技集团股份有限公司 代码验证方法、可联网的终端设备及可读存储介质
CN113642007B (zh) * 2021-08-30 2023-12-26 京东方科技集团股份有限公司 代码验证方法、可联网的终端设备及可读存储介质

Similar Documents

Publication Publication Date Title
DE102009024604B4 (de) Erzeugung eines Session-Schlüssels zur Authentisierung und sicheren Datenübertragung
EP3474172B1 (de) Zugangskontrolle unter verwendung einer blockchain
DE60202605T2 (de) Verfahren zur sicherung eines elektronischen geräts, sicherheitssystem und elektronisches gerät
DE102005030590B4 (de) Sicheres Patchsystem
EP2765752B1 (de) Verfahren zum versehen eines mobilen endgeräts mit einem authentisierungszertifikat
EP2340502B1 (de) Datenverarbeitungssystem zur bereitstellung von berechtigungsschlüsseln
DE102014204713A1 (de) Erzeugung von Schlüsseln unter Verwendung sicherer Hardware
CN104782077B (zh) 密码证书重发的方法和装置以及防篡改设备
DE102010042722A1 (de) System und Verfahren zur asymmetrischen kryptografischen Zubehör-Authentifizierung
DE112005001666T5 (de) Verfahren zum Bereitstellen von privaten Direktbeweis-Schlüsseln in signierten Gruppen für Vorrichtungen mit Hilfe einer Verteilungs-CD
DE102013215970A1 (de) Einzigartiger Code in einer Nachricht für eine Signaturerzeugung in einem asymetrischen Kryptographiegerät
DE102016210786A1 (de) Komponente zur Anbindung an einen Datenbus und Verfahren zur Umsetzung einer kryptografischen Funktionalität in einer solchen Komponente
EP3337085B1 (de) Nachladen kryptographischer programminstruktionen
DE102019008059A1 (de) Seitenkanalangriff-Gegenmaßnahme zum sicheren Bootloading
DE102020201768A1 (de) Vorrichtung und Verfahren zum Betreiben derselben
EP2442251A2 (de) Individuelle Aktualisierung von Computerprogrammen
EP3206154A1 (de) Verfahren und vorrichtungen zum sicheren übermitteln von nutzdaten
EP1801724B1 (de) Verfahren und Anordnung zum Bereitstellen sicherheitsrelevanter Dienste durch ein Sicherheitsmodul einer Frankiermaschine
RU2710670C2 (ru) Криптографическая система и способ
DE102020112102B3 (de) Verfahren und Vorrichtungen zur Erzeugung eines symmetrischen Sitzungsschlüssels für die verschlüsselte Kommunikation
DE102020206561A1 (de) Vorrichtungen und verfahren zur authentifizierung
EP3618348B1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem
CN112926065A (zh) 可自定义的加解密装置、加解密方法和存储设备
DE102020202532A1 (de) Vorrichtungen und verfahren zur authentifizierung
EP3671599A1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem

Legal Events

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