<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    輕松

    記述我學習java的里程

    常用鏈接

    統(tǒng)計

    積分與排名

    友情鏈接

    最新評論

    Java的破解和反破解之道

    摘自久久學院
      java字節(jié)碼能夠很容易被反編譯大家都曉得啦,今天下午我為了得到一個心儀已久的jbuilder opentools(昨天1.0 Released,新鮮出爐!但只能用14天,這怎么行,于是我不惜放下其他工作,研究了一把該軟件加密方法的破解和反破解,結合以前的一些經驗,作文一篇與大家共饗,并不是鼓勵大家......

      破解之道:



      對一些提供license.key(包含授權信息的加密文件)的軟件,一般這種文件會采用DES,RAS和CRC校驗而且一般是二進制的(即使有時輸出成BASE64編碼),直接修改文件是浪費時間的,你可以先反編譯通過閱讀源程序來探究解密過程,如果過程是可逆的,那么你自己實現(xiàn)一個加密過程,可以很容易的生成你自己想要的license key;如果過程不可逆也不是就搞不定了,有些強度不大的加密算法還是可以用暴力破解法來搞定,還有一種情況是對數字加密(一般指過期時間)如果你能修改這個過期時間那么你就可以多用一會兒了,用數學方法描述一下:

      假設集合 X 是明文包含的元素集合,Y是X經過算法后的映射,包含密文元素,,如果有存在兩個算法A和B,能使得{ Y -A-> X } = { Y -B-> X },A算法可逆,但B算法是不可逆的,生產方用A的逆算法加密授權信息(X:String) 到(Y:byte[]),并在軟件中用B算法解密,這樣你就搞不定了,但如果集合X的元素是有限的,假設只有0-9 (new Date().getTime()格式),那么算法B就稱為不可逆但不可靠的,因為你通過一個樣本(一般都會給你評價版的license啦!),是可以得到某些Y集合中元素在X集合中的逆映射的,這樣你可以直接用這張映射表來修改license了...

      反破解之道

      如果是做產品或提供演示程序,加密還是有好處的,加密的軟件可以用上面提到的JODE,一般都是對編譯好的class文件進行擾亂,因為并不是所有的符號都需要擾亂,如果你開發(fā)的是一個類庫,或者某些類需要動態(tài)裝載,那些公共API就必須保留符號不變,這樣別人才能使用你的類庫。先編寫腳本對那些需要保留的符號名稱進行配置,某些擾亂器能夠調整字節(jié)碼的順序,使反編譯更加困難。如果你用的代碼擾亂器能保證別人不能通過反編譯來修改或代替你的class,那么你還得注意不要用不可靠的加密算法。

    posted on 2005-02-01 11:25 輕松 閱讀(349) 評論(0)  編輯  收藏 所屬分類: JAVA轉貼

    主站蜘蛛池模板: 美女巨胸喷奶水视频www免费| 国产精品免费视频网站| 一级毛片一级毛片免费毛片| 亚洲国产美女福利直播秀一区二区| 亚洲日韩国产成网在线观看| 免费观看a级毛片| 国拍在线精品视频免费观看| 桃子视频在线观看高清免费视频| 成人免费视频一区二区| 老子影院午夜伦不卡亚洲| 最新亚洲春色Av无码专区| 亚洲日产2021三区| 亚洲AV无码成人专区片在线观看| 亚洲色一色噜一噜噜噜| 免费少妇a级毛片| 四虎永久免费网站免费观看| 老司机永久免费网站在线观看| 国产免费AV片在线播放唯爱网 | 成人免费无码视频在线网站| 最好看最新的中文字幕免费| 久久免费的精品国产V∧| 国产午夜精品久久久久免费视| 精品一区二区三区免费观看 | 国产精品美女午夜爽爽爽免费| 亚洲精品视频免费看| 最近最新高清免费中文字幕 | 久久精品亚洲精品国产色婷| 亚洲日本一区二区三区在线| 国产亚洲精品自在线观看| 亚洲欧洲日产国码一级毛片| 亚洲欧洲久久久精品| 国产国拍精品亚洲AV片| 在线观看亚洲精品福利片| 日日噜噜噜噜夜夜爽亚洲精品| 亚洲片一区二区三区| 久久久久噜噜噜亚洲熟女综合| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 国产一精品一AV一免费孕妇| 成人毛片18女人毛片免费视频未| 好大好深好猛好爽视频免费| 国产精品免费看香蕉|