I have an application that stores sensitive PII and financial data, and is hosted on a 3rd party server (typical web host). Anything sensitive is encrypted as it goes into the database, and I have no issue with the security of the hosting provider or the server configuration.
However as the application necessarily needs the encryption key to operate on the data, that key must be stored on the same host as the data. Although protected from public access, the question has been asked about rogue insider or 'hacker' at the host end who would presumably be able to access the key.
- Is there any way to protect against this type of attack, or must we simply trust the hosting provider?
(For purposes of this question, lets ignore application layer risks such as injection attacks. We do what we can to prevent these, but obviously there is always some risk where the application is dealing with the decrypted data.)