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:
- Ausgangszustand sichern: FA, SVT und die aktuellen Codierdaten (CAFD/NCD) speichern, bevor du irgendetwas änderst.
- Ziel klar festlegen: Welche Funktion soll geändert werden – und ist dafür überhaupt eine Codierung nötig oder eine Freischaltung?
- Gültige Daten verwenden: Signierte Codierdaten stammen nur aus offizieller Quelle, z. B. über die Online-Codierung einer Werkstatt mit Herstellerzugang.
- Daten einspielen: Nur mit stabiler Spannung (Ladegerät!) und stabiler Verbindung (ENET oder ICOM).
- 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.