Files
class-obf/CHANGELOG.MD

259 lines
6.4 KiB
Plaintext
Raw Normal View History

2024-12-02 23:35:02 +08:00
# CHANGELOG
## 1.9.0
2025-09-10 22:00:10 +08:00
2025-10-14 21:10:42 +08:00
注意:配置文件有变动
2025-09-10 22:00:10 +08:00
更新日志:
- [功能] 支持 `enableInvokeDynamic` 配置使 `IDEA` 报错
- [功能] 支持 `antiAI` 允许简单的对抗 `AI` 分析
2025-09-10 22:00:10 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
你可以从 `Maven` 中央仓库获得
```xml
<dependency>
<groupId>io.github.4ra1n</groupId>
<artifactId>class-obf</artifactId>
<version>1.9.0</version>
2025-09-10 22:00:10 +08:00
</dependency>
```
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
## 1.8.0
2025-09-08 23:07:57 +08:00
更新日志:
- [功能] 支持 `enableBadAnno` 错误注解混淆方式 @4ra1n
- [功能] 支持使用 `badAnnoTextFile` 指定错误注解文本内容 @4ra1n
- [功能] 方法字段参数名支持 `useEvilCharInstead` 特殊字符 @4ra1n
- [功能] 花指令添加字符串支持 `enableEvilString` 特殊字符 @4ra1n
- [BUG] 加密解密字符串编码问题导致中文乱码 @4ra1n
- [BUG] 某些情况当前目录会生成多余的临时文件 @4ra1n
- [优化] 优化丢失的命令行配置提示 @4ra1n
2025-09-08 23:07:57 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
你可以从 `Maven` 中央仓库获得
```xml
<dependency>
<groupId>io.github.4ra1n</groupId>
<artifactId>class-obf</artifactId>
2025-09-10 22:00:10 +08:00
<version>1.8.0</version>
2025-09-08 23:07:57 +08:00
</dependency>
```
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
## 1.7.0
更新日志:
- [功能] 允许拓展方法无意义参数个数并修改引用 @4ra1n
- [优化] 删除编译信息应该位于最后一步 @4ra1n
2025-09-08 22:05:43 +08:00
- [优化] 删除不稳定不可用的反射混淆法 @4ra1n
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
你可以从 `Maven` 中央仓库获得
```xml
<dependency>
<groupId>io.github.4ra1n</groupId>
<artifactId>class-obf</artifactId>
<version>1.7.0</version>
</dependency>
```
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
2025-07-10 00:07:48 +08:00
## 1.6.1
```xml
<dependency>
<groupId>io.github.4ra1n</groupId>
<artifactId>class-obf</artifactId>
<version>1.6.1</version>
</dependency>
```
2025-07-09 23:58:50 +08:00
## 1.6.0
上传 `Maven` 中央仓库,可以直接导入使用
https://central.sonatype.com/artifact/io.github.4ra1n/class-obf
```xml
<dependency>
<groupId>io.github.4ra1n</groupId>
<artifactId>class-obf</artifactId>
<version>1.6.0</version>
</dependency>
```
更新日志:
- [重要] 上传 `Maven` 中央仓库
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
2025-02-26 15:41:23 +08:00
## 1.5.0
从该版本开始,运行混淆会自动创建一个 `class-obf-lib` 目录
用户如果遇到依赖报错,可以将混淆 `class` 需要的依赖 `jar` 放入该目录解决报错问题
更新日志:
- [重要] 解决某些情况下需要正确依赖才能运行的 `BUG`
- [优化] 生成 `AES` 字符串解密方法时避免抛出异常
- [优化] 提高解密方法内的 `Basse64` 解码兼容性
2025-02-26 15:46:19 +08:00
- [其他] 升级依赖
2025-02-26 15:41:23 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
- lz520520 (https://github.com/lz520520)
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
## 1.4.0
支持将 `INVOKE*` 指令转为反射调用,结合其他配置可完成进阶混淆
```yaml
# 是否将 JVM INVOKE 指令改成反射调用
# 注意:该功能会明显影响执行效率
# 优点:经过该混淆后会更加难以分析
# 缺点:该功能未经过完善测试不稳定
enableReflect: false
# INVOKEVIRTUAL 转换
enableReflectVirtual: false
# INVOKESTATIC 转换
enableReflectStatic: false
# INVOKESPECIAL 转换
enableReflectSpecial: false
# INVOKEINTERFACE 转换
enableReflectInterface: false
```
2025-01-03 18:43:47 +08:00
更新日志:
- [重要] 支持方法调用 `INVOKE` 指令改反射调用混淆
2025-01-03 18:43:47 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
## 1.3.2
2024-12-19 09:58:41 +08:00
2025-01-02 23:27:19 +08:00
新增参数 `--std-output` 导出到标准路径方便后续处理
例如 `me.n1ar4.Test` 将会导出 `class-obf-output/me/n1ar4/Test.class` 文件
2024-12-19 09:58:41 +08:00
更新日志:
- [功能] 支持 `--std-output` 参数输出到包名对应的完整路径
- [其他] 代码优化并在 `actions` 中使用最新 `maven` 和插件
2024-12-19 09:58:41 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
2024-12-17 22:47:57 +08:00
## 1.3.1
更新日志:
- [功能] 支持新配置参数忽略 `public` 方法的混淆 @4ra1n
- [功能] 新增 `quiet` 配置参数不打印调试信息 @4ra1n
- [优化] 加密和解密使用反转的 `AES KEY` 和数据 @4ra1n
2024-12-17 22:47:57 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
- lz520520 (https://github.com/lz520520)
2024-12-17 22:47:57 +08:00
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
2024-12-17 21:09:34 +08:00
## 1.3.0
2024-12-13 02:17:18 +08:00
更新日志:
2024-12-17 21:09:34 +08:00
- [BUG] 修复之前版本参数混淆功能实际没有生效
- [优化] 优化 `AES KEY` 提到全局变量并支持配置
2024-12-17 21:55:38 +08:00
- [优化] 允许混淆 `main` 方法但默认在方法黑名单中
2024-12-17 21:09:34 +08:00
- [优化] 配置文件支持关闭某些 `ASM` 选项提高兼容性
2024-12-17 21:55:38 +08:00
- [优化] 启动前检查各种配置参数是否合法有错误退出
2024-12-13 02:17:18 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
## 1.2.0
更新日志:
- [重要] 支持字符串 `AES` 加密运行时解密 @4ra1n
- [BUG] 避免 `advanceStringName` 和混淆标识符冲突 @4ra1n
- [优化] 优化 `config.yaml` 模板排序和注释内容 @4ra1n
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
2024-12-10 19:59:39 +08:00
## 1.1.1
更新日志:
- [BUG] 修复 `API` 调用多次报错的问题
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
2024-12-04 10:45:51 +08:00
## 1.1.0
更新日志:
2024-12-10 01:06:46 +08:00
- [功能] 上传到 `jitpack` 供其他项目引入 @4ra1n
- [功能] 提供 `API` 通过代码方式进行混淆 @4ra1n
- [优化] 更新依赖并缩小体积 @4ra1n
- [其他] 使用 `actions` 构建 @4ra1n
2024-12-04 10:45:51 +08:00
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)
可供下载的文件都由 `Github Actions` 构建,使用 `java -jar class-obf.jar` 启动
2024-12-02 23:35:02 +08:00
## 1.0.0
初始版本
使用 `java -jar class-obf.jar` 启动
感谢以下用户的贡献:
- 4ra1n (https://github.com/4ra1n)