如何在exe中隐藏重要的字符串变量值

时间:2013-05-19 21:00:11

标签: c#

我想在.Net应用程序中隐藏重要的字符串变量值,如密码,用户名,ip和url等(C#,VB.NET) 在进程资源管理器中,我们可以查看图像或内存中的字符串,我想隐藏图像字符串

enter image description here

3 个答案:

答案 0 :(得分:8)

您可以通过加密字符串并在运行时将其解密为SecureString来停止静态分析。

SecureString类专门用于帮助防止密码在内存中被发现。

但是,请注意,仍然可以将调试器附加到您的进程并查看字符串,因此您还需要使用Dotfuscator之类的内容进行模糊处理,以使查看敏感字符串变得更加困难。

Here is an article about some of the problems with SecureString

尽管存在缺点,我认为它仍然是你最好的。

答案 1 :(得分:1)

在编译时对其进行编码,在运行时解码?有人可能仍然会找到它,因为他可以反编译您的.exe并查看解密算法,但有些防御>没有防守。

答案 2 :(得分:1)