RST - Labor für Rechner-Strukturen TRUSTED COMPUTING ... · TPM aufsetzende Betriebssystem,...

55
. Fachbereich der Elektrotechnik und Informatik Studiengang Technische Informatik Fachrichtung Angewandte Informatik RST - Labor für Rechner-Strukturen TRUSTED COMPUTING am Beispiel von Infineon - TPM Laborleitung: Prof. Dr. Thomas Risse Bericht: Andreas Sonnek Matrikel Nr.: 32313 SS/WS 2005/06 Bremen, 10. Januar 2006

Transcript of RST - Labor für Rechner-Strukturen TRUSTED COMPUTING ... · TPM aufsetzende Betriebssystem,...

.

Fachbereich der Elektrotechnik und Informatik

Studiengang Technische InformatikFachrichtung Angewandte Informatik

RST - Labor für Rechner-Strukturen

TRUSTED COMPUTINGam Beispiel von

Infineon - TPM

Laborleitung: Prof. Dr. Thomas Risse

Bericht: Andreas SonnekMatrikel Nr.: 32313

SS/WS 2005/06

Bremen, 10. Januar 2006

Inhaltsverzeichnis 1

Inhaltsverzeichnis1 Motivation 4

2 Einleitung 8

3 Trusted Computing Group 113.1 Gründung der TCPA/TCG . . . . . . . . . . . . . . . . . . . . . . . 113.2 Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.3 Sicherheitsbezogene Ziele . . . . . . . . . . . . . . . . . . . . . . . . . 123.4 Eigeninitiativen der Gründungsmitglieder . . . . . . . . . . . . . . . . 12

3.4.1 LaGrande von Intel . . . . . . . . . . . . . . . . . . . . . . . . 133.4.2 NGSCB von Microsoft . . . . . . . . . . . . . . . . . . . . . . 13

4 Vertrauenswürdige Plattformen 15

5 Grundlagen der Kryptographie 195.1 Definition der Sicherheit . . . . . . . . . . . . . . . . . . . . . . . . . 195.2 Übersicht der kryptographischen Begriffe . . . . . . . . . . . . . . . . 19

5.2.1 Schlüssel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195.2.2 Digitale Unterschrift . . . . . . . . . . . . . . . . . . . . . . . 205.2.3 Digitale Zertifikate . . . . . . . . . . . . . . . . . . . . . . . . 215.2.4 Hash - Wert . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.2.5 Symmetrische Verschlüsselung . . . . . . . . . . . . . . . . . . 225.2.6 Asymmetrische Verschlüsselung . . . . . . . . . . . . . . . . . 23

6 Kryptographische Verfahren im TPM 256.1 RSA - Verschlüsselungsverfahren . . . . . . . . . . . . . . . . . . . . 26

6.1.1 Beispiel für RSA - Verschlüsselung . . . . . . . . . . . . . . . 286.2 SHA - 1 Secure Hash Algorithm . . . . . . . . . . . . . . . . . . . . . 29

6.2.1 Beispiel für padding beim SHA-1 . . . . . . . . . . . . . . . . 306.2.2 SHA - Hardwareimplementierung . . . . . . . . . . . . . . . . 316.2.3 SHA-1 Message Digest Block . . . . . . . . . . . . . . . . . . . 326.2.4 SHA - Familie Übersicht . . . . . . . . . . . . . . . . . . . . . 35

7 TPM Spezifikation 1.2 der TCG 36

8 Trusted Platform Module 378.1 Funktionsweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378.2 Architektur des Infineon TPM SLB 9635 TT 1.2 . . . . . . . . . . . . 378.3 Infineon TPM - Hardware Merkmale . . . . . . . . . . . . . . . . . . 388.4 TPM - Sicherheitsmerkmale . . . . . . . . . . . . . . . . . . . . . . . 388.5 TPM Dienstleistungen - Überblick . . . . . . . . . . . . . . . . . . . . 398.6 Inhalt des TPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

8.6.1 Migrierbare und nicht migrierbare Schlüssel . . . . . . . . . . 41

Inhaltsverzeichnis 2

8.6.2 Endorsement Key (EK) . . . . . . . . . . . . . . . . . . . . . 418.6.3 Attestation Identity Key (AIK) . . . . . . . . . . . . . . . . . 428.6.4 Storage Root Key (SRK) . . . . . . . . . . . . . . . . . . . . . 428.6.5 Zertifikate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428.6.6 Binden, Signieren und Versiegeln . . . . . . . . . . . . . . . . 42

8.7 Attestation des Zustands von Trusted Platforms . . . . . . . . . . . . 438.8 TPM Protected Objects . . . . . . . . . . . . . . . . . . . . . . . . . 458.9 Direct Anonymous Attestation (DAA) . . . . . . . . . . . . . . . . . 478.10 Gefahren bei der Verwendung von TPM . . . . . . . . . . . . . . . . 47

9 Anwendungsgebiete 48

10 Trusted Computing - Fazit 50

11 Literatur und Quellen 5111.1 WWW - Seiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5311.2 Artikel aus Fachzeitschriften . . . . . . . . . . . . . . . . . . . . . . . 54

Abbildungsverzeichnis 3

Abbildungsverzeichnis1 LPC Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 TPM in der PC - Architektur . . . . . . . . . . . . . . . . . . . . . . 83 Gründungsmitglieder der TCG . . . . . . . . . . . . . . . . . . . . . . 114 LaGrande Hardwareerweiterungen . . . . . . . . . . . . . . . . . . . . 135 Arten von Computerplattformen . . . . . . . . . . . . . . . . . . . . . 156 TPM Herstellung - Vertrauensbasis . . . . . . . . . . . . . . . . . . . 167 CRTM - Trusted Boot . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Module des TSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 X.509 Zertifikat - Norm . . . . . . . . . . . . . . . . . . . . . . . . . . 2110 Prinzip der symmetrischen Verschlüsselung . . . . . . . . . . . . . . . 2211 Prinzip der asymmetrischen Verschlüsselung . . . . . . . . . . . . . . 2312 Übersicht - kryptographische Verfahren . . . . . . . . . . . . . . . . . 2613 RSA - Verschlüsselungsverfahren . . . . . . . . . . . . . . . . . . . . 2714 Hardware Implementierung von SHA-1 . . . . . . . . . . . . . . . . . 3115 Message Digest bei SHA-1 . . . . . . . . . . . . . . . . . . . . . . . . 3216 SHA-1 Blockfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . 3317 SHA-1 Wahrheitstafel der Funktionen . . . . . . . . . . . . . . . . . . 3318 SHA-1 Konstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3419 SHA Secure Hash Algorithm - Familie Übersicht . . . . . . . . . . . . 3520 TCG - Spezifikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3621 Architektur des TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . 3722 Trusted Platform - Zusammenspiel . . . . . . . . . . . . . . . . . . . 4023 Schlüsselhierarchie des TPM . . . . . . . . . . . . . . . . . . . . . . . 4124 Speicherinhalte des TPM . . . . . . . . . . . . . . . . . . . . . . . . . 4325 Trusted Computing - Objekte . . . . . . . . . . . . . . . . . . . . . . 46

1 Motivation 4

1 MotivationDie Datenverarbeitung und Rechnerarchitekturen, die diese Verarbeitung der ge-stellten Aufgabe entsprechend so effizient wie möglich organisieren, dienen keinemSelbstzweck, sondern wenden in Hardware oder Software implementierte Algorith-men auf Informationen und Inhalte an, die bestimmten Eigentumsrechten unterlie-gen oder in die geschützte Privatsphäre gehören.

Nach den spezifischen Wünschen der Benutzer und Besitzer dieser Rechner wird mitHilfe von auf diesen Plattformen ablaufenden Programmen hoffentlich ein Mehrwertgewonnen, in finanzieller oder geistiger Hinsicht. Die Ergebnisse dieser Verarbei-tung werden auf Trägern von Information physikalisch gespeichert und archiviert.Ob Privatanwender, Unternehmen, Regierungen mit den Organen der Exekutive,alle legen größten Wert auf die Vertraulichkeit und die Geheimhaltung bestimmterschützenswerter Daten. In diesem Zusammenhang ist es wichtig und von entschei-dender Bedeutung für die Besitzer und Benutzer dieser Daten, ihre Sicherheit zugewährleisten.Der Sicherheitsbegriff in der IT - Technik ist sehr weit umfassend und spiegelt dieGefahren wider, die auf die Daten und Information im weltweiten Netz lauern kön-nen.

Die führenden Hard- und Software- Hersteller haben sich zu einer Organisation zu-sammengeschlossen, um über die Sicherheit zu beraten und Standards zu etablieren,die den Schutz der Daten ihrer Besitzer gegen Manipulationen aller Mikroprozessor- gestützten Geräte erhöhen.

Seit dem Entstehen der Trusted Platform Computing Alliance (TPCA) 1999 und derVeröffentlichung einer verbesserten Spezifikation in der Ver.1.2 für die Implementie-rung vertrauenswürdiger Plattformen durch die Nachfolge - Organisation TrustedComputing Group[20] (TCG) 2003 haben die Tätigkeiten dieser Organisationen füreine abwehrende Haltung vieler Computerbenutzer gesorgt und hitzige Diskussio-nen ausgelöst, sowohl auf dem privaten Sektor unabhängiger Computerbenutzer wieauch auf der Regierungsebene.

Die TCG schreibt unter Anderem einen zusätzlichen zu integrierenden Hardware -Baustein, das Trusted Platform Module (TPM) vor, was verbunden mit den Ankün-digungen führender Software- und Betriebssystemhersteller, zukünftig das DigitalRights Management (DRM) in die nächste Version des Betriebssystems (Palladium/ Next Generation Secure Computing Base (NGSCB)) zu integrieren, die Situationdes Mistrauens weiter verschärfte. Die Diskussion und Kritik sind dem aufmerksa-men c’t - Leser in den vergangenen Jahren bestimmt nicht entgangen. ( ReferenzSeite [54]

Auf der einen Seite stehen die Gegner, die in dem TPM elektronische Fesseln sehen

1 Motivation 5

und den Big Brother im privaten PC befürchten; auf der anderen sind alle die, die anmehr Sicherheit glauben, die in der digitalen Kommunikation durch Einsatz dieserunscheinbaren Integrierten Schaltung versprochen wird.Die Befürworter weisen auf den Nutzen des TPM für die Erhöhung der System-sicherheit aller Mikroprozessor - gestützter Systeme (PC - Plattformen, Telekom-munikationsgeräte, eingebettete Systeme) gegenüber der globalen Terrorbedrohungsowie Hackerangriffen und Computerviren.

Je nach Art der Zielgruppe und persönlicher Einstellung und Wissenstand - obprivater Endanwender, der seinen PC hauptsächlich zu Unterhaltungszwecken undKommunikation einsetzt, Unternehmen und öffentliche Verwaltung, kommerzielleSoftwareentwickler, die Open Source Gemeinde oder die Anbieter von Digitalen In-halten oder Marketingkaufleute - sie alle entwickeln unterschiedliche Ansichten.

Manche sehen in Trusted Computing Chancen, insgesamt die Kommunikation si-cherer und verbindlicher zu machen und den Datenschutz zu erhöhen, auch was dieVerbreitung illegaler Kopien angeht (obwohl man hier eher von Datensicherheit alsDatenschutz sprechen sollte), die Anderen sehen darin keine gefährliche und unum-kehrbare Entwicklung, die die persönliche Freiheit erheblich eingrenzen kann und zueiner Form globaler Diktatur und Kontrolle von marktbeherrschenden Firmen undInhaltsanbietern über die Konsumenten führt.

Abbildung 1: LPC Bus, (Referenz: [9] S. 11)

Das TPM - Modul an sich ist ein unscheinbarer LSI - Baustein und wird bereitsseit einigen Jahren durch eine Reihe von Firmen produziert, die allesamt bei ihrenImplementierungen die von TCG erlassene Spezifikation erfüllen. TPM von Infine-on [23]ist ein Sprössling der bereits millionenfach bewährten Smartcard - Familie.Obwohl zukünftig eine Integration in den Hauptprozessor vorgesehen ist, wird esin aktuellen Produkten mittels LPC1 - Bus mit dem Mainboard des PC verbunden

1Ein von Intel spezifizierter serieller Bus, der für den Anschluß von Flash-EEPROMs oderTPMs vorgesehen ist, und den ISA Bus ersetzen soll. Gedacht für direkt an der Hauptplatineverlötete Komponennten. Der gemultiplexte Bus bringt eine deutliche Einsparung an notwendigenLeitungsbahnen. Referenz: [9]

1 Motivation 6

(untrennbar oder per Steckkarte).

Aus Neugier und dem Wunsch zu erfahren, was sich eigentlich hinter Trusted Com-puting und TPM verbirgt und inwiefern sich die Initiative des TCPA/TCG bis heutedurchsetzen konnte, habe ich mich entschlossen, TPM als das Thema meines Refe-rates zu wählen.

Weil dieses Referat im Rahmen der Laborveranstaltung für Rechnerstrukturen statt-findet, sollte der Schwerpunkt auf der Hardware liegen, obwohl die Auseinanderset-zung mit den rechtlichen sowie wirtschaftlichen Aspekten des TPM und seiner gesell-schaftlichen Implikationen sehr reizvoll und komplex erschien und in dieser Hinsichtviele lehrreiche Schlussfolgerungen über die Zukunft der Informationsgesellschaftverspricht, je nachdem, ob sich das dahinter stehende Konzept zum Dr. Jekyll oderMr. Hyde entwickelt, was aber ausschließlich nach den auf dem neutral gehaltenemTPM aufsetzende Betriebssystem, Anwendungen und Absichten der Personen rich-tet, die mit dieser Entwicklung Geld verdienen wollen.

Zurzeit ist das Trusted Computing eine Innovation und ein Marketingslogan unddurchaus in der Lage, den Absatz von Rechnern, die damit ausgestattet sind, mitdem Argument der erhöhten Sicherheit zu steigern. Je nachdem, in welchen Maßesich die Marketingstrategen bemühen werden, TPM in gutem Licht darzustellen undals ein herausragendes Merkmal neuer Computergeneration anzupreisen werden diePlattformen mit dem Trusted Computing Logo eine immer stärkere Verbreitung fin-den.

Nach anfänglicher Recherche über den Stand der TPM - Technologie fiel mein Blick,neben einigen anderen Implementierungen der TCPA/TCG - Spezifikation auf denTPM - Chip der Firma Infineon. Die leider begrenzte Zeit bis zur Abgabe und Prä-sentation des Themas erlaubten mir nicht, einen bewertenden Vergleich unter allenverfügbaren Implementierungen zu ziehen. Auf den ersten vergleichenden Blick inden verfügbaren Dokumenten scheinen die recherchierten Daten über die Zeiten beider Ausführung der kryptographischen Funktionen sehr nahe beieinander zu liegen,was vermuten lässt, dass die auf 16 Bit - Mikroprozessorkernen bzw. 8- Bit RISCfußenden Krypto - Algorithmen ausgereift sind und daß in dieser Preisklasse keineweiteren Geschwindigkeitsvorteile zu erwarten sind.

Speziell die interessanten hardwareseitigen Aspekte der Sicherheit der Daten undSchlüssel vor externen Angriffen, die eigentlich diese Technologie der Smartcardsauszeichnen, sollen näher beleuchtet werden.

Auch eine kurze Einführung in die Grundlagen der Kryptographie, in einem Maßewie sie beim TPM Verwendung findet, sollte hier nicht fehlen.

1 Motivation 7

Weil das TPM von Infineon ein nahe verwandter Ableger der Smartcard - Technolo-gie ist, verdankt es ihr seine interne Struktur und die Tatsache, dass über die eigent-liche Implementierung der technologischen Details nur wenig nach Außen dringt unddie gesamte Dokumentation als top - secret streng unter Verschluss gehalten wird.Die auf der Webseite des Herstellers vorzufindenden Informationen über die Imple-mentierung der verwendeten Krypto - Algorithmen sind sehr spärlich. Abhilfe warhier die Tatsache, daß fast die gesamte Spezifikation der TCG über Trusted Compu-ting frei zugänglich ist und dass sie über alle Funktionen und Arbeitsweise des TCPdetailliert Auskunft gibt. Es gibt Projekte, auf der Basis dieser Spezifikation einenTCP - Emulator [18] für Lehrzwecke samt BIOS auf eine PCI - Schnittstellenkarteunter Linux zu portieren.

Es sollte nicht unerwähnt bleiben, daß sich die Trusted Computing - Technologieinnerhalb mehrerer Jahre von der Version 1.0 zu der Spezifikation 1.2 entwickelthat, die sich aktuell in einer sehr frühen Marktphase befindet. Obwohl immer mehrGeräte und Mainboards (Intel, Toshiba, Fujitsu - Siemens) mit dem TPM - ICausgerüstet werden, ist zurzeit nicht absehbar, wie sie sich diese Innovation in derZukunft entwickelt.

2 Einleitung 8

2 EinleitungDie Trusted Computing Group (TCG) ist eine Organisation aus führenden Hardware-und Software- Herstellern, die einen Standard für vertrauenswürdige Umgebungendefiniert und spezifiziert hatte, der auf einem Hardwarebaustein, dem Trusted Plat-form Module (TPM) basiert. Dieser Chip weist eine der Smartcard ähnliche Strukturauf.

Abbildung 2: Einbindung des TPM in die PC - Architektur, Quelle: ([2] S. 2)

Trusted Platform Module2 ist ein Mikrocontroller, der mehrere Aufgaben erfüllenkann, um eine Rechnerplattform, in der er eingesetzt wird, an sich als vertrauens-würdig zu verifizieren. TPM ist dazu bestimmt, Schlüssel und Fingerabdrücke vonDateien und Systemkonfigurationen intern sicher zu erzeugen, zu verwalten und zuspeichern. Er ist darüber hinaus in der Lage, Dateien und Verzeichnisse zu verschlüs-seln und Netzwerkprotokolle wie VPN, PKI (Personal Key Infrastructure), WLANzu unterstützen, um mehr Sicherheit bei der Datenübertragung über unsichere Netzezu erreichen. Der TCP - Baustein soll kritische Applikationen wie E-Mail - Verkehr,

2Die Abbildung zeigt die Software- und Hardwareschnittstellen, die für die Einbindung des TPMin eine PC - Architektur verwendet werden. Sie werden detailierter im Kapitel 4 VertrauenswürdigePlattformen und Kapitel 8 Trusted Platform Module erläutert.

2 Einleitung 9

www - Zugang, lokale Sicherheit und Schutz der Daten verbessern. Mit diesem Chipsoll eine nichtmanipulierbare Identifikation einer Plattform im Netz möglich sowieder aktuelle Sicherheitszustand dieser Plattform abfragbar sein.

Anders als bei den herkömmlichen Sicherheitsmassnahmen wird der vertrauenswür-digen Plattform an sich vertraut. Dieses Vertrauen basiert auf der Grundlage derHardwareerweiterung und einer minimalen im BIOS implementierten Software, diebeide mit zertifizierter Sicherheit keinen Manipulationen unterliegen. Auf diesemKonstrukt aufbauend lässt sich eine Kette des Vertrauens etablieren, indem jedebeim Bootvorgang zu ladende Software und die Hardwarekonfiguration des Rech-ners auf eventuelle Manipulation überprüft werden.

Die Vertrauenswürdigkeit einer Trusted Platform ist größtenteils sozialer Natur -der Nutzer vertraut, daß eine bei der Herstellung des Chips durch unabhängigeInstanzen und Testlabors etablierte Zertifizierungskette nicht durchbrochen wurde.Ebenfalls dehnt sich dieses entgegenzubringende Vertrauen in die Programmiererdes BIOS, Betriebssystems und der Anwendungen aus. Über den Aufbau und dieFunktionsweise der Infrastruktur, die all das gewährleisten soll, besteht in der sehrfrühen Marktphase noch Unklarheit. Die TCG verlässt sich hierbei auf die Initiativeprivater und staatlicher Unternehmen und Organisationen.

Typischerweise wird das TPM auf dem Mainboard integriert, fest verlötet oder alsModul steckbar bzw. kann direkt innerhalb eines anderen Siliziumchips unterge-bracht werden (in ein Mikroprozessor Design integriert werden). Durch die Unter-bringung der Funktionalitäten auf dem Mikrochip wird erreicht, daß die Informa-tionen sicherer vor externen Software- Angriffen (Debbuger und andere analysieren-de Programme) und physikalischen Manipulationen(Logikanalysatoren, Bussnooper,Messungen von Strom und elektromagnetischer Abstrahlung) sind. Der Austauschvon sicherheitsrelevanten Signaturen und Schlüsseln ist durch das Subsystem rundum TCP gewährleistet.

Der TCP - Mikrocontroller überwacht den Bootvorgang der Plattform und kannanhand von individuellen Hash - Werten der umgebenden Hard und Software fest-stellen, ob an diesen Veränderungen vorgenommen worden sind und ggf. den Zugangzu den geheimen Informationen verweigern, vorausgesetzt diese Funktion ist in demBetriebssystem implementiert. Mit dem Ergebnis dieser Überprüfung kann der In-haber oder Benutzer des Computers den Zustand seines Systems gegenüber andereninternen oder externen Systemen nachweisen. Dabei ist der Rechner nicht in derLage falsche Aussagen über seinen Zustand zu machen [7].

2 Einleitung 10

Durch Kombination mit biometrischen Sensoren wird die Authentisierung von Menschund Plattform gleichermaßen ermöglicht.

Zurzeit stellen mehrere Hersteller auf dem TCG 1.2b - Standard basierend die TCP- Mikrokontroller her. Unter anderen produziert Infineon den TCP - SLD 9630. Aufdem Markt sind mehrere Produkte erhältlich, die über einen Infineon TCP - Chipverfügen [23], [2].

Es sind Notebooks, Desktop - Rechner (Mainboard von Intel) und Tablett - PC. DieTCG hat die Spezifikation von Anfang an auf Server, Mobilgeräte, Massenspeicher;Telekommuniaktiongeräte, eingebettete Systeme und Infrastruktur ausgeweitet; dieSicherheitsarchitektur soll universell und auf alle Mikroprozessor - gestützte Syste-me anwendbar sein.

Die Sicherheit der TPM - Mikrocontroller basiert auf den kryptographischen Algo-rithmen RSA, SHA-1 und MD-5, die in der Spezifikation der TCG vorgeschriebenwerden.

Der TCP - Chip ist als passive Komponente konzipiert und stellt seine Dienste überspezifizierte und definierte Schnittstellen nach Außen bereit. Seine Dienstleistungen,mit Ausnahme des Trusted Boot - Verfahrens, können erst durch Anwendungen hö-herer Schichten in der Softwarehierarchie genutzt und eingebunden werden. An sichstellt der TPM ein externes Gerät dar, das über ein Bussystem an die PC - Platt-form angeschlossen wird und durch BIOS - Routinen nutzbar gemacht werden kann.

Die Funktionen des Chips können betriebssystemunabhängig genutzt werden, dieSpezifikation ist offen, was von Anfang an eines der Ziele von TCG/TCPA war undan keinen bestimmten Hersteller gebunden. Der Chip an sich kann bei aktuellenImplementierungen in PC - Motherboards jederzeit im BIOS abgeschaltet werden,im Fall vom Besitzerwechsel ist ein komplettes Zurücksetzen aller Schlüssel möglich.

Einige gravierende Probleme sind mit einem möglichen Defekt des Chips oder desMainboards verbunden. In Fall eines TPM - Defektes sind die damit verschlüsseltenDaten nicht mehr lesbar und unwiderruflich verloren, sollten nichtmigrationsfähigeSchlüssel bei der Verschlüsselung verwendet worden sein.

Im weiteren Teilen dieses Berichts sollen die besprochenen Merkmale näher beleuch-tet und erörtert werden.

3 Trusted Computing Group 11

3 Trusted Computing Group

3.1 Gründung der TCPA/TCG

Trusted Computing Group (TCG) ist die Nachfolgeorganisation der Trusted Com-puting Platform Alliance (TCPA Gründungsjahr 1999), die aus der letzteren 2003hervorgegangen ist. In ihrem Kern ist die TCG von AMD, Hewlett-Packard, IBM,Intel, Microsoft, Sony und Sun gegründet worden und umgeht durch neue Organisa-tionsstruktur die Beschränkung der TCPA, die Entscheidungen über die Konzepteder vertrauenswürdigen Plattformen nur einstimmig treffen konnte. Sie ist als einenon - profit Organisation im US - Bundesstaat Oregon rechtlich eingetragen.

Abbildung 3: Logos der Gründungsmitglieder der TCG/TCPA, Quelle: (Link[URL:TCG], auf Seite [54])

3.2 Struktur

Zum Vorstand der Organisation gehören Vertreter aller Gründungsmitglieder undzudem drei aus der Gruppe der Anwendenden Unternehmen gewählte Vertreter.

Die Mitglieder der TCG können einen bestimmten Zugehörigkeitsstatus erwerben,der sich nach der Höhe der jährlichen Beiträge richtet und über den Umfang der Mit-beteiligung an Informationen und Entscheidungen entscheidet. Eine aktuelle Mitglie-derübersicht kann unter https://www.trustedcomputinggroup.org/about/membersabgerufen werden. Es sind zurzeit über 200 Firmen eingetragen.

„Die Adopters (7.500 US-Dollar Beitrag pro Jahr) haben frühen Zugriff auf die Spe-zifikationsentwürfe und auf andere nicht öffentliche Informationsquellen, allerdingsbesitzen sie keine Stimmrechte. Für Unternehmen mit weniger als 100 Mitarbeiternermäßigt sich der Mitgliedsbeitrag auf 1.000 US-Dollar pro Jahr.

Mitglieder der Contributors (15.000 US-Dollar Beitrag pro Jahr) dürfen darüberhinaus an den Arbeitsgruppen, die neue Spezifikationen entwickeln, mitwirken. Au-ßerdem dürfen sie zwei Vertreter aus ihrer Mitte bestimmen, die diese Gruppe imVorstand (Board of Directors) vertreten, wo sie aktiv an Entscheidungen beteiligtwerden.

3 Trusted Computing Group 12

Die exklusive Gruppe der Promoters (50.000 US-Dollar Beitrag pro Jahr) verfügtüber feste Sitze im Vorstand, entscheidet über die Aufnahme neuer Firmen in die-se Gruppe und trifft Entscheidungen über Änderungen der Organisationsstruktur.Mitglieder sind die oben erwähnten sieben Firmen.“ (Quelle: Wikipedia, Link aufSeite [54] : Trusted Computing Group)

Es ist von der TCG vorgesehen, wissenschaftlichen Bildungseinrichtungen eine kos-tenlose Mitgliedschaft zu ermöglichen.

3.3 Sicherheitsbezogene Ziele

Die TCPA/TCG wurde ins Leben gerufen, um die unterschiedlichen individuellen Si-cherheitsinitiativen der Gründungsmitglieder zu koordinieren und offene Standardszu erarbeiten, die Grundlage für eine zukünftige Sicherheitsarchitektur für alle Mi-kroprozessor - gestützten Geräte bilden soll.

Das Ziel der TCG ist, das Konzept einer universellen IT - Sicherheitsarchitektur aufinternationaler Ebene im Markt zu etablieren.

Die TCG will Vertrauen schaffen in Netze und die Kommunikation, plattformun-abhängig und multilateral sein; sowohl die Interessen der Endverbraucher wie auchAnbieter digitaler Inhalte sollen gleichermaßen berücksichtigt werden. Der autori-sierte Zugriff auf Daten und Ressourcen soll sichergestellt werden. Die Spezifikationder Hardware, der Softwareschnittstellen und Zertifikationsmechanismen sollen neu-tral sein. Eine vertrauenswürdige Kommunikation im Internet mit Verzicht auf dieüblichen Sicherheitsmechanismen soll durch gegenseitige Integritätsprüfung über ei-ne dritte unabhängige Instanz sichergestellt werden.

Die neue Sicherheitslösung ist tief in die Hardware und Software verankert. DieserHerangehensweise wird ein großes Potential zugesprochen, in der kommenden Zeitden Umgang mit der Sicherheit, Rechten und Freiheiten der Benutzer auf vielfältigeArt und Weise zu beeinflussen.

3.4 Eigeninitiativen der Gründungsmitglieder

Unabhängig von der Entwicklung des Trusted Platform - Sicherheitskonzeptes erar-beiteten einige der Gründungsmitglieder eigene proprietäre Projekte, die zum Teilauf dem TPM basieren oder es in vielerlei Hinsicht erweitern:

3 Trusted Computing Group 13

3.4.1 LaGrande von Intel

Intel erweitert das Konzept einer Sicherheitslösung im Hardwarebereich um die La-Grande (Referenz: [8]) Technologie. Diese soll Software -gestützte Angriffe auf einSystem unmöglich machen. Der Schutz basiert darauf, daß er in Hardware fest ver-ankert ist und damit die bisherige Verwundbarkeit der Abwehrstrategien auf Soft-warebasis abstellt.

Abbildung 4: LaGrande Hardwareerweiterungen, Quelle: ([8], S. 6)

Die LaGrande Technologie geht noch weiter und verschlüsselt alle Kommunikations-wege im Rechnersystem, die bis jetzt potenzieller Manipulation ausgesetzt waren,so werden die Eingabegeräte abgesichert sein sowie der Ausgabeanschluss zum Mo-nitor, der sich für eine nicht vorgesehene Ausgabe von Daten mißbrauchen lassenkönnte.

3.4.2 NGSCB von Microsoft

Microsoft plant in zukünftigen Betriebssystemversionen (Longhorn) die Sicherheits-initiative Next Generation Secure Computing Base (NGSCB) voranzutreiben. DieNGSCB ist eine Fortentwicklung von „Palladium“ - einem früheren Konzept desSoftwaregiganten und Marktführers, das aber im Marketing schnell auf Ablehnunggestoßen ist.

Die Kernfunktionalitäten, auf denen das NGSCB aufbaut, sind:

3 Trusted Computing Group 14

• auf Hardware begründete Abschottung von vertrauenswürdigen Anwendungs-programmen gegen Manipulations- und Ausspähversuche

• Ablage von Daten in vom TPM geschützten Speicherbereichen

• Sicherstellung von nicht korrumpierbaren Ein- und Ausgabe von Daten ( wasdie La Grande Technologie in dieser Hinsicht leistet und wie sie Hand in Handmit den Vorstellungen des Microsoft - Konzeptes einhergeht, siehe )

• Beglaubigung der Vertrauenswürdigkeit des Gesamtsystems

Die Integrität des Betriebssystems kann sichergestellt werden, wenn die Kernelmodu-le und Anwendungsprogramme in einem eigenen, gegen Angriffe gesicherten Bereichablaufen und gegen andere nicht sichere Anwendungen im nicht geschützten Bereichdes Betriebssystems abgeschirmt sind.

4 Vertrauenswürdige Plattformen 15

4 Vertrauenswürdige Plattform - Trusted PlatformIm Allgemeinen kann unter zwei Formen von Computerplattformen unterschiedenwerden:

Abbildung 5: Arten von Computerplattformen

Open Platforms, zu denen die PCs, PDAs, Workstations und Mainframes gehörenund über die von Außen keine Aussage darüber getroffen werden kann, ob sie kor-rumpiert oder von Viren befallen sind [7].

Die Gruppe von Geräten wie Spielkonsolen, Digitalrecorder, Kryptoboxen, Bankau-tomaten, DVD - Player, eingebetteten Systemen in den Automobilen bilden ClosedPlatforms, die im Gegensatz zu den Open Platforms einen geheimen Schlüssel be-sitzen, mit dessen Hilfe eine eindeutige Identifikation möglich ist. Sie sind in derRegel und durch die Intention der Entwickler schwer manipulierbar. Dadurch erfor-dern mögliche, technisch nicht vorgesehene Veränderungen viel Aufwand und know- how. Daß die Herausforderung, diesen Geräten Funktionen zu entlocken, die nichtdurch Hersteller vorgesehen waren, für viele sehr reizvoll war, sollte nicht verschwie-gen werden. Durch erarbeitete Kenntnisse über den Aufbau dieser Geräte wurdenaus ihnen bestimmte Daten Manipulationen unterzogen. Beispiele dazu sind Instal-lation von Linux BS auf Set Top Boxen oder der XBox - Spielekonsole, Manipulationvon Kilometerzählern in digitalen Tachometern, gar Tuning ganzer Motorsteuerun-gen oder die Verbreitung illegaler Kopien von Inhalten für bestimmte Plattformen.

4 Vertrauenswürdige Plattformen 16

Die Trusted Platforms sind eine Mischung aus beiden Plattform - Formen, ohne dienegativen Seiten beider Welten zu übernehmen. Sie können sich durch den Prozessder Attestation als vertrauenswürdig ausweisen, was soviel bedeutet, daß der Hard-und Software vertraut werden kann, wenn sie sich bei sachgemäßem Einsatz immerin einer erwarteten Art und Weise verhält.

Trusted Platforms sind Systeme, die einer beliebigen entfernten Instanz und demlokalen Anwender ihre Unversehrtheit beweisen können.

Um eine vertrauenswürdige Plattform zu realisieren, sind zusätzliche Hardware inForm von TPM und einer BIOS - Erweiterung, Softwaretreiber, die eine Anbindungan den Kernel des Betriebssystems bilden, sowie Kontroll- und Zertifizierungsin-stanzen nötig, die die Einhaltung einer „Kette des Vertrauens“ bestätigen, die aufdem TPM basiert und sich hierarchisch über alle kryptographischen Schlüssel undZertifikate erstreckt.

Abbildung 6: Etablieren der Vertrauensbasis bei der Herstellung von TPMs, Quelle:(c’t - Artikel [c’t 03/15/S. 21] Literaturübersicht auf Seite [54])

Die Unversehrtheit des TPM, d.h. die Bestätigung, daß keine kryptographischeBlackbox3 eingebaut worden ist, die ohne das Wissen des Anwenders seine Da-ten unentdeckt herausschmuggeln könnte, wird durch eine ständige Überwachungdes Herstellungsprozesses und Transportwege durch eine unabhängige und vertrau-enswürdige Instanz garantiert4. Diese muss immer zertifikatskonform sein und derSpezifikation genügen.

Eine vertrauenswürdige Plattform besteht aus:

• Trusted Platform Module - Hardwarebaustein, der direkt auf die Hauptpla-tine des PC integriert und wie jedes andere externe Gerät an einen Bus an-

3Führende Kryptologen haben bestätigt, daß es möglich ist, unbemerkt aus einem Rechnersys-tem Informationen herauszuschmuggeln, sofern dieser Kryptofunktionen für die Kommunikationverwendet. (Referenz: [29] S. 4 - Gefahren von Black-Box-Kryptographie, [16] S. 14 - Problem:Verification of implementations)

4Inwiefern der Besitzer der Daten diesen Instanzen zu vertrauen bereit ist, ist eine persönlicheEntscheidung.

4 Vertrauenswürdige Plattformen 17

geschlossen wird und über definierte Schnittstelle angesprochen werden kann(direkte Integration auf dem Prozessorchip ist ebenfalls möglich: z.B. Crusoe-Mikroprozessor, auch der Anschluss von TPM in einer Smartcard über eineverschlüsselte USB - Verbindung ist laut Spezifikation erlaubt)

• Core Root of Trust for Measurement (CRTM) - einer Software, die in demBIOS integriert als erste während des Bootvorganges ausgeführt wird undsomit ein sicheres Booten ermöglichen soll. Diese Software überprüft, wenneingeschaltet, mittels Hashwert -Bildung und -Vergleich mit einer früheren alssicher bekannten Konfiguration die zu ladenden binären Module auf ihre Un-versehrtheit. Die Hash - Werte werden nach dem SHA - 1 Verfahren erzeugtund erstrecken sich über die Hardwarekonfiguration, Bootblock der Festplatte(MBR - Master Boot Record), Kernel des Betriebssystems usw. Da im Chipselbst nur eine begrenzte Anzahl von PCR (Platform Configuration Register,in denen die Plattform - Metriken in kondensierter Form abgespeichert werden- die Spezifikation verlangt eine Anzahl von minimal 16) vorhanden ist, die die-se „Fingerabdrücke“ speichern, können zusätzliche Hash - Werte verschlüsseltnach Außen ausgelagert werden.

Abbildung 7: Abfrage von Systemmetriken durch den CRTM während des Bootvor-gangs, Quelle: ([6], Folie 19)

Die Bildung und Prüfung dieser Hash - Werte kann keine in den Programmen „ver-steckte“ Fehler und Backdoors entdecken, die in der Software zum Zeitpunkt desHash - Wert Bildung bereits bestanden. Wenn aber ein Virus eine Systemdatei oderein anderes geschütztes Objekt manipuliert, wird das beim nächsten Bootvorgangerkannt und dem BS - Reportet. Das Verhalten bei Nichterfüllung der Hash - Wert

4 Vertrauenswürdige Plattformen 18

Prüfung wird dann dem BS überlassen. Sollte das BS so manipuliert worden sein,daß keine Warnungen ausgegeben werden, wird spätestens bei der Authentifizierungdurch einen fernen Kommunikationspartner mittels Fernabfrage die Manipulationerkannt und die Plattform als korrumpiert gebrandmarkt.

Bei eventuellen Sicherheitsupdates muß es möglich sein, das BS weiterhin starten zukönnen, selbst wenn dieses Update bestimmte Dateien verändert.

• Der Trusted Software Stack (TSS) ist eine Software-Schnittstelle, über die einAnwender mit seiner Software die Funktionen des TPMs nutzen kann. Dahin-ter steht ein aus mehreren Modulen und Komponenten bestehendes komplexesSoftwarepaket. Die Module übernehmen dabei unterschiedliche Aufgaben aufverschiedenen Ebenen. Die Funktionalitäten sollen von Hardware und Softwareunabhängig sein. Die Module im Kernel-Modus liegen auf der gleichen Ebenewie die Kernkomponenten des Betriebssystems und die Hardwaretreiber. DieModule dieser Ebene haben direkten Zugriff auf das TPM. Weiter oben in derHierarchie sind Schnittstellen und Dienste verfügbar, die es Anwendungspro-grammen erlauben, die Funktionen des TPMs zu nutzen.

Abbildung 8: Module des TSS, Quelle: ([URL:BSI] - Link auf Seite [53])

5 Grundlagen der Kryptographie 19

5 Grundlagen der Kryptographie

5.1 Definition der Sicherheit

Die Sicherheit von Computersystemen und beim Austausch von Daten während derKommunikation über unsichere Kanäle basiert auf vier grundlegenden Forderungen[5], [13].

• Geheimhaltung - Daten können nicht von Unberechtigten gelesen werden

• Authentifizierung - die Identität eines Kommunikationspartners oder einerNachricht wird garantiert

• Nichtabstreitbarkeit - verhindern, daß ein Kommunikationspartner gemach-te Zusagen bzw. Aktionen verneinen kann

• Integrität - Gewähr dafür bieten, daß Daten nicht verändert oder manipuliertworden sind

Ferner gehört zu den Aufgaben der Sicherheit die Verfügbarkeit der Daten sicherzu-stellen.

Um diese Ziele zu erreichen werden kryptographische Verfahren benötigt, mit denenVer- und Entschlüsselung bewerkstelligt wird.

5.2 Übersicht der kryptographischen Begriffe

Im Folgenden wird eine kurze und knappe Übersicht der kryptographischen Begriffegeboten, die für das Verständnis der Funktionsweise der Trusted Computing Tech-nologie hilfreich ist.

5.2.1 Schlüssel

Kryptographische Schlüssel sind im Prinzip sehr lange Zahlenketten (RSA öffent-licher Schlüssel bis 2048 Bit, was im Dezimalsystem einer Zahl mit 617 Stellenentspricht). Sie dienen der Erstellung und Dekodierung eines verschlüsselten Textes,einer Datei oder Nachricht mit Hilfe eines Krypto - Algorithmus. Bei der asymme-trischen Verschlüsselung gilt: je länger die öffentlichen Schlüssel, desto sicherer dasVerfahren; es ist nicht möglich nach heutigem Wissensstand in vertretbarer Zeit undverfügbarer Rechentechnik aus dem öffentlichen den privaten Schlüssel abzuleiten.Diese Zeichenketten (ein Schlüssel bei symmetrischen Verfahren oder Schlüsselpaarbei asymmetrischen Verfahren) werden durch ein Passwort (Passphrase), das nurdem Benutzer bekannt ist und nirgendwo sonst als in seinem Kopf gespeichert wer-den sollte, in verschlüsselter Form gespeichert. Weil das Passwort (Passphrase) an

5 Grundlagen der Kryptographie 20

sich die schwächste Stelle und einen beliebten Angriffspunkt darstellt, wird empfoh-len eine so genannte Passphrase zu verwenden. Die Passprase hat die Eigenschaft,daß sie aus vielen unterschiedlichen Zeichen besteht und eine unzusammenhängendeKette ergibt. Damit sind beliebte „Wörterbuch - Angriffe“ ausgeschlossen.

5.2.2 Digitale Unterschrift

Eine digitale Unterschrift beim asymmetrischen Verfahren wird geleistet, indem beider Verschlüsselung die Daten mit dem privaten Schlüssel des Senders signiert (ver-schlüsselt) werden. Dieses Verfahren erzeugt ein Chiffrat über die Gesamtmenge derNachricht und kann z.B. bei langen Dateien sehr aufwendig und zeitraubend sein.Beim Empfänger können die Daten mit dem öffentlichen Schlüssel des Senders ent-schlüsselt werden, was gleichzeitig die Authentizität des Senders bestätigt und dieIntegrität und Urheberschaft der Nachricht garantiert, wenn zusätzlich durch einevertrauenswürdige Stelle der öffentliche Schlüssel zertifiziert worden ist. Diese Zer-tifizierung ist notwendig, um zu bestätigen, daß der öffentliche Schlüssel tatsächlichder Person gehört, die in einer Schlüsseldatenbank oder Liste als Schlüsselinhaberdes öffentlichen Schlüssels aufgeführt ist. Die Zertifizierungsinstanz überprüft bei derErstellung des Zertifikats, ob die tatsächliche Identität des Antragstellers mit derangegebenen übereinstimmt. Sonst könnte die Gefahr bestehen, daß ein öffentlicherSchlüssel durch einen Dritten manipuliert wird, der die Identität einer Zielpersonannimmt und sich auf diese Weise unberechtigt und unbemerkt in die Kommuni-kation einklinkt. Wenn die Nachricht oder Datei, die signiert werden soll, an sichkeine sicherheitskritischen Informationen enthält und im Vordergrund nur die siche-re Identifikation des Absenders steht, kann ein Hash - Wert der Nachricht signiertwerden, anstatt die gesamte Nachricht zu signieren. Der berechnete Hash - Wertwird dann mit dem privaten Schlüssel des Senders signiert.

5 Grundlagen der Kryptographie 21

5.2.3 Digitale Zertifikate

Ein digitaler Zertifikat ist eine standardisierte Beglaubigung (z.B. - X.509), die demöffentlichen Schlüssel hinzugefügt wird und die eine Überprüfung ermöglicht, ob einöffentlicher Schlüssel tatsächlich dem angegebenen Eigentümer gehört oder gefälschtwurde. Die Beglaubigung wird mit der digitalen Unterschrift einer vertrauensvollenInstanz signiert, die sichergestellt hat, daß die öffentliche Unterschrift dem Antrag-steller gehört. Die Zertifikatsverteilung in einer Umwelt von Kommunikationspart-nern, die sich untereinander nicht kennen, erfordert eine sichere und verlässlicheInfrastruktur (PKI - Public Key Infrastructure, Certificate Server). Näheres regeltein Gesetz [3], das genau bestimmt, welche Voraussetzungen ein Antragsteller er-füllen muß, um eine Zertifizierungsstelle zu betrieben. Ein Beispiel für ein digitalesZertifikat stellt das standardisierte X.509 Zertifikat dar.

Abbildung 9: Beispiel für ein normiertes Zertifikat X.509, Quelle: ([13] S. 17)

Dieses X.509 Zertifikat enthält Informationen über den Inhaber des öffentlichenSchlüssels, die ausstellende Instanz, die Version des Zertifikatsformats, Seriennum-mer des Zertifikats, den Unterschriftenalgorithmus für die Unterschrift des Zertifi-katsausstellers, den Namen der Zertifizierungsinstanz, die Gültigkeitsdauer des Zer-tifikats mit Datum und Uhrzeitangabe bzw. Gültigkeitszeiten und andere Erweite-rungen.

5.2.4 Hash - Wert

Hash - Werte sind speziell beschaffene Prüfsummen einer festen Länge (z.B. 160Bit bei SHA-1) aus beliebig großen Daten - (264 Bit bei SHA-1). Sie stellen denFingerabdruck der Daten dar, was auf ihrer Eindeutigkeit berüht. Die Berechnungder Hash - Werte findet nur in eine Richtung statt. Eine geringfügige Veränderungder originalen Daten erzeugt einen völlig neuen Hash - Wert. Dadurch wird es dem

5 Grundlagen der Kryptographie 22

Empfänger möglich festzustellen, ob die Daten manipuliert worden sind; er bildet denHash - Wert nach derselben Vorschrift neu und vergleicht ihn mit dem empfangenenWert, der identisch sein sollte. Wenn dieses nicht der Fall ist, ist das ein Indikatordafür, daß die Daten auf irgendeine Weise manipuliert worden sind.

5.2.5 Symmetrische Verschlüsselung

Bei der symmetrischen Verschlüsselung werden die Daten oder Nachrichten mit einund demselben Schlüssel verschlüsselt und wieder in Klartext übersetzt. Es stelltsich für die Kommunikation das Problem der sicheren Schlüsselübermittlung, die imGegensatz zum unsicheren Übertragungsweg der Nachricht über einen sicheren Ka-nal erfolgen muß, um unterwegs nicht abgefangen zu werden. Das ist von Bedeutung,wenn die Kommunikationspartner sich nicht kennen und vorher noch nie getroffenhaben; sie können ad hoc keinen sicheren Weg für die Übermittlung finden. JeglicheAbsprache kann mitgehört und somit die Nachrichten abgefangen werden.

Abbildung 10: Prinzip der symmetrischen Verschlüsselung, Quelle: ([5])

m = Klartextc = Chiffretexte = SchlüsselE = VerschlüsselungsalgorithmusD = Entschlüsselungsalgorithmus

5 Grundlagen der Kryptographie 23

Ein Beispiel eines symmetrischen Verschlüsselungsverfahrens ist DES (Data Encryp-tionStandard)

5.2.6 Asymmetrische Verschlüsselung

Um das Problem des Schlüsselaustausches zu entschärfen, wurde ein Verfahren ent-wickelt, das mit einem Schlüsselpaar arbeitet. Nach diesem Verfahren wird einSchlüssel erzeugt, das aus zwei Teilen besteht, die untereinander in Beziehung ste-hen. Ein Teil bleibt geheim und privat, das andere wird öffentlich.

Abbildung 11: Prinzip der asymmetrischen Verschlüsselung, Quelle: ([5])

m = Klartextc = Chiffretexte = öffentlicher Schlüssel von Bobd = privater Schlüssel von BobE = VerschlüsselungsalgorithmusD = Entschlüsselungsalgorithmus

5 Grundlagen der Kryptographie 24

Um Daten an einen Kommunikationspartner zu senden, wird sein öffentlicher Schlüs-sel genommen und die Daten werden mit diesem verschlüsselt. Der Empfänger be-nutzt dann seinen privaten Schlüssel, um diese Daten zu entschlüsseln. Beim Signie-ren von Daten nimmt der Sender seinen privaten Schlüssel und verschlüsselt damitdie Daten, die er verschicken möchte oder nur den Hash - Wert dieser Daten. DerEmpfänger kann mit dem öffentlichen Schlüssel des Unterschreibenden die Datenoder den Hash - Wert entschlüsseln und sich dann sicher sein, daß diese vom diesemSender stammen.

Um Kommunikation unter Partnern zu sichern, die vorher niemals miteinander inKontakt getreten sind, ist eine öffentliche Infrastruktur notwendig, die für die Abfra-ge und Verteilung der Schlüssel sorgt und Manipulationen auf der Basis von digitalenZertifikaten verhindert.

Ein Beispiel für einen asymmetrischen Verschlüsselungsalgorithmus ist RSA. DasVerfahren soll im nächsten Abschnitt aufgrund seiner Rolle und Verwendung fürdie Generierung von Schlüsseln und Verschlüsselung der Daten beim TPM näherbeleuchtet werden.

6 Kryptographische Verfahren im TPM 25

6 Kryptographische Verfahren im TPMIn dem TPM finden kryptographische Verfahren Anwendung, die eine nach demheutigen Wissenstand sichere Verschlüsselung der Daten ermöglichen und für dieBewahrung der Integrität einer vertrauenswürdigen Plattform und die Sicherheitder dort im verschlüsselten Zustand gespeicherten Daten sorgen.

In einer kurzen Einführung soll hier erläutert werden, welche Verschlüsselungsartenes gibt und welche Untermenge davon in der Spezifikation der TCG und der Im-plementierung in den TPM den Einzug gefunden haben. Insbesondere sollen zweigrundlegende Mechanismen anhand kleiner überschaubarer Beispiele erörtert wer-den. Diese sind die Hash - Wert Bildung nach dem SHA-1 Verfahren sowie dieasymmetrische Verschlüsselung nach dem RSA - Verfahren.

Kryptographische Algorithmen können in zwei Klassen unterteilt werden, nämlichin symmetrische und asymmetrische (Public Key) Algorithmen. Symmetrische Al-gorithmen verwendet man normalerweise zum Ver- und Entschlüsseln sicherheits-kritischer Daten, wobei sowohl für die Verschlüsselung wie auch die Entschlüsselungderselbe Schlüssel genutzt wird. Dabei stellen zwei Parteien, die miteinander kommu-nizieren wollen, vor dem Problem der sicheren Schlüsselübermittlung. Deshalb mussfür den Austausch solcher Schlüssel ein sicherer Übertragungsweg gewählt werdenund zuvor ist eine Absprache notwendig, wie dieser Austausch geschehen soll. DieseAbsprache erfordert ihrerseits eine sichere Verbindung zum Kommunikationspartnerusw. Um dieses Problem des sicheren Schlüsselaustausches zu beseitigen, wurden dieasymmetrischen Krypto - Algorithmen entwickelt. Dort kommt ein Schlüsselpaar zurAnwendung: ein privater Schlüssel und ein zugehöriger öffentlicher Schlüssel.

Eine Übersicht über die kryptographischen Primitive und Verfahren kann folgenderGraphik entnommen werden:

6 Kryptographische Verfahren im TPM 26

Abbildung 12: Übersicht über die kryptographischen Verfahren und Primitive, Quel-le: ([5])

Die kryptographischen Verfahren können in Hardware oder Software implementiertsein. Die entscheidenden Faktoren für die Wahl sind die Kosten für Realisierung, Si-cherheitsanforderungen, Flexibilität der gewünschten Lösung (ein in Hardware im-plementierter Algorithmus ist nicht mehr leicht änderbar), der gewünschten underreichbaren Datendurchsatzraten bei der Ver- und Entschlüsselung.

6.1 RSA - Verschlüsselungsverfahren

Das RSA - Verschlüsselungsverfahren ist nach den Erfindern Ron Rivest, Adi Sha-mir und Leonard Adleman benannt. Die Basis des asymmetrischen RSA - Verfahrens

6 Kryptographische Verfahren im TPM 27

ist, dass das Bestimmen von großen Primzahlen im Rechner einfach realisiert wer-den kann, wohingegen das Zerlegen großer Zahlen (eines Produktes zweier großerPrimzahlen) in Faktoren unvergleichbar schwer ist.Ein Benutzer generiert zwei große Primzahlen: p, q und berechtet das Produkt n =pq. n wird öffentlich, p und q bleiben geheim.

Abbildung 13: RSA asymmetrisches Verschlüsselungsverfahren, Quelle: ([5])

RSA - Algorithmus funktioniert nach folgenden Vorschriften:

Bildung des öffentlichen Schlüssels e:

n ist ein Produkt zweier geheimer Primärzahlen p und q.

e ist der öffentliche Chiffrierschlüssel mit einer Länge von 2048 Bit, der von einemZufallsgenerator generiert wird, eine Primzahl ist und relativ prim zu:

φ(n) = (p− 1)(q − 1).

6 Kryptographische Verfahren im TPM 28

Relativ prim bedeutet, daß die Zufallszahl e und φ(n) teilerfremd sind.

GGT (e, φ(n)) = 1.

Die Berechnung des privaten Schlüssels d findet nach folgender Formel5 statt:

d ist der private Dechiffrierschlüssel, d ≡ e−1mod(φ(n)).

Verschlüsselung:

c ≡ memod(n), mit m als Nachricht und c als Chiffre

Entschlüsselung:

m ≡ cdmod(n).

6.1.1 Beispiel für RSA - Verschlüsselung

Ein Beispiel soll das Vorgehen bei der RSA - Verschlüsselungsmethode anhand klei-ner Zahlen verdeutlichen. In der praktischen Anwendung ist das Verfahren aufgrundder Potenzrechnung für sehr große Zahlen sehr rechenintensiv. Durch ausgeklügelteAlgorithmen wird die Potenzierung optimiert und durch Hardwareimplementierun-gen beschleunigt.

Beispiel RSA - Schlüsselbildung, Verschlüsselung und Entschlüsselung

Wähle Primzahlen: p = 17, q = 31.

Bilde Produkt: n = pq = (17)(31) = 527.

Berechne Euklidische Funktion: φ(n) = (p− 1)(q − 1) = (16)(30) = 480.

Wähle zufällig öffentlichen Chiffrierschlüssel: e, so daß: GGT (e, φ(n)) = 1.Wähle e = 7.

Probe: GGT (e, φ(n)) = (7, 480) = 1.

Berechne privaten Schlüssel: d ≡ e−1mod(φ(n)) ≡ 7−1mod(480) ≡ 343.

5Berechne die Zahl d so, dass das Produkt ed kongruent 1 bezüglich des Modulus φ(n) ist,dass also ed ≡ 1modφ(n) gilt - Quelle: ([URL:Wikipedia] Link auf Seite [54] Suchwort: RSA-Kryptosystem). Oder, wie aufgeführt, wird der private Schlüssel d unter Benutzung des Euklidi-schen Algorithmus durch das multiplikative Inverse von e berechnet - Quelle: ([5] S. 166)

6 Kryptographische Verfahren im TPM 29

Wähle eine Beispiel - Nachricht: m = 2.

wenn m = 2 (Klartext), wird m verschlüsselt zu: c (Chiffretext) c ≡ memod(n).c ≡ 27mod(527) ≡ 128mod(527) ≡ 128.

Um die chiffrierte Nachricht c zu entschlüsseln, wird der private Schlüssel d benötigt:

m ≡ cdmod(n).m ≡ 128343mod(527) ≡ 2.

Rechnung mit MuPAD, um einen Eindruck von der Ordnung6 der durchzuführendenPotenzrechnungen zu bekommen:

128343 =

592952069579956268241627388211778393274286198955266649632164629073782122661157921434915260404230922614742806069190341871448978586050151754701009355157292993870093717188959431476690934729713036287125126386412204941468015111225828192414210538356977781895486602586595301676884305455520093034893660591804006396064517212227168207059806440679346161213589782284394480610368284491342731806181791379687474475023624171396667403413123559648601250655209452920260855166920070548411619151715266691805980753434129540911678517546343021014198264220056155456320533593118890816844467960019290976068938266808477498292715851950800619520163251574678048355327472326371611502330832967138274750888516926440263399930535974552194685858589838778826752

6.2 SHA - 1 Secure Hash Algorithm

Der SHA-1 Algorithmus erstellt aus Dateien von einer Größe bis 264 Bit einen 160Bit langen Hash - Wert. Dieser Hash - Wert bildet den Fingerabdruck der Datei.Es ist sichergestellt, daß nur eine völlig identische Datei den selben Fingerabdruckbesitzt. Dieses Verfahren wird im Zusammenhang mit dem DSA (Digital SignatureAlgorithm) verwendet, das daraus eine digitale Signatur generiert, was bei der digi-talen Unterschrift einen Vorteil bietet: signieren des Hash - Wertes ist schneller alsder gesamten Datei.

Zuerst wird eine Datei oder Nachricht mit padding - Bits auf eine durch 512 teilbareLänge ergänzt. SHA -1 verarbeitet sequenziell Blöcke dieser Größe. Die letzten 64Bit des Schlussblocks geben die Länge der Datei an.

6In der Praxis existieren Algorithmen und Hardwareimplementierungen, die die anfallendenPotenzrechnungen effizient durchführen. Referenz: [5]

6 Kryptographische Verfahren im TPM 30

6.2.1 Beispiel für padding beim SHA-1

Bsp. Original - Nachricht / Datenblock (binär):

011000010110001001100011 Länge = 24 Bit

Eine 1 (binär) hinzufügen:

0110000101100010011000111 Länge = 25 Bit

Die binäre 1 wird am Ende der Originalnachricht hinzugefügt, um eine eventuelle 0die noch zu der Message gehören kann von den füll - Nullen zu unterscheiden.

Bis zur Stelle (512− 64) mit 0 füllen

In den letzten 64 Bits die Länge des Originals ohne die hinzugefügte 1 angeben:

00000018 hex

Bsp. Hex:

61626380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018

16 Wörter a 4 Bytes = 512 Bit

6 Kryptographische Verfahren im TPM 31

6.2.2 SHA - Hardwareimplementierung

Die Hardware - Implementierung des SHA-1 Algorithmus setzt sich zusammen auseinem Präprozessor, der immer fortlaufend 64 Bytes aufnimmt (512 Bit), einemMessage Scheduler, der diese dann mit einem speziellem Verfahren von 16 32-Bitzu 80 32-Bit - Blöcken transformiert. Diese 80 32-Bit breiten Blöcke werden in demMessage Digest Block - Transformationen unterzogen, die die Entropie des Hash-Wertes steigern. Die Ergebnisse von 80 Durchläufen werden in den Zwischenregisterngespeichert, bis der letzte Block abgearbeitet wurde. Die nach dem letzten Durchlaufin den Ergebnisregistern vorhandenen Werte werden dann zu einem String verknüpftund ergeben den Fingerabdruck einer Nachricht oder Datei.

Abbildung 14: Hardware Implementierung von SHA-1, Quelle: ([15], S. 5)

6 Kryptographische Verfahren im TPM 32

6.2.3 Aufbau Message Digest Block bei SHA-1

Der interne Aufbau des Message Digest Blocks besteht aus fünf 32-Bit Eingangs-und Ausgangsregistern und Schaltlogik, die mit Verknüpfung der Daten aus diesenRegistern mit definierten Funktionen die 80 geforderten Interationsschritte realisiert.

Abbildung 15: Interner Aufbau von Message Digest bei SHA-1, Quelle: ([14], S. 152)

A,B,C,D,E - 32 Bit RegisterWt= 32 Bit WörterKt= Konstantenft= logische FunktionSi= Linksschieben logisch

ft, Wt, Kt sind von der aktuellen Laufvariablen abhängig und ändern sich der Num-mer des Iterationsschrittes entsprechend.

A,B,C,D,E - 32 Bit Register mit festgelegten Initialisierungswerten. Initialisierungs-konstanten7, die in der Spezifikation definiert sind:

H0 = 67 45 23 01H1 = ef cd ab 89H2 = 98 ba dc feH3 = 10 32 54 76H4 = c3 d2 e1 f0

7Die Konstanten werden als Initialisierungswerte der Register A− E benötigt, vor dem erstenDurchlaf eines Datenblocks. Referenz: ([14] S. 150)

6 Kryptographische Verfahren im TPM 33

Funktionen:

Abbildung 16: Bei SHA-1 verwendete Funktionen für die Blockbearbeitung, Quelle:([14], S. 150)

Wahrheitstabelle der Funktionen:

Abbildung 17: Wahrheitstafel für die bei SHA-1 verwendeten Funktionen, Quelle:([14], S. 151)

6 Kryptographische Verfahren im TPM 34

Konstanten:

Abbildung 18: Konstanten bei SHA-1 während der Berechnung vom Message Digesteines Blocks, Quelle: ([14], S. 150)

Mit diesen Voraussetzungen findet die Hash - Wert Berechnung nach folgender Vor-schrift statt:

Die 16 4-Byte Blöcke M0 bis M15 werden sequentiell verarbeitet. Die Verarbeitungeines jeden Mi umfasst 80 Schritte. Zuerst werden die 16 (32 Bit) Blöcke zu 80 (32-Bit) Blöcken transformiert: Ein Block wird in 16 Wörter aufgeteilt W0 bis W16

Für t = 0 bis 15 Wt = Mt

Für t = 16 bis 79 Wt = S1(W(t−16)⊕

W(t−14)⊕

W(t−8)⊕

W(t−3))

Initialisierung mit A = H1, B = H2, C = H3, D = H4, E = H5

Dann werden 80 Berechnungsschritte durchgeführt:

Nach dem letzten Berechnungsschritt für das n-te 512-Bit Block einer Datei bzw.Nachricht steht das Ergebnis - der 160 Bit Hash - Wert in den Ergebnisregistern.

6 Kryptographische Verfahren im TPM 35

6.2.4 SHA - Familie Übersicht

SHA-1 ist der Vertreter einer ganzen Familie, die sich im Bezug auf die Größe desHash - Wertes ändert und andere Parameter bei der Berechnung berücksichtigt.

Die folgende Tabelle gibt darüber Auskunft:

Abbildung 19: SHA Secure Hash Algorithm - Familie Übersicht, Quelle: ([15], S. 3)

In der zweiten Zeile der Tabelle: „Complexity of the best attack“ ist die Komplexitätvom so genannten „Birthday attack“ - gemeint: Suche nach einer Nachricht mit iden-tischem Hash - Wert durch Ausprobieren aller Möglichkeiten; im Durchschnitt sindO(n) = 2(n

2) Suchvorgänge, Quelle: ([15], S. 2 Functional Comparison) notwendig,

mit n = Größe des Hash - Werts.

7 TPM Spezifikation 1.2 der TCG 36

7 TPM Spezifikation 1.2 der TCGDie ersten beiden Spezifikationen der TCPA 1.0, 1.1 und 1.1b wurden durch die ineinigen wichtigen Punkten geänderte 1.2 Version der Spezifikation (Referenz: [24])der TCG abgelöst.

In der TCG Spezifikation werden in einer Dokumentenhierarchie alle Anforderungendefinieret, über die ein TPM verfügen muß.

Abbildung 20: Öffentliche Spezifikation und Dokumentation der TCG, Quelle: ([24]S. 6)

Die Hauptspezifikation gliedert sich in vier Teildokumente, die im Detail auf dieinterne Struktur des TPM eingehen sowie die Programmierschnittstelle definieren.

Auf der Basis dieser Spezifikation sind Implementierungen verschiedener Firmenentstanden, u.A. Infineon, Atmel, Broadcom, National Semiconductor.

8 Trusted Platform Module 37

8 Trusted Platform Module

8.1 Funktionsweise

Die meisten derzeitigen Sicherheitslösungen sind Softwarebasiert, wie z.B. PGP.Demzufolge bieten sie keine ausreichende Sicherheit und können nicht vor physi-kalischen oder logischen Angriffen schützen. Bei TPM handelt es sich dagegen umeine Sicherheitslösung, die sowohl Hardware- als auch Softwarebasiert arbeitet. Sieist, wenn durch den Benutzer gewollt, ein integraler Bestandteil des Bootvorgangsder Rechnerplattform und auch durch entsprechende Treiber im Betriebssystem in-tegriert. Physikalisch vom Hauptprozessor getrennt, ist ein TPM - Mikrocontrollerwie ein externes Gerät anzusprechen.

Der vor Manipulation geschützte und abgeschirmte sichere Speicher innerhalb desTPM ist die Grundlage für diese Lösung. Bei der Generierung eines Schlüssels oderZertifikats für verschlüsselte Daten durch die Systemsoftware werden diese Schlüsselund Zertifikate in geschützten Speicherbereich des TPM erzeugt und versiegelt.

8.2 Architektur des Infineon TPM SLB 9635 TT 1.2

Abbildung 21: Architektur des TCP, Quelle und Referenz: ([20] S. 19)

8 Trusted Platform Module 38

8.3 Infineon TPM - Hardware Merkmale

Das Infineon TPM erfüllt die TCG 1.2 TPM Spezifikation für Hard und Firmware.Es basiert auf der Sicherheitsarchitektur der SLE66CXxxPE - 16 Bit Smartcard -Mikrocontroller Familie und arbeitet mit 33 MHz Systemtakt [11], [23], [28]. DasTPM wird zurzeit in der 0.22 µm CMOS - Technologie gefertigt und aufgrund derPackdichte als LSI - Chips klassifiziert. Dem Chip wurde durch das Bundsamt fürDatenschutz und Informationstechnik das EAL - Level 5 Zertifikat nach der CommonCriteria Certification - eines unabhängigen Zertifizierungsgremium für die Evaluie-rung der Sicherheit in der Mikrochip - Branche vergeben.

Der TPM - Mikrocontroller weist folgende Baugruppen auf:

• EEPROM Speicher für Daten, Schlüssel und Firmware - Erweiterungen

• I/O - Low Pin Count (LPC) Busanschluss für eine direkte Anbindung an denProzessor

• True Random Number Generator (basiert auf physikalischen Effekten)

• Ausstattung mit mehreren kryptographischen Funktionen

• Hardware SHA-1 encryption/decryption Einheit

• RSA - Schlüsselgenerierung sowie Ver- und Entschlüsselung durch Kombina-tion aus Software (RSA 2048 Bibliothek, auf die das OS zugreifen kann) undHardware (8 Bit RISC)

• Monotone Zähler, die nur erhöht aber nicht zurückgesetzt werden können,individuelle Uhr

8.4 TPM - Sicherheitsmerkmale

Referenz: [11].

• Überprüfung des Betriebszustands durch Filtern von allen Signalen

• Protektion gegen aktive und passive Lauschangriffe

• Gegenmaßnahmen gegen SPA (Simple Power Analysis)

• EMA (Electro Magnetic Analysis, auch Licht)

• DFA (Differential Failure Analysis) - Attacken

• Differential Power Analysis (DPA) - Protektion während Triple - DES

• Auslieferung mit gesperrtem Test-Mode

8 Trusted Platform Module 39

• Datenverschlüsselung on Chip und beim Transport über das interne Bussystem

• Nur der Schlüsselinhaber kann Daten auslesen

• Chipoberfläche durch einen aktiven Schirm vor physikalischer Manipulationgesichert (Kontaktdrähte), Chip - Layout verschleiert

• MMU erlaubt die Definition von unterschiedlichen Zugriffsrechten auf spezifi-zierte Bereiche des TPM

8.5 TPM Dienstleistungen - Überblick

TPM ist die Hardware - Basis für Trusted Computing. Es ist ein LSI - Mikrocontrol-ler, der in seinem Speicherbereich sicher digitale Schlüssel, Zertifikate und Passwörterspeichern kann. Er kann nicht so einfach wie eine Software oder „übliche“ Hardware(im Sinne von Hardware - Sicherheitsmerkmalen, die einer Smartcard ähnlich sindund das Common Criteria Sicherheitszertifikat der Stufe 5 erhalten haben) einemAngriff unterzogen werden.

Eine Trusted Platform ist ein System, das seine Unversehrtheit dem lokalen Benut-zer oder einer entfernten Instanz beweisen kann.

Trusted Platform wird nicht alleine durch den TPM gebildet. Dazu gehört Software,die im TPM implementierte Dienste anwenden kann. Erst die Certification Autho-rities (CA) machen das Konzept komplett, indem sie die Zustände der Plattformengegenüber Dritten attestieren können.

Ein Trusted Platform Subsystem besteht aus dem Trusted Platform Module (TPM),dem Core Root of Trust for Measurement (CRTM) und den Trusted Platform Sup-port Service (TSS).

CRTM ist die in einem BIOS implementierte Software, die während des Bootvorgan-ges als erste ausgeführt wird und damit ein sicheres Booten ermöglicht. Die Schnitt-stelle zum Betriebssystem bildet das TSS, in welchem alle verfügbaren Funktionendefiniert werden, und den Programmierern von Anwendungen ein unproblematischesBenutzen der Schnittstellen erlauben.

Die Vertrauensbeziehung einer Trusted Platform basiert auf drei Komponenten, de-nen implizit vertraut werden muß, weil auf diesem Fundament die gesamte Vertrau-enskette aufgebaut wird.

Die Komponenten bieten Funktionalitäten für das Messen, Speichern und Bericht-erstattung über bestimmte Metriken der Plattform an. Diese Metriken werden inPlatform Configuration Registers (PCR) gespeichert.

8 Trusted Platform Module 40

Der Trusted Platform Module agiert als RTS und RTR, während das CRTM als Teildes BIOS implementiert ist.

Im TPM sind RTS und RTR vereinigt. RTM ist die Plattform an sich. CRTM stellteine Teilmenge des RTM dar und soll in der Zukunft wahrscheinlich in das TPMintegriert werden.

Abbildung 22: Vertrauenswürdige Plattform - Baugruppen und Zusammenspiel derModule, Quelle: ([7] S. 32)

Allerdings wird, wenn aktiviert, die während des Bootvorganges in Verbindung mitdem BIOS gewonnene Information über die Konfiguration des Rechners in PCRs(Platform Configuration Register) Hardware - Konfigurationsregistern gespeichert,die später vom Betriebsystem und Anwendungen abgefragt werden kann. Auf dieseWeise wird jede Änderung des Bootvorganges bemerkt. Wie auf diese Änderungenzu reagieren ist, steht dem Betriebssystem bzw. den Anwendungen offen.

8.6 Inhalt des TPM

Im Speicher des TPM finden verschiedene Schlüssel, Zustände (in Platfrom Confi-guration Registern) und Zertifikate Platz [7], Referenz [URL:BSI] auf Seite 53.

8 Trusted Platform Module 41

8.6.1 Migrierbare und nicht migrierbare Schlüssel

Diese auf dem eindeutigen Endorsement Key aufbauende Schlüsselhierarchie gibtes zweimal, für die migrierbaren und nicht migrierbaren Schlüssel. MigrationsfähigeSchlüssel schützen Daten, die auf mehreren Plattformen verwendet werden sollen.Nicht migrationsfähige Schlüssel werden nur für ein einziges TPM (eine Plattform)verwendet und sind nicht gegen das Versagen des Systems oder des TPM geschützt.

Fällt das System aus, sind alle nicht migrationsfähigen Schlüssel und alle damit ver-schlüsselten Daten unzugänglich und nicht wiederherstellbar.

Abbildung 23: Schlüsselhierarchie des TPM, Quelle: ([7] S. 37)

8.6.2 Endorsement Key (EK)

Dieser Schlüssel stellt ein private/public - Paar dar, von dem der private Teil niemalsdas TPM verlassen kann. Dieser Schlüssel wird bei der Herstellung des TPM erzeugtoder kann vom Benutzer während der Inbetriebnahme des TPM generiert werden.Dieser Schlüsselpaar ist durch ein spezielles Endorsement - Zertifikat geschützt. Je-des TPM besitzt einen eindeutigen EK. Auf dieser Eigenschaft der Einzigartigkeit

8 Trusted Platform Module 42

des EK beruht die Vertrauenswürdigkeit des TPM. Deswegen ist seit der Spezifika-tion 1.2 der TCG dem Anwender erlaubt, diesen Schlüsselpaar selbst zu generieren.Dadurch wird sichergestellt, daß nur dieser über den Schlüssel verfügt und daß keinezweite Kopie des privaten Schlüsselteils existiert.

8.6.3 Attestation Identity Key (AIK)

Mit diesen Schlüsseln können pseudo- - anonyme Identitäten gebildet werden. DieAIK werden vom EK abgeleitet. Diese Schlüssel dienen sowohl der Authentifizierungwie auch der Integritätsprüfung bei einem Service - Provider. Damit kann sich die-ser sicher sein, daß die Kommunikationsaufnehmende Plattform vertrauenswürdig(eingesetzte Hard und Software) ist.

8.6.4 Storage Root Key (SRK)

Von diesem Schlüssel werden weitere Keys verschlüsselt, die ihrerseits weitere Schlüs-sel oder auch Daten verschlüsseln können. Dadurch wird eine Hierarchie von Schlüs-seln aufgebaut, deren Vertrauenswürdigkeit auf die Vertrauenswürdigkeit des SRKzurückgeht. Dieser Schlüssel ist im sicheren Speicherbereich des TPM untergebrachtund findet keine andere Verwendung. Der SRK - Schlüssel wird bei der Inbetrieb-nahme des TPM durch seinen Besitzer oder Benutzer erzeugt.

8.6.5 Zertifikate

Das Endorsement - Zertifikat bestätigt die Echtheit des TPM. Es enthält denöffentlichen Schlüssel des EK und wird zur Bildung der AIKs verwendet.

Mit dem Platform - Zertifikat attestiert der Hersteller der Plattform, ein echtesTPM eingebaut zu haben. Das Plattformzertifikat wird ebenfalls zur Bildung vonAIKs benutzt.

Mit dem Conformance - Zertifikat attestiert ein Labor, daß die Sicherheitsfunk-tionen des TPM geprüft worden sind und diesen Test erfolgreich bestanden haben.

8.6.6 Binden, Signieren und Versiegeln

In den nachfolgenden Zeilen werden die Begriffe des Bindens, Signierens und Ver-siegelns im Zusammenhang mit vertrauenswürdigen Plattformen erläutert:

Binden - eine Nachricht wird mit dem öffentlichen, migrierbaren Schlüssel ver-schlüsselt. Der Schlüssel wird im TPM gespeichert.

8 Trusted Platform Module 43

Abbildung 24: Zertifizierungen und Schlüssel - Inhalte des TPM, Quelle: ([URL:BSI]- Link auf Seite [53])

Versiegeln - eine Nachricht wird mit dem öffentlichen, migrierbaren Schlüssel ver-schlüsselt und zusätzlich mit einer Menge von Plattform - Metriken aus den PCRs.Die Daten können nur dann entschlüsselt werden, wenn sich die Konfiguration desSystems nicht ändert. In diesem Fall sind die Daten an die individuelle Plattformgebunden.

Signieren - Digitale Unterschrift auf der Basis vom privaten Schlüssel für die Si-gnaturzwecke.

Versiegeltes Signieren - wie beim Signieren mit dem Unterschied, daß aktuellePlattform - Metriken verwendet werden.

8.7 Attestation des Zustands von Trusted Platforms

Die TCG hegt davon aus, daß alleine durch Software die Vertrauenswürdigkeit ei-ner PC - Plattform nicht garantiert werden kann, solange bis sichergestellt werdenkann, daß die Plattform und auf ihr ausgeführte Software sich so verhalten, wie daserwartet wird.

Aus diesem Grund hat die TCG einen Mechanismus entwickelt, mit dem der Zustandaller unter einem gegebenen Betriebssystem und bestimmter Hardware ablaufenderApplikationen auf eine vertrauenswürdige Weise attestiert werden kann.

Dazu wird eine Reihe von Metriken generiert, die aus der auszuführenden Software

8 Trusted Platform Module 44

oder der gerade ausgeführten Software berechnet werden.

Dieses Verfahren basiert auf dem Fundament von so genannten „roots of trust“ diefest mit der PC - Plattform verbundenen minimalen Software ( Core Root of Trustfor Measuring Integrity Metrics), die in einem BIOS implementiert wird und die üb-rigens nicht durch besondere Maßnahmen geschützt sein muß, sowie einer Hardwarein Form von dem TPM.

TPM und CRTM als die Fundamente der Vertrauenswürdigkeit sind die einzigenBestandteile einer Plattform, denen implizit vertraut wird.

Die Quintessenz der TCPA/TCG Vorgehensweise ist auf dieser Grundlage, die Ver-trauenswürdigkeit einer Plattform stufenweise auf weitere Komponenten dieser Platt-form zu erweitern.

Jede Komponente einer Plattform misst die nächste Komponente in der Kette undspeichert die Messergebnisse in den sicheren Platform Configuration Register (PCR)innerhalb des TPM ab. Diese Herangehensweise stellt sicher, daß jeder Binärcodegemessen und die Ergebnisse der Messung abgespeichert werden, bevor dieser zurAusführung kommt. Auf diese Weise kann auf so einer Plattform keine Software zurAusführung kommen, die nachträglich manipuliert wurde.

Während eines typischen Bootvorgangs funktioniert dieser Prozess der Erweiterungder vertrauenswürdigen Bereiche wie folgt:

Beim Start wird die Kontrolle an das BIOS übergeben. Als erste Tätigkeit wird dieCRTM Software ausgeführt und misst ihre eigene Integrität und die des gesamtenBIOS. Das Ergebnis dieser Messung wird innerhalb des TPM in einem PCR sicherabgelegt. Sobald die Metriken innerhalb des TPM abgespeichert werden, könne sienicht verändert oder gelöscht werden, bis die Plattform erneut gebootet wird. Dannwird die Kontrolle von CRTM an das BIOS übergeben, das die Integrität des Mas-ter Boot Record (MBR) überprüft, die Ergebnisse in einem weiteren PCR speichertund die weitere Ausführung an den MBR übergibt. Der MBR prüft die Integritätdes Betriebssystems, indem die Hash - Werte aller zu ladenden Module miteinanderkombiniert und in einem weiteren PCR abspeichert. Letztendlich überprüft das Be-triebssystem die Integritätsmetriken der eigenen Komponenten und aller Software,die auf der Plattform ausgeführt werden soll, und legt seinerseits die Ergebnisse ineinen weiteren PCR ab. Beim Ausführen weiterer Software werden die Integritäts-metriken im PCR aktualisiert.

Als Endeffekt wurde eine Kette der Vertrauenswürdigkeit etabliert, die ihren Ur-sprung in den Fundamenten der CRTM und den TPM nahm und auf die alle aufder Plattform zur Ausführung gebrachte Anwendungen lückenlos ausgeweitet wurde.

8 Trusted Platform Module 45

Dieses Verfahren kann jetzt dazu benutzt werden, um lokalen und fernen Benut-zern der Plattform den Integritätsstatus dieser anzuzeigen. In einem so genann-ten „integrity challange“ wird der aktuelle Zustand der Plattform, wie er durch dieIntegritätsmetriken berichtet wird, mit einem erwarteten Zustand verglichen. DieInformation darüber, wie ein erwarteter Zustand auszusehen hat, kann von den Va-lidation Entities (VEs) bezogen werden. Die VEs erteilen Zertifikate für Software -Applikationen, die einen erwarteten Zustand (Wert der Metrik) festsetzten, basie-rend auf der Annahme, daß diese Software auf einer vertrauenswürdigen Plattformausgeführt wird. Durch Vergleich dieser beiden Angaben, einerseits der Metriken derPlattform selbst mit der bei einer VE abgelegten Metrik kann festgestellt werden,ob die Software einer Manipulation unterzogen worden ist.

Dieser Mechanismus wird auch benutzt, um sicherzustellen, daß es beim Booten derPlattform zu keiner Manipulation gekommen ist (Trusted Boot). Wenn während desBootvorgangs das TPM feststellt, daß das System weitere Software lädt, deren Si-cherheit nicht gewährleistet ist, ist das BIOS dann in der Lage, den Bootprozess zuunterbrechen. Dieser als „Sicheres Bootprozess“ bezeichnete Vorgang garantiert, daßeine Plattform nach dem Booten sich entweder in einem sicheren Software - Statusbefindet oder erst mal gar nicht gestartet werden kann.

TCG ermöglicht auch die Erzeugung von vertrauenswürdigen Identitäten (trustedidentities). Obwohl in jeder vertrauenswürdiger Plattform vorhanden, wird das En-dorsement Certificate nicht für diesen Zweck benutzt. Mit Hilfe von „Privacy Certifi-cation Authorities“ können mehrere pseudoanonyme Zertifikate für ein und dieselbePlattform beantragt werden, die dann für die Kommunikation mit verschiedenenInhaltsanbietern genutzt werden können. Pseudoanonym deswegen, weil die PrivacyCA durchaus in der Lage ist, unter diesen pseudo- Identitäten auf die ursprünglichezurückzuschließen.

Um diese Einschränkung zu umgehen, kann der Benutzer seine anonyme Identitätbei verschiedenen voneinander unabhängigen Privacy - CA beantragen.

8.8 TPM Protected Objects

Ferner ermöglicht TCG die gesicherte Speicherung von potentiell uneingeschränkterMenge an Daten. In dem gesicherten Speicherbereich des TPM wird der private Teildes Storage Root Key SRK gespeichert, der diesen sicheren Platz niemals verlässt.Dieser Schlüssel wird dazu benutzt, um beliebige Daten zu ver- und entschlüsseln,was selbstverständlich auch andere Schlüssel, die vom Benutzer generiert werdenkönnen, impliziert. Diese Schlüssel und damit verschlüsselte Daten werden als „TPMprotected objects“ bezeichnet.

Insbesondere im Bezug auf DRM ist wichtig zu unterstreichen, daß diese Objekte

8 Trusted Platform Module 46

Abbildung 25: Objekthierarchie, Erzeugung und Benutzung von Schlüsseln, Quelle:([18] Folie 8)

mit einem bestimmten Zustand der Plattform versiegelt werden können, d.h. derZugriff auf diese ist nur dann möglich, wenn sich der Zustand dieser Plattform zwi-schendurch nicht ändert. Dieses Merkmal ermöglicht die Beschränkung des Zugangsauf die Daten, sowohl gegenüber dem lokalen Benutzer als auch einer fernen Instanz.Es kann von Anbietern digitaler Inhalte genutzt werden, die sicherstellen wollen, daßauf die übermittelten Inhalte von den Kunden nur dann zugegriffen werden kann,wenn sich die Geräte in einem sicheren Zustand befinden.

TCG unterscheidet unter migrierbaren und nicht - migrierbaren Objekten. Wie derName schon sagt, die erste Sorte von Objekten kann auf andere Plattformen übertra-gen werden, wohingegen die nicht migrierbaren Objekte an eine bestimmte Plattformgebunden sind. Die nicht migrierbaren sind für die Durchsetzung der DRM wichtig,weil sie sicherstellen, daß die Inhalte nur auf einer Plattform benutzt werden könnenund Duplikate unmöglich machen.

In der TCG Sicherheitsarchitektur gibt es keine globalen Geheimnisse. Jede vertrau-enswürdige Plattform ist mit eindeutigen Schlüsseln ausgestattet. Wenn ein Angrei-fer in eine Plattform einbricht, bleibt die Architektur davon unberührt, weil alleanderen Plattformen davon unberührt bleiben.

8 Trusted Platform Module 47

8.9 Direct Anonymous Attestation (DAA)

In den Spezifikationen vor 1.2 setzte der Vorgang der Attestation („Beglaubigung“)voraus, dass eine Zertifizierungsstelle einen eindeutigen Identifikationsschlüssel, denEndoresment Key aus dem TPM des Anwenders kennt, der beim Hersteller verge-ben worden ist. Seitdem die Erzeugung dieses Schlüssels beim Anwender erlaubtist, musste ein Verfahren entwickelt werden diesen über eine Netzwerkverbindungzu attestieren.

Direct Anonymous Attestation (DAA) setzt auf der kryptographischen Technologie„Zero Knowledge Proof“ auf.

DAA bietet zwei Instanzen die Möglichkeit, sich gegenseitig ohne direkten Austauscheines Geheimnisses zu authentifizieren - stattdessen tauschen sie Informationen aus,anhand derer sie erkennen, dass die Gegenstelle dasselbe Geheimnis kennt.

8.10 Gefahren bei der Verwendung von TPM

Beim Verlust einer beliebigen Passphrase kann auf die Daten, die mit dem von derPassphrase geschützten Schlüssel chiffriert wurden, nicht mehr zugegriffen werden.

Ausfall der Festplatte, auf der die verschlüsselten Daten abgelegt werden, kann einenunwiederbringlichen Verlust bedeuten, es sei denn, daß eine regelmäßige Datensiche-rung (Festplatten - Image) statt findet.

Beim Ausfall der Plattform und damit verbunden des TPM sind nicht migrations-fähige Schlüssel verloren und damit alle Daten, die damit verschlüsselt wurden. DieHersteller sollen in der Lage sein, aus einem defekten Motherboard die Daten desTPM auslesen zu können und auf eine neue Plattform desselben Typs, zu übertra-gen, die Kenntnis der Passphrasen vorausgesetzt.

Beim Löschen der Besitzerkennung (Endoresment Key), um das System auf einenanderen Besitzer zu übertragen, sind alle bis auf die migrationsfähigen Schlüsselverloren und damit alle Daten, die mit Hilfe der Schlüssel chiffriert worden sind.

9 Anwendungsgebiete 48

9 AnwendungsgebieteDie Anwendungen des TPM sind auf allen Gebieten der digitalen Informations-verarbeitung anzutreffen. Die Liste der Mitglieder der TCG umfasst die führendenHardware- und Software- Hersteller, Telekommunikations und Netzwerkausrüster.

Die wichtigsten Anwendungsmöglichkeiten machen sich die vom TPM angeboteneFunktionalität zunutze.

Hardwareunterstützte Kryptographie:

• asymmetrische Verschlüsselung

• Berechnung und Verifizierung von Signaturen

• Berechnung von Hashfunktionen

• Berechnung von Zufallszahlen

Unterstützung von sicheren Protokollen im Netzwerk:

• IP-Sec

• S-MIME

• WLAN - Verschlüsselung

• SSL

Schutz von Daten:

Schlüssel können im TPM gespeichert werden, die Benutzung dieser Schlüssel istnur bei erfolgreicher Authentifizierung (PIN, Passphrase) und Zugang zum TPMmöglich.

Die Entschlüsselung von Daten kann an einen bestimmten Zustand der Hardwaregekoppelt werden, die Daten auf einer entwendeten Festplatte lassen sich dann aufeiner anderen Plattform nicht entschlüsseln.

Passwörter können in dem geschützte Speicherbereich des TPM abgelegt werden,TSS stellt dafür Management - Funktionen zur Verfügung.

Plattform und Anwender -Authentifizierung:

9 Anwendungsgebiete 49

• Ausweitung des Sicherheitsbereiches für Verwaltungs- und Administratorope-rationen außerhalb des Rechenzentrums

• Beim Fernzugriff auf Daten in einem Unternehmen oder Behörde kann über-prüft werden, ob die Verbindungaufnehmende Plattform nicht kompromittiertwurde.

Businessanwendungen:

Die Sicherheit von VPN - Lösungen kann durch Überprüfung der Integrität dereingesetzten Hardware überprüft werden.Verwendung anonymer Signaturen für die Kommunikation im B2B, B2C.Entsprechend sind auch die Anwendungsmöglichkeiten der TMP - Chips nicht mehrausschließlich auf die PC Technik beschränkt und auf folgende Gerätefamilien an-wendbar, in einigen zum Teil bereits im Einsatz:

PDA und Smart - Phones können durch TPM bei einem eventuellen Verlust gegenDatendiebstahl gesichert werden, wenn das Betriebssystem TPM unterstützt.

Mobile communication applications - UMTS Mobilgeräte, die non - stop im Netzwerkagieren können um die Fähigkeit erweitert werden, Zertifikate intern zu speichernund dadurch neue Geschäftsfelder erobern.

Kommunikationsanwendungen WLAN, Network Remonte Access können von derIntegration der TPM - Module durch erhöhte Sicherheit profitieren.

Eingebettete Systeme in Fahrzeugen und in anderen Geräten können durch TPMbesser vor Manipulationen geschützt werden.

Digital Rights Management - Überwachung der Zugriffsrechte auf Copyright - Ge-schützte Daten wie Spiele, Musik oder Videos oder auf sensible Unternehmensdaten.

10 Trusted Computing - Fazit 50

10 Trusted Computing - FazitZurzeit ermöglicht eine Trusted Platform einen sicheren Bootvorgang, Überwachungdes Systemzustandes, Authentifizierung im Netzwerk und stellt Krypto - Funktionensowie einen sicheren Speicher für die Krypto - Schlüssel des Anwenders bereit. DasKonzept des Trusted Computing entschärft nicht das Problem von kritischen Fehlernin der Software, die Angreifer für ihre Attacken nutzen können. VertrauenswürdigePlattformen ermöglichen das Erkennen jeder Änderung der Binärdateien bezogenauf einen als vertrauenswürdig bekannten ursprünglichen Zustand und überlassendie Wahl einer adäquaten Reaktion auf mögliche Abweichungen von diesen Sollwer-ten dem BIOS oder dem Betriebsystem.

Die Prüfung der Integrität einer Trusted Plattform durch Certification Authorietiesist aufgrund des möglichen Einsatzes einer unbegrenzten Anzahl möglicher Software-und Hardware- Konfigurationen problematisch. Allerdings könnte für große Orga-nisationen und Firmen, die nur eine beschränkte Auswahl an Software verwendenund selbst eine Certification Authority im firmeneigenem Netzwerk aufsetzen kön-nen, einen verlässlichen und einfach zu etablierenden Zuwachs an Sicherheit undKontrolle über die interne IT - Infrastruktur bieten. Wenn die etablierte Vertrau-enskette durch eine Änderung der Hardware oder Software unterbrochen wird, wiez.B. durch Ausführen nicht zertifizierter Programme, kann ein TPM das erkennenund auf Anfrage des BS oder eines fernen Kommunikationspartner seinen Statusmitteilen.

Damit führt Trusted Computing zu einer Steigerung der Sicherheit und kann mög-licherweise in der Zukunft durch den ausschließlichen Einsatz zertifizierter Softwareund Hardware jegliche Manipulation der Plattformen ausschließen, die mit TPMausgestattet sind.

Mögliche rechtliche Bedenken über das Vorgehen und der Funktionsweise des Trus-ted Computing und daraus abgeleitete gesellschaftlich - soziale Implikationen werdenan dieser Stelle aufgrund des Umfangs und Spektrums der Problematik nicht bespro-chen. In Fachliteratur und in unzähligen Beiträgen über die sozialen und juristischenAuswirkungen, die im www veröffentlicht wurden, finden sich weitere Informationenzu diesem interessanten Thema.

Literatur 51

11 Literatur und Quellen

Literatur[1] [Bran04] Hans Brandl, Security Consultancy , Infine-

on Technologies AG, Trusted Computing Group 2004,TPM_Presentation_TCG_FFM040625a.pdf

[2] [Bran] Hans Brandl, Trusted Computing TPM Basic Know-ledge , Trusted Computing: The TCG Trusted Platform ModuleSpecification Infineon Technologies AG, TPMBasicKnowledge.pdf

[3] [Ges] Gesetz über Rahmenbedingungen für elektronischeSignaturen und zur Änderung weiterer Vorschriften , Bun-desgesetzblatt Jahrgang 2001 Teil I Nr. 22, ausgegeben zu Bonnam 21. Mai 2001, Vom 16. Mai 2001, sigg2001.pdf

[4] [Green] Lucky Green, The Mother(board) of all Big Brot-hers , TCPA_DEFCON_10.pdf

[5] [HAC97] Handbook of applied Cryptography , CRC Press 1997

[6] [Himm05] Gerald Himmelein, Trusted Computing - Alles eineFrage des Vertrauens , Vortrag für den LinuxTag 2005, www.ctmagazin.de/Redaktion/ghi/tc

[7] [Koen04] Koenig/Neumann/Katzschmann(Hrsg.), TrustedComputing - Technik, Recht und gesellschaftspolitischeImplikationen vertrauenswürdiger Systemumgebungen ,Verlag: Recht und Wirtschaft GmbH, Heildelberg 2004

[8] [LaG] LaGrande Technology Architectural Overview , Sep-tember 2003, Intel LT_Arch_Overview.pdf

[9] [LPC] Intel Low Pin Count (LPC) Interface Specification ,August 2002, Revision 1.1, 25128901.pdf

[10] [Mene97] A. Menezes/ P. van Oorschot/ S. Vanstone, Handbookof Applied Cryptography , CRC Press 1997

[11] [Novi] Author H.-J. Novinsky, H.-U. Buchmüller, Infineon Tech-nologies AG Security and Chipcard ICs , Evaluation Docu-mentation, SLE66CX680PE / m1534-a13 and SLE66CX360PE /m1536-a13, Both with RSA2048 V1.4 Security Target Version 1.2,Date 2005-07-28, INfineon Security0322b.pdf

Literatur 52

[12] [SpecTCPA] Trusted Computing Platform Allian-ce (TCPA), Main Specification Version 1.1b,Published by the Trusted Computing Group,TCPA_Main_TCG_Architecture_v1_1b.pdf

[13] [PGP] PGP - Pretty Good Privacy, Einführung in die Kryp-tographie Handbuch , Version 6.5.1 Int,IntroToCrypto1.pdf

[14] [Rhee03] Man Young Rhee, Internet Security CryptographicPrinciples, Algorithms and Protocols , School of Electricaland Computer Engineering, Seoul National University, Republicof Korea, Wiley 2003

[15] [SHA] Tim Grembowski, Roar Lien, Kris Gaj, Nghi Nguy-en, Peter Bellows, Jaroslav Flidr, Tom Lehman, Brian Schott,Comparative Analysis of the Hardware Implementati-ons of Hash Functions SHA-1 and SHA-512 , Electricaland Computer Engineering, George Mason University, grembow-ski02comparative.pdf

[16] [Scho] Seth Schoen, Trusted Computing: Promise and Risk ,20031001_tc.pdf

[17] [Stra04] Mario Strasser, Semester Thesis, A Software-basedTPM Emulator for Linux , Department of Computer Science,Swiss Federal Institute of Technology Zurich,Summer Semester2004, TPMEmulatorReport.pdf

[18] [Stra] Mario Strasser, Software-based TPM Emulator for Li-nux , TPMEmulatorTalk.pdf

[19] [TCPA] Trusted Computing Platform Allian-ce Main Specification Main Specification Versi-on 1.1b, Published by the Trusted Computing Group,TCPA_Main_TCG_Architecture_v1_1b.pdf

[20] [TCGSA1.2] TCG Specification Architecture Over-view , Specification Revision 1.2 28 April 2004,TCG_1_0_Architecture_Overview.pdf

[21] [TCG] TCG Specification Architecture Over-view Specification Revision 1.2, 28 April2004TCG_1_0_Architecture_Overview.pdf

[22] [TCG2] TCG PC Specific Implementati-on Specification , Version 1.1, August 18. 2003,TCG_PCSpecificSpecification_v1_1.pdf

Literatur 53

[23] [TPM] Infineon Product Brief, TPM1.2 SLB 9635 TT1.2 The Trusted Plattform Module Solution , URL:www.infineon.com/tpm, s.pdf

[24] [TPM2] TPM Main Part 1 Design Princip-les Specification Version 1.2 Revision 85, 13 February2005,mainP2Struct_rev85.pdf

[25] [TPM3] Trusted Computing Group TPM v1.2 SpecificationChanges , A summary of changes with respect to the v1.1b TPMSpecification, October 2003, TPM_1_2_Changes_final.pdf

[26] [TPM4] TPM Main Part 3 Commands , Specification Ver-sion 1.2 Level 2 Revision 85 , 13 February 2005, Published-mainP3Commands_rev85.pdf

[27] [TPM5] The Trusted Platform Module (TPM) and Imple-mentation 2005 FAQ , TPM_FAQ_2005.pdf

[28] [TPM6] TPM 1.2 Software The Infineon Professional Packa-ge2.0 The Trusted Plattform Module Solution,s.pdf

[29] [Weis] Ruediger Weis und Andreas Bogk, Chaos Computer ClubBerlin, Trusted Computing - eine unendliche Geschichte ,247-WeisBogkTCunendlichCCC2004.pdf

11.1 WWW - Seiten: 8

[URL:Infineon]

http://www.infineon.com/TPM

[URL:InnovRep]

http://www.innovations-report.de/html/berichte/informationstechnologie/bericht-44884.html

[URL:BSI]

http://www.bsi.bund.de/sichere_plattformen/trustcomp/infos/tpm_report/index.htm

8Die Gültigkeit der angegebenen URLs wurde während der Recherche zu diesem Dokumentüberprüft (10. Januar 2006). Eine Garantie über deren Gültigkeit über dieses Datum hinaus kannnicht übernommen werden

Literatur 54

[URL:TCG]

https://www.trustedcomputinggroup.org

[URL:Wikipedia]

http://de.wikipedia.org

[URL:TCPA_Faq]

http://moon.hipjoint.de/tcpa-palladium-faq-de.html

[URL:SHA]

http://csrc.ncsl.nist.gov/cryptval/shs.html

11.2 Artikel aus Fachzeitschriften:

[c’t 02/22/S. 204] „Digital Rights Management“ .

[c’t 03/05/S. 86] Gerald Himmelein, „Palladium soll weg“ , Report Trusted Com-puting.

[c’t 03/15/S. 21] Christian Stüble/ Gerald Himmelein, „Vertrauensfragen - IBMsAntworten auf die TCPA-Fragen des Chaos Computer Club“.

[c’t 02/26/S. 56] Michael Plura, „Sicherheit und Vertrauen“ , Thomas Rosteck,Leiter des Product Marketing für Sicherheits-ICs bei Infineon, über die Technik undVorzüge von TCPA.

[c’t 02/15/S. 18] Gerald Himmelein, „Der digitale Knebel“ , Intel und Microsoftwollen Daten vor dem Anwender schützen

[c’t 03/12/S. 192] Gerald Himmelein, „Blick ins Schloss“ , Details zu Palladi-um/NGSCB.

[c’t 03/15/S. 21] Christian Stüble, Gerald Himmelein, „Vertrauensfragen“ , IBMsAntworten auf die TCPA-Fragen des Chaos Computer Club.