偽隨機(jī)序列及PLD實(shí)現(xiàn)在程序和系統(tǒng)加密中的應(yīng)用
發(fā)布時(shí)間:2007/9/11 0:00:00 訪問次數(shù):651
摘 要: 討論了用偽隨機(jī)序列實(shí)現(xiàn)程序加密保護(hù)及其可編程邏輯器件實(shí)現(xiàn)的原理、方法和具體操作,給出了在微機(jī)軟件和單片機(jī)/DSP系統(tǒng)中程序加密的實(shí)際運(yùn)用舉例。
關(guān)鍵詞: 加密技術(shù) 可編程邏輯器件 偽隨機(jī)序列 單片機(jī)系統(tǒng) DSP
可編程邏輯器件(PLD)經(jīng)歷了PAL、GAL、CPLD 和FPGA幾個(gè)發(fā)展階段。使用PLD具有設(shè)計(jì)靈活、調(diào)試方便、系統(tǒng)可靠性高等眾多優(yōu)點(diǎn),并有利于硬件設(shè)計(jì)的保護(hù),防止他人對電路的分析、仿照,使其成為科研實(shí)驗(yàn)、樣機(jī)試制和小批量產(chǎn)品的首選方案。
隨著計(jì)算機(jī)、單片機(jī)技術(shù)的發(fā)展和廣泛應(yīng)用,軟件加密成為知識產(chǎn)權(quán)保護(hù)的重要手段。目前微機(jī)軟件加密的方法可分為兩大類:軟加密和硬加密。軟加密主要有密碼方式、軟件自校驗(yàn)方式、鑰匙盤方式等多種。隨著軟加密的發(fā)展,解密軟件也大量出現(xiàn)。硬加密由于具有加密強(qiáng)度大、可靠性高等特點(diǎn),已廣泛用于微機(jī)軟件保護(hù)。硬加密將硬件和軟件相結(jié)合來實(shí)現(xiàn)軟件的加密,軟件在運(yùn)行時(shí)需與硬件正確交換數(shù)據(jù),否則程序不運(yùn)行,或不能執(zhí)行主要功能,典型的產(chǎn)品有:插在計(jì)算機(jī)總線上的加密卡,接在計(jì)算機(jī)并口或USB口的軟件狗(加密鎖)、微狗等。軟件狗大多用存儲密碼數(shù)據(jù),電路簡單,成本低,但用SOFT-ICE等軟件進(jìn)行軟件狗的解密和復(fù)制并不很困難。在這種情況下,軟件狗內(nèi)部增加了一個(gè)單片機(jī)稱為微狗,通過對數(shù)據(jù)的處理來提高軟件的加密強(qiáng)度;少數(shù)專業(yè)的硬加密生產(chǎn)商則采用獨(dú)自的ASIC芯片。加密卡的原理與軟件狗和微狗的相似,不同的是通過總線操作,使得設(shè)計(jì)更靈活、功能更強(qiáng),只是安裝不方便。
隨著某一加密產(chǎn)品加密操作方式的公開,其解密也就為期不遠(yuǎn)。新出現(xiàn)的解密軟件能模擬絕大部分軟件與加密狗間的數(shù)據(jù)交換過程,從而達(dá)到解密;國產(chǎn)的加密卡和微狗,大多外用存儲配置數(shù)據(jù)和用戶密碼,獲取這些數(shù)據(jù)就可能解密、甚至復(fù)制微狗,因此加密方法的獨(dú)特性、手法的反常規(guī)性在加密應(yīng)用中非常重要。單片機(jī)/DSP系統(tǒng)的控制及外圍電路都相對簡單,對軟件的跟蹤比較容易分析硬件的設(shè)計(jì)思想和實(shí)現(xiàn)功能,而目前對其軟件的保護(hù)并不受重視,并且單片機(jī)/DSP系統(tǒng)沒有現(xiàn)成的加密產(chǎn)品,設(shè)計(jì)者應(yīng)結(jié)合系統(tǒng)軟、硬件的要求靈活決定。我們利用PLD器件本身的加密保護(hù)特性,由其產(chǎn)生的偽隨機(jī)序列實(shí)現(xiàn)單片機(jī)/DSP系統(tǒng)和計(jì)算機(jī)應(yīng)用程序的加密,具有簡單方便,解密難度大的特點(diǎn),同樣可用PLD器件實(shí)現(xiàn)更復(fù)雜的加密方法如 EDS。
1 硬件加密的PLD實(shí)現(xiàn)原理
硬件加密必須綜合考慮加密方法的可行性、有效性、硬件復(fù)雜度等因素,由邏輯電路產(chǎn)生大量密碼的一種簡單有效的方法是使用線性反饋移位寄存器,其產(chǎn)生的偽隨機(jī)數(shù)據(jù)已廣泛用于數(shù)據(jù)通信中的加擾、擴(kuò)頻、跳頻和數(shù)據(jù)加密。圖1所示是具有防跟蹤、產(chǎn)生個(gè)N 位偽隨機(jī)數(shù)據(jù)的加密電路原理框圖,密碼生成所用觸發(fā)器和門電路少,并且密碼是加電后動態(tài)產(chǎn)生的,不同的預(yù)置產(chǎn)生的數(shù)據(jù)不同,因此密碼的強(qiáng)度、隱蔽性優(yōu)于加密狗和微狗(卡)。
N位移位寄存器產(chǎn)生的偽隨機(jī)碼作為讀取的密碼或輸入數(shù)據(jù)解密的密鑰,在移位時(shí)鐘的作用下,可輸出個(gè)N位的有效密碼或密鑰。對某一具體電路,移位寄存器初值不同時(shí),這個(gè)隨機(jī)數(shù)有種排序,可預(yù)置偽隨機(jī)數(shù)產(chǎn)生器的原理電路如圖2所示。要使移位寄存器產(chǎn)生一確定的值,首先置其初值,然后置移位計(jì)數(shù)器初值并允許時(shí)鐘電路產(chǎn)生移位時(shí)鐘;當(dāng)移
摘 要: 討論了用偽隨機(jī)序列實(shí)現(xiàn)程序加密保護(hù)及其可編程邏輯器件實(shí)現(xiàn)的原理、方法和具體操作,給出了在微機(jī)軟件和單片機(jī)/DSP系統(tǒng)中程序加密的實(shí)際運(yùn)用舉例。
關(guān)鍵詞: 加密技術(shù) 可編程邏輯器件 偽隨機(jī)序列 單片機(jī)系統(tǒng) DSP
可編程邏輯器件(PLD)經(jīng)歷了PAL、GAL、CPLD 和FPGA幾個(gè)發(fā)展階段。使用PLD具有設(shè)計(jì)靈活、調(diào)試方便、系統(tǒng)可靠性高等眾多優(yōu)點(diǎn),并有利于硬件設(shè)計(jì)的保護(hù),防止他人對電路的分析、仿照,使其成為科研實(shí)驗(yàn)、樣機(jī)試制和小批量產(chǎn)品的首選方案。
隨著計(jì)算機(jī)、單片機(jī)技術(shù)的發(fā)展和廣泛應(yīng)用,軟件加密成為知識產(chǎn)權(quán)保護(hù)的重要手段。目前微機(jī)軟件加密的方法可分為兩大類:軟加密和硬加密。軟加密主要有密碼方式、軟件自校驗(yàn)方式、鑰匙盤方式等多種。隨著軟加密的發(fā)展,解密軟件也大量出現(xiàn)。硬加密由于具有加密強(qiáng)度大、可靠性高等特點(diǎn),已廣泛用于微機(jī)軟件保護(hù)。硬加密將硬件和軟件相結(jié)合來實(shí)現(xiàn)軟件的加密,軟件在運(yùn)行時(shí)需與硬件正確交換數(shù)據(jù),否則程序不運(yùn)行,或不能執(zhí)行主要功能,典型的產(chǎn)品有:插在計(jì)算機(jī)總線上的加密卡,接在計(jì)算機(jī)并口或USB口的軟件狗(加密鎖)、微狗等。軟件狗大多用存儲密碼數(shù)據(jù),電路簡單,成本低,但用SOFT-ICE等軟件進(jìn)行軟件狗的解密和復(fù)制并不很困難。在這種情況下,軟件狗內(nèi)部增加了一個(gè)單片機(jī)稱為微狗,通過對數(shù)據(jù)的處理來提高軟件的加密強(qiáng)度;少數(shù)專業(yè)的硬加密生產(chǎn)商則采用獨(dú)自的ASIC芯片。加密卡的原理與軟件狗和微狗的相似,不同的是通過總線操作,使得設(shè)計(jì)更靈活、功能更強(qiáng),只是安裝不方便。
隨著某一加密產(chǎn)品加密操作方式的公開,其解密也就為期不遠(yuǎn)。新出現(xiàn)的解密軟件能模擬絕大部分軟件與加密狗間的數(shù)據(jù)交換過程,從而達(dá)到解密;國產(chǎn)的加密卡和微狗,大多外用存儲配置數(shù)據(jù)和用戶密碼,獲取這些數(shù)據(jù)就可能解密、甚至復(fù)制微狗,因此加密方法的獨(dú)特性、手法的反常規(guī)性在加密應(yīng)用中非常重要。單片機(jī)/DSP系統(tǒng)的控制及外圍電路都相對簡單,對軟件的跟蹤比較容易分析硬件的設(shè)計(jì)思想和實(shí)現(xiàn)功能,而目前對其軟件的保護(hù)并不受重視,并且單片機(jī)/DSP系統(tǒng)沒有現(xiàn)成的加密產(chǎn)品,設(shè)計(jì)者應(yīng)結(jié)合系統(tǒng)軟、硬件的要求靈活決定。我們利用PLD器件本身的加密保護(hù)特性,由其產(chǎn)生的偽隨機(jī)序列實(shí)現(xiàn)單片機(jī)/DSP系統(tǒng)和計(jì)算機(jī)應(yīng)用程序的加密,具有簡單方便,解密難度大的特點(diǎn),同樣可用PLD器件實(shí)現(xiàn)更復(fù)雜的加密方法如 EDS。
1 硬件加密的PLD實(shí)現(xiàn)原理
硬件加密必須綜合考慮加密方法的可行性、有效性、硬件復(fù)雜度等因素,由邏輯電路產(chǎn)生大量密碼的一種簡單有效的方法是使用線性反饋移位寄存器,其產(chǎn)生的偽隨機(jī)數(shù)據(jù)已廣泛用于數(shù)據(jù)通信中的加擾、擴(kuò)頻、跳頻和數(shù)據(jù)加密。圖1所示是具有防跟蹤、產(chǎn)生個(gè)N 位偽隨機(jī)數(shù)據(jù)的加密電路原理框圖,密碼生成所用觸發(fā)器和門電路少,并且密碼是加電后動態(tài)產(chǎn)生的,不同的預(yù)置產(chǎn)生的數(shù)據(jù)不同,因此密碼的強(qiáng)度、隱蔽性優(yōu)于加密狗和微狗(卡)。
N位移位寄存器產(chǎn)生的偽隨機(jī)碼作為讀取的密碼或輸入數(shù)據(jù)解密的密鑰,在移位時(shí)鐘的作用下,可輸出個(gè)N位的有效密碼或密鑰。對某一具體電路,移位寄存器初值不同時(shí),這個(gè)隨機(jī)數(shù)有種排序,可預(yù)置偽隨機(jī)數(shù)產(chǎn)生器的原理電路如圖2所示。要使移位寄存器產(chǎn)生一確定的值,首先置其初值,然后置移位計(jì)數(shù)器初值并允許時(shí)鐘電路產(chǎn)生移位時(shí)鐘;當(dāng)移
熱門點(diǎn)擊
- SDH中E1接口數(shù)字分接復(fù)用器VHDL設(shè)計(jì)及
- 系統(tǒng)內(nèi)的PLD
- EDA仿真技術(shù)在電子線路分析中的應(yīng)用
- 分布式運(yùn)算單元的原理及其實(shí)現(xiàn)方法
- 偽隨機(jī)序列及PLD實(shí)現(xiàn)在程序和系統(tǒng)加密中的應(yīng)
- EL7564C的雙電壓FPGA電源解決方案
推薦技術(shù)資料
- 聲道前級設(shè)計(jì)特點(diǎn)
- 與通常的Hi-Fi前級不同,EP9307-CRZ這臺分... [詳細(xì)]
- 超低功耗角度位置傳感器參數(shù)技術(shù)
- 四路輸出 DC/DC 降壓電源
- 降壓變換器和升降壓變換器優(yōu)特點(diǎn)
- 業(yè)界首創(chuàng)可在線編程電源模塊 m
- 可編程門陣列 (FPGA)智能 電源解決方案
- 高效先進(jìn)封裝工藝
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究