Hey, ich denke man kann das ganze sehr zweischneidig sehen:
Zum einen ist der Einsatz von Bibliotheken zu denen kein Sourcecode vorliegt ein wesentlichen Sicherheitsrisiko. Man kann an dieser Stelle keine Einfluss bzw. Kontrolle der implementierten Funktionen. Es ist eben wie in deinem Fall auch die Zertifizierung zu bedenken.
Auf der anderen Seite muss man sich vorhalten: Kann man wirklich selber umfangreiche Bibliotheken selbst besser/korrekt implementieren. Gerade bei häufig benutzen Bibliotheken wie z.B. der std-lib sollte man nicht vergessen, dass aufgrund der breiten Verwendung und langjährigen Entwicklung durch erfahrene Entwickler viele auch eher seltenere Fehler gefunden und behoben werden. Zudem muss man bedenken, dass auch wenn alle Funktionen selber geschrieben wurden, bzw. der Sourcecode zu einer Bibliothek vorliegt, man bei weitem keine Sicherheit hat, dass der Code in die korrekte Binärfunktionalität übersetzt wurde. Abhilfe schafft hier nur ein zertifizierter Compiler, und zum Beispiel der Einsatz von MISRA C als Standard, um undefinierte Zustände die der normale C Standard erlaubt zu verhindern.
Mein Fazit dazu ist:
Man kann die Unsicherheit die durch Einsatz von Bibliotheken ohne vorliegenden Sourcecode entstehen, z.B. durch Opensource umgehen, Im Kommerziellen Umfeld kann man durchaus auch auf Anfrage bzw. Lizenzzahlung auch den Sourcecode erhalten. Alternativ ist z.B. der Einsatz von Bibliotheken die mit einem zertifizierten Compiler + MISRA C Standard + der Garantie des Herstellers für Korrektheit der Funktionen erstellt wurden.
Lesezeichen