- Trusted Platform Module
-
Das Trusted Platform Module (TPM) ist ein Chip, nach der TCG-Spezifikation, die einen Computer oder ähnliche Geräte um grundlegende Sicherheitsfunktionen erweitert. Diese Funktionen können beispielsweise den Zielen des Lizenzschutzes und/oder denen des Datenschutzes dienen. Der Chip verhält sich in einigen Punkten wie eine fest eingebaute Smartcard, allerdings mit dem wichtigen Unterschied, dass er nicht an einen konkreten Benutzer (Benutzer-Instanz), sondern an den lokalen Computer (Hardware-Instanz) gebunden ist. Außer der Verwendung in PCs und Notebooks kann das TPM in PDAs, Mobiltelefonen und Unterhaltungselektronik integriert werden. Ein Gerät mit TPM, speziell angepasstem Betriebssystem und entsprechender Software bildet zusammen eine Trusted Computing Plattform (TC-Plattform). Eine solche „vertrauenswürdige Plattform“ kann nicht mehr entgegen den Interessen des Eigentümers bzw. Administrators genutzt werden, sofern dieser Beschränkungen festgelegt hat. Ein möglicher Vorteil für einen normalen Benutzer eines solchen Systems liegt im Schutz gegen softwareseitige Manipulation durch unbefugte Dritte.
Der Chip ist aktuell überwiegend passiv und kann weder den Bootvorgang noch den Betrieb direkt beeinflussen. Er enthält einen eindeutigen kryptografischen Schlüssel und kann damit zur Identifizierung des Rechners genutzt werden. Das ist jedoch nur möglich, wenn der Eigentümer das Auslesen dieser Information auch gestattet hat. Das TPM konnte im BIOS bisher vollständig deaktiviert werden, so dass keine seiner Funktionen zur Verfügung steht. Es ist allerdings möglich – und durchaus wahrscheinlich – dass zum Ausführen von bestimmten Anwendungen in Zukunft eine TC-Plattform mit aktivierten TPM vorausgesetzt wird.
Inhaltsverzeichnis
Grundlegende Schlüssel eines TPM
Endorsement Key (EK)
Der EK ist genau einem TPM eindeutig zugeordnet. Die Schlüssellänge ist auf 2048 Bit und der Algorithmus auf das RSA-Verfahren festgelegt. Zum einen aus Sicherheits-, zum anderen aus Datenschutzgründen darf der private Teil das TPM nie verlassen – auch ein Backup des EK ist somit ausgeschlossen. Die Erzeugung dieses Keys kann hingegen extern erfolgen. Erlaubt ist inzwischen die Löschung und Neu-Erzeugung des Schlüssels.
Laut aktueller TPM-Spezifikation kann der öffentliche Teil mit dem Kommando
TPM_ReadPubek
gelesen werden. Das Lesen kann aber mit dem KommandoTPM_DisablePubekRead
blockiert werden. Die Blockierung ist endgültig und kann nicht mehr aufgehoben werden.Storage Root Key (SRK)
Der Storage Root Key (SRK) ist ein RSA-Schlüssel mit einer Länge von 2048 Bit. Er dient allein dem Zweck, weitere benutzte Schlüssel (z. B. private Schlüssel für die E-Mail-Kommunikation eines Benutzers) zu verschlüsseln und stellt somit die Wurzel des TPM-Schlüsselbaumes dar. Wechselt der Besitzer des Rechners, wird ein neuer SRK erzeugt. Der SRK ist nicht migrierbar.
Attestation Identity Keys (AIK)
Attestation Identity Keys (AIKs) sind RSA-Schlüssel mit einer festgelegten Länge von 2048 Bit und einem fixierten öffentlichen Exponenten e = 216 + 1. Sie sind nicht migrierbar und dürfen vom TPM nur für die Signatur von PCR-Werten (Attestation) eingesetzt werden.
Das Konzept der Attestation Identity Keys wurde eingeführt, weil der Endorsement Key eines TPM nicht direkt für die Beglaubigung der Plattformintegrität (Attestation) eingesetzt werden kann. Da dieser Schlüssel immer eindeutig ist, wäre die Privatsphäre der Benutzer beeinträchtigt. Deshalb werden AIKs (quasi als Pseudonym für den EK) in solchen Beglaubigungsprozessen verwendet. Sie können vom TPM-Eigentümer in beliebiger Anzahl erzeugt werden. Um dennoch sicherzustellen, dass nur konforme TC-Plattformen gültige AIKs erstellen, müssen die Schlüssel durch eine vertrauenswürdige Dritte Partei (Trusted Third Party, hier oft auch als Privacy-CA bezeichnet) bestätigt werden. Diese Bestätigung erfolgt in Form eines AIK-Zertifikats (Credential).
Sicherheitsfunktionen des TPM
Versiegelung (sealing)
Durch Bilden eines Hash-Wertes aus der System-Konfiguration (Hard- und Software) können Daten an ein einziges TPM gebunden werden. Hierbei werden die Daten mit diesem Hash-Wert verschlüsselt. Eine Entschlüsselung gelingt nur, wenn der gleiche Hash-Wert wieder ermittelt wird (was nur auf dem gleichen System gelingen kann). Bei Defekt des TPM muss nach Aussagen von Intel die Anwendung, die Sealing-Funktionen nutzt, dafür sorgen, dass die Daten nicht verloren sind.
Auslagerung (binding/wrapping)
Das TPM kann Schlüssel auch außerhalb des Trust Storage (z. B. auf der Festplatte) speichern. Diese werden ebenfalls in einem Schlüssel-Baum organisiert und deren Wurzel mit einem Key im TPM verschlüsselt. Somit ist die Anzahl der sicher gespeicherten Schlüssel nahezu unbegrenzt.
Schutz kryptografischer Schlüssel
Schlüssel werden innerhalb des TPMs erzeugt, benutzt und sicher abgelegt. Sie müssen dieses also nie verlassen. Dadurch sind sie vor Software-Angriffen geschützt. Vor Hardware-Angriffen besteht ebenfalls ein relativ hoher Schutz (die Sicherheit ist hier mit Smartcards vergleichbar). Manche Chips sind so hergestellt, dass eine physische Manipulation die unweigerliche Zerstörung der gespeicherten Schlüssel zur Folge hat.
Bescheinigung (remote attestation)
Durch 'Bescheinigung' kann eine entfernte Partei davon überzeugt werden, dass die Trusted Computing Plattform bestimmte Fähigkeiten besitzt und sich in einem wohldefinierten Zustand (entsprechende PCR-Werte) befindet. Diese TPM-Funktionalität hat erhebliche Auswirkungen auf die Privatsphäre eines Benutzers, weshalb zur Bescheinigung der Plattformkonformität (also Fähigkeiten und Zustand) niemals der EK direkt verwendet wird sondern möglichst nur ein neu erzeugter AIK. Ferner erfordert eine Bescheinigung immer auch die explizite Zustimmung des TPM-Eigentümers.
Zurzeit sind zwei verschiedene Attestationsverfahren vorgesehen:
- Privacy CA (Trusted Third Party)
- Direct Anonymous Attestation
Die ursprünglich vorgeschlagene Lösung (TPM-Spezifikation Version 1.1) benötigt eine vertrauenswürdige Dritte Partei. Diese Privacy CA signiert alle neu erzeugten AIKs sofern die Plattform bestimmte festgelegte Richtlinien erfüllt, z. B. nachgewiesen durch gültige Zertifikate (EK Credential, TCPA Conformity Certificate, Platform Credential). Die Nachteile liegen in der notwendigen Hochverfügbarkeit und dem zentralen Angriffspunkt hinsichtlich der Privatsphäre der Benutzer.
Deshalb wurde mit der TPM-Spezifikation Version 1.2 eine als Direct Anonymous Attestation (DAA)[1] bezeichnete Technik eingeführt. Durch ein komplexes kryptographisches Verfahren (spezielles Gruppensignaturschema) kann man die vertrauenswürdige Dritte Partei einsparen und die Beglaubigung direkt zwischen den Beteiligten durchführen. Einen wichtigen Baustein dieser Technik bilden sogenannte Zero Knowledge Protokolle. Sie zeigen einem Verifizierer (Diensteanbieter) die Gültigkeit eines erzeugten AIK, ohne dass dabei Wissen über den korrespondierenden EK preisgegeben wird. Ein Intel-Mitarbeiter verglich das Prinzip mit der Lösung eines Rubiks Würfels: Er geht davon aus, dass man einem Betrachter zunächst den ungeordneten und später den geordneten Würfel zeigt. So kann man einem Dritten jederzeit klarmachen, den Lösungsweg zu kennen, ohne diesen Weg erläutern zu müssen.
Allerdings existieren auch bei DAA Einschränkungen bzgl. der gewährten Anonymität: Beispielsweise gibt es einen bestimmten Betriebsmodus (Named-Base Pseudonym, Rogue Tagging), der auf Wunsch des Verifizierers das Erkennen einer wiederholten bzw. missbräuchlichen Nutzung erlaubt. Damit ist eine Verkettung der durchgeführten Dienstanforderungen möglich, was natürlich die Anonymität einschränkt. Ferner sieht der Standard eine optionale Anonymity Revocation Authority vor, um den gesetzlichen Vorschriften einiger Staaten zu entsprechen.
Sicherer Zufallsgenerator
Die TCG-Spezifikation garantiert einen sicheren Zufallsgenerator auf dem TPM. Damit wird ein allgemeines Problem der Informatik bei der Gewinnung von Zufallswerten per Software angegangen. Die beschrittenen Wege wie Bewertung zufälliger Systemzustände oder der Auswertung von Benutzerverhalten sind problematisch. Allerdings hat auch die TCG keinen Wunderalgorithmus vorzuweisen, trotzdem garantiert sie, das Problem in Hardware angemessen zu lösen.
Verbreitung
Das TPM wird derzeit bereits von nahezu allen namhaften PC- und Notebook-Herstellern in den Produktreihen für professionelle Anwendungen angeboten.
Softwareseitig wird das TPM von verschiedenen Anbietern unterstützt:
- Acer, Asus, Dell, LG, Fujitsu Technology Solutions, HP, Lenovo, Samsung, Sony sowie Toshiba bieten eine Integration auf Ihren Rechnern an.
- Infineon bietet als Hersteller der TPM-Chips ebenfalls eine umfassende Software-Lösung an, die sowohl als OEM-Version mit neuen Computern ausgeliefert wird, als auch separat über Infineon für Rechner mit einem TPM, der dem TCG-Standard entspricht.
- Die Firma Wave Systems bietet umfassende Client- und Serversoftware an, die auf allen TPM-Chips läuft. Diese Software wird beispielsweise bei vielen Modellen von Dell und Gateway vorinstalliert.
- Microsofts Betriebssysteme Windows Vista und Windows 7 sowie Microsoft Windows Server ab Windows Server 2008 benutzen den Chip im Zusammenhang mit der enthaltenen Laufwerksverschlüsselung BitLocker.
- Apple verbaute von 2006 an mit der Einführung der Intel-Architekturen auf MacBooks vorübergehend TPMs. In aktuellen Modellen 2009-2011 sind keine TPM vorhanden. Es gibt auch keinen Treiber von Apple, nur einen Port unter GPL.[2]
Dabei gibt es auch Mischformen, wenn beispielsweise das TPM-Modul in den Ethernet-Chip integriert ist (Broadcom) und die Software „on-top“ auf Infineon basiert.
Siehe auch
- Trusted Computing
- NGSCB (früher Palladium)
- Kryptographie/Verschlüsselung
- Hardware-Sicherheitsmodul
Einzelnachweise
- ↑ Ernie Brickell and Jan Camenisch and Liqun Chen: Direct Anonymous Attestation vom 11. Februar 2004
- ↑ Amit Singh: Trusted Computing for Mac OS X vom 30. Oktober 2006
Weblinks
Kategorien:- Hardware
- IT-Sicherheit
- Kryptologisches Gerät
Wikimedia Foundation.