Java——防止代码修改技巧

标签 java android security reverse-engineering tampering

我最近听说一家软件安全公司可以在逆向工程和代码修改方面使您的代码免受黑客攻击。他们的技术是这样的:

他们在代码中的多个检查点中插入校验和,以保护它们之间的代码。当代码流在每个检查点执行时,都会检查校验和,如果代码被篡改,则校验和失败,您就知道代码已被修改。如果删除了一个检查点,那么下一个检查点也将失败,因为检查点已被删除。

购买他们的服务将完全超出我的项目(Android 应用程序)的预算,但我想自己实现该技术。

有人可以提供一些有关如何实现此类内容的见解吗?此外,如果还有其他方法可以用来防止代码修改,请分享。

(澄清一下,我知道混淆、奇怪的误导代码逻辑和编写伪造的方法以进一步使代码难以阅读,我也会应用这些方法)

最佳答案

prevent code modification techniques

没有任何技巧可以完全避免逆向工程。

您基本上无法保护您的应用程序不被修改。并且您放置在那里的任何保护都可以禁用/删除。 如果您可以选择包含共享库,则可以在 C++ 中包含所需的代码以验证文件大小、集成等

关于Java——防止代码修改技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42841919/

相关文章:

android - Youtube 视频在移动绕过时被屏蔽

ruby - 如何使用私钥加密完全加密 Ruby 中的数据?

java - 通过可能的对话框向用户提供前台下载

java - ReadyState 保持为空

android - 无法创建自定义 ViewModel 的实例

android - 仅在 Android 应用程序中的一项 Activity 中显示的 Snackbar

security - 使用外部 oauth2 提供商(facebook)时,我的应用程序是否应该发出自己的访问 token ?

javascript - 什么是 "top level JSON arrays",为什么它们存在安全风险?

java - 无法通过 HtmlUnit 读取谷歌静态 map

java - Spring Security 仅用一条路径处理不同用户