密码存储实施 - AES 256就足够了吗?

时间:2011-03-14 02:13:08

标签: security encryption password-protection aes

我想实现一个密码存储系统,问题是......我需要在某处存储db(sqlite)。
所以我评估使用AES 256,但我在云计算时代徘徊,那够了吗? (算法必须是双向的)

其他问题:我应该加密整个数据库还是其中的数据?什么更安全,为什么?

2 个答案:

答案 0 :(得分:3)

当然是。即便是AES 128也足够了。

答案 1 :(得分:3)

AES-256绰绰有余。 AES既是NIST标准,也被授权在NSA SuiteB程序中使用(http://www.nsa.gov/ia/programs/suiteb_cryptography/),并且通常被认为是分组密码的最佳选择。

您可能希望查看SQLite加密扩展。 http://www.hwaci.com/sw/sqlite/see.html

加密不仅仅是使用密码。如果你自己滚动它,你需要考虑操作模式(CBC或CTR是最流行的,每个都有利有弊),你如何提供完整性(仅加密并不能确保数据没有被篡改),以及如何派生实际密钥(将主密码转换为加密密钥)。