我最近发现我发布的使用 Visual Studios 用 C# 编写的程序在将 exe 拖到文本文档中时以纯文本形式显示密码和 sql 语句。密码很容易加密,但我在太多不同的程序中有太多的 sql 语句,无法轻松地通过并加密每一个。如何将纯文本信息转换为不可读的符号?
2 回答
慕田峪9158850
TA贡献1794条经验 获得超7个赞
您不保护二进制文件中的机密。重新设计假设有人想闯入可以访问二进制文件中的所有秘密。
很久以前,我们有这个坏主意。我们已经保护了密码免受在文本编辑器中打开等琐碎事情的影响。我做了一个五分钟获取密码的示范。
今天它变得更容易了。对于参考源System.Data.SqlClient
已经公布,你可以得到一个.pdb
文件System.Data.SqlClient
。假设想要钥匙的人可以做到这一点。
计算机安全有一个基本定理:远程证明是不可能的。您只能对用户进行身份验证,而不能对程序进行身份验证。
有些事情我们可以说会减慢想要对软件进行逆向工程的人的速度,第二个是“不要使用 .NET”。
湖上湖
TA贡献2003条经验 获得超2个赞
正如评论中所述,只要程序需要能够自行解密,就不可能在程序中隐藏信息。您需要将敏感数据和功能移到别处,并只为您的二进制分发版提供所需的权限。例如,它可以存储 API 密钥以向后端服务发出授权请求。
- 2 回答
- 0 关注
- 196 浏览
添加回答
举报
0/150
提交
取消