使用Virbox Protector对Java项目加密有两种方式,一种是对War包加密,一种是对Jar包加密。Virbox Protector支持这两种文件格式加密,并且加密用于解析class文件的java.exe,并且可以实现项目源码绑定制定设备,防止部署到客户服务器的项目被整体拷贝。
两种加密方式
War 包加密
当你的项目在没有完成竣工的时候,不适合使用war 文件,因为你的类会由于调试之类的经常改,这样来回删除、创建 war 文件很不爽,最好是你的项目已经完成了,不改了,那么就打个 war 包吧,这个时候一个 war 文件就相当于一个web应用程序;而 jar 文件就是把类和一些相关的资源封装到一个包中,便于程序中引用。
Jar 包加密
在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可。Jar包有已知的jar包及自己导出的jar包。
加密流程
我们如何对已知的jar 或者自己导出jar包做加密并给别人使用呢?下面是对简单的加密流程介绍。
加密流程
1.准备工具
将待加密的jar包放到一个文件夹中。
2.添加目录
将包含jar包的目录拖入工具中,设置加密选项中的密码
加密选项-密码设置密码如果不设置,会随机默认密码。
建议设置一个密码,并牢记,后续更新jar包时,重新加密时填写此密码,则无需更换配置sjt库。
3.点击保护
点击【保护选中项目】,保护成功后会重新生成一个目录:ssp.java程序 ,里面包含加密后的jar包和 sjt 文件。
4.运行加密后jar
两种方式运行加密后的jar包。1.将sjt库文件添加到系统环境变量;2.运行jar包时指定sjt文件目录。
Windows系统
添加到系统环境变量
1)可以将 sjt 文件存放在一个固定的目录下,将sjt_windows_x64.dll或sjt_windows_x86.dll添加到系统环境变量中。
设置环境变量流程:
我的电脑-属性-高级系统设置-环境变量-系统变量,新建变量名JAVA_TOOL_OPTIONS,变量值
-agentpath:C:\Users\test\Desktop\sjt\sjt_windows_x64.dll
2)配置好环境后,直接运行jar包或直接调用jar包即可。
备注:若Java版本是64位的,指定 sjt_windows_x64.dll ,若Java版本是32 位的,使用 sjt_windows_x86.dll。
Linux系统
添加到系统环境变量
JAVA_TOOL_OPTIONS=-agentpath:/home/sense/Desktop/sjt_so/sjt_linux_x86.so
2)输入命令source /etc/profile使修改的文件生效。
3)配置好环境后,直接运行jar包或直接调用jar包即可。