郭婷婷, 婁 巖, 劉 佳, 王艷華
(中國醫(yī)科大學(xué) 公共基礎(chǔ)學(xué)院, 遼寧 沈陽 110122)
基于Rossler變換的圖像置亂算法
郭婷婷, 婁 巖, 劉 佳, 王艷華
(中國醫(yī)科大學(xué) 公共基礎(chǔ)學(xué)院, 遼寧 沈陽 110122)
針對大多數(shù)圖像置亂算法置亂速度不理想、置亂后圖像直方圖不變等問題,可以通過引入三維Rossler混沌變換解決以上研究難題. 運用Rossler混沌變換產(chǎn)生Rossler隨機數(shù)序列構(gòu)建三角矩陣. 利用三角矩陣相乘非奇異矩陣得到的還是三角矩陣,其矩陣的逆也是三角矩陣的原理來實現(xiàn)置亂. 運用Matlab軟件對典型的Arnold算法、抽樣置亂算法與本算法在置亂速度、置亂主觀效果方面進(jìn)行了對比實驗. 通過對實驗結(jié)果的定性和定量分析得出,本算法的置亂速度和置亂效果優(yōu)于其他兩個算法. 利用Rossler混沌變換置亂可以對圖像置亂效果提供安全性,同時該算法實現(xiàn)簡單、計算量小,可以快速達(dá)到理想置亂的效果.
圖像置亂;Rossler變換;置亂度分析
由于圖像信息具有形象生動的特征,因而被人類廣為利用,圖像也成為人類表達(dá)信息的重要手段之一[1].但隨著Internet技術(shù)的飛速發(fā)展,信息的廣泛傳播帶來了信息安全的隱患問題,因此,信息的安全越來越受到全社會的重視,由此而發(fā)展起來的數(shù)字圖像信息隱藏技術(shù)被廣為應(yīng)用,數(shù)字圖像置亂是數(shù)字信息隱藏中常用的一項技術(shù).
數(shù)字圖像置亂是將一幅圖像經(jīng)過變換,使其成為面目全非的、無意義的混亂圖像[2].目前,數(shù)字圖像置亂的算法有兩類,第一類是改變圖像像素位置的置亂算法,典型算法如:Arnold變換[3]、仿射變換、幻方變換[4]、Fibonacci變換[5]、面包師變換[6]等;第二類是改變圖像像素值的置亂算法,典型算法如:Gray碼變換[7]、異或變換、位平面變換等.改變圖像像素位置的置亂算法主要用于方陣圖像,通用性不好,其計算量較大、置亂速度不理想、置亂效率低(如:置亂次數(shù)越高越混亂)、安全性不高(如:置亂后直方圖不變);改變圖像像素值的置亂算法一般具有周期性,這樣就給攻擊者提供了攻擊機會,算法經(jīng)常涉及數(shù)學(xué)運算而導(dǎo)致效率較低,而且改變圖像相關(guān)的統(tǒng)計特征也具有一定的難度.
針對以上不足,提出了一種基于Rossler變換的置亂算法,該算法具有實現(xiàn)簡單、計算量小的特點.Rossler變換屬于一種三維混沌變換,因此利用Rossler置亂可以對圖像置亂效果提供安全性和通用性保證.
首先對Rossler變換方法進(jìn)行簡單討論,然后詳細(xì)描述了基于Rossler變換的置亂算法的思想以及實現(xiàn)過程,最后用實驗對算法進(jìn)行定性和定量的置亂度分析,以證明本算法通用性強、安全性高、置亂速度理想等特點.
Rossler方程是1976年Rossler在研究具有中間產(chǎn)物的化學(xué)反應(yīng)問題時,通過適當(dāng)?shù)臉?biāo)度變化所得到的一個非線性常微分方程組[8].Rossler系統(tǒng)是非線性動力學(xué)中最著名的方程之一.其動力學(xué)系統(tǒng)模型如下:
(1)
其中,a、b、c都是正參數(shù),x、y、z是控制變量.Rossler系統(tǒng)呈現(xiàn)出豐富的動力學(xué)行為,因此特別容易產(chǎn)生混沌現(xiàn)象.經(jīng)常用到的混沌吸引子研究參數(shù)有以下幾組:a=0.2,b=0.2,c=5.7;a=0.2,b=0.2,c=4.6;a=0.38,b=0.2,c=5.7;a=0.1,b=0.1,c=14.當(dāng)參數(shù)a逐漸增大時,Rossler系統(tǒng)的混沌可能更加復(fù)雜[9].
在式(1)中,當(dāng)a=0.2,b=0.2,c=5.7時系統(tǒng)是混沌的,通過Matlab仿真計算得到系統(tǒng)中有一個正的Lyapunov指數(shù),這也驗證了式(1)是混沌的.因此,可以利用Rossler混沌系統(tǒng)對數(shù)字圖像進(jìn)行置亂.
與其他低維混沌系統(tǒng)不同,Rossler混沌系統(tǒng)的特點:(1)復(fù)雜的系統(tǒng)結(jié)構(gòu),由混沌方程產(chǎn)生的實數(shù)序列更加難以預(yù)測;(2)高維混沌系統(tǒng)掩蓋了混沌子序列的分布特性,改變了混沌系統(tǒng)的動力學(xué)行為,更加有效的抵抗模型攻擊;(3)對初始值更加敏感,初始值基本上是無精度的,密鑰空間更加大于低維系統(tǒng)[10].
2.1 算法分析
提出的是基于Rossler變換的圖像置亂算法,算法思想是利用三角矩陣相乘非奇異矩陣得到的還是三角矩陣,其逆也是三角矩陣的原理來實現(xiàn)置亂.
設(shè)三角矩陣A為
(2)
假設(shè)圖像矩陣為P,P′ 矩陣是經(jīng)過式(2)變換一次后得到的置亂圖像.因為變換矩陣A是有周期的,因此矩陣A在Zn(設(shè)Zn∈{ 0,1,…,n})上可逆.綜上所述,當(dāng)復(fù)原圖像的時候,只需用式(2)的逆變換, 即P=A-1P′(modN). 矩陣A-1的計算可以選擇初等變換的方法.但對于上(下) 三角矩陣,高斯消元求其逆矩陣較為簡單, 這將大大簡化程序設(shè)計.
對于數(shù)字圖像P,當(dāng)進(jìn)行以上變換k次得到的圖像Pk,其圖像矩陣Pk=AkP(modN) ,由于上(下) 三角矩陣的乘積仍為上(下) 三角矩陣, 且Ak與A具有相同的類型,因此變換k次和變換1 次的置亂效果應(yīng)當(dāng)是大致相同的[11].
2.2 正Rossler變換置亂算法
以一幅M×N的圖像為例,介紹基于Rossler變換的圖像置亂算法的過程.置亂過程在利用Rossler變換的同時,采取了四重密鑰,增加了置亂的安全性.
正Rossler變換置亂算法主要步驟如下:
Step 1 讀入待置亂的圖像Image,設(shè)圖像大小為M×N,確定第1個密鑰k=ucycle(置亂次數(shù)).建立臨時矩陣Btemp,矩陣大小為圖像大小.
Step 2 利用Rossler變換產(chǎn)生Rossler隨機數(shù)序列.該隨機數(shù)序列是由3部分初始值決定,圖像的大小M和N、以及輸入的初始值密鑰k.
(1)選取Rossler方程的初始值a=b=0.2,c=5.7(此時Rossler系統(tǒng)為混沌狀態(tài),且作為第2個密鑰),時間序列間隔h=0.000 1(第3個密鑰).
(2)Rossler混沌序列初始化.對于Rossler方程中的x,y,z三個數(shù)組變量的初始值初始化.
(3)依次進(jìn)行迭代,共進(jìn)行M×N次迭代運算,產(chǎn)生Rossler混沌序列(x,y,z).
Step 3 將Rossler混沌序列大小恢復(fù)到M×N的二維向量,取二維向量的上三角矩陣A(第4個密鑰),并對圖像進(jìn)行Rossler正變換置亂.記作P′=AP.此處,P′是Rossler變換1次之后得到的置亂圖像.
Step 4 當(dāng)k不等于ucycle(即循環(huán)未結(jié)束)時,轉(zhuǎn)到步驟Step 3繼續(xù)操作,直到迭代k次,得到最終置亂后的圖像Fig.
2.3 逆Rossler變換置亂算法
逆Rossler變換置亂算法的主要步驟如下:
Step 1 讀入置亂得到的圖像Fig,置亂相同的密鑰k=ucycle作為第1個密鑰,確定圖像大小為M×N.
Step 2 利用Rossler變換產(chǎn)生Rossler隨機數(shù)序列(x,y,z).與正變換相同,Rossler方程的初始值a=b=0.2,c=5.7作為第2個密鑰,時間序列間隔h=0.000 1作為第3個密鑰.
Step 3 將Rossler混沌序列大小恢復(fù)到M×N的二維向量,取二維向量的上三角矩陣A(置亂相同的第4個密鑰),求解矩陣A的逆矩陣A-1.計算P=A-1P′.此處,P是Rossler逆變換1次之后得到的圖像.
Step 4 循環(huán)轉(zhuǎn)到第3步,當(dāng)k等于ucycle時,迭代完成,逆置亂算法結(jié)束,得到最終圖像Image.
3.1 置亂效果對比實驗
實驗選用了Arnold、抽樣置亂算法與基于Rossler變換的置亂算法進(jìn)行了置亂效果作為定性的主觀對比.
圖1為用Arnold置亂算法對大小為512×512的Lena圖像進(jìn)行置亂的效果圖.
圖1 Arnold算法置亂512×512 的Lena圖像效果圖
圖2為用抽樣置亂算法對大小為512×512的Lena圖像進(jìn)行置亂的效果圖.
圖2 抽樣置亂算法置亂512×512 的Lena圖像效果圖
在圖3中選擇圖像大小為512×512的Lena圖,三重置亂密鑰分別為置亂變換次數(shù)ucycle=2,Rossler方程的初始值a=b=0.2,c=5.7和時間序列間隔h=0.000 1.其中,圖3中分別為:原始Lena圖,正Rossler變換2次效果圖,正Rossler變換80次效果圖.
圖3 基于Rossler變換置亂算法置亂512×512的Lena圖像效果圖
圖4 基于Rossler變換置亂和逆置亂效果圖
從圖1、圖2中對比可知,Arnold、抽樣置亂經(jīng)多次迭代得到的置亂圖像仍然可以看出原圖像的紋理,視覺效果不理想;而圖3是用基于Rossler變換的置亂算法置亂2次得到的結(jié)果,視覺效果良好,Rossler變換k次和變換2次的置亂效果大致相同.
圖4是圖像經(jīng)過正Rossler變換后,進(jìn)行逆變換恢復(fù)置亂圖像,得到原始圖像,并進(jìn)行了錯誤逆置亂實驗.由圖4實驗結(jié)果可知,經(jīng)過逆置亂恢復(fù)后的圖像與原始圖像相比沒有任何像素誤差.
3.2 置亂測試速度對比實驗
實驗選用了Arnold、抽樣置亂算法與基于Rossler變換置亂算法進(jìn)行了置亂速度作為定量的客觀對比.計算機CPU為Intel 奔騰雙核 G630,內(nèi)存為4 GB,WIN7操作系統(tǒng)時,當(dāng)達(dá)到相同置亂度,即主觀的視覺效果如圖4所示,若根據(jù)文獻(xiàn)[12-13]的置亂度評價方法,客觀的置亂度都穩(wěn)定在0.8時,分別測試對同樣大小為256×256的圖像,用不同置亂方法的置亂速度(詳見表1).
表1 方法不同和圖像大小相同的置亂速度對比實驗
從表1及實驗分析得知:當(dāng)圖像大小相同時,Arnold、抽樣置亂算法經(jīng)多次置亂達(dá)到理想效果所需的時間均大于5s,而基于Rossler變換置亂算法所需時間小于1s,綜上所述,基于Rossler變換的圖像置亂算法在置亂速度上優(yōu)于已有算法.
3.3 置亂效果評價
圖像的置亂程度可以通過置亂度來定量評價,根據(jù)文獻(xiàn)[13]的連續(xù)區(qū)域圖像置亂度評價方法,其數(shù)字圖像的置亂程度為
(3)
圖5a是用式(3) 對Rossler變換置亂算法進(jìn)行置亂度評價的曲線圖,圖5b、圖5c分別是對Arnold、抽樣置亂算法進(jìn)行置亂度評價的曲線圖.
圖5 按文獻(xiàn)[13]的置亂度評價曲線圖
圖5b和圖5c對比可知:用Arnold和抽樣迭代256次,置亂度在0.2~0.8之間有大幅度變化,說明Arnold和抽樣置亂程度時好時壞,即具有明顯的周期性,安全性較差.而由圖5a 可知:用基于Rossler變換置亂方法置亂256次,基本上置亂度都保持不變,說明本算法更穩(wěn)定,而且能快速達(dá)到置亂的效果.
提出的基于Rossler變換圖像置亂的新算法,采用Rossler方程產(chǎn)生混沌序列,取其三角矩陣相乘非奇異的矩陣得到的還是三角矩陣,其逆也是三角矩陣的原理來實現(xiàn)置亂.該方法既快速提高了置亂速度,又避免了周期性恢復(fù)的安全問題.算法分析和實驗結(jié)果的數(shù)據(jù)都證明了,基于Rossler變換的圖像置亂算法可以用最少的置亂次數(shù)達(dá)到良好的視覺效果.另外,定量的分析也證明本算法的優(yōu)越性.
[1] 趙玉青.基于改進(jìn)Chen混沌系統(tǒng)的圖像加密算法[J].小型微型計算機系統(tǒng),2014(9):2162-2166.
[2] 司銀女,康寶生.基于改進(jìn)的Arnold變換的數(shù)字圖像置亂[J].計算機技術(shù)與發(fā)展,2008,18(2):74-76.
[3] 宋莉莉,楊帆,潘國峰. Arnold 變換與 Gray 碼變換相融合的雙置亂算法研究[J].計算機應(yīng)用與軟件,2016,33(3):304-307.
[4] GüNAYDIN M, SIERRA G, TOWNSEND P K.Exceptional supergravity theories and the magic square[J].Physics Letters B,1983,133(1/2):72-76.
[5] 孫勁光,汪潔,孟祥福.改進(jìn)的Fibonacci雙置亂圖像加密算法[J].計算機科學(xué),2012,39(11):249-253.
[6] 張鑫,徐光憲,付曉.基于面包師變換的抗剪切擴頻水印算法研究[J].計算機應(yīng)用研究,2012,29(6):2246-2248.
[7] 何冰,張瑩.基于Gray變換的圖像置亂改進(jìn)新算法[J].計算機與數(shù)字工程,2011,39(3):121-124.
[8] R?SSLER O E.An equation for continuous chaos[J].Physics Letters A,1976,57(5):397-398.
[9] 李莉.基于被擾動的Rossler系統(tǒng)的二次加密算法[J].中國科技博覽,2015(18):264-265.
[10] 江平,張定會,張雅奇.基于Henon映射和Rossler混沌映射的數(shù)字圖像加密[J].數(shù)據(jù)通信,2012(4):15-18.
[11] 陳燕梅,張勝元.基于一類隨機矩陣的數(shù)字圖像置亂新方法[J].江南大學(xué)學(xué)報(自然科學(xué)版),2006, 5(1):6-9.
[12] 梁婷,李敏,何玉杰,等.基于Arnold變換的改進(jìn)圖像加密算法研究[J].計算機工程與應(yīng)用,2013,49(11):204-207.
[13] 黃健,柏森.一種有效的圖像置亂程度衡量方法[J].計算機工程與應(yīng)用,2009,45(30):200-203.
Image scrambling algorithm based on Rossler transform
GUOTingting,LOUYan,LIUJia,WANGYanhua
(School of Fundamental Sciences, China Medical University, Shenyang 110122, China)
For most of image scrambling algorithms, there exist some problems, such as scrambling speed is not ideal and the histogram after scrambling is invariant. As a potential solution, an algorithm based on Rossler chaotic transformation is considered to overcome the above-mentioned problems. We used Rossler chaotic transformation to generate Rossler random number sequences which can construct the triangular matrix. When the triangular matrix multiply the non singular matrix, the result and the inverse of the matrix are also triangular matrix. According to this theory, we implemented the scrambling algorithm. By Matlab simulation and experimental analysis, we compared Arnold algorithm with sampling scrambling algorithm and Rossler algorithm in scrambling speed and scrambling quality. Through qualitative and quantitative analysis of the experimental results, the algorithm scrambling is better than the others. Rossler chaotic transformation can improve the security of the algorithm and has the advantages of simple realization and minor calculation, so it can achieve the desired results quickly.
image scrambling;Rossler transform;scrambling degree analysis
2016-09-20 基金項目:遼寧省教育科學(xué)“十二五”規(guī)劃項目(JG14DB451) 作者簡介:郭婷婷(1988-),女,山東濟南人,中國醫(yī)科大學(xué)助教.E-mail:tingtoting@qq.com 婁巖(1961-),男,遼寧沈陽人,中國醫(yī)科大學(xué)教授.
1000-1735(2017)01-0041-06
10.11679/lsxblk2017010041
TP309.7
A