1. 軟件狗
軟件狗(加密狗)指安裝在并口上或USB口上的硬件加密狗。軟件狗(加密狗)是一個(gè)可編程、可讀寫的存儲(chǔ)設(shè)備,具有100個(gè)字節(jié)的數(shù)據(jù)存儲(chǔ)區(qū)。如果軟件狗插在計(jì)算機(jī)上,您可以通過(guò)相應(yīng)的加密接口函數(shù)或開發(fā)商工具對(duì)加密狗進(jìn)行訪問(wèn)。
2. 加密接口
軟件狗(加密狗)開發(fā)套件提供的加密接口是一套包含各種開發(fā)語(yǔ)言的程序接口模塊,可以嵌在程序的源代碼中。您可以在您程序中使用軟件狗(加密狗)開發(fā)套件提供的加密接口對(duì)軟件狗(加密狗)進(jìn)行操作。
3. 開發(fā)商工具(DogEdt32.EXE)
軟件狗(加密狗)開發(fā)商工具可以使開發(fā)商方便地對(duì)軟件狗(加密狗)存儲(chǔ)區(qū)進(jìn)行編輯、讀取系列號(hào)以及連續(xù)初始化等操作。
軟件狗(加密狗)的基本原理
開發(fā)商程序通過(guò)調(diào)用軟件狗開發(fā)套件提供的接口模塊對(duì)軟件狗(加密狗)操作,軟件狗(加密狗)響應(yīng)該操作并通過(guò)接口模塊將相應(yīng)數(shù)據(jù)返回給開發(fā)商程序。開發(fā)商程序可以對(duì)返回值進(jìn)行判定并采取相應(yīng)的動(dòng)作。如果返回?zé)o效的響應(yīng),表明沒有正確的軟件狗,開發(fā)商可以將應(yīng)用程序終止運(yùn)行。簡(jiǎn)要示意如下:
軟件狗(加密狗)如何保護(hù)您的軟件?
軟件狗(加密狗)開發(fā)套件提供了兩種加密方案:使用Obj、DLL、ActiveX控件或者直接使用外殼工具,請(qǐng)根據(jù)您的需求選擇方案。
加密方案一:使用Obj、DLL、ActiveX控件
Obj、DLL、ActiveX控件提供了操作軟件狗(加密狗)的接口函數(shù),您可以直接在應(yīng)用程序的源代碼里加入這些接口函數(shù)的調(diào)用,來(lái)保護(hù)您的一個(gè)或者多個(gè)軟件,然后重新編譯您的應(yīng)用程序。
由您來(lái)設(shè)置應(yīng)用程序中調(diào)用加密接口的次數(shù)以及沒有發(fā)現(xiàn)軟件狗(加密狗)采取的措施。原則上您調(diào)用、設(shè)置的加密接口越多將更有利于阻止?jié)撛诤诳推茐哪能浖Wo(hù)。
加密方案二:使用外殼工具
使用外殼工具對(duì)軟件保護(hù)是一種快速、簡(jiǎn)單的保護(hù)方案。它不象使用接口函數(shù)需要對(duì)源代碼進(jìn)行改動(dòng),而是自動(dòng)給您的可執(zhí)行應(yīng)用程序加了一個(gè)保護(hù)層。在程序開始運(yùn)行和運(yùn)行當(dāng)中會(huì)自動(dòng)地訪問(wèn)軟件狗是否存在。假如軟件狗(加密狗)不存在,用戶將看到一個(gè)錯(cuò)誤提示,該應(yīng)用程序?qū)⒉荒苓\(yùn)行。
特點(diǎn)
軟件狗(加密狗)開發(fā)套件適用于DOS、Windows 3X/9X/ME/NT/2000/XP、Linux操作系統(tǒng),支持幾乎所有主流編程語(yǔ)言、開發(fā)工具。軟件狗的主要特點(diǎn)如下:
數(shù)據(jù)交換隨機(jī)噪聲技術(shù)
有效地對(duì)抗邏輯分析儀及各種調(diào)試工具的攻擊,軟件狗(加密狗)wq禁止軟件仿真程序模擬并口的數(shù)據(jù)。
迷宮技術(shù)
在RC-DL函數(shù)入口和出口之間包含大量復(fù)雜的判斷跳轉(zhuǎn)干擾代碼,動(dòng)態(tài)改變執(zhí)行次序,提升RC-DL的抗跟蹤能力。
時(shí)間閘
硬件狗(加密狗)內(nèi)部設(shè)有時(shí)間閘,各種操作必須在規(guī)定的時(shí)間內(nèi)完成。硬件狗正常操作用時(shí)很短,但跟蹤時(shí)用時(shí)較長(zhǎng),超過(guò)規(guī)定時(shí)間,硬件狗將返回錯(cuò)誤結(jié)果。
AS技術(shù)
API函數(shù)調(diào)用與SHELL外殼加密相結(jié)合的方式,同時(shí)使用能夠達(dá)到極高的加密強(qiáng)度。RC-DL開發(fā)套件在外殼加密工具中與調(diào)用的API函數(shù)建立了對(duì)應(yīng)關(guān)系。這樣處理后,程序中調(diào)用的API函數(shù)只有在有外殼的情況下才能正確運(yùn)行,而外殼本身隱蔽了對(duì)API函數(shù)的調(diào)用。
抗共享
加密狗可以通過(guò)編程的方式實(shí)現(xiàn)對(duì)抗并口共享器。
存儲(chǔ)器
加密狗提供100字節(jié)掉電保持?jǐn)?shù)據(jù)存儲(chǔ)區(qū)供開發(fā)商存放關(guān)鍵數(shù)據(jù)、配置參數(shù)等信息,可通過(guò)RC-DL開發(fā)商工具或接口函數(shù)對(duì)存儲(chǔ)區(qū)進(jìn)行讀寫。
改良的硬件驅(qū)動(dòng)程序
加密狗驅(qū)動(dòng)程序的安裝及發(fā)布更加方便、快捷,開發(fā)商只需使用InstDrv.exe安裝驅(qū)動(dòng)程序,硬件即可正常工作。
嶄新的硬件狗編輯工具DogEdt32.exe
集成了原有DogEdt32.exe、Reveal.exe、Convert.exe三個(gè)工具,并新增錯(cuò)誤碼查詢功能,令硬件狗編輯調(diào)試過(guò)程更趨簡(jiǎn)捷、順暢。
高強(qiáng)度動(dòng)態(tài)庫(kù)加密方式
在原有加密方式基礎(chǔ)上,新增 C語(yǔ)言高強(qiáng)度動(dòng)態(tài)庫(kù)加密方式,并有效運(yùn)用動(dòng)態(tài)庫(kù)認(rèn)證安全機(jī)制,確保動(dòng)態(tài)庫(kù)調(diào)用具有無(wú)與倫比的安全可靠性。
支持ActiveX控件
開發(fā)商可以在網(wǎng)頁(yè)中或VB、VC中使用ActiveX控件對(duì)硬件狗進(jìn)行操作。Linux模塊
提供了針對(duì)Linux內(nèi)核2.2和2.4版本驅(qū)動(dòng)程序,開發(fā)商可以使用Linux模塊保護(hù)運(yùn)行于Linux操作系統(tǒng)上的應(yīng)用程序。