
利用C++和JVMTI机制开发JAVA代码加密保护工具
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本项目旨在通过C++结合JVMTI(Java虚拟机工具接口)技术,研发一款高效稳定的JAVA代码加密保护工具,确保源码安全与知识产权。
为了保护Java编译后的Jar包和Class文件免受反编译工具(如JD-GUI)的破解,通常采用混淆方式来加密代码。然而,这种方式对于Class文件的加密并不彻底,核心算法仍可能被分析得出。
本工具使用jvmti方法对Class文件进行更深层次的加密,并借助C++生成加密和解密库。具体步骤如下:
1. 在Windows系统中打开命令行(运行=>cmd=>回车),进入EncryptJar目录。
2. 执行`java -jar encrypt.jar`
3. 输入h并按回车键查看帮助菜单
4. 选择功能选项输入“3”,开始加入待加密的jar文件路径
5. 提示输入秘钥时,直接按下回车(不需输入任何字符)
6. 指定目标路径以保存加密后的Jar包,并确保与原始文件同名。
7. 替换发布程序中的未加密Jar为已加密版本。
运行步骤如下:
Windows系统:
- 将libClassHook.dll复制到jar程序所在的根目录
- 使用`java -agentlib:libClassHook -jar xxxxxxxxx.jar`命令启动
- 运行时自动解密
Linux系统:
- 把libClassHook.so放到jar程序的根目录下。
- 使用`java -agentlib:ClassHook -jar xxxxxxxxxx.jar`
- 启动后也会进行实时解密操作。
支持的操作系统包括:加密需在Windows 64位环境(安装了64位JDK)中执行。运行时需要支持Linux(64位)和Windows(64位),且操作系统必须装有Java Development Kit(JDK)1.8或以上版本。
测试程序的命令为`java -agentlib:libClassHook -jar test.jar`,其中t_lib目录下的Jar包已经加密处理。
全部评论 (0)


