目前加密鎖(加密狗)的解密破解工作(zuò)主要鸠合在使用程序與加密新聞庫之間(jiān)的通(tōng)信攔擋。這種辦法利潤較低(dī),也易于實現,對待以單片機等芯片為(wèi)核心的加密鎖(加密狗)存在不錯的解密效果譬喻,某個(gè)國內(nèi)知名的美國加密狗供給商的一款很(hěn)有(yǒu)名的加密狗,其全部編程材料就或許從網上(shàng)失去到,經過對這些(xiē)材料的闡發,我們知道(dào)這個(gè)加密鎖(加密狗)有(yǒu)64個(gè)內(nèi)存單位,其中56個(gè)或許被用戶使用,這些(xiē)單位中的每個(gè)均或許被用為(wèi)三種類型之一:算(suàn)法、數(shù)據值和(hé)計(jì)數(shù)器(qì)。
由于加密鎖(加密狗)的使用程序接口(API)根蒂基本上(shàng)都是悍然的,因而從網上(shàng)或許很(hěn)簡單下載到加密狗的編程接口API、用戶手冊、和(hé)此外幹系材料,還(hái)或許熟谙加密狗技(jì)術(shù)的最新停頓。
加密鎖,稱号“加密狗”,是一種極度固執而又乖巧的軟件關愛(ài)制(zhì)造品,它不但(dàn)或許或許安全可(kě)靠地關愛(ài)好您的軟件,強大(dà)的受權效用必然為(wèi)您的軟件銷售增強競争優勢。“USB加密狗”是一種插在計(jì)較機USB口上(shàng)的軟硬件結合的加密制(zhì)造品。通(tōng)常都有(yǒu)幾十或幾百字節的非易失性存儲空(kōng)間(jiān)可(kě)供讀寫,當初較新的狗外部還(hái)蘊含了單片機。軟件啓示者或許通(tōng)過接口函數(shù)和(hé)加密狗發展數(shù)據交換(即對加密狗發展讀寫),來(lái)檢查加密狗能否插在并行(xíng)口上(shàng);或許直接用加密狗附帶的工具加密自己的EXE文件(稱号“包殼”)。如許,軟件啓示者或許在軟件中配置多(duō)處軟件鎖,操縱加密狗做(zuò)為(wèi)鑰匙來(lái)掀開(kāi)這些(xiē)鎖;如果沒插加密狗或加密狗錯誤應,軟件将不能畸形實行(xíng)。說的陽春白雪一點:也便是USB加密狗相當于一把鎖,使用usb加密狗或許管束電(diàn)腦(nǎo)的創議、使用,也或許管束系統的創議、使用,或許管束某個(gè)軟件的創議、使用。這要看你(nǐ)是怎麽界說的。若你(nǐ)想把它做(zuò)成系統的加密狗的話(huà),當要進入你(nǐ)的系統前,隻需通(tōng)過讀取USB盤的無關新聞後技(jì)術(shù)手段名堂進入,否則,隻無關機啦。固然,這有(yǒu)個(gè)制(zhì)造過程,隻需把自己的重要的新聞通(tōng)過制(zhì)形成某種文件存入U盤後,技(jì)術(shù)手段名堂收效。
此加密鎖(加密狗)的全數(shù)API函數(shù)挪用都市有(yǒu)返回值,返回值為(wèi)0的時(shí)候浮現得(de)勝對于加密狗的破解大(dà)抵或許分為(wèi)三種辦法:一種是通(tōng)過硬件克隆或許複制(zhì),一種是通(tōng)過SoftICE等De馬腳工具調試跟蹤解密,一種是通(tōng)過編寫攔擋程序修正軟件和(hé)加密狗之間(jiān)的通(tōng)信。
那(nà)麽這種複制(zhì)鎖又是若何制(zhì)造進去的呢?本文湊合軟件加密狗的加密事理(lǐ)以及對其破解的通(tōng)常思路和(hé)辦法作(zuò)詳細介紹。作(zuò)為(wèi)為(wèi)軟件啓示者,研究好軟件加密真實很(hěn)重要,不外也很(hěn)有(yǒu)重要多(duō)熟谙一些(xiē)關于加密狗解密和(hé)破解的常識,加密和(hé)破解就像矛和(hé)盾一樣,對于解密常識熟谙的越多(duō),那(nà)麽編寫的加密代碼就越好,要知道(dào)加密永世都比解密要簡單的多(duō),隻需本旨知彼,方能攻無不克。
硬件克隆複制(zhì)主如果針對國制(zhì)造芯片的加密狗,由于國制(zhì)造加密狗公司通(tōng)常不有(yǒu)核心加密芯片的制(zhì)造才略,因而有(yǒu)些(xiē)使用了市場(chǎng)上(shàng)通(tōng)用的芯片,破解者闡收回芯片電(diàn)路 以及芯片裏寫的形式後,就或許即時(shí)複制(zhì)或克隆一個(gè)完全相同的加密狗。不外海外的加密狗就沒法使用這種辦法,海外加密狗硬件使用的是安全性很(hěn)好的自己研制(zhì)開(kāi) 發的芯片,通(tōng)常很(hěn)難發展複制(zhì),而且當初國內(nèi)加密狗也在使用出口的智能卡芯片,因而這種硬件克隆的解密辦法用處愈來(lái)愈少(shǎo)。以上(shàng)是目前軟件加密的技(jì)術(shù)事理(lǐ)以及破解軟件加密狗(加密鎖)的一些(xiē)常見思路,具體(tǐ)若何行(xíng)使,各人(rén)或許到晨星軟件官網下的最新文章裏檢查熟谙,裏面有(yǒu)不少(shǎo)關于工程造價軟件加密狗的常識。本文有(yǒu)加密狗破解www.sificdog.com/整理(lǐ)編輯轉載此文請(qǐng)注明(míng)出處。
算(suàn)法單位較抽象一些(xiē),算(suàn)法(algorithm)是如許一種技(jì)術(shù),你(nǐ)用Query(queryData)函數(shù)訪問它,其中queryData是盤查 值,上(shàng)述函數(shù)有(yǒu)一個(gè)返回值,被加密的程序知道(dào)一組如許的盤查值/返回值對,在重要加密的處所,用上(shàng)述函數(shù)檢查狗的存在和(hé)真僞。對于被指定為(wèi)算(suàn)法的單位,軟 件上(shàng)是沒法讀和(hé)修正的,即使你(nǐ)是造孽的用戶也是雲雲,我了解這種技(jì)術(shù)除了添加程序複雜性以外,主如果為(wèi)了對于使用模仿器(qì)技(jì)術(shù)的破解。
計(jì)數(shù)器(qì)是如許一種單位,軟件啓示商在其軟件中使用Decrement函數(shù)或許把其值減一,當計(jì)數(shù)器(qì)和(hé)某種勾當的(active)算(suàn)法關聯時(shí),計(jì)數(shù)器(qì)為(wèi)零則會(huì)封閉(deactive)這個(gè)算(suàn)法。因而,破解思路就進去了,便是使用我們自己的工具(如VB、VC等)重新編寫構造一個(gè)和(hé)加密狗API一樣的DLL新聞庫文件,裏面也蘊含Read、 Write等全部API中蘊含的函數(shù),使用的 參量及返回值和(hé)本來(lái)的函數(shù)一樣,全數(shù)函數(shù)返回零。而後對Query、Read函數(shù)發展處置,返答(dá)複用軟件重要 的數(shù)值就可(kě)。
對于De馬腳調試破解,由于軟件的複雜度愈來(lái)愈高(gāo),編譯器(qì)制(zhì)造生(shēng)發火(huǒ)的代碼也愈來(lái)愈多(duō),通(tōng)過反彙編等辦法跟蹤調式破解的複雜度已經變得(de)愈來(lái)愈高(gāo),破解利潤也愈來(lái)愈高(gāo),目前已經很(hěn)少(shǎo)有(yǒu)人(rén)願意消耗少(shǎo)量精力發展雲雲複雜的破解,除非被破解的軟件存在極高(gāo)的代價。
數(shù)據值對比好了解,數(shù)據值是用戶存儲在可(kě)讀寫的單位中的數(shù)據,就和(hé)存儲在硬盤裏一樣,用戶或許使用Read函數(shù)讀出存儲單位裏面的數(shù)據,也或許使用Write函數(shù)生(shēng)活自己的新聞到存儲單位。
現如今各類工程造價類軟件司空(kōng)見慣,與之相對應的加密狗技(jì)術(shù)也不斷更新。但(dàn)這種軟件,我們通(tōng)常私人(rén)很(hěn)難消費得(de)起,價錢(qián)動辄上(shàng)萬元。這就乃至把不少(shǎo)工程造價職員劃在了正版軟件門(mén)外,他們甯願去使用使用市場(chǎng)上(shàng)幾百元就或許買到盜版軟件加密狗,也便是我們稱号的複制(zhì)鎖。當初的工程造價類軟件,譬喻廣聯達,魯班算(suàn)量,同望,博微,p等等,都進去了這種複制(zhì)鎖,價錢(qián)自制(zhì),而且非常好用。實在複制(zhì)鎖也沒什麽欠安,效用和(hé)正版加密鎖如出一轍,一樣的使用,隻是軟件進級貧苦一點,通(tōng)常找專業軟件商都能供給這鍾處事。筆者這裏給各人(rén)推薦一家(jiā)專業的造價類軟件加密狗制(zhì)造商-晨星軟件,非常專業,各人(rén)或許去咨詢熟谙一下。
加密狗通(tōng)過在軟件實行(xíng)過程中和(hé)加密狗交換數(shù)據來(lái)實現加密的.加密狗內(nèi)置單片電(diàn)機路(也稱CPU),使得(de)加密狗存在果決、闡發的處置才略,增強了主動的反解密才略。這種加密制(zhì)造品稱它為(wèi)"智能型"加密狗.加密狗內(nèi)置的單片機裏蘊含有(yǒu)專一使用于加密的算(suàn)法軟件,該軟件被寫入單片機後,就不能再被讀出。如許,就保證了加密狗硬件不能被複制(zhì)。同時(shí),加密算(suàn)法是不可(kě)預知、不可(kě)逆的。加密算(suàn)法或許把一個(gè)數(shù)字或字符轉變成一個(gè)整數(shù),如DogConvert(1)=12345、DogConvert(A)=43565。下面,我們舉個(gè)例子說明(míng)單片機算(suàn)法的使用。 譬喻一段程序中有(yǒu)如許一句:A=Fx(3)。程序要根據常量3來(lái)得(de)到變量A的值。于是,我們就或許把原程序如許改寫:A=Fx(DogConvert(1)-12342)。那(nà)麽原程序中就不會(huì)呈現常量3,而取之以DogConvert(1)-12342。如許,隻需軟件編寫者才知道(dào)理(lǐ)論挪用的常量是3。而如果不有(yǒu)加密狗,DogConvert函數(shù)就不能返回正确結果,結果算(suàn)式A=Fx(DogConvert(1)-12342)結果也肯定不會(huì)正确。這種使盜版用戶得(de)不到軟件使用代價的加密方式,要比一締造造孽使用就告誡、停止的加密方式更馴良、更隐蔽、更令解密者難以琢磨。此外,加密狗另有(yǒu)讀寫函數(shù)或許用刁難加密狗外部的存儲器(qì)的讀寫。于是我們或許把上(shàng)算(suàn)式中的12342也寫到狗的存儲器(qì)中去,令A的值完全取決于DogConvert()和(hé)DogRead()函數(shù)的結果,令解密難上(shàng)加難。不外,通(tōng)常說來(lái),加密狗單片機的算(suàn)法難度要低(dī)于一些(xiē)悍然的加密算(suàn)法,如DES等,由于解密者在觸及加密狗的算(suàn)法疇昔要面臨許多(duō)難關。
這個(gè)新的DLL文件編寫得(de)勝後,直代替換掉本來(lái)的DLL文件,這時(shí)候再運行(xíng)使用軟件,軟件訪問加密狗的行(xíng)使就全部會(huì)被攔擋,攔擋程序永世會(huì)返回正确的數(shù)據給軟件,從而實現了模仿加密狗的運行(xíng)。