There is a service that stores user data on a remote file share. The user data needs to be encrypted so the remote file store such that anyone accessing it directly cannot access it. The front-end machines that do the storage and retrieval do need the private key to encrypt and decrypt.
Does it make sense to use a self-signed X509Certificate, stored in the cert store on each front-machine, to hold the private key?
I thought this made sense but, looking at the APIs for AesCryptoServiceProvider, I don't see an easy way to load the X509Certificate2 private-key into the AES as the private key.
X509Certificate2 represents asymetric cryptography. AES represents symetric cryptography.
When encrypting large data asymetric cryptography is not a good option (performance reasons). However use of asymetric cryptography (i.e. certificates) is good for authenticating users and authorizing operations like encrypt and decrypt for this user. Designing encryption and decryption of user data can be done in multiplne ways.