基于混沌符號(hào)動(dòng)力學(xué)的圖像加密

隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,一些涉及到機(jī)密的未加密的圖像信息在網(wǎng)絡(luò)傳播過程中,便能輕易地被攻擊者竊取,并加以篡改或惡意傳播。如何對(duì)圖像信息采取恰當(dāng)?shù)谋Wo(hù)措施,一直是人們非常關(guān)注的問題。根據(jù)一維倒鋸齒映射的混沌符號(hào)動(dòng)力學(xué)運(yùn)算原理,我們提出一種僅需一個(gè)混沌密鑰便可產(chǎn)生多個(gè)混沌密鑰的方法,并對(duì)原圖像進(jìn)行了多密鑰的像素位置亂,在此基礎(chǔ)上,進(jìn)一步提出了針對(duì)像素值的多密鑰“置亂”原理,從而完成了對(duì)圖像加密過程。

基于混沌符號(hào)動(dòng)力學(xué)的圖像加密原理

從總體上來說,所謂的混沌加密原理就是把原始信息與混沌發(fā)生器產(chǎn)生的混沌序列進(jìn)行某種運(yùn)算,使得原始信息變?yōu)榫哂蓄愃齐S機(jī)噪聲的性態(tài),從而達(dá)到加密目的。目前,基于混沌的圖像加密方法總體上可以劃分為擾亂圖像像素值和置亂圖像像素位置以及這2種方法的結(jié)合。

1、像素置亂原理

設(shè)圖像P=MxN,Pxy(x∈{1,1,…,Mj,y∈{1,2,…,N})為其圖像中的任一像素。從線性代數(shù)的原理可知,假設(shè)A是MxM階單位矩陣的第i行和第J行相互調(diào)換后得到的初等矩陣。則利用

AM*M

左乘圖像矩陣PM*N,即如下式所示:

基于混沌符號(hào)動(dòng)力學(xué)的圖像加密利用上式的運(yùn)算實(shí)際就完成對(duì)P矩陣中第i行和第j行像素的相互調(diào)換過程,達(dá)到了“行置亂”的效果。此外,假同樣存在BN*N是N×N階單位矩陣的第k列和第h列相互調(diào)換后得到的初等矩陣,同樣利用BN*N右乘圖像矩陣,可得到如下結(jié)果:

基于混沌符號(hào)動(dòng)力學(xué)的圖像加密

則利用上式實(shí)際就達(dá)到了“列置亂”的效果。

從上述可知,只要能得到經(jīng)單位陣變換后的初等矩陣AM*M及BN*N,利用兩者的左乘和右乘運(yùn)算,完全可完成對(duì)圖像矩陣的行置亂和列置亂的過程,達(dá)到對(duì)像素置亂的效果:

基于混沌符號(hào)動(dòng)力學(xué)的圖像加密

為此,如何合理地構(gòu)造出初等矩陣便是在圖像置亂算法過程中非常重要的一步。

對(duì)于單位矩陣EM*N,僅需對(duì)單位矩陣進(jìn)行行與行的交換,便可得到上式的初等矩陣AM*N。

綜上所述,本文所涉及的圖像置亂原理算法簡(jiǎn)單且有效,通過一個(gè)初始參數(shù),便可得到2個(gè)不同分布的初等矩陣AM*M和BN*N。

2、像素值置亂原理 

在經(jīng)過上述的置亂過程后,原圖像PM*N中每個(gè)像素點(diǎn)的位置通過行變換和列變換的過程,都有了相應(yīng)的位置改變,得到像素點(diǎn)位置變換后的TM*N 。而TM*N實(shí)際上僅僅是原圖的 位置改變,為了進(jìn)一步增強(qiáng)保密性和提高加密效果,便需要對(duì)TM*N中每個(gè)像素點(diǎn)的值進(jìn)行“置亂”加密。

對(duì)于像素值的“置亂”過程,目前較為常用的方法是直接利用混沌序列與像素值進(jìn)行異或運(yùn)算,另一方法是結(jié)合壓縮或變換域的方式對(duì)像素值進(jìn)行加密。在此基礎(chǔ)上,本文提出一種基于混沌符號(hào)動(dòng)力學(xué)運(yùn)算原理,在提供一個(gè)加密參數(shù)的基礎(chǔ)上,能完成對(duì)整個(gè)圖像的多密鑰參數(shù)加密,這一點(diǎn)是目前混沌加密技術(shù)中較為少見的方法。

首先假設(shè)Tij表示為置亂后圖像TM*N中第i行第j列像素的灰度值,且每個(gè)像素的灰度分成256級(jí),即采用一個(gè)字節(jié)來表示一個(gè)像素的灰度值。本文所述的像素值“置亂”可以用以下步驟來描述:

(1)將置亂后圖像分成4個(gè)區(qū)域,分別進(jìn)行像素值的“置亂”過程(實(shí)際使用過程中可結(jié)合具體情況劃分區(qū)域的4大小和所劃分區(qū)域的個(gè)數(shù)):

基于混沌符號(hào)動(dòng)力學(xué)的圖像加密

(2)利用前文使用的混沌序列{ai}和混沌動(dòng)力學(xué)運(yùn)算的原理,根據(jù)所分區(qū)域的個(gè)數(shù),生成相對(duì)應(yīng)的混沌符號(hào)序列,如{{ai},2{ai},3{ai},4{ai}}(實(shí)際驗(yàn)證過程中,這里4個(gè)混沌序列可以是任一四則運(yùn)算得到的混沌序列,只要保證運(yùn)算后對(duì)應(yīng)的初值能在映射區(qū)間即可)。

(3)在每個(gè)混沌符號(hào)序列中任取其中的8個(gè)連續(xù)符號(hào),分別用{bi1}、{bi2}、{bi3}、{bi4}表示(其中,i∈{1,2,…,8})。

(4)利用{bi1}符號(hào)序列對(duì)Tij1,矩陣中每一個(gè)像素值進(jìn)行按位的異或運(yùn)算,得到異或后的變換像素矩陣Sij1,即:

基于混沌符號(hào)動(dòng)力學(xué)的圖像加密

其中,k∈{1,2,…i};l∈(1,2,…j}。

(5)如上述對(duì)圖像進(jìn)行置亂一樣,再次利用符號(hào)序列{bi1}形成一個(gè)初等變換矩陣AM*N1,利用:

基于混沌符號(hào)動(dòng)力學(xué)的圖像加密

因?yàn)門ij1中包含了8bits,可以看成一個(gè)8*1的矩陣,從而上式運(yùn)算結(jié)果也是一個(gè)8x1的矩陣,但QK11與TK11相比,2個(gè)矩陣中每個(gè)“1”和“0”的位囂都發(fā)生了相應(yīng)的變化,即達(dá)到了對(duì)像素值“置亂”的效果。

綜上所述,通過上述的圖像像素位置和像素值的置亂,完成了整個(gè)圖像的加密過程。從中可以了解,整個(gè)圖像文件加密過程中雖然僅用到一個(gè)密鑰參數(shù),但利用混沌動(dòng)力學(xué)運(yùn)算原理實(shí)現(xiàn)多密鑰參數(shù)的圖像置亂加密過程,在一定程度上克服了低維混沌系統(tǒng),密鑰空間較小,保密性能不夠的問題。在加密過程中,不光利用多密鑰實(shí)現(xiàn)了圖像像素位置的加密,而且也通過多密鑰實(shí)現(xiàn)像素值的加密,從而可降低攻擊者可能通過像素比較的方法加以破解的可能性。

小知識(shí)之符號(hào)動(dòng)力學(xué)

這種系統(tǒng)的狀態(tài)均可表示為有限個(gè)符號(hào)的無窮序列,而由任一狀態(tài)點(diǎn)引出的運(yùn)動(dòng)軌道可由表示該狀態(tài)的無窮序列通過簡(jiǎn)單的移位規(guī)則來確定。許多復(fù)雜動(dòng)態(tài)系統(tǒng)均可經(jīng)過變換等價(jià)于這類系統(tǒng),從而可通過對(duì)比較簡(jiǎn)單的符號(hào)動(dòng)力系統(tǒng)的分析來研究一般動(dòng)力系統(tǒng)的行為。這種方法特別在混沌等復(fù)雜行為研究中占有重要地位。