主要观点总结
文章主要介绍了如何保护Jar包中的代码不被反编译,通过混淆技术增加反编译的难度。同时介绍了编译、反编译的概念和常用的反编译工具,以及如何通过配置Proguard进行代码混淆。
关键观点总结
关键观点1: 什么是编译和反编译
文章介绍了编译和反编译的基本概念,即把代码转换为机器可执行的二进制文件以及通过反编译工具还原代码的过程。
关键观点2: 常用的反编译工具
文章提到了常用的反编译工具JD-GUI,能够直接将编译好的jar包反编译查看源代码。
关键观点3: 代码混淆技术
为了保护代码不被反编译,文章介绍了使用代码混淆技术,通过配置Proguard来实现,包括指定Java版本、优化压缩、混淆类名和成员等。
关键观点4: Proguard配置详解
文章详细解释了Proguard的配置项,包括哪些类不参与混淆、哪些方法名不混淆等,并给出了具体的配置示例。
关键观点5: 混淆步骤和注意事项
文章介绍了使用Proguard进行代码混淆的步骤,包括在项目路径下新增proguard.cfg文件,以及在pom文件中加入proguard混淆插件等,同时给出了一些注意事项。
文章预览
架构师大咖
架构师大咖,打造有价值的架构师交流平台。分享架构师干货、教程、课程、资讯。架构师大咖,每日推送。
公众号 该公众号已被封禁 我们的写完的Springboot程序,在打完Jar包以后,放置服务器进行部署,如果有人将安装包拉取下来,进行反编译,是可以还原代码的,那么我们有没有比较好好的措施不要让代码裸奔呢,今天就来探讨一下jar包的混淆。 一、什么是编译 简单就是把代码跑一哈,然后我们的代码 .java文件 就被编译成了 .class 文件。 二、什么是反编译 就是针对编译生成的 jar/war 包 里面的 .class 文件 逆向还原回来,可以看到你的代码写的啥。 比较常用的反编译工具 JD-GUI ,直接把编译好的jar丢进去,大部分都能反编译看到源码: 那如果不想给别人反编译看自己写的代码呢?
………………………………