-
Die Erfindung betrifft ein Verfahren zur Kommunikation zwischen zumindest einer ersten elektronischen Recheneinrichtung und einer zweiten elektronischen Recheneinrichtung innerhalb eines Systems gemäß dem Oberbegriff vom Patentanspruch 1. Ferner betrifft die Erfindung ein System.
-
Aus dem Stand der Technik ist bereits bekannt, dass bei technischen Systemen, die miteinander kommunizieren und elektronische Bauteile enthalten, beispielsweise durch Manipulation der Kommunikation Risiken entstehen können. Hierzu sind bereits klassische Kryptografieverfahren, wie Message Authentication Codes, asymmetrische Signatur Algorithmen oder hashbasierte Signaturalgorithmen bekannt, um einen entsprechenden Manipulationsschutz bereitstellen zu können.
-
Die US 2013 03 22 622 A1 umfasst ein Verfahren mit den Schritten des Ableitens eines Basispunktes auf einer elliptischen Kurve in einer ersten Verarbeitungsvorrichtung, des Erzeugens von Authentifizierungsinformationen in der ersten Verarbeitungsvorrichtung unter Verwendung des Basispunktes und eines privaten Schlüssels der ersten Verarbeitungsvorrichtung und des Übertragens der Authentifizierungsinformation von der ersten Verarbeitungsvorrichtung zu einer zweiten Verarbeitungsvorrichtung. Der Basispunkt kann auf der elliptischen Kurve zum Beispiel durch Anwendung einer Einwegfunktion auf einen aktuellen Zeitwert oder durch Berechnung auf der Grundlage einer signierenden Nachricht abgeleitet werden.
-
Aufgabe der vorliegenden Erfindung ist es ein Verfahren sowie ein System zu schaffen, mittels welchem eine sicherere Kommunikation zwischen zwei elektronischen Recheneinrichtungen innerhalb eines Systems realisiert werden kann.
-
Diese Aufgabe wird durch ein Verfahren sowie durch ein System gemäß den unabhängigen Patentansprüchen gelöst. Vorteilhafte Ausgestaltungsformen sind in den Unteransprüchen angegeben.
-
Ein Aspekt der Erfindung betrifft ein Verfahren zur Kommunikation zwischen zumindest einer ersten elektronischen Recheneinrichtung und einer zweiten elektronischen Recheneinrichtung innerhalb eines Systems, bei welchem von der ersten elektronischen Recheneinrichtung eine Nachricht zur Kommunikation um einen Nachrichten-Authentifizierungscode erweitert wird und die Herkunft der Nachricht von der zweiten elektronischen Recheneinrichtung mittels des Nachrichten-Authentifizierungscodes überprüft wird.
-
Es ist vorgesehen, dass der Nachrichten-Authentifizierungscode mittels eines Einmalgeheimnis von der ersten elektronischen Recheneinrichtung auf Basis einer Hashkette erzeugt wird, wobei das Einmalgeheimnis zeitlich nach einer Übertragung des Nachrichten-Authentifizierungscodes übermittelt wird.
-
Somit ist die Verwendung miteinander verketteter Einmalgeheimnisse auf Basis von Hashfunktionen vorgeschlagen. Dies kann durch hashbasierte Signaturen noch erweitert werden. Dadurch kann ein sicherer Schutz gegen Manipulationen für technische Systeme realisiert werden, auch wenn ein Angreifer über einen leistungsfähigen Quantencomputer verfügt. Dabei sind die Sicherheitsanforderungen an die Hardware vergleichbar mit asymmetrischen Signaturalgorithmen.
-
Gemäß einer vorteilhaften Ausgestaltungsform wird bei einer Initalisierungsphase ein öffentlicher Schlüssel als Endwert der Hashkette von der ersten elektronischen Recheneinrichtung erzeugt und an die zweite elektronische Recheneinrichtung übermittelt.
-
Weiterhin vorteilhaft ist, wenn eine Challenge Response-Modul zwischen der ersten elektronischen Recheneinrichtung und der zweiten elektronischen Recheneinrichtung bereitgestellt wird, wobei ein Challenge-Wert auf Basis der Hashkette erzeugt wird.
-
In einer weiteren vorteilhaften Ausgestaltungsform wird bei einem Authentifizierungsprozess der zweiten elektronischen Recheneinrichtung gegenüber der ersten elektronischen Recheneinrichtung eine Einmalsignatur verwendet.
-
Ein weiterer Aspekt der Erfindung betrifft ein System mit zumindest einer ersten elektronischen Recheneinrichtung und einer zweiten elektronischen Recheneinrichtung, wobei das System zum Durchführen eines Verfahrens nach dem vorhergehenden Aspekt ausgebildet ist. Insbesondere wird das Verfahren mittels des Systems durchgeführt.
-
Vorteilhafte Ausgestaltungsformen des Verfahrens sind als vorteilhafte Ausgestaltungsformen des Systems anzusehen. Das System weist dazu gegenständliche Merkmale auf, welche zur Durchführung des Verfahrens notwendig sind.
-
Weitere Vorteile, Merkmale und Einzelheiten der Erfindung ergeben sich aus der nachfolgenden Beschreibung bevorzugter Ausführungsbeispiele sowie anhand der Zeichnungen. Die vorstehend in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren alleine gezeigten Merkmale und Merkmalskombinationen sind nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar, ohne den Rahmen der Erfindung zu verlassen.
-
Dabei zeigen:
- 1 Ein schematisches Blockschaltbild gemäß einer ersten Ausführungsform eines Systems;
- 2 Ein weiteres schematisches Blockschaltbild gemäß einer weiteren Ausführungsform des Systems;
- 3 Ein weiteres schematisches Blockschaltbild einer weiteren Ausführungsform des Systems; und
- 4 Ein weiteres schematisches Blockschaltbild einer Ausführungsform des Systems.
-
In den Figuren sind gleich oder funktionsgleiche Elemente mit gleichen Bezugszeichen versehen.
-
1 zeigt in einem schematischen Blockschaltbild eine Ausführungsform eines Systems 10. Das System 10 weist eine erste elektronische Recheneinrichtung 12 sowie eine zweite elektronische Recheneinrichtung 14 auf. Die erste elektronische Recheneinrichtung 12 kann auch als Quelle und die zweite elektronische Recheneinrichtung 14 als Senke bezeichnet werden.
-
Beim Verfahren zur Kommunikation zwischen der ersten elektronischen Recheneinrichtung 12 und der zweiten elektronischen Recheneinrichtung 14 innerhalb des Systems 10 wird von der ersten elektronischen Recheneinrichtung eine Nachricht zur Kommunikation um einen Nachrichten-Authentifizierungscode 16 erweitert und es wird die Herkunft der Nachricht von der zweiten elektronischen Recheneinrichtung 14 mittels des Nachrichten-Authentifizierungscodes 16 überprüft.
-
Der Nachrichten-Authentifizierungscodes 16 wird mittels eines Einmalgeheimnis 18a, 18b, 18c von der ersten elektronischen Recheneinrichtung 12 auf Basis einer Hashkette 20 erzeugt, wobei das Einmalgeheimnis 18a, 18b, 18c zeitlich nach einer Übertragung des Nachrichten-Authentifizierungscodes 16 übermittelt wird.
-
Insbesondere kann vorgesehen sein, dass bei einer Initialisierungsphase 22 ein öffentlicher Schlüssel 24 von der ersten elektronischen Recheneinrichtung 12 erzeugt wird und an die zweite elektronische Recheneinrichtung 14 übermittelt wird, so dass der Ursprung der Hashreihe überprüft werden kann.
-
Insbesondere handelt es sich bei dem Einmalgeheimnis 18a um ein zukünftiges Einmalgeheimnis 18a, bei dem Einmalgeheimnis 18b handelt es sich um das aktuelle Einmalgeheimnis 18b, und bei dem Einmalgeheimnis 18c handelt es sich um das vergangene Einmalgeheimnis 18c. Insbesondere kann beispielsweise als Nachricht ein Wert 26 übermittelt werden Bei dieser Übertragung handelt es sich somit insbesondere um eine eigentliche Übertragung des Werts, danach folgt eine Absicherung, dass dieser Wert tatsächlich aus der Quelle stammt. Ferner ist in der 1 insbesondere eine Authentifizierung 28 sowie eine Übermittlung und Validierung des Einmalgeheimnisses 18a, 18b, 18c gezeigt, was mit dem Bezugszeichen 30 versehen ist. Für ein Challenge-Response Modul 32 kann insbesondere auf Seiten der zweiten elektronischen Recheneinrichtung 14 ein Zufallszahlengenerator 34 ausgebildet sein. Ferner kann ein MAC-Generator 36 sowohl auf der ersten elektronischen Recheneinrichtung 12 sowie auf der zweiten elektronischen Recheneinrichtung 14 ausgebildet sein. Des Weiteren kann die zweite elektronische Recheneinrichtung 14 ein erstes Vergleichsmodul 38, sowie ein zweites Vergleichsmodul 40 aufweisen.
-
Insbesondere ist somit vorgeschlagen, dass das Einmalgeheimnis 18a, 18b, 18c mittels der ersten elektronischen Recheneinrichtung 12 auf Basis der Hashkette 20 erzeugt wird. Die Übermittlung des Einmalgeheimnis 18a, 18b, 18c zur zweiten elektronischen Recheneinrichtung 14 erfolgt dabei nach der Übermittlung des Authentifizierungsschlüssels 16. Zusätzlich zu dem Vergleich des Authentifizierungsschlüssels 16, was insbesondere mit dem ersten Vergleichsmodul 38 dargestellt ist, verifiziert die zweite elektronische Recheneinrichtung 14 das übermittelte Einmalgeheimnis 18a, 18b, 18c mittels einer Durchführung einer Hashberechnung des Einmalgeheimnisses 18a, 18b, 18c und vergleicht dieses Ergebnis mit dem vergangenen Geheimnis 18c zur Authentifizierung. Dieses ist insbesondere durch das zweite Vergleichsmodul 40 dargestellt. Während der Initialisierungsphase 22 ist es ausreichend den öffentlichen Schlüssel 24 von der ersten elektronischen Recheneinrichtung 12 zu der zweiten elektronischen Recheneinrichtung 14 zu übermitteln. Der öffentliche Schlüssel 24 entspricht dabei insbesondere dem vergangenen Einmalgeheimnis 18c. Insbesondere um ein robustes System 10 bereitzustellen, kann beispielsweise die zweite elektronische Recheneinrichtung 14 wiederholt die Hashberechnungen durchführen, um sich beispielsweise von fehlerhaften Authentifizierungen erholen zu können. Für eine erhöhte Effektivität, können ungenutzte Einmalgeheimnisse 18a, 18b, 18c vor einem Auslesen aus der ersten elektronischen Recheneinrichtung 12 geschützt werden. Zusätzlich, kann das vergangene Einmalgeheimnis 18c beispielsweise in der zweiten elektronischen Recheneinrichtung 14 gespeichert sein, wobei dies ebenfalls vor einem Zugriff und Manipulation geschützt ist. Somit kann mit geringen Sicherheitsanforderungen an die zweite elektronische Recheneinrichtung 14 und geringen Berechnungen eine Robustheit gegenüber Quantencomputern realisiert werden.
-
2 zeigt ein weiteres schematisches Blockschaltbild gemäß einer Ausführungsform des Systems 10. In der folgenden Ausführungsform ist insbesondere eine Weiterentwicklung des Systems 10 gemäß 1 gezeigt. Insbesondere ist gezeigt, dass auch eine Hashkette zum Erzeugen der Challenge-Werte des Challenge-Response Moduls 32 genutzt werden können. Dieser erlaubt insbesondere der ersten elektronischen Recheneinrichtung 12 zu validieren, dass die Challenge-Response auch wirklich von der zweiten elektronischen Recheneinrichtung 14 stammt. Insbesondere kann hierzu ein drittes Vergleichsmodul 42 vorgesehen sein.
-
3 zeigt ein weiteres schematisches Blockschaltbild einer weiteren Ausführungsform des Systems 10, welches insbesondere eine Alternative zur Ausführungsform gemäß 2 darstellt. Insbesondere ist vorliegend gezeigt, dass nun eine Einmal-Signatur 44a, 44b genutzt werden kann. Insbesondere ist eine zukünftige Einmalsignatur 44a und eine aktuelle Einmalsignatur 44b gezeigt. Insbesondere, wenn die Hashkette 20 genutzt wird, um die Authentifizierung durchzuführen, so ist der öffentliche Schlüssel 24 ein zusätzlicher Eingangsvektor für die Hashberechnung. Der Signaturmechanismus signiert eine zusätzliche Signatur-Challenge 46, welche durch die zweite elektronische Recheneinrichtung 14 erzeugt ist. Die erste elektronische Recheneinrichtung 12 signiert dabei die Signatur-Challenge 46 während die zweite elektronische Recheneinrichtung 14 diese verifiziert. Insbesondere wird diese gegenüber dem öffentlichen Schlüssel 24 verifiziert. Der öffentliche Schlüssel 24 und das Geheimnis 18a, 18b, 18c werden durch die Durchführung der Hashberechnung und durch den Vergleich mit dem Ergebnis mit dem vergangenen Geheimnis 18c ebenfalls verifiziert.
-
In dieser Kombination, wird ein privater Schlüssel 48 mittels der Einmalsignatur 44a, 44b innerhalb der ersten elektronischen Recheneinrichtung 12 behalten. Dies verhindert sogenannte „man-in-the-middle-Attacken“, da insbesondere die zweite elektronische Recheneinrichtung 14 nicht simulieren beziehungsweise vorhersehen kann, welche zukünftige Signatur-Challenge 46 genutzt wird. Für eine Effektivitätssteigerung, ist es weiterhin möglich, dass die zweite elektronische Recheneinrichtung 14 die Signatur-Challenge 46 erst nach dem Empfangen des Authentifizierungsschlüssels 26 durchführt. Für eine Erhöhung der Robustheit, kann die erste elektronische Recheneinrichtung 12 das bereits genutzte vergangene Einmalgeheimnis 18c und den öffentlichen Schlüssel 24 auf Basis der Einmalsignatur 44a, 44b zu der zweiten elektronischen Recheneinrichtung 14 übermittelt, sollte beispielsweise eine vorhergehende Authentifizierung fehlgeschlagen sein.
-
4 zeigt eine weitere schematische Ausführungsform eines Systems 10. 4 zeigt ein weiteres schematisches Blockschaltbild einer weiteren Ausführungsform des Systems 10. Im folgenden Ausführungsbeispiel ist insbesondere eine vereinfachte Variante der Einmalsignatur 44a, 44b gezeigt. Insbesondere kann vorliegend die Anzahl der Hashberechnungen für den Signaturprozess reduziert werden. Des Weiteren kann die Bandbreitenanforderung für die Übertragung der Signatur 50 und des öffentlichen Schlüssels 24 reduziert werden. Die Nachricht wird dabei als einzelne Zahl innerhalb von 0 bis maximal -1 signiert. Dies ist durch die Blöcke 60 - 70 gezeigt. Der Signaturalgorithmus nutzt dabei einen Generatorwert 52 und zwei Konstanten. Die Konstanten sind vorliegend mit 54 und 56 bezeichnet. Insbesondere werden die Konstanten durch die Kombination mit einem Index 58 genutzt, um einen entsprechenden privaten Schlüssel 48, welcher aus zwei Werten besteht, zu erzeugen. Insbesondere wird ein erster privater Schlüssel 48a für die erste Konstante 54 und ein zweiter privater Schlüssel 48b für die zweite Konstante 56 genutzt. Die Werte des ersten privaten Schlüssels 48a und des zweiten privaten Schlüssels 48b sind dabei Endwerte der Hashkette 20 der Länge Max Plus 1, mit einem entsprechenden Eingangswert von dem ersten privaten Schlüssel 48a und dem zweiten privaten Schlüssel 48b. Der öffentliche Schlüssel 24 besteht beispielsweise aus den Werten von dem ersten privaten Schlüssel 48a und dem zweiten privaten Schlüssel 48b oder einem Hashwert mit dem ersten privaten Schlüssel 48a und dem zweiten privaten Schlüssel 48b als Eingangsparameter.
-
Bezugszeichenliste
-
- 10
- System
- 12
- Erste elektronische Recheneinrichtung
- 14
- Zweite elektronische Recheneinrichtung
- 16
- Authentifizierungsschlüssel
- 18a
- Zukünftiges Einmalgeheimnis
- 18b
- Aktuelles Einmalgeheimnis
- 18c
- Vergangenes Einmalgeheimnis
- 20
- Hashkette
- 22
- Initialisierungsphase
- 24
- Öffentlicher Schlüssel
- 26
- Wert
- 28
- Authentifizierung
- 30
- Block
- 32
- Challenge-Response Modul
- 34
- Random-Modul
- 36
- MAC-Modul
- 38
- Erstes Vergleichsmodul
- 40
- Zweites Vergleichsmodul
- 42
- Drittes Vergleichsmodul
- 44a
- Einmal-Signatur
- 44b
- Einmal-Signatur
- 46
- Signatur-Challenge Modul
- 48
- Privater Schlüssel
- 48a
- Erster privater Schlüssel
- 48b
- Zweiter privater Schlüssel
- 50
- Signatur
- 52
- Generator
- 54
- Erste Konstante
- 56
- Zweite Konstante
- 58
- Index
- 60
- Block
- 62
- Block
- 64
- Block
- 66
- Block
- 68
- Block
- 70
- Block