首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有保护DLL代码的技巧吗?

有保护DLL代码的技巧吗?
EN

Stack Overflow用户
提问于 2012-08-25 07:45:52
回答 2查看 1.1K关注 0票数 1

我想知道一些技巧,如何从注入保护DLL (Win32,动态)文件,以及如何提高编译代码的安全性。

  1. DDL源代码中有一个,用于连接到MySQL。足够安全了吗?
  2. 有没有办法防止‘用户’修改HEX代码?我的意思是从源代码中获得更多的安全。
  3. 项目属性中的哪些选项将是优化和保护DLL的最佳选项?

我正在使用MVSC++ 2010快车和源代码的用户将无法获得。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-25 08:01:48

为了使DLL可用,它需要具有可读性。这意味着,如果您加密您的文件,您还需要做解密,然后使用它。此外,您还可以对DLL进行签名,以使您知道它没有被修改,但仍然不能隐藏文件本身中的符号。另一种方法是混淆代码,这样用户就很难理解,但操作系统仍然可以轻松地执行它--把它看作是一种弱形式的加密。

具体答复:

  1. 如果您在任何二进制文件中都有密码,那么它是不安全的。通过二进制文件的字符串查找它是一个简单的问题。
  2. 用户可以随时修改文件,但是可以使用某种加密方案对文件进行签名,这样可以确保您知道文件是否已被篡改。
  3. 我不使用那个特定的工具,但我确信它不会为您提供任何真正的安全性。

提示:与其在源代码中使用SQL密码,不如让它向服务器发送命令,服务器将对这些命令进行身份验证和处理。这样,文件中就不需要显式的密码了。

票数 3
EN

Stack Overflow用户

发布于 2012-08-25 08:13:17

除非对整个文件进行加密,否则DLL中的任何和每个文字字符串都是可读的。不要将密码作为文字字符串存储在dll中。句号。另外,您必须记住,程序集代码只是数据,如果文件是可写的,任何拥有Intel参考单和十六进制编辑器、反汇编程序和汇编程序的人都可以在访问该文件时更改它。您可以始终混淆您的源代码,这将使程序集的可读性略有下降,但仍然完全可以修改。

简而言之,您所做的任何事情都不会完全保护您的DLL。

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

https://stackoverflow.com/questions/12120175

复制
相关文章

相似问题

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