java混淆工具 字符串加密 程序加密 代码逻辑混淆 防止反编译
混淆工具使用文档
ht-confusion-project1.0.0
目 录
2.1Window查询jdk版本(点击开始菜单,输入cmd, 输入java -version). 4
2.2Linux查看jdk版本(登录进服务器,在命令行输入java version). 4
1.功能介绍
Java文件是目前最流行的开发语言,因采用对象模式很容易进行整合复用大规模项目开发.但是目前因反编译严重,各行业由java开发的系统很容易本反编译,模仿借鉴,核心代码很容易被盗用. 特别是涉及保密性强的行业软件. 为此本软件针对反编译问题,对class文件进行了字节码级别的混淆加密,很难被模仿复用.对java软件的起到很好的保护作用.就算是离线部署到客户端,也很难被复制.
下面通过一个案例,查看加密后的效果

----------------------------------------------------------------------------------------------------------------

2.安装说明
首先保证使用系统中(window/Linux)的JDK环境大于等于1.8,不支持1.8以下的jdk混淆
2.1Window查询jdk版本(点击开始菜单,输入cmd, 输入java -version)


2.2Linux查看jdk版本(登录进服务器,在命令行输入java version)
2.3window下启动方法
2.3.1将提供的ht-confusion-project1.0.0.zip 安装包拷贝到系统任意路径.解压

2.3.2找到ht-confusion-project1.0.0\bin\startup.bat文件双击打开(可以发送到桌面快捷方式)

2.3.3看到启动成功则表示已经安装成功

2.3.4在浏览器输入http://localhost/ 进入混淆页面

---------到此已经安装完毕---------
2.3.5如果当前不需要使用软件则点击,窗口关闭此软件,下次使用重复上述步骤

3.界面使用说明
3.1 激活软件
3.1.1激活软件使用,首先在启动应用的情况下,打开首页http://localhost/

3.1.2这是软件显示未激活, 单击导入注册码

3.1.3看到导入机器码页面,将红色的机器码注册,发给客服,客服会发送一个激活码,将激活码输入到输入框中,点击导入注册码按钮

3.1.4跳转回首页后查看已经显示已激活,表示软件已经和当前电脑绑定

--------------到此软件已经激活成功--------------
3.2使用软件混淆的方法
3.2.1此软件支持 jar包或zip包中的class文件混淆下面介绍怎么进行打包混淆.
比如当前有.jar包/.zip包

3.2.2在页面中选择<点击这里上传文件> 选择一个需要混淆的包.

3.2.3点击提交按钮

3.2.4这是显示混淆成功页面及生成路径的位置,表示当前包内的所有class文件已经混淆了

3.2.5进入生成路径查看jar包是否混淆成功

3.2.6双击打开该类,查看该类已经混淆成功了(前提电脑已经安装了反编译软件jd-gui.exe)

3.2.7可以将混淆过的包进行二次混淆增强加密效果,

----------二次加密后,混淆更复杂了,很难被反编译----------
4.常见问题
4.1 war包怎么加密?
War包因软件的复杂性,已经包括第三方jar包,配置文件等内容,所以war包加密需要将class文件拷贝出来进行混淆后,在拷贝回war中:
4.1.1比如当前有一个war包

4.1.2将war用压缩软件打开,找到要混淆的类,复制出来

4.1.3将类打成一个zip包

4.1.4将zip包进行混淆操作,右键打开混淆后的zip后发现已经混淆成功了

4.1.5将zip包中的class文件 拷贝回原来war的位置.到此war混淆就成功了,可以将多个class文件打成一个zip进行加密.
上面就是混淆工具使用的全部过程,有需要的请沟通交流!
java混淆工具 字符串加密 程序加密 代码逻辑混淆 防止反编译的更多相关文章
- 对Java代码加密的两种方式,防止反编译
使用Virbox Protector对Java项目加密有两种方式,一种是对War包加密,一种是对Jar包加密.Virbox Protector支持这两种文件格式加密,可以加密用于解析class文件的j ...
- Java常用工具类之MD5加密
package com.wazn.learn.util; import java.security.MessageDigest; /** * MD5加密工具类 * <功能详细描述> * * ...
- apk反编译(7)用ProGuard混淆代码,初级防止反编译
eclipse为例 1,project.properties去掉 #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:pro ...
- Unity3D项目程序加密-VirboxProtector加壳工具
各位Unity3D的开发者,你还为你的代码被反编译而头疼, 混淆和加密已经失效,为内存dump代码而烦恼?是否辛苦制作的游戏被盗版被抄袭而烦恼? 是否害怕算法被别人参考要把算法写成C++而费劲周折? ...
- 反编译.net下的exe程序
1. 什么叫.net平台 .NET框架是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境..NET框架的目的是便于开发人员更容易地建立Web应用程序和Web服务,使得Internet上的 ...
- [.NET产品源码保护].NET防止反编译(非混淆加密)
.NET产品源码保护产生的背景: .NET源码加密方案支持C#及VB.NET等语言开发的ASP.NET及WINFORM应用.利用.NET支持托管代码与非托管代码共存的特性,将C#代码经过处理放于非托管 ...
- .NET代码混淆工具NET Reactor - 初学者系列-学习者系列文章
这几天无事,除了看书,然后就倒腾原来的代码.想起.NET的代码混淆工具软件,所以今天就讲讲这个.NET代码混淆工具. .NET代码混淆工具软件,以前有了解和找过,但是当时需求不大,所以找了下就搁置了. ...
- 反编译工具 使用.NET JustDecompile来反编译你的程序代码
原文地址:http://www.it165.net/pro/html/201310/7383.html 前言 在项目的进行中有时会碰到需要去了解由第三方所开发的程序代码或者因为年久已经遗失原始码的程序 ...
- 如何保护java程序不被反编译
Java是一种 跨平台的.解释型语言 Java 源代码编译中间“字节码”存储于class文件中.Class文件是一种字节码形式的中间代码,该字节码中包括了很多源代码的信息,例如变量名.方法名 等.因此 ...
随机推荐
- PyQt(Python+Qt)学习随笔:QTabWidget选项卡部件外观展示类属性elideMode、documentMode、tabBarAutoHide、tabShape介绍
QTabWidget的外观展示类属性包括tabPosition.tabShape.elideMode.usesScrollButtons.documentMode.tabBarAutoHide和ico ...
- PyQt学习随笔:Model/View设计中支持视图中数据修改的方法及步骤
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 要支持视图中的数据可以修改,需要两个步骤: 1. 在视图中设置editTriggers属性支持在视图 ...
- Monkey的使用
1.进入adb shell 环境 在Windows环境下进入DOS界面,输入adb shell 注意:adb shell服务使用的端口是5037,如果此端口被其他进程占用时,将不能正常启动adb sh ...
- web安全漏洞
1.什么是Web漏洞 WEB漏洞通常是指网站程序上的漏洞,可能是由于代码编写者在编写代码时考虑不周全等原因而造成的漏洞.如果网站存在WEB漏洞并被黑客攻击者利用,攻击者可以轻易控制整个网站,并可进一步 ...
- django学习——request.POST.get(‘key’) 、 request.GET.get('key', '')
request.POST是用来接受从前端表单中传过来的数据,比如用户登录过程中传递过来的username.passwrod等字段.返回类型是字典: 在后台进行数据获取时,有两种方法(以username ...
- 使用postman发送http请求
postman使用详解: http://gold.xitu.io/entry/57597a62a341310061337885 https://www.getpostman.com/docs/writ ...
- 在.Net中所有可序列化的类都被标记为_
[Serializable] 这个叫Attribute写在类.属性.字段的上面,比如 [Serializable] class A { ... }
- Scrum 冲刺第三天
一.每日站立式会议 1.会议内容 1)进行每日工作汇报 张博愉: 昨天已完成的工作:博客编写.spring boot学习 今日工作计划:将项目代码更新到最新版本 工作中遇到的困难:各成员的环境不一样, ...
- 学习笔记:Splay
代码适中.非常灵活的平衡树. 需要前置:二叉搜索树. 一些基础的函数: int idx, ch[N][2], cnt[N], sz[N], fa[N]; /* idx 是节点计数, ch[i][0 / ...
- Codeforces Edu Round 58 A-E
A. Minimum Integer 如果\(d < l\),则\(d\)满足条件 否则,输出\(d * (r / d + 1)\)即可. #include <cstdio> #in ...
