淺談軟件的破解與保護
第三步。檢查注冊狀況,若沒有注冊,可自定義試用天數,延遲,未注冊畫面等等,可編寫private void checkregist0 cpl數來實現。
3.2軟加密。所謂軟加密就是不依靠特別硬件來實現的對軟件的保護技術。當前國際上比較通用的軟件都采取軟加密的方式,例如微軟的windows系統、殺毒軟件等,它的最大優勢在于極低的加密成本。目前主要有密碼法、計算機硬件校驗法、鑰匙盤法等。目前比較流行的是使用外殼,外殼分為壓縮殼和加密殼,其中壓縮殼的保護性比較弱,所以一般采用加密殼,其原理是利用堆棧平衡原理,修改程序人口處代碼,使其跳轉到殼代碼執行解密程序,將原程序代碼解密后跳回原程序的oep繼續執行。目前比較強的加密殼采用的是動態解密代碼、smc , iat加密技術,程序在運行過程中動態解密代碼,執行完畢后立刻刪除,并且對iat加密,當需要調用api時用解密算法算出api的實際地址來調用,更有甚者,殼里有殼。目前常見的比較強的5大殼有:( i ) encryptpe,其特點是對iat加密比較強,( 2 ) asprotect,其特點是采用多層seh,很容易把人轉暈,( 3) acprotect,其特點是采用stolen code的辦法,( 4 ) armadillo,其特點是雙進程互相檢測,(5)themida,其特點是采用虛擬機技術。好的加密效果在于讓盜版者在破解被保護的軟件時,付出巨大的代價,耗費極大的時間精力,最終被迫放棄攻擊。
3.3硬加密。硬加密就是我們所說的加密狗或加密鎖,是一種插在計算機usb口或并口上的軟硬件結合的加密產品,目前絕大部分都是usb口形式,是基于硬件保護技術,其目的是通過對軟件與數據的保護防止知識產權被非法使用,是保證高檔軟件在市場生命周期中免受盜版侵害的功能強大的工具。加密狗一般都有幾十或幾百字節的非易失性存儲空間可供讀寫,現在較新的狗內部還包含了單片機。軟件開發者可以通過接口函數和軟件狗進行數據交換,來檢查軟件狗是否插在接口上。加密狗內置的單片機里包含有專用于加密的算法軟件,該軟件被寫人單片機后,就不能再被讀出。這樣,就保證了加密狗硬件不能被復制。同時,加密算法是不可預知、不可逆的。加密算法可以把一個數字或字符變換成一個整數,如dconvert (6)=67876,dconvert(x)=34567 0
4、結束語
軟件破解和軟件加密就是矛和盾的關系,好的加密效果在于讓盜版者在破解被保護的軟件時,付出巨大的代價,耗費極大的時間精力,最終被迫放棄攻擊。最后我們要認識到軟件破解是不道德的,是違法《計算機軟件保護條例》的,現如今軟件的大眾化、市場化,低價化,也讓我們有機會有能力去使用正版軟件,所以我們要提高覺悟,力所能及的不使用盜版,以實際行動支持中國的軟件行業發展。
上文是軟件的破解與保護