Der sichere Bootvorgang bildet das Fundament der Vertrauenswürdigkeit eines Geräts im IoT. Der Artikel zeigt, wie sich die Sicherheit von Geräten implementieren lässt und wie Updates im Feld möglich sind.
Die digitale Signatur eines Computerprogramms hat dieselbe Wirkung wie ein Siegel. Durch die Versiegelung kann der Code nicht mehr verändert werden, ohne dass die Veränderungen sichtbar werden.
(Bild: Bayerisches Hauptstaatsarchiv, VBM)
Der wirksamste Schutz vor Angriffen auf die Hardware eines elektronischen Geräts ist ein Mikrocontroller, der mit der Verarbeitung der Software in einem internen, nicht veränderbaren Speicher beginnt (eine Möglichkeit, die nicht jeder Controller bietet). Da die im Mikrocontroller abgelegte Software nicht geändert werden kann, wird sie a priori als vertrauenswürdig angesehen und fungiert somit als Vertrauensbasis.
Bildergalerie
Ein solcher Schutz lässt sich mit ROM-Speicher (Read-Only Memory) realisieren. Alternativ kann ein interner Flash- (EEPROM) Speicher des Mikrocontrollers zum Ablegen der vertrauenswürdigen Software genutzt werden, sofern hinreichende Sicherheit gegeben ist.
Entweder muss ein Fuse-Mechanismus (Schmelzbrücke) vorhanden sein, der wie bei einem ROM ein Überschreiben des Flash-Inhalts nach dem Einprogrammieren unterbindet, oder es muss ein Authentifizierungs-Verfahren geben, das nur autorisierten Personen das Schreiben der vertrauenswürdigen Software in den Flash-Speicher erlaubt. Ließe sich nämlich die erste Software unkontrolliert modifizieren, dann kann kein Vertrauen garantiert werden.
Mit der „ersten Software“ ist die Software gemeint, die als erste nach dem Einschalten des Controllers ausgeführt wird. Das erklärt auch die Forderung, dass diese Software unbedingt vertrauenswürdig sein muss. Ist dies der Fall, dann kann diese Software die Signatur der Applikation verifizieren, bevor sie die Kontrolle über den Mikrocontroller abgibt. Man kann dies mit einer auf festen Fundamenten errichteten Burg vergleichen.
Nach dem Einschalten beginnt der Mikrocontroller des Geräts damit, den Vertrauensbasis-Code aus dem vertrauenswürdigen Speicher heraus zu verarbeiten. Die Hauptaufgabe des Codes besteht darin, den Applikations-Code zu starten, nachdem dessen Signatur erfolgreich verifiziert wurde.
Die Verifikation der Signatur erfolgt mithilfe eines öffentlichen Schlüssels, der zuvor mit Methode 1 (Selbstzertifizierung) oder Methode 2 (Hierarchische Zertifizierung) in den Mikrocontroller geladen wurde (siehe Kastentext).
Methoden zur Garantie eines Public Keys
Bei einem öffentlichen Schlüssel müssen die Integrität, die Authentizität und die Identität garantiert sein. Hierfür gibt es verschiedene Möglichkeiten.
Methode 1: Selbstzertifizierung. Der Empfänger des digitalen Inhalts erhält den öffentlichen Schlüssel vom Absender persönlich, oder der Absender übermittelt den öffentlichen Schlüssel auf eine Weise, die keinen Zweifel am legitimen Ursprung und der Eigentümerschaft des öffentlichen Schlüssels zulässt. In diesem Fall kann diesem öffentlichen Schlüssel (auch als Root Key bezeichnet) vertraut werden, solange er an einem Ort verwahrt wird, an dem er nicht von Unbefugten manipuliert werden kann.
Methode 2: Hierarchische Zertifizierung. Bei diesem Verfahren garantiert eine Hierarchie von Verifizierern den Ursprung des öffentlichen Schlüssels. So genannte PKIs (Public-Key-Infrastrukturen) stellen die Definitionen für solche Hierarchien zur Verfügung. Als physische Verbindung zwischen einem öffentlichen Schlüssel und der zugehörigen Identität dient ein Zertifikat. Ein solches Zertifikat wird von zwischengeschalteten Zertifizierungs-Instanzen der PKI-Hierarchie signiert.
Die so geschützten Mikrocontroller können von den Entwicklern zum Schreiben von Software, zum Laden und Ausführen der Software per JTAG und für das Debugging eingesetzt werden. Die Entwicklung wird durch einen sicheren Mikrocontroller also nicht erschwert.
(ID:43318867)
Stand vom 30.10.2020
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von redaktionellen Newslettern nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://support.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung, Abschnitt Redaktionelle Newsletter.