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

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

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

    輕松

    記述我學習java的里程

    常用鏈接

    統計

    積分與排名

    友情鏈接

    最新評論

    Java的破解和反破解之道

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

      破解之道:



      對一些提供license.key(包含授權信息的加密文件)的軟件,一般這種文件會采用DES,RAS和CRC校驗而且一般是二進制的(即使有時輸出成BASE64編碼),直接修改文件是浪費時間的,你可以先反編譯通過閱讀源程序來探究解密過程,如果過程是可逆的,那么你自己實現一個加密過程,可以很容易的生成你自己想要的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文件進行擾亂,因為并不是所有的符號都需要擾亂,如果你開發的是一個類庫,或者某些類需要動態裝載,那些公共API就必須保留符號不變,這樣別人才能使用你的類庫。先編寫腳本對那些需要保留的符號名稱進行配置,某些擾亂器能夠調整字節碼的順序,使反編譯更加困難。如果你用的代碼擾亂器能保證別人不能通過反編譯來修改或代替你的class,那么你還得注意不要用不可靠的加密算法。

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

    主站蜘蛛池模板: 亚洲综合网站色欲色欲| 日韩精品无码区免费专区| 亚洲一区二区三区无码影院| 亚洲欧洲AV无码专区| 妞干网在线免费视频| 亚洲国产美女精品久久久| 免费观看的av毛片的网站| 手机永久免费的AV在线电影网| 免费观看毛片视频| 亚洲av午夜电影在线观看| 免费国产真实迷j在线观看| 欧亚一级毛片免费看| 不卡精品国产_亚洲人成在线| 好男人资源在线WWW免费| 日本亚洲成高清一区二区三区| 日韩成人免费视频| 91亚洲精品视频| 天天看免费高清影视| 美女无遮挡免费视频网站| 免费国产在线观看老王影院| WWW国产成人免费观看视频| 久久精品国产精品亚洲艾| 1000部啪啪未满十八勿入免费| 精品亚洲AV无码一区二区三区| 日韩精品无码人妻免费视频| 一级人做人a爰免费视频| 亚洲成色在线影院| 欧美日韩国产免费一区二区三区 | 久久精品免费一区二区| avtt天堂网手机版亚洲| 国产免费啪嗒啪嗒视频看看| 精品久久久久久国产免费了 | 亚洲国产a∨无码中文777| 亚洲精品在线免费观看视频 | 精品久久久久久国产免费了| 亚洲av片在线观看| 一本色道久久88综合亚洲精品高清| 黄床大片免费30分钟国产精品| 亚洲最大成人网色| 国产成人免费高清在线观看| 免费一级毛片无毒不卡|