XJar
GitHub: https://github.com/core-lib/xjar
Spring Boot JAR 安全加密运行工具, 同时支持的原生JAR.
基于对JAR包内资源的加密以及拓展ClassLoader来构建的一套程序加密启动, 动态解密运行的方案, 避免源码泄露以及反编译.
功能特性
- 无代码侵入, 只需要把编译好的JAR包通过工具加密即可.
- 完全内存解密, 降低源码以及字节码泄露或反编译的风险.
- 支持所有JDK内置加解密算法.
- 可选择需要加解密的字节码或其他资源文件.
- 支持Maven插件, 加密更加便捷.
- 动态生成Go启动器, 保护密码不泄露.
环境依赖
JDK 1.7 +
使用步骤
1. 添加依赖
<project>
<!-- 设置 jitpack.io 仓库 -->
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<!-- 添加 XJar 依赖 -->
<dependencies>
<dependency>
<groupId>com.github.core-lib</groupId>
<artifactId>xjar</artifactId>
<version>4.0.0</version>
<!-- <scope>test</scope> -->
</dependency>
</dependencies>
</project>
- 必须添加 https://jitpack.io Maven仓库.
- 如果使用 JUnit 测试类来运行加密可以将 XJar 依赖的 scope 设置为 test.
2. 加密源码
XCryptos.encryption()
.from("/path/to/read/plaintext.jar")
.use("io.xjar")
.include("/io/xjar/**/*.class")