Full Program »
Today's infrastructure as a service (IaaS) cloud environments rely upon full trust in the provider to secure applications and data. Cloud providers do not offer the ability to create hardware-rooted cryptographic identities for IaaS cloud resources or sufficient information to verify the integrity of systems. Trusted computing protocols and hardware like the TPM have long promised a solution to this problem. However, these technologies have not seen broad adoption because of their complexity of implementation, low performance, and lack of compatibility with virtualized environments. In this paper we introduce a scalable trusted cloud key management system called keylime. Our system provides an end-to-end solution for both bootstrapping hardware rooted cryptographic identities for IaaS nodes and for system integrity monitoring of those nodes via periodic attestation. We can support these functions in both bare-metal and virtualized IaaS environments using a virtual TPM. keylime provides a clean interface that allows higher level security services like disk or network encryption or configuration management to leverage trusted computing without themselves being trusted computing aware. We show that our bootstrapping protocol adds about 2 seconds latency to IaaS node instantiation, we can detect system integrity violations in as little as 110ms, and that keylime can scale to thousands of simultaneous cloud nodes.
Author(s):
Nabil Schear
MIT Lincoln Laboratory
United States
Patrick Cable
MIT Lincoln Laboratory
United States
Thomas Moyer
MIT Lincoln Laboratory
United States
Bryan Richard
MIT Lincoln Laboratory
United States
Robert Rudd
MIT Lincoln Laboratory
United States