-
Die Erfindung betrifft ein Verfahren und ein System zum Aktivieren eines Netzwerkknotens durch eine Nachricht und einen aktivierbaren Netzwerkknoten.
-
Elektrische batteriebetriebene Komponenten haben einen begrenzten Energievorrat. Um eine möglichst lange Nutzungsdauer zu gewährleisten, ist ein sparsamer Energieverbrauch der Komponente notwendig. Es kann beispielsweise aufwändig sein, einen Batteriewechsel durchzuführen, falls eine Komponente an einem unzugänglichen Ort verbaut ist. Ferner kann die Komponente verschweißt sein, beispielsweise wegen Safety- oder Security-Anforderungen, sodass ein Batteriewechsel nicht möglich ist. Ferner soll ein Batteriewechsel aufgrund einer nutzerfreundlichen Handhabung nur selten durchzuführen sein.
-
In Zeiträumen, in welchen die Rechenleistung einer batteriebetriebenen Komponente nicht gebraucht wird, wird die Komponente in einen Energiesparmodus oder sleep mode versetzt. Bei Bedarf wird die Komponente über einen entsprechenden Mechanismus aus dem Energiesparmodus in einen aktiven Modus versetzt. Sie wird dabei aktiviert oder aufgeweckt. Eine Komponente kann sich insbesondere selbst in einen aktiven Zustand versetzen, beispielsweise zeitgesteuert, oder durch eine andere Komponente von außen aktiviert werden.
-
Es kann insbesondere ein unkontrolliertes Aufwecken oder Aktivieren einer Komponente durchgeführt werden. Dabei wird wiederholt und in kurzen Abständen die Komponente durch einen Angreifer aktiviert, sodass die Batteriekapazität verringert und somit die Nutzungsdauer der Komponente massiv beeinträchtigt wird. Es handelt sich dabei um einen sogenannten battery exhaustion attack, bei welchem durch Aufbrauchen der Batteriekapazität ein Denial of Service oder Dienstverweigerungsangriff durchgeführt wird. So kann beispielsweise ein Angreifer erreichen, dass eine Komponente oder deren Batterie nicht wie gewünscht nach einigen Jahren sondern bereits nach wenigen Stunden ausgetauscht werden muss.
-
Aus der Offenlegungsschrift
DE 10 2009 005 187 ist ein Verfahren bekannt, bei welchem ein Ziel-Netzwerkknoten aus einem Schlafbetriebsmodus geweckt wird, wenn ein zu dem aufzuweckenden Ziel-Netzwerkknoten gehöriger Aufweck-Netzwerkknoten ein Aufweck-Token übermittelt. Dieses Aufweck-Token wurde zuvor als Geheimnis zwischen den beiden Netzwerkknoten ausgetauscht. Dafür ist eine reguläre Datenkommunikation zwischen den Netzwerkknoten nötig.
-
Aus der Veröffentlichung von Salem Aljareh und Anastasios Kavoukis: EFFICIENT TIME SYNCHRONIZED ONE-TIME PASSWORD SCHEME TO PROVIDE SECURE WAKE-UP AUTHENTICATION ON WIRELESS SENSOR NETWORKS, Januar 2013, ist eine Methode zum Aufwecken eines Sensorknotens bekannt, bei welcher in einer Initialisierungsphase ein gemeinsames Token ausgetauscht wird, welches innerhalb eines Netzwerkes ausgetauscht wird und zur späteren Authentisierung verwendet wird.
-
Es besteht daher ein Bedarf, ein Aktivieren einer batteriebetriebenen Komponente gesichert durchzuführen. Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein besonders sicheres Verfahren und System zum Aktivieren eines Netzwerkknotens eines Netzwerkes und einen aktivierbaren Netzwerkknoten hierfür bereitzustellen.
-
Diese Aufgabe wird erfindungsgemäß durch ein Verfahren, einen Netzwerkknoten und ein System gemäß den in den unabhängigen Ansprüchen angegebenen Merkmalen gelöst. Weitere vorteilhafte Ausgestaltungen der Erfindung sind in den abhängigen Ansprüchen angegeben.
-
Es wird ein Verfahren zum Aktivieren eines Netzwerkknotens eines Netzwerkes durch eine Nachricht vorgeschlagen, wobei der Netzwerkknoten einen Schlafmodus und einen Betriebsmodus aufweist, wobei ein Energieverbrauch in dem Schlafmodus geringer ist als in dem Betriebsmodus, wobei in dem Schlafmodus die Nachricht empfangbar und auswertbar ist, dadurch gekennzeichnet, dass die Nachricht, aufweisend eine Authentisierungsinformation und eine Aktualitätsinformation, empfangen wird, und der Netzwerkknoten von dem Schlafmodus in den Betriebsmodus geschaltet wird, falls die Nachricht aufgrund der Authentisierungsinformation authentifiziert wird und falls eine Aktualität der Nachricht aufgrund eines Vergleiches der Aktualitätsinformation mit einer auf dem Netzwerkknoten gespeicherten Referenzinformation verifiziert wird.
-
Somit kann nur ein berechtigter Sender die Nachricht an den Netzwerkknoten übermitteln. Mit Hilfe der Authentisierungsinformation, welche geprüft wird und beispielsweise mit Referenz-Authentisierungsinformationen, insbesondere hinterlegten Schlüsseln, abgeglichen wird, wird sichergestellt, dass der Sender der Nachricht auch der tatsächlich berechtigte Sender ist, aufgrund von dessen Nachricht ein Aktivieren durchgeführt werden soll. Falls ein Authentifizieren durch den Netzwerkknoten nicht möglich ist, so wird beispielsweise die Nachricht oder der Sender der Nachricht als nicht zu dem Netzwerk gehörig erkannt.
-
Die Nachricht kann dabei als Multicast-, Anycast- oder Broadcast-Nachricht gesendet werden, d. h. ohne dass die Nachricht an einen spezifischen Zielknoten adressiert ist. Ein Netzwerkknoten oder die zugehörige Komponente, welcher sich im Sendebereich des Senders der Nachricht befindet, führt die Authentisierungsprüfung und Aktualitätsprüfung durch. Ein Aktivieren wird in Abhängigkeit von der Überprüfung durchgeführt. Die Nachricht kann durch die sendende Komponente selbst erstellt werden, d. h. sie wird unabhängig von dem Netzwerkknoten generiert.
-
Die Nachricht wird insbesondere durch einen aufweckenden Sender oder Wake-up-Sender generiert. Die Nachricht stellt damit ein Wake-up-Token dar und besteht insbesondere aus einer Aktualitätsinformation. Der Wake-up-Sender bestimmt eine Authentisierungsinformation für die Nachricht. Damit wird die Integrität der Nachricht gesichert. Die zu aktivierende Komponente oder ein Aufweck-Empfänger der zu aktivierenden Komponente führt zunächst die Authentifizierung durch. Ist die Authentifizierung erfolgreich, so wird die in der Nachricht enthaltene Aktualitätsinformation geprüft. Insbesondere vergleicht der Netzwerkknoten den Zeitrang eines zuvor erfolgten Aktivierungsverfahrens. Ist beispielsweise ein Weckstempel, der mit der Nachricht übertragen wird, jünger als die Zeit des abgespeicherten letzten Aktivierungsverfahrens oder Weckvorgangs und ist die Integrität zusätzlich gegeben, dann wird das Aktivieren durchgeführt.
-
Gemäß einer Weiterbildung wird bei der Verifikation der Aktualität eine aktualisierte Referenzinformation auf dem Netzwerkknoten gespeichert.
-
Die Zeit des aktuellen Weckstempels ersetzt dann als aktualisierte Referenzinformation die gespeicherte Referenzinformation. Für einen nachfolgenden Aktivierungsvorgang wird die aktualisierte Referenzinformation zur Prüfung der Aktualität zugrundegelegt.
-
Wurde ein Netzwerkknoten längere Zeit nicht aktiviert, so ist es für einen Angreifer möglich, durch Aufzeichnung einer aktuelleren Aktualitätsinformation eine Aktualität vorzutäuschen. Dabei wird eine Aktualitätsinformation verwendet, welche eine weitere Komponente des Netzwerks von einem anderen, berechtigten Aufweck-Sender des Netzwerks erhält, um den Netzwerkknoten zu aktivieren. Ein solcher Angriff durch Mitschneiden oder Aufzeichnen einer Nachricht und damit einer integren Aktualitätsinformation in einem anderen Aufweck-Verfahren ist nicht beliebig oft wiederholbar. Für eine erneute erfolgreiche Aktivierung müsste wiederum eine Aktualitätsinformation aufgezeichnet werden, da diese nur gemeinsam mit einer gültigen Authentisierungsinformation zum Aktivieren des Netz-werkknotens führt. Ohne Kenntnis oder Befugnis, die Aktualitätsinformation mit der Nachricht so zu übertragen, dass eine Authentisierung erfolgt, ist das alleinige Verwenden insbesondere eines aktuelleren Zeitstempels für eine erfolgreiche Aktivierung des Netzwerkknotens nicht ausreichend. Für eine erfolgreiche battery exhaustion attack müsste damit eine ganze Weckserie aufgezeichnet werden. Dies ist für einen Angreifer nicht praktikabel.
-
Das vorgeschlagene Verfahren eignet sich insbesondere für Anwendungsfälle, in welchen zwischen dem Wecksender und dem Weckempfänger keine statischen, sondern dynamische Kommunikationsbeziehungen bestehen. Ein Aushandeln eines gültigen Tokens zum Aufwecken im Voraus zu einem Aufweckvorgang ist nicht nötig. Eine Komponente oder ein Netzwerkknoten des Netzwerkes, welche neu zu dem Netzwerk hinzugefügt werden, sind auf einfache Weise in das System integrierbar. Beispielsweise wird bei der Herstellung oder Auslieferung der neuen Komponente das Schlüsselmaterial hinterlegt, welches zur Authentifizierung nötig ist, sowie ein verbauter Zähler synchronisiert.
-
Nur authentisierte Wecksender können den Netzwerkknoten aktivieren. In ungünstigen Fällen, in welchen nicht authentisierte Wecksender ein Aktivieren durchführen können, beispielsweise indem eine Authentisierungsinformation manipuliert wird, können die Netzwerkknoten nur begrenzt aktiviert werden. Das Begrenzen kann insbesondere aufgrund einer Einschränkung durchgeführt werden, welche bewirkt, dass ein Verifizieren der Aktualität nur innerhalb eines kurzen Zeitfensters möglich ist. Es kann dazu auf dem Netzwerkknoten eine Uhr verbaut sein, deren aktueller Wert als gespeicherte Referenzinformation verwendet wird. Nur wenn die Zeit auf dem Netzwerkknoten und eine aus der Aktualitätsinformation ableitbare Zeit innerhalb oder außerhalb eines festlegbaren Intervalls liegen, ist ein Aktivieren möglich. Es kann dabei ein erstes Zeitfenster vorgesehen, innerhalb dessen eine Aktualität zuerkannt wird. Das Senden der Nachricht und das Auswerten der Nachricht durch den Netzwerkknoten liegen dann genügend nah beieinander.
-
Gemäß einer Ausgestaltung wird mit der Aktualitätsinformation ein Zählerwert oder ein Zeitwert übertragen.
-
Ein Zeitwert wird insbesondere durch das Abfragen einer aktuellen Uhrzeit erzeugt. Dafür ist es nötig, dass der Netzwerkknoten zu jeder Zeit den Wert der aktuellen Zeit abfragen kann. Es kann ferner ein Zähler auf dem Netzwerkknoten vorgesehen sein, welcher hochgezählt wird und damit eine Relation zu anderen Zählerwerten innerhalb des Netzwerkes vorgibt. Insbesondere kann neben einer absoluten Uhrzeit auch eine sogenannte Lamport-Clock verwendet werden. Durch diese wird nicht die absolute Uhrzeit codiert. Sie ermöglicht dagegen, die Reihenfolge von Ereignissen oder Nachrichten zu bestimmen. Innerhalb eines Systems mit mehreren Netzwerkknoten kann dabei jeder Knoten beim Senden einer Nachricht einen Zählerwert erhöhen und diesen mit der Nachricht übertragen. Der Empfänger aktualisiert seinen Zählerwert, falls der empfangene Zählerwert größer ist als der aktuell im Netzwerkknoten hinterlegte Zählerwert. Andernfalls wird die Aktualität nicht verifiziert.
-
Gemäß einer Ausgestaltung wird die Authentisierungsinformation mit Hilfe eines kryptografischen Schlüssels geprüft. Die Authentisierungsinformation ist eine kryptographische Prüfsumme, die mittels eines gespeicherten symmetrischen oder asymmetrischen Schlüssels überprüfbar ist. Die kryptographische Prüfsumme kann insbesondere ein Message Authentication Code (z. B. AES-CBCMAC, HMAC-SHA256) oder eine digitale Signatur (z. B. RSA-Signatur nach PKCS#1, DAS-Signatur, ECDSA-Signatur) sein.
-
Gemäß einer Ausgestaltung wird der kryptografische Schlüssel als symmetrischer Schlüssel oder Schlüssel eines asymmetrischen Schlüsselpaares auf dem Netzwerkknoten hinterlegt.
-
Für das Hinterlegen eines symmetrischen Schlüssels wird auf dem Netzwerkknoten der gleiche geheime Schlüssel hinterlegt wie auf einem Sender der Nachricht, d. h. dem Aufweckknoten. Bei der Verwendung eines asymmetrischen Schlüsselpaares wird auf dem Netzwerkknoten ein öffentlicher Schlüssel oder public key hinterlegt, der Aufwecksender oder Aufweckknoten verfügt über den zugehörigen privaten Schlüssel oder private key.
-
Gemäß einer Ausgestaltung wird der kryptografische Schlüssel in einer Herstellungsphase auf dem Netzwerkknoten hinterlegt oder während des Betriebsmodus aktualisiert.
-
Für verschiedene Knoten innerhalb des Netzwerkes wird der jeweilige Schlüssel jeweils in der Herstellungsphase initial hinterlegt. Insbesondere wird auf jedem Netzwerkknoten, welcher neu zu dem Netzwerk hinzugefügt wird, der öffentliche Schlüssel, welcher zu einem privaten Schlüssel eines Aufwecksenders gehört, hinterlegt.
-
Das Aktualisieren eines Schlüssels auf dem Netzwerkknoten ist insbesondere vorteilhaft während des laufenden Betriebes des Netzwerkknotens durchzuführen, d. h. zum Beispiel während des Betriebsmodus.
-
Gemäß einer Ausgestaltung wird die Authentisierungsinformation in Form einer Signatur oder message authentication code-Information mit Hilfe der Nachricht übertragen.
-
Bei Verwendung einer Signatur wird ein mittels einer Hashfunktion berechneter Hashwert einer zu übertragenden Nachricht berechnet und dieser mit dem privaten Schlüssel des Senders verschlüsselt. Der Netzwerkknoten entschlüsselt dann mit dem zum privaten Schlüssel gehörigen öffentlichen Schlüssel die Signatur und erhält somit den Hashwert der Nachricht, der vom Sender berechnet wurde. Stimmt dieser Hashwert mit dem Hashwert überein, der aufgrund einer Anwendung der Hashfunktion auf die Nachricht selbst durch den Netzwerkknoten erzeugt wird, so sind die Integrität der Nachricht und gleichzeitig die Authentizität des Senders sichergestellt.
-
Bei Verwendung eines message authentication code-Algorithmus wird aus der zu übermittelnden Nachricht und einem geheimen Schlüssel eine Prüfsumme berechnet. Die Prüfsumme ist der message authentication code. Er wird gemeinsam mit der Nachricht selbst übermittelt. Der Empfänger kann mit Hilfe des Algorithmus ebenso aus der Nachricht den message authentication code bestimmen, sofern er Kenntnis des geheimen Schlüssels besitzt. Stimmt die vom Empfänger ermittelte Prüfsumme mit der vom Sender übermittelten Prüfsumme überein, so ist die Integrität der Nachricht gewährleistet.
-
Gemäß einer Weiterbildung wird die Nachricht verschlüsselt übertragen.
-
Zusätzlich kann eine Verschlüsselung der Nachricht vorgesehen sein, so dass nur ein berechtigter oder vorgesehener Netzwerkknoten aktiviert werden kann. Dies stellt die Vertraulichkeit der Daten sicher.
-
Gemäß einer Weiterbildung wird der Netzwerkknoten gemäß einem vorgebbaren Kriterium nach dem Aktivieren in den Schlafmodus geschaltet.
-
So kann beispielsweise nach einer fest vorgegebenen Zeitdauer seit einem Aktivieren oder nach einer festen Zeitdauer einer Inaktivität, d. h. nach einem vorherigen Verarbeitungsschritt auf dem Netzwerkknoten wie beispielsweise einem Abspeichern von Daten nach einer Datenkommunikation, der Netzwerkknoten in den Schlafmodus geschaltet werden. Ferner kann der Netzwerkknoten aufgrund einer empfangenen Einschlafnachricht vom Betriebsmodus in den Schlafmodus wechseln.
-
Gemäß einer Weiterbildung wird durch den Netzwerkknoten mindestens ein Nachrichtenkandidat berechnet, wobei das Aktivieren durchgeführt wird, falls die Nachricht dem mindestens einen Nachrichtenkandidaten entspricht.
-
Damit kann ein Netzwerkknoten, bevor er in den Schlafmodus fällt, einen oder mehrere Nachrichtenkandidaten oder sogenannte candidate Wake-Up-Token für einen bestimmten Zeitraum im Voraus berechnen. Dafür ist auf der Netzwerkkomponente ein Zeitgeber vorgesehen und der Netzwerkknoten wacht nur auf, wenn er einen der voraus berechneten candidate Wake-Up-Token empfängt. Nach Ablauf dieses Zeitraums wacht der Netzwerkknoten entweder von selbst auf oder er wacht beim Empfang eines Wake-Up-Token auf, ohne dieses geprüft zu haben. Dadurch kann ein Management des Batteriestromverbrauchs realisiert werden. Es soll erreicht werden, dass eine Sollnutzungsdauer der Netzwerkkomponente erreicht wird, indem ein zu häufiges Aufwecken des Knotens verhindert wird. Eine Prüfung eines empfangenen Wake-Up-Tokens ist dabei nur erforderlich, wenn dieses in einem gewissen Zeitfenster nach Wechsel in den Schlafmodus empfangen wird. Es werden zulässige Wake-Up-Token für dieses Zeitfenster vorausberechnet und gespeichert. Falls kein Aufwecken in diesem überwachten Zeitfenster auftrat, so erfolgt ein Aufwecken bei Empfang eines Wake-Up-Tokens bei dem nur geprüft wird, dass es sich um ein Wake-Up-Token handelt, aber nicht geprüft wird, ob es sich um ein gültiges Wake-Up-Token handelt. Dies hat den Vorteil, dass das Ziel der Soll-Lebensdauer erreicht wird, wobei nur eine sehr einfach realisierbare Prüfung eines empfangenen Wake-Up-Tokens erfolgt. Es muss lediglich eine Prüfung erfolgen, ob ein empfangenes Token in der Menge der vorausberechneten candidate Wake-Up-Token enthalten ist. Diese Prüfung kann z. B. durch einen ein-fachen Identitätsvergleich erfolgen.
-
Die Liste der candidate Wake-Up-Token ist in einer Variante als Bloom-Filter codiert. Dies ermöglicht eine kompakte Codierung. Ein Bloom-Filter ist eine allgemein bekannte, probabilistische Datenstruktur (siehe z. B. http://de.wikipedia.org/wiki/Bloomfilter). Sie ermöglicht zu prüfen, ob ein Element in einer Menge enthalten ist. Diese Datenstruktur kann im vorgestellten Verfahren insbesondere verwendet werden, um zu prüfen, ob ein empfangenes Wake-Up-Token in der Menge der candiate Wake-Up-Token enthalten ist.
-
Gemäß einer Ausgestaltung wird eine Signalstärke der Nachricht geprüft und in Abhängigkeit von der Signalstärke das Aktivieren durchgeführt.
-
Beispielsweise wird geprüft, ob die Signalstärke in einem zulässigen Bereich liegt, insbesondere ob sie nicht zu schwach ist, und in Abhängigkeit davon als gültig akzeptiert. Die Authentifizierung aufgrund der Authentisierungsinformation sowie die Verifikation aufgrund der Aktualitätsinformation werden im Anschluss durchgeführt.
-
Gemäß einer Ausgestaltung wird das Aktivieren verhindert, falls die Authentifikation oder die Verifikation fehlschlägt.
-
Ein Empfänger des Netzwerkknotens ist dazu in der Lage, eine kryptografische Prüffunktion, beispielsweise eine Entschlüsselung, eine message authentication code-Prüfung oder eine Signatur-Prüfung durchzuführen, ohne den Netzwerkknoten dafür zu aktivieren. Ebenso wird die Aktualitätsprüfung durch den Empfänger durchgeführt. Wird eine der Prüfungen nicht erfolgreich durchgeführt, so wird ein Aktivieren nicht durchgeführt.
-
Die Erfindung betrifft ferner einen Netzwerkknoten eines Netzwerkes, wobei der Netzwerkknoten einen Schlafmodus und eines Betriebsmodus aufweist, wobei ein Energieverbrauch in dem Schlafmodus geringer ist als in dem Betriebsmodus, wobei in dem Schlafmodus eine Nachricht empfangbar und auswertbar ist, umfassend eine Schnittstelle zum Empfangen der Nachricht, wobei die Nachricht eine Authentisierungsinformation und eine Aktualitätsinformation aufweist, und einen Prozessor zum Auswerten der Nachricht, wobei der Netzwerkknoten zum Umschalten von dem Schlafmodus in den Betriebsmodus eingerichtet ist, falls durch den Prozessor die Nachricht aufgrund der Authentisierungsinformation authentifiziert wird und durch die Auswerteeinheit eine Aktualität der Nachricht aufgrund eines Vergleiches der Aktualitätsinformation mit einer auf dem Netzwerkknoten gespeicherten Referenzinformation verifiziert wird.
-
Gemäß einer Weiterbildung umfasst der Netzwerkknoten ferner eine Speichereinheit zum Speichern einer aktualisierten Referenzinformation bei einer Verifikation der Aktualität.
-
Gemäß einer Ausgestaltung umfasst der Netzwerkknoten ein Hauptfunkmodul zum Senden und Empfangen von weiteren Nachrichten, wobei durch das Aktivieren des Netzwerkknotens das Hauptfunkmodul aktiviert wird und wobei die Schnittstelle und der Prozessor einen geringeren Energieverbrauch als das Hauptfunkmodul haben.
-
Gemäß einer Ausgestaltung umfasst der Netzwerkknoten ferner eine Lamport-Uhr zum Prüfen der Aktualitätsinformation.
-
Gemäß einer Ausgestaltung umfasst der Netzwerkknoten einen Sicherheitschip und eine Batterie.
-
Der Sicherheitschip soll beispielsweise nur aktiv sein, wenn kryptografische Erfassungsbefehle abzuarbeiten sind, da er einen hohen Energieverbrauch hat. Die Batterie soll eine möglichst lange Lebensdauer haben, um eine korrekte Funktionsweise des Netzwerkknotens oder der zugehörigen Komponente über einen langen Zeitraum hinweg sicherzustellen.
-
Gemäß einer Ausgestaltung ist als Schnittstelle eine Funkschnittstelle des Netzwerkknotens vorgesehen, um zumindest die Nachricht zu empfangen.
-
Es kann sich dabei um eine long range Schnittstelle handeln, über welche der Netzwerkknoten mit einem Sender innerhalb eines Netzwerkes im Frequenzbereich von Mikrowellen kommuniziert. So werden einige Meter Reichweite erreicht. Die Funkschnittstelle kann ferner derart ausgestaltet sein, dass sie neben der Nachricht auch weitere Nachrichten empfängt.
-
Die Erfindung betrifft ferner ein System umfassend mindestens einen ersten aktivierbaren Netzwerkknoten gemäß den dargestellten Ausgestaltungen oder Weiterbildungen und mindestens einen Aufweckknoten ausgestaltet zum Senden der Nachricht.
-
Gemäß einer Ausgestaltung ist auf dem mindestens einen Netzwerkknoten und auf dem mindestens einen Aufweckknoten ein kryptografischer Schlüssel oder Schlüsselpaar hinterlegt, wobei die Nachricht anhand der Authentisierungsinformation mit Hilfe des kryptografischen Schlüssels oder Schlüsselpaares authentifizierbar ist.
-
Gemäß einer Ausgestaltung ist der kryptografische Schlüssel als ein Masterschlüssel für eine Gesamtheit von Netzwerkknoten eines Systems oder ein individueller Schlüssel für eine Teilmenge von Netzwerkknoten des Systems oder ein Komponentenschlüsselpaar ausgebildet.
-
In Abhängigkeit von der Systemarchitektur kann der kryptografische Schlüssel als statischer Masterschlüssel für das gesamte System vorgegeben sein. Um die direkte Verwendung eines Masterschlüssels zu umgehen, ist es ferner möglich, mit bekannten Schlüsselableitungsfunktionen aus einem Identifizierer des Netzwerkknotens oder einer Komponenten-ID und dem Masterschlüssel einen komponentenspezifischen Schlüssel abzuleiten, der auf dem Aufweckknoten abgelegt wird. Im aufzuweckenden Netzwerkknoten ist der Masterschlüssel hinterlegt. Aus diesem Masterschlüssel und der mit der Nachricht übertragenen ID oder dem Identifizierer des Aufweckknotens kann der verwendete Schlüssel abgeleitet werden.
-
Bei der Verwendung individueller Schlüssel für eine Teilmenge von Netzwerkknoten des Systems kann der kryptografische Schlüssel beispielsweise bei einer Personalisierung oder Ausgabe des Netzwerkknotens oder der Komponente konfiguriert werden. Die Personalisierung kann insbesondere während eines aktiven Modus der Komponente durchgeführt werden. Es kann ferner das Komponentenschlüsselpaar aus einem privaten Schlüssel und einem öffentlichen Schlüssel gebildet werden, wobei an Komponenten, welche durch den Aufweckknoten aufweckbar sein sollen, der öffentliche Schlüssel bekanntgegeben wird.
-
Gemäß einer Ausgestaltung beinhaltet die Nachricht eine weitere Information, insbesondere einen Sende-Identifizierer oder einen Ziel-Identifizierer.
-
Dadurch kann ein sogenanntes Scoping der Nachricht oder des Wake-up-Tokens erfolgen, indem eine Information zur Angabe einer Teilmenge von aufweckbaren Netzwerkknoten angegeben wird. Es kann sich dabei um Attribute einer Komponente oder einen Gruppen-Identifizierer handeln. Ein Netzwerkknoten wacht dann nur auf, falls er zu der spezifizierten und über den Ziel-Identifizierer angesprochenen Gruppe von Netzwerkknoten gehört. Die Angabe des Sende-Identifizierers kann zur Authentifizierung, insbesondere zur Schlüsselableitung verwendet werden.
-
Die Erfindung wird im Nachfolgenden anhand von Ausführungsbeispielen mit Hilfe der Figuren näher erläutert.
-
Es zeigen:
-
1 eine schematische Darstellung des Systems zum Aktivieren mindestens eines ersten Netzwerkknotens gemäß einem ersten Ausführungsbeispiel der Erfindung;
-
2 eine schematische Darstellung eines aktivierbaren Netzwerkknotens gemäß einem zweiten Ausführungsbeispiel der Erfindung.
-
1 zeigt einen ersten Netzwerkknoten N1, einen zweiten Netzwerkknoten N2 sowie einen dritten Netzwerkknoten N3, welche zu einem Netzwerk NW, beispielsweise einem Drahtlosnetzwerk, gehören. Das Netzwerk NW umfasst ferner einen ersten Aufweck-Knoten A1. Die Netzwerkknoten N1, N2, N3 stellen Komponenten innerhalb eines E-Ticketing-Systems dar, durch welches die Verwendung elektronischer Fahrkarten im öffentlichen Personenverkehr ermöglicht wird. Dabei hat ein Kunde ein Kundenmedium, das sogenannte E-Ticket oder elektronische Ticket, welches drahtlos, beispielsweise über eine long-range Schnittstelle, erfasst wird, sobald sich der Kunde in einem Fahrzeug des öffentlichen Personenverkehrs befindet. Dabei ist eine Nachricht M übertragbar.
-
Das Kundenmedium, in diesem Beispiel einer der Netzwerkknoten, beispielsweise der erste Netzwerkknoten N1, weist eine Batterie B oder mehrere Batterien auf, welche eine möglichst lange Lebensdauer haben sollen. Dafür soll insbesondere ein auf dem Kundenmedium befindlicher Sicherheitschip SEC nur aktiv sein oder nur aktiviert werden, wenn kryptographische Erfassungsbefehle abzuarbeiten sind, da er relativ viel Leistung verbraucht. Um die Batteriekapazität zu schonen soll zwischen einem Schlafmodus und einem Betriebsmodus unterschieden werden. Das Aktivieren bedeutet ein Umschalten des ersten Netzwerkknotens N1 von dem Schlafmodus in den Betriebsmodus, um beispielsweise kryptographische Funktionen durchzuführen. Auf dem Sicherheitschip SEC sind insbesondere die Kundendaten hinterlegt sowie die zur Ausführung des elektronischen Ticket-Systems notwendigen Daten wie insbesondere Daten über Fahrkartenprofile.
-
Im Schlafmodus ist der Energieverbrauch, z. B. der Stromverbrauch, des E-Tickets reduziert. Um zu verhindern, dass der erste Netzwerkknoten N1 fehlerhafter Weise vom Schlafmodus in den Betriebsmodus geschaltet wird und damit in einem Modus betrieben wird, welcher einen erhöhten Energieverbrauch bedeutet, sollen nur berechtigte Aktivierungsvorgänge möglich sein. Dafür soll eine Nachricht M, welche von einem Aufweck-Knoten A1 gesendet wird und welche einen Aufweck-Befehl zum Aktivieren des ersten Netzwerkknotens N1 übermittelt, zunächst auf eine Berechtigung hin überprüft werden, bevor das Aktivieren durchgeführt wird. Es soll also insbesondere sichergestellt werden, dass der Aufweck-Knoten A1 ein authentisierter Wecksender ist und ein Angriff soll somit verhindert werden. In dem Szenario ist insbesondere ein Angriff zu erkennen und zu verhindern, bei welchem die Lebensdauer der Batterie gezielt geschwächt oder verringert werden soll. Es handelt sich dabei um sogenannte battery exhaustion attacks, bei welchen ein aufweckbarer Netzwerkknoten des Netzwerkes NW ununterbrochen oder in sehr kurzen Abständen aktiviert wird, sodass die Kapazität der Batterie innerhalb kürzester Zeit verringert wird.
-
Der Aufweck-Knoten A1 ist in einem Bus oder einer Tram-Bahn als Sender im Eingangsbereich verbaut. Bei der zu übermittelnden Nachricht M handelt es sich insbesondere um ein Aufweck-Token. Die Nachricht M enthält einen Wake-up-Code. Die Nachricht M kann aus einer Zeichenfolge zusammengesetzt sein, wobei ferner ein Identifizierungscode des Aufweck-Knotens A1, ein Reason-Code zur Angabe eines Aufweck- oder Aktivierungsgrundes oder ein Bedingungscode oder Conditional-Wake-up-Code zur Einschränkung der Aktivierung auf zusätzliche zu erfüllende Kriterien Bestandteile der Zeichenfolge sein können.
-
Die Nachricht M wird signiert übermittelt. Mit Hilfe der Signatur authentifiziert sich der Aufweck-Knoten A1. Der Aufweck-Knoten A1 verschlüsselt mit seinem privaten Schlüssel den Hash-Wert der Nachricht M und übermittelt den Nachrichteninhalt gemeinsam mit der Signatur. In einer Variante kann ferner eine Verschlüsselung bei dieser Übermittlung erfolgen, insbesondere mit einem öffentlichen Schlüssel des ersten Netzwerkknotens N1. Der erste Netzwerkknoten N1 entschlüsselt gegebenenfalls mit seinem privaten Schlüssel die Verschlüsselung und prüft mit dem öffentlichen Schlüssel des Aufweckknotens A1 die Signatur der empfangenen Nachricht M. So wird überprüft, ob die Integrität der übermittelten Daten gewährleistet ist. Zur Überprüfung der Integrität der Nachricht M kann in einer Variante auch ein message authentication code (MAC) verwendet werden. Dabei erfolgt die MAC-Bildung auf Seiten des Aufweckknotens A1 und die MAC-Prüfung auf Seiten des ersten Netzwerkknotens N1 auf Basis eines gemeinsamen symmetrischen Schlüssels.
-
Außerdem wird mit der Nachricht M eine Aktualitätsinformation T übermittelt. Dabei kann es sich um einen Zählerwert oder einen absoluten Zeitwert handeln. Der erste Netzwerkknoten N1 prüft insbesondere, ob die mit der Nachricht M übermittelte Zeit auf eine Aktualität der Nachricht M schließen lässt. Der erste Netzwerkknoten N1 prüft dabei insbesondere, ob die Zeit eines abgespeicherten letzten Weckvorganges vor dem Zeitrang der aktuellen Nachricht M liegt. Ist die Zeit der Nachricht M dagegen gleich oder älter als die Zeit des letzten abgespeicherten Weckstempels, so liegt möglicherweise eine Replay-Attacke vor. Bei einem Replay-Angriff wird eine ältere Nachricht, welche von einem Angreifer aufgezeichnet wurde, nochmals an den ersten Netzwerkknoten N1 gesendet. Damit wird durch den Angreifer vorgetäuscht, ein berechtigter Aufweck-Sender zu sein. Die Analyse des mitgeschickten Zeitstempels kann dann allerdings aufdecken, dass es sich bei der Nachricht M des Angreifers nicht um eine selbstgenerierte und damit integre Nachricht handelt. Es kann dabei ferner festgelegt werden, für welche Abweichungen einer übermittelten Aktualitätsinformation von einer auf dem ersten Netzwerkknoten N1 gespeicherten Referenzinformation RT eine Aktualität der Nachricht M verifiziert wird. Damit wird ein Toleranzbereich festgelegt, innerhalb dessen von einer Aktualität noch ausgegangen werden kann. Ungenauigkeiten beim Generieren der Aktualitätsinformation T werden so ausgeglichen.
-
Ist noch keine Referenzinformation RT abgespeichert, beispielsweise da das Ticket neu ausgegeben wurde, kann die Aktualität insbesondere bestätigt werden und aufgrund der Aktualitätsinformation T eine aktualisierte Referenzinformation RT' gespeichert werden.
-
Verifiziert der erste Netzwerkknoten N1 die in der Nachricht M enthaltene Aktualitätsinformation T, so wird im Anschluss der erste Netzwerkknoten N1 aktiviert, indem ein Zugriff auf den Sicherheitschip freigegeben wird.
-
Wurde eine Komponente innerhalb des Netzwerkes NW längere Zeit nicht aktiviert, so ist es möglich, durch Aufzeichnen eines aktuelleren Weckstempels, welcher bei einem Aktivierungsvorgang beispielsweise des zweiten Netzwerkknotens N2 aufgezeichnet wurde, eine Aktualität vorzutäuschen. Der erste Netzwerkknoten N1 speichert nach einem durchgeführten Aktivierungsvorgang allerdings eine aktualisierte Referenzinformation RT' ab. Dies ist der Zeitwert, der der letzten übermittelten Nachricht, welche authentifiziert und verifiziert wurde, entnommen wird. In einer Variante wird ein Zählerwert unwiderruflich heraufgesetzt. Dafür wird innerhalb des E-ticketing Systems ein systemweiter synchronisierter Zähler eingesetzt.
-
Durch die Verknüpfung der Zeit- oder Aktualitätsinformation T mit der Authentisierungsinformation A ist es für einen Angreifer nicht möglich, ohne Kenntnis eines gültigen Schlüssels eine selbsterzeugte Aufwecknachricht zu versenden, welche zu einem Aktivieren des Netzwerkknotens führt. Für einen erfolgreichen Angriff müsste eine ganze Weckserie, welche beispielsweise zum mehrmaligen Aktivieren des zweiten Netzwerkknotens N2 geführt hat, aufgezeichnet werden. Somit würden nacheinander Nachrichten übertragen, welche einen jeweils aktuelleren Weckstempel aufweisen als eine vorherige Nachricht. Um auch das Zeitfenster für einen solchen Angriff weiter zu minimieren, wird auf dem ersten Netzwerkknoten N1 eine Uhr verbaut, deren Wert als gespeicherte Referenzinformation und als aktualisierte Referenzinformation RT' verwendet wird. Somit wird die Aktualität der Nachricht M nicht nur gegenüber der aktualisierten Referenzinformation RT' aus dem letzten Aktualisierungsvorgang geprüft, sondern auch gegenüber der zu jedem Zeitpunkt abfragbaren aktuellen Uhrzeit.
-
Wenn diese Uhrzeit und der Zeitwert aus der Nachricht M nicht zu weit auseinanderliegen, wobei ein Intervall festlegbar ist, wird die Aktualität verifiziert.
-
Es kann ferner ein Aktivieren verhindert werden, falls zwei Nachrichten innerhalb eines kritischen Zeitfensters empfangen werden. Innerhalb dieses kritischen Zeitfensters wird nicht von einem bestimmungsgemäßen Aufweckvorgang ausgegangen, sondern von einem Angriff, der beispielsweise die Lebensdauer der Batterie reduzieren soll.
-
Insbesondere kann mit Hilfe des beschriebenen Verfahrens ein authentisierter Aufweckvorgang in einem Netzwerk NW mit dynamischen Kommunikationsbeziehungen vorteilhaft realisiert werden. Es ist für das Aktivieren insbesondere nur eine unidirektionale Kommunikation zur aufzuweckenden Komponente wie beispielsweise zu dem ersten Netzwerkknoten N1 nötig. Der erste Netzwerkknoten N1 muss dabei nicht selbst Daten aussenden oder eine Kommunikationsverbindung aufbauen, beispielsweise um ein Token im Vorfeld einer Aktivierung auszutauschen. Insbesondere bei einem großen, lokal nicht beschränkten Kundenkreis ist das vorgeschlagene Verfahren und System zur Realisierung eines E-ticketing Systems vorteilhaft realisierbar. Insbesondere ist in einem solchen Szenario das Verteilen von Einmalpasswörtern an verschiedene oder alle Wecksender und verschiedene Netzwerkknoten nicht praktikabel durchführbar. Das vorgeschlagene Verfahren ermöglicht das Versenden der Nachricht M über broadcast, multicast, oder anycast, d. h. ohne einen Zielknoten angeben zu müssen.
-
Wird durch Ausstellen eines neuen E-Tickets für einen Kunden ein neuer, dritter Netzwerkknoten N3 generiert, so ist dieser auf einfache Weise für das Verfahren verwendbar, indem das entsprechende Schlüsselmaterial initial hinterlegt wird sowie ein Zähler oder eine auf dem Ticket verbaute Uhr mit einem Systemzähler oder einer Systemuhr synchronisiert wird. Eine zusätzliche Datenkommunikation, insbesondere im Betriebsmodus, ist nicht nötig.
-
2 zeigt den schematischen Aufbau eines Netzwerkknotens N gemäß einem zweiten Ausführungsbeispiel der Erfindung aus dem Umfeld drahtloser Sensornetzwerke. Insbesondere in der Gebäudetechnik oder Prozessautomatisierung sind batteriebetriebene Komponenten mit einer Batterie B und einem Sicherheitschip SEC im Einsatz, welche vor unberechtigtem Aktivieren oder Aufwecken von einem Energiesparmodus in einen normalen Betriebsmodus geschützt werden sollen. Insbesondere sollen drahtlos verbaute Sensorkomponenten vor einem unberechtigten Zugriff geschützt werden.
-
Neben einem System mit fest verbautem, dauerhaft aktiven Aufweckknoten oder wake up-Sender ist es ferner denkbar, dass die einzelnen aktivierbaren Netzwerkknoten fest verbaut sind und der Aufwecksender je nach Anwendungsfall in die Nähe der aktivierbaren Netzwerkknoten gebracht wird oder selbst aktiviert wird. In Abhängigkeit von der Distanz des Aufwecksenders zu den aufzuweckenden Empfängern ist der Wert einer Signalstärke, mit welcher die Nachricht M übermittelt wird, groß genug zum Aktivieren des Netzwerkknotens N.
-
Beispielsweise kann durch das Einschalten des Auf-wecksenders zu einem vorgegebenen Zeitpunkt eine Abfrage des Netzwerkknotens N eines Netzwerkes NW initiiert werden. Bei der Abfrage kann es sich beispielsweise um einen Schritt eines Wartungsprozesses handeln, bei welchem der Netzwerkknoten N oder jede Komponente des Netzwerkes NW eine Statusmeldung beispielsweise an einen Server schicken soll. Dafür muss der Netzwerkknoten N für einen kurzen Zeitraum aktiviert werden. Das Aktivieren selbst sowie der Befehl, die Statusmeldung abzuschicken, soll wiederum nur durch einen authentifizierten Aufwecksender und bei Vorliegen einer verifizierten Aktualität möglich sein, um einen Angriff auf die Batterie B des Netzwerkknoten N zu verhindern.
-
Ferner ist der Einsatz des Verfahrens in einem Umfeld vorteilhaft, in welchem eine Zugangskontrolle mit Hilfe von batteriebetriebenen Komponenten eines Netzwerks NW durchgeführt werden sollen. Innerhalb einer Authentisierungsanlage kann beispielsweise eine mobile aufweckbare Komponente, die ein Zugangstoken darstellt, zusätzlich den Netzwerkknoten N zur Kommunikation mit einem Steuerungsrechner darstellen. Nur innerhalb der Steuerungsanlage, also nach einer Zugangskontrolle, die über eine Nachricht M erfolgt, soll die Komponente aktiv sein können, um eine möglichst lange Lebensdauer der Batterie B sicherzustellen.
-
Der Netzwerkknoten N weist dabei ein Hauptfunkmodul F auf, mit welchem eine Kommunikation zu dem Steuerungsrechner innerhalb der Automatisierungsanlage möglich ist. Dabei werden weitere Nachrichten D über eine Funkschnittstelle FIF des Hauptfunkmoduls F gesendet und empfangen. Ferner weist der Netzwerkknoten N eine Schnittstelle IF auf, über welche die Nachricht M empfangen wird.
-
Die Auswertung der Nachricht M erfolgt über einen Prozessor P. Der Prozessor P ist beispielsweise ein Mikroprozessor. Sowohl der Prozessor P als auch die Schnittstelle IF weisen einen niedrigen Energieverbrauch auf, so dass der Netzwerkknoten N erst von einem Energiesparmodus in einen Betriebsmodus wechselt, wenn die Nachricht M aufgrund einer Authentisierungsinformation A authentifiziert wird und eine Aktualität aufgrund der Aktualitätsinformation T verifiziert wird. In einer Variante können die Schnittstelle IF und die Funkschnittstelle FIF des Hauptfunkmoduls F in einer gemeinsamen Einheit ausgeführt sein.
-
Verlässt ein Servicetechniker mit der mobilen aufweckbaren Komponente die Automatisierungsanlage, so wird die Komponente insbesondere deaktiviert, indem durch das Verlassen über die Zugangskontrolle eine Einschlafnachricht generiert wird. Das Deaktivieren kann ferner nach einer vorgegebenen Zeitspanne erfolgen.
-
Das vorgeschlagene Verfahren, System und der vorgeschlagene Netzwerkknoten ermöglichen ein gesichertes Aufwecken mittels einer unidirektionalen Kommunikation von einer aufweckenden Komponente zu einer aufzuweckenden Komponente. Challenge Response Protokolle, welche eine bidirektionale Kommunikation benötigen, haben einen höheren Energiebedarf. Die vorgeschlagene Lösung beansprucht dagegen nur eine sehr geringe Rechenleistung der prüfenden Komponente und erlaubt ein schnelles Prüfen, so dass auch der Aufweckvorgang selbst schnell erfolgen kann. Das Senden der Aufweck-Nachricht erfolgt auf sehr einfache Weise, da es insbesondere nicht nötig ist, jeden Zielknoten eines Netzwerkes einzeln zu adressieren. Replay-Angriffe sind stark erschwert. Insbesondere kann eine Nachricht oder ein Wake-up-Token nicht mehrfach verwendet werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
-
Zitierte Nicht-Patentliteratur
-
- Salem Aljareh und Anastasios Kavoukis: EFFICIENT TIME SYNCHRONIZED ONE-TIME PASSWORD SCHEME TO PROVIDE SECURE WAKE-UP AUTHENTICATION ON WIRELESS SENSOR NETWORKS, Januar 2013 [0006]
- http://de.wikipedia.org/wiki/Bloomfilter [0035]