个人 | 笔记本 | 数码影象 | MP3/MP4 | 数字家电 | 手机 | GPRS导航 | 办公 | 打印扫描 | 投影仪 | 闪存 | U盘
硬件 | 显示器 | 机箱电源 | 装机指南 | 音箱耳麦 | 网卡 | CPU内存 | 鼠标 | 移动存储 | 摄象头 | 主板 | 显卡
企业 | 服务器 | 台式电脑 | 网络产品 | 技术社区 | 存储 | 网络通信 | 互动 | 人才招聘 | 论 坛 | 博客 | 相册
笔记本 台式机 MP3/MP4 主板 CPU 硬盘 存储 相机 办公 软件 手机 显卡 服务器 网卡
 您现在的位置 >首页>IT技术社区>软件应用>正文
[JAVA]教你如何保护Java字节码不被反编译
于:2008-7-31 18:19:00 来源于:来源:中国自学编程网 作者: 点击次数:
        由于Java字节码的抽象级别较高,因此它们较容易被反编译。下面介绍了几种常用的方法,用于保护Java字节码不被反编译。通常,这些方法不能够绝对防止程序被反编译,而是加大反编译的难度而已,因为这些方法都有自己的使用环境和弱点。

        1.隔离Java程序

        最简单的方法就是让用户不能够访问到Java Class程序,这种方法是最根本的方法,具体实现有多种方式。例如,开发人员可以将关键的Java Class放在服务器端,客户端通过访问服务器的相关接口来获得服务,而不是直接访问Class文件。这样黑客就没有办法反编译Class文件。目前,通过接口提供服务的标准和协议也越来越多,例如 HTTP、Web Service、RPC等。但是有很多应用都不适合这种保护方式,例如对于单机运行的程序就无法隔离Java程序。

        2.对Class文件进行加密

        为了防止Class文件被直接反编译,许多开发人员将一些关键的Class文件进行加密,例如对注册码、序列号管理相关的类等。在使用这些被加密的类之前,程序首先需要对这些类进行解密,而后再将这些类装载到JVM当中。这些类的解密可以由硬件完成,也可以使用软件完成。

        在实现时,开发人员往往通过自定义ClassLoader类来完成加密类的装载(注意由于安全性的原因,Applet不能够支持自定义的ClassLoader)。自定义的ClassLoader首先找到加密的类,而后进行解密,最后将解密后的类装载到JVM当中。在这种保护方式中,自定义的ClassLoader是非常关键的类。由于它本身不是被加密的,因此它可能成为黑客最先攻击的目标。如果相关的解密密钥和算法被攻克,那么被加密的类也很容易被解密。

        3.转换成本地代码

        将程序转换成本地代码也是一种防止反编译的有效方法。因为本地代码往往难以被反编译。开发人员可以选择将整个应用程序转换成本地代码,也可以选择关键模块转换。如果仅仅转换关键部分模块,Java程序在使用这些模块时,需要使用JNI技术进行调用。当然,在使用这种技术保护Java程序的同时,也牺牲了Java的跨平台特性。对于不同的平台,我们需要维护不同版本的本地代码,这将加重软件支持和维护的工作。不过对于一些关键的模块,有时这种方案往往是必要的。为了保证这些本地代码不被修改和替代,通常需要对这些代码进行数字签名。在使用这些本地代码之前,往往需要对这些本地代码进行认证,确保这些代码没有被黑客更改。如果签名检查通过,则调用相关JNI方法。

        4.代码混淆

        代码混淆是对Class文件进行重新组织和处理,使得处理后的代码与处理前代码完成相同的功能(语义)。但是混淆后的代码很难被反编译,即反编译后得出的代码是非常难懂、晦涩的,因此反编译人员很难得出程序的真正语义。从理论上来说,黑客如果有足够的时间,被混淆的代码仍然可能被破解,甚至目前有些人正在研制反混淆的工具。但是从实际情况来看,由于混淆技术的多元化发展,混淆理论的成熟,经过混淆的Java代码还是能够很好地防止反编译。下面我们会详细介绍混淆技术,因为混淆是一种保护Java程序的重要技术。 责任编辑:admin
上一篇:[DELPHI]创建窗口时出现GetDynaMethod错误
下一篇:[C]全屏幕模拟时钟的C源程序代码
 热点专题

·[天水]双核独显HDMI 惠普V3907TX降到6450元
·[天水]PM45加高清独显 惠普6531s送礼报6560
·[天水]双核独显商务本 惠普6520s仅售5800
·[天水]十一黄金周大促销双核独显商务本 HP 653
·[兰州]冠捷旗下梦想家新品22寸液晶到货兰州
·[北京]惠普酷睿2双核160G硬盘笔记本4399元
·[天水]专为学生打造配置 联想家悦 H1109仅售37
·[天水]学生机大促销 清华同方真爱T5110仅售365

 本周热销
·[热销] [天水]专为学生打造配置 联想家悦 H110
·[热销] [天水]学生机大促销 清华同方真爱T5110
·[热销] [天水]十一黄金周大促销双核独显商务本
·[热销] [天水]PM45加高清独显 惠普6531s送礼报
·[热销] [天水]双核独显HDMI 惠普V3907TX降到64
·[热销] [兰州]本本也需散热 酷睿能翻盖散热器登
·[热销] 老平台不断探底 6款最热门独显双核本
·[热销] 华硕780G杀499 1800元游戏电脑咋攒
·[热销] 三星24宽屏狂降1000 本周降价大排行
·[热销] 一月狂跌2000元!6款狂降价GTX200推荐
·[热销] 445元绝对超低价 华硕移动人士AP不贵
 促销商品

·[促销] [成都]导航商务机多普达P860现2890热卖
·[促销] [成都]影音本年末促销宏碁4920G又降500
·[促销] [成都]2G+250G 联想昭阳E23现仅4499元
·[促销] [成都]商务机ThinkPad SL500现6700!
·[促销] [重庆]玩家新年牛礼 旌宇9800GTX+亮相
·[促销] [重庆]时尚小本典范 联想S10元旦价3399
·[促销] [重庆]专业游戏即时拍 索爱F305惊爆980
·[促销] [重庆]应有尽有性能王 DEC大作A6并不贵
·[促销] [重庆]柏灵专业摄像灯 BL-DC75W只卖410
·[促销] [重庆]CMMB电视智能机 mopad 8震撼上市

 厂商动态
·[商家] 华硕笔记本天水专卖店
·[商家] 天水电子科技城二楼新方大联想专卖
·[商家] 明亮眼睛看奥运 润眼电脑受追捧
·[商家] 方正R620G-400暑促全新升级5200元
·[商家] 世界依然精彩——方正R620G换脸
·[商家] dell瞻前顾后做渠道 何时给颗定心丸?
·[商家] 长沙国储要涨租?淡季此举无疑是雪上
·[商家] [杭州]手机vs电脑,3G时代到底谁当家
更多...
 相关产品

 最新推荐产品

旗舰机的魅力 各品牌 三星超薄滑盖不足1K P&E08:三菱推出数码 傣族舞蹈上演快看索

 友情链接 甘肃IT在线热忱欢迎各类网站友情链接,首页链接要求:PR>=4,PR低的我们将全部调整至内页,还望见谅,谢谢合作!
甘肃IT在线 赤壁信息网 IT168 IT专卖网 IT家园 IT世界网 山西IT新闻网 中卫日报 陕西硅业在线 上午下午网
设计源论坛 常州电脑网 宁夏IT网 福源视讯安防 兰州学生网 北京翻译公司 贵州IT在线 华陈在线 东北IT网 天津律师
笔记本维修 数据恢复 注册香港公司 编程下载 搜易网 武威114黄页 北京数据恢复 福建大学生在线 甘肃网址大全 橄榄油
陇西信息港 火车网 IT业界资讯网 新浪兰州 北京汽车租赁 天津法律咨询网 电脑商情甘肃站 甘肃IT资讯网 甘肃网址 首席科技
租车网 上海租车 汽车租赁 IT批发网 中国linux学院 珠海IT网 天极网 西部IT网 烟台大学生 华中学生网
青海IT数码巷 山东IT在线 山西IT在线 温州数码 CCNA 西北资讯网 黄河IT网 石家庄之窗 新石家庄门户 折客吧
非常在线 西北IT网 IT专家网 河北之窗 天天IT网 39健康网 辽宁大学生 114网址导航 河北娱乐网 爱宝宝
天水之窗 陇南在线 福州生活网 RAID数据恢复 中华智慧女性网 白银商务在线 睿达网络科技 河南信息网 酷搜网 西极IT网
武汉兼职网 北京租车网 苹果在线 耐腐蚀泵 硬盘数据恢复 RAID数据恢复 中小企业IT网 丽江旅行社 IT商业新闻网 兰州民生信息网
站长声明:本站资料来源于大型网站,如有侵权行为,请联系站长,经证实后我们立即将其删除!——甘肃IT在线
设为首页 | 收藏本页 | 郑重声明 | 网站地图 | 关于我们 | 友情链接 | 联系我们

CopyRight ©2008-2009  甘肃IT在线 All Rights Reserved QQ群:31084900
在线咨询:422189997314068445 Email:gsitonline@163.com

陇ICP号申备中 流量统计: