0

我想提供一个简单的、未加密的 xml 文件作为我的桌面应用程序(winforms、.NET 4.0、C#)的配置文件。但是,我想确保应用程序使用的任何配置文件都来自我。为此,我正在考虑Xml Signing,这似乎非常符合我的要求。

那么我剩下的唯一问题是:我应该如何将公钥存储在我的应用程序中以执行配置文件的验证?将它嵌入到应用程序中是我的猜测,但究竟应该如何做才能防止有人简单地用反编译器打开二进制文件并用他/她自己的替换我的密钥?

我不是在寻找任何超级安全的东西,因为我知道无论如何我都无法做到 100% 确定。

4

2 回答 2

0

就像我在评论中所说的那样,没有 100% 万无一失的方法来保护您的应用程序免受反编译,但是您可以使用Dotfuscator之类的工具来混淆您的应用程序

于 2013-09-10T16:02:29.300 回答
0

我会使用 Windows 证书存储来存储任何密钥 http://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509store.aspx 和 Windows 数据保护 API 在您的程序中将其存储在内存中正在执行。 https://en.wikipedia.org/wiki/Data_Protection_API http://msdn.microsoft.com/en-us/library/system.security.cryptography.protecteddata.aspx

于 2013-09-10T16:07:10.283 回答