# Trusted Computing

Trusted Computing (TC) bedeutet, dass der Betreiber eines PC-Systems die Kontrolle über die verwendete Hard- und Software an Dritte abgeben kann. Es ist ein Konzept, das von der Trusted Computing Group (TCG) entwickelt und beworben wird. Der Ausdruck ist dem Fachausdruck Trusted System entlehnt, hat jedoch eine eigene Bedeutung. Es soll die Sicherheit erhöhen, da Manipulationen erkannt werden. Der aus dem Englischen stammende Begriff trusted wird in diesem Kontext kontrovers diskutiert, da das Konzept Vertrauen einen emotionalen Kontext besitzt und verschiedene Interpretationen zulässt. Darüber hinaus existiert mit dem Wort trustworthy im Englischen ein Begriff, der eigentlich treffender ist. Nicht die Technologie selber soll das Vertrauen sein, sondern sie schafft lediglich eine Grundlage für die Vertrauensbildung. In diesem Sinne wäre somit der Name Predictable Computing (vorhersagbar) besser und eindeutiger geeignet, um den Kern des TCG-Konzeptes zu benennen. Das Vertrauen des Besitzers oder Dritter entsteht dann erst aus der Vorhersagbarkeit des Verhaltens (s)eines Computersystems.
Trusted-Computing-Plattformen (PCs, aber auch andere computergestützte Systeme wie Mobiltelefone usw.) können mit einem zusätzlichen Chip, dem Trusted Platform Module (TPM), ausgestattet werden. Dieser kann mittels kryptographischer Verfahren die Integrität sowohl der Software-Datenstrukturen als auch der Hardware messen und diese Werte nachprüfbar und manipulationssicher abspeichern. Das Betriebssystem des Computers, aber auch Programme oder Dritte, können diese Messwerte überprüfen und damit entscheiden, ob die Hard- oder Software-Konfiguration gegebenenfalls verändert wurde. Mögliche Reaktionen sind dann z. B. eine Warnung an den Benutzer, aber auch der sofortige Programmabbruch oder der Abbruch der Netzwerk-Verbindung.
Trusted Computing benötigt als unbedingte Voraussetzung einen angepassten Bootloader und ein entsprechendes Betriebssystem, das diese Integritätsüberprüfungen auslöst und auch auswertet. Entgegen oft geäußerten Vermutungen ist das TPM dabei nur passiv beteiligt. Er kann weder selbstständig Programme überprüfen oder bewerten, noch etwa den Programmablauf unterbrechen oder gar den Start bestimmter Betriebssysteme einschränken oder verhindern.
Für das derzeit meistverbreitete TC-Verfahren definiert die Trusted Computing Group die Standards für die beteiligten Hardwaremodule und die entsprechenden Software-Schnittstellen. Das TC-Betriebssystem ist dagegen nicht standardisiert, entsprechende Implementierungen werden derzeit sowohl von der Software-Industrie als auch von Open-Source-Entwicklungsgruppen realisiert.

## Der technische Hintergrund

Trusted-Computing-Systeme bestehen aus drei wesentlichen Grundbestandteilen:
* Trusted Platform Module (TPM), das mit seinen Funktionen softwarebasierten Angriffen entgegenwirken soll
* Sichere Prozessorarchitektur (definiert durch die Prozessorhersteller)
* Sichere und vertrauenswürdige Betriebssysteme

## Die Sicherheitskette aus der TCG-Spezifikation

Der generische TCG-Ansatz ergibt neue Systemstrukturen: Während bisher Sicherheit durch zusätzliche Ebenen von Verschlüsselung oder Anti-Virus-Software erreicht werden sollte, beginnt TCG bereits auf der untersten Ebene der Plattform und dort bereits zu Beginn des Bootvorgangs eines solchen Systems. Dem TPM als zertifizierten Hardware-Sicherheitsbaustein eines vertrauenswürdigen Herstellers wird dabei a priori vertraut. Von dieser untersten Schicht wird beim Systemstart eine ununterbrochene Sicherheitskette („Chain of Trust“) bis zu den Applikationen hochgezogen. Sobald jeweils die untere Ebene über eine stabile Sicherheitsreferenz verfügt, kann sich die nächste Ebene darauf abstützen. Jede dieser Domänen baut auf der vorhergehenden auf und erwartet damit, dass im Gesamtsystem jede Transaktion, interne Verbindung und Geräteanbindung vertrauenswürdig, zuverlässig, sicher und geschützt ist.
Das TPM als Hardware-Sicherheits-Referenz stellt dabei die Wurzel („Root of Trust“) der gesamten Sicherheitskette dar. Zu Beginn wird bereits überprüft, ob sich die Signatur (und damit die Konstellation) der Plattformkomponenten verändert hat, d. h., ob eine der Komponenten (Plattenspeicher, LAN-Anschluss usw.) verändert wurde oder gar entfernt oder ersetzt wurde. Ähnliche Überprüfungsmechanismen mit Hilfe des TPM verifizieren dann nacheinander z. B. die Korrektheit des BIOS, des Bootblocks und des Bootens selbst, sowie die jeweils nächsthöheren Schichten beim Starten des Betriebssystems. Während des ganzen Startvorgangs, aber auch später, ist damit der Sicherheits- und Vertrauenszustand des Systems – allerdings nur mit Einwilligung des Plattform-Besitzers – über den TPM abfragbar. Damit kann aber auch eine kompromittierte Plattform sicher von anderen identifiziert werden und der Datenaustausch auf das angemessene Maß eingeschränkt werden. Trusted-Computing-Systeme können die Voraussetzung schaffen, dass eine wesentliche Weiterentwicklung moderner, vernetzter Plattform-Strukturen auch unter dem Gesichtspunkt der Sicherheit und des gegenseitigen Vertrauens erst möglich wird.

## Anwendungen

Die von der Trusted Computing Group (TCG) vorgesehene Leitanwendung von Trusted Computing-Plattformen ist die Unterstützung sicherer Betriebssysteme auf dem PC. Derartige Betriebssysteme befinden sich derzeit noch in der Entwicklung. Allerdings können bereits Sicherheitsfunktionen des Trusted Platform Modules (TPM) auf konventionellen Betriebssystemen wie Windows genutzt werden. Die Sicherheits-Hardware des TPM ermöglicht dabei das zuverlässige Speichern und Verwaltung von kritischen Daten wie etwa von Schlüsselmaterial für Sicherheitsapplikationen oder digitalen Zertifikaten für elektronische Signaturen. Zur Nutzung dieser Sicherheitsfunktionen wird neben dem TPM zusätzliche Software benötigt. Ein Beispiel ist der Festplattenverschlüsseler BitLocker, der in einigen neueren Windows-Versionen enthalten ist. Eine weitere bereits realisierte Anwendung stellt die Secure-Boot-Technologie dar, mithilfe derer der Bootvorgang durch Überwachung der einzelnen Bootschritte abgesichert wird. Des Weiteren ist durch Trusted Computing eine Verbesserung der Sicherheit von Netzwerkzugängen möglich, etwa über WLAN.
Trotz des ursprünglichen Fokus auf PC-Systemen betreibt die Trusted Computing Group mittlerweile Arbeitsgruppen für viele andere Plattformen wie Smartphones oder Tablets. Durch die Ablage von Zertifikaten in einem TPM-Sicherheitskern kann etwa aus einem Handy ein Sicherheitsterminal für den mobilen elektronischen Handel entstehen. In der Diskussion sind auch Schutzanwendungen für hochwertige Wirtschaftsgüter wie Autos oder Industrieanlagen sowie die sichere Interaktion von Trusted Computing-Plattformen mit Chipkarten.
Ein umstrittenes Einsatzfeld von Trusted Computing stellt die Digitale Rechteverwaltung (DRM) dar. Durch die „Sealed Storage“ genannte Technologie ist es möglich, Daten wie etwa Musik, Videos oder Software mit kryptographischen Mitteln an bestimmte Systeme zu binden, sodass diese Daten nur von einem bestimmten Computer ausgelesen werden können.

### Trusted Computing für Fahrzeuge

Trusted Computing kann auch dafür eingesetzt werden, den Datenverkehr von vernetzten Autos abzusichern. Sichere Datenverbindungen zwischen Fahrzeugen und Servern der Hersteller stehen dabei im Vordergrund. Dass es hier noch Sicherheitsprobleme gibt, hat eine Untersuchung am Beispiel des ConnectedDrive von BMW gezeigt. So ist es möglich das System zu hacken und mit einer tragbaren Mobilfunkbasisstation Fahrzeuge ohne Schlüssel oder Wissen des Besitzers zu öffnen. Autohersteller könnten abgesicherte Kommunikationskanäle beispielsweise auch benutzen, um Kunden an die eigenen Werkstattbetriebe zu binden. Dies könnte zu einer Einschränkung des Wettbewerbs führen wenn beispielsweise online übertragene Fehlerprotokolle nur für bestimmte Werkstätten zugänglich wären. Daher betont Bernhard Gause, ehemaliges Mitglied der Hauptgeschäftsführung des Gesamtverbands der Deutschen Versicherungswirtschaft (GDV), dass der Fahrzeughalter letztlich bestimmen sollte, welche Daten erhoben werden und wer diese abrufen darf. Auch die Datenschutzbehörden vertreten eine ähnliche Ansicht, zudem sollten die bereitgestellten Daten in einer standardisierten Form zur Verfügung gestellt werden.

## Verfügbare Trusted-Computing-Systeme

Bei PC-Plattformen, die bereits jetzt mit der Trusted-Computing-Funktion ausgerüstet sind, wird TC vor allem zum sicheren Speichern von Schlüsseln und Zertifikaten verwendet (Im Gegensatz zum potentiell unsicheren Ablegen solcher kritischer Daten auf leicht veränderbaren Standardspeichern wie bei normalen PCs).
Die bisherigen Arbeiten, komplette Trusted-Computing-Systeme sowie dafür angepasste Betriebssysteme zu entwickeln, haben auf Grund der hohen Komplexität und bisher einzigartiger Sicherheitserwartungen noch nicht zu breit nutzbaren Ergebnissen geführt:
* Die Entwicklung von Microsoft, Next-Generation Secure Computing Base (NGSCB) wurde auf Grund der dabei erhaltenen Sicherheit-Ergebnisse abgebrochen. An einem neuen Ansatz (Trusted Virtualisierung) wird im Rahmen des Betriebssystems Microsoft Windows Vista gearbeitet. Inzwischen soll ab Windows 8 Trusted Computing obligatorisch gemacht werden. Das aber zu einem Zeitpunkt, wo Microsoft selbst Schwierigkeiten hat, durch Fernwartung von Betriebssystemen mittels Patches und Updates funktionsfähig zu halten CCC 2014.
* Das von der EU geförderte Open Source Open Trusted Computing Projekt entwickelt mit 23 Partnern TC-gestützte sichere Betriebssysteme für verschiedene Anwendungsklassen. Der dabei entstehende Code kann auch für andere Anwendungen oder Betriebssysteme genutzt werden. Im Rahmen dieses Projekts wurde etwa mit TrustedGRUB eine sichere Version des Linux-Bootloaders GRUB entwickelt. Zu den entwickelten Betriebssystemen zählen:
** Trusted Xen mit Paravirtualisierung
** Trusted Linux
** Trusted Mikrokernel
Das Bundeswirtschaftsministerium schrieb im Frühjahr 2016 ein Forschungsvorhaben über den Aufbau alternativer Zertifizierungsinfrastrukturen für vertrauenswürdige Datenverarbeitung aus.

## Kritik an Trusted Computing

Kritik richtet sich gegen die verschiedensten Vermutungen und Erwartungen, speziell auch Annahmen über mögliche Implementierungen von DRM und die Integration in das Produktspektrum von Microsoft Betriebssystemen (NGSCB ehem. bekannt als Palladium) kombiniert. Im Jahr 2002, noch vor Erscheinung der ersten Spezifikationen, veröffentlichte Ross Anderson eine kritische FAQ. Unmittelbar darauf erfolgte dann eine Gegendarstellung und Zurückweisung (englisch rebuttal) durch die beteiligten Entwickler.
Trusted Computing wirbt damit, nicht nur digitale Rechteverwaltung (DRM) zu bieten, sondern auch vor Schadprogrammen zu schützen. Markus Hansen (ULD) wendet ein, dass es technisch problemlos möglich wäre, beide Aufgaben voneinander zu trennen. Diese Weise der Vermarktung verschaffe auch DRM-Gegnern den Eindruck, dass Trusted Computing nützlich wäre. Aber diese Sicherheitsfunktion erfordere keinerlei digitale Rechteverwaltung. Somit könne die Trusted Computing Group das Trusted Computing auch in seine eigentlichen Bestandteile teilen: Vertrauensbasierte Sicherheit und digitale Rechteverwaltung.
Von Kritikern wird zudem die Befürchtung geäußert, dass die Implementierung von Trusted Computing die Entwicklung von freier Software, Open-Source-Software, Shareware und Freeware verhindern oder zumindest behindern können. Dies resultiert aus der Annahme, dass Software auf einer Trusted Platform von einer zentralen Instanz zertifiziert werden müsste und dass demzufolge weder kleinere Unternehmen noch Privatleute sich die hohen Kosten für die offizielle Zertifizierung ihrer Programme leisten können. Eine solche zentrale Zertifizierungsstelle gibt es aber nicht. Entsprechende Zertifikate können aber von Dritten vergeben werden, um den Computer wiederum gegenüber anderen Drittparteien als sicher einzustufen. Dieses Szenario wäre z. B. bei Webshops oder ähnlichen Netz-geprägten Handlungen und Programmen denkbar. In jedem Fall wäre Trusted Computing eine weitere Hürde auf dem Weg des Amateurs in die Software-Entwicklung, was freien Softwareprojekten, die von Freiwilligen entwickelt werden einen deutlichen Nachteil verschafft.

## Trusted Computing und Digital Rights Management

Das Schaffen einer „sicheren“ Systemumgebung ist die Voraussetzung für die Etablierung einer Digitalen Rechteverwaltung (DRM) im PC- oder „Player“-Bereich. Mit Hilfe der TC-Funktionen kann dabei z. B. erkannt werden, ob Abspiel-Software oder -Hardware manipuliert oder verändert wurde, um Beschränkungen der Hersteller (wie z. B. einen Kopierschutz) zu umgehen. Daher wird TC in einigen Medien mit dem Thema DRM verbunden, auch wenn bisher keine entsprechenden Anwendungen existieren.
Die AntiTCPA-Aktivisten bezweifeln dies. Dies nahm der Hacker Lucky Green nach eigener Erklärung bereits 2003 öffentlichkeitswirksam zum Anlass, sich angeblich die Kombination von DRM und TC als Patent schützen zu lassen. Allerdings ist entgegen dieser Ankündigung kein entsprechendes Patent auf irgendeinem der internationalen Server zu finden.
Kritiker bezweifeln die Akzeptanz von DRM-Systemen, die von vornherein schon davon ausgehen, dass der Kunde unehrlich ist. Solange sie für den Verbraucher keine Vorteile bieten, werden sie nach Meinung von Stefik Mark wahrscheinlich nur als unangenehme Verkomplizierung wahrgenommen.

## Trusted Network Connect (TNC)

Mit der Trusted Network Connect-Spezifikation (TNC) entwickelt die Trusted Computing Group einen Ansatz zur Realisierung vertrauenswürdiger Netzwerkverbindungen. Die Entwicklung findet durch die Trusted Network Connect-Subgroup. Ziel ist die Entwicklung einer offenen, herstellerunabhängigen Spezifikation zur Überprüfung der Endpunkt-Integrität.
Die Trusted Network Connect-Spezifikation (TNC) soll als offene und herstellerunabhängige Spezifikation die Realisierung von vertrauenswürdigen Netzwerkverbindungen ermöglichen. TNC versucht dabei nicht, vorhandene Sicherheitstechnologien zu ersetzen, sondern auf diese aufzusetzen. So werden beispielsweise Sicherheitstechnologien für den Netzwerkzugriff („802.1x“ und „VPN“), für den Nachrichtentransport („EAP“, „TLS“ und „HTTPS“) und für die Authentifizierung („Radius“ und „Diameter“) unterstützt. Durch diese Eigenschaften soll sich TNC leicht in bestehende Netzinfrastrukturen integrieren lassen.