Looking for a bit of advice really, here's the situation:
I currently have a security minded client who will be sending PGP encrypted files.
I have to decrypt the files on my server before processing them. To achieve this I was thinking of using BouncyCastle with C#.
Ok, so far so good... but... I was wondering what the best method of storing my private key on my server would be?
I know that the thought of simply storing my private key in a file (even though it'll have a pass-phrase) in a restricted folder will be enough to make my client's left arm go numb!
The simplest option I can think of would be to use BouncyCastle's keystore, however I'm not sure which the most secure option: Keystore.BouncyCastle, Keystore.UBER or The PKCS12 compatible keystore. Either way I'd have to justify the decision (it's still just a file in a folder :( !!), does anyone know of some relevant reading?
I'm not sure if it would be possible to use Windows CNG to store the keys instead of BouncyCastle's keystore?
- Is there another, better option?
Ooo, just a little note: I'm not 100% attached to BouncyCastle if there's a better option out there I'd be more than happy to use that (esp. if it doesn't involve handing over fist-fulls of cash & I can automate it)