-
Stand der Technik
-
Die Erfindung bezieht sich auf ein Verfahren zur Erzeugung eines Heraus-forderungs-Antwort-Paars in einer elektrischen Maschine sowie auf eine elektrische Maschine.
-
Zum Schutz vor nachgebauten bzw. gefälschten technischen Einheiten kann eine sichere Authentifizierung einer Einheit als Orginalware z. B. durch den Kunden gewünscht werden. Eine relativ neue Methode, welche für sichere Authentifi-zierungen herangezogen werden kann, basiert auf dem Einsatz so genannter physikalischer, nicht-klonbarer Funktionen (Physical Unclonable Functions, PUFs).
-
In der
US 2009/0083833 A1 wird beschrieben, wie PUFs durch ein zusätzliches PUF-Modul für eine Authentifizierung in eine Reihe von elektronischen Einheiten wie FPGAs, RFIDs und ASICs implementiert werden können. Die
US 7,681,103 B2 offenbart eine zuverlässige Erzeugung eines Bauteil-spezifischen Wertes unter Verwendung von PUFs. Eine integrierte Schaltung mit einem echten Zufallsge-nerator ist der
US 2009/0132624 A1 zu entnehmen. Hierbei weist der Zufalls-generator mindestens eine instabile physikalische, nicht-klonbare Funktion auf. Der Schaltkreis kann dabei so ausgestaltet sein, dass eine Induktivität und/oder eine Kapazität der physikalischen, nicht-klonbaren Funktionen von Messmitteln gemessen werden können.
-
Offenbarung der Erfindung
-
Vorteile der Erfindung
-
Die vorliegende Erfindung gemäß den unabhängigen Ansprüchen ermöglicht eine besonders einfache und kostengünstige Authentifizierung einer elektrischen Maschine, bzw. eines Geräts, von welchem die elektrische Maschine Bestandteil ist, oder von einem Gerät, welches mit einer elektrischen Maschine verbunden ist, auf Basis einer Induktion in der elektrischen Maschine. Im Vergleich zu anderen Authentifizierungsverfahren kann dabei auf teure, zusätzliche Hardwarebausteine, insbesondere auf ein zusätzliches PUF-Modul, verzichtet werden. Für einige der vorgeschlagenen Ausgestaltungen der Erfindung nötige, zusätzliche Bauteile sind kostengünstig und in bestehende Systeme einfach integrierbar. Methoden, das Verfahren zu umgehen, z. B. durch das Abfangen von Signalen oder das Zwischenschalten von Hardware, sind aufwändig, teuer und die Manipulationen oft einfach nachweisbar.
-
Weitere Vorteile und Verbesserungen ergeben sich durch die Merkmale der abhängigen Ansprüche.
-
Besonders einfach und kostengünstig kann das Verfahren umgesetzt werden, wenn als Antwort eine Größe abhängig von einer Spannung in Rotor oder Stator der Elektrischen Maschine bestimmt wird. Dazu kann in einer bevorzugten Ausgestaltung beispielsweise eine Spannung zwischen zwei Punkten einer Rotorspule oder einer Statorspule über zwei Kontakte zu diesen Punkten abgegriffen werden und weiterverarbeitet werden. Besonders vorteilhaft, weil zusätzliche Informationen genutzt werden und damit das Verfahren robuster wird, ist es dabei, nicht nur einen Spannungswert, also z. B. die Spannungsamplitude, sondern zusätzlich auch den zeitlichen Verlauf der Spannung mit einzubeziehen. Hardwaremäßig lässt sich diese vorteilhafte Ausgestaltung z. B. durch eine zusätzliche Messeinheit realisieren, welche die Spannung (Amplitude und gegebenenfalls zeitlichen Verlauf) misst und weiterverarbeitet.
-
Das Herausforderungssignal kann vorzugsweise durch einen speziellen Signalgeber erzeugt werden, welchen die Elektrische Maschine aufweist. Dieser Signalgeber kann dabei kostengünstig realisiert und auf das Verfahren optimiert werden.
-
In einer vorteilhaften Ausgestaltung wird die Position des Rotors zur Durchführung des Verfahrens, z. B. durch einen Positionssensor, bestimmt. Dadurch sind die Bedingungen bei der Erzeugung des Herausforderungs-Antwort Paares optimal definiert und ein Einfluss durch die aktuelle Rotorposition auf das Ergebnis wird minimiert. In einer besonders sicheren Ausgestaltung werden die Erzeugung der Herausforderung und die Bestimmung der Antwort getriggert durch Signale des Positionssensors, dass der Rotor in einer bestimmen Position ist. Zusätzlich oder alternativ zu einem Positionssensor kann dieses Triggern auch manuell durchgeführt werden, z. B. um die Kosten eines gegebenenfalls extra dafür vorzusehenden Sensors einzusparen. Dafür können z. B. zwei Punkte auf dem Rotor und dem Stator mit Marken versehen werden. Ein Operator kann dann die Marken (Punkte) nebeneinander positionieren und damit eine definierte Rotorposition bereitstellen und das Messverfahren triggern.
-
Vorteilhafterweise kann eine Bestimmung der Antwort für eine Authentifizierung herangezogen werden, indem mit der bestimmten Antwort und einem öffentlichen Schlüssel eine vorher mit geheimem Schlüssel signierte Antwort verifiziert wird. Dadurch ist ein einfach einzusetzendes und damit kostengünstig realisierbares Verfahren geschaffen, wie ein Geräts oder Fahrzeug mit Elektrischer Maschine bzw. eine Elektrische Maschine authentifiziert werden kann (beispielsweise durch einen Kunden), indem ein öffentlicher Schlüssel zur Verfügung gestellt wird und eine mit geheimem Schlüssel signierte Antwort mit/in der Elektrischen Maschine bzw. mit/in dem Gerät oder Fahrzeug mitgeliefert wird.
-
In einer weiteren vorteilhaften Ausgestaltung wird mit dem Herausforderungs-Antwort-Paar ein geheimer Schlüssel erzeugt (dazu kann das ganze Herausforderungs-Antwort-Paar oder nur die Antwort herangezogen werden) und mit diesem eine Authentifizierungsbotschaft verifiziert. Damit ist es z. B. mit vergleichsweise geringem Aufwand möglich, zwischen der Elektrischen Maschine und einem verbundenen Gerät einen sicheren Kommunikationspfad herzustellen.
-
Zeichnungen
-
Es zeigen
-
1 die beispielhafte Ausgestaltung einer Elektrischen Maschine mit Vorrichtungen zur Erzeugung bzw. Bestimmung eines Herausforderungs-Antwort-Paares,
-
2 einen schematischen Spannungsverlauf (Funktionsverlauf V(t), Spannung V über Zeit t),
-
3 schematisch den Ablauf eines Verfahrens zum Bestimmen bzw. Verarbeiten eines Spannungsverlauf,
-
4 schematisch den Ablauf eines Verfahrens zur Authentifizierung einer Elektrischen Maschine,
-
5 eine Elektrische Maschine mit einem sicheren Kommunikationspfad zu einem verbundenen Gerät und
-
6 schematisch den Ablauf eines Verfahrens zur Herstellung eines sicheren Kommunikationspfad zwischen einer Elektrischen Maschine und einem mit dieser verbundenen Gerät.
-
Entwickler und Hersteller hochqualitativer Produkte müssen sich oft mit dem Problemfeld Produktpiraterie auseinandersetzen. Oft wird zwar viel Geld in Forschung und Entwicklung solcher Produkte investiert, diese können dann jedoch verhältnismäßig einfach illegal kopiert werden. Das Problem beschränkt sich dabei nicht nur auf die Hersteller der Produkte, sondern kann aufgrund meist deutlicher reduzierter Qualitätsstandards auch den Käufer des Produkts betreffen. Für Hersteller wie Kunden ist es daher wünschenswert, Produkte zuverlässig authentifizieren zu können. Im Folgenden wird beschrieben, wie in einer Elektrischen Maschine ein Herausforderungs-Antwort-Paar erzeugt werden kann, welches zur Authentifizierung der Elektrischen Maschine oder von mit der Elektrischen Maschine verbundenen Geräten genutzt werden kann. Damit wird eine Induktionswirkung innerhalb der Elektrischen Maschine als Grundlage einer physikalischen, nicht-klonbaren Funktion (Physical Unclonable Funktion, PUF) herangezogen. Unter den Begriff Elektrische Maschine fallen hier insbesondere auch Elektromotoren und Generatoren. Die Erfindung wird teilweise anhand von Elektromotoren beschrieben, ist aber prinzipiell genauso auch geeignet für andere, insbesondere rotierende, Elektrische Maschinen.
-
Zum Schutz vor nachgebauten bzw. gefälschten, technischen Einheiten kann eine sichere Authentifizierung einer Einheit als Orginalware z. B. durch den Kunden gewünscht werden. Eine Methode, welche für sichere Authentifizierungen herangezogen werden kann, basiert auf dem Einsatz von so genannten physikalischen, nicht klonbaren Funktionen (Physical Unclonable Functions, PUFs).
-
Eine PUF ist eine Funktion, welche in der physikalischen Struktur eines Bauteils begründet ist, wobei die Struktur viele von der jeweiligen exakten Herstellung des einzelnen Bauteils bestimmte Zufallsparameter aufweist Bei der Verwendung von PUFs für eine Authentifizierung wird ausgenutzt, dass durch Variation z. B. geometrischer und/oder materialspezifischer Parameter eines physikalischen Systems bei dessen Herstellung bestimmte Antworten auf einen bestimmten physikalischen Stimulus, sogenannte Herausforderung-Antwort-Paare (Challenge Response Pairs, CRP), charakteristisch für ein bestimmtes Bauteil einer Baureihe sind. Der Stimulus wird dabei Herausforderung (Challenge) genannt, die Reaktion der PUF wird Antwort (Response) genannt Um PUFs für Authentifizierungen zu verwerden, werden kryptographische Verfahren hinzugezogen, welche in der Literatur ausführlich diskutiert sind (z. B.
US 2009/0083833 A1 und
US 7,681,103 B2 ).
-
Der vorliegenden Erfindung liegt zugrunde, dass eine von einer Induktion in einer Elektrischen Maschine abhängige Größe als PUF betrachtet werden kann. Die für eine Authentifizierung über PUFs benötigten Zufallsparameter bei der Herstellung einer Elektrischen Maschine betreffen zum Beispiel die Variation geometrischer Eigenschaften (Anordnung, Größe) des Stators und Rotors, z. B. die räumliche Verteilung von Spulenwindungen oder leichte Asymmetrien in Rotor und Stator.
-
In 1 ist eine beispielhafte Ausgestaltung für die Erzeugung eines Herausforderungs-Antwort-Paares in einer Elektrischen Maschine gezeigt. Mit dem gezeigten Aufbau wird eine PUF getriggert (Herausforderung) und ausgewertet (Antwort). Dazu ist in dieser konkreten Ausgestaltung eine Spule der Elektrischen Maschine, hier die Stator-Spule 2, mit einer Signalquelle 1 verbunden. Durch ein festgelegtes Spannungs- bzw. Stromsignal aus der Signalquelle 1 als Herausforderung wird eine Induktionswirkung zwischen der Statorspule 2 und der Rotorspule 3 getriggert. Diese Wirkung wird gemessen, in 1 durch den Abgriff der Spannung zwischen zwei Punkten 4 und 5 der Rotorspule 3. Die Spannungsdifferenz (z. B. Amplitude und zeitlicher Verlauf) wird von einer Messeinheit 6 aufgenommen und verarbeitet. Damit liefert die Messeinheit 6 den Antwortwert zu der durch den Signalgeber 1 bestimmten Herausforderung. Damit die Bedingungen für diese Erzeugung eines Herausforderungs-Antwort-Paares wohldefiniert sind, wird die Position der Rotorspule 3 (bzw. die Position des sich drehenden Rotors) durch einen Positionssensor 7 registriert, welcher sowohl an den Signalgeber 1 als auch an die Messeinheit 6 bei einer bestimmten, vordefinierten Rotorposition ein Signal geben kann und damit Signalerzeugung bzw. Messung triggern kann. Zusätzlich oder alternativ zu dem Positionssensor 7 kann ein solches Triggern auch manuell durchgeführt werden, z. B. um die Kosten eines gegebenenfalls extra dafür vorzusehenden Sensors einzusparen. Dafür können z. B. zwei Punkte auf dem Rotor und dem Stator mit Marken versehen werden. Ein Operator kann dann die Marken (Punkte) nebeneinander positionieren und damit eine definierte Rotorposition bereitstellen und das Messverfahren triggern. Mit dem Bezugszeichen 8 in 1 sind schematisch angedeutete Magnetfeldlinien bezeichnet.
-
Der prinzipielle Aufbau in 1 kann variiert werden, z. B. indem die Rollen von Stator und Rotor getauscht wird, oder damit, dass die beiden gezeigten Spulen beide Spulen des Rotors oder alternativ des Stators sind. Auch die Messung eines Spannungsverlaufs in der Spule, welche mit dem Signalgeber verbunden ist, ist denkbar.
-
Die Punkte 4 und 5, zwischen welchen die Spannungsdifferenz als Grundlage für den Antwortwert gemessen wird, sind an zufälligen (aber damit für diese Elektrische Maschine festgelegten) Stellen einer Spule angeordnet. Um eine höhere Anzahl von Herausforderungs-Antwort-Paaren bereit stellen zu können, kann die Anzahl an Punktpaaren erhöht werden. Die Antwort eines bestimmten Paares auf eine bestimmte Herausforderung durch den Signalgeber 1 bestimmt damit jeweils ein Herausforderungs-Antwort-Paar.
-
Die Signalquelle 1 ist vorzugsweise eine Spannungsquelle, welche z. B. Spannungspulse variabler Länge und fester Amplitude erzeugen kann. Getriggert durch die Information des Positionssensors oder in der alternativen Ausgestaltung durch die beschriebene manuelle Bestätigung, dass der Rotor an der richtigen Position ist, erzeugt der Signalgenerator 1 ein Signal, z. B. als Delta-Spannungs-Peak. Das Signal wird vorzugsweise speziell für die Erzeugung des Herausforderungs-Antwort-Paares erzeugt, das beschriebene Verfahren findet damit auch vorzugsweise außerhalb des Normalbetriebs statt. Vorzugsweise ist die Signalquelle 1 extra für das Authentifizierungsverfahren vorzusehen, ebenso auch das Messgerät 6. Sollten entsprechende Ressourcen aufgrund anderer Anwendungen vorhanden sein, können diese natürlich auch verwendet werden. Evtl. ist auch der Positionssensor 7 extra vorzusehen; falls eine entsprechende Sensorik vorhanden sein sollte, kann entsprechend wiederum auf diese zurückgegriffen werden.
-
2 zeigt schematisch einen zeitlichen Verlauf V(t) der gemessenen Spannungsdifferenz V zwischen den Punkten 4 und 5 in der Rotorspule 3 nach einem Spannungsimpuls durch den Signalgeber 1 in Statorspule 2. Mit V ist dabei die Spannungsachse, mit t die Zeitachse des Diagramms bezeichnet. Die z. B. exponentiell abklingende Funktion V(t) ist in Amplitude und zeitlichem Verlauf abhängig von der Induktionswirkung zwischen Rotor und Stator (gemäß 1 zwischen den Spulen 2 und 3 (inklusive der Spulenkerne)) sowie deren Widerstandseigenschaften und ist damit wiederum abhängig von den bereits beschriebenen Herstellungsbesonderheiten (Geometrie, Abmessungen, Material). Wie beschrieben, variieren diese Parameter zwischen verschiedenen, eigentlich baugleichen Geräten und die Funktion V(t) kann daher als Grundlage für eine eindeutige Identifikation verwendet werden.
-
Hierzu kann die Funktion V(t) aus 2, also das Messsignal, welches die Messeinheit 6 in 1 empfängt, in eine digitale Kette umgewandelt werden. Ein beispielhaftes Software-Ablaufdiagramm, welches verwendet werden kann, die zeitabhängigen Eigenschaften dieser Funktion zu messen bzw. abzubilden, ist in 3 gezeigt. Dabei wird vorausgesetzt, dass im System (also in der Elektrischen Maschine oder dieser zugeordnet) eine Speichertabelle für N mögliche Einträge und ein Zähler vorhanden sind. Abgelegt sind außerdem Schwellwerte Schwellwert(i) zu allen möglichen Schwellwertzählerständen i = 0...N.
-
In Schritt 31 wird der Zeitzähler gestartet.
-
In Schritt 32 wird der Startwert von i auf 0 gesetzt.
-
In Schritt 33 wird überprüft, dass i kleiner N ist Ist dies der Fall, wird auf Schritt 34 verzweigt, ist dies nicht der Fall, wird zu Schritt 38 verzweigt.
-
In Schritt 34 wird für i kleiner N der aktuelle Messwert V(t) gelesen.
-
In Schritt 35 wird überprüft, ob der Wert von V(t) kleiner als der Schwellwert des aktuellen Parameters i ist. Ist dies der Fall, so wird auf Schritt 36 verzweigt. Ist dies nicht der Fall, springt das Verfahren zu Schritt 34 und von dort wiederum zu Schritt 35 usw., solange bis die Bedingung V(t) kleiner Schwellwert(i) erfüllt ist, und verzweigt dann auf Schritt 36.
-
In Schritt 36 wird der Wert des Zeitzählers in die i-te der N Stellen des Speichers geschrieben.
-
In Schritt 37 wird der Wert i um 1 erhöht Nach Schritt 37 verzweigt das Verfahren zu Schritt 33.
-
In Schritt 38 werden die N Zeitwerte aus dem Speicher konkateniert und ausgegeben.
-
Das gemessene Signal wird also ständig mit dem aktuellen Eintrag, dem Schwellwert(i), vergleichen. Wird der Wert kleiner als der Schwellwert, so wird der aktuelle Zeitwert abgespeichert in einem Array „Zeit”, und die Variable „i” zeigt auf den nächsten Eintrag der Tabelle mit den Schwellwerten. Wenn alle Einträge verarbeitet sind (i = N), wird die Verkettung (Konkatenation) der Einträge der Tabelle „Zeit” ausgegeben als die Zeichenkette, welche die Elektrische Maschine charakterisiert, also als Antwort der PUF auf die Herausforderung.
-
Um negative Rauscheffekte zu verringen und die Sicherheit der Methode zu erhöhen, kann das Antwortsignal unter Verwendung eines Fuzzy Extractors bearbeitet werden. Beispiele für Fuzzy Extractors können z. B. der folgenden Schrift entnommen werden: Yevgeniy Dodis, Jonathan Katz, and Leonid Reyzin: „Robust fuzzy extractors and authenticated key agreement from close secrets”, in Advances in Cryptology-CRYPTO '06, volume 4117 of Lecture Notes in Computer Science, pages 232–250, Springer Verlag, 2006.
-
In einer speziellen Ausführungsform kann auf Basis der PUF-Eigenschaften ihrer Induktionsfunktionen eine Authentifizierung der Elektrischen Maschine selbst erfolgen. Dabei soll in diesem Ausführungsbeispiel z. B. verifiziert werden, ob die Elektrische Maschine von einem bestimmten Hersteller hergestellt wurde oder nicht. Ein entsprechendes Verfahren ist schematisch in 4 gezeigt.
-
In einem ersten Schritt 41 wird ein physikalischer Stimulus (Spannung, Strom) als Herausforderung erzeugt, z. B. wie zu 1 beschrieben.
-
Die Antwort der PUF, basierend auf der Induktionswirkung des Stimulus, wird in Schritt 42 aufgenommen bzw. weiterverarbeitet, z. B. als digitale Kette wie zu 2 beschrieben. Es wird damit also in den Schritten 41 und 42 zusammen ein CRP bereitgestellt.
-
Im dritten Schritt 43 wird die Antwort mit einem privaten (geheimen) Schlüssel des Herstellers signiert. Dies kann Geräte-intern erfolgen, sofern die geeigneten Rechenressourcen vorhanden sind, oder auch extern. Die somit erhaltene Signatur wird dann vorzugsweise in oder auf der Elektrischen Maschine bzw. in oder auf dem Gerät, welches die Elektrische Maschine enthält, bereit gestellt. Es kann z. B. in einem speziellen Speicher abgelegt werden oder als Barcode auf die Elektrische Maschine oder das Gerät aufgebracht werden. Als konkretes Beispiel könnte ein Elektromotor in einem Elektrowerkzeug verbaut sein und die Signatur außen auf dem Elektrowerkzeug angebracht sein. In einem anderen Beispiel ist ein Elektromotor in einem Fahrzeug verbaut und die Signatur in einem Speicher des Fahrzeugs abgelegt. Bevor die Antwort signiert wird, kann sie in einer besonderen Ausgestaltung mit einem geeigneten Fehler-Korrektur-Code (Error correction Code, ECC) angepasst werden.
-
Die Schritte 41–43 können vorzugsweise im Werk des Herstellers der Elektrischen Maschine oder z. B. in einer autorisierten Werkstatt durch einen beschränkten Kreis autorisierter Personen erfolgen.
-
In den Schritten 44–46 erfolgt die eigentliche Authentifizierung der Elektrischen Maschine, z. B. durch einen Kunden oder durch den Zoll zur Überprüfung des Geräts bzw. der Elektrischen Maschine auf korrekte Herstelleridentität. Dazu wendet der Überprüfende in Schritt 44 die Herausforderung, also den physikalischen Stimulus, an. Dies kann zum Beispiel erfolgen, indem ein dafür vorgesehenes Betätigungselement ausgenutzt wird, oder indem durch einen Signaleingang ein entsprechendes Signal zum Triggern des Stimulus oder der Stimulus direkt an die Elektrischen Maschine gegeben wird. Entweder das korrekte Stimulussignal wird hier automatisch getriggert oder der Wert wurde im Schritt 41 festgehalten, z. B. durch Speicherung oder Bereitstellen mit der Signatur.
-
Die Herausforderung aus Schritt 44 erzeugt in der Elektrischen Maschine eine Antwort, welche in Schritt 45 durch den Überprüfer bestimmt wird. Die Verarbeitung der Antwort erfolgt z. B. wie in Schritt 42. Mit dieser Antwort sowie mit einem öffentlichen Schlüssel des Herstellers der Elektrischen Maschine kann der Überprüfer nun die bereit gestellte (z. B. aufgebrachte oder gespeicherte) Signatur und damit die Herkunft der Elektrischen Maschine in Schritt 46 verifizieren.
-
Insgesamt kann gemäß diesem Ausführungsbeispiel also eine Elektrische Maschine authentifiziert werden. Dies kann beispielsweise auch für die Authentifizierung eines zumindest teilweise elektrisch angetriebenen Fahrzeugs oder eines Elektrowerkzeugs ausgenutzt werden. Die Schritte 44–46 können bei Bedarf beliebig oft für Authentifizierungen durchgeführt werden, was durch einen gestrichelten Pfeil von Schritt 46 zu Schritt 44 angedeutet ist.
-
5 zeigt anhand eines beispielhaften Aufbaus, wie auf einer Induktion in einer Elektrischen Maschine beruhende, physikalische, unklonbare Funktionen verwendet werden können, einen sicheren Kommunikationspfad zwischen einer Elektrischen Maschine und einem mit dieser verbundenen Gerät einzurichten, z. B. zwischen einem Elektromotor in einem Fahrzeug und einem verbundenen Steuergerät.
-
Dabei sind in 5 die Elektrische Maschine 51, z. B. ein Elektromotor in einem Fahrzeug, sowie ein mit der Elektrischen Maschine verbundenes Gerät 52, zum Beispiel ein Steuergerät, gezeigt.
-
Der Elektrischen Maschine zugeordnet sind ein Fuzzy Extractor 53 und eine MAC-Berechnungs- bzw. Verifizierungseinheit 54. Beispiele für Fuzzy Extractors sind der weiter oben genannten Literaturstelle zu entnehmen. Dabei können diese Einheiten 53 und 54 zum Beispiel auch in einem Schaltkreis, gegebenenfalls auch mit weiteren kryptographischen Funktionen, integriert sein. Die Einheiten 53 und 54 können Bestandteile der Elektrischen Maschine sein oder extern und dieser zugeordnet.
-
Über eine Kommunikationsverbindung kann das Gerät 52 der Elektrischen Maschine 51 Nachrichten senden (55). Wie zu 1 beschrieben, sind der Elektrischen Maschine 51 in 5 nicht explizit gezeigte (bzw. schematisch zu der Einheit 53 zugeschlagene) Mittel zugeordnet, mit welchen ein Herausforderungs-Antwort-Paar basierend auf einer Induktion in der Elektrischen Maschine 51 bestimmt werden kann. Dazu wird eine Herausforderung generiert (schematisch mit 56 in 5 bezeichnet) und damit eine Induktion bewirkt Die Antwort der Elektrischen Maschine 51 ist schematisch mit 57 bezeichnet. Auf Basis des Herausforderungs-Antwort-Paares (oder auf Basis der Antwort) generiert der Fuzzy Extractor 53 einen geheimen Schlüssel, wie zu 6 noch genauer ausgeführt, und sendet (58) diesen an die MAC-Berechnungs- bzw. -Verifizierungseinheit 54. Eine mit dem gleichen geheimen Schlüssel in dem Gerät 52 gesicherte Nachricht (Authentifizierungszusatz), welche von der Elektrischen Maschine 51 empfangen wurde (55), kann damit überprüft werden. Das Ergebnis der Verifizierung führt z. B. zu einer Bearbeitung der Nachricht durch die Elektrische Maschine (59) bzw. zu einem Verwerfen der Nachricht.
-
Verwendet die Elektrische Maschine 51 aus 5 den beschriebenen sicheren Pfad zur Kommunikation mit dem verbundenen Gerät 52, hat sie eine hohe Sicherheit, dass die empfangenen Signale wirklich von dem gewünschten Gerät stammen und beispielsweise auch nicht unterwegs manipuliert wurden.
-
6 zeigt schematisch den Ablauf eines Verfahrens zur Herstellung eines sicheren Kommunikationspfads zwischen einer Elektrischen Maschine und einem mit dieser verbundenen Gerät.
-
In Schritt
61 wird ein PUF-CRP (Challenge-Response-Pair) bestimmt (wie z. B. zu
1 beschrieben) und daraus ein geheimer Schlüssel generiert. Die Schlüsselgenerierung kann dabei intern (z. B. in dem Gerät oder der Elektrischen Maschine) oder extern erfolgen. Für das Beispiel eines Elektromotors in einem Fahrzeug verbunden mit einem Steuergerät kann die Schlüsselgenerierung vorteilhafterweise durch das Steuergerät selbst erfolgen, da Steuergeräte gewöhnlich die hierzu benötigte Hardware standardmäßig aufweisen. Wie PUFs verwendet werden können, um daraus, beispielsweise mit Fuzzy Extractors, kryptographische Schlüssel zu generieren, wird zum Beispiel beschrieben in „Yevgeniy Dodis, Jonathan Katz, and Leonid Reyzin, Robust fuzzy extractors and authenticated key agreement from close secrets, In Advances in Cryptology-CRYPTO'06, volume 4117 of Lecture Notes in Computer Science, pages 232–250, Springer Verlag, 2006” oder in der
US 2009/0083833 A1 .
-
Der generierte, geheime Schlüssel wird in Schritt 62 in dem Gerät oder in einem dem Gerät zugeordneten Speicher abgelegt – vorzugsweise in einem kryptographisch, z. B. durch spezielle Hardware, geschützten Speicher-Bereich, aus welchem der Schlüssel nicht einfach ausgelesen werden kann.
-
Die Schritte 61 und 62 stellen sozusagen die Initialisierung des Verfahrens dar und werden zum Beispiel im Werk des Herstellers durchlaufen. Die Authentifizierung, bzw. das sichere Kommunizieren über einen sicheren Kommunikationspfad zwischen einer Elektrischen Maschine und einem verbundenen Gerät findet in den folgenden Schritten 63 bis 67 statt.
-
Für eine Authentifizierung des Geräts kann dieses eine Nachricht an die Elektrische Maschine schicken (Schritt 63), wobei die Nachricht mit dem geheimen Schlüssel verschlüsselt ist oder vorzugsweise die Nachricht mit einem Identitätstag versehen ist, welches nur mit dem geheimen Schlüssel erzeugt werden kann. Ein solches Identitätstag kann kryptographisch mit den bekannten Methoden realisiert werden, beispielsweise unter Verwendung von Message Authentication Code (MAC). Das Identitätstag wird also von dem mit der Elektrischen Maschine verbundenen Gerät generiert (bzw. die Nachricht durch dieses verschlüsselt), dazu weist das Gerät die geeigneten kryptographischen Mittel und Hardware-Ressourcen auf.
-
Im bevorzugten Ausführungsbeispiel (Elektrische Maschine = Elektromotor im Fahrzeug, Gerät = Steuergerät) kann die Authentifizierung des Steuergeräts (z. B. durch das Senden einer Nachricht mit einem Identitätstags) beispielsweise beim Hochfahren oder Herunterfahren des Steuergeräts erfolgen, z. B. bei Motorstart bzw. im Steuergeräte- und/oder Motor-Nachlauf.
-
Im Schritt 64 erzeugt die Elektrische Maschine nun selbständig die vorgesehene Antwort durch Anlegen des Herausforderungssignals (wie zu 5 beschrieben) und erzeugt daraus, z. B. mit Hilfe des Fuzzy Extractors (siehe 5), den geheimen Schlüssel analog zu Schritt 61. Dieser geheime Schlüssel ist damit auch der gleiche, welcher in Schritt 62 abgelegt wird.
-
Mit der MAC-Verifizierungseinheit überprüft die Elektrische Maschine in Schritt 65 die Korrektheit des Identitätstags (bzw. entschlüsselt die verschlüsselte Nachricht) und prüft damit die Identität des Geräts. Je nach Ergebnis dieser Überprüfung wird auf Schritt 66 verzweigt (falsche Identität) oder auf Schritt 67 (korrekte Identität).
-
Wie beschrieben wird im Fall einer fehlgeschlagenen Verifizierung in Schritt 65 auf den Schritt 66 verzweigt. In diesem können nun verschiedene Reaktionen auf die gescheiterte Authentifizierung vorgesehen sein. Z. B. kann der Befehl bzw. die Nachricht ignoriert werden, es können Fehlermeldungen ausgegeben werden, die Elektrische Maschine und/oder das Gerät können deaktiviert werden oder in einen „fail-safe-mode” geschaltet werden, oder weitere Maßnahmen können ergriffen werden. Im Fall eines mit einem Elektromotor in einem Fahrzeug verbundenen Steuergeräts könnte z. B. in Fall der fehlgeschlagenen Authentifizierung eine Wegfahrsperre aktiviert werden. Gegebenenfalls kann das in 6 gezeigte Verfahren mit Schritt 66 (vorerst) beendet sein, es kann aber unter Umständen (z. B. wenn nur eine Fehlermeldung ausgegeben wird) auch eine erneute Verzweigung auf Schritt 63 erfolgen, das Verfahren also mit der nächsten von dem Gerät empfangenen Nachricht fortgesetzt werden.
-
Im Fall einer korrekten Verifizierung bzw. Authentifizierung wird in Schritt 67 die Nachricht akzeptiert und verarbeitet, bzw. der Befehl ausgeführt. Schritt 67 verzweigt wieder auf Schritt 63, sobald die nächste Nachricht von dem verbundenen Gerät über den sicheren Kommunikationspfad empfangen wird und verifiziert werden soll.
-
Ein mögliches Problem mit der Identifikation bzw. Authentifizierung von (vor allem älteren) Elektrischen Maschinen bzw. mit diesen verbundenen Geräten auf Basis von PUFs kann die altersbedingte Degradation von Parameter sein, welche kritisch zu den gewählten PUF beitragen. Dies kann in bestimmten Fällen umgangen werden, wenn der alte Antwortwert zu festgelegten Zeiten oder bei bestimmten Ereignissen durch einen aktuellen ersetzt wird bzw. das CRP aktualisiert wird.
-
So könnte beispielsweise in Anlehnung an das Ausführungsbeispiel der 5 und 6 die Elektrische Maschine ein neues CRP erzeugen und einen daraus generierten, geheimen Schlüssel selbstständig an das andere Gerät schicken. Dort wird dieser dann abgelegt und für das weitere Verfahren zur Schaffung eines sicheren Kommunikationspfad zwischen dem Gerät und der Elektrischen Maschine eingesetzt. Für diese Kommunikation des geheimen Schlüssels können die Elektrische Maschine und das zugeordnete Gerät gegebenenfalls noch den alten, geheimen Schlüssel zur Absicherung heranziehen, sofern dieser in beiden Geräten vorhanden (gespeichert) ist. Eine solche PUF-CRP-Aktualisierung kann in regelmäßigen Abständen bzw. nach bestimmen Zeitdauern erfolgen oder auch abhängig von Parameter, welche eine Alterung angeben. Sie kann zum Beispiel bei einem Motor- bzw. Steuergerätenachlauf im elektrisch betriebenen Fahrzeug erfolgen, wenn es sich bei der Elektrischen Maschine um einen Elektromotor in einem Fahrzeug handelt und beim damit verbundenen Gerät um ein zugeordnetes Steuergerät.