国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Strcmp分解超Lorenz混沌的圖像加密算法*

2021-04-06 11:33:24靳旭文李國東
計算機工程與科學(xué) 2021年3期
關(guān)鍵詞:明文加密算法密文

靳旭文,李國東

(新疆財經(jīng)大學(xué)統(tǒng)計與數(shù)據(jù)科學(xué)學(xué)院,新疆 烏魯木齊 830012)

1 引言

5G網(wǎng)絡(luò)時代的到來正在加快無線大數(shù)據(jù)的增長,造成數(shù)據(jù)量急劇膨脹,信息由傳統(tǒng)的文字信息慢慢轉(zhuǎn)變?yōu)閳D像和視頻。且互聯(lián)網(wǎng)上時事資訊和聊天會產(chǎn)生海量的圖像數(shù)據(jù),因此,設(shè)計隱私保護的圖像安全性問題近年來成為熱點。

目前,數(shù)字圖像加密算法主要是通過對圖像像素點作位置和值的改變,從而經(jīng)過置亂和擴散對圖像完成加密?;煦缦到y(tǒng)是具有非常復(fù)雜的偽隨機性的非線性系統(tǒng),對控制參數(shù)和初始條件具有高度敏感性,任何微小的初始偏差都會被指數(shù)式放大,符合圖像像素點擴散規(guī)則。同時,它可由非線性系統(tǒng)的方程、參數(shù)和初始條件完全確定[1]。1998 年,F(xiàn)ridrich[2]首次在圖像加密中引入混沌模型,由此拉開了圖像加密的新大門。由于混沌具有初值敏感性、無周期性和遍歷性,微小變動初始值參數(shù)就可產(chǎn)生符合加密的源序列。李春虎等[3]提出利用Tent映射和Anorld相結(jié)合的算法進行加密,能夠有效地擴展密鑰空間。不過又被證明,隨著時間周期的變換,混沌系統(tǒng)具有單一性及混沌性能退化等問題。接著研究者發(fā)現(xiàn)了具有更強混沌特性的超混沌系統(tǒng),并引入其他學(xué)科工具結(jié)合混沌系統(tǒng)設(shè)計加密算法。例如,涂正武等[4]結(jié)合生物基因DNA規(guī)則,將腺嘌呤(A) 、鳥嘌呤(G) 、胞嘧啶(C) 和胸腺嘧啶(T) 4種堿基結(jié)合圖像和混沌序列作變換從而完成加密,但是其規(guī)則庫較小,可供DNA編碼的方式單一。姚麗莎等[5]利用DNA編碼與混沌系統(tǒng)相結(jié)合的加密方式,對原文分層加密,雖引入漢明距離作為初始值參數(shù),但混沌系統(tǒng)特性仍會衰減。

為了解決以上加密算法中遇到的混沌特性衰減和序列編碼規(guī)則庫較小的問題,本文在數(shù)理命題邏輯逆運算的基礎(chǔ)上設(shè)計Strcmp分解混沌序列的圖像加密算法,對圖像分塊加密,創(chuàng)建密文熵反饋機制,使得混沌系統(tǒng)每次迭代時使用的控制參數(shù)都由加密完成的前一密文塊所提供,從而產(chǎn)生雙重加密源序列,進一步提升混沌特性和算法安全等級。

2 超Lorenz混沌系統(tǒng)

2.1 超Lorenz混沌

美國氣象學(xué)家Lorenz是混沌理論的奠基者之一。20世紀(jì)50年代末到60年代初,他利用計算機模擬觀測的天氣預(yù)測值時發(fā)現(xiàn),對模型初始條件的微小改變也會顯著影響運算結(jié)果[6]。隨后得到了有3個變量的一階微分方程組,即Lorenz混沌:

(1)

在式(1)第1個方程中引入變化律令并加入2個新的控制參數(shù)時變?yōu)槌琇orenz混沌[7],其中超Lorenz混沌系統(tǒng)的定義方程如式(2)所示:

(2)

其中,參數(shù)值a=10,b=8/3,c=28,r=-1時,式(2)處于超混沌狀態(tài)。利用其產(chǎn)生的混沌序列,可做出xn-yn相圖、xn-zn相圖、xn-wn相圖、yn-zn相圖、yn-wn相圖和zn-wn相圖,如圖1所示。

Figure 1 Phase diagram of hyperlorenz chaotic system

2.2 初值敏感性分析

對混沌系統(tǒng)的初始值x0、y0、z0、w0做微小改變,產(chǎn)生2組混沌序列,隨機抽取200對做對比,作出相應(yīng)位置散點分布圖及其軌跡圖,如圖2和圖3所示。

Figure 2 Scatter distribution of hyperlorenz chaotic system

Figure 3 Strcmp sequence distribution of hyperlorenz chaotic system

由圖2和圖3可知,經(jīng)微小改動后的初始值代入混沌發(fā)生器,由于超混沌特性會產(chǎn)生無規(guī)則無周期性變化的序列,因此初始狀態(tài)和少量參數(shù)的變化就可以產(chǎn)生滿足密碼學(xué)基本特征的混沌源序列。

3 Strcmp序列分解算法設(shè)計

3.1 數(shù)理命題邏輯運算與位運算

命題邏輯研究以命題為基本單位,利用邏輯運算符和推理規(guī)則對命題進行演算,進而求出其真值[8]。

首先使用一個形式符號P表示在描述位置上有一個命題,稱該變量獲得指派,此時變量取得真假值。通常用1表示為真,用0表示為假。因此在具體的復(fù)合命題當(dāng)中,需要引進所謂的命題聯(lián)詞以描述原子命題及其構(gòu)造關(guān)系。將真假值與二進制序列組相結(jié)合,其中任意二進制序列按照每2位分割有4種可能情況:00,01,10和11。對傳統(tǒng)的邏輯運算略作修改使其滿足加密使用的二進制序列運算法則,且保證命題聯(lián)詞具有嚴(yán)格的邏輯含義,以及符號系統(tǒng)的語義與其原有自然系統(tǒng)語義的一致性。本文所討論的聯(lián)詞包括合取詞(∧)、析取詞(∨)、蘊涵詞(→)和等價詞(?),并規(guī)定了其明確的運算規(guī)則,如表1所示。

Table 1 Truth table of mathematical propositional logic

其中,命題的合取式p∧q規(guī)則:p與q同時為真時才真,其余為假;命題的析取式p∨q規(guī)則:p與q同時為假時才假,其余為真;命題的蘊涵式p→q規(guī)則:p與q互異時為真,相同時為假;命題的等價式p?q規(guī)則:p與q同時為真或同時為假時才真。

3.2 Strcmp序列分解規(guī)則

以數(shù)理復(fù)合命題邏輯真值表逆運算為基礎(chǔ),利用其逆運算對二進制分解源序列按照選取的運算規(guī)則與00,01,10,11做Strcmp對比,具體流程如圖4所示,最后將分解的序列排列為一維向量作為加密源序列。

Figure 4 Schematic diagram of Strcmp sequence decomposition

假設(shè)選取的合取式為表1中編號為3,6,9,10的逆運算組成合取分解規(guī)則,則可以將序列0110110011分解為:

result01=0110110011

result02=0111111011

若是選取表1中編號為2,6,9,10的逆運算組成合取分解規(guī)則,則會錯誤地把序列0110110011分解為:

result01=0110110011

result02=0111110111

由于混沌初值的敏感性,且Strcmp分解規(guī)則的選取可作為密鑰,會使得系統(tǒng)安全性得到很大提升。

4 加密算法

本文設(shè)計了一個具有密文熵反饋機制的混沌發(fā)生器,附加Strcmp分解規(guī)則的加密算法,利用反饋重置產(chǎn)生的序列分別對圖像塊進行加密,整體流程如圖5所示。

Figure 5 Overall image encryption algorithm

假定明文圖像大小為M*N。

Step1預(yù)處理分塊。

對明文圖像進行灰度轉(zhuǎn)換后按2*2均勻分塊,依次得到明文A、B、C、D塊,各塊大小變?yōu)镸/2*N/2。

Step2產(chǎn)生混沌序列。

設(shè)置混沌發(fā)生器,采用龍格-庫塔法(Runge-Kutta)[9]對超Lorenz混沌離散化處理后進行求解,產(chǎn)生4個序列X、Y、Z、W,并制定密文熵反饋機制:即代入原始初值產(chǎn)生混沌序列并利用序列X做分解得到result11和result12,對原文A塊進行置亂和擴散加密得到密文A′塊;再使密文A′的熵值H(其計算如式(3)所示)作為混沌發(fā)生器新初值,利用新初值產(chǎn)生的混沌序列Y做分解得到新序列result11和result12,用新序列加密原文B塊;同理根據(jù)密文熵反饋機制對圖像各塊依次完成加密。

(3)

其中,L為圖像的灰度隨機等級數(shù);p(i)為灰度值i出現(xiàn)的概率。

在調(diào)用混沌序列時每3 000次利用式(4)對混沌狀態(tài)進行1次擾動,h為擾動項系數(shù)。

(4)

并對混沌系統(tǒng)本身產(chǎn)生的序列值s進行限定預(yù)處理,使之由浮點數(shù)類型的偽隨機序列生成整數(shù)類型的偽隨機序列S,長度為2*M/2*N/2,即:

S=mod(floor(s*pow2(16)),256)

(5)

最后經(jīng)過式(6)得到的向量Z就是要分解的源序列:

Z=reshape(dec2bin(S),1,

2*M/2*N/2*8)

(6)

Step3選取分解規(guī)則。

從真值表中選取4式分解規(guī)則,對密文熵反饋后混沌發(fā)生器產(chǎn)生的序列進行分解。

Step4混沌序列分解。

對各塊密文熵反饋得到的混沌序列值經(jīng)式(5)限定處理后,分別進行序列X合取分解、序列Y析取分解、序列Z蘊涵分解、序列W等價分解,按照分解算法每兩位一組,做循環(huán)分解i=1:k,其中k=length(Z)/2-1。

最后利用式(7)得到加密序列,其中M和N為圖像的長和寬,a1和b1為分解項。

(7)

Step5圖像置亂及擴散。

利用分解得到加密序列對各圖像塊進行置亂和擴散,result11用于置亂操作,result12用于擴散操作,最終得到密文塊A′、B′、C′、D′。

置亂部分:

序列分解完成后,利用result11序列對塊進行偽隨機矩陣優(yōu)化Anorld置亂[10];將明文圖像展開為一維向量,記為A,大小為M*N*1,對向量A的任一點坐標(biāo)位置(1,j)進行Anorld變換,得到新的坐標(biāo)位置(p,q),如式(8)所示:

(8)

利用式(8)可通過偽隨機變量a和b實現(xiàn)像素點(1,j)和(1,q)之間的變換,同時,將a*b+1視為一個新的隨機數(shù),記為a′。

擴散部分:

利用result12序列按照式(9)對塊進行加取模擴散[11]:

Ci=(Ci-1+Si+Pi) mod 256

(9)

其中,原始明文圖像被展開為一維向量P,相應(yīng)的密文也為一維向量C,S為密碼向量,i=1,2,…,M*N,i=0時初始值C0來自密鑰。

將分解產(chǎn)生的序列分別保存到正向算法和逆向算法的偽隨機向量中,如式(10)所示:

(10)

加取模循環(huán)2次使得任意明文像素點信息擴散到整個密文圖像中。正向(按i從1到M*N)的算法與其逆算法分別如式(11)和式(12)所示:

Ci=(Ci-1+Si+Pi) mod 256

(11)

Pi=(2*256+Ci-Ci-1-Si) mod 256

(12)

逆向(按i從M*N到1)的算法與其逆算法分別如式(13)和式(14)所示:

Ci=(Ci+1+Si+Pi) mod 256

(13)

Pi=(2*256+Ci-Ci+1-Si) mod 256

(14)

Step6合塊密文。

將利用序列分解后加密得到的密文塊按照分塊順序合并,得到最終密文圖。

解密為加密的逆運算,即對密文圖分塊,將原始初值代入混沌系統(tǒng),利用Strcmp分解規(guī)則對產(chǎn)生的序列進行分解后再對A塊加密,計算A′熵值后,代入密文熵反饋機制產(chǎn)生混沌序列,依次對各分塊進行解密后合并得到原文。

Table 2 Decomposition rules selected by this paper

Figure 9 Detection diagram of sequence run-time distribution

5 實驗仿真及安全性分析

5.1 實驗仿真

在64位Windows 10操作系統(tǒng)、4 GB內(nèi)存及Matlab 2016a環(huán)境中進行仿真實驗。選取大小為512*512的Lena、Pepper和Ape圖像作為明文,利用表2分解規(guī)則得到的結(jié)果分別如圖6~圖8所示。

Figure 6 Encryption effect of Lena

Figure 7 Encryption effect of Pepper

Figure 8 Encryption effect of Ape

5.2 安全性分析

5.2.1 分解序列均勻性檢驗

對序列作游程隨機分布檢驗,即檢測分解序列局部分布值,理想狀態(tài)下0和1的分布不宜過多,也不宜過少,理論占比為50%,如式(15)所示,結(jié)合二進制的運算機制才能產(chǎn)生較好的加密序列值[12]。

(15)

其中,U為局部序列中0和1的總個數(shù),π(i)(i=0,1)為序列中i所占個數(shù)。從分解序列中隨機選取100位序列值作游程性隨機分布圖,由圖9可知,不經(jīng)過序列分解的混沌序列值(圖9c橢圓形標(biāo)出部分)分布不均勻,而經(jīng)過Strcmp分解得到的加密源序列更接近期望圖分布圖。

5.2.2 直方圖分析

直方圖可直觀地顯示出圖像像素點大小所占比重,對比圖10~圖12所示原文灰度直方圖和密文灰度直方圖可知,加密后圖像像素值整體平穩(wěn)且于像素區(qū)間均勻分布,可認(rèn)為經(jīng)加密得到的密文能很好地抵抗統(tǒng)計分析攻擊。

Figure 10 Text-ciphertext histogram of Lena

Figure 11 Text-ciphertext histogram of Pepper

Figure 12 Text-ciphertext histogram of Ape

5.2.3 相鄰像素相關(guān)性分析

明文圖像具有較強的相關(guān)性,相鄰像素點大多在水平、垂直、正對角和反對角方向上,有效的加密算法會大大降低其相關(guān)性,使得其相關(guān)系數(shù)趨近0。令一小塊中的像素集合為“相鄰像素點”,在理想狀態(tài)下,應(yīng)該將相鄰的像素點盡可能地分散開,使得相鄰像素點間相關(guān)性降低[13]。從圖像中任取G對相鄰像素點,則他們的灰度值為(ui,vi),i=1,…,G,則向量u={ui},v={vi} 的相關(guān)系數(shù)定義如式(16)所示:

(16)

其中cov(u,v),D(u)和E(u)分表代表協(xié)方差、方差和平均值。

本文分別隨機選取4 000個明文和密文的相鄰像素點通過式(16),對明文和密文圖像中3個不同方向的相鄰像素相關(guān)性進行對比分析,分析結(jié)果如圖13和圖14所示。

從明文相鄰像素相關(guān)性分布圖中可知,明文圖像相鄰像素間具有很強的線性關(guān)系;而由密文相鄰像素相關(guān)性分布圖可知,其各個方向上皆無相關(guān)性,且像素點分布較為均勻。

利用式(17)可以計算出明密文相鄰像素水平、垂直、正反對角方向上的相關(guān)系數(shù)。

(17)

5.2.4 信息熵

信息熵是衡量隨機性的重要標(biāo)準(zhǔn),其計算方式如式(3)所示,理論上,灰度隨機圖像在理想狀況下的信息熵應(yīng)該為8。

表3列出了Lena、Pepper和Ape圖像的信息熵以及與不同方法之間的比較結(jié)果,可以看出經(jīng)過加密算法得到的測試對象熵值均接近理論值,能夠有效抵抗信息熵攻擊。

Figure 13 Correlation diagram of adjacent pixels of Lena plaintext image

Figure 14 Correlation diagram of adjacent pixels of Lena ciphertext image

5.2.5 抗差分攻擊分析

為了抵抗差分攻擊,加密算法需要對明文圖像高度敏感,即稍微改變明文圖像像素的任何一位就能產(chǎn)生完全不同的密文圖像。像素變化率(NPCR)和統(tǒng)一平均變化強度(UACI)可以衡量加

Table 3 Correlation coefficient relation test results of adjacent pixels

密算法對明文圖像的敏感性。其定義分別如式(18)和式(19)所示:

(18)

(19)

(20)

其中,x(i,j)和x′(i,j)為改變像素值前后圖像同一位置的像素點坐標(biāo),NPCR和UACI的期望值分別為 99.609 4%和 33.463 5%[17]。在分析測試中,隨機改變Lena、Peppers和Ape中的1個像素值 ,得到的NPCR和UACI值如4表所示,其值均接近期望值,表明本文算法對明文圖像具有較強的敏感性,可以有效抵制差分攻擊。

5.2.6 選擇明文攻擊

選擇明文攻擊是傳統(tǒng)密碼攻擊手段中最具威脅性的,因此對于已知明文攻擊,攻擊者可以通過加密一些特殊圖像嘗試找到加密密鑰[18]。在本次測試中,選擇大小為 512*512 的純黑色和純白色圖像進行加密仿真,結(jié)果如圖15所示,相應(yīng)的信息熵和相關(guān)系數(shù)列于表5。由仿真模擬可得,實驗數(shù)據(jù)均接近期望值,這表明無法從加密圖像獲得任何有用的信息,本文提出的加密算法對特殊圖像可進行有效加密,且攻擊者無法使用相同的密鑰解密其他加密圖像。因此,本文算法可以有效抵抗已知明文攻擊和選擇明文攻擊。本次測試的時間復(fù)雜度如表5所示,良好的時間特性也可以體現(xiàn)出本文加密算法的優(yōu)越性能。

Figure 15 Chosen plaintext attack test

6 結(jié)束語

本文將離散數(shù)學(xué)中的數(shù)理命題邏輯運算與混沌序列結(jié)合起來,并設(shè)定密文塊熵值反饋交互機制,利用邏輯逆運算設(shè)計了Strcmp序列的分解規(guī)則,結(jié)合超Lorenz混沌系統(tǒng)提出了一種圖像加密算法。對明文做分塊處理后,將超混沌系統(tǒng)產(chǎn)生的序列進行分解,按照加密算法的設(shè)計對明文塊分別加密,能夠在減少時間冗余的情況下,進一步提高加密算法安全性。實驗結(jié)果表明,該算法各項安全性分析值皆接近期望值,能抵抗常見密碼學(xué)攻擊,且對特殊圖像加密效果較好。

未來將更進一步尋找設(shè)定新運算規(guī)則,從而與混沌序列中八位二進制的轉(zhuǎn)化相結(jié)合,盡可能地使源序列更好地達到混沌序列的統(tǒng)計特性,以提出更高效的圖像加密算法。

Table 4 Results of resistance to differential attack

Table 5 Analysis results of special images

猜你喜歡
明文加密算法密文
一種針對格基后量子密碼的能量側(cè)信道分析框架
一種支持動態(tài)更新的可排名密文搜索方案
基于模糊數(shù)學(xué)的通信網(wǎng)絡(luò)密文信息差錯恢復(fù)
奇怪的處罰
奇怪的處罰
基于小波變換和混沌映射的圖像加密算法
四部委明文反對垃圾焚燒低價競爭
云存儲中支持詞頻和用戶喜好的密文模糊檢索
Hill加密算法的改進
荣成市| 襄汾县| 永泰县| 政和县| 屏边| 花莲市| 贵定县| 庆云县| 久治县| 墨竹工卡县| 乌兰县| 长丰县| 城固县| 全南县| 长沙县| 元阳县| 神池县| 晴隆县| 徐州市| 金寨县| 洞口县| 郧西县| 睢宁县| 时尚| 万山特区| 陇川县| 光山县| 陈巴尔虎旗| 梁山县| 惠来县| 上饶县| 高阳县| 泽库县| 大足县| 长岭县| 秀山| 偃师市| 丹江口市| 耒阳市| 闽清县| 太仆寺旗|