Trusted Computing Platforms Blessing or Curse? by Bastian Sopora, Seminar DRM 2006 Agenda Introduction Defining trust and its different flavours The idea of Trusted Computing Platforms Technicalities of TCP Conceptual problems with TCP TCP & DRM Summary & Discussion Introduction What is a Trusted Computing Platform? Introduction What is a Trusted Computing Platform? A computer with some kind of additional hardware, that serves to protect the system from malicious software or unintended / undesired use. Agenda Introduction Defining trust and its different flavours The idea of Trusted Computing Platforms Technicalities of TCP Conceptual problems with TCP TCP & DRM Summary & Discussion What is trust? Trusted vs. Trustworthy The nature of trust Technical Trust Computers are predictable Trustworthy – earned trust User has a reason to trust in a System‘s behavior Impossible to compromise data Previous behaviour and standards deserve trust Trusted – forced trust User has no other choice but to trust the system Black box No alternatives "A 'trusted' computer does not mean a computer that is trustworthy." – Bruce Schneier Technical Trust Device does what it is supposed to do “an entity can be trusted if it always behaves in the expected manner for the intended purpose“ – [TCG] i.g. Harddrive controller Agenda Introduction Defining trust and its different flavours The idea of Trusted Computing Platforms Technicalities of TCP Conceptual problems with TCP TCP & DRM Summary & Discussion Supporters Trusted Computing Group Formerly known as Trusted Computing platform alliance AMD, Hewlett-Packard, IBM, Infineon, Intel, Lenovo, Microsoft, and Sun Microsystems TCP – pure intentions Make computers safer, more reliable Protect from viruses, malware Protect from hackers, unauthorized access Opponents Computer security experts Richard Stallman (GNU) Ross J. Anderson (Cambridge U., UK) Bruce Schneier (Comp.Sec. Author) TCP – not as good as it seems? Trust in the driving factors of TCP is undeserved TCP gives system and software designers too much control and power Undue Censorship possible A quick survey Who uses... ...AMD / Intel processors? ...Microsoft / Apple OS? Think about whether you trust them or not! Agenda Introduction Defining trust and its different flavours The idea of Trusted Computing Platforms Technicalities of TCP Conceptual problems with TCP TCP & DRM Summary & Discussion The simple TC-life Trusted Platform Module One chip solution Open specifications The TCG Guidelines Trusted Platform Module provides: Secure Input & Output Memory curtaining / Protected execution Sealed storage Remote attestation The Guidelines I Secure Input & Output Secure channel between user and software Avoid keyloggers, screenparsers etc. The Guidelines II Memory Curtaining Block access to memory for all other software Even OS access is denied The Guidelines III Sealed Storage Encrypt files using key derived from software & hardware The Guidelines IV Remote Attestation Certificate generated by the Trusted Platform Module Hardware has not been tampered with What software is running (active point of view) Agenda Introduction Defining trust and its different flavours The idea of Trusted Computing Platforms Technicalities of TCP Conceptual problems with TCP TCP & DRM Summary & Discussion Reflection What does TC do? What could it do? How does it work? Additional Concepts Remote Attestation (passive point of view) Owner Override Remote Attestation What is running? = Is XYZ running...? ...on machine UVW? Owner Override Allow owner to disable functions Allow owner to overide actions Controversies Remote Censorship Freedom of Software Choice Limitations on Data & Information Identifiability TCP & Digital Licensing Remote Censorship Software creators instead of users control data objects Data objects may be deleted without user‘s consent Data objects‘ distribution may be prevented Software Choice Information created with Software A may be locked from all other software Data Objects may require Software A although they are of a common type Limitations on User‘s Data No migration Software requiring “newest“ software versions Data requiring spyware Identifiability on the Internet Remote Attestation Collect information? Free Speech Direct Anonymous Attestation Limitations on Information Enforcing „[Fair] Use Policy“ Limiting file formats to certain software Microsoft: DRM making use of TC TCP and Digital Licensing Relies on Sealed Storage & Memory Curtaining Relies on Remote Attestation TCP and Digital Licensing: Scenario 1 Concept: Enforcing “[Fair] Use Policy“ Restriction of Use Restrictions on replay Playability linked to user‘s behaviour TCP and Digital Licensing: Scenario II Concept: Spyware Marketing Trap Evolving “[Fair] Use Policy“ Impracticality Constant Owner Overrides Disabled features Fear of control, what if... ...the controling party is ‘evil‘ ...the hardware fails Frequent new developments outdated technology Agenda Introduction Defining trust and its different flavours The idea of Trusted Computing Platforms Technicalities of TCP Conceptual problems with TCP TCP & DRM Summary & Discussion Survey Results Do you trust Intel, Microsoft, AMD, Apple etc.? A: They pay me $$$ B: Forced Trust C: Earned Trust D: I don‘t use computers Survey Results Do you trust Intel, Microsoft, AMD, Apple etc.? 50/50 joker: B: Forced Trust C: Earned Trust Survey Results Do you trust Intel, Microsoft, AMD, Apple etc.? Audience joker: 100 90 80 70 60 50 40 30 20 10 0 A B C B: Forced Trust C: Earned Trust D