社区
Java SE
帖子详情
如何加密java系统,以保护知识产权?
UnyTech
2006-03-26 01:28:00
如何加密java系统,以保护知识产权?
...全文
55
回复
打赏
收藏
如何加密java系统,以保护知识产权?
如何加密java系统,以保护知识产权?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
使用C++语言实现基于JVMTI机制的
JAVA
代码
加密
保护
工具
众所周知,
Java
编译后的Jar包和Class文件,可以轻而易举的使用反编译工具(如JD-GUI)进行反编译,拿到源码。为了
保护
自己发布的Jar包和Class文件,采用的方式大多是混淆方式,这种方式对于Class文件的
加密
是不彻底的,还是能够通过分析得出核心算法。本工具是采用jvmti方式对Class文件进行
加密
,使用C++生成
加密
和解密库,先用
加密
库对Jar包进行
加密
,将
加密
后的Jar包及解密库文件发布出去,执行时候需要JVM引入解密库文件,解密后执行。c++的.dll文件和.so文件的破解难度是很大的,这就能有效的
保护
软件和代码的
知识产权
. 使用方法: 1.打开windows命令行(运行=>cmd=>回车),在命令行中 进入 EncryptJar目录 2.执行
java
-jar encrypt.jar 3.输入h,然后回车,可以看到帮助菜单 4.输入3,然后按回车键,进入加入jar文件功能 5.输入要
加密
的jar文件的路径 6.提示输入秘钥(key)的时候,直接回车,不要输入任何字符(否则后面classhook将不可解密
加密
后的jar包) 7.输入目标路径(
加密
后的jar文件路径,此处要注意:jar文件名要保持相同,将
加密
后的文件保存到不同的目录) 8.将
加密
后的jar包,替换原来的没有
加密
的jar包,与要发布的程序一起进行发布.(一般替换lib目录下对应的jar包即可) 9.
加密
后的jar包运行方法: windows下: 拷贝libClassHook.dll文件到程序的根目录(通常为要执行的jar程序的根目录) 使用以下命令启动程序:
java
-agentlib:libClassHook -jar xxxxxxxxxxx.jar 则在运行过程中会自动进行解密操作(解密过程是运行过程中用c++的dll进行解密的,可以有效防止破解class文件) 如果执行过程报错,可将程序根目录添加到环境变量path中去 Linux下: 拷贝libClassHook.so到程序的根目录(通常为要执行的jar程序的根目录) 使用以下命令启动程序:
java
-agentlib:ClassHook -jar xxxxxxxxxxx.jar (这里要删除掉lib,linux
系统
下会自动补全) 则在运行过程中会自动进行解密操作(解密过程是运行过程中用c++的dll进行解密的,可以有效防止破解class文件) 如果执行过程报错,可以在程序根目录下执行以下语句:export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH 或将libClassHook.so 拷贝到/usr/lib目录中去。 支持操作
系统
:
加密
请在windows64位
系统
并安装了64位jdk环境下进行。 需要解密运行的程序支持LINUX(64位)和windows(64位)安装了JDK1.8以上的
系统
。 测试程序: (t_lib目录下的jar包为经过
加密
的jar包)
java
-agentlib:libClassHook -jar test.jar
java
class防止反编译,最大限度的
保护
自己的代码
java
以其跨平台、免费、安全等特点,被越来越多的应用到大型的
系统
中。正是由于其代码的跨平台性,是解析型语言才使得它很容易被反编译成源码,从而造成公司代码的泄露,设置时运用框架的泄露。本文从各个方面介绍了防止class被反编译。从而
保护
自己的
知识产权
不受侵害。 包括混淆技术,
加密
技术等。
Java
源代码混淆器
敏创
Java
混淆器是广州市敏创信息科技有限公司在
保护
自己的
Java
源代码过程中积累的一套实用工具,可以有效地对
Java
代码进行混淆,达到
保护
自己
知识产权
的目的。 工具可以去除空格,回车,注释,有效地减小
Java
文件大小 将
Java
代码中的变量转化为毫无意义的n1,n2…,不仅加大理解难度,同时有效除低
Java
文件大小。 工具允许设置白名单,使
Java
关键字、保留字、
系统
类、特殊用途的变量名不被改名,提高混淆和重用的灵活性。白名单可以使用通配符,支持前匹配和后匹配,提高设置白名单的效率。 工具可以单个文件进行混淆,也可以多文件同时混淆。推荐使用多文件操作,使软件的所有
Java
文件同时进行混淆,使
Java
的统一换名,避免由于部分混淆造成名字冲突。 工具在混淆过程中会记录原名与转换后名称的对应关系,因而第一次混淆全部文件,以后可以只混淆部分文件,不会造成同一标识符在不同文件中不一致的现象。
java
8看不到源码-KiwiApkProtect:移动Android应用程序的
加密
java
8 看不到源码 KiwiApkProtect 是一款帮助互联网公司和个人开发者
保护
核心技术和
知识产权
的手机安卓应用
加密
服务。用户只需要提供打包好的APK文件,可以集成DEX文件
加密
、SO文件壳、防二次打包和其他安全功能。 针对不同的应用安全需求,可以提供不同级别的安全防护功能,比如高强度的安全对抗,可以选择使用
Java
2C、代码混淆或者KiwiVM。 特点和优势 Dex Packer: Dex 文件的终极打包器,防止 dex2jar 提取
java
代码。 函数
加密
:从Dex文件中提取
java
函数进行
加密
保护
。
Java
2C Encryption:将
Java
代码翻译成C代码,实现对Native的
保护
。 So Packer: So 文件的终极 Packer,用于防止 IDA 工具进行反向分析。 内存
保护
:
保护
内存数据免受内存转储、篡改和其他攻击。 反调试:防止应用程序被 GDB 和 IDA 工具调试 防二次包装:签名验证以防止盗版应用程序。 自我
保护
:通过虚拟化
保护
程序自己的代码 介绍 安卓应用
加密
是一种帮助互联网公司和个人开发者
保护
核心技术和
知识产权
的手机安卓应用
加密
服务。用户
CodeVirtualizer(
java
代码搅乱
系统
)v2.2.2.0绿色免费多语(含中文)版
Code Virtualizer是一款非常实用的程序代码混淆软件。专门为帮助开发人员
保护
代码区域免受逆向工程而开发的小型软件,软件能够对代码数据进行
加密
并将其转换成其他用户无法读取和解释的格式,欢迎下载。 这是一个软件开发者必备工具,它可以
保护
你开的软件的内部代码,让别人无法破解,
保护
了你的
知识产权
。 Code Virtualizer 将你源代码(Intel x86 指令)转化成虚拟的指令,只
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章