网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  破解java struts web application开发工具 scioworks camino     
  文章作者:未知  文章来源:水木森林  
  查看:86次  录入:管理员--2007-11-17  
 
  作者:xiangya
  
  我很高兴向大家知会一声,scioworks camino的基于struts的web application开发工具已经可以破解了。因为struts不错,我才想这样,目的只有一个,用来测试检验struts。
  
  这个工具使用注册码,并使用注册码进行日期判断。让我有点恼火的是,程序会想一个地址发送udp包,不管怎样,我不希望这样的事情发生。
  
  我想这个工具的破解有两种方式,
  
  1, 认真钻研其算法,然后给出一个keygen程序。这种方式对程序本身不会有什么影响,但是研读算法比较费时间。
  
  2, 改写程序控制,然后给出一个替代的class文件。这种方式因为改写了程序控制流程,需要特别小心,不小心的话,原来的程序就会崩溃。
  
  这两种方式各有千秋,取决于你的兴趣所在。因为这个工具经过了代码优化以及别的处理,所以,改写代码稍嫌麻烦。
  
  要做改写代码方式破解的话,你需要一个反编译工具,我推荐你使用jshrink,因为jad好像已经不再做下去了。(别说你还有好多反编译工具,错,大多使用jad engine。)其次你需要了解一点java虚拟机规范,没有也行,那么你需要熟悉java语言,或者加上一些windows汇编语言知识。
  
  我没有更多耐心所更多的东西。给出源代码,你爱谁谁去。
  
  // main.java; class file size 15569 bytes
  
  package scioworks.camino;
  
  /*
  import bindingschemaloader;
  import caminoapp;
  import caminomodel;
  import config;
  import contextpathutil;
  import expressexception;
  import filereadwriteexception;
  import invalidresourceexception;
  import main$cmon;
  import main$smon;
  import navigatable;
  import parseexception;
  import strutssubapp;
  */
  import com.jxml.quick.qdoc;
  import scioworks.camino.event.projectreadyevent;
  import scioworks.camino.gui.lcpanel;
  import scioworks.camino.io.dirtystatuslookup;
  import java.awt.color;
  import java.awt.frame;
  import java.io.file;
  import java.io.ioexception;
  import java.text.messageformat;
  import java.util.arraylist;
  import java.util.collection;
  import java.util.hashmap;
  import java.util.iterator;
  import java.util.list;
  import java.util.map;
  import java.util.nosuchelementexception;
  import java.util.set;
  import java.util.stringtokenizer;
  import java.util.treemap;
  import javax.swing.joptionpane;
  import scioworks.camino.prjmodel.caminoproject;
  import scioworks.camino.prjmodel.subapp;
  import scioworks.aspen.basedialog;
  import scioworks.aspen.helpmanager;
  import scioworks.aspen.swingutil;
  import scioworks.aspen.progress.progresslistener;
  import scioworks.common.io.fileutil;
  import scioworks.common.io.filemonitor.filemonitor;
  import scioworks.common.logging.logger;
  import scioworks.common.logging.loggerfactory;
  import scioworks.common.message.message;
  import scioworks.common.message.messagecategory;
  import scioworks.util.crypto.transformerrev;
  import scioworks.camino.strutsmodel.action;
  import scioworks.camino.strutsmodel.strutsconfig;
  import scioworks.camino.webdd.servlet;
  import scioworks.camino.webdd.servletmapping;
  import scioworks.camino.webdd.webapp;
  import java.io.ioexception;
  import java.net.datagrampacket;
  import java.net.datagramsocket;
  import java.net.inetaddress;
  import java.net.multicastsocket;
  import java.net.inetaddress;
  
  
  class main
  implements
   caminomodel
  {
   final static private string _$159506 = "vghligxpy2vuc2ugaw5mb3jtyxrpb24gaxmgaw52ywxpza==";
   final static private string _$115780 = "q2ftaw5viexpy2vuc2ugsw5mbw==";
   final static private string _$159525 = "vhjpywwgbgljzw5zzsblehbpcmvzigluihswfsbkyxlz";
   final static private string _$159544 = "ww91cib0cmlhbcbsawnlbnnlighhcyblehbpcmvklibwaxnpdcbodhrwoi8vd3d3lnnjaw93b3jrcy5jb20gdg8gchvyy2hhc2ugysbsawnlbnnlzcbjb3b5ig9mifnjaw93b3jrcybdyw1pbm8=";
   final static private string _$159561 = "vw5yzwdpc3rlcmvkifryawfsienvchk=";
   final static private string _$159583 = "usitpzelhktnltcaspaiiiuaalidm";
   final static private string _$159605 = "u3rhbmrhcmq=";
   final static private string _$159621 = "rw50zxjwcmlzzq==";
   static private scioworks.common.logging.logger _$3187 = scioworks.common.logging.loggerfactory.getlogger(main.class);
   // scioworks.common.logging.loggerfactory.getlogger((class$scioworks$camino$main == null) ? (class$scioworks$camino$main = main.class$("scioworks.camino.main")) : class$scioworks$camino$main);
   private int _$159639;
   private string _$159651;
   //private main$cmon _$159668;
   //private main$smon _$159676;
   private int _$159680;
   private string _$59575;
   private long _$159700;
   private string _$59588;
   private string _$115870;
   private caminoproject _$62680;
   private webapp _$126484;
   private java.util.map _$159711;
  
  
   public main() throws invalidresourceexception {
   _$159639 = 12345;
   _$159651 = "230.10.10.11";
   //_$159668 = null;
   //_$159676 = null;
   _$159680 = 1;
   _$59575 = "";
   _$159700 = -1;
   _$59588 = "";
   _$115870 = "";
   _$62680 = null;
   _$126484 = null;
   _$159711 = new java.util.treemap();
   getlc(javax.swing.joptionpane.getrootframe(), true);
   _$3187.info("license count = ".concat(string.valueof(_$159680)));
   _$3187.info("serial number = ".concat(_$59575));
   _$115870 = _$159725();
   //_$159744();
   bindingschemaloader.getprojectbindingschema();
   bindingschemaloader.getstrutsconfigbindingschema();
   bindingschemaloader.getwebddbindingschema();
   scioworks.aspen.helpmanager.instance();
   }
  
   public java.util.list findglobalforwardsbytarget(navigatable n1) {
   arraylist a2;
   iterator i3;
   strutssubapp s4;
   list l5;
   a2 = new java.util.arraylist();
   i3 = _$159711.values().iterator();
   while (i3.hasnext()) {
   s4 = (strutssubapp) i3.next();
   l5 = s4.getstrutsconfig().findglobalforwardsbytarget(n1);
   a2.addall(l5);
   }
   return a2;
   }
  
   public navigatable findnavigatable(string s1) {
   iterator i2;
   strutssubapp s3 = null;
   i2 = _$159711.values().iterator();
   {
   do {
   if (i2.hasnext()) {
   s3 = (strutssubapp) i2.next();
   }
   }
   while (s3.isinsubapp(s1) == false);
   return s3.findsubappnavigatable(s3.makesubapprelative(s1));
   }
   //return null;
   }
  
   public action findaction(string s1) {
   iterator i2;
   strutssubapp s3 = null;
   i2 = _$159711.values().iterator();
   {
   do {
   if (i2.hasnext()) {
   s3 = (strutssubapp) i2.next();
   }
   }
   while (s3.isinsubapp(s1) == false);
   return s3.findsubappaction(contextpathutil.makesubapprelative(s3.getprefix(), s1));
   }
   //return null;
   }
  
   public caminoproject getproject() {
   return _$62680;
   }
  
   public webapp getwebapp() {
   return _$126484;
   }
  
   public strutssubapp getsubapp(string s1) {
   return (strutssubapp) _$159711.get(s1);
   }
  
   public java.util.set getsubappprefixes() {
   return _$159711.keyset();
   }
  
   java.util.map getallsubapps() {
   return _$159711;
   }
  
   public void initnewproject(caminoproject c1, scioworks.aspen.progress.progresslistener p2) throws invalidresourceex
 
 
上一篇: jakarta struts应用的七个经验(1)    下一篇: 用struts框架开发java应用
  相关文档
在java中轻松打印文档 11-16
.net和j2ee该相互学习什么? 11-16
java核心代码例程之:jniexample.cpp 11-17
企业应用web服务安全:问题介绍(图) 11-17
apache+tomcat负载平衡设置详解 11-17
强强携手 将ajax带入eclipse 11-17
jsp设置页面过期 11-17
jfreechart 在 webwork 中的应用 11-17
使用eclipse ide创建统一开发环境 11-17
用web service进行企业级的门户集成 11-17
java中static、this、super、final用法简谈(一) 11-17
scwcd考试大纲中各部分的题量分布 11-17
java学习之java的运行环境 11-17
使用 ant 协助高效开发 java 项目 11-17
运用类反射机制简化struts应用程序的开发 11-17
java applet 入门第三天 11-16
jbuilder2005单元测试体验之测试配置 11-16
使用bmt消息驱动bean和spring进行高性能的消息处理 11-17
对java多态性综合运用的探讨 11-16
web service appender 管理日志纪录 11-17
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息