java反序加密_对java程序加密防止反编译

本文介绍了如何使用Virbox Protector Java版对Java程序进行加密,以防止反编译。通过将包含jar包的文件夹拖入保护工具,设置加密选项并生成sjt文件,适用于不同操作系统。加密后,需要配置相应的sjt库文件到系统环境变量才能运行加密的jar包。
摘要由CSDN通过智能技术生成

方案简述

使用Virbox Protector Java版可直接将包含jar包的文件夹拖入到保护工具里,点击保护选中项目即可,保护后会生成加密后的jar包及对应系统的sjt文件。

sjt文件介绍

sjt_windows_x86.dll:如果java版本为Windows 32位,将此dll配置到 Windows 环境中。

sjt_windows_x64.dll:如果java版本为Windows 64位,将此dll配置到 Windows 环境中。

sjt_linux_x86.so:如果java版本为Linux 32位,将此so文件配置到 Linux 环境中。

sjt_linux_x64.so:如果java版本为Linux 64位,将此so文件配置到 Linux 环境中。

sjt_linux_a32.so:如果java版本为Arm Linux 32位,将此so文件配置到 ARM Linux 环境中。

sjt_linux_a64.so:如果java版本为Arm Linux 64位,将此so文件配置到 ARM Linux 环境中。

1.准备工具

将待加密的jar包放到一个文件夹中。

51c3b40993516313b3eedd9199c0f7ba.png

2.添加目录

将包含jar包的目录拖入工具中,设置加密选项中的密码

5c954273c5ee36da73b45e424d586446.png

加密选项-密码设置

密码如果不设置,会随机默认密码。

建议设置一个密码,并牢记,后续更新jar包时,重新加密时填写此密码,则无需更换配置sjt库。

3.点击保护

点击【保护选中项目】,保护成功后会重新生成一个目录:ssp.java程序 ,里面包含加密后的jar包和 sjt 文件。

a8b8729017eb27bdaf03777702ed58a3.png

bf1a89a589cf68eb2b4f0b09c72d5bcd.png

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

437e3c42faa098334bddfcab49770c66.png

2)配置好环境后,直接运行jar包或直接调用jar包即可。

备注

若Java版本是64位的,指定 sjt_windows_x64.dll ,若Java版本是32 位的,使用 sjt_windows_x86.dll。

Linux系统

添加到系统环境变量

c2d61c359daabf6a8903203d03109e72.png

2)输入命令source /etc/profile使修改的文件生效。

3)配置好环境后,直接运行jar包或直接调用jar包即可。

文章来源: blog.51cto.com,作者:senseshield,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.51cto.com/senseshield/2542483

众所周知,java开发语言提供了很方便的开发平台,而且开发出来的程序很容易在不同的平台上面进行移植,现在越来越多的人使用它开发软件。 Java有了它方便的一个方面,但是他同时也带给了开发者一个烦恼,这就是保护的办法不多,而且大多数不是很好用,这样自己辛苦开发出来的程序很容易被人反编译过来而据为己有,一般情况下,大多数的人都是用混编器(java obfuscator)来把开发出来的程序进行打乱以达到没有办法来反编译观看源代码,但是这种办法在网上很容易找到相关的软件来重新整理,那么这个混编只能控制一些本来也没有办法动您的软件的人,而对于一些掌握工具的人几乎是透明的,还有就是利用硬件加密锁,但大多数公司提供的硬件加密锁只是提供了一些dll的连接或简单的api调用,只要反编译他们,就很容易把一些api调用去掉,这样硬件加密锁也就不起作用了,但是现在到底有没有好的办法呢? 市场上现有的几款防止反编译工具其实都是改进了加载过程。但是加载到JAVA虚拟机后一样可以得到CLASS字节码的。 只要懂JAVA原理的人其实很用意破解的. JAVACOMPILE 这款工具就不一样了,javacompile 它是修改了虚拟机内核, 用户目录里没有需要的JAVA字节码,而是当JAVA需要调用函数的时候才通过网络下载相对应的已经二次编译的字节码,就算用户通过 CLASS.getClass 也得不到可以用来反编译字节码。 真正意义上保护了JAVA知识产权。 个人版限制编译30个CLASS文件,文件打包方式下载。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值