Trusted Computing Infrastructure
There is a widespread understanding among systems architects that commonly-deployed approaches to security are failing to deliver adequate levels of protection against today's threats. Some even fear that a failure to address security in a sufficiently strong way will lead to the internet becoming overwhelmed with unwanted software and malicious behaviour. The technologies of trusted infrastructures are designed to address these problems by introducing new security primitives, based upon the inherent security of hardware solutions. The headline element of these is the Trusted Computing Module, which is now deployed in 0.5bn computing devices worldwide, but seldom used. New operating systems are starting to rely on it, however. This course provides a thorough understanding of the relevant technologies, the security issues that they address, and their planned future development.
|11th November 2013||Oxford University Department of Computer Science||06 places remaining.|
|24th November 2014||Oxford University Department of Computer Science||13 places remaining.|
The successful participant will
- be able to explain critically the notion of trust as embodied in trusted computing devices, and the requirements upon those devices;
- know the role and purpose of each element of the trusted platform module;
- be able to use the Trusted Software Stack API to interact with the TPM;
- understand how technologies of virtualization can combine with trusted platform modules to yield trusted infrastructure;
- describe some systems architectures which use these capabilities to provide innovative and strong security solutions.
- Operating System Security
- Longstanding approaches to system security; isolation based upon user accounts; isolation based upon CPU design; shortcomings and vulnerabilities.
- Trust and Security
- Trust as predictable behaviour; role of the elements of a trusted infrastructure; objections to this architecture; potential for good and bad outcomes; limitations of this approach.
- Roots of Trust
- The TPM and its place in establishing roots of trust for storage, measurement, and reporting (identity) on the platform.
- The design of the TPM and its behaviour; the standard APIs for addressing these capabilities; the Trusted Software Stack.
- Chain of Trust
- The place of third parties in assuring trusted platforms; trusted boot processes; trusted applications.
- Trusted Virtualisation
- Whole system virtualisation; virtual machine managers/hypervisors; use of trusted platforms to assure virtual machines; virtual trusted platforms.
- Trusted Boot; Trusted Network Connect; Trusted Grid.
- Mobile Platforms
- Trusted mobile platforms; additional roots of trust; suitable architectures for mobile applications.
Participants should understand the terminology of systems security, cryptography, and security protocols, at least to the level covered in the SPR module. A working knowledge of computer systems architecture will be assumed, and at least a user's perspective on operating system security measures. Programming exercises will assume basic experience of programming in Java (but this will form only a small part of the course).