【发布时间】:2013-01-23 22:48:37
【问题描述】:
鉴于可以使用反射器轻松对 C# 程序集进行逆向工程,在 C# 中编译程序集时我应该将敏感数据存储在哪里?
我的 C# 程序集中嵌入了一个 X509 证书,访问证书时我需要在其中存储密码!现在我应该在哪里存储证书密码?
【问题讨论】:
-
你不能。您的代码可以访问的任何内容,用户也可以访问。
-
加密是您唯一的选择:support.microsoft.com/kb/316898 但归根结底,没有什么是安全的。
-
让您的敏感数据处于受保护(加密)模式。
-
您可以加密部分 app.config 文件:weblogs.asp.net/jgalloway/archive/2008/04/13/…
-
@Sepehr:不。用户可以完全控制在他的机器上运行的任何东西。