外殼加密狗
⑴ 加密狗怎麼用
加密狗是用於防止軟體盜版的,對於軟體開發商來說,可以有外殼和API兩種加密方式,對於最終用戶來說只需要安裝驅動,也有無驅的,插上加密狗,軟體便可以使用了
對於最終用戶不明白加密狗的用途,以為所有加密狗是通用的,這是錯誤的,軟體與加密狗是一一對應,這個軟體只認這個加密狗,因為加密狗中包涵了唯一的狗文件信息,且不可能復制的
⑵ 有誰用過CodeMeter加密狗
CodeMeter這個加密狗我們現在正在用,過去我們用深思的狗,花了大量的精力來做加密方案,卻一直被版得比較厲害,就想換進口的狗試試看,我在Google搜了一下,找到了CodeMeter的資料,從網上調查的情況來看,還是比較專業的,並且感覺他們的產品是以安全為特點的,正好符合我們的需求。就申請了試用,了解了下他們的技術,一個是外殼技術,說與其他加密的外殼不同,是按需加解密技術,就是在內存中只有運行到某段的函數的時候才會被解密運行,運行完後又馬上進行加密,可以防內存DUMP,這個概念還算不錯,和深思的代碼移植的概念有些類似,但由於是用PC機的CPU加密解密,所以運算效率更高,加密代碼更多,更安全,一般的脫殼破解還真沒辦法。但也問過「庖丁解狗」的人有關它的破解,他們說從理論上來講要破的話還是可以破的。但是由於他們沒怎麼接觸過,不清楚,得去破了才知道到底厲害不厲害。
⑶ 如何使用外殼工具完成加密
如何使用外 具完成加密 使用外 密工具,開發商可以在沒有程序源 或不對程序源 做任何改動的情況下快捷地完成 加密工作,並保證有著較高的加密強度。若沒有相應的硬體狗存在,加密後的程序將無法啟動。 外 密工具的特點 1、 使用三種方式加密:外殼、嵌入、內外結合。 外 所謂外殼,是加密工具加到被加密程序的一部分程序。加密程序啟動時外 先被執行。外殼 要檢查硬體狗的存在性和一致性。如果對應的硬體狗存在,則進入原程序的入 否則終止程序。外殼只 在加密程序啟動時執行一次。 嵌入 所謂嵌入,是加密工具在被加密程序中嵌入一個公共程序,加密程序在整個運行期內以一定的 頻率執行這個公共程序,該程序檢查硬體狗的存在性和一致性。如果對應的硬體狗存在,則繼續執行原程 序,否則終止程序。本加密方式可選。 內外結合 如果被加密的程序已經調用了賽孚耐公司提供的介面函數,那麼外殼程序會通知介面函數, 外 序是否已經被執行,以防止外殼程序被跳過。如果發現外殼程序沒有被執行,會終止程序。 這些數據文件由您的應用程序使用, 或者由受保護的應用程序產生 (輸 2、 可以對數據文件進行加密, 出文件) 。這些文件只能由受保護的應用程序讀取。 3、 可以通過關聯許可證文件靈活地限制使用時間。 4、 可以自定義查硬體狗錯誤時顯示給用戶的提示信息,也可以選擇不顯示提示信息。 5、 外 護是一個多層的體系結構。只有前一層執行成功,才會 緊相連的一層。這種多層體系 結構可為您的應用程序提供額外的保護--這與用多道鎖為您的門提供保護的功能相似。突破這 些保護層需要更多資源、時間和技巧,可以有效的阻止黑客攻擊。此外,由於採用了多層隨機模 式,所以任何兩次被外 密的應用程序均不相同。 外 密工具可以加密 32/64 位 Windows 程序,在宏狗安裝目錄下\10003(您的軟體系列號) \Shell\Win32shl.exe。 應用示例 下面以使用一個硬體狗保護 Notepad.exe 和 Calc.exe 為例說明外 密工具的使用。 在使用之前假設已 經使用開發商工具在文件系統中創建了兩個許可證文件(許可證文件的文件夾 ID 為 16128 ,文件 ID 分 別為 10 和 20) 。關於如何創建許可證文件請查閱開發商手冊開發商工具的使用一章。 1.請先插入硬體狗,執行步驟 1,如圖 1 所示,指定要加密的 EXE 文件。 第 1 頁 步驟 1: 單擊瀏覽按鈕, 指定要加密的 EXE 文 件;或在「源文件」文 本框中輸入 要加密的 EXE 文件的路徑和文 件名。 圖 1 指定源文件後,系統會在「目標路徑」文本框中自動添加加密後的 EXE 文件(即目標文件)存放的路 徑。系統默認將目標文件存放到 OUTPUT 路徑下,我們建議用戶採用這種默認方式。 如果目標文件存在,覆蓋它 如果選中「如果目標文件已存在,覆蓋它」復選框,當目標文件所在路徑下有同名文件存在,加密過 程不再出現是否覆蓋文件的提示信息。 2.對加密狗的硬體參數進行設置。 產品名稱 加密後的應用程序在運行時會查找與系列號和產品名稱相一致的硬體狗。可以此處指定產品名稱。 查找方式 通過選擇查找方式,能夠更快地、更准 找到硬體狗。請選擇適合您的應用程序的查找方式。 用戶 加密後的應用程序在運行時會訪問硬體狗,請指定硬體狗的用戶 。 嵌入 第 2 頁 加密軟體運行期間,可以不斷地檢查對應的硬體狗是否存在。如果清空「嵌入」復選框,則在程序運 行期間不檢查硬體狗。如果選中「嵌入」復選框,當程序運行期間檢查不到對應的硬體狗時,程序會停止 運行。您可以指定檢查間隔,間隔以秒為單位。預設值為 120 秒,即 2 分鍾。 .NET 增強 .NET 增強功能為純.NET 應用程序(EXE 和 DLL)提供了增強的安全性。此功能可執行以下操作: 隱藏原始入口點方法(僅用於.NET 可執行文件) 加密原始應用程序的字元串 加密原始應用程序的常量 (用於 32 位.NET 應用程序) SDNPro64.dll 和 (用於 64 位.NET 如果選擇了此功能, 則需要將 SDNPro.dll 應用程序)與受保護應用程序一起提供給最終用戶。 注意 使用.NET 增強特徵項(使用.Net 增強保護外 NET 應用程序)的前提條件是機器中應安裝了同 一版本的.NETFramework 和.NET SDK。.NET 增強選項不支持混合代碼應用程序。 多層保護級別 外 提供多層保護。因為應用程序和外 之間的連接處非常容易受到攻擊,所以您可以選擇使用 多層外 從第 1 級到第 5 級)來保護您的應用程序。第 1 級可提供合理的保護,而第 5 級可提供最強保 護。但是,隨著每一保護級別的增加,應用程序的大小和用於啟動的時間也會相應增加。在預設情況下, 使用第 3 級保護方式。 隱藏導入符號 選定此復選框隱藏您的程序中的導入符號。但是,請注意該選項不適用於此處所列出的文件類型使SmartHeap DLLs 的應用程序 當您同時加密數據文件或者使用數據文件加密選項時 如果存在要實施保護的任意數據文件或已指定了文件加密設置,則將忽略隱藏導入符號選項。 我使用了外 SDK 如果您已經使用外殼軟體開發工具包(位於\Shell SDK 文件夾下)來保護您的重要 段、常量和字 符串數據,則選中此復選框。參閱該文件夾中的自述文件獲得詳細信息。 存在調試器時允許我的應用程序運行 您可以不選擇該復選框,禁止在出現調試器時執行應用程序。如果在系統中探測到調試器,被保護的 應用程序將退出。非惡意用戶可以關閉調試器,重新啟動應用程序。但是,如果出於某種原因,您需要在 存在調試器的情況下允許您的應用程序運行,則選擇該復選框。 3.執行步驟 2、3、4、5、6,如圖 2、3 所示,關聯許可證文件。 步驟 2: 單 擊「關聯 許可證文 件」按鈕。 圖 2 第 4 頁 步驟 3:選擇 「關聯許可 證文件」 。 步驟 4: 指定文件 夾 ID。 步驟 5: 指定文件 ID。 步驟 6:單擊 「 」按鈕。 圖 3 注意 許可證文件將被關聯到主界面上的源文件。如果主界面上的源文件是一個動態連接庫文件,在 此動態連接庫被載入到內存中時,會調用 RC_VisitLicenseFile 函數檢查許可證文件。關於 RC_VisitLicenseFile 函數的說明,請查閱開發商手冊 API 介面函數說明部分。 4.我們提供了 19 種不同錯誤類型的錯誤信息,請根據具體情況分別指定其內容。標題限制在 60 位元組 內,每條消息限制在 100 位元組內。執行步驟 7、8、9、10、11、12,如圖 4、5 所示,設置提示消息。 第 5 頁 步驟 7:單 擊「設置提 示消息」出 , 現如下圖的 界面。 圖 4 第 6 頁 步驟 8: 在查硬體 狗出現錯誤時, 如需要顯示提示 信息,則選中此 復選框;否則清 空此復選框。 步驟 10: 根據 需要, 修改提 示信息對話 框的內容。 步驟 9:根 據需要,修 改提示信息 對話框的標 題。 步驟 12:單擊 「 」按鈕。 圖 5 步驟 11:根據需 要,選擇錯誤消 息的類型:窗口 消息或者控制台 消息。 5.如果在加密 EXE 文件的同時需要加密數據文件,執行步驟 13,如圖 6 所示: 第 7 頁 步驟 13: 單擊 「設置要加 密的數據文 件」按鈕。 圖 6 6.指定要加密的數據文件(實際上 Notepad.exe 執行時不需要資料庫文件,這里只是一個加密演示) , 執行步驟 14,如圖 7 所示: 步驟 14:單 擊 瀏 覽 按 鈕,指定要 加密的數據 文件。 圖 7 7.執行步驟 15,如圖 8 所示,將數據文件加入文件列表。如需加入多個數據文件,請重復步驟 14 和 15。此時文件加密選項會根據文件列表進行自動設置,如果您要進一步對其進行設置,例如,當您要加 第 8 頁 密新生成的數據文件(輸出文件)時,執行步驟 16 更改文件加密選項。注意:在執行步驟 16 前,請插上 狗。外殼工具會從狗里獲得狗的 ID 作為默認的加密種子。 步驟 15: 「增 單擊 加到文件列表」 按 鈕, 將要加密的數 據文件加入文件 列表。 步驟 16: 單擊 此處文本。 圖 8 8.在文本編輯框中已經包含「*.DBF;」 ,例如,為了加密受保護的程序在運行過程中生成的文本文件, 執行步驟 17,在文本編輯框中添加「*.TXT;」 。如果想要指定自己的加密種子,執行步驟 18,選中「指定 我自己的加密種子」復選框,並在文本編輯框中輸入自定義的加密種子。另外,為了提高安全性,2.0 版本 的外殼工具默認會使用 AES 演算法對數據文件進行加密,而以前的版本用的是私有演算法。如果要保持跟以前 版本的兼容性而使用私有演算法,可以不選中「使用 AES 演算法加密」復選框。執行步驟 20,返回「設置要 加密的數據文件」對話框,單擊 按鈕完成數據文件加密設置。 步驟 18:指定自己 的加密種子。 步驟 17:修改或添 加文件過濾器。 步驟 19:指定是否 使用 AES 演算法加密 步驟 20:點擊 定按鈕。 圖 9 9.完成有關 Notepad.exe 的所有設置後執行步驟 21,如圖 10 所示,將其加入加密中心,成為加密隊 列中的一個加密項。然後對 Calc.exe 重復步驟 1-21,如果需要關聯許可證文件,請修改「文件 ID」 的值,如圖 11 所示。使 Calc.exe 和 Notepad.exe 運行時訪問不同的許可證文件。 第 9 頁 步驟 21: 單擊 「加入加密 隊列」 單擊此按鈕,可 將選中的加密項 清除。 單擊此按鈕可 查看某個加密 項的所有設置 信息。 單擊此按 鈕,可清 除所有加 密項。 圖 10 將文件 ID 設 置為:20。 圖 11 9.可以將加密中心所有加密項的設置存成一個配置文件,以供下一次使用。執行步驟 22-24,如圖 12 所示。 第 10 頁 步驟 22: 單 擊此按鈕。 步驟 23: 單擊「存 儲配置文 件」 命令。 步驟 24:鍵入 配置文件名後, 單擊 「保存」按 鈕。 圖 12 10.執行步驟 25,如圖 13 所示,執行加密操作。 步驟 25: 單擊「加 密」 按鈕。 圖 13 11.加密過程中會出現如下圖所示的對話框。 第 11 頁 在加密過程中,單 擊「中止」按鈕可 中止加密操作。 圖 14 進程條指示加密正在進行。加密結束後會提示結果。如果加密成功,過 2 秒後,程序自動加密下 一個文件。如果加密失敗,會提示失敗原因,並給出解決措施或錯誤碼,關於錯誤碼的定義請下面的 保護時的錯誤 。錯誤信息會左右移動,以引起您的注意。至此,完成了對 Notepad.exe 和 Calc.exe 的保護。 保護時的錯誤 下表列出了保護應用程序和數據文件時可能產生的錯誤,對不不在下表中的錯誤代碼,請參見安 裝目錄下的 errcode-chn.txt。 錯誤碼 (十六進制) 194 SP_ERR_NOT_ENOUGH_MEMORY 沒有足夠的資源來保護應用程序。
⑷ 加密狗塑料外殼能拆開嗎
可以,加殼就是壓縮加密,解殼就是解壓,但是加殼解殼的不是一個文件,解殼的文件會單獨存儲,我倒是有一個加密壓縮文件和解密解壓文件的類。估計不如你所願,但能偽裝,先解壓到路徑,自動刪除壓縮包,打開程序,打開路徑一看,讓人誤認為是直接轉換成解壓的形式,關閉程序時自動壓縮成加密形式,做個後台程序自動刪除本程序,自身肯定不能對自身刪除。有種塑料外殼拼合起來不用螺絲該怎麼打開,解決辦法: 可以五金店裡去買一副塑料拆卸鉗。 1.一般的裡面有三把可以拆卸各種外殼拼合塑料產品的工具,很好用的。 2.也可以用扁口的螺絲刀撬開卡扣的地方,再打開。 3.一般這種的外面都會有可以按的地方,試著找到然後按按看。 如果以上方法未解決問題,請嘗試: 用外力打開,用磚頭砸等等,還不行的話就只能去買這個的地方看看了。 或者找到廠家,詢問如何打開。就薄片探測,用鉗子夾變形打開。
卡扣有插口,凸凹,掛勾、掛套方形,圓形等,可以先用一個諸如捲尺的有一定韌性的薄片東西順縫先探一下,試試吃力的地方在哪裡,哪裡就一定有卡扣,一般也是對稱的,對側還有一個扣。
總之這些種類的扣都是要有一定的變形才能打開,要用好巧勁,即變了形還不至於斷掉才好
開它並不用工具撬,先把中心的一隻固定螺釘拿下來後,把它圓背向上放在桌子上,再用手掌壓下去,壓變形後,掛扣就開了。
⑸ 外殼加密程序安裝後不用加密狗也可以運行
這個就說明你使用的加密狗和配套的外殼加密軟體有裂橋問題,正常的外殼粗羨加密工具是在沒有狗的時候無法使用加密後的軟體的。推薦你一個品牌的岩源拍加密狗,codisk加密狗。
⑹ 什麼是加密狗呢怎麼使用呢
加密狗 加密狗是由彩虹天地公司首創,後來發展成如今的一個軟體保護的通俗行業名詞,"加密狗"是一種插在計算機並行口上的軟硬體結合的加密產品(新型加密狗也有usb口的)。一般都有幾十或幾百位元組的非易失性存儲空間可供讀寫,現在較新的狗內部還包含了單片機。軟體開發者可以通過介面函數和軟體狗進行數據交換(即對軟體狗進行讀寫),來檢查軟體狗是否插在介面上;或者直接用軟體狗附帶的工具加密自己EXE文件(俗稱"包殼")。這樣,軟體開發者可以在軟體中設置多處軟體鎖,利用軟體狗做為鑰匙來打開這些鎖;如果沒插軟體狗或軟體狗不對應,軟體將不能正常執行。
加密狗通過在軟體執行過程中和加密狗交換數據來實現加密的.加密狗內置單片機電路(也稱CPU),使得加密狗具有判斷、分析的處理能力,增強了主動的反解密能力。這種加密產品稱它為"智能型"加密狗.加密狗內置的單片機里包含有專用於加密的演算法軟體,該軟體被寫入單片機後,就不能再被讀出。這樣,就保證了加密狗硬體不能被復制。同時,加密演算法是不可預知、不可逆的。加密演算法可以把一個數字或字元變換成一個整數,如DogConvert(1)=17345、DogConvert(A)=43565。
加密狗是為軟體開發商提供的一種智能型的軟體保護工具,它包含一個安裝在計算機並行口或 USB 口上的硬體,及一套適用於各種語言的介面軟體和工具軟體。加密狗基於硬體保護技術,其目的是通過對軟體與數據的保護防止知識產權被非法使用。
加密狗的工作原理:
加密狗通過在軟體執行過程中和加密狗交換數據來實現加密的.加密狗內置單片機電路(也稱CPU),使得加密狗具有判斷、分析的處理能力,增強了主動的反解密能力。這種加密產品稱它為"智能型"加密狗.加密狗內置的單片機里包含有專用於加密的演算法軟體,該軟體被寫入單片機後,就不能再被讀出。這樣,就保證了加密狗硬體不能被復制。同時,加密演算法是不可預知、不可逆的。加密演算法可以把一個數字或字元變換成一個整數,如DogConvert(1)=17345、DogConvert(A)=43565。下面,我們舉個例子說明單片機演算法的使用。 比如一段程序中有這樣一句:A=Fx(3)。程序要根據常量3來得到變數A的值。於是,我們就可以把原程序這樣改寫:A=Fx(DogConvert(1)-12342)。那麼原程序中就不會出現常量3,而取之以DogConvert(1)-12342。這樣,只有軟體編寫者才知道實際調用的常量是3。而如果沒有加密狗,DogConvert函數就不能返回正確結果,結果算式A=Fx(DogConvert(1)-12342)結果也肯定不會正確。這種使盜版用戶得不到軟體使用價值的加密方式,要比一發現非法使用就警告、中止的加密方式更溫和、更隱蔽、更令解密者難以琢磨。此外,加密狗還有讀寫函數可以用作對加密狗內部的存儲器的讀寫。於是我們可以把上算式中的12342也寫到狗的存儲器中去,令A的值完全取決於DogConvert()和DogRead()函數的結果,令解密難上加難。不過,一般說來,加密狗單片機的演算法難度要低於一些公開的加密演算法,如DES等,因為解密者在觸及加密狗的演算法之前要面對許多難關
[編輯本段]目前最新的硬體加密原理
隨著解密技術的發展,單片機加密狗由於其演算法簡單,存儲空間小,容易被硬復制等原因,正逐漸被市場所淘汰。以北京彩虹天地信息技術股份有限公司為首的國內加密狗廠商研發出穩定性更好、存儲空間更大(最大為64K)、有效防止硬克隆的第四代加密狗——「智能卡」加密狗以其獨創的「代碼移植」原理,已經被國內大型商業軟體開發商如金蝶、用友、CAXA、廣聯達、神機妙算、魯班……所採用。
以世界上第一款智能卡加密鎖——宏狗為例,簡單介紹一下「代碼移植」原理。
「代碼移植」加密原理為一種全新的、可信的軟體保護模型,工作原理為:軟體中部分代碼經過編譯,「移植」到加密鎖硬體內部,軟體中沒有該段代碼的副本。
在這套軟體保護方案中,PC端應用軟體的關鍵的代碼和數據「消失」了,被安全地移植到精銳IV型加密鎖的硬體中保護起來。在需要使用時,應用軟體可以通過功能調用引擎來指令精銳IV運行硬體中的關鍵代碼和數據並返回結果,從而依然可以完成整個軟體全部的功能。由於這些代碼和數據在PC端沒有副本存在,因此解密者無從猜測演算法或竊取數據,從而極大程度上保證了整個軟體系統的安全性。簡言之,精銳IV提供了一套可信的解決方案,從理論上保證軟體加密的安全。
加密狗技術的運用案例
1、廣聯達造價軟體
2、清華斯維爾造價軟體
3、神機妙算造價軟體
4、魯班造價軟體
使用加密狗進行加密的一些策略
現在的解密技術排除法律和道德因素,就從學術角度來說是門科學。它與加密技術一樣是相輔相成不斷提高。
以下就針對使用加密狗(加密鎖)進行硬體保護談談幾點心得:
針對於使用加密狗的解密有什麼方法?
1、硬體復制
復制硬體,即解密者復制Sentinel Superpro相同的加密鎖。由於加密鎖採用了彩虹公司專用的ASIC晶元技術,因此復制該加密鎖非常困難,且代價太大。
2、監聽
解密者利用並口監聽程序,進行解密,其工作機制是:
監聽程序,記錄應用程序對並口發的查詢串和加密鎖發回的響應串。當移去加密鎖時,如果程序再對並口發查詢串確認身份時,監聽程序返回所記錄的響應串。程序認為加密鎖仍然在並口上,是合法用戶繼續運行,應用程序也就被解密了。
3、 列印機共享器
將加密鎖插在列印機共享器上,多台計算機共同使用列印機共享器上的一把加密鎖。(後面簡述對抗策略)
4、 DEBUG
解密者DEBUG等反編譯程序,修改程序源代碼或跳過查詢比較。應用程序也就被解密了。
對於以上的幾種解密方法加密者可以考慮使用以下幾種加密策略:
1、針對上述監聽和DEBUG問題解密方法,本人推薦充分利用加密狗開發商的API函數調用的加密策略:
a、 針對並口監聽程序
1)對加密鎖進行演算法查詢
Ø 正確的查詢響應驗證
用戶生成大量查詢響應對,如200對。在程序運行過程中對激活的加密演算法單元隨機的發送在200對之中的一對「345AB56E」―――「63749128」。查詢串「345AB56E」,哪么演算法單元返回的下確的響應串應該是「63749128」,若是,則程序認為加密鎖在並口上,是合法用戶,繼續運行,反之終止程序。
Ø 隨機非激活演算法驗證
我們對非激活的加密鎖演算法單元發隨機生成的查詢串,如:「7AB2341」,非激活演算法單元只要是有查詢就會有響應串。因此返回響應串「7AB2341」,在程序中判斷響應串與查詢串是否相同,如果相同,則證明我們的加密鎖仍然在口上。繼續運行程序。
Ø 隨機激活演算法驗證
假設監聽程序了解了上面的機制。即對非激活的加密演算法我們發什麼查詢串則返回相同的響應串。哪么我也有對策。對激活的加密演算法單元發隨機生成的查詢串,如:「345AB56E」由於是激活演算法響應串肯定與查詢串肯定不等。所以假如返回響應串「7253ABCD」,在程序中判斷響應串與查詢串是否不同,如果不同,則證明我們的加密鎖仍然在並口上,繼續運行程序。
上面三種加密策略在程序同時使用,相符相承,相互補充。即使監聽程序記錄下來我們的部分查詢響應。
2) 分時查詢
用戶把查詢響應對分組,如120對分為4組。每30對一組。頭三個月使用第一組,第二個月三個月使用第二組以此類推,監聽程序就算記錄了頭三個月。第二個月三個月以後程序仍然無法使用。
也可以再生成100對「臨時委員」,每次運行隨意抽出1對與以上分組結合使用。使記錄程序在三個月內也無法記錄完全。程序也無法使用。
3) 隨機讀寫存儲單元
為了防監聽程序。我們的策略是:程序在啟動時,我們利用隨機函數隨機生成的一個數,假設是「98768964」。我們在指定的18#單元寫入這個數。哪么我們在程序運行中,每調用一個功能程序前讀取18#單元,數判定是否是我們寫入的數「98768964」。因為每次寫入的數是隨機生成的,所以監聽程序記錄不到當次啟動時寫入的隨機數,它返回的數肯定是一個不匹配的數。我們就可以就此判定是否是合法用戶。Sentinel Superpro加密鎖可以重復寫10萬次以上。也就是說每天寫三次也可以使用一百年。
2、 針對列印共享器的加密策略
為了防列印共享器。我們的策略是:程序在啟動時,我們利用隨機函數隨要生成的一個數,假設是「7762523A」。我們在指定的34#單元寫入這個數。哪么在程序運行中,每調用一個功能程序前讀取34#單元,以判定是否是我們寫入的數「7762523A」。以此判定是否是合法用戶。因為每次寫入的數隨機生成的,同時使用列印共享器的其他非法用戶的程序一進入也會寫入一個不同的隨機數。那麼第一個用戶的程序在校驗是否是第一個用戶寫入的數時,就會被認為是非法的用戶。所以在一個階段也只是一個程序使用。(例如RAINBOW公司開的Sentinel Superpro加密鎖可以重復10萬次以上。也就是說每天寫三次也就可以使用一百年。)
3、 針對DEBUG跟蹤的加密鎖的安全策略
1)分散法
針對DEBUG跟蹤。在調用每個重要功能模塊前,我們建議要對加密鎖進行查詢,校驗身份。如果只在程序開始部分校驗身份,DEBUG跟蹤程序部分可以輕易的跳過校驗部分,而一些不良用戶可以在驗證後可以將加密鎖拔下用在其它計算機。
2)延時法
針對某一具體查詢校驗,都有三步驟:
Ø 查詢得到響應串
Ø 比較響應串和查詢串是否匹配
Ø 執行相應的步驟
我們建議以上三個步驟要延時執行。最好鞀三步驟相互遠離些,甚至放到不同的子程序或函數中。例如:我們執行「查詢得到響應串」 後,相隔50執行「比較響應串和查詢串是否匹配」。假如程序需要調用一個函數。哪么我們就在這個函數里執行「執行相應的步驟」。這樣程序更難於被破解。
3)整體法
將響應串作為程序中數據使用。
例如:我們有返回值「87611123」,而我們程序需要「123」這個數。我們可以讓「87611123」減去「8761000」得到「123」。這樣以來任何對加密程序的修改都會使程序紊亂。
4)迷惑法
一般情況下我們的程序執行相應的驗證步驟。驗證是非法用戶就會退出。這樣很容易被發現代碼特徵。我們知道是非法用戶後繼續執行一些無用的操作使程序紊亂。以迷惑解密者。
以上為現如今軟體開發商使用硬體加密狗(加密鎖)進行軟體保護時可以使用的幾種切實可行的幾種加密策略。