I know this sounds like a dumb question, but whats wrong with it? Assuming that all private data is encrypted (by the client) using PBE AES256, then is this scheme more vulerable than storing keys on your local computer?
Pros:
- all of your devices (smartphone, laptop, camera?) have access to the same keys without having to copy them everywhere and protect multiple devices
- assuming the key server is hosted by someone who knows security, the data should be more secure than your smartphone or laptop
Cons:
- a single successful attack could take down millions of (encrypted) keys in one go (remote attack, malicious employee, etc)
My understanding of the current situation is that you keep your private keys encrypted on your local computer protected by a passphrase (*.JKS, *.BKS, secring.gpg, etc). An attacker could write a trojan that uploads all of your private key files to a server under his control. This has recently started happening with BitCoin wallet files, so it's plausible it could happen with key stores. That would net the attacker many key stores in one go, the same as a successful attack on a key server, and, as far as I can tell, for approximately the same complexity. Also, current key store files aren't providing any more protection from an attacker than AES256 would, since they all revolve around the user's passphrase.
It appears to me that the real weakpoint here is the user's passphrase and not necessarily where the keys are stored. Am I wrong? I know this isn't the ideal situation, but I'm comparing it to the current situation.