-
Die Erfindung betrifft ein Verfahren zur Durchführung einer kryptographischen Operation mit einem positionsabhängigen kryptographischen Schlüssels durch eine Chipkarte sowie eine entsprechende Chipkarte und Computerprogrammprodukt.
-
Im Stand der Technik sind verschiedene Systeme zur Bestimmung von Positionsdaten, insbesondere Geopositionsdaten wie z. B. GPS Koordinaten, sowie zur Übertragung der Positionsdaten an Chipkarten bekannt. Die übertragenen Positionsdaten finden für diverse Applikationen Verwendung. Zusätzlich zu Funktionen zur Verarbeitung der Geopositionsdaten können auf der Chipkarte sicherheitsrelevante Funktionen implementiert sein, z. B. kryptographische Verfahren zur Datenverschlüsselung und/oder Authentifizierung von Nutzern oder anderen Datenverarbeitungskomponenten bei der Chipkarte.
-
Demgegenüber liegt der Erfindung die Aufgabe zu Grunde, ein verbessertes Verfahren zur Durchführung einer kryptographischen Operation sowie einen entsprechenden Chip und ein entsprechendes Computerprogrammprodukt bereitzustellen, welche insbesondere im Kontext positionsgebundener, sicherheitskritischer Anwendungen einsetzbar sind.
-
Diese Aufgabe wird jeweils mit den Merkmalen der unabhängigen Patentansprüche gelöst. Ausführungsformen der Erfindung sind in den abhängigen Patentansprüchen angegeben. Sofern nicht ausdrücklich Gegenteiliges zum Ausdruck gebracht wird, können Ausführungsformen der Erfindung frei miteinander kombiniert werden.
-
Unter einem ”Chip” oder ”Microchip” wird im Folgenden ein integrierter Schaltkreis verstanden, der mehrere elektronische Bauteile bzw. Schaltungselemente wie Transistoren, Widerstände usw. enthalten kann. Je nach Ausführungsform kann ein Chip Bestandteil von Computern, Mobilfunkgeräten, insbesondere Smartphones, Digitalkameras oder anderer, vorzugsweise portabler, Geräte sein. Nach manchen Ausführungsformen ist der Chip Bestandteil eines Dokumentes, insbesondere eines Sicherheitsdokumentes.
-
Als „Chipkarte” oder ”Dokument” wird im Folgenden jeglicher Datenträger bezeichnet, welcher einen Mikrochip und eine mit diesem verbundene Antenne aufweist. Vorzugsweise kann die Chipkarte mit einem geeigneten Lesegerät Daten austauschen. Bei der Chipkarte kann es sich um ein Wert- oder Sicherheitsdokument, wie zum Beispiel um ein ID-Dokument, handeln. Ein ID-Dokument kann z. B. ein Ausweisdokument, wie zum Beispiel einen Personalausweis, Reisepass, Führerschein, Fahrzeugbrief, Fahrzeugschein oder Firmenausweis, sein. Bei dem Wertdokument kann es sich z. B. um ein Zahlungsmittel, wie zum Beispiel eine Banknote oder eine Kreditkarte handeln. Das Dokument kann auch ein sonstiger Berechtigungsausweis, zum Beispiel eine Eintrittskarte, ein Fahrschein, insbesondere ein Electronic-Ticket, einen Frachtbrief, ein Visum oder dergleichen, sein. Der Dokumentenkörper des Dokuments kann buchartig ausgebildet sein, wie dies zum Beispiel bei einem Reisepass der Fall sein kann. Unter einer Chipkarte wird auch ein sogenanntes Funketikett verstanden, welches auch als RFID-Tag oder RFID-Label bezeichnet wird. Die Chipkarte beinhaltet vorzugsweise eine Schnittstelle zum kontaktlosen Datenaustausch mit einem Lesegerät. Je nach Ausführungsform kann die Chipkarte zum Beispiel kunststoff- und/oder papierbasiert sein.
-
Unter einem ”Lesegerät” wird im Folgenden ein Datenverarbeitungssystem verstanden, welches mit der Chipkarte Daten austauschen kann. Vorzugsweise beinhaltet der Datenaustausch eine Authentifizierung des Lesegeräts gegenüber der Chipkarte. Nach Ausführungsformen kann das Lesegerät ein Computersystem sein. Das Lesegerät kann Funktionalitäten implementieren, wie sie für Lesegeräte maschinenlesbarer Reisedokumente (MRTD) bekannt sind, insbesondere kryptographische Protokolle, wie zum Beispiel ein Basic Access Control (BAC) und/oder ein Extended Access Control (EAC). Nach manchen Ausführungsformen kann das Lesegerät dazu ausgebildet sein, Daten von der Chipkarte zu lesen und/oder an diese zu senden.
-
In manchen Anwendungsszenarien ist es notwendig, sicherzustellen, dass ausschließlich ein berechtigtes Lesegerät auf die in der Chipkarte gespeicherten Daten zugreifen kann, so dass sich nach Ausführungsformen das Lesegerät vor dem Auslesen dieser Daten gegenüber der Chipkarte authentisieren muss. Vorzugsweise beinhaltet die Authentifizierung den Nachweis, dass der Eigentümer der Chipkarte die Chipkarte dem Lesegerät willentlich zum Auslesen der Daten verfügbar gemacht hat. Dies kann zum Beispiel dadurch geschehen, dass das Lesegerät Daten, die auf der Oberfläche der Chipkarte sichtbar sind und vom Lesegerät optisch erfasst wurden, an die Chipkarte übermittelt werden als Nachweis, dass der Nutzer die Chipkarte (und die darauf befindlichen optisch erfassbaren Daten) dem Lesegerät willentlich gezeigt hat. Alternativ kann auch ein vom Nutzer in das Lesegerät eingegebenes Geheimnis zur Authentifizierung des Lesegerätes gegenüber der Chipkarte verwendet werden.
-
Unter Attributen werden im Folgenden jegliche Form von Daten verstanden. Vorzugsweise beziehen sich Attribute auf Daten, welche den Nutzer einer Chipkarte und/oder dessen Eigentum beschreiben, z. B. personenbezogene Daten wie Kontoinformationen, Fahrzeugdaten, etc.
-
Unter „Positionsdaten” sind im Folgenden jegliche Daten zu verstehen, welche eine Verortung (Lokalisierung) eines bestimmten Gegenstandes (insb. des Sensors der die Positionsdaten ermittelt hat) in Bezug auf einen definierten Fixpunkt bzw. ein definiertes Bezugssystem ermöglichen. Insbesondere kann es sich bei dem Positionsdaten um Daten handeln, welche mittels Funk- und Satellitenordnung gewonnen wurden, also insbesondere um GPS-Daten (Global Positioning System), aber auch um Daten, die mittels geodätischer Messmethoden (Lateration, Angulation, Polarmethode, etc.) oder sonstiger Verfahren (optische Geländeerkennung, Echoortung etc.) gewonnen wurden. Die Positionsdaten können beispielsweise als planare Koordinaten, kubische Koordinaten, Polarkoordinaten oder als geographische, natürliche Koordinaten oder in einem applikationsspezifischen Format, z. B. als Orts- oder Netzkennung, spezifiziert sein. Es kann sich bei den Positionsdaten also um Kennungen von Netzwerken oder sonstigen Gegenständen oder Signalsendern handeln, welche einzeln oder in Kombination miteinander eine Positionsbestimmung des Sensors ermöglichen.
-
Unter einer „Lokalisierungseinheit” wird im Folgenden ein Gerät oder eine Gerätekomponente verstanden, welche zur automatischen Sensierung der eigenen Position fähig ist. Die eigene Position ist in Form von Positionsdaten spezifiziert und kann von der Lokalisierungseinheit z. B. automatisch in regelmäßigen Abständen und/oder nach Erhalt einer Anfrage von einem anderen Gerät, z. B. von einer Chipkarte, ermittelt und an dieses Gerät gesendet werden. Je nach Ausführungsform kann die Lokalisierungseinheit eine Komponente der Chipkarte sein oder als eigenständiges Gerät ausgebildet und von der Chipkarte räumlich getrennt sein.
-
Eine „Schlüsselableitungsfunktion” (englisch: key derivation function – KDF) ist ein deterministischer Algorithmus um einen kryptographischen Schlüssel determinierter Länge aus einem geheimen Datenwert abzuleiten. Wenn zwei Parteien den gleichen geheimen Wert und die gleiche Schlüsselableitungsfunktion verwenden erzeugen beide den gleichen kryptographischen Schlüssel.
-
”Distance-Bounding Protokolle” sind eine Klasse kryptographischer Protokolle, die es einem Prüfer ermöglichen, einen physischen Maximalabstand zu einem Geprüften festzulegen und zu prüfen, ob der aktuelle physische Abstand zwischen dem Prüfer und dem Geprüften geringer als dieser Maximalabstand ist. Sie beruhen darauf, dass der Prüfer eine Challenge, z. B. in Form eines neu generierten Zufallswertes, an den Geprüften sendet und anhand der Zeitspanne bis zum Empfang einer Antwort von dem Geprüften errechnen kann, wie weit der Geprüfte von dem Prüfer maximal physisch entfernt liegen kann. In diese Berechnung gehen bekannte Größen wie etwa die Geschwindigkeit der Datenübertragung bei der jeweils genutzten Datenübertragungstechnologie (Lichtgeschwindigkeit bei Funk, Schallgeschwindigkeit bei Ultraschall) und vorzugsweise auch die Prozessierungszeit für die Generierung und für den Versand der Antwort ein. Der Prüfer kann also anhand der Dauer bis zum Empfang der Antwort die Entfernung des Geprüften feststellen und damit auch, ob dieser sich innerhalb eines vordefinierten Maximalabstandes befindet oder nicht. Bei einem Distance-Bounding Protokoll kann es sich zum Beispiel um ein Challenge-Response Verfahren handeln. Beispiele für Distance-Bounding Protokolle sind z. B. in Gerhard Hancke, Markus Kuhn: „An RFID distance-bounding protocol", Proceedings SecureComm 2005, und in Stefan Brands, David Chaum: „Distance-bounding protocols (extended abstract)", Proceedings Eurocrypt'93, aufgeführt.
-
Eine ”Authentifizierung” einer Lokalisierungseinheit gegenüber einer Chipkarte besteht aus der Erbringung eines Nachweises einer behaupteten Eigenschaft der Lokalisierungseinheit gegenüber der Chipkarte („Authentisierung”) in Kombination mit der Prüfung dieses Nachweises und Akzeptanz der Echtheit der behaupteten Eigenschaft durch die Chipkarte (Authentifizierung im engeren Sinne). Während eine Authentisierung also sich auf Schritte bezieht, die von der Lokalisierungseinheit durchzuführen sind, bezieht sich der Begriff der ”Authentifizierung im engeren Sinne” auf Schritte, die von der Chipkarte durchzuführen sind, „Authentifizierung” im Allgemeinen auf den gesamten Prozess. Im Folgenden wird unter Authentifizierung der Gesamtprozess beinhaltend die Authentisierung verstanden.
-
In einem Aspekt betrifft die Erfindung ein Verfahren zur Durchführung einer kryptographischen Operation. Das Verfahren beinhaltet:
- – Ermittlung oder Empfang von ersten Positionsdaten durch eine Chipkarte;
- – Zugriff der Chipkarte auf einen Datenwert, welcher in einem geschützten Speicher der Chipkarte gespeichert ist oder von einem Nutzer der Chipkarte manuell eingegeben wird;
- – Anwenden einer Schlüsselableitungsfunktion auf den Datenwert und die ersten Positionsdaten durch die Chipkarte zur Generierung eines ersten positionsabhängigen kryptographischen Schlüssels;
- – Verwendung des ersten positionsabhängigen kryptographischen Schlüssels durch die Chipkarte zur Durchführung der kryptographischen Operation.
-
Dies kann vorteilhaft sein, weil der generierte Schlüssel von der Position des Ortes, wo dieser erzeugt wird, abhängt. Durch die Verschränkung der Ortsinformation mit kryptographischen Funktionen in Form eines positionsabhängigen Schlüssels kann also sichergestellt werden, dass die diesen Schlüssel verwendende kryptographische Operation von einer Chipkarte ausgeführt wird, welche sich an einem bestimmten Ort oder innerhalb eines bestimmten Gebietes befindet oder zumindest zum Zeitpunkt der Positionsbestimmung und Schlüsselerzeugung befand. Die enge Verschränkung von Positionsdaten mit der kryptographischen Funktion kann die Ausführung ortsgebundener, sicherheitsbezogener kryptographischer Funktionen beschleunigen, da die Ortsgebundenheit implizit bei der Schlüsselgenerierung bereits erfolgt. Nach Ausführungsformen wird das oben genannte Verfahren von der Chipkarte an einer Vielzahl von unterschiedlichen Orten durchgeführt, wobei jeweils ein für den aktuellen Ort spezifischer, positionsgebundener Schlüssel mit den Positionsdaten des aktuellen Ortes erzeugt wird. Dies hat den Vorteil, dass auch im Falle der Kompromittierung eines geheimen positionsabhängigen Schlüssels eines bestimmten Ortes die Sicherheit der Schlüssel aller anderer Orte davon nicht berührt sind, da es für Dritte keine Möglichkeit gibt, von einem positionsabhängigen Schlüssel die anderen positionsabhängigen Schlüssel zu errechnen.
-
Nach Ausführungsformen der Erfindung prüft die Chipkarte, ob eine Zeitdauer, die zwischen dem Empfang bzw. der Ermittlung der Positionsdaten und der Generierung des ersten positionsabhängigen Schlüssels vergangen ist, kürzer ist als ein Schwellenwert. Der erste positionsabhängige Schlüssel wird nur dann erzeugt und/oder die kryptographische Operation wird nur dann durchgeführt, wenn die Zeitdauer kürzer als der Schwellenwert ist. Dies kann dazu dienen, sicherzustellen, dass sich die Chipkarte auch noch während der Schlüsselgenerierung bzw. während der Durchführung der kryptographischen Operation an einem Ort oder in einem Gebiet befindet, welches durch die Positionsdaten, welche in den generierten Schlüssel eingingen, identifiziert wird. Je höher der Schwellenwert desto höher also auch die Toleranz hinsichtlich der genauen Position der Chipkarte, um mit dem positionsabhängigen Schlüssel noch kryptographische Operationen durchführen zu können. Nach Ausführungsformen ist der Schwellenwert durch einen Nutzer und/oder automatisch durch eine auf der Chipkarte ausgeführte Applikation konfigurierbar.
-
Nach Ausführungsformen handelt es sich bei dem Datenwert um einen kryptographischen Schlüssel oder ein Passwort mit dem sich ein Nutzer der Chipkarte gegenüber der Chipkarte authentifizieren kann. Das Passwort kann z. B. von einem Nutzer bei der Authentifizierung gegenüber der Chipkarte manuell über ein Terminal mit Tastatur oder PIN-Pad eingegeben und an die Chipkarte übertragen werden. Die Verwendung eines eingegebenen Passworts kann vorteilhaft sein, weil dadurch eine Verschränkung von Nutzerauthentifizierung, dem Ort, wo die Chipkarte sich befindet, und einer kryptographischen Operation bewirkt wird. Die Menge an Daten, die der Nutzer manuell eingeben muss, wird dadurch reduziert. Zudem kann die Sicherheit weiter erhöht werden, wenn das Passwort nicht in der Chipkarte gespeichert ist.
-
Nach Ausführungsformen geben die ersten Positionsdaten die Position der Chipkarte an. Alternativ dazu werden die ersten Positionsdaten als Positionsdaten eines Senders, von welchem die ersten Positionsdaten durch die Chipkarte empfangen werden, ermittelt. Dieser Sender kann z. B. eine Lokalisierungseinheit sein. Falls der Sender von der Chipkarte weniger als einen vorgegebenen Maximalabstand entfernt ist, werden die Positionsdaten des Senders als die ersten Positionsdaten, die die Position der Chipkarte widergeben, verwendet. Der Empfang von Positionsdaten von einem Sender kann vorteilhaft sein, da die Chipkarte in diesem Fall nicht selbst über eine Lokalisierungseinheit verfügen muss und günstiger hergestellt werden kann. Zudem kann die gleiche externe Lokalisierungseinheit von einer Vielzahl von Chipkarten für unterschiedliche Zwecke genutzt werden.
-
Nach Ausführungsformen handelt es sich bei der kryptographischen Operation um eine Generierung einer Signatur, eine Signaturprüfung, eine Verschlüsselung eines oder mehrerer Attribute, oder eine Entschlüsselung eines oder mehrerer Attribute. Die Signatur kann z. B. für ein oder mehrere Attribute, die in dem Speichermedium der Chipkarte geschützt gespeichert sind, erzeugt werden. Die Verschlüsselung kann eine Verschlüsselung dieser Attribute darstellen. Die Entschlüsselung und Signaturprüfung bezieht sich vorzugsweise auf signierte bzw. verschlüsselte Attribute, die von einem Computersystem verschlüsselt bzw. signiert wurden und von diesem an die Chipkarte übertragen wurden.
-
Nach Ausführungsformen umfasst die Schlüsselableitungsfunktion (KDF) eine Konkatenierung des Datenwerts mit den ersten Positionsdaten. Die ersten Positionsdaten bestehen aus ein oder mehreren Datenelementen, wobei die Konkatenierung gemäß eines vorgegebenen Sortierschemas von dem Datenwert und den ersten Positionsdaten erfolgt. Im Falle dass die Positionsdaten aus mehreren Datenelementen bestehen werden die Datenelemente ebenfalls gemäß des Sortierschemas sortiert konkateniert. Dies ermöglicht eine deterministische Ableitung der positionsabhängigen Schlüssel ausgehend von einer Vielzahl an zu verknüpfenden Datenelementen.
-
Nach Ausführungsformen verwendet die Schlüsselableitungsfunktion (KDF) zusätzlich einen Zufallswert („Seed”) für die Generierung des ersten positionsabhängigen kryptographischen Schlüssels. Die Verwendung eines Zufallswertes kann die Sicherheit des Schlüssels erhöhen, was insbesondere dann vorteilhaft ist, falls es sich bei dem Datenwert um ein Passwort handelt, welches Bestandteil eines Lexikons ist, sodass dieses Passwort alleine nicht ausreicht, um den nötigen Grad an Sicherheit zu bewirken.
-
Die Reihenfolge der konkatenierten Datenelemente bzw. des Datenwertes erfolgt dabei gemäß eines vordefinierten Sortierschemas, z. B. einem alphabetischen oder numerischen Sortierschema. Die Sortierung kann auf der binären Ebene des Datenwertes bzw. der Datenelemente erfolgen oder, falls der Datenwert z. B. ein Passwort ist und als Textstring repräsentiert ist, auch z. B. auf Basis des Textstrings. Im Folgenden sollen einige Schlüsselableitungsfunktionen beispielhaft aufgeführt werden, wobei KP den ersten positionsabhängigen Schlüssel, G1, G2, ...Gn jeweils ein Datenelement, z. B. eine Netzkennung der Netze N1, N2, ..., Nn, bezeichnet, K den Datenwert, S den Zufallswert („Seed”), M die maximale Länge des Schlüssels KP und das Symbol „||” eine Konkatenierung bezeichnet.
KDF1: KP = G1||G2||...||Gn||K
-
Falls die Positionsdaten aus nur einem Datenelement G, z. B. einer Ortskennung, bestehen, gilt entsprechend: KP = G||K
KDF2: KP = F((G1||G2||...||Gn), S, K), wobei F eine mathematische Funktion, z. B. eine Multiplikation von S mit K, eine Addition von S und K, etc. darstellen kann. Dabei kann ein Zwischenwert generiert werden, der z. B. mit dem konkatenierten Wert aller Datenelemente durch eine weitere Rechenoperation (Konkatenierung, Multiplikation, etc.) verknüpft werden kann.
KDF3: KP = G1||G2||...||Gn||K||O, wobei O für ein oder mehrere zusätzliche Parameter stehet, z. B. Zeit, Nutzer-ID, etc., die dazu dienen können, den Schlüssel KP auch von weiteren Faktoren abhängig zu machen.
-
Nach Ausführungsformen beinhaltet die Schlüsselableitungsfunktion zwei weitere Schritte: zuerst wird aus dem z. B. durch Konkatenierung gewonnenen ersten positionsabhängigen Schlüssel ein Hashwert oder ein anderer komprimierter Datenwert mittels einer deterministischen Abbildungsfunktion gebildet. Dieser Hashwert bzw. komprimierte Datenwert wird auf eine vorgegebene Länge M gekürzt und das Kürzungsresultat als der erste positionsabhängige kryptographische Schlüssel verwendet. Dies ermöglicht die Generierung von kryptographischen Schlüsseln vorgegebener Länge.
-
KDF4 (als Pseudocode):
INT ist ein invariabler Integer Wert, vorzugsweise 4 oder höher.
-
Bestimme MM als einen Maximalwert aus hLen und M, wobei hLen die Länge des Outputs einer Hashfunktion „Hash” in Bytes angibt und M die maximale Länge des zu generierenden Schlüssels KP in Bytes;
KDF5 (als Pseudocode):
-
Es gelten:
P: Konkatenierungsprodukt aus einem Passwort K als Bytestring und den Positionsdaten, z. B. K||[G1||G2||...||Gn,
S: Zufallswert, ein 8-Bytestring;
C: ein positive Integer;
M die maximale Länge des zu generierenden Schlüssels KP in Bytes;
Hash: Hashfunktion mit Output von M Bytes Länge;
Falls M > hLen, dann Abbruch mit Fehlermeldung „KP ist zu lang!”;
T1 = Hash(P||S)
-
Nach Ausführungsformen umfasst das Verfahren ferner:
- – Lesen oder Generierung eines kryptographischen Referenzschlüssels durch ein Computersystem. Der Referenzschlüssel ist identisch mit dem ersten positionsabhängigen Schlüssel (und bildet mit diesem z. B. ein Paar symmetrischer Schlüssel) oder bildet mit dem ersten positionsabhängigen kryptographischen Schlüssel ein asymmetrisches kryptographisches Schlüsselpaar.
- – Authentifizierung des Computersystems gegenüber der Chipkarte;
- – Im Falle einer erfolgreichen Authentifizierung, Durchführung einer zu der kryptographischen Operation komplementären kryptographischen Operation mit dem Referenzschlüssel auf zumindest einem Attribut, welches vor oder nach Durchführung der komplementären kryptographischen Aktion zwischen der Chipkarte und dem Computersystem ausgetauscht wird.
-
Nach Ausführungsformen überträgt die Chipkarte die Positionsdaten, mit welcher der erste positionsabhängige kryptographische Schlüssel generiert wurde, an das Computersystem in unverschlüsselter Form. Das Computersystem kann eine Vielzahl von Referenzschlüsseln für eine entsprechende Vielzahl von Orten, die jeweils durch entsprechende Positionsdaten eindeutig identifizierbar sind, gespeichert haben. Die positionsabhängigen Schlüssel können dabei mit den jeweiligen zur Schlüsselgenerierung verwendeten Positionsdaten verknüpft in einem für das Computersystem zugreifbaren Speichermedium gespeichert sein. Durch die Übermittlung der Positionsdaten wird dem Computersystem somit die Auswahl des passenden Referenzschlüssels zur Durchführung einer komplementären kryptographischen Operation aus der Vielzahl gespeicherter Schlüssel ermöglicht.
-
Bei dem Computersystem kann es sich beispielsweise um ein Terminal handeln, welches ein Lesegerät mit kontaktlosen oder konaktbehafteten Schnittstellen zum direkten Datenaustausch mit der Chipkarte umfasst. Es kann sich aber auch um ein beliebiges weiteres Computersystem, z. B. ein Computersystem eines Nutzers, eines Online-Dienstes oder eines ID-Providers handeln, welches vermittelt durch das Terminal Daten mit der Chipkarte über ein Netzwerk austauschen kann. Durch die Verwendung eines identischen bzw. komplementären Referenzschlüssels kann das Computersystem sicherstellen, dass sich die Chipkarte bzw. deren Nutzer sich bei Durchführung der kryptographischen Operation in einem bestimmten räumlichen Gebiet aufhält, z. B. in einem besonders geschützten Raum oder Gebäude einer Firma: mit einem Referenzschlüssel verschlüsselte und an die Chipkarte übertragene Attribute können von der Chipkarte nur dann entschlüsselt werden, wenn diese sich in dem zu dem Referenzschlüssel gehörenden Ort befindet. In anderen Anwendungsszenerien kann das Computersystem, z. B. ein Server zur Zahlungsabwicklung bzw. zur Rechnungsstellung, sicherstellen, dass z. B. nutzerspezifische Attribute wie etwa Kontoinformationen nur dann aus der Chipkarte ausgelesen werden, wenn die Chipkarte und damit der Nutzer sich auch wirklich innerhalb eines Ortes befinden, in welchem die zu zahlende Dienstleistung angeboten wird. Z. B. überträgt die Chipkarte einen mit dem positionsabhängigen Schlüssel signierten Zufallswert an das Computersystem, das mit seinem Referenzschlüssel prüft, ob die Chipkarte bzw. der Kunde sich innerhalb eines vorgegebenen Maximalabstandes von einem Kassensystem befindet. Eine Finanztransaktion zu einem bestimmten Produkt, das der Kunde an der Kasse kauft, wird nur dann eingeleitet, wenn die Signaturprüfung ergibt, dass sich der Kunde innerhalb des Maximalabstandes befindet. Das Computersystem kann durch die Verwendung eines Referenzschlüssels also sicherstellen, dass die Chipkarte bzw. deren Nutzer, der einen bestimmten Dienst in Anspruch nimmt, sich auch tatsächlich dort aufhält wo der Dienst angeboten wird bzw. angeboten werden soll. Die Inanspruchnahme eines solchen Dienstes könnte z. B. in einem Kauf eines Produktes an einer Kasse eines Ladengeschäfts sein oder eine Fahrt mit einem öffentlichen Verkehrsmittel entlang einer bestimmten Strecke, wobei die Zustiegs- und Ausstiegspunkte des Nutzers der Chipkarte automatisch durch Terminals an den Türen der Fahrzeuge mittels der Chipkarte registriert werden. So könnten die Zustiegs- und Ausstiegshaltestellen des Nutzers als die ersten Positionsdaten von Lokalisierungseinheiten ermittelt und durch die Chipkarte beim Ein- bzw. Aussteigen jeweils als die ersten Positionsdaten erfasst und zur Generierung von je einem haltestellenabhängigen Schlüssel verwendet werden.
-
Der Schlüssel kann in einer kryptographischen Operation durch die Chipkarte verwendet werden um sensible Daten, die in der Chipkarte gespeichert sind, z. B. Kontodaten des Nutzers, zu verschlüsseln und an das Computersystem zu übertragen, das z. B. für die Rechnungsstellung zuständig ist. Das Computersystem hat für jede der verwalteten Haltestellen einen entsprechenden Referenzschlüssel gespeichert und kann mit diesem eine zu der kryptographischen Operation der Chipkarte komplementäre kryptographische Operation, z. B. eine Entschlüsselung von verschlüsselt übertragenen (Konto-)daten des Nutzers, durchführen. Vorzugsweise können die Positionsdaten zusätzlich in unverschlüsselter Form von der Chipkarte an das Computersystem übertragen werden um dem Computersystem die Auswahl des richtigen Referenzschlüssels für die Einstiegs- bzw. Ausstiegshaltestelle zu ermöglichen.
-
Auch könnte es sich bei dem Dienst um einen Mautdienst für PKWs oder LKWs handeln, wobei in der Chipkarte beispielsweise eine Fahrzeugkennung, das von dem Mautdienst erfasst werden soll, gespeichert ist. Die Fahrzeugkennung kann mit dem positionsabhängigen Schlüssel verschlüsselt und an einen Dienstanbieter zur Erhebung der Maut übertragen werden. Dies kann z. B. in regelmäßigen zeitlichen Abständen erfolgen, wobei je nach Position ein anderer positionsabhängiger Schlüssel generiert und zur Verschlüsselung verwendet wird.
-
Nach Ausführungsformen umfasst die Generierung des kryptographischen Referenzschlüssels:
- – Ermittlung oder Empfang von zweiten Positionsdaten durch das Computersystem;
- – Zugriff auf den Datenwert, welcher in einem an das Computersystem operativ gekoppelten Speicher ebenfalls gespeichert ist, durch das Computersystem;
- – Anwenden der Schlüsselableitungsfunktion auf den Datenwert und die zweiten Positionsdaten zur Generierung eines zweiten positionsabhängigen kryptographischen Schlüssels;
- – Verwenden des zweiten positionsabhängigen kryptographischen Schlüssels als den Referenzschlüssel;
-
Das Lesen des kryptographischen Referenzschlüssels beinhaltet ein Lesen des kryptographischen Referenzschlüssels von einem geschützten Speichermedium, das operativ an das Computersystem gekoppelt ist. Das Speichern eines vorberechneten Referenzschlüssel kann das Verfahren beschleunigen, da eine mehrfache Berechnung des Referenzschlüssels nicht notwendig ist. Demgegenüber hat eine Berechnung des Referenzschlüssels den Vorteil, dass das System flexibler ist und z. B. verwendet werden kann, um festzustellen bzw. sicherzustellen, dass sich Computersystem und Chipkarte am gleichen Ort bzw. im gleichen Gebiet befinden, ohne dass der zu dem Ort gehörige Referenzschlüssel vorberechnet und der Ort damit fix vorgegeben werden müsste.
-
Nach Ausführungsformen handelt es sich bei der komplementären kryptographischen Operation um:
- – eine Signaturprüfung der in a) generierten Signatur, wobei das zumindest eine Attribut in der Chipkarte geschützt gespeichert und nach Signierung durch die Chipkarte an das Computersystem zur Durchführung der Signaturprüfung übertragen wird, oder
- – eine Signierung des zumindest einen Attributs, wobei für die hierbei erzeugte Signatur zu einem späteren Zeitpunkt gemäß b) eine Signaturprüfung vorgenommen wird, wobei das zumindest eine Attribut in dem Computersystem geschützt gespeichert ist und nach Signierung durch das Computersystem an die Chipkarte übertragen wird, oder
- – eine Entschlüsselung des zumindest einen Attributs, welches in c) verschlüsselt wurde, wobei das zumindest eine Attribut in der Chipkarte geschützt gespeichert ist und nach Verschlüsselung durch die Chipkarte an das Computersystem zur Entschlüsselung durch das Computersystem übertragen wird, oder
- – eine Verschlüsselung des zumindest einen Attributs, welches an einem späteren Zeitpunkt in d) entschlüsselt wird, wobei das zumindest eine Attribut in dem Computersystem geschützt gespeichert und nach Verschlüsselung durch das Computersystem an die Chipkarte zur Entschlüsselung durch die Chipkarte übertragen wird.
-
Nach Ausführungsformen beinhaltet das Verfahren ferner:
- – Empfang oder Ermittlung der ersten Positionsdaten durch eine Lokalisierungseinheit, wobei die ersten Positionsdaten eine Position der Lokalisierungseinheit angeben;
- – Übermittlung der ersten Positionsdaten von der Lokalisierungseinheit an die Chipkarte über eine kontaktlose Schnittstelle unter Verwendung eines kryptographischen Protokolls;
- – Ausführung eines Distance-Bounding Protokolls zwischen der Chipkarte und der Lokalisierungseinheit, wobei das Distance-Bounding Protokoll den Nachweis
- – durch einen Geprüften, dass dieser sich innerhalb eines räumlichen Maximalabstandes von einem Prüfer befindet, beinhaltet;
- – nur im Falle eines erfolgreichen Nachweises dass sich die Lokalisationseinheit innerhalb des räumlichen Maximalabstandes von der Chipkarte befindet, Ausführung einer Chipkartenfunktion durch die Chipkarte, wobei die Chipkartenfunktion die übermittelten Positionsdaten als die ersten Positionsdaten, die die aktuelle Position der Chipkarte angeben, verwendet. Vorzugsweise agiert die Chipkarte dabei als der Prüfer und die Lokalisierungseinheit als der Geprüfte. In analoger Weise können die zweiten Positionsdaten zur Berechnung des Referenzschlüssels ermittelt werden. Die Durchführung der Chipkartenfunktion kann beispielsweise die Durchführung der Chipkartenfunktion und optional noch weitere Datenverarbeitungsschritte beinhalten.
-
Nach Ausführungsformen beinhaltet das Verfahren ferner eine Authentifizierung der Lokalisierungseinheit gegenüber der Chipkarte. Die Authentifizierung kann die Erbringung eines Nachweises mittels des Distance-Bounding-Protokolls, dass sich die Lokalisierungseinheit innerhalb des räumlichen Maximalabstands befindet, beinhalten. Dadurch kann sichergestellt werden, dass die empfangenen Positionsdaten von einer Lokalisierungseinheit in der Nähe der Chipkarte stammen und nicht etwa von einer anderen, weiter entfernt liegenden Lokalisationseinheit, stammt, welche gefälschte Positionsinformationen senden könnte.
-
Nach Ausführungsformen umfassen die Positionsdaten:
- – eine Vielzahl von Ortskennungen, welche in ihrer Gesamtheit einen Ort, an dem sich die Lokalisationseinheit befindet, identifizierten; oder
- – eine Ortskennung, welche einen Ort, an dem sich die Lokalisationseinheit befindet, identifiziert. Bei der Ortskennung kann es sich beispielsweis um einen Identifikator eines geographischen Bezirkes, eine Postleitzahl, eine Gebäudenummer oder Raumnummer handeln.
-
Nach Ausführungsformen stellt jede Ortskennung aus der Vielzahl an Ortskennungen eine Netzkennung dar. Jede Netzkennung identifiziert dabei ein Datenkommunikationsnetz, in dessen Sendebereich sich die Lokalisationseinheit befindet. Jede Netzkennung identifiziert ein Datenkommunikationsnetz, in dessen Sendebereich sich die Lokalisationseinheit befindet, welche diese Positionsdaten ermittelt. Bei dem Datenkommunikationsnetz kann es sich beispielsweise um WLAN-Netze privater Haushalte und/oder öffentliche Institutionen handeln. Alternativ dazu kann es sich auch um die Sendebereiche verschiedener Radiosender handeln, deren Netzkennungen die Lokalisierungseinheit erfassen kann. Beispielsweise ermöglicht das Radio Data System (RDS) die Übermittlung von Zusatzinformationen über das Radionetz. Diese Zusatzinformationen können insbesondere den Programme Service Name (PS) beinhalten, der den Sendernamen in Form von bis zu 8 alphanumerischen Zeichen an gibt. Der individuell vergebene WLAN-Netz-Name bzw. der PS Sendername kann hier jeweils als Netzkennung dienen.
-
In Kombination mit einer geographischen Karte, in welchem die Gebiete der einzelnen Netze einschließlich deren Überlappungsbereiche enthalten sind, ist es also möglich anhand von ein oder mehreren Netzkennungen einen bestimmten geographischen Ort bzw. ein geographisches Gebiet zu erkennen und dessen Ortskennung zu ermitteln. Die Karte kann dabei auf der Lokalisierungseinheit und/oder der Chipkarte gespeichert sein oder auf einem entfernten Computer, auf den die Chipkarte bzw. Lokalisierungseinheit Zugriff hat. Alternativ zur Karte kann auch eine Zuordnungstabelle verwendet werden, welche jeder Kombination von Netzkennungen eine bestimmte Ortskennung zuweist. Eine Ortskennung ist dabei ein Identifikator eines bestimmten Ortes bzw. Gebietes.
-
Nach Ausführungsformen umfasst das Verfahren ferner eine Ermittlung der einen Ortskennung anhand der Vielzahl von Ortskennungen. Die Ermittlung kann auf Seiten der Chipkarte mithilfe einer Karte oder einer Zuordnungstabelle erfolgen. Alternativ dazu kann die Ermittlung auch durch die Lokalisierungseinheit erfolgen, wobei die Lokalisierungseinheit zumindest Lesezugriff die geographische Karte bzw. die Zuordnungstabelle hat, die in einem Speicher gespeichert ist, der operativ an die Lokalisierungseinheit gekoppelt ist. Der Ausdruck „operativ an eine Lokalisierungseinheit gekoppelt” bezeichnet einen Speichermedium, welches integraler Bestandteil der Lokalisierungseinheit ist oder welches über ein Netzwerk mit der Lokalisierungseinheit verbunden ist. Die Lokalisierungseinheit hat dabei zumindest Lesezugriff auf die Daten des Speichermediums.
-
Beispielsweise kann die Ermittlung der Ortskennung aus mehreren Netzkennungen folgendermaßen erfolgen: die Lokalisierungseinheit befindet sich in einem Gebiet, innerhalb welchem Radiosignale der Sender S1, S4 und S5 empfangen werden können mit einer Signalstärke, die über einem vordefinierten Schwellenwert liegt. Signale anderer Radiosender wie etwa S3 oder S455 werden in diesem Gebiet jedoch nicht bzw. nicht in hinreichender Stärke empfangen. Die Lokalisierungseinheit kann eine geographische Karte oder eine Zuordnungstabelle gespeichert haben, welche einer bestimmten Kombination an Netzkennungen {S1, S4 und S5} genau eine Ortskennung („Gebiet Nr. 388”) zuordnet. Diese Ortskennung wird mit Hilfe der Karte bzw. der Zuordnungstabelle durch die Lokalisierungseinheit ermittelt und als die Positionsdaten an die Chipkarte übermittelt. Alternativ kann sich die geographische Karte bzw. die Zuordnungstabelle auch auf einem Speichermedium befinden, welches an einen entfernten Server operativ gekoppelt ist. In diesem Fall sendet die Lokalisierungseinheit eine Anfrage an den Server, die die drei Netzkennungen S1, S4 und S5 enthält. Die Anfrage kann über ein Netzwerk, z. B. das Internet gesendet werden. Der Server ermittelt daraus unter Verwendung der Karte bzw. der Zuordnungstabelle die Ortskennung und gibt diese an die Lokalisierungseinheit zurück. Die Lokalisierungseinheit übermittelt dann die Ortskennung an die Chipkarte als die Positionsdaten. Alternativ kann die Lokalisierungseinheit auch die ermittelten Netzkennungen als die Positionsdaten an die Chipkarte senden, sofern die Chipkarte dazu in der Lage ist, diese zur Bestimmung einer Ortskennung (alleine oder in Interoperation mit einem entfernten Server) zu verwenden.
-
In einem weiteren Aspekt betrifft die Erfindung ein Computerprogrammprodukt mit von einem Computersystem ausführbaren Instruktionen zur Durchführung eines Verfahrens nach einer der oben beschriebenen Ausführungsformen oder einer Kombination davon.
-
In einem weiteren Aspekt betrifft die Erfindung eine Chipkarte. Die Chipkarte beinhaltet ein Speichermedium zur geschützten Speicherung eines Datenwertes und/oder eine Schnittstelle zur manuellen Eingabe des Datenwertes durch einen Nutzer, dem die Chipkarte zugeordnet. Die Chipkarte verfügt außerdem über Mittel zur Ermittlung oder zum Empfang von ersten Positionsdaten. Die Chipkarte ist ausgebildet zum:
- – Zugriff auf den gespeicherten oder eingegebenen Datenwert;
- – Anwenden einer Schlüsselableitungsfunktion auf den Datenwert und die ersten Positionsdaten zur Generierung eines ersten positionsabhängigen kryptographischen Schlüssels; und
- – Verwendung des ersten positionsabhängigen kryptographischen Schlüssels zur Durchführung einer kryptographischen Operation.
-
Nach Ausführungsformen sind die Mittel zum Empfang der ersten Positionsdaten als kontaktlose Schnittstelle zum Empfang der ersten Positionsdaten von einer Lokalisierungseinheit ausgebildet. Die ersten Positionsdaten werden in verschlüsselter Form von der Lokalisierungseinheit an die Chipkarte übertragen. Die Chipkarte umfasst ferner einen kryptographischen Schlüssel zur Entschlüsselung der empfangenen ersten Positionsdaten und ein Distance-Bounding(DB)-Modul, welches zur Ausführung eines Distance-Bounding Protokolls zwischen der Chipkarte und der Lokalisierungseinheit ausgebildet ist. Das Distance-Bounding Protokoll dient zum Zwecke der Erbringung eines Nachweises durch einen Geprüften, dass dieser sich innerhalb eines räumlichen Maximalabstandes von einem Prüfer befindet.
-
Im Weiteren werden Ausführungsformen der Erfindung mit Bezugnahme auf die Zeichnungen näher erläutert. Es zeigen:
-
1 ein Blockdiagramm einer Chipkarte, einer Lokalisierungseinheit, eines Terminals und eines weiteren Computersystems,
-
2 ein Flussdiagramm einer Ausführungsform eines erfindungsgemäßen Verfahrens, und
-
3 ein Anwendungsszenario für eine erfindungsgemäße Chipkarte und Lokalisierungseinheit in einem Maut-System.
-
Elemente der nachfolgenden Ausführungsformen, die einander entsprechen, werden mit denselben Bezugszeichen gekennzeichnet.
-
Die 1 zeigt eine Chipkarte 102 mit einem Speicher 104 in welchem ein Datenwert 120 geschützt gespeichert ist. Außerdem kann der Speicher ein oder mehrere Attribute 121 enthalten. Die Chipkarte besitzt einen Prozessor 106 welche in der Lage ist, eine Schlüsselableitungsfunktion („key derivation function” – KDF) 138 sowie eine Chipkartenfunktion 110 auszuführen. Außerdem kann die Chipkarte ein Distance-Bounding Modul 123a besitzen, das zusammen mit einer Lokalisierungseinheit 130 ein Distance-Bounding Protokoll 112 durchführen kann. Das Distance-Bounding Protokoll kann chipkartenseitig so konfiguriert sein, dass bei dessen Ausführung geprüft wird, ob eine Lokalisierungseinheit 130, von welcher über eine Schnittstelle 118 Positionsdaten empfangen werden, sich innerhalb des räumlichen Maximalabstandes 114 befindet. Außerdem kann die Chipkarte 102 über eine Schnittstelle 108 verfügen, über welches ein Terminal-Computersystem 160 sich gegenüber der Chipkarte 102 authentifizieren und mit der Chipkarte Daten austauschen kann. Bei der Schnittstelle 108 kann es sich um eine kontaktlose oder eine kontaktbehaftete Schnittstelle handeln.
-
Eine Lokalisierungseinheit 130 beinhaltet einen Prozessor 132 zur Ausführung eines Lokalisierungsmoduls 134. Das Lokalisierungsmodul ist in der Lage, die Position der Lokalisierungseinheit zu bestimmen. Beispielsweise kann es sich bei dem Lokalisierungsmodul um einen GPS Sensor handeln oder um einen Sensor für WLAN- oder Radio-Netze, welche jeweils eine Netzkennung ausstrahlen, mit deren Hilfe das Lokalisierungsmodul eine Ortskennung des Ortes, in dem sich die Lokalisierungseinheit befindet, ermitteln kann. Die ermittelte Ortskennung dient als die Positionsdaten und wird über die Schnittstelle 118 an die Chipkarte übermittelt. Die Lokalisierungseinheit kann immobil oder mobil ausgestaltet sein und kann bei immobiler Installation auch eine für diese individuelle Gerätekennung, die als Ortskennung dient, gespeichert haben.
-
Vorzugsweise besitzt die Lokalisierungseinheit eine Distance-Bounding Modul 123b, um zusammen mit dem Distance-Bounding-Modul 123a der Chipkarte das Distance-Bounding Protokoll 112 durchzuführen. Dabei kann die Lokalisierungseinheit nachweisen, dass sie sich innerhalb eines räumlichen Maximalabstandes 114 relativ zu der Chipkarte befindet. Dieser Nachweis kann zur Authentifizierung der Lokalisierungseinheit gegenüber der Chipkarte dienen. Dadurch kann sichergestellt werden, dass die Lokalisierungseinheit nachweislich in hinreichender räumlicher Nähe zu der Chipkarte gelegen ist, so dass die von der Lokalisierungseinheit bestimmten Positionsdaten näherungsweise als die Positionsdaten der Chipkarte verwendet werden können. Außerdem kann dadurch ausgeschlossen werden, dass eine weiter entfernt gelegene Lokalisierungseinheit falsche Positionsdaten an die Chipkarte übermittelt. Bei anderen Ausführungsformen ist die Lokalisierungseinheit integraler Bestandteil der Chipkarte. In diesem Fall können die von der Lokalisierungseinheit empfangenen Positionsdaten als richtig und authentisch akzeptiert werden, so dass die Notwendigkeit der Durchführung eines Distance-Bounding Protokolls entfällt.
-
Die Schlüsselableitungsfunktion 138 der Chipkarte wird nach Erhalt der Positionsdaten durch die Chipkarte ausgeführt. Die Schlüsselableitungsfunktion kann in Antwort auf den Erhalt der Positionsdaten oder zu einem späteren Zeitpunkt, zum Beispiel bei Aufruf der Chipkartenfunktion 110, an einem vordefinierten Zeitpunkt oder nach einer Nutzerinteraktion mit der Chipkarte ausgeführt werden. Insbesondere kann eine Nutzeraktion den Empfang bzw. die Ermittlung der Positionsdaten und eine daran unmittelbar anschließende Schlüsselableitung initiieren. Die Schlüsselableitungsfunktion generiert aus einem im Speicher 104 gespeicherten Datenwert 120 und den von der Lokalisierungseinheit empfangenen Positionsdaten einen abgeleiteten kryptographischen Schlüssel 116. Dieser ist sowohl von dem Datenwert 120 als auch von den Positionsdaten und damit von der Position der Chipkarte abhängig.
-
Der positionsabhängige kryptographische Schlüssel 116 wird bei Ausführung der Chipkartenfunktion 110 verwendet, um eine kryptographische Operation durchzuführen. Bei der kryptographischen Operation kann es sich dabei um die Verschlüsselung oder Signierung eines oder mehrerer Attribute 121, die in dem Speicher 104 der Chipkarte geschützt gespeichert sind, handeln. Die ein oder mehreren signierten oder verschlüsselten Attribute 121 können danach an ein anderes Computersystem, zum Beispiel das Terminal-Computersystem 160 oder ein mit diesem über ein Netzwerk verbundenes Computersystem 170 übermittelt werden.
-
Das Terminal Computersystem und/oder das weitere Computersystem 170 können eine komplementäre kryptographische Operation auf den ein oder mehreren verschlüsselten oder signierten Attributen durchführen. Bei der komplementären kryptographischen Operation kann es sich zum Beispiel um die Verifizierung der Signatur des Attributes mit einem Referenzschlüssel 162 oder um die Entschlüsselung der ein oder mehreren empfangenen verschlüsselten Attribute mit dem Referenzschlüssel 162 handeln. Der Referenzschlüssel 162 ist dabei identisch mit dem durch die Chipkarte generierten positionsabhängigen Schlüssel 116 oder bildet mit diesem zusammen ein asymmetrisches kryptographisches Schlüsselpaar.
-
Der Referenzschlüssel 162 ist in einem Speicher 136, 172 des Terminals und/oder des anderen Computersystems geschützt gespeichert. Alternativ zu einem bereits berechneten und gespeicherten Referenzschlüssel verfügt das Terminal-Computersystem 160 oder das weitere Computersystem 140 über die gleiche Schlüsselableitungsfunktion 138 wie auch die Chipkarte und hat außerdem den gleichen Datenwert 120 geschützt gespeichert bzw. ermöglicht einem Nutzer die Eingabe des Datenwertes 120 in der Form eines Passworts. 1 zeigt den Fall, dass das Terminal den Referenzschlüssel gespeichert hat, aber nicht über eine KDF verfügt, wohingegen das Computersystem 170 den Referenzschlüssel neu berechnet, jedoch sind auch andere Systeme, bei denen z. B. das Terminal keine komplementäre kryptographische Funktion ausführt oder über eine KDF verfügt möglich. Das Computersystem 170, in welchem der Referenzschlüssel nicht direkt gespeichert ist, verfügt über ein Lokalisierungsmodul 143 oder eine Schnittstelle zu einer Lokalisierungseinheit 130, um die zweiten Positionsdaten zur Berechnung des Referenzschlüssels empfangen zu können. Die Schlüsselableitungsfunktion 138 des Computersystems 170 generiert daraufhin basierend auf den zweiten Positionsdaten und dem Datenwert 120 den Referenzschlüssel 162.
-
In anderen Anwendungsszenarien und Implementierungsvarianten kann die komplementäre kryptographische Operation auch darin bestehen, ein auf dem Terminal-Computersystem 160 oder dem weiteren Computersystem 170 geschützt gespeichertes Attribut mit dem Referenzschlüssel 162 zu verschlüsseln oder zu signieren, und das verschlüsselten oder signierten Attributes an die Chipkarte zu übermitteln. In diesem Fall wird die kryptographische Operation der Chipkarte nach der komplementären kryptographischen Operation des Computersystems 160 (oder 170) ausgeführt und beinhaltet zum Beispiel die Entschlüsselung des verschlüsselten Attributes oder die Verifikation der Signatur des Attributs mit dem positionsabhängigen Schlüssel 116.
-
2 zeigt ein Flussdiagramm des Verfahrens nach einer Ausführungsform. In Schritt 202 ermittelt oder empfängt die Chipkarte 102 erste Positionsdaten, die die Position der Chipkarte zumindest näherungsweise wiedergeben. Im Schritt 204 greift die Chipkarte auf einen Datenwert 120 zu, welcher in einem geschützten Speicher 104 der Chipkarte gespeichert ist oder welcher manuell von einem Nutzer der Chipkarte über eine entsprechende Schnittstelle eingegeben wird. Schritt 204 kann auch vor oder parallel zu Schritt 202 erfolgen. In Schritt 206 wendet die Chipkarte eine Schlüsselableitungsfunktion 138 auf die Positionsdaten und auf den Datenwert 120 an um dadurch einen ersten positionsabhängigen kryptographischen Schlüssel 116 zu berechnen. Der Schlüssel 116 kann nun in Schritt 208 durch die Chipkarte zur Durchführung einer kryptographischen Operation verwendet werden. Die kryptographische Operation kann beispielsweise im Zuge der Ausführung einer Chipkartenfunktion 110 durchgeführt werden, nachdem sich ein Nutzer und gegebenenfalls weitere Geräte (wie etwa die Lokalisierungseinheit 130 und/oder Terminal 160) gegenüber der Chipkarte 102 erfolgreich authentifiziert haben und nachdem der Nutzer über eine Nutzer-Aktion die Ausführung der Chipkartenfunktion 110 initiiert.
-
3 zeigt ein Anwendungsszenario für eine Chipkarte und mehrere Lokalisierungseinheiten im Kontext eines Maut-Systems. Einen Fahrer eines Kraftfahrzeuges 300 besitzt eine Chipkarte 102. In dem Fahrzeug befindet sich ein portables oder fest installiertes Terminal T, über welches die Chipkarte 102 Daten mit einem Server-Computersystem 304 austauschen kann, z. B. über eine Mobilfunkverbindung. Das Server-Computersystem 304 dient der zentralen Erfassung der Wegstrecke, die eine Vielzahl von Kraftfahrzeugen, die bei dem Mautsystem registriert sind, zurücklegen. Die dicke gekrümmte Linie markiert den Fahrtweg des Fahrzeuges 300 ausgehend von Position P1 über P2 bis zu Position P3. Sobald sich das Fahrzeug einer immobilen Lokalisierungseinheit LE1 soweit genähert hat, dass sich die Lokalisierungseinheit innerhalb eines in einem Distance-Bounding Protokoll der Chipkarte spezifizierten Maximalabstandes 302 befindet, empfängt und verarbeitet die Chipkarte 102 Positionsdaten P1 von der Lokalisierungseinheit LE1. Dies kann zum Beispiel so erfolgen, dass die Chipkarte kontinuierlich Positionsdaten von allen Lokalisierungseinheit empfängt, deren Sendesignal hinreichend stark ist, dass ein Empfang möglich ist, aber nur solche Positionsdaten zur Schlüsselgenerierung verwendet werden, welche nachweislich von einer Lokalisierungseinheit innerhalb des Maximalabstandes 302 empfangen wurden.
-
Die Chipkarte berechnet nach Empfang der ersten Positionsdaten von der Lokalisierungseinheit LE1, die innerhalb des aktuellen Maximalabstandes liegt, einen für die Position P1 spezifischen, positionsabhängigen kryptographischen Schlüssel S1. Dieser Schlüssel wird verwendet um die Kfz-Nummer des Fahrzeuges 300 zu verschlüsseln und in verschlüsselter Weise zusammen mit den unverschlüsselten Positionsdaten P1 und gegebenenfalls zusammen mit einer Zeitinformation an den Server 304 zu senden. Entlang des Weges P1, P2, P3 sind zwei weitere Lokalisierungseinheit LE2 und LE3 installiert. Sobald sich das Fahrzeug soweit z. B. der Lokalisierungseinheit LE2 genähert hat, dass diese innerhalb des Maximalabstandes 302 des Distance-Bounding Protokolls der Chipkarte liegt, wird für die Positionen P2 ein positionsabhängiger Schlüssel S2 durch die Chipkarte berechnet. Für Position P3 wird in analoger Weise Schlüssel S3 berechnet. Mit den Schlüsseln S2 und S3 wird jeweils wie zuvor beschrieben die Kfz Nummer verschlüsselt und gegebenenfalls zusammen mit weiteren Daten an das Server-Computersystem 304 übermittelt.
-
Das Server Computersystem umfasst einen Datenspeicher 306, in welchem mehrere ortsspezifische Referenzschlüssel 308–312 gespeichert sind. Referenzschlüssel 308 ist identisch mit Schlüssel S1 oder bildet zusammen mit diesem ein asymmetrisches kryptographisches Schlüsselpaar. Referenzschlüssel 310 ist identisch mit Schlüssel S2 oder bildet zusammen mit diesem ein asymmetrisches kryptographisches Schlüsselpaar. Referenzschlüssel 312 ist identisch mit Schlüssel S3 oder bildet zusammen mit diesem ein asymmetrisches kryptographisches Schlüsselpaar.
-
In dem Speicher 306 sind die Referenzschlüssel mit den Positionsdaten P1–P3, die die Grundlage ihrer jeweiligen Berechnung darstellen, verknüpft gespeichert. Das Server-Computersystem ist daher in der Lage, nach Erhalt einer verschlüsselten Kfz-Nummer und entsprechender Ortsinformation P1, P2 oder P3 den für die Entschlüsselung geeigneten Referenzschlüssel zu identifizieren und zur Entschlüsselung zu verwenden. Die entschlüsselte Kfz Nummer kann in Verbindung mit der übermittelten Orts- und gegebenenfalls auch Zeitinformation zur automatischen Erhebung einer Maut durch das Server-Computersystem 304 verwendet werden. Das Mautsystem ist besonders sicher, da das Fahrzeug nur Positionsdaten übermittelt, welche von vertrauenswürdigen Lokalisierungseinheiten stammen (das Distance-Bounding-Protokoll garantiert eine räumliche Nähe zwischen Chipkarte und Lokalisierungseinheit) und da persönliche Daten (z. B. Kfz-Nummer) nur verschlüsselt mi Hilfe mehrerer, ortsspezifischer Schlüssel übertragen 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 Nicht-Patentliteratur
-
- Gerhard Hancke, Markus Kuhn: „An RFID distance-bounding protocol”, Proceedings SecureComm 2005 [0013]
- Stefan Brands, David Chaum: „Distance-bounding protocols (extended abstract)”, Proceedings Eurocrypt'93 [0013]