Releases: 2195517546/ObfuscationUtils
Releases · 2195517546/ObfuscationUtils
Release list
ObfuscationUtils v1.2.0 - 图片混淆工具库
概述
ObfuscationUtils v1.2 现已完全支持异步操作。本次更新为所有的图片处理功能添加了异步 API,使得该库能够更好地适配高并发场景、响应式编程框架和现代异步应用架构。
实现内容
1. 核心异步组件
1.1 ObfuscationExecutor - 线程池管理器
位置: com.uiloalxise.async.ObfuscationExecutor
功能:
- 提供默认线程池(固定大小 = CPU核心数 × 2)
- 支持自定义线程池
- 线程安全的单例模式
- 优雅关闭机制
主要方法:
ExecutorService getExecutor() // 获取默认线程池
void setExecutor(ExecutorService executor) // 设置自定义线程池
ExecutorService createExecutor(int poolSize) // 创建独立线程池
void shutdown() // 优雅关闭
void shutdownNow() // 立即关闭1.2 AsyncImageData - 异步图片操作
位置: com.uiloalxise.async.AsyncImageData
功能:
- 异步加载图片(文件、流、字节数组、MultipartFile)
- 异步保存图片
- 异步格式转换(转字节数组、转InputStream)
- 支持自定义线程池
主要方法:
CompletableFuture<ImageData> fromFileAsync(String filePath)
CompletableFuture<ImageData> fromInputStreamAsync(InputStream is)
CompletableFuture<ImageData> fromBytesAsync(byte[] bytes)
CompletableFuture<ImageData> fromMultipartFileAsync(Object file)
CompletableFuture<Void> saveToFileAsync(ImageData data, String path)
CompletableFuture<byte[]> toBytesAsync(ImageData data)
CompletableFuture<InputStream> toInputStreamAsync(ImageData data)1.3 AsyncUtil - 异步混淆工具
位置: com.uiloalxise.async.AsyncUtil
功能:
- 为所有混淆算法提供异步版本
- 支持自定义线程池
- 与同步 API 完全对应
支持的算法:
- Tomato 混淆(小番茄)
- Block 混淆(方块)
- RowPixel 混淆(行像素)
- PerPixel 混淆(像素级)
- PicEncryptRow 混淆(PE行)
- PicEncryptRowColumn 混淆(PE行列)
- Sort 混淆(排序)
- Random 混淆(随机)
方法命名规范:
CompletableFuture<ImageData> {algorithm}EncryptAsync(String key, ImageData data)
CompletableFuture<ImageData> {algorithm}DecryptAsync(String key, ImageData data)2. 抽象类增强
ImageObfuscation 抽象类
位置: com.uiloalxise.utils.base.ImageObfuscation
新增方法:
CompletableFuture<ImageData> processAsync(ProcessType type)
CompletableFuture<ImageData> processAsync(ProcessType type, ExecutorService executor)
CompletableFuture<ImageData> encryptAsync()
CompletableFuture<ImageData> encryptAsync(ExecutorService executor)
CompletableFuture<ImageData> decryptAsync()
CompletableFuture<ImageData> decryptAsync(ExecutorService executor)继承效果:
所有继承 ImageObfuscation 的混淆类自动获得异步能力:
- TomatoObfuscation
- BlockObfuscation
- RowPixelObfuscation
- PerPixelObfuscation
- PicEncryptRowObfuscation
- PicEncryptRowColumnObfuscation
- SortObfuscation
- RandomObfuscation
- XuanObfuscation
ObfuscationUtils v1.1.0 - 图片混淆工具库
更新了两个算法,可以适当看出原图
分别是sort混淆和random混淆
前者是用排序排序像素的第一列然后重排整行,可还原
后者就是随机数种子取一列然后然后重排整行,可还原
ObfuscationUtils v1.0 - 图片混淆工具库
🎉 ObfuscationUtils v1.0
一个强大的图片混淆加密工具库,提供多种图片加密混淆算法。
✨ 功能特性
- 🔐 支持 6 种混淆算法:Tomato, Block, RowPixel, PerPixel, PicEncryptRow, PicEncryptRowColumn
- 🚀 高性能多线程处理
- 🔄 完全可逆的加密/解密
- 📦 零外部依赖(仅使用 Java 标准库)
- 🎨 支持 PNG, JPG, GIF 等常见格式
- 🌐 支持 Spring Boot MultipartFile
📥 如何使用
方式 1:直接下载 JAR 包
- 下载下方的
ObfuscationUtils-1.0.jar - 添加到你的项目
libs目录 - 在 Gradle 中添加依赖:
dependencies {
implementation(files("libs/ObfuscationUtils-1.0.jar"))
}方式 2:通过 JitPack(推荐)
Gradle (Kotlin DSL):
repositories {
maven { url = uri("https://jitpack.io") }
}
dependencies {
implementation("com.github.2195517546:ObfuscationUtils:-b600ccf548-1")
}Gradle (Groovy):
repositories {
maven { url 'https://jitpack.io' }
}
dependencies {
implementation 'com.github.2195517546:ObfuscationUtils:-b600ccf548-1'
}Maven:
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.2195517546</groupId>
<artifactId>ObfuscationUtils</artifactId>
<version>-b600ccf548-1</version>
</dependency>