基于DSP的混沌數字圖像加密與硬件實現
摘要 介紹了在DSP基礎上,實現數字圖像的混沌加密及硬件實現方法。根據離散化和數字化處理技術,對三維Lorenz混沌系統作離散化處理,用C語言和DSP技術產生三維Lorenz混沌迭代序列,分別對數字圖像的紅、綠、藍三基色信號進行混沌加密和解密。基于芯片型號為TMS32 0VC5509A的DSP開發平臺,以bmp格式的灰度圖像為例,設計了Lorenz混沌序列對數字圖像進行加密與解密算法,給出了DSP硬件實現結果表明,改善了安全性、提高了速度、滿足了實時性要求。
關鍵詞 Lorenz系統;圖像加密;DSP;混沌加密;硬件實現
隨著計算機及通信技術的發展,圖像處理及應用愈加廣泛?,F代DSP技術的發展和應用為實現圖像處理奠定了基礎。高性能的DSP處理器作為圖像處理首選的核心器件,并能通過軟件編程實現各種處理算法,提高系統處理能力和擴展系統功能。
近來混沌的同步控制理論日趨成熟,為混沌在通信中的應用提供了理論基礎。混沌信號的非周期性連續寬帶頻譜,類似噪聲的特性。另外,混沌信號對初始條件的高度敏感,即使兩個完全相同的混沌系統從近乎相同的初始條件開始演化,其軌道將很快變得互不相關,這使得混沌信號具有長期不可預測性和抗截獲能力。而且具有多個正李氏指數的超混沌系統,及復雜的運動軌跡,這使得混沌信號具有較高的復雜度。同時混沌系統本身具有確定性,由非線性系統的方程、參數和初始條件所決定,因此,混沌信號易于產生復制?;煦缧盘柕碾[蔽性、不可預測性、高復雜度和易于實現等特性都適合于保密通信。與其他加密方法不同的是,混沌加密是一種動態加密方法,由于其處理速度和密鑰長度無關,因此這種方法的計算效率高、可用于實時信號處理和靜態加密場合。且用此方法加密的信息很難破譯,具有很高的保密度。即使在連續攝動存在的情況下,混沌同步效應過程也是穩定的。特別是在混沌信號上加上一個較小的信息源,當混合信號傳到接收器上后,由接收器上參數相同的混沌電路捕捉其中主要的混沌分量,可以較好地恢復輸送的信息源。
目前對混沌加密的實現還局限于計算機仿真,有關硬件實現的報道也很少。而用于混沌加密的系統,通常是一維或二維,如Logistic映射等,這類系統的方程形式簡單且易于實現,但存在密鑰空間小、抵御窮舉攻擊能力差、容易被相空間重構方法進行混沌系統識別等問題。針對上述問題本文提出了用三維Lorenz混沌系統和DSP技術實現混沌數字圖像加密及其硬件實現的新方法。根據離散化和數字化處理技術,對三維Lorenz系統作離散化處理后,能產生混沌迭代序列。在設計圖像紅、綠、藍三基色信號混沌加密與解密算法的基礎上,利用芯片型號為TMS320VC5509A的DSP開發平臺,進行了8×8的bmp格式灰度圖像加密與解密的硬件實驗研究,并給出了實驗結果,其系統框圖如圖1所示。
1 Lorenz系統離散化及DSP硬件實現
Lorenz系統作為經典三維混沌系統,生成的混沌序列有其自身的特點。與一維和二維等低維混沌系統相比,具有更為復雜的混沌動力學行為,產生的混沌序列更不可預測。系統的3個初始值和3個參數都可以作為生成加密混沌序列的種子密鑰,產生的密鑰空間大于一維和二維的混沌系統。如果對系統輸出的混沌序列進行處理,還可以采用單變量或多變量組合的加密混沌序列,使得序列密碼的設計和應用更加靈活方便。
由于Lorenz系統是三維連續混沌系統,而DSP只能處理數字信號或離散信號,所以要先對連續混沌系統作離散化處理。對混沌系統離散化通常有3種方法。Euler算法、改進Euler算法和Runge—Kutta算法。這3種離散化的方法各有優缺點,一些較簡單的一維和二維混沌系統,常使用精度較高的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基本系統由獨立的電源系統供電,而硬件平臺的其他器件共用另一套電源供電系統。為了降低系統功耗,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的地址、數據、指令總線完全分開,避開了總線使用上的瓶頸。
評論