C# 重新启动后,App.config解密失败
我们有一个WPF应用程序,在第一次读取后对连接字符串进行加密:C# 重新启动后,App.config解密失败,c#,wpf,encryption,C#,Wpf,Encryption,我们有一个WPF应用程序,在第一次读取后对连接字符串进行加密: Configuration config = OpenConfiguration(configFileName); ConfigurationSection configSection = config.GetSection(sectionName); if (configSection == null) return false; if (!configSection.SectionInformation.IsPro
Configuration config = OpenConfiguration(configFileName);
ConfigurationSection configSection = config.GetSection(sectionName);
if (configSection == null)
return false;
if (!configSection.SectionInformation.IsProtected)
{
if (!configSection.SectionInformation.IsLocked)
{
configSection.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
config.Save();
}
}
我们在数百台机器上都安装了这个,到目前为止,一切都很顺利。第一次运行后,纯文本连接字符串将被加密。解密应该是自动进行的。但是,我们有一台机器无法在Windows重新启动后解密此信息
我的理解是,“DataProtectionConfigurationProvider”使用特定于系统的内容作为其加密密钥。
有人有什么想法可以帮我找到这个问题吗?我有点困惑,为什么这台机器不工作
提前感谢为了解决这个问题,现在问题已经解决了
此特定计算机的部署存在问题,问题计算机上的文件MD5校验和不同。手动安装文件已清除此问题。如果您试图对用户隐藏连接字符串,则执行此操作的安全性非常有限,因为如果您的应用程序可以解密,那么任何使用编译器和Google的人都可以解密。该软件在使用windows embedded的锁定系统上运行。所以对我们来说,这已经足够好了,因为只有我们的现场团队才能看到它。好的,当我看到WPF时,它通常意味着面向用户。