【问题标题】:Where to store AES key?在哪里存储 AES 密钥?
【发布时间】:2012-09-06 16:21:58
【问题描述】:

我正在使用 ASP.NET MVC 创建一个 Web 应用程序,并且我想将一些密码存储到数据库中。

密码必须是可恢复的。 (它们不是给我自己的,我需要密码才能与需要真实密码的 API 进行通信)所以我不能使用哈希算法等。

我发现AES 对我来说是一个很好的加密算法。

但是,问题是:在哪里存储 AES 密钥?存储在appsettings 里面web.config 足够了吗?如何让密钥更难找到(对于黑客而言)?

还有下一个问题:有什么想法可以让这个系统更安全吗?

【问题讨论】:

  • 当然,您可以用另一个密钥加密一个密钥,然后再用另一个令人作呕的密钥加密该密钥。但是想想你想要达到的目标是值得的,那就是限制对信息的访问。实现这一点的方法有很多,其中大多数都与加密无关。
  • 那么,你推荐什么方式?将密钥存储在 web.config 中并加密 web.config 是否足够?
  • 是的,这肯定是您的密钥管理方案的一部分(因此有评论)。我只是确保你不只是在看加密机制。你要去哪里解密web.config的密钥?谁可以访问它?
  • 目前,我将密码的密钥存储在 web.config 中的appsettings 中,然后使用 asp.net 内置方法对 web.config 进行加密。 (见:stackoverflow.com/questions/54200/…),但我想让这个过程更安全。

标签: c# asp.net asp.net-mvc cryptography aes


【解决方案1】:

可以加密 .config 文件的部分。 Here is the msdn documentation 关于这个主题,尽管您也可以在网上找到其他演练。

【讨论】:

  • 谢谢,但加密web.config 是否足够安全?如何让这个系统更安全?
猜你喜欢
  • 2011-04-30
  • 1970-01-01
  • 1970-01-01
  • 2013-02-19
  • 2019-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多