springboot xjar进行加密

由于业务需求所以需要把项目部署到客户那边,但是公司给我们的要求就是数据库要加密,代码要进行加密防止代码进行反编译,其实还是能够破解的但是时间很长,废话不多说了开始吧

1、在pom文件中假如属性和插件,不要直接复制粘贴注意看摆放位置

<dependencies>    <dependency>        <groupId>com.github.core-lib</groupId>        <artifactId>xjar</artifactId>        <version>4.0.0</version>    </dependency></dependencies>

<!-- 设置 jitpack.io 仓库,Xjar需要使用 --><repositories>    <repository>        <id>jitpack.io</id>        <url>https://jitpack.io</url>    </repository></repositories>

2、写main方法,其中的PeisBooking-0.0.1-SNAPSHOT.jar是通过maven install 打包好之后的jar在文件夹下面同时还会生成xjar.go文件,下面的test.jar指的是需要生成的jar名称和路径

public static void main(String[] args) throws Exception {produs();}

public static void produs() throws Exception { XCryptos.encryption()         // 项目生成的jar         .from("E:\\aa\\PeisBooking-0.0.1-SNAPSHOT.jar")         // 加密的密码         .use("mtkj123!")         // 要加密的资源         .include("/**.class")         .include("/**/*.xml")         // 加密后的jar,此时:通过jd-gui反编译失败         .to("E:\\aa\\test.jar");}

3、最不好弄得我觉得是这一步,需要安装GO环境安装教程

https://www.runoob.com/go/go-environment.html

4、第3步操作完之后需要在jar包所在的目录打开命令界面,输入go build xjar.go

windows系统会得到xjar.exe文件

linux系统会得到xjar文件

5、windows系统启动应用程序命输入命令

xjar.exe java -jar 生成的jar名称 项目就运行起来了

linux系统启动应用程序输入命令

./xjar  java -jar 生成的jar名称

采坑:

1、go环境安装时出错了,这个需要自己尝试
2、运行时由于参考的是其他博主的文档所以很多都看不懂,写的根本就算不上通俗易懂,其他博主写的是xjar java -jar XXXX ,但是根本就行不通,也可能是我看不懂文字叙述的原因,一定要记住windows下要使用xjar.exe开头后面运行的程序是通过main函数生成的jar

结果

用最常用的jd-gui反编译得到的结果是编译错误,但是程序是能够正常运行的

(0)

相关推荐