BMW Secure Coding NCD 2.0 erklärt – signierte Codierdaten bei neuen G-Modellen

BMW Secure Coding (NCD 2.0) erklärt – Codieren bei neuen G-Modellen

Secure Coding in einem Satz

Secure Coding – oft auch NCD 2.0 genannt – bedeutet: Steuergeräte übernehmen nur noch Codierdaten, die vom Hersteller digital signiert wurden. Selbst geänderte Daten ohne gültige Signatur werden abgelehnt. Das Verfahren betrifft vor allem neuere BMW- und MINI-Modelle der G-Serie.

Warum gibt es Secure Coding?

Moderne Fahrzeuge sind rollende Netzwerke mit vielen vernetzten Steuergeräten. Damit wachsen auch die Anforderungen an IT-Sicherheit. Hersteller wollen sicherstellen, dass

  • sicherheitsrelevante Einstellungen (z. B. Bremse, Fahrwerk, Batterie) nicht unkontrolliert verändert werden,
  • Steuergeräte nur Daten aus einer vertrauenswürdigen Quelle akzeptieren,
  • gesetzliche Vorgaben zur Cybersicherheit von Fahrzeugen erfüllt werden.

Secure Coding ist also in erster Linie ein Schutzmechanismus – kein „Codier-Verbot“ an sich, aber mit großen Auswirkungen auf Hobby-Codierer.

Welche BMW-Modelle sind betroffen?

Secure Coding wurde ab etwa 2021 schrittweise eingeführt. Entscheidend ist nicht allein das Modell, sondern:

  • die I-Stufe (Softwarestand des Fahrzeugs),
  • das einzelne Steuergerät – nicht jedes Steuergerät im selben Fahrzeug nutzt Secure Coding.

Am häufigsten betroffen sind neuere G-Modelle und aktuelle Elektrofahrzeuge. Viele F-Modelle und G-Modelle mit älterem Softwarestand lassen sich weiterhin klassisch codieren.

Tipp: Wie du die I-Stufe einordnest, erklären wir in I-Level & I-Step erklärt.

Die wichtigsten Begriffe beim Codieren

Begriff Bedeutung
FA Fahrzeugauftrag – Liste der Ausstattung (SA-Codes) und Baudaten.
SVT Steuergeräte-Verbautabelle – welche Steuergeräte mit welcher Software verbaut sind.
CAFD Codierdatei eines Steuergeräts – enthält die Einstellungen.
NCD Die konkreten Codierdaten, die aus FA und CAFD erzeugt werden.
FDL „Funktionsdatenliste“ – einzelne Werte gezielt ändern (z. B. „aktiv“ statt „nicht_aktiv“).
VO-Codierung Codierung anhand des Fahrzeugauftrags (Ausstattung hinzufügen/entfernen).

Praxisbeispiel: So sieht eine einfache Änderung aus

Angenommen, du möchtest eine Komfortfunktion im Karosseriesteuergerät aktivieren. Klassisch liest du die CAFD aus, suchst den passenden Parameter, setzt ihn von nicht_aktiv auf aktiv und schreibst die Daten zurück. Bei einem Steuergerät ohne Secure Coding ist die Funktion danach aktiv. Bei einem Steuergerät mit Secure Coding passt die Signatur nach der Änderung nicht mehr – das Steuergerät verweigert die Daten.

Warum klassisches Codieren scheitert

Die Signatur bezieht sich auf den kompletten Datensatz. Sobald auch nur ein Wert geändert wird, ist sie ungültig. Das Steuergerät prüft beim Schreiben und lehnt ab. Ein Neu-Signieren ist ohne Zugang zum Hersteller-Server nicht möglich.

Vorgehen bei Steuergeräten mit Secure Coding

Wenn du an einem betroffenen Fahrzeug arbeitest, solltest du strukturiert vorgehen:

  1. Ausgangszustand sichern: FA, SVT und die aktuellen Codierdaten (CAFD/NCD) speichern, bevor du irgendetwas änderst.
  2. Ziel klar festlegen: Welche Funktion soll geändert werden – und ist dafür überhaupt eine Codierung nötig oder eine Freischaltung?
  3. Gültige Daten verwenden: Signierte Codierdaten stammen nur aus offizieller Quelle, z. B. über die Online-Codierung einer Werkstatt mit Herstellerzugang.
  4. Daten einspielen: Nur mit stabiler Spannung (Ladegerät!) und stabiler Verbindung (ENET oder ICOM).
  5. Ergebnis prüfen: Funktion testen, Fehlerspeicher auslesen und bei Bedarf löschen – z. B. mit ISTA+ Standalone.

Codieren, Freischalten, Programmieren – was ist was?

Verfahren Was passiert
Codieren Einstellungen eines Steuergeräts werden angepasst (Secure Coding betrifft genau das).
FSC / Freischaltcode Eine Funktion wird per Code freigeschaltet, z. B. Navi-Karten oder CarPlay bei älteren Systemen.
SFA Freischaltung von Funktionen über das Hersteller-Backend (Funktionen „on demand“).
Programmieren / Flashen Neue Software wird auf ein Steuergerät gespielt – das ändert oft die I-Stufe.

Beispiel: Eine Funktion braucht mehrere Schritte

Nicht jede Funktion lässt sich mit einer einzigen Codierung aktivieren. Ein gutes Beispiel ist Apple CarPlay bei NBT EVO: Hier braucht es einen gültigen Freischaltcode (FSC) und die passende Codierung der Headunit. Fehlt eines davon, funktioniert die Funktion nicht. Bei neueren Systemen kommen zusätzlich Secure Coding oder eine Freischaltung über das Backend ins Spiel.

Mehr dazu: CarPlay Freischaltung für NBT EVO.

Kann man signierte Daten bearbeiten?

Kurz gesagt: nein. Signierte Codierdaten lassen sich zwar auslesen und ansehen, jede Änderung macht die Signatur aber ungültig. Das Steuergerät akzeptiert die Daten dann nicht mehr. Bei Angeboten, die das „Umgehen“ von Secure Coding versprechen, ist Vorsicht geboten – rechtlich wie technisch.

Was passiert bei einem Software-Update?

  • Ein I-Stufen-Update kann Secure Coding auf Steuergeräten aktivieren, die vorher frei codierbar waren.
  • Bei einem Update werden die Codierdaten meist neu geschrieben – eigene Codierungen gehen dabei verloren.
  • Vor jedem Update daher: Ausgangszustand sichern und prüfen, welcher Softwarestand installiert wird.

Typische Fehler und ihre Ursache

Symptom Mögliche Ursache
Codierung bricht in E-Sys mit Fehler ab Steuergerät nutzt Secure Coding, Signatur fehlt.
Codierung läuft durch, Funktion bleibt inaktiv Daten wurden verworfen oder Funktion braucht zusätzlich eine Freischaltung.
Neue Fehlerspeichereinträge nach dem Codieren Authentifizierung fehlgeschlagen oder Codierung unvollständig.
Verbindungsabbruch während des Schreibens Instabile Spannung oder ungeeignetes Kabel.

Bei Verbindungsproblemen hilft unser Beitrag zu ENET, K+DCAN & ICOM.

Sicherheitsregeln beim Codieren

  • Immer ein Batterie-Ladegerät anschließen.
  • Vor jeder Änderung den Originalzustand sichern.
  • Keine Codierungen an sicherheitsrelevanten Systemen (Bremse, Airbag, Lenkung) ohne Fachwissen.
  • Während des Vorgangs Zündung, Laptop und Verbindung nicht unterbrechen.
  • Nur bekannte, seriöse Software und Daten verwenden.

Fazit

Secure Coding ändert die Spielregeln beim Codieren neuerer BMW-Fahrzeuge: Codierdaten werden signiert, und eigene Änderungen werden bei betroffenen Steuergeräten abgelehnt. Diagnose, Fehlerspeicher und Servicefunktionen sind davon nicht betroffen. Bei älteren F- und G-Modellen mit älterem Softwarestand funktioniert klassisches Codieren mit E-Sys weiterhin. Wer ein neueres Fahrzeug hat, sollte vor jeder Änderung die I-Stufe prüfen und den Ausgangszustand sichern.

Häufige Fragen

Ist Secure Coding dasselbe wie NCD 2.0?
Ja, beide Begriffe beschreiben dasselbe Verfahren mit signierten Codierdaten.

Kann ich mit E-Sys noch codieren?
Bei Steuergeräten ohne Secure Coding ja. Bei betroffenen Steuergeräten werden geänderte Daten abgelehnt.

Betrifft Secure Coding auch die Diagnose?
Nein. Fehlerspeicher, Live-Daten und Servicefunktionen funktionieren weiterhin.

Gehen meine Codierungen bei einem Update verloren?
In vielen Fällen ja – daher vorher sichern.

Woran erkenne ich, ob mein BMW betroffen ist?
Entscheidend sind I-Stufe und Steuergerät. Beides lässt sich mit ISTA+ oder E-Sys auslesen.

Hinweis: Dieser Beitrag dient der allgemeinen Information. Codieren erfolgt auf eigene Verantwortung. Marken- und Produktnamen werden ausschließlich zur Identifikation, Beschreibung und Kompatibilitätsangabe verwendet. Bimerpro ist ein unabhängiger Anbieter und steht in keiner Verbindung zu den jeweiligen Markeninhabern. Diagnose-, Coding- und Programmierfunktionen können je nach Fahrzeug, Softwarestand, Interface und Berechtigung abweichen.