4

I am performing some symmetric database encryption/decryption in .net. I am using a single 256 bit private key.

(1) Where do I store this key when not in use?

(2) How do I securely retrieve this key?

(3) How do I securely use the key?

(4) What operations do I need to perform once encryption is finished to maintain security?

crawfish
  • 289
  • 2
  • 6
  • You store it on the harddrive or remote secure storage by using another symmetric key 2. By reading from harddrive and decrypting it 3. Via isolated user (with no groups) using inter-process communication 4. I would log the fact that it was done 5. Random IV in case it's needed like random data in front of to avoid repeated plaintext if AES is in ECB mode
  • – Andrew Smith Jul 18 '12 at 18:33
  • 1
    ECB mode - gah! No, you definitely don't want to use ECB mode. No amount of random data in front is enough to make ECB mode safe. – D.W. Jul 19 '12 at 05:36