我在这些链接上查看MS文档: https://msdn.microsoft.com/en-us/library/dtkwfdky.aspx https://msdn.microsoft.com/en-us/library/hh8x3tas.aspx
文档说明如下:
现在,ASP.NET应用程序的标识对默认RsaProtectedConfigurationProvider对象的RSA密钥容器具有读访问权限,您将使用该密钥容器加密ASP.NET应用程序的Web.config文件的各个部分。 / p>
这似乎意味着Web.config文件中的受保护部分将通过RSA加密,在示例XML代码中,我确实看到以下代码
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
但是,我也看到以下代码,这似乎表明TDES-CBC被用作密码:
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
正在使用哪些密码来加密哪些数据?
答案 0 :(得分:1)
引用各种文档:
您可以指定自己的受保护配置提供程序,也可以使用ASP.NET中内置的提供程序之一。
默认情况下, Machine.config 文件指定以下受保护的配置提供程序[包含在.NET Framework中]:
DpapiProtectedConfigurationProvider。使用Windows数据保护 用于加密和解密数据的API(DPAPI)。
RsaProtectedConfigurationProvider。 使用RSA加密算法加密和解密数据。 [默认]
https://msdn.microsoft.com/en-us/library/68ze1hb2(v=vs.100).aspx
// Encrypt the <connectionStrings> section.
connectionStrings.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider");
“在某些情况下,您可能需要使用RSA或DPAPI提供程序以外的算法加密信息。” https://msdn.microsoft.com/en-us/library/wfc2t3az(v=vs.100).aspx
TripleDES提供者样本:https://msdn.microsoft.com/en-us/library/system.security.cryptography.tripledescryptoserviceprovider(v=vs.100).aspx