背景
尝试了classfinal-fatjar进行加密,用工具进行反编译的时候发现仍然能看到源码,因此使用了xjar,亲自尝试是可以的
步骤
- 下载xjar包,放入到项目中
https://mvnrepository.com/artifact/com.github.core-lib/xjar - 下载loadkit 1.0.1到项目中
https://mvnrepository.com/artifact/com.github.core-lib/loadkit/1.0.1 - 新建一个main的class文件使用代码进行对jar包进行加密
public class test {
public static void main(String[] args) throws Exception {
XCryptos.encryption()
.from("D:\\CDesktop\\dm\\hive-jdbc-example\\callback\\out\\artifacts\\CallBack\\CallBack.jar")
.use("123456")
.to("D:\\CDesktop\\dm\\hive-jdbc-example\\callback\\out\\artifacts\\CallBack\\encrypted.jar");
}
}
-
运行后会得到一个encrypted.jar、xjar.go等文件
-
经过反编译工具反编译后有效果如下图
-
go环境配置参考
https://www.jb51.net/jiaoben/2956188fc.htm -
在jar的目录执行如下命令
go build -o xjar.exe xjar.go -
会生成xjar.exe
-
cmd窗口运行加密的jar包
xjar.exe java -jar .\encrypted.jar
10 . xjar的使用方法参考
https://gitcode.com/core-lib/xjar/overview?utm_source=csdn_github_accelerator&isLogin=1