电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

兩種免費的Java Obfuscator比較

瀏覽:2日期:2024-06-17 11:08:52
內容: Java的bytecode很容易通過JAD等反編譯工具搞出源代碼, 目前最有效的保護方法是obfuscate類名和方法名注意: 用obfuscate防盜版是根本不可能, 連匯編這種東西都能被破解掉, 破解java代碼簡直就是小菜用obfuscate主要是為了保護源代碼的知識產權, 別人無法用反編譯的源代碼做事情.本文從幾個不同的方面比較了兩種Free的Java Obfuscator的優缺點..兩種Free的Java Obfuscator: yguard和Proguard.yguard:http://www.yworks.com/en/products_yguard_about.htmProguard:http://proguard.sourceforge.net/下面列出兩者的不同和優缺點1. 速度 yguard的速度遠遠高于proguard, 主要區別在于proguard不管用沒有用, 上來就掃描jrelibrt.jar和其他所有用到的library 這個回合yguard勝出2. 是否Opensource以及遵循協議 yguard: ywork公司的產品,免費使用, 但不是Open source Proguard是GPL(這里GPL只是指Proguard本身, 對于obfuscate出來的jar沒有限制), 可以從sourceforge.net下載源代碼 但是作者并不希望別人參與,沒有CVS,所以也無從知道作者的最新進展. 這個回合proguard勝出3. 是否支持Package Name obfuscate yguard支持Package Name obfuscate Proguard不支持 這其實是很重要的一個特性, 一個好的Java程序往往在一個package里只有10個以下Class,根據package Name很容易猜出各個Class是干什么的, 比如: com.mycompany.license.a com.mycompany.license.b com.mycompany.license.c 雖然obfuscate了Class Name,但是因為這個license只有3個Class,很容易猜出來是干什么的 但是如果你obfuscate成: com.mycompany.a.a com.mycompany.a.b com.mycompany.a.c 則大大增加了困難, 尤其大型software, 有幾十個package的情況下, 會呈幾何級數增加反編譯的難度 這個回合yguard勝出, 但是Proguard已經準備在4.0里推出這個特性4. 增量obfuscate proguard支持增量obfuscate , yguard不支持.也就是在obfuscate a.jar時, 記住所有的名字映射關系(比如MyUtil->a), 然后在obfuscate b.jar的時候, 使用那個映射關系(所有調用MyUtil改成調用a) 假設a.jar里面有一個MyUtil被b.jar里面的Main使用, 在沒有Incremental Obfuscate的情況下, 你必須指定不obfuscate a.jar里的MyUtil. 沒有增量obfuscate 壞處是很顯然的: 第一obfuscate的配置復雜了, 第二,暴露了某些Class 這個回合Proguard勝出5. 其它其他不太重要的特性: - Proguard可以用一篇文章中的詞(比如莎士比亞的劇本)作為變量名字, 呵呵 - Proguard可以刪除所有沒有用到的Class或者方法(叫做Shrink) - Yguard能夠obfuscate資源名稱, 比如Messages.properties->a.properties并且修改相應的ResourceBundle類 - Yguard可以replace指定文本文件里的Class Name,比如修改eclipse plugin.xml里的Class名字 我個人不太贊成這種做法總結對于小型java應用(只有一個package,一個jar文件), 兩者區別很小, (但是小型的java應用值得obfuscate么?呵呵)目前因為沒有obfuscate package name這個重要特性, 所以目前我偏向用yguard, 但是yguard沒有incremental obufscate, 真傷腦筋, 現在就等Proguard4.0出來, 馬上移植到Proguard4.0上去 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd Java的b
標簽: Java
相關文章:
主站蜘蛛池模板: 泰安办公家具-泰安派格办公用品有限公司 | 别墅图纸超市|别墅设计图纸|农村房屋设计图|农村自建房|别墅设计图纸及效果图大全 | 安徽净化工程设计_无尘净化车间工程_合肥净化实验室_安徽创世环境科技有限公司 | 礼至家居-全屋定制家具_一站式全屋整装_免费量房设计报价 | 热回收盐水机组-反应釜冷水机组-高低温冷水机组-北京蓝海神骏科技有限公司 | 抓斗式清污机|螺杆式|卷扬式启闭机|底轴驱动钢坝|污水处理闸门-方源水利机械 | 济南轻型钢结构/济南铁艺护栏/济南铁艺大门-济南燕翔铁艺制品有限公司 | 隔爆型防爆端子分线箱_防爆空气开关箱|依客思 | 非甲烷总烃分析仪|环控百科 | 重庆网站建设,重庆网站设计,重庆网站制作,重庆seo,重庆做网站,重庆seo,重庆公众号运营,重庆小程序开发 | 汕头市盛大文化传播有限公司,www.11400.cc | 通信天线厂家_室分八木天线_对数周期天线_天线加工厂_林创天线源头厂家 | 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 真空包装机-诸城市坤泰食品机械有限公司 | MES系统工业智能终端_生产管理看板/安灯/ESOP/静电监控_讯鹏科技 | Jaeaiot捷易科技-英伟达AI显卡模组/GPU整机服务器供应商 | 武汉刮刮奖_刮刮卡印刷厂_为企业提供门票印刷_武汉合格证印刷_现金劵代金券印刷制作 - 武汉泽雅印刷有限公司 | 加热制冷恒温循环器-加热制冷循环油浴-杭州庚雨仪器有限公司 | 仿真茅草_人造茅草瓦价格_仿真茅草厂家_仿真茅草供应-深圳市科佰工贸有限公司 | 塑胶跑道施工-硅pu篮球场施工-塑胶网球场建造-丙烯酸球场材料厂家-奥茵 | Trimos测长机_测高仪_TESA_mahr,WYLER水平仪,PWB对刀仪-德瑞华测量技术(苏州)有限公司 | 谈股票-今日股票行情走势分析-牛股推荐排行榜 | 二手注塑机回收_旧注塑机回收_二手注塑机买卖 - 大鑫二手注塑机 二手光谱仪维修-德国OBLF光谱仪|进口斯派克光谱仪-热电ARL光谱仪-意大利GNR光谱仪-永晖检测 | 球盟会·(中国)官方网站| 高清视频编码器,4K音视频编解码器,直播编码器,流媒体服务器,深圳海威视讯技术有限公司 | 合肥白癜风医院_[治疗白癜风]哪家好_合肥北大白癜风医院 | 中国品牌门窗网_中国十大门窗品牌_著名门窗品牌| 炭黑吸油计_测试仪,单颗粒子硬度仪_ASTM标准炭黑自销-上海贺纳斯仪器仪表有限公司(HITEC中国办事处) | 热处理炉-退火炉-回火炉设备厂家-丹阳市电炉厂有限公司 | 电加热导热油炉-空气加热器-导热油加热器-翅片电加热管-科安达机械 | 汽车水泵_汽车水泵厂家-瑞安市骏迪汽车配件有限公司 | 安平县鑫川金属丝网制品有限公司,防风抑尘网,单峰防风抑尘,不锈钢防风抑尘网,铝板防风抑尘网,镀铝锌防风抑尘网 | 北京自然绿环境科技发展有限公司专业生产【洗车机_加油站洗车机-全自动洗车机】 | 合肥触摸一体机_触摸查询机厂家_合肥拼接屏-安徽迅博智能科技 | 幂简集成 - 品种超全的API接口平台, 一站搜索、试用、集成国内外API接口 | 卫生型双针压力表-高温防腐差压表-安徽康泰电气有限公司 | 山东石英砂过滤器,除氟过滤器「价格低」-淄博胜达水处理 | 破碎机锤头_合金耐磨锤头_郑州宇耐机械工程技术有限公司 | 硫化罐-电加热蒸汽硫化罐生产厂家-山东鑫泰鑫智能装备有限公司 | 酒店品牌设计-酒店vi设计-酒店标识设计【国际级】VI策划公司 | 青岛成人高考_山东成考报名网 |