(Copied from Software Engineering as suggested)
If I have written a privacy tool as a .NET web application which is to be hosted on a commercial hosting site, other than hosting it in a privacy friendly country, how can I assure users that the application has not been compromised by a third party at the host?
Obviously SSL will be used, retained data will be strongly encrypted and the assemblies will be as obfuscated as possible, but these can only go so far.
I'm not concerned with hacking or legal challenges here, I'm specifically talking about physical intervention at the server location relating to modification of the site to capture user info.
For example, is there a way I can ensure that my assemblies haven't been wrapped to intercept plain-text credentials passed to an API?
I could maybe give an option for the user to supply their credentials already encrypted using my public key. This then opens the door to other options, like a 2-way handshaking type thing.
Are there any more elegant options?