Wann sind „fälschungssichere“ Komponenten sinnvoll?
„Fälschungssichere“ Komponenten sind nicht neu. Schon in den 90ern fühlten sich viele Besitzer von Tintenstrahldruckern vor dem Kopf gestoßen, als die Hersteller begannen, die Kartuschen mit Chips auszustatten, die das Wiederbefüllen verhinderten. Heute ärgern sich iPhone-Besitzer über entsprechende Warnmitteilungen bezüglich einer möglicherweise unechten Batterie.
Doch gleichzeitig erledigen wir heute unbekümmert unsere Bankgeschäfte am Smartphone. Das können wir nur deshalb, weil durch digital signierte Software-Komponenten die Integrität des Geräts gewährleistet ist (hoffentlich!).
Das sind nur zwei Beispiele aus dem Konsumerbereich. Mindestens genauso wichtig (und kontrovers) ist das Thema in gewerblichen Anwendungen, zum Beispiel bei Ersatzteilen. Dies ist ein wichtiges Schnittstellenthema, mit dem wir uns als Systems Engineers definitiv auseinandersetzen sollten.
Warum fälschungssichere Komponenten?
Sicherheit ist einer der Haupttreiber von fälschungssicheren Komponenten. Das betrifft sowohl die funktionale Sicherheit als auch die Angriffssicherheit.
Eine minderwertige Kopie eines Airbags beeinflusst die funktionale Sicherheit eines Fahrzeugs.
Das Thema Angriffssicherheit dermaßen präsent, dass wir kaum weiter darauf eingehen müssen.
Doch es gibt auch andere Gründe für fälschungssichere Komponenten. An erster Stelle unterstellen wir den Herstellern gerne Gier: Sie wollen nur ihre teuren Tintenpatronen oder originalen Ersatzakkus verkaufen. Da ist auch sicherlich zum Teil etwas dran. Doch dieses Verhalten möchte ich hier nicht verurteilen, schließlich braucht jedes Produkt ein funktionierendes Geschäftsmodell.
Problematisch finde ich das Thema eher dann, wenn funktionierende Produkte durch solche Maßnahmen unbrauchbar werden, wie der Zune MP3-Player von Microsoft.
Fälschungssicherheit realisieren
Das Thema Fälschungssicherheit ist Jahrtausende alt. Siegel, Stempel, Prägungen, Drucke und ähnliches sind da die Mittel der Wahl und auch heute noch relevant. Doch solche Ansätze sind selten kontrovers. Schließlich schränken diese Techniken den Konsumenten nicht ein.
Kontrovers sind hingegen fälschungssichere Komponenten, die den Einsatz einer nicht-originalen Ersatzkomponente verhindern. Nutzer finden das in der Regel schlecht (siehe oben), insbesondere dann, wenn sie sich gegängelt fühlen. Hersteller hingegen argumentieren oft damit, dass der Nutzer geschützt werden soll.
Fälschungssicherheit kann physikalisch realisiert werden, zum Beispiel durch den Einsatz von speziellen Schrauben oder Gewinden. Doch solche Maßnahmen können vergleichsweise einfach überwunden werden. Wesentlich aufwändiger sind elektronische Maßnahmen, wie die bereits erwähnten Chips in Druckerpatronen.
Bei reinen Softwarekomponenten setzen Entwickler in der Regel auf Public-Key-Verschlüsselungsverfahren. Dabei erzeugt der Autor einer Komponente einen Hash der Software und signiert diesem mit dem öffentlichen Schlüssel des Betreibers der Infrastruktur. Dieser kann dann mit seinem privaten Schlüssel prüfen, ob die Softwarekomponente manipuliert oder ersetzt wurde.
Fälschungssicherheit im Systems Engineering
Gerade bezüglich Angriffssicherheit müssen wir systematisch vorgehen. Sicherheit muss von Anfang an berücksichtigt werden. Der Architekt muss die Sicherheitsanforderungen von Anfang an berücksichtigen. Weiterhin sind Maßnahmen zur Sicherung gegen Fälschung nur eine von vielen.
Gerade im Systems Engineering reicht es nicht aus, dass eine einzelne Komponente Fälschungssicher ist. Denn eine Kette ist so stark wie das schwächste Glied. Diese Kette besteht oft aus Hardware und Software. Daher müssen wir alle relevanten Komponenten etwas gleichstark absichern.
Grundsätzlich müssen wir nicht alle Komponenten absichern. Schließlich erhöht Fälschungssicherheit die Kosten und erhöht die Gefahr von Konfigurationsproblemen. Unter diesem Gesichtspunkt sollten wir Komponenten entsprechend klassifizieren. Doch auch hier ist Vorsicht geboten. Schließlich schaffen sich Angreifer oft über weniger kritische Komponenten den Zugang zu Systemen. Zum Beispiel brachen Hacker schon 2015 über das Infotainmentsystem in einen Jeep ein.
Fazit
Die Treiber für fälschungssichere Komponenten heute sind primär funktionale Sicherheit und Angriffssicherheit. Eine Nebenrolle spielt der Schutz von Geschäftsmodellen. Für uns als Systems Engineers ist die Angriffssicherheit die mit Abstand wichtigste Herausforderung. Die Angriffssicherheit können wir nur gewährleisten, wenn wir sie von Anfang an in die Architektur des Systems einfließen lassen. Doch selbst dann ist Fälschungssicherheit nur eines von vielen Werkzeugen, dass uns für diese Aufgabe zur Verfügung steht. Und oft ist es noch nicht einmal das beste Werkzeug.
Image by FreePhotosART from Pixabay