Of course you can't protect sensitive data if it has to travel from you to the user, but it's often not the case that it needs to, in the case i was giving as an example the user data was not sensitive but the program that ran on the server was, so what mattered was to make the actual program unstealable (and thus the actual server unhackable, regardless of if someone can or can not sniff your outgoing data).
In the case of a website there are similar use cases for example, if your users have to enter their CC info once to purchase on your website then this means if your server can't be hacked even if someone manages to find a way to put himself in the middle and "sniff" all data he would never get access to current customers credit card infos, only future ones, this is a pretty major risk reduction for your users and something you can defend against if you're not the party that got hacked but somewhere on the net outside of your control as the blame will transfer too. So this is a good example use case for a website, it allows for example a third party's security being responsible over the wire for a small amount of user CC info loss vs you being fully responsible for 100% of your users CC detail loss. That works for any one way data transmission that you need to store but not necessarily make available again.
Ok, I see your usecase now... but I still think "unhackable" and "unstealable" are a little bit big words for what is only a "harder to hack" target and a "harder to steal" program. As long as there are connections to the outside world (which would in the extreme case include power cords), and the server is not standing in a room deep below earth surface with all entrances to the room sealed, "un-anything" is a gross oversimplification and marketing stunt at best, or a blatant lie at worst.
Hard and maybe even expensive to break in, thus not making sense to even try to do so for anything besides high-profile targets? Yes. Impossible? No.
Then in your second usecase you use the words "risk reduction" and "not fully responsible"... doesn't sound fully hackproof to me.
I second Luckless: if you know how to make servers 100% hackproof, tell us... we would love to know the secret to getting rich, because governments and private companies all over the world would waste billions on such tech!
Better yet, don't tell us, and sell it yourself.
Well i just gave you a website use case as you asked, i never claimed "i" could make that unhackable, but what i'm doing (that is not a website, and doesn't store any sensitive data, even of the type that only comes through the wire once) i'm pretty sure i can.
Also when i use risk reduction i do it on the user side, you're reducing the user's risk, i never claimed you could secure the whole internet, but if someone does a man in the middle attack somewhere on the net, as far as i'm concerned your server didn't "get hacked". Not that there aren't ways to protect against that too however.
In "my" use case however what matters is : program in ram doesn't get stolen, and that only requires no one being able to access that either physically (entering the room) or by software (accessing the server and downloading it). That does quite limit the subset of précautions you need to take.
I do think you can make Something pretty close for a website but in the case of a generic website you have no control over the clients, so you'll never be able to secure everything (the connection and the user side) just your part of it (the server side), that too can be pretty unhackable, but forget about using any of the classical tools and only if you limit your definition of "hack" to getting access to the server (and not just to listening for data on the network).