王圓妹,李 濤
(長江大學(xué)電子信息學(xué)院,湖北 荊州 434023)
互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,為信息在網(wǎng)上的快速傳播開辟了新道路。利用互聯(lián)網(wǎng)可以使信息迅速地在網(wǎng)上發(fā)布和傳輸,但同時(shí)也給不法分子利用網(wǎng)絡(luò)非法獲取未授權(quán)數(shù)據(jù)提供了渠道,因此信息安全已成當(dāng)前學(xué)術(shù)研究的熱點(diǎn)。當(dāng)前對圖像信息的保護(hù)主要有數(shù)字水印和圖像加密兩種方法。圖像置亂[1]是一種重要的圖像加密方法,也是信息隱藏[2]的基礎(chǔ),可進(jìn)一步作為數(shù)字圖像隱藏、數(shù)字水印植入、數(shù)字計(jì)算恢復(fù)方法和數(shù)字圖像分存的預(yù)處理和后續(xù)處理過程。數(shù)字圖像置亂加密是一種重要的數(shù)據(jù)加密技術(shù),并可作為有效的安全增強(qiáng)手段。
常見的圖像置亂算法主要有基于Arnold變換、Fibonacci變換、Hilbert變換、幻方變換等,主要通過改變像素點(diǎn)位置和改變像素點(diǎn)灰度值這兩種方法達(dá)到置亂的效果。改變像素點(diǎn)位置的方法一般用于矩陣變換,通過消除像素點(diǎn)間的相似性和相關(guān)性來改變像素點(diǎn)的位置。由于Arnold變換具有一定的混沌性,把它用到圖像加密處理可以獲得較好的置亂效果。但由于Arnold變換的周期性和參數(shù)較少的原因,在數(shù)據(jù)加密時(shí)容易受到外部的攻擊和破壞。Kwok H S等人[3]從位置變化的角度進(jìn)行分析,若計(jì)算圖像置亂前后的位置移動的距離,位置移動的距離越大,置亂效果越好。本文在Arnold變換基礎(chǔ)上提出一種高效率的基于分塊的圖像置亂算法,并通過大量的實(shí)驗(yàn)驗(yàn)證了此方法的有效性。該方法置亂速度快,迭代次數(shù)少,執(zhí)行效率高,置亂效果好,提高了保密信息的安全性。
一幅大小為N×N的圖像經(jīng)過數(shù)字化處理后的得到的是一個(gè)二維離散的數(shù)字矩陣,矩陣中每個(gè)元素代表圖像信息,(x,y)為原始的像素坐標(biāo),(x',y')表示變換之后的像素位置,并且 (x,y)∈ (0,1,…,N - 1);mod 表示求余運(yùn)算,目的是保證圖像的數(shù)據(jù)陣進(jìn)行變換后仍然落在在原先的圖像區(qū)域內(nèi),因此二維的Arnold變換[4-5]可表示為當(dāng)a=1,b=1時(shí)則為標(biāo)準(zhǔn)的Arnold變換,公式為
一幅圖像經(jīng)過Arnold變換后,圖像像素點(diǎn)的位置在空域進(jìn)行重新排列,通過改變像素點(diǎn)坐標(biāo)而改變圖像灰度值的分布,這樣圖像像素點(diǎn)的分布變的雜亂無序,實(shí)現(xiàn)了對圖像進(jìn)行置亂加密。圖像通過Arnold變換雖然可以使圖像變得混亂,但是這種混亂程度是有限度的,并不是隨著迭代次數(shù)增多,置亂圖像就越來越“亂”,往往存在最佳的迭代次數(shù),置亂程度最好,置亂效果最佳。置亂次數(shù)與置亂程度的關(guān)系如圖1 所示[6-9]。
圖1 置亂次數(shù)和置亂程度的關(guān)系
由于 Arnold 變換具有周期性[10-11],即當(dāng)?shù)螖?shù)達(dá)到一定值后,所有像素點(diǎn)又都回到初始位置,存在等式(xn,yn)=(x0,y0),置亂圖像和原始圖像一模一樣??梢岳眠@一特性將置亂圖像還原為原始圖像,具體實(shí)現(xiàn)方法為:發(fā)送方將變換周期L和傳輸圖像的置亂次數(shù)n作為密鑰包含的內(nèi)容,接收方利用Arnold變換具有周期性的特點(diǎn),對傳輸圖像再作L-n次置亂,即可得到原始圖像。恢復(fù)的具體過程如圖2所示。
圖2 利用周期性還原圖像
上述基于Arnold變換的置亂算法雖然計(jì)算簡單,很容易實(shí)現(xiàn),也有較好的置亂效果,但是當(dāng)圖片較大時(shí),Arnold變換的周期很大,如果利用周期性恢復(fù)原圖像,往往需要很長時(shí)間,這樣恢復(fù)的效率將迅速降低。文中提出的基于Arnold變換的分塊圖像置亂算法,縮短了置亂變換的周期,提高了算法的執(zhí)行效率。
假設(shè)一幅圖像的大小為N×N(N>32時(shí)),置亂周期都比較大。這時(shí)可以將N×N大小的圖像劃分成若干個(gè)大小為a×a的圖像塊,共有
圖像塊;然后對每個(gè)圖像塊中的像素點(diǎn)進(jìn)行置亂,相應(yīng)得到混亂狀態(tài)的圖像塊,再對這些圖像塊進(jìn)行置亂,不斷打亂圖像塊的排列順序,最后完成了整幅圖像的置亂,其過程如圖3所示。
對高效率的分塊置亂算法仍然可以借用基于Arnold變換置亂算法的周期性恢復(fù)方法進(jìn)行對圖像的恢復(fù)。若L1表示圖像塊進(jìn)行Arnold變換的置亂周期,L2表示圖像塊內(nèi)像素點(diǎn)進(jìn)行Arnold變換的置亂周期。假設(shè)圖像塊的進(jìn)行Arnold變換次數(shù)為p,圖像塊內(nèi)像素點(diǎn)的進(jìn)行Arnold變換迭數(shù)為q,則只需要再對圖像塊作L1-p次Arnold變換,對圖像塊內(nèi)像素點(diǎn)作L2-q次Arnold變換,就可以恢復(fù)出整幅圖像了。
圖3 高效率分塊置亂算法流程圖
對一幅256×256的圖像,采用不同的分塊方法得到的置亂效果如圖4所示。
圖4 不同分塊方法的置亂結(jié)果
利用本文算法的周期性,只需改變2次Arnold變換的迭代次數(shù)就可以使置亂圖像還原,其結(jié)果如圖5所示。
圖5 置亂圖像的恢復(fù)
從置亂結(jié)果可以看出,圖像塊越小,置亂圖像的灰度值分布越均勻。由于圖像塊具有“聚合”的特點(diǎn),它會使像素點(diǎn)集中在一起,影響置亂的均勻度。利用此算法時(shí)還有一個(gè)關(guān)鍵問題是要選取合適的圖像塊數(shù),即如何對圖像進(jìn)行分塊。在上述實(shí)驗(yàn)中對一幅大小為256×256的圖像,其置亂周期為192,完成這一周期,每個(gè)像素點(diǎn)都要移動192次,共需要移動256×256×192次。若采用本文提出的置亂算法,把256×256圖片分為32×32塊,每塊有8×8個(gè)像素點(diǎn),完成這一周期,每個(gè)塊要移動30次,因此,利用本文置亂算法完成對圖像置亂,所有像素點(diǎn)的總移動次數(shù)是256×256×30次,僅是原來置亂算法的15/96,計(jì)算效率提高將近85%。
圖像置亂的目的是為了圖像得到安全加密,不僅要阻止攻擊者恢復(fù)原圖像,竊取圖像信息,還要阻止攻擊者對圖像破環(huán),文中主要從抗剪切及噪聲等方面對置亂算法的抗攻擊性進(jìn)行分析。
1)抗剪切攻擊能力
利用本文提出高效的分塊圖像置亂方法對圖像進(jìn)行剪切再恢復(fù),其結(jié)果如圖6所示。
圖6 分塊圖像置亂算法的抗剪切能力
從上述圖像可以看出,恢復(fù)圖像的清晰度與剪切的大小有關(guān),與剪切的位置無關(guān)。當(dāng)攻擊者剪切部分面積越大,圖像越不清晰,甚至?xí)?dǎo)致圖像信息完全被破壞,接收方得不到完整的圖像信息。由于圖像塊的“聚合”特性,利用本文的算法對遭到剪切攻擊后的置亂圖像進(jìn)行恢復(fù)圖像,恢復(fù)出的圖像還存在著一些噪聲,為此抗剪切的能力還有待進(jìn)一步提高。
2)抗噪聲攻擊能力
圖片在實(shí)際傳輸過程中,往往會有各種噪聲干擾,信道的傳輸環(huán)境不可能完全呈現(xiàn)理想狀態(tài)。實(shí)驗(yàn)中對置亂后圖像加不同類型的噪聲,然后用逆變換方法還原加噪的置亂圖像,得到相應(yīng)的結(jié)果如圖7所示。
圖7 對置亂圖像加不同噪聲及恢復(fù)
從圖7可以,看出置亂圖像加噪聲后恢復(fù)出的圖像都比較清晰。還可以采用一種評價(jià)圖像的客觀標(biāo)準(zhǔn)峰值信噪比(PSNR)來衡量圖像質(zhì)量,分別計(jì)算恢復(fù)圖像和原始圖像的PSNR,具體如表1所示。
表1 恢復(fù)圖像與原始圖像的PSNR
從圖4~圖7的視覺效果及表1的數(shù)據(jù)可看出,計(jì)算出的PSNR值都比較大,這表明文中基于分塊的置亂算法具有很好的抗噪性能力。
本文提出了一種高效率的分塊的圖像置亂方法。與常用的基于Arnold變換的置亂算法相比,該算法具有計(jì)算量小、運(yùn)行速度快、效率高等優(yōu)點(diǎn)。由于圖像塊具有聚合的特點(diǎn),本文的算法在對抗剪切能力分析時(shí),還原的圖像還具有一定的噪聲。因此,在提高效率的同時(shí)如何增強(qiáng)本算法的穩(wěn)健性是下一步重點(diǎn)研究內(nèi)容之一。
[1]顧成喜.一種改進(jìn)的數(shù)字圖像置亂方法[J].計(jì)算機(jī)仿真,2011,28(1):261-264.
[2]郎永祥,秦拯.應(yīng)用于實(shí)時(shí)通信版權(quán)保護(hù)的BTC圖像水印技術(shù)[J].電視技術(shù),2011,35(17):12-14.
[3]KWOK H S,TANG W K S.A fast image encryption system based on chaotic maps with finite precision representation[J].Chaos,Solitons& Fractals,2007,32(4):1518-1529.
[4]KINGSTON A,SVALBE I.Generalised finite radon transform for N ×N images[J].Image and Vision Computing,2007,25(10):1620-1630.
[5]陳善學(xué),姚小鳳,周淑賢.一種Arnold變換的改進(jìn)方法[J].電視技術(shù),2011,35(17):33-35.
[6]邱炳城,姚仰新,陳銀冬.用小波變換和混沌映射實(shí)現(xiàn)圖像置亂[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(11):102-103.
[7]鄧紹江,張岱固,濮忠良.一種基于混沌的圖像置亂算法[J].計(jì)算機(jī)科學(xué),2008,35(8):238-240.
[8]陳燕梅,張勝元.基于交叉熵的數(shù)字圖像置亂程度評價(jià)方法[J].中國圖象圖形學(xué)報(bào),2007,12(6):997-1001.
[9]王遠(yuǎn)志,張歌凌,張健,等.分布均勻性的圖像置亂衡量方法[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(34):156-158.
[10]KWOK H S,TANG W K S.A fast image encryption system based on chaotic maps with finite precision represention[J].Chaos,Solitons &Fractals,2007,32(4):1518-1529.
[11]HUN Chenhe.Parallel image encryption algorithm based on discrete chaotic map[J].Chaos,Solitions & Fractals,2007,54(3):158-159.