University of Waterloo
Cloud computing is a distributed computing model in which clients pay for computing and data storage resources of a third-party cloud provider. Cloud applications can scale up or down almost instantly to meet real-time computational demands. Despite the economic advantages of a pay-on-demand business model, security remains a paramount concern. Cloud applications by nature must store and retain access to a potentially large volume of data. Yet, the consensus among IT organizations is that the cloud provider generally cannot be implicitly trusted and thus this data should ideally be transmitted and stored in encrypted form.