连接字符串加密,这个想法是什么?

时间:2011-07-23 14:52:32

标签: c# .net asp.net

如果我正在加密连接字符串部分,那么任何拥有web.config 的人都可以重新解密信息。

没有密码密钥,只有我或类似的东西才知道....

这里的想法是什么?任何拥有VS的web.config的人都可以破译信息......

我不明白这个想法......

3 个答案:

答案 0 :(得分:17)

你错误地认为任何人都可以解密web.config。一旦配置文件部分被加密,它只能在相同机器(或具有相同键的机器 - 这适用于网络农业)上解密。 / p>

通常,远程(通过漏洞)下载实际的web.config非常容易。但恶意用户不会拥有您的密钥,而无法解密文件(或包含敏感数据的部分)。

这里的要点是你必须相信你的网站托管服务商,即敏感密钥不会被分发。

答案 1 :(得分:1)

您可以指定加密提供程序,但默认值为RSA提供程序。有一个密钥使用,但它是'秘密'。因此,有人需要在您的服务器上运行应用程序的权限,或者无限制地访问文件系统才能解密您的web.config。

这(特别是第2步)谈到它:

http://msdn2.microsoft.com/en-us/library/ms998283.aspx

答案 2 :(得分:0)

我不知道aspnet_regiis.exe工具是否使用密钥来加密或解密web.config。但 如果它存储在web.config中,那么任何安装了aspnet_regiis utlility的人都会对它进行解密,但如果它存储在计算机的machine.config或.Net Framework文件夹中,那么任何人都不会解密它。