-
Querverweis zu bezogener Anmeldung
-
Diese Anmeldung beansprucht die Priorität der
koreanischen Patentanmeldung Nr. 10-2016-0161946 , die am 30. November 2016 eingereicht wurde, die durch diese Referenz hierin vollständig eingeschlossen ist, als wäre sie hierin vollständig dargelegt.
-
Hintergrund der Erfindung
-
Technisches Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft ein Verfahren zum zuverlässigen Verwalten eines Zertifikats und insbesondere eine Fahrzeug-Diagnose-Vorrichtung, die ein Verfahren zum zuverlässigen Verifizieren, ob ein Zertifikat davon gültig ist, durchführt.
-
Diskussion der bezogenen Technik
-
Fahrzeugeigene Diagnose (OBD, von engl. „on-board diagnostics“) bezeichnet eine Selbstdiagnose- und Bericht-Fähigkeit eines Fahrzeuges. Kürzlich hergestellte Fahrzeuge weisen Sensoren auf, die mittels einer elektronischen Steuereinheit (ECU, von engl. „electronic control unit“) gesteuert werden, für eine Vielzahl von Messungen und Steuerung. Ein ursprüngliches Ziel der ECU war es, Kernfunktionen eines Verbrennungsmotors wie zum Beispiel ZündzeitpunktSteuerung und Treibstoffeinspritzung, variable Ventilsteuerung (z.B. variable Ventil-Zeitpunkt-Steuerung), Ruhen, Grenzwert-Einstellung, etc. zu steuern. Indes, mit der Integration von Fahrzeugen und Computern ist die ECU jetzt verantwortlich für virtuelles Steuern aller Komponenten des Fahrzeuges wie zum Beispiel des Antriebsystems, des Bremssystems, des Lenksystems, etc.
-
Darüber hinaus wurde ein elektronisches Diagnosesystem als Antwort auf verstärkte Fahrzeug-Elektrifizierung entwickelt. Kürzlich wurde ein standardisiertes Diagnosesystem, das als Fahrzeugeigene-Diagnose-Version II (OBD-II, von engl. „on-board diagnostics version II“) bekannt ist, etabliert. Um unzertifizierten Zugriff auf kürzlich erschienene Fahrzeuge durch OBD-II-Verbindung zu verhindern, wird ein Zertifikat, das Zugriffsrechte erteilt, in Bezug auf eine Diagnose-Vorrichtung ausgestellt, sodass nur eine zertifizierte Diagnose-Vorrichtung auf das Fahrzeug zugreifen kann.
-
Wenn ein solches Zertifikat nicht mehr gültig ist, z.B. aufgrund einer Änderung von einer Beziehung von einer Zertifikat-Autorität, von einem Fahrzeug-Hersteller und einem Diagnose-Vorrichtung-Hersteller oder einer technischen Änderung, wird das Zertifikat widerrufen (z.B. gesperrt). Das widerrufene (z.B. gesperrte) Zertifikat wird dann in Form einer Zertifikatsperrliste (CRL, z.B. Zertifikatwiderrufliste, von engl. „certificate revocation list“) verwaltet, die an ein Fahrzeug geliefert wird. Dementsprechend akquiriert das Fahrzeug die CRL und verifiziert, ob das Zertifikat der Diagnose-Vorrichtung widerrufen (z.B. gesperrt) ist.
-
Indes, in einer Fahrzeug-Umgebung, in welcher keine kabellose Verbindung zur Akquisition der CRL verfügbar ist (das heißt, das Fahrzeug ist offline), ist es schwierig für das Fahrzeug, zu ermitteln, ob das Zertifikat widerrufen (z.B. gesperrt) ist. Sogar wenn die CRL zu dem Fahrzeug durch die Diagnose-Vorrichtung übertragen ist/wird, ist es z.B. schwierig, die CRL in einer Schnittstelle (z.B. einem Gateway) oder einer ECU, die schlechte Rechenleistung und einen nicht ausreichenden Speicherplatz hat, zu verfizieren, zu speichern und zu aktualisieren.
-
Dementsprechend gibt es einen Bedarf für ein Verfahren zum zuverlässigen Verifizieren der Gültigkeit eines Zertifikats einer Diagnose-Vorrichtung für ein Fahrzeug, das schlechte Rechen-/Speicherkapazität hat, oder ein Fahrzeug in einem Offline-Modus.
-
Erläuterung der Erfindung
-
Dementsprechend ist die vorliegende Offenbarung/Erfindung auf eine Fahrzeug-Diagnose-Vorrichtung und ein Verfahren zum Verwalten eines Zertifikats davon gerichtet, die im Wesentlichen ein oder mehr Probleme aufgrund von Einschränkungen und Nachteilen der bezogenen Technik vermeiden.
-
Ein Ziel der vorliegenden Offenbarung/Erfindung ist es, ein Verfahren zum zuverlässigen Verifizieren der Gültigkeit eines Zertifikats einer Diagnose-Vorrichtung und eine Vorrichtung dafür bereitzustellen, insbesondere in Fällen eines Offline-Fahrzeuges oder eines Fahrzeuges, das eine Niedrige-Leistung-Steuereinheit darin montiert hat.
-
Zusätzliche Vorteile, Ziele und Merkmale der Offenbarung/Erfindung werden zum Teil in der folgenden Beschreibung dargelegt und werden zum Teil für einen Fachmann nach Prüfung des Folgenden ersichtlich oder können aus der Praxis (z.B. Ausführung) der Offenbarung/Erfindung gelernt werden. Die Ziele und andere Vorteile der Offenbarung/Erfindung können realisiert und erreicht (z.B. erzielt) werden mittels der Struktur, die insbesondere in der schriftlichen Beschreibung und den Patentansprüchen hiervon sowie in den angehängten Zeichnungen aufgezeigt ist.
-
In Übereinstimmung mit Ausführungsformen der Offenbarung/Erfindung weist ein Verfahren zum Durchführen von Diagnose-Kommunikation mit einem Fahrzeug unter Verwendung einer Diagnose-Vorrichtung auf: Akquirieren einer Zertifikatsperrliste (CRL, z.B. Zertifikatwiderrufliste, von engl. „certificate revocation list“), die zu einem Zertifikat der Diagnose-Vorrichtung korrespondiert, von einer externen Vorrichtung, Verifizieren einer Gültigkeit des Zertifikats unter Verwendung der akquirierten CRL, Durchführen von Authentifikation mit dem Fahrzeug, wenn die Gültigkeit des Zertifikats verifiziert ist, und Beginnen von Diagnose-Kommunikation zwischen der Diagnose-Vorrichtung und dem Fahrzeug, wenn die Authentifikation durchgeführt ist.
-
Darüber hinaus weist gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung eine Diagnose-Vorrichtung zum Durchführen von Diagnose-Kommunikation mit einem Fahrzeug auf: einen Speicher, der ein Zertifikat der Diagnose-Vorrichtung speichert, eine Kommunikationseinheit, die eine Zertifikatsperrliste (CRL, z.B. Zertifikatwiderrufliste, von engl. „certificate revocation list“), die zu dem Zertifikat korrespondiert, von einer externen Vorrichtung akquiriert, einen Fahrzeug-Verbinder, der Kommunikation mit dem Fahrzeug durchführt, und einen Prozessor, der eine Gültigkeit des Zertifikats unter Verwendung der akquirierten CRL verifiziert, der Authentifikation mit dem Fahrzeug durch den Fahrzeug-Verbinder durchführt, wenn die Gültigkeit des Zertifikats verifiziert ist, und der Diagnose-Kommunikation zwischen der Diagnose-Vorrichtung und dem Fahrzeug startet, wenn die Authentifikation durchgeführt ist.
-
Die Effekte, die mittels der vorliegenden Offenbarung/Erfindung erhalten (z.B. erlangt) werden, sind nicht auf die oben beschriebenen Effekte beschränkt und die anderen Vorteile der vorliegenden Offenbarung/Erfindung werden aus der folgenden ausführlichen Beschreibung klarer verstanden.
-
Figurenliste
-
Die begleitenden Zeichnungen, die enthalten sind, um ein weiteres Verständnis der Offenbarung/Erfindung bereitzustellen, und die enthalten sind in und einen Teil bilden von dieser Anmeldung, stellen eine Ausführungsform/Ausführungsformen der Offenbarung/Erfindung dar und dienen zusammen mit der Beschreibung dazu, das Prinzip der Offenbarung/Erfindung zu erklären. In den Zeichnungen ist:
- 1 ein Diagramm, das ein Beispiel der Struktur eines Zertifikat-Verwaltung-Systems gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung zeigt,
- 2 ein Flussdiagramm, das ein Beispiel eines Diagnose-Vorrichtung-Authentifizierung-Verfahrens, das zwischen einer Diagnose-Vorrichtung und einem Fahrzeug durchgeführt wird, gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung zeigt,
- 3 ein Diagramm, das ein Beispiel einer Zertifikatsperrliste(CRL, z.B. Zertifikatwiderrufliste, von engl. „certificate revocation list“)-Verwaltung-Anordnung (z.B. eines Zertifikatsperrliste-Verwaltung-Formulars) und einen Vorgang des Akquirierens einer CRL in einer Diagnose-Vorrichtung zeigt,
- 4 ein Diagramm, das eine Puffer-Überlauf-Attacke und ein Kanarienvogel-Verfahren (z.B. Zufallszahl-Verfahren, von engl. „Canary method“) zum Verhindern derselben gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung darstellt, und
- 5 ein Diagramm, das ein Beispiel der Struktur einer Diagnose-Vorrichtung gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung zeigt.
-
Es ist zu verstehen, dass die oben referenzierten Zeichnungen nicht notwendigerweise maßstabsgetreu sind und eine etwas vereinfachte Darstellung verschiedener bevorzugter Merkmale darstellen, welche die Grundprinzipien der Offenbarung/Erfindung erklären. Die spezifischen Konstruktionsmerkmale der vorliegenden Offenbarung/Erfindung inklusive z.B. spezifischer Dimensionen, Orientierungen, Positionen und Formen werden zum Teil durch die spezielle beabsichtigte Anwendung und Nutzungsumgebung bestimmt.
-
Ausführliche Beschreibung
-
Nachfolgend werden die Ausführungsformen der vorliegenden Erfindung ausführlich mit Bezug auf die begleitenden Zeichnungen beschrieben, um einfach (z.B. auf einfache Weise) von einem Fachmann implementiert zu werden. Indes kann die vorliegende Offenbarung/Erfindung verschiedenartig (z.B. auf verschiedene Weisen) implementiert sein/werden und ist nicht auf die hierin beschriebenen Ausführungsformen beschränkt. In den Zeichnungen, um die vorliegende Offenbarung/Erfindung klar zu beschreiben, werden Abschnitte, die nicht auf die Beschreibung der vorliegenden Offenbarung/Erfindung bezogen sind, weggelassen und werden ähnliche Abschnitte durch die Beschreibung hinweg mit ähnlichen Bezugszeichen bezeichnet.
-
Durch die Beschreibung hinweg, wenn ein bestimmter Abschnitt eine bestimmte Komponente „aufweist“, kennzeichnet das, dass die anderen Komponenten nicht ausgeschlossen sind, sondern ferner enthalten sein können, außer es ist spezifisch anders beschrieben. Dieselben Bezugszeichen werden durch die Zeichnungen hinweg verwendet, um dieselben oder ähnliche Teile zu bezeichnen.
-
Die hierin verwendete Terminologie dient lediglich dem Zweck des Beschreibens von bestimmten Ausführungsformen und ist nicht dazu gedacht, die Offenbarung/Erfindung zu beschränken. Die wie hierin verwendeten Singularformen „ein“, „eine“ und „der“, „die“, „das“ sind dazu gedacht, auch die Pluralformen einzuschließen, außer der Kontext weist eindeutig auf etwas anderes hin. Ferner ist zu verstehen, dass die Begriffe „aufweisen“ und/oder „aufweisend“ bei Verwendung in dieser Beschreibung das Vorliegen von genannten Merkmalen, ganzen Zahlen, Schritten, Vorgängen, Elementen und/oder Komponenten davon spezifizieren, aber nicht die Anwesenheit oder den Zusatz von einem oder mehr anderen Merkmalen, ganzen Zahlen, Schritten, Vorgängen, Elementen, Komponenten und/oder Gruppen davon ausschließen. Wie hierin verwendet weist der Begriff „und/oder“ jede sowie alle Kombinationen von einem oder mehreren der dazugehörig aufgezählten Gegenstände auf.
-
Es ist zu verstehen, dass die Begriffe „Fahrzeug“ oder „Fahrzeug-...“ oder ein anderer ähnlicher Begriff, welcher hier verwendet wird, Kraftfahrzeuge im Allgemeinen einschließt, welche Personenkraftfahrzeuge einschließlich von Sportnutzfahrzeugen (SUV), Busse, Lastwagen, zahlreiche Nutzfahrzeuge, Wasserfahrzeuge, einschließlich einer Vielzahl an Booten und Schiffen, Flugzeuge und dergleichen einschließen, sowie welche Hybridfahrzeuge, elektrische Fahrzeuge, Plug-in Hybridelektrofahrzeuge, wasserstoffbetriebene Fahrzeuge und andere Fahrzeuge für alternative Treibstoffe (z.B. Treibstoffe, welche aus anderen Ressourcen als Erdöl hergestellt werden) einschließen. Ein Hybridfahrzeug, auf welches hierin Bezug genommen wird, ist ein Fahrzeug, das zwei oder mehr Leistungsquellen hat, z.B. Fahrzeuge, welche sowohl mit Benzin als auch elektrisch betrieben werden.
-
Darüber hinaus ist es zu verstehen, dass ein oder mehr der untenstehenden Verfahren oder Aspekte davon von mindestens einer Steuereinheit ausgeführt werden können. Der Begriff „Steuereinheit“ kann sich auf eine Hardware-Vorrichtung beziehen, die einen Speicher und einen Prozessor aufweist. Der Speicher ist eingerichtet, Programmanweisungen zu speichern, und der Prozessor ist insbesondere programmiert, die Programmanweisungen auszuführen, um einen oder mehr Vorgänge durchzuführen, die unten weiter beschrieben sind. Darüber hinaus ist es zu verstehen, dass die untenstehenden Verfahren von einer Vorrichtung ausgeführt werden können, welche die Steuereinheit in Verbindung mit einer oder mehr anderen Komponenten aufweist, wie es von einem Fachmann gewürdigt würde.
-
Darüber hinaus kann die Steuereinheit der vorliegenden Offenbarung/Erfindung als nicht-flüchtiges, computerlesbares Medium ausgeführt sein, welches ausführbare Programminstruktionen aufweist, die von einem Prozessor, der Steuereinheit oder dergleichen ausgeführt werden. Beispiele der computerlesbaren Medien weisen auf, sind aber nicht beschränkt auf, ROM, RAM, Kompakte-Scheibe(CD, von engl. „compact disc“)-ROMs (z.B. CD-ROMs), Magnetbänder, Disketten, Speicherlaufwerke, Chipkarten und optische Speichervorrichtungen. Das computerlesbare Aufzeichnungsmedium kann auch durch ein Computer-Netzwerk verteilt sein, sodass die Programminstruktionen in einer verteilten Art gespeichert sind und ausgeführt werden, z.B. durch einen Telematikserver oder ein Steuereinheit-Bereich-Netzwerk (CAN, von engl. „Controller Area Network“).
-
Jetzt bezugnehmend auf Ausführungsformen der vorliegenden Offenbarung/Erfindung: In einer Offline-Umgebung oder in einer Umgebung eines Fahrzeuges, das eine Steuereinheit hat, die eine Zertifikatsperrliste(CRL, z.B. Zertifikatwiderrufliste, von engl. „certificate revocation list“) nicht verifizieren oder speichern kann, akquiriert und verifiziert ein Fahrzeug die CRL nicht mit Bezug auf eine Diagnose-Vorrichtung und stattdessen akquiriert die Diagnose-Vorrichtung die CRL und verifiziert eine Gültigkeit eines Zertifikats davon.
-
Zuerst wird ein Verfahren des Erzeugens und Lieferns einer CRL zu einer Diagnose-Vorrichtung mit Bezug auf 1 beschrieben.
-
1 ist ein Diagramm, das ein Beispiel der Struktur eines Zertifikat-Verwaltung-Systems gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung zeigt.
-
Wie in 1 gezeigt kann das Zertifikat-Verwaltung-System gemäß der vorliegenden Offenbarung/Erfindung aufweisen einen Zertifikat-Ausstellen-Server 10, einen Aktualisierungsserver 20 und eine Diagnose-Vorrichtung 30. Die Server und die Diagnose-Vorrichtung können mittels Kabel oder kabellos verbunden sein, obwohl die vorliegende Offenbarung/Erfindung nicht auf irgendein Verbindungsverfahren beschränkt ist.
-
Nachfolgend werden Komponenten ausführlich beschrieben.
-
Zuerst erzeugt der Zertifikat-Ausstellen-Server 10 eine Fahrzeugdedizierte CRL-Information 120, die zu einer Zertifikat-Information 110 von der Mehrzahl von Diagnose-Vorrichtungen korrespondiert, gemäß einer vorbestimmten Erzeugungsregel und liefert die CRL-Information zu dem Aktualisierungsserver 20. Gemäß der Erzeugungsregel kann eine maximale Anzahl von Diagnose-Vorrichtung-Zertifikat-Informationen, die in einer CRL enthalten sein können, eine Erzeugung (z.B. ein Erzeugung-Zeitraum) (oder ein Aktualisierung-Zeitraum) der CRL, ein Zeitraum zum Liefern einer erzeugten (oder aktualisierten) CRL zu dem Aktualisierungsserver, etc. definiert sein/werden. Eine Beziehung zwischen der Zertifikat-Information 110 und der CRL-Information 120 wird ausführlicher mit Bezug auf 3 beschrieben.
-
Der Aktualisierungsserver 20 ist verantwortlich für ein Verwalten der CRL-Information 120', die von dem Zertifikat-Ausstellen-Server 10 empfangen wird, und ein Liefern einer CRL 121", die zu einem Zertifikat 111" der Diagnose-Vorrichtung 30 korrespondiert, wenn die Diagnose-Vorrichtung 30 die CRL anfordert oder bei einem vorbestimmten Zeitraum (z.B. zu einem vorbestimmten Zeitpunkt).
-
Die Diagnose-Vorrichtung 30 akquiriert die CRL 121", die zu dem Zertifikat 111" der Diagnose-Vorrichtung 30 korrespondiert, verifiziert eine Gültigkeit des Zertifikats und führt Fahrzeug-Diagnose nur durch, wenn das Zertifikat gültig ist.
-
Zum Beispiel, wenn Zertifikat #1 111 in Vorrichtung-Zertifikat-Information 110 des Zertifikat-Ausstellen-Servers 10 widerrufen (z.B. gesperrt) ist/wird, schreibt der Zertifikat-Ausstellen-Server 10 eine Information über Zertifikat #1 111 in CRL #1 121, die zu Zertifikat #1 111 in der CRL-Information 120 korrespondiert.
-
Die CRL-Information 120, welche CRL #1 121 aufweist, in welche die Information über das Zertifikat #1 geschrieben ist, wird von dem Zertifikat-Ausstellen-Server 10 zu dem Aktualisierungsserver 20 geliefert (120'). Danach, wenn die Diagnose-Vorrichtung 30 eine CRL anfordert, die zu Zertifikat #1 111" der Diagnose-Vorrichtung 30 für Fahrzeug-Diagnose korrespondiert, stellt der Aktualisierungsserver 20 CRL #1 121', die von dem Aktualisierungsserver 20 verwaltet ist/wird, der Diagnose-Vorrichtung 30 bereit. Die Diagnose-Vorrichtung 30 verifiziert die Gültigkeit von CRL #1 121", die von der Diagnose-Vorrichtung 30 akquiriert ist, und verifiziert Gültigkeit von Zertifikat #1 111" der Diagnose-Vorrichtung 30 unter Verwendung von CRL #1 121" nach dem Ermitteln, dass CRL #1 121" gültig ist.
-
Als ein Ergebnis der Verifikation zeigt CRL #1 an (z.B. kennzeichnet CRL #1), dass Zertifikat #1 widerrufen (z.B. gesperrt) ist. Daher führt die Diagnose-Vorrichtung 30 Fahrzeug-Diagnose nicht aus.
-
Als nächstes wird Kommunikation zwischen der Diagnose-Vorrichtung und dem Fahrzeug mit Bezug auf 2 beschrieben. 2 ist ein Flussdiagramm, das ein Beispiel eines Diagnose-Vorrichtung-Authentifizierung-Verfahrens, das zwischen einer Diagnose-Vorrichtung und einem Fahrzeug durchgeführt wird, gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung zeigt.
-
Wie in 2 gezeigt akquiriert die Diagnose-Vorrichtung 30 die CRL, die zu dem Zertifikat der Diagnose-Vorrichtung 30 korrespondiert, von dem Aktualisierungsserver 20 (S210), um Fahrzeug-Diagnose durchzuführen, und verifiziert eine Gültigkeit der CRL (S220). Das Verfahren des Verifizierens der Gültigkeit der CRL kann durchgeführt werden mittels Ermitteins der Ablauffrist und des Ausstellers der CRL oder kann durchgeführt werden unter Verwendung eines zusätzlichen Verifikation-Verfahrens. Zum Beispiel kann das Gültigkeit-Verifikation-Verfahren (z.B. das zusätzliche Verifikation-Verfahren) durchgeführt werden durch ein symmetrisches/asymmetrisches Schlüssel-Authentifizierung-Verfahren mit dem Aktualisierungsserver 20, durch das Zertifikat der CRL oder unter Verwendung eines Integrität-Überprüfen-Verfahrens wie zum Beispiel CRC. Natürlich ist ein solches Gültigkeit-Verifikation-Verfahren exemplarisch und die Ausführungsformen der vorliegenden Offenbarung/Erfindung sind/werden nicht durch irgendein spezielles Gültigkeit-Verifikation-Verfahren eingeschränkt.
-
Wenn die Gültigkeit der CRL verifiziert ist/wird, ermittelt die Diagnose-Vorrichtung 30 eine Information, die das Zertifikat der Diagnose-Vorrichtung 30 (das heißt, die CRL) betrifft, und verifiziert die Gültigkeit des Zertifikats (S230).
-
Wenn das Zertifikat gültig ist, überträgt die Diagnose-Vorrichtung 30 das Zertifikat davon (S240) zu dem Fahrzeug 40 zusammen mit einer Anforderung zum Beginnen von Kommunikation (z.B. gemäß OBD-II-Protokoll).
-
Das Fahrzeug 40, welches das Zertifikat der Diagnose-Vorrichtung 30 akquiriert hat, überträgt eine Zufallszahl (z.B. eine zufällige Zahl) zu der Diagnose-Vorrichtung 30 (S250).
-
Die Diagnose-Vorrichtung 30, welche die Zufallszahl empfangen hat, verschlüsselt die Zufallszahl unter Verwendung eines privaten Schlüssels der Diagnose-Vorrichtung und übertragt die verschlüsselte Zufallszahl zu dem Fahrzeug 40 zusammen mit einem Ergebnis des Verifizierens der Gültigkeit (S260).
-
Das Fahrzeug 40 dekodiert (z.B. entschlüsselt) die verschlüsselte Zufallszahl zum Ermitteln des Eigentümers des Zertifikats und zum Verhindern einer Wiederverwendung-Attacke mit einem öffentlichen Schlüssel der Diagnose-Vorrichtung, der in dem Zertifikat enthalten ist, und verifiziert die Echtheit des Zertifikats (S270). Darüber hinaus vergleicht das Fahrzeug 40 das Ergebnis des Verifizierens der Gültigkeit davon mit dem Ergebnis des Verifizierens der Gültigkeit, das von der Diagnose-Vorrichtung 30 empfangen wird/wurde.
-
Wenn das oben beschriebene Verfahren erfolgreich durchgeführt ist/wird, können die Diagnose-Vorrichtung 30 und das Fahrzeug 40 normale Diagnose-Kommunikation durchführen.
-
Als nächstes wird eine Beziehung zwischen einer CRL und einem Zertifikat mit Bezug auf 3 beschrieben.
-
3 ist ein Diagramm, das ein Beispiel einer Zertifikatsperrliste(CRL, z.B. Zertifikatwiderrufliste, von engl. „certificate revocation list“)-Verwaltung-Anordnung (z.B. eines Zertifikatsperrliste(CRL, z.B. Zertifikatwiderrufliste, von engl. „certificate revocation list“)-Verwaltung-Formulars) und einen Vorgang des Akquirierens einer CRL in einer Diagnose-Vorrichtung zeigt.
-
In 3 kann angenommen werden, dass die Diagnose-Vorrichtung 30 ein Zertifikat 300 hat, das zu einer Identifikationsnummer 82 korrespondiert, der Aktualisierungsserver 20 eine Mehrzahl von CRLs verwaltet und eine CRL-Information über ein Maximum von 50 widerrufenen (z.B. gesperrten) Zertifikaten aufweist.
-
Zum Beispiel kann CRL #1 121' widerrufene (z.B. gesperrte) Zertifikate, die Identifikationsnummern 1 bis 50 haben, aufweisen und CRL #2 122" kann widerrufene (z.B. gesperrte) Zertifikate, die Identifikationsnummern 51 bis 100 haben, aufweisen.
-
Die Anzahl an widerrufenen (z.B. gesperrten) Zertifikaten pro CRL kann aus den folgenden Gründen festgelegt sein/werden.
-
Da Leerlauf-RAM einer allgemeinen Diagnose-Vorrichtung eine Kapazität von weniger als 10 kb hat, kann die Größe der CRL für optimalen Betrieb auf weniger als 1k (z.B. 1kb) eingestellt sein/werden. Dementsprechend kann die Größe der CRL auf weniger als 800 Bytes festgelegt sein/werden. Zu dieser Zeit kann die CRL 50 widerrufene (z.B. gesperrte) Zertifikate aufweisen. Natürlich sind die maximale Größe der CRL, die Anzahl an widerrufenen (z.B. gesperrten) Zertifikaten pro CRL, etc. nur Beispiele und sind nicht darauf beschränkt.
-
Bezugnehmend auf 3 kann die Diagnose-Vorrichtung 30 die CRL von dem Aktualisierungsserver 20 anfordern (S310), um die Gültigkeit des Zertifikats zu verifizieren, um Fahrzeug-Diagnose durchzuführen. Zu dieser Zeit kann die Diagnose-Vorrichtung ebenso die Identifikationsnummer #82 des Zertifikats davon übertragen.
-
Da die Information über die Identifikationsnummer 82 in CRL #2 122' enthalten ist, kann der Aktualisierungsserver 20 CRL #2 122' zu der Diagnose-Vorrichtung übertragen (S320).
-
Währenddessen ermittelt gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung die Diagnose-Vorrichtung 30 die Gültigkeit des Zertifikats davon durch die CRL, um zu ermitteln, ob Fahrzeug-Diagnose durchgeführt ist/wird. Dementsprechend kann, wenn ein Nutzer der Diagnose-Vorrichtung eine Betriebslogik (z.B. Verfahrenslogik, Funktionslogik) der Diagnose-Vorrichtung verändert (z.B. hackt), um die Verifikation der Gültigkeit des Zertifikats unter Verwendung der CRL zu überspringen, sogar wenn das Zertifikat widerrufen (z.B. gesperrt) ist, da nur Integrität-Verifikation des Zertifikats in dem Fahrzeug durchgeführt werden kann, in dem Fall, in dem das Fahrzeug Verifikation unter Verwendung der CRL nicht durchführt, die Diagnose-Vorrichtung eine Fahrzeug-Diagnose unter Verwendung des widerrufenen (z.B. gesperrten) Zertifikats durchführen. Daher kann verhindert werden, dass Verifikation der Gültigkeit des Zertifikats weggelassen (z.B. übersprungen) wird, unter Verwendung eines Kanarienvogel-Verfahrens (z.B. Zufallszahl-Verfahrens, von engl. „Canary method“), welches mit Bezug auf 4 beschrieben wird.
-
4 ist ein Diagramm, das eine Puffer-Überlauf-Attacke und ein Kanarienvogel-Verfahren zum Verhindern derselben gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung darstellt.
-
Zuerst, bezugnehmend auf (a) in 4, akquiriert die Diagnose-Vorrichtung 30 eine CRL, verifiziert die Gültigkeit der CRL (S410), vor dem Durchführen von Fahrzeug-Diagnose, und verifiziert die Gültigkeit eines Zertifikats, das heißt, ob ein Zertifikat davon in der CRL enthalten ist, unter Verwendung der CRL, falls die CRL gültig ist (S420). Falls das Zertifikat nicht widerrufen (z.B. gesperrt) ist/wird und gültig ist, fordert die Diagnose-Vorrichtung Authentifizierung von dem Fahrzeug an (S430), um Diagnose-Kommunikation mit dem Fahrzeug durchzuführen.
-
Hierbei wird angenommen, dass eine Funktion zum Verifizieren der Gültigkeit der CRL (A) ist, eine Funktion zum Verifizieren der Gültigkeit des Zertifikats (B) ist und eine Funktion zum Anfordern von einer Authentifizierung (C) ist. Wie in (b) in 4 gezeigt kann, falls ein Speicherbereich, in welchen eine Adresse zum Erzeugen von Überlaufen in einen Puffer 441, um die Funktion (B) aufzurufen, geschrieben ist/wird, mit einer Adresse zum Aufrufen der Funktion (C) überschrieben ist/wird, eine Authentifizierung ohne den Vorgang des Verifizierens der Gültigkeit des Zertifikats sofort angefordert werden.
-
Um ein solches Problem zu verhindern wird in der vorliegenden Ausführungsform, wenn ein spezifischer Wert nach einem Funktionseintritt moduliert ist/wird, eine Logik zum Aktivieren von Funktionsaufruf, um nach Bewegung einer Rückgabeadresse zu scheitern, aktiviert. Zum Beispiel kann, wie in (c) von
4 gezeigt, ein spezifischer Wert, der Kanarienvogel-Wert (z.B. Canary-Wert, von engl. „Canary“) 450 genannt wird, verwendet und in einen Stapel zusammen mit einer Rückgabeadresse
443 nach Funktionseintritt geschrieben sein/werden. In diesem Fall scheitert der Funktionsaufruf, wenn der Kanarienvogel-Wert
450 nach Bewegung der Rückgabeadresse
443 moduliert ist/wird. Hierbei kann der Kanarienvogel-Wert von einem Betriebssystem (OS, von engl. „operating system“) vor main() (z.B. Hauptfunktion) nach Ausführen eines Programms erzeugt werden und kann die folgende Konfiguration haben.
-
Hierbei ist der XOR-Zufallswert ein Wert, der mittels Durchführens einer XOR-Operation eines Zufallswertes und einer Adresse addr erhalten (z.B. erlangt) wird, und kann nicht mittels eines Attraktors abgeschätzt sein/werden. Darüber hinaus ist der Endwert (z.B. Terminator) eine Kombination von CR, RF, Null und -1 und kann nicht überschrieben sein/werden.
-
Zusammengefasst wird bei diesem Stapel-Pufferüberlauf-Verhindern-Verfahren eine ausgewählte kleine zufällige ganze Zahl vor einem Stapel-Rückkehr-Punkt nach Beginnen eines Programms angeordnet. Pufferüberlauf überschreibt im Allgemeinen eine Speicheradresse von einer niedrigen Stelle zu einer hohen Stelle und daher muss der Kanarienvogel-Wert überschrieben sein/werden, um den Rückkehr-Zeiger zu überschreiben. Dieser Wert verifiziert, ob eine Routine verändert ist/wird vor Verwenden der Rückgabe-Adresse des Stapels.
-
Als ein Ergebnis, da Verifikation unter Verwendung der CRL des Zertifikats der Diagnose-Vorrichtung gemäß dem oben beschrieben Verfahren nicht übersprungen werden kann, ist es möglich, ein Sicherheitsproblem zu lösen, das verursacht wird, wenn die Diagnose-Vorrichtung das Zertifikat davon verifiziert.
-
Als nächstes wird die Struktur einer Diagnose-Vorrichtung, die auf Ausführungsformen der vorliegenden Erfindung anwendbar ist, beschrieben.
-
5 ist ein Diagramm, das ein Beispiel der Struktur einer Diagnose-Vorrichtung gemäß der vorliegenden Offenbarung/Erfindung zeigt.
-
Wie in 5 gezeigt kann die Diagnose-Vorrichtung gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung aufweisen einen Fahrzeug-Verbinder 510 zum Verbinden der Diagnose-Vorrichtung mit dem Fahrzeug durch ein OBD-II-Endgerät, eine Kommunikationseinheit 520, die mit einem externen Objekt (z.B. dem Aktualisierungsserver) ausschließlich des Fahrzeuges mittels Kabel oder kabellos verbunden ist, um Daten-Austausch durchzuführen, eine Ausgabe-Einheit 530 zum sichtbaren oder hörbaren Ausgeben von Fahrzeug-Diagnose-Information oder Betriebszustandsinformation der Diagnose-Vorrichtung, einen Speicher 540 zum Speichern eines OS, eines Diagnose-Programms, eines Zertifikats, einer CRL, etc. und einen Prozessor (das heißt einen Mikrocomputer (z.B. einen Mikrorechner, Kleincomputer)) 550 zum Durchführen von Steuerung und Betrieb gemäß Software, die in dem Speicher 540 gespeichert ist.
-
Das heißt, dass in dem oben beschriebenen Vorgang eine Anforderung und eine Akquisition der CRL unter Steuerung des Prozessors 550 durchgeführt werden kann, und ein Vorgang des Durchführens von Kommunikation mit dem Fahrzeug kann durch den Fahrzeug-Verbinder 550 unter Steuerung des Prozessors 550 durchgeführt werden. Zum Beispiel kann der Prozessor 550 eine Nachricht interpretieren, die durch den Fahrzeug-Verbinder 550 empfangen ist/wird, einen Vorgang (z.B. Verschlüsselung, Dekodieren (z.B. Entschlüsseln), Signatur, MAC-Erzeugung, etc.) durchführen, der zu der Nachricht korrespondiert, eine Nachricht erzeugen, die zu dem Ergebnis korrespondiert (imstande, Daten zu enthalten und zu übertragen, die gemäß dem Ergebnis akquiriert sind/werden), und die Nachricht durch den Fahrzeug-Verbinder 510 übertragen.
-
Gemäß Ausführungsformen der vorliegenden Offenbarung/Erfindung ist es möglich, zuverlässiger Gültigkeit eines Zertifikats einer Diagnose-Vorrichtung zu verifizieren.
-
Insbesondere akquiriert die Diagnose-Vorrichtung eine CRL, um das Zertifikat der Diagnose-Vorrichtung zu verifizieren. Da verhindert wird, dass ein Verifikationsvorgang übersprungen wird, kann die Diagnose-Vorrichtung das Zertifikat davon zuverlässig verifizieren, sogar in einer Umgebung, in welcher ein Fahrzeug in einem Offline-Zustand ist.
-
Die obigen Ausführungsformen dienen daher dazu, um in allen Aspekten als erklärend und nicht als einschränkend interpretiert zu werden. Der Umfang der Offenbarung/Erfindung sollte durch die angehängten Ansprüche und ihre Äquivalente und nicht nur durch die obige Beschreibung bestimmt sein/werden, und alle Änderungen, die innerhalb des Bedeutungs- und Äquivalenzbereichs der angehängten Patentansprüche kommen, sind dazu vorgesehen, darin enthalten zu sein.
-
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
-