DE102020000336B4 - Verfahren zur Authentifizierung einer Gerätekomponente - Google Patents

Verfahren zur Authentifizierung einer Gerätekomponente Download PDF

Info

Publication number
DE102020000336B4
DE102020000336B4 DE102020000336.2A DE102020000336A DE102020000336B4 DE 102020000336 B4 DE102020000336 B4 DE 102020000336B4 DE 102020000336 A DE102020000336 A DE 102020000336A DE 102020000336 B4 DE102020000336 B4 DE 102020000336B4
Authority
DE
Germany
Prior art keywords
main device
challenge
component
solution
authentication
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.)
Expired - Fee Related
Application number
DE102020000336.2A
Other languages
English (en)
Other versions
DE102020000336A1 (de
Inventor
gleich Patentinhaber Erfinder
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE102020000336.2A priority Critical patent/DE102020000336B4/de
Priority to PCT/DE2021/000006 priority patent/WO2021148075A1/de
Publication of DE102020000336A1 publication Critical patent/DE102020000336A1/de
Application granted granted Critical
Publication of DE102020000336B4 publication Critical patent/DE102020000336B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • 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/2103Challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/66Substation equipment, e.g. for use by subscribers with means for preventing unauthorised or fraudulent calling
    • H04M1/667Preventing unauthorised calls from a telephone set
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality

Landscapes

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

Abstract

Vorgestellt wird ein Verfahren zur Authentifizierung einer Gerätekomponente durch ein Hauptgerät mittels Challenge-Response-Tests, bei welchem das Hauptgerät für jeden Test ein Challenge-Response-Paar aus einer gespeicherten Liste auswählt. Das Verfahren löst die Fragestellung, ob sich gespeicherte Challenge-Response-Paare mehrfach verwenden lassen, um ihren Verbrauch zu drosseln ohne die Sicherheit der Authentifizierung einzuschränken. Es ist unabhängig davon, auf welche Weise die Komponente die Response zu einer Challenge ermittelt, also unabhängig davon, ob die Komponente über einen geheimen kryptographischen Schlüssels oder ein hardwäreinhärentes Sicherheitsmerkmal verfügt. Das Verfahren führt zur Authentifizierung der angeschlossenen Komponente - abhängig von der Testhistorie - entweder einen oder zwei Challenge-Response-Test durch. Das Hauptgerät speichert zu jedem Challenge-Response-Paar die Information, ob es „fehlerfrei“ oder „fehlerbehaftet“ ist. „Fehlerfrei“ bedeutet, dass in jedem vorangegangenen Test einer Komponente mit dem selben Challenge-Response-Paar nach dem Senden der Challenge die Response innerhalb eines festgelegten Zeitlimits eingetroffen ist und mit dem gespeicherten Referenzwert übereingestimmt hat. Zudem hält das Hauptgerät die Information nach, ob die zuletzt durchgeführte Authentifizierung einer Komponente erfolgreich war. Falls die letzte Authentifizierung erfolgreich war, geschieht die Authentifizierung mittels eines einzigen Challenge-Response-Tests, wobei ein fehlerfreies Challenge-Response-Paar zum Einsatz kommt. Falls die letzte Authentifizierung erfolglos war, geschieht die Authentifizierung mittels zwei Challenge-Response-Tests, wobei im ersten Test ein fehlerbehaftetes Challenge-Response-Paar und im zweiten Test ein fehlerfreies Challenge-Response-Paar zum Einsatz kommt.

Description

  • Aufgabenstellung
  • In vielen unterschiedlichen Verfahren nach dem Stand der Technik prüft ein Hauptgerät, ob eine Komponente zu einer Prüfungsfrage (Challenge) eine gültige Lösung (Response) findet zu dessen Authentifizierung. Die folgenden Schritte beschreiben einen allgemeinen Ablauf eines solchen Verfahrens:
    1. a) Speicherung einer Liste von mindestens einem Datenpaar, bestehend aus einer Prüfungsaufgabe und einer Referenzlösung, durch das Hauptgerät vor seiner Inbetriebnahme,
    2. b) Auswahl eines ersten gespeicherten Datenpaars, bestehend aus einer ersten Prüfungsaufgabe und einer ersten Referenzlösung durch das Hauptgerät und Senden der ersten Prüfungsaufgabe an die Komponente,
    3. c) Generierung einer ersten Lösung durch die Komponente und Senden der ersten Lösung an das Hauptgerät,
    4. d) Empfang einer ersten Lösung durch das Hauptgerät oder Abbruch der Authentifizierung bei Überschreitung eines Zeitlimits,
    5. e) Vergleich der ersten Lösung mit der ersten Referenzlösung im Hauptgerät,
    6. f) erste Entscheidung des Hauptgeräts zur Freischaltung der Hauptfunktion, dem Abbruch der Authentifizierung oder zur Durchführung zusätzlicher Schritte,
    7. g) Auswahl eines zweiten gespeicherten Datenpaars, bestehend aus einer zweiten Prüfungsaufgabe und einer zweiten Referenzlösung durch das Hauptgerät und Senden der zweiten Prüfungsaufgabe an die Komponente,
    8. h) Generierung einer zweiten Lösung durch die Komponente und Senden der zweiten Lösung an das Hauptgerät,
    9. i) Empfang einer zweiten Lösung durch das Hauptgerät oder Abbruch der Authentifizierung bei Überschreitung eines Zeitlimits,
    10. j) Vergleich der zweiten Lösung mit der zweiten Referenzlösung im Hauptgerät,
    11. k) zweite Entscheidung zur Freischaltung der Hauptfunktion durch das Hauptgerät
  • Zielsetzung der Authentifizierung ist beispielsweise die Erkennung gefälschter Komponenten. Dabei lassen sich Hauptgeräte in zwei Klassen unterteilen:
    • In die erste Klasse fallen Hauptgeräte, die in der Lage sind, zu einer zufällig erzeugten Prüfungsfrage (Challenge) eine empfangene Lösung (Response) zu überprüfen.
    • In die zweite Klasse fallen Hauptgeräte, die statt dessen auf gespeicherte Datenpaare, bestehend aus Prüfungsaufgabe und Referenzlösung zugreifen müssen.
  • Bei einem kryptographischen Verfahren bestehen für die Implementierung der Hauptgeräte beide Möglichkeiten: das Hauptgerät kann entweder mit einem geeigneten kryptographischen Schlüssel oder mit einer Liste von Datenpaaren (Challenge-Response-Liste) versehen werden. Bei symmetrischen Verfahren ist der erste Ansatz flexibler, der zweite allerdings sicherer, weil ein Hauptgerät nicht zur Kompromittierung eines geheimen Schlüssels missbraucht werden kann.
  • Bei Verfahren, die auf inhärenten Gruppen-Merkmalen von Schaltkreisen und der beschränkten Verfügbarkeit dieser Schaltkreise basieren (ein solches Verfahren ist z.B. in der noch unveröffentlichten Druckschrift DE 10 2018 009 143 A1 beschrieben), ist ebenfalls beides möglich: ein Hauptgerät der ersten Klasse muss über eine integrierte, authentische Schaltkreis-Instanz zu Erzeugung von Referenz-Lösungen verfügen. Eine solche Implementierung ist allerdings teurer als eine Implementierung mittels gespeicherter Datenpaare.
  • Bei Verfahren, die auf inhärenten Merkmalen einzelner Hardware-Instanzen basieren, z.B. nicht-kryptographische PUF-Lösungen [Pa], fallen die Hauptgeräte stets in die zweite Klasse. Zusammengefasst sind Hauptgeräte der zweiten Klasse für die Authentifizierung einer Komponente entweder bezüglich der Sicherheit oder des Preises von Vorteil, oder sie sind sogar die einzige Möglichkeit der Wahl.
  • Ein Nachteil von Hauptgeräte der zweiten Klasse, insbesondere im Offline-Einsatz besteht darin, dass Datenpaare nur begrenzt zur Verfügung stehen. Um den Verbrauch von Datenpaaren einzuschränken, stellt sich die Frage, ob das Hauptgerät ein gespeichertes Datenpaar zur Authentifizierung angeschlossener Komponenten mehrfach benutzen kann und wenn ja, wie häufig.
  • Ziel des offen gelegten Verfahrens ist es, unter der nachfolgenden Annahmen die Wiederverwendung gespeicherte Datenpaare zu maximieren, ohne die Sicherheit im Vergleich zu einmalig genutzten Datenpaaren einzuschränken.
  • Das offen gelegte Verfahren eignet sich dann zu Authentifizierung, wenn Hauptgerät und Komponente in einer „freundlichen Umgebung“ zum Einsatz kommen, d.h. wenn die Authentifizierung unter Aufsicht des Benutzers stattfindet und der Benutzer selbst kein Hacker ist. Unter dieser Annahme erhalten Angreifer oder böswillige Geräte keinen physikalischen Zugriff auf die Datenschnittstelle zwischen Hauptgerät und Komponente. Ein sogenannter „Replay“-Angriff, bei welchem in einem ersten Schritt die Kommunikation bei der Prüfung einer authentischen Komponente durch das Hauptgerät an dieser Datenschnittstelle mitgelesen wird und später, im zweiten Schritt die mitgeschnittene Lösung in der Prüfung einer böswilligen Komponente als Antwort auf die selbe Prüfungsaufgabe wieder eingespielt wird, kommt damit nicht in Betracht. Ein Anwendungsfall auf den die Annahme zutrifft ist die Erkennung gefälschter Zubehörkomponenten, sofern die Erkennung auch im Interesse des Käufers liegt.
  • Um ein Authentifizierungsverfahren mit einer beschränkten Liste gespeicherter Challenge-Response-Paare sicher zu gestalten, muss das Hauptgerät Informationen zur Testhistorie speichern und bei der Auswahl eines Challenge-Response-Paars für einen anstehenden Challenge-Response-Test berücksichtigen. Zur Testhistorie kann das Hauptgerät z.B. die Information nachhalten, ob die zuletzt durchgeführte Authentifizierung einer Komponente erfolgreich oder erfolglos war. Als zweites Besipiel zur Testhistorie kann das Hauptgerät zu jedem Challenge-Response-Paar ein Attribut speichern, welches anzeigt, ob das Challenge-Response-Paar „fehlerfrei“ oder „fehlerbehaftet“ ist. „Fehlerfrei“ bedeutet, dass in jedem vorangegangenen Test einer Komponente mit dem selben Challenge-Response-Paar nach dem Senden der Challenge die Response innerhalb eines festgelegten Zeitlimits eingetroffen ist und mit dem gespeicherten Referenzwert übereingestimmt hat.
  • Stand der Technik
  • Druckschrift D1 beschreibt Merkmale eines Verfahrens zur Authentifizierung einer Komponente („Authentication Device“) durch ein Hauptgerät („Interrogator Device“), welche sich in folgenden Aspekten mit der vorliegenden Erfindung überschneidet: der Verwaltung von Challenge-Response-Paaren durch das Hauptgerät, der Verwendung von einem oder mehrerer Challenge-Response-Tests zur Authentifizierung einer Komponente, der mehrfachen Verwendung von Challenge-Response-Paaren und der Auswahl des Challenge-Response-Paars zu einem Challenge-Response-Test abhängig von einer durch das Hauptgerät nachgehaltenen Testhistorie. D1 soll gewährleisten, dass ein Angreifer, der die Datenschnittstelle während der Kommunikation zwischen authentischen Geräten abhören kann, möglichst lange braucht, um alle gespeicherten Challenge-Response-Paare zu erlernen. Dazu schränkt das Hauptgerät die Auswahlwahrscheinlichkeiten bestimmter Challenge-Response-Paare ein. D1 legt dem Hauptgerät nahe, insbesondere dann, wenn es einen Angriff vermutet (z.B. wegen häufiger Authentifizierungs-Anforderungen innerhalb eines Zeitfensters), möglichst wenig frische Challenge-Response-Paare einzusetzen und statt dessen fehlerbehaftete Challenge-Response-Paare wiederzuverwenden.
  • Im Gegensatz zur vorliegenden Druckschrift liefert D1 kein hinreichendes Kriterium, nach welchem eine Komponente nach einem oder mehreren Challenge-Response-Tests freizuschalten ist. D1 gibt insbesondere keine Situation an, in welcher ein fehlerfreies Challenge-Response-Paar genutzt werden soll.
  • Die vorliegende Erfindung liefert als Neuerung eine genaue Anweisung, wann ein fehlerfreies Challenge-Response-Paar in einem Challenge-Response-Test zum Einsatz kommt (sofern ein oder mehrere gespeicherte Challenge-Response-Paare fehlerbehaftet sind): genau dann, wenn die zuletzt durchgeführte Authentifizierung einer Komponente nicht erfolgreich, und erst nachdem ein erster Challenge-Response-Test mit einem fehlerbehafteten Challenge-Response-Paar erfolgreich war. Dieses Merkmal geht aus D1 nicht naheliegend hervor. Sie liefert einen erheblichen Sicherheitsvorteil.
  • Druckschrift D2 beschreibt ein Challenge-Response-Protokoll zwischen einem Hardware-Token und einem nicht vertrauenswürdigen Gerät, bei welchem das Hardware-Token - in Überschneidung mit Merkmalen der vorliegenden Erfindung - eine Response innerhalb einer festgelegten Response-Zeit erwartet, um gewisse Aktionen des nicht vertrauenswürdigen Geräts zu authentifizieren.
  • Auch aus der Kombination der Druckschriften D1 und D2 geht die genannte Neuerung der vorliegenden Erfindung nicht in naheliegender Weise hervor.
  • Naheliegende Verfahren
  • Naheliegende Verfahren zur Reduzierung des Verbrauchs an Datenpaaren wären zum Beispiel:
    • - Verfahren, bei welchen das Hauptgerät immer das selbe Datenpaar einsetzt,
    • - Verfahren, bei welchen das Hauptgerät ein Datenpaar zeitlich begrenzt einsetzt,
    • - Verfahren, bei welchen das Datenpaar direkt nach einer falschen Lösung gewechselt wird.
  • Um die Schwächen des Stands der Technik und naheliegender Verfahren zu verdeutlichen, genügt es, nicht-authentischen Komponenten in zwei extremen Ausprägungen zu betrachten:
    • Bei starken böswillige Komponenten ist davon auszugehen, dass sie die Lösung zu einer unbenutzten Prüfungsaufgabe genau im zweiten Versuch finden. Hardware-inhärente Authentisierungsmerkmale nach dem SIMPL-Paradigma [SIMPL] gehen grundsätzlich davon aus, dass böswillige Komponenten so stark sind, weil sie authentische Komponenten verlangsamt simulieren können. Die Annahme ist allerdings auch für kryptographische Verfahren zweckmäßig, da sie viele Angriffe implizit modelliert: „Relay“-Angriffe (nicht zu verwechseln mit „Replay“-Angriffen), bei welchen die böswillige Komponente gegenüber einer authentische Komponente ein Hauptgerät vorspielt, um an eine gültige Lösung zu einer empfangenen Prüfungsaufgabe zu kommen oder Angriffe mittels Verbindung zu einem Backend Server.
  • Bei schwachen böswilligen Komponenten ist davon auszugehen, dass sie die Lösung nie finden.
  • Die ersten beiden naheliegenden Verfahren sind nicht sicher gegen starke böswillige Komponenten. Das dritte naheliegende Verfahren löst die Aufgabenstellung nicht: Eine schwache böswillige Komponente könnte zu einem sogenannten „Denial-of-Service“-Angriff eingesetzt werden, mit dem Ziel ein Hauptgerät durch einen provozierten schnellen Verbrauch seiner gespeicherten Datenpaare außer Kraft zu setzten.
  • Idee
  • Die Lösung basiert auf der Äquivalenz von bislang unbenutzten Datenpaaren und „fehlerfreien“ Datenpaaren, d.h. solchen, die noch nie zu einer falschen Lösung geführt haben. Unter den beiden genannten Annahmen lässt sich ableiten, dass eine starke böswillige Komponente nicht in der Lage ist, zur Prüfungsaufgabe eines fehlerfreien Datenpaars innerhalb des zulässigen Zeitrahmens eine gültige Antwort zu finden. Solange ein Datenpaar fehlerfrei ist, dient es zur Komponenten-Authentifizierung mittels einer einzigen Prüfung.
  • Nach einem negatives Prüfungsergebnis sollte das Datenpaar nicht mehr alleine zur Komponenten-Authentifizierung genutzt werden. Falls eine starke böswillige Komponente der Empfänger war, muss davon ausgegangen werden, dass diese bis zur nächsten Prüfung die Lösung ermitteln kann.
  • Das Datenpaar erfüllt allerdings immer noch den Zweck, schwache böswillige Komponenten zu erkennen, ohne ungenutzte Datenpaare zu verschwenden. Das fehlerbehaftete Datenpaar kann so lange eingesetzt werden, bis eine korrekte Lösung zu seiner Prüfungsaufgabe innerhalb eines gesetzten Zeitlimits eintrifft. Dann wird davon ausgegangen, dass böswillige Komponenten die Lösung kennen.
  • Es muss eine zweite Prüfung mit einem fehlerfreien Datenpaar folgen, um zwischen einer authentischen und einer starken böswilligen Komponente zu unterscheiden.
  • Technische Ausführung
  • Die Speicherung von Datenpaaren vor der Inbetriebnahme in Schritt a) geschieht typischerweise in einer geschützten Umgebung des Herstellers. Ein Referenzgerät verfügt über einen Zufallszahlengenerator, um zufällige Prüfungsaufgaben zu erzeugen und nutzt angeschlossene Komponenten als Generator für Referenzlösungen. Die gebildeten Datenpaare bestehend aus Prüfungsaufgabe und Referenzlösung werden auf einem Server gespeichert.
  • Der Server dient dem Einbringen von Datenpaaren in die Hauptgeräte in der Herstellerumgebung. Jedes Datenpaar wird nur in ein Hauptgerät eingebracht und anschließend Server-seitig gelöscht.
  • Bei Online-Applikationen dient der Server auch zum Update von Datenpaaren für Hauptgeräte im Feld über ein geeignetes Update-Protokoll. Der Online-Update erfordert die verschlüsselte Datenübertragung zwischen Server und Hauptgerät.
  • In der einfachsten Ausführung speichert das Hauptgerät Datenpaaren als Folge D[1],D[2], ...,D[M], wobei M die maximale Anzahl der speicherbaren Datenpaare ist. Ein Datenpaar D besteht aus einer Prüfungsaufgabe P und einer Referenzlösung R.
  • Die Datenpaare kommen nacheinander zur Prüfung von Komponenten zum Einsatz.
  • Eine Zeigervariable Z zeigt auf das aktuelle Datenpaar D[Z]. Die Auswahl eines Datenpaars in den Schritten b) und g) ist in der einfachsten Ausführung durch den aktuellen Wert von Z vorgegeben.
  • Eine binäre Variable L zeigt mit dem Wert 0 bzw. 1 an, dass die zuletzt durchgeführte Authentifizierung einer Komponente positiv bzw. negativ verlaufen ist. Sie entspricht der ersten Information aus Anspruch 1 (I). Die zweite Information aus Anspruch 1 (m) ist in dieser Ausführung in Z und L enthalten: Die Paare D[1],..., D[Z-1] sind fehlerbehaftet. Das Paar D[Z] ist fehlerfrei, wenn L null ist. Die Paare D[Z+1],..., D[M] sind unbenutzt und fehlerfrei.
  • Die Authentifizierung einer angeschlossenen Komponente lässt sich in der einfachsten Ausführung wie in Zeichnung 1 dargestellt realisieren: Nach dem Empfang eines Signals „aufwachen“ (101) führt das Hauptgerät direkt eine Prüfung (102) mittels aktuellem Datenpaar D[Z] durch, d.h. es sendet die Prüfungsaufgabe P[Z] und führt die Schritte d) - e) aus. Falls die angeschlossene Komponente die Prüfung bestanden hat (103), d.h. in Schritt e) eine Übereinstimmung von empfangener Lösung und R[Z] festgestellt wurde, wird der Wert der Information L ausgewertet (104). Im positiven Fall L = 0 folgt die Freischaltung der Hauptfunktion direkt (105). Im Fall L = 1 wird zunächst geprüft, ob bereits Z = M erreicht ist (106). In diesem Fall stehen keine fehlerfreien Datenpaare mehr zur Verfügung und es erfolgt der Abbruch der Authentifizierung. Der Abbruch beinhaltet das Setzten der Variablen L auf den Wert 1 (107). Falls bei (106) gilt Z < M, so wird durch die Erhöhung Z=Z+1 das aktuelle Datenpaar ausgewechselt und die Variable L zurück gesetzt (108). Dann wird die angeschlossene Komponente mit dem unverbrauchten Datenpaar D[Z] erneut geprüft (109), d.h. die Prüfungsaufgabe P[Z] wird gesendet und die Schritte h)-j) ausgeführt.
  • Abhängig vom Vergleich (110) in Schritt j) wird entweder die Hauptfunktion (105) gestartet oder es erfolgt ein Abbruch (107). Zum Schluss geht das Hauptgerät wieder in den Schlafmodus (111).
  • Falls die Zeigervariable Z die Speichergrenze der Datenpaare erreicht, d.h. falls in Zeichnung 1 bei (106) ein Abbruch erfolgt, und das Gerät dann nicht außer Betrieb gesetzt werden soll, bleiben mehrere Möglichkeiten. In einer Variante nach Anspruch 2 setzt das Hauptgerät dann L und Z zurück. Das Verfahren büßt damit seine absolute Sicherheit ein. Für manche Anwendungsfälle hat es seinen Zweck allerdings an der Stelle schon erfüllt. In einer günstigen Ausführung wird L statt als binäre Variable als Fehlerzähler implementiert. Vor der Prüfung (102) fügt das Hauptgerät eine Wartezeit ein. Die Wartezeit wird mit steigendem Fehlerzähler L erhöht. Somit kann der Verbrauch von Datenpaaren zeitlich gedrosselt werden, und das Zurücksetzen findet erst nach genügend langer Zeit statt, so dass der Einsatz gefälschter Komponenten schlichtweg nicht komfortabel ist.
  • In einem Spezialfall ist für das Hauptgerät die in Zeichnung 2 dargestellte Implementierung günstiger: ist die Komponente ein Akku ist, so ist eine Gegenmaßnahme gegen einen sogenannten „Tear-Down“-Angriff erforderlich. Bei diesem Angriff würde ein böswilliger Akku nach einer nicht bestandenen Prüfung in Zeichnung 1 (103) versuchen, dem Hauptgerät die Stromversorgung zu kappen, bevor die Information L bei (107) auf den Wert eins gesetzt wird. Ein starker böswilliger Akku wäre dann im nächsten Durchlauf in der Lage als authentisch durch zu gehen. Für diesen Anwendungsfall wird die Information L in einer volatilen Variable VL und einer nicht-volatil (z.B. in einem EEPROM-Speicher) zu speichernden Variable PL aufgeteilt. Der Zeiger Z ist ebenfalls nicht-volatil zu speichern. Bei nicht-volatilen Daten bleibt die Information bei Abbruch der Stromversorgung erhalten. Die nicht-volatile Variable PL wird, wie in Zeichnung 2 (201) dargestellt, zu Beginn des Verfahrens auf 1 gesetzt und erst direkt vor dem Start der Hauptfunktion (203) wieder zurück gesetzt. Statt dem Wert von L wird nach der ersten Prüfung in (202) der Wert von VL geprüft. Dieser zeigt das Ergebnis der vorangegangenen Authentifizierung einer Komponente an. Damit wird der genannte Tear-Down-Angriff wirksam verhindert.
  • Authentisierungsapplikation in der Komponente
  • Jede Komponente wird in der Herstellerumgebung mit einer Authentisierungsapplikation versehen. Diese beinhaltet die Lösungsfunktion zur Generierung einer Lösung zu einer Prüfungsaufgabe.
    Bei einer kryptographischen Authentisierung entsprechend Anspruch 3 kann zum Beispiel der symmetrische Standard-Algorithmus HMAC-SHA256 eingesetzt werden. Die Lösung zu einer Prüfungsaufgabe hat dann die Form HMAC(Schlüssel, Prüfungsaufgabe), wobei der Schlüssel ein gruppenspezifisches Geheimnis authentischer Komponenten ist. In einer günstigen Ausführung beinhaltet die Komponente ein sicheres Hardware-Element zur Speicherung des geheimen Schlüssels und zur Erzeugung der Lösung. Die Authentisierungsapplikation der Komponente muss dann nur die Prüfungsaufgabe empfangen, in ein Register des sicheren Hardware-Elements schreiben und anschließend die Lösung an die Hauptkomponente senden. Die Einbringung des Schlüssels geschieht in einer streng gesicherten Umgebung.
  • Bei einer Implementierung entsprechend Anspruch 4 beinhaltet die Authentisierungsapplikation der Komponente ein Testprogramm, welches in MCU-interne Peripherie-Register schreibt, Werte aus MCU-internen Peripherie-Register ausließt und über die ausgelesenen Werte eine Hashsumme bildet. Die Authentisierungsapplikation setzt zum einen einen Initialen Hashpuffer abhängig von der Prüfungsaufgabe fest und vertauscht zum anderen Programminstruktionen des Testprogramms und führt das veränderte Testprogramm aus. Der vom veränderten Testprogramm gebildete Hashwert wird als Lösung der Prüfungsaufgabe an die Antwort geschickt. Eine solche Authentisierungsapplikation ist in der noch unveröffentlichten Druckschrift [FS2] im Detail beschrieben.
  • Referenzierte Patentschriften
    • D1 WO 2012 / 129 641 A1
    • D2 US 2013 / 0 111 211 A1
    • DE 10 2018 009 143 A1 Verfahren zur Authentifizierung eines Geräts durch ein Hostsystem, noch unveröffentlicht
  • Sonstige Referenzen
    • [MSU] Michigan State University, „Defining the threat of product counterfeiting,“ 2019. https://www.michiganstateuniversityonline.com/resources/ acapp/threat-of-product-counterfeiting/.
    • [Pa] R. S. Pappu, „Physical one-way functions,“ PhD thesis, MIT, 2001.
    • [SIMPL] U. Rührmair, „SIMPL systems as a keyless cryptographic and security primitive,“ D. Naccache (Editor), Cryptography and Security: From Theory to Applications - Essays Dedicated to Jean-Jacques Quisquater on the Occasi on of His 65th Birthday. Lecture Notes in Computer Science, Vol. 6805, Sprin ger, 2012.
    • [FS1] F. Schuhmacher, „MCU intrinsic group features for component authentication“, 2020, noch unveröffentlicht.
    • [FS2] F. Schuhmacher, „Relaxed freshness in component authentication“, 2020, noch unveröffentlicht.

Claims (5)

  1. Verfahren zur Authentifizierung einer elektronischen Komponente durch ein Hauptgerät und davon abhängigen Freischaltung einer Hauptfunktion, welches die Verfahrensschritte a) Speicherung einer Liste von mindestens einem Datenpaar, bestehend aus einer Prüfungsaufgabe und einer Referenzlösung, durch das Hauptgerät vor seiner Inbetriebnahme, b) Auswahl eines ersten gespeicherten Datenpaars, bestehend aus einer ersten Prüfungsaufgabe und einer ersten Referenzlösung durch das Hauptgerät und Senden der ersten Prüfungsaufgabe an die Komponente, c) Generierung einer ersten Lösung durch die Komponente und Senden der ersten Lösung an das Hauptgerät, d) Empfang einer ersten Lösung durch das Hauptgerät oder Abbruch der Authentifizierung bei Überschreitung eines Zeitlimits, e) Vergleich der ersten Lösung mit der ersten Referenzlösung im Hauptgerät, f) erste Entscheidung des Hauptgeräts zur Freischaltung der Hauptfunktion, dem Abbruch der Authentifizierung oder zur Durchführung zusätzlicher Schritte, g) Auswahl eines zweiten gespeicherten Datenpaars, bestehend aus einer zweiten Prüfungsaufgabe und einer zweiten Referenzlösung durch das Hauptgerät und Senden der zweiten Prüfungsaufgabe an die Komponente, h) Generierung einer zweiten Lösung durch die Komponente und Senden der zweiten Lösung an das Hauptgerät, i) Empfang einer zweiten Lösung durch das Hauptgerät oder Abbruch der Authentifizierung bei Überschreitung eines Zeitlimits, j) Vergleich der zweiten Lösung mit der zweiten Referenzlösung im Hauptgerät, k) zweite Entscheidung zur Freischaltung der Hauptfunktion durch das Hauptgerät beinhaltet und dadurch gekennzeichnet ist, dass l) das Hauptgerät in einer ersten Information speichert, ob die von ihm zuletzt bei Schritt b) begonnene Authentifizierung einer Komponente positiv ausgefallen ist, d.h. ob sie zur Freischaltung der Hauptfunktion in einem der Schritte f) oder k) geführt hat, m) das Hauptgerät in einer zweiten Information zu jedem Datenpaar nach hält, ob das Datenpaar „fehlerbehaftet“ ist, d.h. ob jemals, wenn das Datenpaar in Schritt b) bzw. Schritt g) ausgewählt wurde, im darauf folgenden Schritt d) oder e) bzw. Schritt i) oder j) der Fehlerfall eingetreten ist, n) das Hauptgerät im Fall, dass die erste Information anzeigt, dass die zuletzt ausgeführte Authentifizierung negativ ausgefallen ist, in Schritt b) ein fehlerbehaftetes erstes Datenpaar auswählt, die Hauptfunktion in Schritt f) nicht freischaltet und in Schritt g) ein fehlerfreies zweites Datenpaar auswählt.
  2. Verfahren nach Anspruch 1, bei welchem das Hauptgerät, falls es über kein Datenpaar mit positivem Attribut mehr verfügt, das eines Datenpaars auf einen positiven Wert zurücksetzt.
  3. Verfahren nach Anspruch 1, bei welchem eine authentische Komponenten über einen geheimen kryptographischen Schlüssel verfügt und für die Generierung der Lösung in den Schritten c) und h) eine kryptographische Signaturfunktion benutzt.
  4. Verfahren nach Anspruch 1, bei welchem die authentischen Komponenten über eine charakteristische, Hardware-inhärente Eigenschaft verfügen, und die Generierung der Lösung in den Schritten c) und h) von dieser Eigenschaft abhängt.
  5. Verfahren nach Anspruch 1, wobei das Hauptgerät ein Mobiltelefon und die Komponente ein Akku ist.
DE102020000336.2A 2020-01-21 2020-01-21 Verfahren zur Authentifizierung einer Gerätekomponente Expired - Fee Related DE102020000336B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102020000336.2A DE102020000336B4 (de) 2020-01-21 2020-01-21 Verfahren zur Authentifizierung einer Gerätekomponente
PCT/DE2021/000006 WO2021148075A1 (de) 2020-01-21 2021-01-20 Verfahren zur authentifizierung einer gerätekomponente

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020000336.2A DE102020000336B4 (de) 2020-01-21 2020-01-21 Verfahren zur Authentifizierung einer Gerätekomponente

Publications (2)

Publication Number Publication Date
DE102020000336A1 DE102020000336A1 (de) 2021-07-22
DE102020000336B4 true DE102020000336B4 (de) 2022-09-15

Family

ID=74844627

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020000336.2A Expired - Fee Related DE102020000336B4 (de) 2020-01-21 2020-01-21 Verfahren zur Authentifizierung einer Gerätekomponente

Country Status (2)

Country Link
DE (1) DE102020000336B4 (de)
WO (1) WO2021148075A1 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012129641A1 (en) 2011-03-25 2012-10-04 Certicom Corp. Interrogating an authentication device
US20130111211A1 (en) 2011-10-31 2013-05-02 L-3 Communications Corporation External Reference Monitor
DE102018009143A1 (de) 2018-11-20 2020-05-20 Frank Schuhmacher Verfahren zur Authentifizierung eines Geräts durch ein Hostsystem

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7900045B2 (en) * 2006-12-28 2011-03-01 Motorola Mobility, Inc. Method to authenticate an accessory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012129641A1 (en) 2011-03-25 2012-10-04 Certicom Corp. Interrogating an authentication device
US20130111211A1 (en) 2011-10-31 2013-05-02 L-3 Communications Corporation External Reference Monitor
DE102018009143A1 (de) 2018-11-20 2020-05-20 Frank Schuhmacher Verfahren zur Authentifizierung eines Geräts durch ein Hostsystem

Also Published As

Publication number Publication date
DE102020000336A1 (de) 2021-07-22
WO2021148075A1 (de) 2021-07-29

Similar Documents

Publication Publication Date Title
EP3574625B1 (de) Verfahren zum durchführen einer authentifizierung
DE602005001351T2 (de) Verteilte Verwaltung einer Zertifikatsrücknahmeliste
EP1326469B1 (de) Verfahren und Anordnung zur Überprüfung der Authentizität eines Dienstanbieters in einem Kommunikationsnetz
DE102012110499B9 (de) Sicherheitszugangsverfahren für elektronische Automobil-Steuergeräte
DE69230429T2 (de) Sicherung/Rückgewinnung der Umgebung einer Geheimübertragungseinrichtung und Vervielfältigung in einem Kryptosystem mit öffentlichem Schlüssel
Brostoff et al. Are Passfaces more usable than passwords? A field trial investigation
DE60031304T2 (de) Verfahren zur authentifizierung von softwarebenutzern
DE102011004978B4 (de) Verfahren, Steuerungseinrichtung und System zum Nachweis von Verletzungen der Authentzität von Anlagenkomponenten
DE112007001635T5 (de) Authentifizierung von Komponenten bei Computersystemen
DE60015757T2 (de) Verfahren und vorrichtung um ein programmcode zu beglaubigen
CN105991565B (zh) 读写分离的方法、系统和数据库代理服务器
DE112011100182T5 (de) Transaktionsprüfung für Datensicherheitsvorrichtungen
DE102012208834A1 (de) Authentisierung eines Produktes gegenüber einem Authentisierer
WO2010031700A2 (de) Telekommunikationsverfahren, computerprogrammprodukt und computersystem
EP1290905B1 (de) Verfahren zur kryptografischen identifikation einer physikalischen einheit in einem drahtlosen telekommunikationsnetzwerk
WO2008151339A2 (de) Verfahren und architektur zur sicherung von echtzeitdaten
EP3743844B1 (de) Blockchain-basiertes identitätssystem
DE102020110034A1 (de) Überwachungssystem mit mehrstufiger Anfrageprüfung
CN108234122A (zh) 令牌校验方法和装置
EP4381408A1 (de) Sicheres element, verfahren zum registrieren von token und tokenreferenzregister
EP1062764A1 (de) Verfahren und vorrichtung zur kryptographischen bearbeitung anhand einer elliptischen kurve auf einem rechner
DE102020000336B4 (de) Verfahren zur Authentifizierung einer Gerätekomponente
CN109472151A (zh) 一种数据访问的方法及服务器
EP3767513B1 (de) Verfahren zur sicheren durchführung einer fernsignatur sowie sicherheitssystem
EP1817752A2 (de) Verfahren zur personalisierung von chipkarten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R084 Declaration of willingness to licence
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee