首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何加密WPF exe文件以避免被解译。

如何加密WPF exe文件以避免被解译。
EN

Stack Overflow用户
提问于 2021-05-17 14:43:34
回答 2查看 222关注 0票数 0

在我的WPF工具中,有如下的数据库连接字符串:

代码语言:javascript
运行
复制
Server=myServerAddress;Database=myDataBase;User Id=abd;Password=xyz;

我给用户一个exe文件作为界面。我们不允许用户的Windows ID直接访问数据库。所以WPF工具不能使用Windows身份验证。WPF中的连接字符串包含数据库用户名和密码。如果某人有知识,他可以使用一些工具,如ILSpy,去编译exe文件并查看数据库连接字符串。我看到了一些工具可以混淆exe文件。但他们并不是自由的。我们不想用它们。当我们提供WPF exe文件时,有没有其他保护数据库用户名和密码的方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-05-17 15:10:25

最好的方法可能是根本不允许直接访问数据库。相反,创建一个接受来自应用程序的请求并将其转发到数据库的网络服务。这样,服务就可以处理身份验证和权限。

如果这不是一个选项,您可以看看Securing a password in source code

简单地混淆密码也可能比整个应用程序容易得多。仅仅将字符串编码为字节数组并存储数组,就会使使用反编译程序提取字符串变得更加困难。添加某种“加密”,即使它只是一个带有随机数组的XOR,也会使它更加困难。请注意,这不会阻止具有管理权限的熟练和坚定的攻击者,因为您需要某种外部身份验证。

票数 3
EN

Stack Overflow用户

发布于 2021-05-17 15:13:16

没有防弹方法来保护任何被分发的代码不被反编译。

您应该始终假定,您公开公开的任何代码都可以反编译和反向工程,而不管您所做的任何混淆尝试。

因此,您应该将任何机密信息移动到受适当防火墙保护的远程服务。不要在分发的文件中包含任何敏感信息。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67571923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档