Abschlussbericht
Abschlussbericht
Abschlussbericht
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Abschlussbericht</strong><br />
Trusted Sensor Node<br />
Der interne Flash ist 64 kByte groß und über einen Flash-Controller an den AMBA-Bus angeschlossen.<br />
Zusätzlich verfügt der TSN über einen externen Flash der neben dem TSN<br />
Mikrocontroller auf dem Printed Circuit Board (PCB) 3 platziert ist. Die Größe des externen<br />
Flashs ist abhängig von den verwendeten Chips und beträgt im aktuellen Design 8 MByte.<br />
Durch die Integration des internen Flashs auf dem Die bietet sich dieser für die Speicherung<br />
von sensitiven Daten an. Eine manuelle Kontaktierung ist nur mit großem technischen<br />
Aufwand und nicht ohne Beschädigung des Chipgehäuses möglich. Damit kann eine Änderung<br />
des Inhaltes des Flashs ohne die Nutzung von TSN Komponenten weitestgehend<br />
ausgeschlossen werden. Zur Sicherung des Flash-Speichers gegen Veränderungen des<br />
Inhalts durch nicht autorisierten Programmtext wird in den TSN das Sicherheitsmodul integriert.<br />
Das Modul befindet sich, wie in Abbildung 6.4 dargestellt, zwischen dem AMBA-Bus<br />
und dem Flash-Controller. Zusätzlich kann das Sicherheitsmodul den Programm Counter<br />
(PC) des LEON2-Kerns auslesen. Dies ermöglicht die Bestimmung der aktuellen Programmstelle<br />
zum Zeitpunkt des Zugriffs. Der PC des LEON2-Kerns enthält die Adresse<br />
des Befehls, der aktuell ausgeführt wird. Da der LEON2-Kern auf der Load/Store-Architektur<br />
des SPARC basiert, kann der Zugriff auf den Flash nur durch eine Load/Store-Operation<br />
erfolgen.<br />
Ein schreibender Zugriff auf den Flash darf nur durch einen autorisierten Programmcode<br />
erfolgen. Dieser muss Bestandteil der TCB sein. Die TCB (der interne Flash) wird beim<br />
TSN immer auf einem festen Bereich des Adressraumes abgebildet. Alle Instruktionen der<br />
TCB müssen sich innerhalb dieses Bereiches befinden. Wird ein schreibender Zugriff auf<br />
dem Flash von einer anderen Speicheradresse ausgeführt, wird dieser Zugriff blockiert<br />
und ein None-Maskable Interrupt (NMI) 4 generiert.<br />
Trusted Boot Chain (TBC)<br />
Ausgehend von der im vorangegangenen Abschnitt beschriebenen TCB und dem K root<br />
lässt sich für den TSN, eine sichere Bootkette TBC, aufbauen. Bei einer TBC stellt, wie in<br />
Abbildung 6.5 dargestellt, jedes Programmmodul sicher, dass das im Folgenden zu ladende<br />
und auszuführende Modul vertrauenswürdig ist. Der Nachweis der Vertrauenswürdigkeit<br />
kann mittels kryptographischer Prüfsummen erfolgen. Dabei ist bei der Verwendung<br />
von internem Flash ein Hashwert ausreichend, bei der Verwendung von externem Flash<br />
muss auf eine Signatur zurückgegriffen werden.<br />
Die TBC wird beim ersten Einbringen der TSN-Software initialisiert. Hierzu wird der Programmtext<br />
in einzelne Module unterteilt und separat eingespielt. Beim Einspielen eines<br />
Moduls wird für das Modul mittels des K root oder eines davon abgeleiteten Schlüssels<br />
eine Signatur erstellt. Die Signatur wird im internen Flash abgelegt und kann somit von außen<br />
nicht verändert werden. Eine genaue Beschreibung hierzu erfolgt im Abschnitt 6.1.2.<br />
Da nicht allgemeingültig vorausgesagt werden kann, in welcher Form die TBC aufgebaut<br />
wird, kann im Rahmen des Projektes nur ein Framework für die TBC erstellt wer-<br />
3 Printed Circuit Board ist die englische Bezeichnung für eine gedruckte Leiterplatte.<br />
4 NMI sind Interrupts, die nicht von der CPU deaktiviert und damit zwingend behandelt werden müssen.<br />
84