回覆列表
  • 1 # 我等著

    "加密狗"是一種插在計算機並行口上的軟硬體結合的加密產品。一般都有幾十或幾百位元組的非易失性儲存空間可供讀寫,現在較新的狗內部還包含了微控制器。軟體開發者可以透過介面函式和軟體狗進行資料交換(即對軟體狗進行讀寫),來檢查軟體狗是否插在並行口上;或者直接用軟體狗附帶的工具加密自己EXE檔案(俗稱"包殼")。這樣,軟體開發者可以在軟體中設定多處軟體鎖,利用軟體狗做為鑰匙來開啟這些鎖;如果沒插軟體狗或軟體狗不對應,軟體將不能正常執行。 加密狗透過在軟體執行過程中和加密狗交換資料來實現加密的.加密狗內建微控制器電路(也稱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等,因為解密者在觸及加密狗的演算法之前要面對許多難關

  • 中秋節和大豐收的關聯?
  • 七月雪怎麼養?