開發商通過加密狗(加密鎖)開發包,設計加密方案,從而將軟件與硬件加密狗進行綁定,綁定后的軟件沒有正確的加密狗就無法運行。通過加密狗硬件的不可復制性,保證了軟件的不可復制性。開發商程序通過調用接口模塊對加密狗進行操作,加密狗響應該操作并通過接口模塊將相應數據返回給開發商程序。開發商程序可以對返回值進行判定并采取相應的動作。如果返回無效的響應,表明沒有正確的狗,開發商可以將應用程序終止運行。
金色盾牌軟件加密鎖把用戶定制(根據密碼系數變換密碼算法)密碼算法寫入加密鎖中,并以程序的形式對調用者進行身份驗證。
安全基礎一:金色盾牌加密鎖以一個動態變化隨機數的形式出現在用戶程序中,出現過的數據自動失效,下一個數據不可預知。破譯者不知道密鑰:key1,key2,key3,key4,無法隨機產生Random X,因而軟件狗不可用軟件模擬。
安全基礎二:加密者用讀(read)的方式訪問變量dogRandom,任何分析工具(DEBUG)都無法跟蹤此操作,從根本上截斷了跟蹤線索。
安全基礎三:金色盾牌加密鎖內設一體化的CPU和存儲器,破譯者無法仿制狗的硬件電路,也無法讀取狗中數據。
安全基礎四:密鑰和算法以用戶任意的自定義形式(如:key=a+b+c)融于用戶的大量程序中,破譯者要從二進制代碼中獲得密鑰和算法的原碼,其難度遠大于重新編制一個新的程序。