I. Introduction
Cloud computing paradigm shifts the responsibility of the computing resources management from application owners to cloud providers, allowing application owners (tenants) to focus on their business use cases instead of on hardware management and administration. However, trust is of paramount concern for tenants operating security-sensitive systems because software managing computing resources and its configuration and administration remains out of their control. Tenants have to trust that the cloud provider, its employees, and the infrastructure protect the tenant's intellectual property as well as the confidentiality and the integrity of the tenant's data. A malicious employee [1], or an adversary who gets into possession of employee credentials [2], [3], might leverage administrator privileges to read the confidential data by introspecting virtual machine (VM) memory [4], to tamper with computation by subverting the hypervisor [5], or to redirect the tenant to an arbitrary VM under her control by altering a network configuration [6]. We tackle the problem of how to establish trust in a VM executed in the cloud. Specifically, we focus on the integrity of legacy systems executed in a VM.