新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > SmartLock并口單片機(jī)軟件狗加密技術(shù)

SmartLock并口單片機(jī)軟件狗加密技術(shù)

作者: 時(shí)間:2009-04-09 來(lái)源:網(wǎng)絡(luò) 收藏

4 的使用方法

  用戶只需以函數(shù)調(diào)用的方式調(diào)用系統(tǒng)中的用戶接口模塊,完成對(duì)。這樣便在用戶軟件和加密軟件之間建立了數(shù)據(jù)聯(lián)系,隱式地檢查合法軟件狗的存在。加密軟件將自動(dòng)對(duì)調(diào)試軟件檢測(cè)和處理,用戶不需管理。

  另一個(gè)更為可靠的使用方式是用戶定制加密軟件。系統(tǒng)將用戶待加密軟件中的某些算法完全移植到軟件狗中去,再提供相應(yīng)的用戶接口模塊。這一方式下用戶軟件將受到最大限度的保護(hù)。

5

  傳統(tǒng)的的指導(dǎo)思想是:在軟件系統(tǒng)中加入一種特殊的信息,這種信息既是加密后的軟件系統(tǒng)在正常運(yùn)行時(shí)必須引用的,又是用戶無(wú)法自行復(fù)制的。于是,加密后該軟件系統(tǒng)的運(yùn)行完全依賴于售給用戶的原信息載體。這一載體在加密中又被稱為密鑰。

  本加密系統(tǒng)使用的是指將待加密軟件的某些算法、程序段、重要的運(yùn)算過(guò)程改造成程序放在中執(zhí)行。由于單片機(jī)的程序ROM是解密者不可讀的,這樣,這段代碼就被完全地保護(hù)起來(lái)了,解密者將無(wú)法接觸到這段代碼和數(shù)據(jù)。通過(guò)接口函數(shù),軟件狗可代替用戶軟件系統(tǒng)執(zhí)行一些簡(jiǎn)單的運(yùn)算功能,以實(shí)現(xiàn)。這一技術(shù)實(shí)際上是改造了傳統(tǒng)的加密指導(dǎo)思想,它把原軟件系統(tǒng)中的一部分信息取出來(lái),封裝到解密者不可復(fù)制的軟件狗中。

  按傳統(tǒng)加密思想加密后的軟件系統(tǒng)中,軟件部分實(shí)際上仍然包含有原軟件系統(tǒng)正常運(yùn)行時(shí)所需要的所有信息(指令算法和數(shù)據(jù))。在經(jīng)過(guò)代碼移植技術(shù)加密的軟件系統(tǒng),系統(tǒng)的軟件部分已不完整,解密者即使歷盡千辛萬(wàn)苦把軟件分析透徹了,軟件系統(tǒng)的正常運(yùn)行還是離不開(kāi)軟件狗的支持。

  系統(tǒng)中使用的新穎技術(shù)主要有以下兩點(diǎn),它們有力地保證了軟件狗的抗分析、反跟蹤性能。

  (1)特殊的通信協(xié)議

  脈沖形式的握手信號(hào),可有效對(duì)抗各種跟蹤調(diào)試工具及軟件。由圖2軟件狗的數(shù)據(jù)接收時(shí)序可知,本通信協(xié)議中,微機(jī)向單片機(jī)傳送數(shù)據(jù)時(shí)是使用窄脈沖信號(hào)作為握手信號(hào),這樣微機(jī)的CPU必須不間斷地查詢軟件狗的PR信號(hào)。而解密者在調(diào)試跟蹤本軟件時(shí)必然會(huì)因調(diào)試狀態(tài)下軟件運(yùn)行時(shí)斷時(shí)續(xù)而收不到握手信號(hào),使數(shù)據(jù)傳輸過(guò)程出錯(cuò)。軟件將無(wú)法正常工作。同時(shí),反跟蹤模塊也可由此輕易查知調(diào)試環(huán)境的存在而采取相應(yīng)的對(duì)策。

  通過(guò)脈寬調(diào)制信號(hào)從軟件狗向微機(jī)傳送數(shù)據(jù)是一種全新的微機(jī)打印口數(shù)據(jù)傳輸方法。由于它與通常的數(shù)字信號(hào)相差很大,所以這種形式的數(shù)據(jù)具有很強(qiáng)的反動(dòng)態(tài)跟蹤能力。這樣既解決了標(biāo)準(zhǔn)反向傳輸信道窄的問(wèn)題,又可有效對(duì)抗各種調(diào)試工具軟件及端口信號(hào)分析儀。除非解密者完全了解它的工作機(jī)理,否則根本無(wú)法知道軟件狗在干什么。

  (2)代碼移植技術(shù)

  該技術(shù)將待加密軟件與加密系統(tǒng)緊密配合,將需要保護(hù)的軟件完全封裝在黑盒中。

  實(shí)際使用時(shí),SmartLock軟件狗系統(tǒng)還可以進(jìn)行更靈活的設(shè)計(jì)以達(dá)到更強(qiáng)的加密效果。例如:將的數(shù)據(jù)線與89C2051單片機(jī)的P1口全部對(duì)接,同時(shí)將8根數(shù)據(jù)線全部通過(guò)鍺二極管并接成單片機(jī)電源。通信過(guò)程中,將其中的5根作為數(shù)據(jù)傳輸線,3根作為電源傳輸線;而且每根數(shù)據(jù)端口線的作用可以進(jìn)行動(dòng)態(tài)再分配。這種方法可以讓端口分析儀幾乎失去作用,抗分析性極強(qiáng)。

  SmartLock軟件狗可以輕易設(shè)計(jì)成一系列狗,在實(shí)際應(yīng)用中效果良好。




上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉