這兩天寫JAVA的程序
MDI的界面
以前一直做J
EE開發
JAVA的應用程序寫的很少
先找了MDIFramework和acemdi兩個免費的MDI框架
試過之後發現效果實在是不理想
界面丑陋
功能也不是很好
沒辦法
只好老老實實用JDesktopPane和JInternalPane來寫
說實話
用JAVA寫MDI界面恐怕是各種語言中最簡單的了
也很靈活
可惜界面只有
種風格可選
都不好看
要想增強界面就要用到The Alloy Look And Feel()
版本網上有注冊機
不過功能太少了
新的
沒有注冊機
老的注冊機也不能用
很是郁悶
叫我真真郁悶的是又要開始痛苦的破解了
以前破解過不少控件
快的
分鐘
慢的
天時間
非常累
想想漫長的破解過程頭就大
這是我第二次破解JAVA的軟件
上一次的原理和這次不同
這次完全是一種新的嘗試
LicenseCode是要求寫在程序中的
如果你的LicenseCode不對
Alloy在啟動程序的時候會彈出對話框
後面的界面慘不忍睹
和一般的軟件破解一樣找出判斷點修改就行了確定了思路後准備以下幾種工具 WINRAR或JAR
JAVA反編譯軟件(我用的小穎JAVA反編譯專家
JAD內核
支持目錄編譯
這個功能很重要)
文本替換專家(主要用文本查找功能
XP自帶的搜索功能太弱)
Eclipse(編譯修改後的CLASS文件和寫驗證程序時用)
JB
(快速的寫一個有界面的破解器)
基本步驟如下 把alloy
jar解壓到一個目錄
用反編譯工具反編譯所有的文件到一個目錄(大約近
個類文件
ALLOY使用了混淆器防破解
文件名都是字母
意味著不可能通過文件名來判斷文件功能
所以要定位只能靠文本搜索工具了)
用文本工具搜索對話框中的提示信息
確定文件范圍
還好
文件不多
一個個看下去
確定其中一個是用來驗證的文件
這個文件比較獨立
把裡面的核心代碼拷貝到eclipse中
添加一些打印語句
用試用期的LienseCode作為輸入
運行後分析每個變量的含義
(變量都是字母代替的
所以這步分析很重要)
仔細分析驗證算法
還好不是太復雜
用的CRC
校驗
把CODE的一些部分作為輸入
計算出的部分作為CODE的另一部分
用JB
寫個有界面的LienseCode生成器(注冊機)
用逆驗證過程生成LienseCode
把自己生成的可使用
年的LienseCode放到程序中試試
激動人心的時刻到來了
當!一個LienseCode無效的提示框彈了出來
不會吧
我都是驗證過了
和試用期的code分析結果完全一樣啊
再試試試用期code
可以運行
怪了
仔細想想
兩個代碼的主要差別是時間的不同
跟蹤在eclipse的分析程序
哈哈
找到了
原來這個網上的試用版本只給用一年
也就是說即使你有正確的LienseCode它也只給你用一年
好
改成給用
年的
重新編譯class
添回alloy
jar中
再運行
OK!沒有對話框了
不過為什麼button和toolbar都是紅色的
而用試用期的code就是好的?肯定還有限制而且和時間有關
在反編譯的文件中找吧
可是找什麼關鍵字呢
先試試RED吧
上百個文件被搜索到
暈!換關鍵字(於是Color
red
RGB(
都被我試了一遍
每次都是上百個文件被找到)
總不能一個個看吧
對了
前面判斷時間的類用到了ADD方法
搜ADD(
)
哈哈
找到了
就一個文件
打開改成
年
重編譯
放到ALLOY
jar中
再在程序中試試
OK了
紅色沒有了
把所有的界面控件都拖到程序上
看看效果
結果發現button和scrollbar不能響應任何事件
toolbar上的button也一樣
其他的東東倒是沒有問題
看來還有問題
再仔細分析一下前面改時間的那個文件
呵呵
後面還有一段驗證程序
如果code中不滿足這個條件
就把JBUTTON和SCROLLBAR設置為不可用(實際上原理比這個復雜)
分析這段驗證程序
原來code的最後一部分要先用其他部分生成
再用所有的這些部分生成另外一部分
看來我的驗證碼生成器還要再改改
添加幾句就搞定了
用新驗證器生成新的代碼
放到程序中試試
OK
都正常了哈哈
現在可以使用
年了
看看表
我靠
已經晚上
點了
從中午吃完飯搞到晚上
浪費了不少時間啊!
整理了一下文檔
打包注冊機和破解文件
以後就用它了
(本人從來不把破解程序公布到網上
看這篇文章的人可能會比較失望
我只關注破解技術
不支持盜版
因為我寫的軟件網上都有破解器
讓我的勞動損失慘重!要用的話可以根據我的思路自己破解看看)
alloy的效果圖 注冊機
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26773.html