In terms of infrastructure, how do Cloud providers (organizations providing SaaS, PaaS, or IaaS via the cloud) manage keys and cryptography?
From my understanding, "private" datacenters tend to manage and offload cryptography with dedicated hardware appliances (such as HSMs, ADCs, or SSL accelerators). In that case, asymmetric keys are managed directly on this dedicated hardware.
For a cloud provider that may have more than one datacenter and deals with many distinct and dynamic customers I find it difficult to see how it is possible to use dedicated hardware based solutions to manage and generate customers' keys.
My questions: are dedicated security appliances implementable in a cloud datacenter? How are keys typically managed and where are they generally stored?