福建船政交通職業學院 朱 婧
隨著計算機信息網絡技術和圖形圖像處理技術的高速發展,網絡技術和圖形圖像技術的高度集合,已經成為互聯網傳播中不可或缺的手段之一,也正是它們的不斷發展使得人們之間的通信愈來愈便捷。而隨之而來的弊端也日益突出,圖像信息合成、圖像信息篡改等情況也頻頻發生,如何在當今信息技術高速發展的社會,能讓網絡技術和圖形圖像技術更好的具有保密性、安全性,這個問題就成為近些年來信息安全技術領域里的熱點。本文就是基于一維混沌理論對圖形圖像進行加密技術的研究與分析,具有一定的研究意義。
引言:混沌理論是非線性運動系統中一種很特別的方式,在自然界和社會科學界的各個領域中都似乎可以看見它的身影。它對一些初始值、密鑰大小和隨機的偏好卻有著很強的敏感性,所以這些參數的變化也就會對圖形圖像的加密、解密產生不同的變化。現在的多媒體圖形圖像越來越多樣化,不再像傳統的圖形圖像一樣單調規則化,它開始變得多元化,信息存儲量大,安全性變高,這些傳統的加密方式都無法滿足它的需求。因此,在這樣的環境下,混沌算法開始推廣于多媒體信息的加密和解密過程中,它的運動特點符合現代多媒體圖形圖像的發展趨勢,它在多媒體信息隱藏的實例也引起了很多研究者的關注,使用它對多媒體加密技術也得到了迅速的發展。
目前主流的混沌系統主要分兩類:一種是低維混沌系統,另一種是高維混沌系統。低維混沌系統如一維混沌系統,它則是通過一個初值變量值和混沌參數進行加密解密,它的算法例如有Logistic、Sine、Tent映射等,這種的算法結構和混沌軌跡相對簡單。本文也是通過對一維混沌系統中的Logistic算法理論為依據,對一張1024*760圖片為例進行研究,分析它通過初始值和參數如何對圖像進行加密解密的,分析它對于一些參數的變化又會產生出怎樣的敏感變化。
在古代,無論是在中國還是西方,混沌都表示宇宙形成之前的元氣(無序狀態)。如三國時期曹植的《七啟》中有“夫太極之初,混沌未分”。古希臘和巴比倫對混沌一詞也有類似的意義,例如將混沌描述為“在秩序的宇宙之前就已存在的無秩序、無定形的物質”。以后,混沌就表示完全無序或徹底混亂的意思(劉秉正,彭建華.非線性動力學[M].北京:高等教育出版社,2005)。
研究對多媒體圖形圖像的加密解密技術,是目前現代計算機網絡安全技術的一部分。混沌技術是物理動學中一種非線性的運動形式,在自然界、社會科學界甚至是生物學界都能看見它的影子。這是因為它的運動軌跡是一種表面上無特點的,實則有很多的有規則的運動。所以根據混沌的特點,人們目前在圖形圖像中最常都會引入混沌理論,它也是擴散加密思想的一個分支。科學家們希望通過結合它的一些特性,對圖形圖像起到一個很好的保護作用。混沌理論不僅可以將加密對象映射成為非線性,也會對密鑰的變化敏感,產生不同的結果。其中Logistic、Sine、Tent等算法就是一維混沌算法的典型代表。本文則以一維混沌理論中的Logistic算法為代表,通過一張1024*760通過對其初始值、參數等進行變化來分析這種算法在加密和解密圖片時它的變化,來了解一維混沌理論在多媒體圖片信息安全方面的深層研究。
一維混沌理論中的Logistic算法可以說是在混沌理論中一個從數學角度上來說結構相對簡單的算法。很多年前就有不少的科學家研究過它和應用它。事實證明,這種算法雖然結構相對簡單,但是絲毫不影響它在信息安全中的作用。所以,這些年Logistic算法還是在不少的領域都得到了應用。一維混沌Logistic算法具有混沌參數u和xn取值區間,并且這三種映射的混沌參數u和xn取值區間相同。而其他的一維混沌系統盡管混沌參數u和xn取值不相同,但是都可以通過變換公式,使其相同(王光義,袁方.級聯混沌及其動力學特性研究[J].物理學報,2013,62(2):020506-10)。
Logistic、Sine、Tent系統表達式如下:

其中本文所選取的一維Logistic算法的是公式(1)。在這個公式里,u作為這個公式中的一個參數,這個參數影響了Logistic算法的混沌狀態,而x也是有取值范圍的,而如果超出這個范圍,最后的值將越來越趨于一個值。所以,從這個公式中,我們不難看出Logistic算法具有以下幾個特點:
(1)初始值敏感性。xn在(1)公式中的作用是舉足輕重的。它的變化會導致整個公式的結果發生重大的變化。對初始值的敏感就是混沌理論的顯著特征之一。只要初始值發生微小的變化,都會影響整個混沌的運動軌跡。
(2)隨機性。而xn是隨機的,只要在混沌區間內,它都可以取值。混沌系統運動表面上看表現出很強的隨機性,是一種不受控制的運動,實質上混沌軌跡是由確定公式決定的,產生的混沌序列是一種偽隨機的(王鳳英.基于混沌理論的圖像加密技術研究[M].TN393.08,U.D.C.64孫燮華.圖像加密算法與實踐——基于C#語言實現[M].北京:科學出版社,2013)。
(3)確定性。u和初xn決定了xn+1,也就是混沌狀態。
所以,由此我們不難看出混沌算法的隨機性、確定性和初始值的敏感性,都使得混沌理論在多媒體圖形圖像加密方面的應用中隱藏著巨大的發展方向,這也應該是我們日后密碼研究的方向。
一維Logistic算法是一維離散混沌系統,具有運算速度快的特點,通過方程反復迭代可以產生較好的混沌序列。而初始值x0和混沌系統參數u對這個公式影響很大,也就是說產生的混沌序列值對初始狀態和混沌系統參數極其敏感。其中參數u介于(0,4],xn介于(0,1)。
對一維Logistic映射進行公式變換,可以變形得到:

當u =3時,不動點失穩,將要出現2周期態;
當u =3.4494897 時,2周期態失穩,將要出現4周期態;
當u =3.544090 時,4周期態失穩,將要出現8周期態;
當u =3.5699456 時,8周期態失穩,將要出現16周期態;
這種當控制參數變化到接近某個臨界值而使系統的動力學性質發生性質變化的現象稱為分岔,一維Logistic映射如上述這種依次出現周期加倍的現象就是倍周期分岔。我們可以借助分岔圖:以自變量x0為縱坐標,以混沌系統參數u為橫坐標,來研究系統的狀態演化規律。一維Logistic映射的分岔圖如圖1-1所示。

圖1-1 Logistic分岔圖
當參數u達到極限值,即u =3.5699456 時,混沌系統的穩態解周期為∞。也就意味著當u ∈(3.5699456,4)時,Logistic映射進入一種隨機分布的狀態,即進入混沌狀態。當參數u不斷增加值,系統也會不斷的呈周期性分岔進入混沌;而當u = 4時,成為滿混沌狀態。在實際應用時為了更好的體現混沌運動狀態,u的取值范圍一般會從(3.5699456,4)取值。
數字圖像是目前最流行的多媒體形式之一,在政治、經濟、國防、教育等方面均有廣泛應用。對于某些特殊領域,如軍事、商業和醫療,數字圖像還有較高的保密要求。圖像加密的思想就是通過一組可逆的數學變換把圖像偽裝成偽隨機性的亂碼,使未授權者不能理解它的真實意義,以實現圖像保護的目的(Guo Jiansheng,Zhang Cong-e,Jin Chenhui.Attack with Know Image to a Symmetric Image Encryption Scheme.Systems Engineering and Electronics,2007,29(3):341-345)。基于混沌系統的圖像加密技術是最近這些年才發展起來的,但是混沌在圖像加密中所表現出來的優勢使混沌圖像加密算法迅速發展。混沌圖像加密技術就是把原始圖像作為明文對它進行加密,先將圖像按照某種編碼方式轉化為二進制數據流,再對圖像數據流利用由混沌系統生成的混沌序列進行加密。國內外學者結合已有的其它保密技術已經提出了許多基于混沌系統的圖像加密算法(Tiegang Gao, Zengqiang Chen.A new image encryption algorithm based onhyper-chaos.Physics Letters A,2008,372(4):394-400;Shubo Liu,Jing Sun,Zhengquan Xu.An Improved Image Encryption Algorithm based on Chaotic System.JOURNAL OF COMPUTERS,2009,4(11):1091-1099;K W Wong,B S H Kwok,W S Law.A fast image encryption scheme based on chatic standard map.Phys.Lett.A,2008,372:2645-2652;Tiegang Gao,Zengqiang Chen.Image encryption based on a new total shuf fl ing algorithm.Chaos,Solitions & Fractals.2008,38(1):213-220)。為了展示研究分析,我們設計選取以Logistic算法為例,介紹混沌算法在引進圖形圖像中是如何完成加密和解密的,在這個過程中又有哪些特點。
自混沌算法應用到多媒體加密技術中來之后,很多的混沌算法得到了人們的關注,這些混沌算法眾多,可以按照各種方式對其進行劃分,例如加密圖像的類型、加密方法的維數等。而本文所闡述的一維Logistic算法就是混沌映射算法中的一種。
為研究分析一維Logistic映射偽隨機序列的加密特性,我們采用對像素點值進行加密的思路,先生成一維Logistic映射序列,取整,在對像素點進行異或即可,這種算法簡單,加解密速度更快。


上式R即為最終加密完的序列,最終在把R序列轉換為二維圖形矩陣,輸出完整的加密圖像。由于只做了異或,因此解密時,在此生成同樣的序列,再次異或,即可得到解密圖像。
現在我們就以一張1024×760大小的灰度圖像為例,取密鑰為代入上式,獲得混沌序列,對圖像進行加密處理。仿真實驗結果如圖2-1、圖2-2所示。
從圖2-2加密后原圖的圖片來看,密文圖像完全變為了均勻分布的雜點圖,無法看出與原圖的相關性。從直方圖進行分析,圖2-3原圖的直方圖左側沒有高度,代表照片幾乎沒有陰影,中間調也沒有,而最右側的則達到了最高處,說明原圖含有大量的高光,是高調圖片或過曝圖片,特征值顯著,易于分析。而圖2-4加密后圖的直方圖,分布均勻,陰影高光中調近乎保持水平,僅兩側出現細微的極端值。特征值不明顯。由此可以看出加密后的圖像像素值分布均勻,明文的特征值被打破磨平,我們不難看出,使用一維Logistic混沌圖像加密算法加密后,圖片的密文和明文之間的相關性大大降低。

圖2-1 原圖

圖2-2 加密后原圖
明文與密文的直方圖分布如圖2-3、圖2-4所示:

圖2-3 原圖的直方圖

圖2-4 加密后圖的直方圖
一個好的加密算法應該具備防范攻擊的能力,在本小章節中,我會從不同的角度分析上述的算法對圖像的加密能解決哪些安全性的問題。
密鑰空間大小對加密算法是很重要的一個指標,它直接決定了該算法對于抗窮舉類型攻擊的能力。對于本文上述所提出的圖像加密算法,它的密鑰空間分析可以有這樣的結論,密鑰是Logistic映射的初值,u是Logistic映射參數,是初次自迭代次數,均采用double類型,精確到小數點后15位,采用int類型,取正整數,最大值2147483647。則密鑰空間為從這點中我們不難可以看出來,這個算法的密鑰空間足夠大,具有一定的抗窮舉攻擊,可以保證部分安全性。
一張圖片的像素點與它臨近像素點是有很高的相關性,其表現也就是數據冗余特性,而本文所使用的算法就是為了破壞該圖片中相鄰像素點的相關性,從而達到密文無法識別該圖片的目的。在上述的例子就分別從原圖和加密后的圖像中,抽取垂直、水平、對角線上隨機抽取1000個像素點進行相關性測試,測試公式如下:

對公式進行變換,得到如下公式:

在上述公式中,x和y分別代表的是加密圖片中兩個相鄰像素的灰度值,而rxy為相鄰像素的相關系數。對加密后的圖像進行分析計算,結果如表1所示。

表1 加密前后圖片的相關分析表
從表1中可以看出,該圖片的加密圖在各個方向的相鄰像素間的相關性系數都比選取的0.01系數小,為了更好的看出相關性分布,我們可以從下面的圖3-1所繪制的相關性圖進行對比。我們不難看出原始圖像素之間的相關性還是很高的,而加密后圖像像素點分布擴散,其相關性也得到了很好的降低,達到了我們加密原圖的目的。

圖3-1 加密前、后圖片相關性分析圖
圖片的熵值能反映出灰度圖像中灰度值的分布情況。熵值越大,說明圖片中灰度值分布越相同。而信息熵它也可以是一個隨機數,隨機變量的不確定性。信息熵的通用公式如下:

參數說明:F:灰度值;P(L=l):像素值為l的百分比;IFE:信息熵。IFE的值越大,就表示該圖像的隨機性越高,越混。對于一般的灰度圖像而言,灰度圖的灰度值是介于0~256之間,那么對應的IFE理論最大值為8。信息熵計算如表3-1所示:

表3-1 圖片加密前后熵值變化表
由表3-1可以看出,盡管本文設計的加密算法,僅僅只利用一維Logistic序列進行異或處理,產生的加密圖LFE值就已經很趨近與8了。由此可以得出結論,在本文中設計的基于一維混沌系統的圖像加密算法,可以獲得很好的加密效果。
混沌算法是對初始值高度敏感的,初始值發生微小的變化,經過算法所產生的混沌序列也將差距甚大。一維Logistic映射算法亦不例外。根據本文的算法,選取初始值為0.01,分別對初值進行微小的調整,看迭代500次后的結果差距,如表3-2所示。

表3-2 初始值變化表

圖3-1 使用正確相同的初值解密

圖3-2 使用僅相差0.000000001的初值解密
從表3-2中我們不難看出來,即使初始值我們取的再相近,所產生的混沌序列也差距是否巨大,為了更方便直觀的展示,對圖像進行加密解密測試,初值使用0.01進行加密解密,在用0.010000001對加密圖像進行解密,最終測試結果如圖3-1和圖3-2所示。
在本文中我們詳細舉例說明了基于Logistic映射算法對1024*760大小的灰度圖像如何進行加密和解密的。我們可以看到,通過這種算法我們可以先生成一個混沌序列對圖片像素的位置進行置亂,同時也是利用這種算法再生成另一個混沌序列,然后將生成出來的兩種序列運算和擴散,來過到有效加密的目的。通過上文的實例,我們可以看出,通過Logistic算法加密和解密的圖片是有較好的效果的。但是,我們也看出,這里面仍然還存在著一些弊端。Logistic算法因為是屬于一維也就是低維數的混沌算法,所以它在加密、解密圖片方面,雖然密鑰管理方便,加解密速度快,但還是相對簡單簡單,在圖片的安全問題上還是存在一些不足的。還有,這種算法由于它的維度局限了它的密鑰空間,對大的窮舉類的攻擊,防御上可能也會有所欠缺。因此,我們在對灰度圖片進行加解密時,應該首先分析各種算法的優缺點,對于一些安全級別要求高的圖片,可以采用一些高維數混沌系統和對圖像像素的置亂算法,來達到對圖像更為有效的加解密,提高圖片的安全性。