Naja, es gibt ja zwei Arten der "Codierung". Ein mal ist die Information bereits in der Zahl drin. Beispiel: WBA bedeutet, dass das Fahrzeug von der BMW-AG gergestellt wurde. Das ist nicht irgendwo gespeichert, sondern steckt direkt in der Zahl drin (alle BMW-AG-BMWs haben die WBA am Anfang).
Anders könnte es bei der Werksausstattung sein: Man vergibt einfach eine Seriennummer, die an sich keine Bedeutung hat. Genau wie deine Kontonummer. Niemand weiß allein dadurch, wieviel Geld du auf dem Konto hast. Erst eine Abfrage beim Server (BMW bzw. Bank) holt die benötigte Information.
Die Tatsache, dass ich auf VIN-"Decoder"-Seiten die Ausstattung herausbekomme, kann nun zweierlei bedeuten: Entweder gibt es wirklich einen Code, der entschlüsselt werden muss. Dann bräuchte man nur den Code und keinerlei weitere Infos von BMW, um den Fahrzeugzustand zu erfahren. Oder die Seiten stellen eine Verbindung zu BMW her (oder haben diese Daten kopiert) und suchen die FIN in der Datenbank, um die Informationen von BMW zu lesen.
Für den Nutzer sieht beides gleich aus (der Datenbankweg evtl. etwas langsamer).
Für eine Nachrüstung bedeutet das:
1. Weg (Info in Zahl eincodert): Die FIN würde sich ändern, wenn eine neue Ausstattung hinzukäme. Da das ja nicht sein darf (FIN ist meines Wissens lang ein Autoleben gleich), könnte man immer erkennen, was nachgerüstet wurde, weils eben beim VIN-Decoder nicht auftaucht.
2. Weg (Info ist in der Datenbank, die nur mit der FIN abgefragt wird: Die FIN bleibt gleich und BMW ändert nur die gespeicherten Daten zu dieser Nummer. Das hieße, wenn die Werkstatt Zugriff auf die BMW-Datenbank hätte, könnte man bei einer Nachrüstung durch die Werkstatt nicht mehr ermitteln (Zumindest auf den ersten Blick, wenn es nicht extra gespeichert wird), ob die Ausstattung nachgerüstet oder von Anfang an dabei war.
Ich vermute, es ist Weg 2. Aber dann ist die Frage: Können BMW-Händer (oder gar freie Werkstätten mit BMW-Software) das auch, oder geht das nur bei BMW?