高老莊

          八戒的夢(mèng)想:農(nóng)婦,山泉,有點(diǎn)田
          posts - 4, comments - 14, trackbacks - 0, articles - 3
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          Architexa的暴力破解

          Posted on 2010-06-15 17:34 高老莊 閱讀(3412) 評(píng)論(14)  編輯  收藏 所屬分類: 架構(gòu)與模式
           Architexa的前身是relo,這個(gè)工具在分析開源項(xiàng)目的源碼時(shí)很好用,relo已經(jīng)不再維護(hù),變成了新的插件Architexa,其網(wǎng)址是http://www.architexa.com/,雖然說(shuō)architexa東西不錯(cuò),可惜需要付費(fèi).另外他的注冊(cè)網(wǎng)站好像有問(wèn)題,因此連評(píng)估也做不了,無(wú)奈之下,動(dòng)了暴力破解的念頭.下面即是暴力破解的過(guò)程,需要的人可以參考下.
          1.architexa 通過(guò)eclipse的update manager 下載后,在eclipse_HOME/plugins會(huì)存在幾個(gè)jar和目錄,如下:


          1.architexa 沒有對(duì)編譯后的代碼混淆,先用java decompiler 反編譯出如下的類:
          • com.architexa.diagrams.RSECore 位于com.architexa.diagrams_1.2.2.201006051418.jar中.
          • com.architexa.rse.ConnectAccountDialog 位于com.architexa.intro_1.2.2.201006051418/ReloIntro.jar中
          2.修改RSECore類的方法:
           1 public static boolean validInstall()
           2 {
           3     if (!AccountStatusUtils.testAccountValid()) {
           4       String email = AccountSettings.getStoredAccountEmail();
           5       AccountSettings.getStoredAccountPassword();
           6       if ((email != null&& (email.length() > 0))
           7         AccountErrorMsgs.displayErr("Account Has Expired ");
           8       return false;
           9     }
          10     return true;
          11 }
          12
          中間的判斷可以完全拿掉,修改為如下即可:
          1 public static boolean validInstall()
          2 {
          3     return true;
          4 }

          3.修改ConnectAccountDialog類的代碼(反編譯后的代碼有點(diǎn)長(zhǎng),這里不列出了),最終改成如下即可:
          1 protected void okPressed_Internal() {
          2     this.emailEntered = this.emailField.getText();
          3     this.passwordEntered = this.passwordField.getText();
          4 
          5     AccountConnection ac = new AccountConnection();
          6     if (this.enableOnOK) ac.setMenuToDisable(!this.disableOnCancel);
          7     super.okPressed();
          8 }

          編譯后將上述兩個(gè)類放到對(duì)應(yīng)的jar中,重啟eclipse.

          4.在architexa的認(rèn)證對(duì)話框,輸入任意email和password,architexa 將重建索引.
          5.在某個(gè)java類的上下文菜單中,可以看到Open in Diagram 就可以生成類的布局圖,類圖和序列圖了.可以通過(guò)工具欄上的button來(lái)輸出圖形.

          下面貼幾個(gè)通過(guò)這個(gè)插件構(gòu)成的圖,欣賞下






          評(píng)論

          # re: Architexa的暴力破解  回復(fù)  更多評(píng)論   

          2010-07-15 16:23 by lurga
          請(qǐng)教下如何編譯?另外內(nèi)嵌類怎么處理?

          # re: Architexa的暴力破解  回復(fù)  更多評(píng)論   

          2010-07-16 13:19 by 高老莊
          @lurga
          1.新建一個(gè)插件工程,在require plug-ins 中add 相應(yīng)的插件.
          2.另外需要下載json ,commons-codec(這個(gè)plugins\com.architexa.intro_xxx\lib中有),common-lang 的三個(gè)釋放包,注意commons-codec的build path order ,保證其最優(yōu)先.
          3.反編譯的兩個(gè)java文件重新編譯后,會(huì)產(chǎn)生4個(gè)class,放到eclipse 的plug-ins的對(duì)應(yīng)jar中即可.

          # re: Architexa的暴力破解  回復(fù)  更多評(píng)論   

          2010-07-18 10:07 by lurga
          非常感謝,我用了個(gè)蠢辦法,把plugin下的所有jar包都作為依賴包放進(jìn)去了,好像內(nèi)嵌類是反編譯$1 $2的那兩個(gè)class得來(lái)的。我蠻喜歡用relo,現(xiàn)在有了這個(gè)工具,更好用了

          # re: Architexa的暴力破解  回復(fù)  更多評(píng)論   

          2010-07-21 14:22 by annping
          你好,看了你的介紹,覺得很好,可惜小弟還是沒有編譯成功,不知能否將這兩個(gè)編譯好的jar發(fā)給小弟?不勝感激!
          郵箱:wyh.personal@gmail.com

          # re: Architexa的暴力破解[未登錄]  回復(fù)  更多評(píng)論   

          2010-07-22 10:53 by xxx
          @annping
          已經(jīng)發(fā)你了,注意下你的版本是否能對(duì)的上
          建議你還是好好研究下如何編譯,這個(gè)軟件,更新比較頻繁,這次發(fā)的jar在下一個(gè)版本中不一定能用上.

          # re: Architexa的暴力破解  回復(fù)  更多評(píng)論   

          2010-07-23 14:51 by annping
          多謝大哥,果然如你所說(shuō),版本不對(duì),覆蓋后部分功能不能用,看來(lái)我還是要聽你一言,好好地研究下如何編譯,還請(qǐng)大哥多多指教。。。呵呵~~

          # re: Architexa的暴力破解  回復(fù)  更多評(píng)論   

          2010-08-09 23:58 by ltos
          麻煩把工程共享一下啊

          # re: Architexa的暴力破解[未登錄]  回復(fù)  更多評(píng)論   

          2010-08-18 22:30 by Vince
          @高老莊
          在decomplier里是不沒法改代碼,怎么辦?

          # re: Architexa的暴力破解[未登錄]  回復(fù)  更多評(píng)論   

          2010-08-19 09:27 by xxx
          @Vince
          貼到eclipse里 編譯后放到原始jar中

          # re: Architexa的暴力破解[未登錄]  回復(fù)  更多評(píng)論   

          2010-08-20 21:46 by Vince
          @xxx
          貼到eclipse里 編譯后放到原始jar中
          還是沒明白,貼到eclipse里的哪個(gè)位子?新建一個(gè)類嗎?這樣編譯不了,而且怎么才能把他放到原來(lái)的jar里去呢?我在建完的插件工程里也沒發(fā)現(xiàn)有require plug-ins

          # re: Architexa的暴力破解[未登錄]  回復(fù)  更多評(píng)論   

          2010-11-05 18:57 by leon
          是不是現(xiàn)在用這種方法 不行了? 我按大牛這樣做了之后發(fā)現(xiàn)寫個(gè)郵箱登錄沒問(wèn)題 但是用的時(shí)候報(bào)錯(cuò):your account is expired
          請(qǐng)教怎么解決?

          # re: Architexa的暴力破解  回復(fù)  更多評(píng)論   

          2010-11-06 09:24 by songhc
          哥們,我還沒有破解成功,能否給咱發(fā)一個(gè)破解版呀 ,多謝了。

          # re: Architexa的暴力破解[未登錄]  回復(fù)  更多評(píng)論   

          2010-11-06 19:13 by xxx
          不是我不給,
          1.這個(gè)東東沒有提供一個(gè)下載包,都是在線更新的,因此 你們下載的應(yīng)該都是它的最新構(gòu)建版本
          2.由于版本不同,我即便給你某個(gè)版本的破解文件,放到不同的版本中不一定用的了
          3.如果我給你們一個(gè)完整版本的插件,又未免太大了,不大方便

          所以,你們還是自己好好研究下,畢竟,授人于魚,不如授人于漁.
          PS:其實(shí)我寫這個(gè)文章的目的,是讓大家了解付費(fèi)插件的一般破解思路,不是想著讓大家去破解它,這個(gè)東東其實(shí)沒有想的那么好用.

          # re: Architexa的暴力破解[未登錄]  回復(fù)  更多評(píng)論   

          2011-01-15 17:20 by Terry
          我破解后沒過(guò)一會(huì)就提示過(guò)期。然后eclipse用起來(lái)還特別卡

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。

          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 宽城| 崇礼县| 泰宁县| 鄂伦春自治旗| 张北县| 宝山区| 乐业县| 黔西县| 兰州市| 宝兴县| 信丰县| 祁连县| 荣昌县| 鄂托克前旗| 夏邑县| 文成县| 同仁县| 怀化市| 鸡西市| 罗甸县| 玉环县| 田东县| 西盟| 缙云县| 雅安市| 望都县| 景德镇市| 会宁县| 大同市| 芜湖市| 瑞昌市| 兴宁市| 浪卡子县| 萝北县| 南陵县| 准格尔旗| 招远市| 东辽县| 新竹县| 个旧市| 惠州市|