Trusted Boot mit TPM auf IBM Notebook

From
Jump to navigation Jump to search

Motivation

Ziel unseres Projekts war es, eine Möglichkeit aufzuzeigen, ein vertrauenswürdiges System einzurichten. Damit eine Plattform diese Eigenschaft wirklich gewährleisten kann, muss ab dem Bootvorgang sicher gestellt sein, dass keine Veränderungen am System vorgenommen wurden. Aus diesem Grund wählten wir das Thema "Trusted Boot" (ähnlich dem "Secure Boot") und die Implementierung mit Hilfe des "Trusted Platform Module".

=== Anmerkung === Sven, schreib mal bitte noch um :)

Trusted Platform Module

Im Folgenden eine technische Beschreibung des Trusted Platform Module (TPM). Weiterhin wird ein Überblick über die Funktionen und die Realisierung des Trusted Boot und das Erstellen von Schlüsseln sowie Zertifikaten gegeben.

Allgemein

Der Hauptbestandteil des TPM ist ein Chip als Teil einer Spezifikation zur Verifizierung der Vertrauenswürdigkeit von IT-Systemen. Am ehesten kann man ihn mit einer Smart-Card vergleichen, mit dem Unterschied, dass er nicht an einen Benutzer, sondern an ein System gebunden ist. Dadurch ist eine hardwareseitige Modifizierung nutzlos, da alle Daten, die mit Hilfe des Chips geändert/verschlüsselt wurden, nur auf dem entsprechenden System gelesen/entschlüsselt werden können, selbst wenn dieser auf einer anderen Plattform installiert wird. Standartmäßig ist dieses Bauelement auf dem entsprechenden System deaktiviert und ist auch nur ein passives Bauelement. Es bietet zwar eine vielzahl von Sicherheitsfunktionen an, die jededoch alle von Außen angestoßen werde müssen. Somit kann der Chip keinen direkten Einfluss auf den Bootvorgang oder das laufende System nehmen. Die zwei Hauptfunktionen des Chips sind zum Einen das Auslesen systemspezifischer Referenzwerten und das Verarbeiten dieser.

Funktionsbausteine

Schlüssel

Als Grundlage aller Verschlüsselungen und zur Gewährleistung eines vertrauenswürdigen Systems exisiteren drei Arten von Schlüssel, die nun genauer vorgestellt werden.

Endorsement-Key (EK)

  • 2048 bit RSA-Schlüssel
  • eindeutiges private/public - Schlüsselpaar
  • Gesch¨utzt durch Endorsement-Zertifikat vom Hersteller des TPM, der die Einhaltung der TCG-Spezifizierungenbestätigt

Attestation-Identity-Key (AIK)

  • 2048 bit RSA-Schlüssel
  • wird mit Hilfe des EK erstellt
  • ist anonyme Identität des Systems
  • dient zur Authentifizierung und gewährleistet Vertrauenswürdigkeit des Systems

Storage-Root-Key (SRK)

  • 2048 bit RSA-Schlüssel
  • wird bei Inbesitznahme durch den Owner erzeugt (TPM_TakeOwnership)
  • dient zur Verschlüsselung eigener Schlüssel
  • ist Wurzel der Schlüsselstruktur des TPM

Zertifikaten

PCR

Struktur

CRTM

TSS