atitit.商业版 源码保护 与 java本地原生代码转换 的方案总结

atitit.商业版 源码保护 与 java本地原生代码转换 的方案总结

 

 

1. 为什么虚拟机语言容易被反编译 1

2. 源码泄露的问题问题 1

3. Excelsior JET 1

4. gcj.的流程 2

5. classloader方案,,还凑后 2

6. 制作伪exe,其实和上一种做法是一样的,只不过做成exe,调用系统的java.exe来运行它,这样的工具有nativeJ,exe4j3

7. 其他 3

 

 

1. 为什么虚拟机语言容易被反编译

,但虚拟机的中间语言由于带了大量的“元数据”信息,所以也极容易被反编译。

 

就我所知,目前把Java程序编译成本机可执行程序的方法有两种,一种是GCJ,免费的,一种是Excelsior JET,商业的

 

 

2. 源码泄露的问题问题

 中间语言如此容易被反编译,有许多可怕之处。

1.      知识产权

2.       源代码泄漏,被竞争对手拿去和你竞争(这种事很多)

就我知道的都有几起,不过不方便说出来。

他们从客户那里想办法copy回一份别的公司的产品,然后反编译后,改改图片,图片以及版权信息和注册信息,就拿出去卖了。

 

 被别人植入恶意程序,后果得由作者或开发商承担

 

3. Excelsior JET

 

Excelsior JET无非就是用自己的Runtime来代替JRE,只是比JRE更加灵活,根据Java程序具体的依赖来生成对应的Runtime。其实这个Runtime也挺大的,通常10M左右,不过比起JRE,那要小很多了

 

就我的感觉,Excelsior JET比GCJ更加灵活,也更好用,毕竟是商业版的东西

 

 

把JAVA代码编译成本机程序的弊端也是有的,那意味着你将无法在线升级,GCJ也许可以,但是Excelsior JET是绝对不行的,这是因为它最后一步要对所有DLL进行链接,如果更换了DLL文件,它会检测出来并报错。

 

attilax note::jeig biz ver d ,website sheo down d deush tried ver d ,cant use ..

 

 

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

 

4. gcj.的流程


可以把普通的Java程序做成真正的exe,也就是单一个exe就可以在没有安装JVM的机器上运行。这样的工具常见的有JETgcj.前者是收费的,而且做出来的exe还是需要一堆dll。推荐使用gcj.他有windowsLinux 版,直接下载zip包,不需要安装,里面有不少例子,一些build的批处理文件。从原理来说gcj自己实现了JVM规范,也就是你编写一个 HelloWorld.java,其中的main方法为System.out.println("foo");

当使用gcj把它做成exe(大约2M),运行这个exe时,会启动里面的一个小型jvm,在这上面跑HelloWorld

 

5. classloader方案,,还凑后

 

 

6. 制作伪exe,其实和上一种做法是一样的,只不过做成exe,调用系统的java.exe来运行它,这样的工具有nativeJ,exe4j

 

 

7. 其他

Java开源打包工具】

IzPack 是一个 Java 安装程序制作工具,能够制作一些简单的安装程序。制作出来的安装程序能在 Unix-like, MacOS X, Windows 等系统平台上运行。

使用JSmooth将做好的JAR包装成EXE

launch4jJava应用程序的Windows本地可执行文件 (.exe) 封装器。提供了本地弹出屏幕,应用程序图标,JRE搜索或使用绑定的JRE,启动失败反馈,传递命令行参数,ant脚本。

VAInstall是多平台的安装程序。你要包装起来的软件可以是可执行的 java class, Windows .EXE, Linux 可执行档,或者是 UNIX shell 档案。使用者可以选择四种安装的介面,graphic, xtra, text 或是 ansiVAInstall 只需要很少的空间,他不会使用任何大的暂存档案,而且还可以很容易使用反安装功能。

Toolshed是一个既小又简单的JAVA安装制作工具。

AntInstaller通过XML文件定义UI,用Ant做后台。所以ANT所能做的事情AntInstaller同样也胜任。

FreeInstaller能够把JAVA程序打包成多种平台下的应用程序比如UNIX, LINUX 和 Windows NT.

这个工具利用 ANT 来制作在 Windows, MacOS X, Unix 平台上可执行的文件,比如 exezipjarROXES ANT Tasks 基于 GPL 发布。

Mini Installer是用来构建JAVA安装程序一个简单类包。整个过程以脚本为驱动,最后结果是一个独特的JAR文件。用户可以通过双击来执行一个类似向导的安装过程。

Antigen (Ant Installer Generator)这个工具结合一个ANT构建脚本与一个GUI来把Java文件打包成可执行的Jar文件。它的主要目的是从Ant脚本创造一个强大的图形安装工具。

Packlet是一个针对Java的简单安装工具。一个Packlet类似于一个ziptgz文件。它把应用程序打包成一个单一的可分解的压缩文件。Packlet文件能够在任何有安装Java 2运行环境的机器上运行。

Java Service Wrapper可以把Java应用程序安装成一个Windows NT服务或Unix Daemon.它同时还为应用程序提供日记功能,灵活的配置,可靠的运行性能,按需求重新启动,简化应用程序的安装等,>

JPackIt可以把Java工程打包成一个可执行的包(:jar,classexe).包括所有Java应用程序资源如:代码,图片,属性文件和被引用的第三方包.>

One-JAR可以解决如何把一个依赖于多个其它jar文件的应用程序发布成一个单一的可执行Jar文件.它使用一个可定制的类装载器(classloader)来打开在主Jar中的Jar文件包. >

Autojar帮助从不同的inputs(如:自身classes,外部文档等)制作最小的 Jar文件。它从一个或多个给定的classes开始,依据字节码(bytecode)递归搜索相关联的classes,然后从input文档中提取这些 Classes,并把它们拷贝到output最终的文档将只包含真正需要的classes. 因而能够保持applet的大小并降低applet的加载时间或者让应用程序独立于第三方类库。>

MJAR(Managed Jar Framework)Java软件分发/打包框架。它允许在相同VM内并行部署classloader分离的应用程序。MJAR使用Spring框架来管理内部组件。

 

 

无需JRE运行java的方法 - Programmer LaoMan=new Programmer(); - ITeye技术网站.htm

运用加密技术保护Java源代码.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
升级前请先备份项目目录及数据库!!! 升级前请先备份项目目录及数据库!!! 升级前请先备份项目目录及数据库!!! ### v1.0.14 更新日志 ### 新增:后台小程序页面链接说明 新增:后台商品管理批量设置多规格 修复:小程序端删除收货地址弹窗确认 修复:后台新增商品选择图片影响规格按钮 优化:系统默认设置项目 优化:图片上传失败提示信息 优化:立即购买、购物车下单流程 优化:小程序端个人中心昵称显示 优化:商品详情主图轮播衔接滑动 优化:小程序端订单详情样式 修复:小程序端购物车报错 注:本次更新须重新发布小程序 -------------------------------- ### v1.0.13 更新日志 ### 修复:后台商品详情上传图片错误(紧急) 修复:php7环境下监听订单事件问题 优化:后台用户列表地区为空显示 优化:小程序端网络请求出错信息 注:本次更新无须重新发布小程序 -------------------------------- ### v1.0.12 更新日志 ### 优化:商品二级分类排序功能 优化:小程序端商品文字超出隐藏 优化:取消订单商品库存回退 优化:后台文件库上传新文件时显示loading 优化:订单业务流程处理 优化:后台订单详情步骤条样式 修复:支付成功更新商品库存销量问题 修复:后台编辑商品唯一SKU记录时默认数据问题 修复:后台文件库上传新文件到分组 修复:小程序端商品切换规格库存判断问题 修复:小程序端设置默认收货地址问题 修复:商品详情富文本空格不解析问题 注:本次更新需重新发布小程序 -------------------------------- ### v1.0.11 更新日志 ### 修复:小程序端新增收货地址错误 (紧急) 修复:小程序端待收货角标 优化:小程序端订单重复提交问题 优化:小程序端授权页面logo改为用户头像 注:本次更新需重新发布小程序 -------------------------------- ### v1.0.10 更新日志 ### 新增:后台文件库管理功能 新增:后台服务器环境检测 新增:后台清理缓存数据功能 修复:后台发送测试短信报错 修复:小程序轮播图链接跳转 修复:小程序收货地址选择部分区域报错 修复:小程序商品列表切换排序方式数据叠加 注:本次更新需重新发布小程序 -------------------------------- ### v1.0.9 更新日志 ### 优化:后台待付款订单不显示已取消订单 优化:购物车列表去购物跳转 优化:商品划线价为0时不显示 新增:商品分类排序功能 修复:编辑运费模版默认显示的计费方式 修复:购物车列表修改数量报错 注:本次更新需重新发布小程序 -------------------------------- ### v1.0.8 更新日志 ### 修复:购物车列表goods_attr报错 修复:订单商品记录表字段缺失 修复:七牛云存储扩展不存在 注:本次更新无需重新发布小程序 -------------------------------- ### v1.0.7 更新日志 ### 新增:新付款订单短信提醒(阿里云) 优化:商品库存计算方式 修复:后台编辑商品js报错 修复:小程序端订单详情确认收货 修复:部分安卓手机商品详情报错 注:本次更新需重新发布小程序 -------------------------------- ### v1.0.6 更新日志 ### 优化:微信支付异步通知数据获取方式 优化:windows环境下兼容性问题 注:本次更新无需重新发布小程序 --------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值