I have a encryted database and decryption key. How to keep decryption key away from hacking(Both database hacking and unauthorizated accessing PC.)?

1. Hardcode in assembly.
2. keep in registry.
3. keep in RAM.

Moreover, I need algorithm for encryted data. What's the best algorith for doing this in security per decryption time term?

1. RSA
2. AES
3. Twofish

[RSA vs AES](http://www.security-forums.com/viewtopic.php?p=81177&sid=b0ed24850d62d0d5340f0b146e45b10c)

**Thanks,**