This repository was archived by the owner on Dec 4, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +13
-21
lines changed Expand file tree Collapse file tree 1 file changed +13
-21
lines changed Original file line number Diff line number Diff line change 44
55使用` JNI ` 加密字节码,通过` JVMTI ` 解密字节码以保护代码
66
7- 提供两份` DLL ` 文件,一份加密一份解密,实际运行只需使用解密` DLL ` 文件
8-
9- 加密和解密的过程可以指定具体的包名,只加密核心关键部分
10-
11- 详细文章参考:[ JVMTI 加密字节码详解] ( https://mp.weixin.qq.com/s?__biz=MzkzOTQzOTE1NQ==&mid=2247483823&idx=1&sn=a3ae476ccedd2d7fec96e5887989d1c0&chksm=c2f1a4f3f5862de57ce35ebcbf1c39f231ec282934ae8740654be372b1ca4f712c6c101c91e6#rd )
7+ 提供两份` DLL ` 文件,一份加密一份解密,实际运行只需使用解密` DLL ` 文件,支持自定义密钥和包名
128
139加密后的` Class ` 文件变成无法解析的畸形文件
1410
2218
2319### 0.2
2420
25- 两个重要功能的更新:
26- - 支持了` linux ` 系统
27- - 支持了自定义加密密钥
28-
2921更新日志:
3022- 基于` gcc ` 和` nasm ` 支持` linux x86_64 (amd64) `
3123- 支持` Windows ` 和` Linux ` 任意密钥加密解密
5042- 三次` XXTEA ` 算法,抽取` 10-34 ` 位字节
5143- 支持自定义密钥
5244
53- ## 构建
54-
55- 编译环境:
56- - Windows 11 / Ubuntu 22.04
57- - JDK 8 / Maven
58- - MSVC + ml64 (Windows) / gcc + nasm (Linux)
59- - CMake 3.x
60- - Python 3.x
61-
62- ` native ` 目录使用` cmake ` 构建,生成` dll ` 和` so ` 移动到` resources ` 中使用` Maven ` 构建
63-
6445## 快速开始
6546
6647加密解密部分使用` C ` 做一层加密,使用` 汇编 ` 二层加密,已提供编译好的` Release ` 版本` DLL/SO ` 文件嵌入` Jar ` 包中
@@ -97,6 +78,17 @@ java -agentpath:D:\abs-path\decrypter.dll=PACKAGE_NAME=com.your.pack,KEY=your-ke
9778
9879![ screenshot] ( img/001.png )
9980
81+ ## 构建
82+
83+ 编译环境:
84+ - Windows 11 / Ubuntu 22.04
85+ - JDK 8 / Maven
86+ - MSVC + ml64 (Windows) / gcc + nasm (Linux)
87+ - CMake 3.x
88+ - Python 3.x
89+
90+ ` native ` 目录使用` cmake ` 构建,生成` dll ` 和` so ` 移动到` resources ` 中使用` Maven ` 构建
91+
10092## 其他
10193
10294不适用于` SpringBoot ` 场景,存在两个问题:
@@ -109,7 +101,7 @@ java -agentpath:D:\abs-path\decrypter.dll=PACKAGE_NAME=com.your.pack,KEY=your-ke
109101
110102类似地,启动扫描` class ` 的代码是无法使用这种加密的
111103
112- ## 致谢
104+ ## 参考
113105
114106感谢以下项目或文章提供的思路:
115107- https://juejin.cn/post/6844903487784894477
You can’t perform that action at this time.
0 commit comments