Zum Inhalt springen

Installation von Contract Certificates nach ISO 15118-20

Wie das Contract Certificate auf das Fahrzeug kommt


 Darstellung über den Weg des Contract Zertifikats für Plug and Charge

Die Installation eines Contract Certificates gehört zu den komplexesten Zertifikatsprozessen innerhalb von ISO 15118-20. Im Gegensatz zum SECC Certificate der Ladestation muss hier nicht nur ein Zertifikat übertragen werden, sondern zusätzlich dessen privater Schlüssel. Dieser private Schlüssel darf während des gesamten Prozesses niemals ungeschützt übertragen werden und muss ausschliesslich vom Ziel-Fahrzeug entschlüsselt werden können.

An diesem Prozess sind mehrere Parteien beteiligt. Neben dem Fahrzeug (EVCC) und der Ladestation (SECC) wirken auch der Mobilitätsdienstleister (eMSP beziehungsweise Secondary Actor) sowie der Certificate Provisioning Service (CPS) mit. Die Kommunikation zwischen Fahrzeug und Ladestation ist vollständig in ISO 15118-20 definiert. Die Kommunikation zwischen Ladestation, Backend, eMSP und CPS liegt dagegen ausserhalb des Standards und wird in der Praxis meist über OCPP-basierte Backend-Systeme realisiert.

OEM Provisioning Certificate als Voraussetzung

Bevor ein Contract Certificate installiert werden kann, muss das Fahrzeug bereits über ein OEM Provisioning Certificate verfügen. Dieses Zertifikat wird vom Fahrzeughersteller während der Produktion installiert und dient als digitale Grundidentität des Fahrzeugs.

ISO 15118-20 schreibt hierzu ausdrücklich:

If no OEM provisioning certificate is available in the EVCC, the procedure described here cannot be used for contract certificate installation.

Im OEM Provisioning Certificate befindet sich die sogenannte PCID (Provisioning Certificate ID). Diese Kennung identifiziert das Fahrzeug weltweit eindeutig. Die Struktur enthält unter anderem einen dreistelligen WMI-Code des Fahrzeugherstellers, eine fahrzeugspezifische Kennung sowie eine Prüfziffer. Später verwendet der Mobilitätsdienstleister diese PCID, um die zugehörigen Ladeverträge zu identifizieren.

CertificateInstallationReq vom Fahrzeug

Der Installationsprozess beginnt mit der Nachricht CertificateInstallationReq, welche vom Fahrzeug an die Ladestation gesendet wird.

Diese Nachricht enthält mehrere sicherheitsrelevante Parameter. Der wichtigste Bestandteil ist die OEMProvisioningCertChain. Sie umfasst die vollständige Zertifikatskette des OEM Provisioning Certificates bestehend aus dem OEM Provisioning Certificate selbst, OEM Sub-CA2 und OEM Sub-CA1. Alle Zertifikate werden DER-kodiert übertragen.

Zusätzlich enthält die Nachricht die ListOfRootCertificateIDs. Diese Liste beschreibt alle V2G Root CA Zertifikate, die aktuell im Fahrzeug installiert sind. Der CPS verwendet diese Information später, um eine passende Zertifikatskette für seine Antwort auszuwählen.

Mit dem Parameter MaximumContractCertificateChains teilt das Fahrzeug mit, wie viele Contract Certificates installiert werden dürfen. ISO 15118 erlaubt grundsätzlich mehrere Plug-&-Charge-Verträge unterschiedlicher Mobilitätsanbieter im selben Fahrzeug.

Optional kann das Fahrzeug zusätzlich eine Liste bevorzugter Vertragskennungen über PrioritizedEMAIDs übermitteln.

Die gesamte CertificateInstallationReq wird anschliessend mit dem privaten Schlüssel des OEM Provisioning Certificates signiert. ISO 15118-20 fordert ausdrücklich, dass die Signatur über den Nachrichteninhalt mit dem privaten Schlüssel des OEM Provisioning Certificates erzeugt wird.

Prüfung durch die Ladestation

Nach Empfang der CertificateInstallationReq überprüft die Ladestation zunächst die OEM-Zertifikatskette sowie die digitale Signatur der Nachricht.

Hierzu verfolgt sie die Zertifikatskette bis zu einem bekannten Vertrauensanker und prüft die kryptografische Integrität der Nachricht. Kann eine dieser Prüfungen nicht erfolgreich durchgeführt werden, antwortet die Ladestation mit einem entsprechenden WARNING-ResponseCode.

Bei erfolgreicher Prüfung wird die Anfrage über das Backend an den zuständigen Mobilitätsdienstleister weitergeleitet. Dieser Kommunikationsweg ist nicht Bestandteil von ISO 15118-20 und wird üblicherweise über OCPP oder proprietäre Backend-Schnittstellen realisiert.

Erstellung des Contract Certificates durch den eMSP

Der Mobilitätsdienstleister empfängt die Anfrage und analysiert zunächst die übermittelte PCID. Anhand dieser Kennung werden sämtliche gültigen Verträge des Fahrzeugs ermittelt.

Für jeden gefundenen Vertrag wird ein neues Contract Certificate erzeugt. Gleichzeitig wird ein neues Schlüsselpaar generiert.

ISO 15118-20 fordert dabei, dass dieselbe elliptische Kurve verwendet wird wie beim OEM Provisioning Certificate des Fahrzeugs. Nutzt das OEM Provisioning Certificate beispielsweise secp521r1, muss auch das neue Contract Certificate auf secp521r1 basieren.

Der öffentliche Schlüssel wird Bestandteil des Contract Certificates. Der private Schlüssel muss später sicher an das Fahrzeug übertragen werden.

Sichere Übertragung des privaten Schlüssels

Die sichere Übertragung des privaten Contract-Certificate-Schlüssels stellt den kritischsten Teil des gesamten Prozesses dar.

Hierfür verwendet ISO 15118-20 ein ECDHE-Verfahren (Elliptic Curve Diffie-Hellman Ephemeral). Der eMSP erzeugt zunächst ein temporäres ECDHE-Schlüsselpaar. Mithilfe dieses temporären Schlüssels und des öffentlichen Schlüssels aus dem OEM Provisioning Certificate wird ein gemeinsamer Sitzungsschlüssel berechnet.

Mit diesem Sitzungsschlüssel wird der private Schlüssel des Contract Certificates anschliessend mittels AES-GCM-256 verschlüsselt.

Der Standard definiert dabei die kryptografischen Parameter sehr genau:

  • 521-Bit Private Key wird auf 528 Bit aufgefüllt
  • AES-GCM-256 als Verschlüsselungsverfahren
  • 96-Bit Initialisation Vector
  • 128-Bit Authentication Tag
  • Additional Authenticated Data bestehend aus:
    • PCID (18 Byte)
    • Subject Key Identifier des Contract Certificates (16 Byte)

Dadurch entsteht ein verschlüsseltes Datenpaket, das ausschliesslich vom vorgesehenen Fahrzeug entschlüsselt werden kann.

Nach erfolgreicher Verschlüsselung muss der eMSP sämtliche sensiblen Daten dauerhaft löschen. Dazu gehören insbesondere:

  • privater ECDHE-Schlüssel
  • Session Key
  • unverschlüsselter Contract Certificate Private Key

Signierung durch den Certificate Provisioning Service

Das verschlüsselte Installationspaket wird anschliessend an den Certificate Provisioning Service (CPS) übergeben.

Der CPS überprüft die Struktur der Daten und signiert das Element SignedInstallationData mit seinem CPS Leaf Certificate.

Diese Signatur bildet die eigentliche Vertrauensbasis für das Fahrzeug. Das Fahrzeug vertraut nicht direkt dem Contract Certificate, sondern der CPS-Signatur auf den Installationsdaten.

Hierzu enthält die spätere Antwort zusätzlich die vollständige CPSCertificateChain.

CertificateInstallationRes an das Fahrzeug

Die Ladestation sendet nun die CertificateInstallationRes an das Fahrzeug.

Diese Antwort enthält:

  • CPSCertificateChain
  • SignedInstallationData
  • EVSEProcessing
  • RemainingContractCertificateChains

Im SignedInstallationData befinden sich unter anderem:

  • Contract Certificate
  • vollständige eMSP Zertifikatskette
  • verschlüsselter privater Schlüssel
  • ephemerer ECDHE Public Key
  • Initialisation Vector
  • Authentication Tag

Damit verfügt das Fahrzeug über sämtliche Informationen, die für die Entschlüsselung und Installation benötigt werden.

Verifikation und Installation im Fahrzeug

Nach Empfang der Antwort prüft das Fahrzeug zunächst die CPSCertificateChain und verifiziert die Signatur des SignedInstallationData Elements.

Bemerkenswert ist hierbei, dass ISO 15118-20 keine direkte Vertrauensprüfung des Contract Certificates selbst fordert. Das Vertrauen entsteht ausschliesslich über die CPS-Signatur.

Anschliessend berechnet das Fahrzeug mit seinem privaten OEM-Provisioning-Schlüssel und dem mitgelieferten ECDHE Public Key denselben Sitzungsschlüssel wie zuvor der eMSP.

Mit diesem Schlüssel wird der verschlüsselte Contract-Certificate-Private-Key mittels AES-GCM-256 entschlüsselt. Der Authentication Tag bestätigt dabei die Integrität und Korrektheit der Entschlüsselung.

Nach erfolgreicher Prüfung werden Contract Certificate und privater Schlüssel in einem geschützten Speicherbereich des Fahrzeugs abgelegt. Erst ab diesem Zeitpunkt kann das Fahrzeug Plug & Charge nutzen.

Offline, Installation als Alternative

Neben dem standardisierten Online-Verfahren erwähnt ISO 15118-20 ausdrücklich die Möglichkeit einer Offline-Installation. Dabei kann ein Contract Certificate beispielsweise direkt durch den Fahrzeughersteller über Softwareupdates oder andere OEM-spezifische Mechanismen installiert werden.

Diese Variante wird in Annex H.5 beschrieben und liegt vollständig ausserhalb des eigentlichen ISO-15118-Kommunikationsprotokolls.