Skip to content
This repository was archived by the owner on Dec 4, 2024. It is now read-only.

Commit 92a07e1

Browse files
committed
0.2 version
1 parent 8242f8a commit 92a07e1

File tree

10 files changed

+46
-29
lines changed

10 files changed

+46
-29
lines changed

CHANGELOG.MD

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,20 @@ GUI 版本的使用和 CLI 版本基本一致,具体参考 README 文件
2020

2121
## 0.2
2222

23+
两个重要功能的更新:
24+
- 支持了`linux`系统
25+
- 支持了自定义加密密钥
26+
2327
更新日志:
2428
- 基于`gcc``nasm`支持`linux x86_64 (amd64)`
2529
- 支持`Windows``Linux`任意密钥加密解密
2630
- 使用`execstack``so`库修改堆栈可执行属性
2731
- 汇编中部分寄存器忘记恢复状态导致某些`JVM`崩溃
32+
- 修复`linux`中字符串处理函数的缓冲区溢出问题
2833
- 修改`README`部分应该使用`-agentpath`启动
2934
- 优化重构`Java`层代码,抽出工具类等
30-
- 避免重复宏定义的问题
35+
- 避免重复宏定义的问题
36+
37+
## 0.3
38+
39+
todo

README.md

Lines changed: 35 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,10 @@
2727
- 原文章没有加入具体的加密算法,仅是简单的运算,需要加强
2828
- 原文章的代码存在一些`BUG`和优化空间
2929

30-
目前的加密解密算法:(可以自行拓展加强)
30+
目前的加密解密算法:
3131
- 汇编实现的多层位运算,交换字节等
3232
- 三次`XXTEA`算法,抽取`10-34`位字节
33+
- 支持自定义密钥
3334

3435
## 构建
3536

@@ -44,32 +45,58 @@
4445

4546
## 快速开始
4647

47-
加密解密部分使用`C`做一层加密,使用`汇编`二层加密,已提供编译好的`Release`版本`DLL`文件嵌入`Jar`包中
48+
加密解密部分使用`C`做一层加密,使用`汇编`二层加密,已提供编译好的`Release`版本`DLL/SO`文件嵌入`Jar`包中
4849

49-
内置支持是`JDK-8`,其他版本的`JDK`只需要更换`JNI.h`头文件重新编译,新版本已支持`Windows``Linux`两个操作系统
50+
内置支持是`JDK-8`,其他版本的`JDK`只需要更换`JNI.h`头文件重新编译,新版本已支持`Windows``Linux`
5051

51-
加密你的`Jar`包:(指定`Jar`包和`package`加密包名
52+
加密你的`Jar`包:(指定`Jar`包和`package`加密包名以及密钥`key`
5253

5354
```shell
54-
java -jar code-encryptor-plus.jar patch --jar your-jar.jar --package com.your.pack
55+
java -jar code-encryptor-plus.jar patch --jar your-jar.jar --package com.your.pack --key your-key
5556
```
5657

57-
导出解密`DLL`文件:(默认导出到`code-encryptor-plus-temp`目录)
58+
![](img/004.png)
59+
60+
导出解密`DLL/SO`文件:(默认导出到`code-encryptor-plus-temp`目录不建议修改)
5861

5962
```shell
6063
java -jar code-encryptor-plus.jar export
6164
```
6265

63-
使用解密`DLL`启动`Jar`包:(使用`-agentpath`参数)
66+
![](img/005.png)
67+
68+
使用解密`DLL/SO`启动`Jar`包:(使用`-agentpath`参数)
69+
70+
注意必须有两个参数`PACKAGE_NAME``KEY`
6471

6572
```shell
66-
java -agentpath:D:\abs-path\decrypter.dll=PACKAGE_NAME=com.your.pack --jar your-jar.jar
73+
java -agentpath:D:\abs-path\decrypter.dll=PACKAGE_NAME=com.your.pack,KEY=your-key --jar your-jar.jar
6774
```
6875

76+
![](img/006.png)
77+
6978
另外支持了简易的`GUI`版本,选择需要加密的`Jar`文件即可一键加密(仅支持`Windows`版)
7079

7180
![screenshot](img/001.png)
7281

82+
## 更新日志
83+
84+
### 0.2
85+
86+
两个重要功能的更新:
87+
- 支持了`linux`系统
88+
- 支持了自定义加密密钥
89+
90+
更新日志:
91+
- 基于`gcc``nasm`支持`linux x86_64 (amd64)`
92+
- 支持`Windows``Linux`任意密钥加密解密
93+
- 使用`execstack``so`库修改堆栈可执行属性
94+
- 汇编中部分寄存器忘记恢复状态导致某些`JVM`崩溃
95+
- 修复`linux`中字符串处理函数的缓冲区溢出问题
96+
- 修改`README`部分应该使用`-agentpath`启动
97+
- 优化重构`Java`层代码,抽出工具类等
98+
- 避免重复宏定义的问题
99+
73100
## 其他
74101

75102
不适用于`SpringBoot`场景,存在两个问题:

img.png

48.7 KB
Loading

img/004.png

48.7 KB
Loading

img/005.png

26.8 KB
Loading

img/006.png

82.6 KB
Loading

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>org.y4sec</groupId>
88
<artifactId>code-encryptor-plus</artifactId>
9-
<version>0.0.1</version>
9+
<version>0.2</version>
1010

1111
<properties>
1212
<maven.compiler.source>8</maven.compiler.source>

script/README.md

Lines changed: 0 additions & 19 deletions
This file was deleted.

src/main/resources/decrypter.dll

0 Bytes
Binary file not shown.

src/main/resources/encryptor.dll

0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)