【问题标题】:Where to store sensitive data in a C# assembly?在 C# 程序集中将敏感数据存储在哪里?
【发布时间】: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:不。用户可以完全控制在他的机器上运行的任何东西。

标签: c# .net reflector


【解决方案1】:

如果你不介意花点钱,你可以看看Eazfuscator

供应商声称提供代码虚拟化、字符串加密等功能。

如果他的声明是有效的,这可能就是你需要的。

他们有试用版,所以我想尝试一下不会有什么坏处。

【讨论】:

    猜你喜欢
    • 2019-07-30
    • 2011-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-03
    • 2011-11-19
    • 1970-01-01
    相关资源
    最近更新 更多