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