<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 輕松 閱讀(349) 評論(0)  編輯  收藏 所屬分類: JAVA轉貼

    主站蜘蛛池模板: 久久久久国产成人精品亚洲午夜| 日韩成全视频观看免费观看高清| 2022中文字字幕久亚洲| 亚洲精华国产精华精华液| 国产va免费精品观看精品| 亚洲最新在线视频| 18禁止观看免费私人影院| 亚洲三级中文字幕| 久久精品女人天堂AV免费观看| 亚洲精品不卡视频| 免费观看的毛片大全| wwwxxx亚洲| 国产又大又长又粗又硬的免费视频| 亚洲性色AV日韩在线观看| 国产亚洲sss在线播放| 国产精品免费网站| 亚洲色大18成人网站WWW在线播放| 日韩版码免费福利视频| 亚洲日韩av无码中文| 无码专区一va亚洲v专区在线| 亚洲精品无码Av人在线观看国产| 伊人免费在线观看| 亚洲av无码一区二区三区网站| 久久大香伊焦在人线免费| 久久久久国产亚洲AV麻豆| 国产在线观a免费观看| 日日夜夜精品免费视频| 深夜免费在线视频| 亚洲国产精品久久久久久| 7723日本高清完整版免费| 国产精品亚洲综合| 亚洲成av人在线视| 无码永久免费AV网站| 免费大片av手机看片| 久久久久亚洲精品美女| 欧美最猛性xxxxx免费| CAOPORM国产精品视频免费| 亚洲精品无码久久久久久久| 免费视频中文字幕| 成全高清在线观看免费| 亚洲综合av一区二区三区不卡|