<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關 閉

          新聞中心

          EEPW首頁 > 安全與國防 > 設計應用 > 基于DSP的混沌數字圖像加密與硬件設計

          基于DSP的混沌數字圖像加密與硬件設計

          作者: 時間:2011-04-18 來源:網絡 收藏

            摘要 介紹了在基礎上,實現數字圖像的方法。根據離散化和數字化處理技術,對三維Lorenz混沌系統(tǒng)作離散化處理,用C語言和技術產生三維Lorenz混沌迭代序列,分別對數字圖像的紅、綠、藍三基色信號進行和解密。基于芯片型號為TMS32 0VC5509A的開發(fā)平臺,以bmp格式的灰度圖像為例,設計了Lorenz混沌序列對數字圖像進行加密與解密算法,給出了DSP結果表明,改善了安全性、提高了速度、滿足了實時性要求。

            隨著計算機及通信技術的發(fā)展,圖像處理及應用愈加廣泛?,F代DSP技術的發(fā)展和應用為實現圖像處理奠定了基礎。高性能的DSP處理器作為圖像處理首選的核心器件,并能通過軟件編程實現各種處理算法,提高系統(tǒng)處理能力和擴展系統(tǒng)功能。

            近來混沌的同步控制理論日趨成熟,為混沌在通信中的應用提供了理論基礎?;煦缧盘柕姆侵芷谛赃B續(xù)寬帶頻譜,類似噪聲的特性。另外,混沌信號對初始條件的高度敏感,即使兩個完全相同的混沌系統(tǒng)從近乎相同的初始條件開始演化,其軌道將很快變得互不相關,這使得混沌信號具有長期不可預測性和抗截獲能力。而且具有多個正李氏指數的超混沌系統(tǒng),及復雜的運動軌跡,這使得混沌信號具有較高的復雜度。同時混沌系統(tǒng)本身具有確定性,由非線性系統(tǒng)的方程、參數和初始條件所決定,因此,混沌信號易于產生復制。混沌信號的隱蔽性、不可預測性、高復雜度和易于實現等特性都適合于保密通信。與其他加密方法不同的是,是一種動態(tài)加密方法,由于其處理速度和密鑰長度無關,因此這種方法的計算效率高、可用于實時信號處理和靜態(tài)加密場合。且用此方法加密的信息很難破譯,具有很高的保密度。即使在連續(xù)攝動存在的情況下,混沌同步效應過程也是穩(wěn)定的。特別是在混沌信號上加上一個較小的信息源,當混合信號傳到接收器上后,由接收器上參數相同的混沌電路捕捉其中主要的混沌分量,可以較好地恢復輸送的信息源。

            目前對混沌加密的實現還局限于計算機仿真,有關的報道也很少。而用于混沌加密的系統(tǒng),通常是一維或二維,如Logistic映射等,這類系統(tǒng)的方程形式簡單且易于實現,但存在密鑰空間小、抵御窮舉攻擊能力差、容易被相空間重構方法進行混沌系統(tǒng)識別等問題。針對上述問題本文提出了用三維Lorenz混沌系統(tǒng)和DSP技術實現混沌數字及其硬件實現的新方法。根據離散化和數字化處理技術,對三維作離散化處理后,能產生混沌迭代序列。在設計圖像紅、綠、藍三基色信號混沌加密與解密算法的基礎上,利用芯片型號為TMS320VC5509A的DSP開發(fā)平臺,進行了8×8的bmp格式灰度與解密的硬件實驗研究,并給出了實驗結果,其系統(tǒng)框圖如圖1所示。

          a.JPG



          1 離散化及DSP硬件實現

            作為經典三維混沌系統(tǒng),生成的混沌序列有其自身的特點。與一維和二維等低維混沌系統(tǒng)相比,具有更為復雜的混沌動力學行為,產生的混沌序列更不可預測。系統(tǒng)的3個初始值和3個參數都可以作為生成加密混沌序列的種子密鑰,產生的密鑰空間大于一維和二維的混沌系統(tǒng)。如果對系統(tǒng)輸出的混沌序列進行處理,還可以采用單變量或多變量組合的加密混沌序列,使得序列密碼的設計和應用更加靈活方便。

            由于Lorenz系統(tǒng)是三維連續(xù)混沌系統(tǒng),而DSP只能處理數字信號或離散信號,所以要先對連續(xù)混沌系統(tǒng)作離散化處理。對混沌系統(tǒng)離散化通常有3種方法。Euler算法、改進Euler算法和Runge—Kutta算法。這3種離散化的方法各有優(yōu)缺點,一些較簡單的一維和二維混沌系統(tǒng),常使用精度較高的Runge—Kutta算法,由于受到硬件資源的限制,一般用Euler算法在型號為TMS320VC5509A的DSP平臺上產生Lorenz混沌序列。

            在選擇存儲器時應從以下方面考慮:首先圖像壓縮算法中間數據量大,要求處理器的片上內存盡可能大,盡量避免對外部存儲器讀寫操作。TMS320VC5509A的片上存儲器包括32 k位×16位DARAM,96 k位×16位SARAM,共128 k位的存儲空間。其中DARAM為雙地址,在每個周期內可以對其進行2次操作(2次讀,2次寫,1次讀和1次寫),這樣增加片上存儲器的利用率。其次,VC5509A片上資源豐富,包括I2C總線,3個Mc-BSPs。VC5509A采用144引腳LQFP封裝,便于安裝、調試;VC5509A功耗小,工作在200 MHz主頻下,功耗僅100 mW,適合嵌入式應用。

            DSP基本系統(tǒng)由獨立的電源系統(tǒng)供電,而硬件平臺的其他器件共用另一套電源供電系統(tǒng)。為了降低系統(tǒng)功耗,DSP一般采用低電壓供電,并且采用I/O和CPU內核分開供電方式。TMS320VC5509A不同的工作頻率要求不同的核電壓,200 MHz為1.6 V,144 MHz為1.35V,108 MHz為1.2 V。DSP的I/O電壓為3.3 V。

            高速DSP芯片主要特性如下:

            (1)低功耗設計,比上一代C54XX器件功耗低約30%。處理速度快,雙核結構,處理速度400MI·s-1。采用超長指令結構(VLIW),單指令字長32位。外部時鐘40 MHz,內部時鐘20 MHz,所有指令均單周期完成,處理器內部采用高度并行機制,可同時進行多達11項各類操作。

            (2)兩套相同的外部數據、地址總線,支持局部存儲器和全局共享存儲器。

            (3)6個高速并行通信口,采用異步傳輸方式,最大速率可達20 Mb·s-1。通過令牌傳遞可靈活實現數據雙向傳輸,這種結構適合DM642之間的互連。

            (4)6個DMA通道,每個通道的最大速率可達20 Mb·s-1。DMA內部總線與CPU的地址、數據、指令總線完全分開,避開了總線使用上的瓶頸。

            綜上所述,在選用DSP芯片時,應考慮性能是否滿足快速判讀算法的要求,即選擇那些指令周期短、數據吞吐率高、通信能力強、指令集功能完備的處理器,同時還要兼顧功耗和開發(fā)支持環(huán)境等因素。本設計采用TI公司的TMS320VC5509A芯片,選擇TMS320VC5509A作為主處理器芯片。

            Lorenz混沌連續(xù)系統(tǒng)的無量綱狀態(tài)方程為

          f.jpg


            根據Euler算法,將Lorenz方程離散化,用Matlab仿真驗證產生多渦卷,利用DSP技術實現離散混沌系統(tǒng)。

            由式(1)可得其離散化和變量比例壓縮后的方程為

          g.jpg


            式(2)中的T為離散化的取樣時間;k為變量比例壓縮因子;參數a=10、b=30、c=8/3。依據式(2)得仿真結果如圖2所示。在DSP上用C語言編程實現其迭代序列,經D/A轉換輸出后,可以在示波器上看到Lorenz混沌吸引子的相圖如圖3所示。

          b.JPG

          2 基于Lorenz系統(tǒng)的數字

            用驅動一響應同步對DSP中存儲的數字圖像進行混沌加密。考慮n維自治動力系統(tǒng)du/dt=f(u),把它分解為兩個子系統(tǒng)v和w:dv/dt=g(v,w);dw/dt=g(v,w)。其中,v=(u1,u2,…,um),w=(um+1,um+2,…,un)按照加的形式復制1個子系統(tǒng)w’,即dw'/dt=g(v,w’),則構造了1個新的系統(tǒng)dv/dt=g(v,w),dw/dt=g(v,w),dw'/dt=g(v,w’),其中,系統(tǒng)(v,w)為驅動系統(tǒng);(v,w’)為響應系統(tǒng)。當響應系統(tǒng)的條件李亞譜諾夫指數都為負值時,可實現混沌系統(tǒng)的同步。對于驅動一響應同步,并不是任何變量都可以用作驅動變量來實現混沌同步。顯然,同步的要求是條件李氏指數均為負、或者可用李氏穩(wěn)定性理論來證明其同步。同步的理論證明需要構造李氏函數,在一般情況下,李氏函數的構造并不容易。此外,條件李氏指數的計算也比較困難。為判斷混沌是否同步,在工程實用方面,可通過相圖來判斷是否達到同步,即在同步情況下,同步相圖為對角線,同步誤差為0,從實際應用的角度,可通過仿真來確定用哪些變量驅動可同步,哪些不可同步。對于Lorenz系統(tǒng),分別用X,Y,Z作為驅動變量來實現驅動-響應同步,通過Matlab仿真以后,發(fā)現用X,Y作為驅動變量時相圖均如圖4所示,達到同步時,同步相圖為對角線,誤差趨于0。而用Z作為驅動變量時,其相圖如圖5所示,同步相圖不是對角線,誤差不為0,不能實現同步。也就是說,對于Lorenz系統(tǒng),用X,Y都可實現驅動-響應同步,用Z實現不了,在本文中用Y來驅動實現驅動-響應同步,其同步原理圖,如圖6所示。

          c.JPG

            


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();