0

我正在为 SharePoint 2010 网站的基于表单的身份验证创建自定义注册表单,并将密码作为“加密”存储在 aspnet_Membership 数据库表中。

我在 web.config 中的设置显示“解密”参数是“AES”。我的老板要求我使用 AES256,因为它更安全,但我无法弄清楚如何做到这一点。我一直在谷歌搜索和“stackoverflow-ing”,但到目前为止,我还没有找到一篇解释我需要做什么或在哪里寻找好信息的帖子。

我想,我的问题是:

  1. “AES256”是“解密”参数的有效值吗?
  2. 如果没有,是否只是生成更长的“解密密钥”来使 AES 更强大?即,如果我将解密密钥设为 64 个字符长,那会构成 AES256 吗?
  3. 如果我目前的想法完全偏离了基础,谁能让我走上正轨,或者解释(或链接到解释)如何更新我的 web.config 以使用 AES256 而不是默认的 AES?

以防万一有人想说“你应该使用散列”......去过那里,讨论过,决定使用加密。只是以为我会解决这个问题:)

4

1 回答 1

1
  1. 不可以,您只能使用“AES”作为 AES 算法的解密参数。

  2. 是的,如果您生成一个 256 位(64 字节)长的文件,那么您实际上拥有的是 AES256。实际上,您也可以生成一个 512 位长的文件。该值越长,加密越强。

  3. 没必要。你好像明白了。

现在,在 .NET 4.0 中,他们稍微增强了这一点,允许使用 SHA256 进行验证。有关详细信息,请参阅MSDN 的文档(archive.org 快照)

于 2011-06-17T21:04:37.030 回答