Cryptography Reference
In-Depth Information
Als einfach zu benutzende, objektorientierte Schnittstelle zum TPM steht Anwendern im PC-
Betriebssystem der TCG Service Provider ( TSP ) zur Verfügung. Die TSP-Schnittstelle kapselt
vollständig die Kommunikation mit dem TPM und führt sogar intern die Überprüfung von
Signaturen sowie Verschlüsselungs- und Entschlüsselungsoperationen aus. Die HMAC-
Berechnung zur Autorisierung von TPM-Kommdos ist ebenfalls im TSP integriert. Komman-
dos an das TPM sind mit „gehashten“ Passwörtern auf Basis des HMAC-Algorithmus (Kap.
3.4) abgesichert.
Der TSP ist die Schnittstelle erster Wahl, wenn TPM-Funktionalitäten von PC-Applikationen
genutzt werden. Dafür stehen abhängig von der Implementierung (z.B. Open Source TSS
TrouSerS [TRO06]) verschiedene Programmierschnittstellen und Aufrufvarianten zur Verfü-
gung. Neben der klassischen Aufrufschnittstelle in C gibt es auch die Möglichkeit, den TSP
über die Windows™ COM-Schnittstelle zu bedienen oder sogar über RPC (Remote Procedure
Calls) anzusprechen. Letztere Variante wird allerdings in der Praxis kaum eingesetzt und ist
für Server gedacht, die über ein Netz den TSP auf einem Client abfragen wollen.
Kommandos und Daten werden an das TPM in Form von Objekten, sog. BLOBs (Binary
Length Objects), übermittelt. Die TCS-Schnittstelle (Trusted Core Service) verwaltet BLOBs
und bildet die TPM-Kommandos direkt ab. BLOBs können über einen HMAC mit einer Auto-
risierung versehen sein. Eine Ende-Zu-Ende-Sicherheit zwischen PC-Applikation und TSS
wird deshalb auch erst auf der TCS-Schicht möglich. Die verschiedenen Funktionalitäten des
TSS sind in Moduln gruppiert.
Der Context Manager ist für die Verwaltung von Zugriffen aus Applikationen auf das TPM
zuständig. Ähnlich wie bei der PC/SC-Schnittstelle für Chipkarten ermöglicht er parallele
Zugriffe aus einer Multiuser/Multitasking-Umgebung auf nur ein physikalisch vorhandenes
TPM.
In einem Art Cache, dem sog. Key & Credential Manager , können Daten für die Interakti-
on mit Applikationen zwischengespeichert werden. Applikationen müssen sich nicht mehr
um die Verwaltung von sicherheitskritischen Schlüsseln und Passwörter kümmern, da dies
zentral im TSS durchgeführt wird.
Die im folgenden Abschnitt 7.6.4 beschriebene Integritätsmessung wird vom Event Mana-
ger im TSS protokolliert. Dabei werden nicht die Hash-Werte selbst, sondern die Verfah-
ren, wie die Hash-Werte berechnet wurden, abgespeichert. Zum Beispiel muss der Bereich,
der mit dem Hash-Wert gesichert wurde, festgelegt sein.
Der Audit Manager überwacht die TPM-Funktionen. D.h. alle Kommandos, die an das
TPM abgesetzt wurden, können hier vom Eigentümer der Plattform eingesehen werden.
Dabei wird auch die Integrität des im TSS erzeugten Protokolls über einen im TPM abge-
legten Hash-Wert sichergestellt.
Der Parameter-Block-Generator erzeugt die TPM-Kommandos, die an die TDDL-
Schnittstelle weitergereicht werden.
Die TDDL-Schnittstelle (TCG, Device Driver Library) integriert die TPM-Treiber in das PC
Betriebssystem. Ähnlich wie die CT-API bei Chipkarten, wurde hier eine sehr einfache
Schnittstelle mit wenigen Funktionen geschaffen, um BLOBs als Bytestrom an das TPM zu
übergeben und zu empfangen. Unabhängig vom eingesetzten Betriebssystem (Windows™,
Search WWH ::




Custom Search