Presented by Mert Çetin Trusted Computing Presented by Mert Çetin
Trust: The Meaning Oxford English Dictionary: Confidence in or reliance on some quality or attribute of a person or thing, or the truth of a statement. Oxford Advanced Learners’ Dictionary: The belief that sb/sth is good, sincere, honest, etc. and will not try to harm or deceive you Longman To believe that something is true without having any proof CS532 - Sabancı University 2008
Trusted Computing Developed by Trusted Computing Group Enforces a specific behaviour on a comp. system Achieved by loading a hardware with a unique ID and unique master key Deny even the owner knowledge and control Extremely controversial Not merely secured for the owner But secured against the owner as well CS532 - Sabancı University 2008
History TC: a broad term 2 main projects Microsoft Palladium Operating system (add “trusted” computing to Windows) Changed to NGSCB TCPA: Trusted Computing Platform Alliance Formed in 2003 to establish an industry standard Published specifications Changed to TCG CS532 - Sabancı University 2008
Trusted Computing Group Initiative started by: AMD Hewlett-Packard IBM Infineon Intel Microsoft Sun Microsystems Many others followed CS532 - Sabancı University 2008
The need for Trusted Computing Security Gap Compromised Systems Rouge Devices and services Lost or stolen data CS532 - Sabancı University 2008
Security Needs a New Model Include the concept of identity Build upon identity with strong authentication Allow organizations to create trust relationships Guarantee information confidentiality and integrity CS532 - Sabancı University 2008
Trusted Platform Module A microcontroller that stores keys, passwords and digital certificates Is affixed to the motherboard of a PC Ensures that the information stored is made more secure from external software attack and physical theft Security processes, such as digital signature and key exchange, are protected Access to data and secrets in a platform could be denied if the boot sequence is not as expected CS532 - Sabancı University 2008
Applications and systems of TPM TPMs offer improved, hardware-based security in numerous applications: file and folder encryption local password management S-MIME e-mail VPN and PKI authentication wireless authentication for 802.1x and LEAP CS532 - Sabancı University 2008
Cryptographic Algorithms TPM specifications require RSA, SHA-1, and HMAC AES is not required, but may be required in future versions Use of symmetric encryption is not required True random number generation is used for: key generation nonce creation to strenghten pass phrase entropy CS532 - Sabancı University 2008
TPM Architecture CS532 - Sabancı University 2008
Key Concepts Endorsement Key Secure Input/Output Memory Curtaining / protected execution Sealed Storage Remote Attestation CS532 - Sabancı University 2008
Endorsement Key 2048 bit RSA public private key pair Created randomly on chip at manufacture Cannot be changed Private key never leaves the chip Public key is used for attestation and encryption The key is used to allow executions of secure transactions CS532 - Sabancı University 2008
Secure I/O A protected path between the computer user and the software Aims to address threats posed by: Keyloggers Screen-grabbers Using checksums to verify the I/O software is not tampered with Malicious software could be identified CS532 - Sabancı University 2008
Memory Curtaining Strong, hardware enforced memory isolation To prevent programs to read/write one another’s memory Today: intruder can read/alter PC Memory In TC: even the OS cannot access curtained memory Can be done in software Rewriting of OS, drivers, applications Hardware is better! Backwards compatibility CS532 - Sabancı University 2008
Sealed Storage Protects private information by binding it to platform configuration info Data can only be read by same combination of HW and SW Solution to a major PC security falling: inability to securely store cryptographic keys! CS532 - Sabancı University 2008
Sealed Storage cont’d Generate keys based on: Keys need not be stored Identity of the software requesting to use them Identity of the computer the software is runing Keys need not be stored Generated when needed Can work together with secure I/O and memory curtaining to ensure that your private data can only be read on your computer and with a particular software CS532 - Sabancı University 2008
Remote Attestation Allows changes to the user’s computer to be detected by authorized parties Works by generating, in hardware, a cryptographic certificate attesting to the identity of the software currently running on a PC Identity is represented by a cryptographic hash When your software is altered other computers can refrain from sending private information to it Combined with public key encryption CS532 - Sabancı University 2008
Known Applications of TC Windows Vista and Server 2008 BitLocker Drive Encryption Encrypts complete volume Protect hard-drive data Plugging to a different system Running different OS to modify boot data Decrypt using TPM Trusted Gentoo give users the ability to store their cryptographic keys (e.g. ssh keys, gnupg keys) in hardware, to be released only to those applications the user wants the keys given to CS532 - Sabancı University 2008
Possible Applications of TC Digital Rights Management e.g. a music file Remote attestation: to enforce player Sealed storage: to refuse to play on another software or on another computer Curtained memory: prevent user from making unrestricted copy while playing Secure I/O: prevent capturing what is being sent to the sound system CS532 - Sabancı University 2008
Possible Applications of TC Identity theft protection Usernames and passwords: sniffable TC creates assurance e.g. Online banking via remote attestation Preventing cheating in online games remote attestation, secure I/O and memory curtaining could be used to verify that all players connected to a server were running an unmodified copy of the software CS532 - Sabancı University 2008
Possible Applications of TC Protection from viruses or spyware Digital signature of software will allow users to identify applications modified by third parties that could add spyware to the software Verification of remote computer for grid computing TC could be used to guarantee participants in a grid are returning the results of the computations they claim to be instead of forging them CS532 - Sabancı University 2008
Criticism of Trusted Computing CS532 - Sabancı University 2008
Criticism of Trusted Computing DRM prevent users from freely sharing and using potentially copyrighted or private files without explicit permission Software inter-operability and lock-in unable to switch to a competing software Word vs. OpenOffice enforce use of specific programs Internet Explorer lock in CS532 - Sabancı University 2008
Criticism of Trusted Computing Unable to non-repudiate email that disappears in two weeks documents that can only be read on the computers in one company Censorship refuse to let anyone read a specific document Users unable to override Requested but denied by TCG CS532 - Sabancı University 2008
Criticism of Trusted Computing Users may be forced to use proprietary software May require the operating system to be specifically authorized by a particular company May require every program to be specifically authorized by the operating system developer Cannot install/use free software on those machines Practicality and Reliability No opportunity of recovery in the case of malfunction CS532 - Sabancı University 2008
Criticism of Trusted Computing Loss of anonymity A TC system can uniquely attest to its own identity Possible for others to zero in the user’s identity Voluntarily or unvoluntarily Lose expectations of anonymity when using the Internet Chilling effect on: political free speech the ability of journalists to use anonymous sources other areas where the public needs protection from retaliation through anonymity CS532 - Sabancı University 2008
Solution to anonymity Direct anonymous attestation enables the remote authentication of a trusted platform while preserving the platform's privacy uses a zero-knowledge proof makes use of: Camenisch-Lysyanskaya signature scheme discrete logarithm-based proofs of knowledge thereon CS532 - Sabancı University 2008
Figures It’s happening! CS532 - Sabancı University 2008
Trustworthy or Treacherous Computing? The decision is yours.. Any questions? CS532 - Sabancı University 2008