• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      隨機彈射結(jié)合DNA 編碼的圖像加密算法

      2021-08-24 08:37:26司宇晨
      軟件導(dǎo)刊 2021年8期
      關(guān)鍵詞:明文加密算法加密

      司宇晨,滕 琳,孟 娟

      (1.大連海洋大學(xué)信息工程學(xué)院;2.設(shè)施部重點實驗室;3.遼寧省海洋信息技術(shù)重點實驗室;4.大連海事大學(xué)信息科學(xué)技術(shù)學(xué)院,遼寧 大連 116023)

      0 引言

      隨著大數(shù)據(jù)時代的到來,越來越多的人開始重視信息數(shù)據(jù)安全,而圖像作為當(dāng)前信息傳輸?shù)闹饕緩狡渲匾圆谎远鳎?]。圖像傳輸安全是一項非常重要且必要的任務(wù),由于數(shù)字信息的特征,其在傳播時極易遭到他人的截取和篡改,傳統(tǒng)的加密算法已不能滿足當(dāng)前圖像加密需求。混沌系統(tǒng)有著良好的初值敏感性、隨機性和不確定性,在圖像加密領(lǐng)域有著良好應(yīng)用前景。因此,許多基于混沌系統(tǒng)的圖像加密算法應(yīng)運而生[2-5]。

      DNA 編碼是由計算機技術(shù)和生物學(xué)結(jié)合而產(chǎn)生的一個新學(xué)科,由于DNA 的特性,DNA 編碼可以擁有8 種編碼方式和3 種運算規(guī)則,因其強大的并行計算能力和高復(fù)雜度在信息加密中有著獨特優(yōu)勢[6]。Zhang 等[7]提出一種基于DNA 編碼雙重混沌映射的圖像加密算法,但加密算法不可逆;Ping 等[8]提出一種運用Henon 混沌映射的圖像像素位置置亂算法,但是沒有考慮像素值擴散,系統(tǒng)復(fù)雜度低;Wu 等[9]提出一種典型加密算法,但其密鑰與明文無關(guān),易于明文攻擊攻破。

      針對上述圖像加密算法的不足,本文提出一種基于混沌系統(tǒng)控制隨機彈射矩陣與DNA 編碼相結(jié)合的圖像加密算法。首先運用哈希算法獲取混沌系統(tǒng)初始值,其次對明文圖像進行分層處理及Arnold 置亂,然后利用對置亂后的圖像進行分塊以及DNA 編碼,最后與隨機彈射矩陣進行DNA 運算,將三層分量合并后生成密文圖像。通過仿真測試表明,該算法擁有大密鑰空間及高抗攻擊性,安全性能更強。

      1 基本理論

      1.1 Logistics 混沌系統(tǒng)

      一維Logistics 混沌映射也稱作蟲口模型,它也是眾多混沌系統(tǒng)中較為常用的一種。20 世紀(jì)50 年代,許多科學(xué)家利用此方程推斷種群變化特征,因為此系統(tǒng)在動力學(xué)方面有十分復(fù)雜的特征,因此在信息保密方面有較多應(yīng)用。Lo?gistic 的數(shù)學(xué)表達式如式(1)所示。

      其中a為參數(shù),{xn}為生成的混沌序列,當(dāng)x∈(0,1),a∈(3.569 945 6,4]時,Logistics 系統(tǒng)呈混沌狀態(tài)。

      1.2 MD5 算法

      MD5 算法是一種被廣泛用于加密的散列函數(shù),對明文像素改變一位像素值,散列值就會發(fā)生很大改變,且運算結(jié)果不可逆。MD5 算法也可以理解成信息摘要的一種實現(xiàn),它可以從任意長度的明文字符串生成128 位的哈希值;即運用明文圖像和MD5 算法生成128 位(16 字節(jié))的散列值U。本文將128位的散列值U分成16 個子塊(k1,k2,k3,…k16),如式(2)所示,將其處理后,可作為混沌系統(tǒng)的初始值,其作為密鑰與明文圖像相關(guān)聯(lián),也極大加強了安全系數(shù)。

      1.3 隨機彈射矩陣

      本文提出隨機彈射矩陣,首先選取與明文圖像相同大小零矩陣,運用明文圖像結(jié)合MD5 算法設(shè)定Logistics 系統(tǒng)初值x,如式(1),定義其公式如式(3)所示,其中⊕代表異或運算。參數(shù)a=3.678 9,獲取Logistic 混映射連續(xù)迭代生成的偽隨機序列然后去除前3 000 次,使其達到充分迭代,選取長度為M的序列將生成序列經(jīng)過式(4)轉(zhuǎn)化為0~π的弧度值。

      選取點(1,1)為初始位置進行彈射,碰壁后取與矩陣邊的夾角進行折射,若彈射至4 個頂點,則返回初始位置,繼續(xù)進行。統(tǒng)計出路徑經(jīng)過每個單元格的次數(shù),用來生成隨機矩陣R。圖1 為隨機彈射示意圖,其中A 為初始點。

      Fig.1 Random ejection diagram圖1 隨機彈射示意圖

      1.4 Arnold 置亂

      Arnold 也稱為貓映射,由俄國數(shù)學(xué)家Vladimir Igorev?ich Arnold 提出[10]。Arnold 變換是一種在固定區(qū)域內(nèi)反復(fù)迭代拉伸、折疊的映射,其原理主要是沿圖像x軸方向錯切變換,再做y軸方向的錯切變換,最后進行回填。一副M*N的數(shù)字圖像的二維Arnold 變換定義為:

      其中,x、y表示變換前圖中像素位置,xn+1、yn+1表示變換后的像素位置,a、b為參數(shù),n表示當(dāng)前變換次數(shù),N為圖像的長或?qū)挕?/p>

      1.5 Chen 超混沌系統(tǒng)

      陳氏混沌系統(tǒng)(Chen Chaotic System)是在20 世紀(jì)末被提出的一種新的混沌系統(tǒng),動力學(xué)方程如式(6)所示。

      其中,a、b、c、d、r分別為超混沌系統(tǒng)的參數(shù),當(dāng)a=35,b=3,c=12,d=7,r∈[0.085,0.798]時,Chen 超混沌系統(tǒng)呈混沌狀態(tài)。將a=35,b=3,c=12,d=7,r=0.6 代入Chen超混沌系統(tǒng)式(2),用龍格庫塔法[11]求出4 個混沌序列,圖2(a-d)為混沌系統(tǒng)4 個引子相圖。

      Fig.2 Attractor phase diagram of Chen hyperchaotic system圖2 Chen 超混沌系統(tǒng)吸引子相圖

      1.6 DNA 序列

      在生物學(xué)中,DNA 的全稱是脫氧核糖核酸,因其存在4種堿基:A、T、C、G 分別是腺嘌呤、胸腺嘧啶、鳥嘌呤、胞嘧啶,它們之間有互補配對原則,因而也常常被用在二進制的互補關(guān)系中。如果用兩位二進制表示堿基之間的編碼方式,共可分為24 種編碼方式,但是滿足堿基互補配對原則的只有8 種編碼方式如表1 所示。

      Table 1 DNA coding rule表1 DNA 編碼規(guī)則

      系統(tǒng)運用到的DNA 運算規(guī)則有3 種,分別是DNA 加法運算、DNA 減法運算和DNA 異或運算。運算規(guī)則如表2—表4 所示。

      Table 2 DNA addition rules表2 DNA 加法規(guī)則

      Table 3 DNA subtraction rules表3 DNA 減法規(guī)則

      Table 4 DNA XOR rule表4 DNA 異或規(guī)則

      以上3 種運算規(guī)則是基于第一種編碼規(guī)則而呈現(xiàn),當(dāng)然不同的編碼規(guī)則所得到的運算結(jié)果不同。

      2 加密算法

      本文提出的圖像加密算法主要是將圖像分為3 個二維矩陣,對每個二維矩陣經(jīng)過置亂、分塊、DNA 編碼處理后與隨機彈射矩陣進行DNA 運算。Logistics 混沌系統(tǒng)決定隨機彈射矩陣的生成,Chen 超混沌系統(tǒng)決定每一個子塊的編碼解碼及DNA 運算方式。兩個混沌系統(tǒng)的初值都與原始圖像關(guān)聯(lián),很大程度地提升了算法安全性。具體加密流程如下:

      (1)輸入M×N的彩色明文圖像P,進行R、G、B 分層,并按式(7)轉(zhuǎn)化為3 個二維矩陣。

      (2)取U生成k1、k3、k5、k7的值,設(shè)定Logistics 系統(tǒng)(式(1))初值x1如式(8)所示,獲取Logistic 混映射連續(xù)迭代生成的偽隨機序列{Jx}如式(9)所示,去除前3 000 次,使其達到充分迭代,對分層后的圖像進行Arnold 置亂,規(guī)定P1置亂迭代次數(shù)為{J1},P2置亂迭代次數(shù)為{J100},P3置亂迭代次數(shù)為{J1000},其中N為圖像的邊長。

      (3)將置亂后的P1P2P33 個分量的二維矩陣進行分塊,為使P1P2P3都能夠分為均勻的塊,因此對其進行補零操作,t為分塊數(shù),具體補零方法如式(10)所示。

      (4)對Chen 氏混沌系統(tǒng)設(shè)定初值,運用龍格庫塔法[11]算出Chen 氏超混沌系統(tǒng)的解,得到4個序列。其中,初值設(shè)定方法由式(11)計算得出。取U生成k1、k2、k3、k4的值做異或運算作為{Xi}的初 值。依次類推,{Yi}的初值由U的k5、k6、k7、k8子塊決定,{Zi}的初值由U的k9、k10、k11、k12子塊決定,{Wi}的值由U的k13、k14、k15、k16子塊決定。

      (5)取{Xi}和{Yi}分別控制P1、P2、P3和隨機彈射矩陣R 的編碼方式,將{Xi}、{Yi}分別由式(12)轉(zhuǎn)化為1~8 之間的整數(shù),用來決定DNA 的8 種編碼方式,P1、P2、P3中,第i個子塊的編碼方式為Xi,隨機矩陣R 中,第i個子塊的編碼方式為Yi。按照{(diào)Zi}控制編碼后的P1、P2、P3與隨機彈射矩陣R 的運算方式,同理將{Zi}中所有序列值按式(12)轉(zhuǎn)化為0~2 之間的整數(shù),當(dāng)Zi=0 時,DNA 運算方式為加法;Zi=1 時,運算方式為減法;Zi=2 時,運算方式為異或。

      (6)為提高算法加密效果,將運算后每個子塊與前一個子塊再進行一次DNA 運算,達到充分?jǐn)U散效果后,對經(jīng)過運算的矩陣按式(13)中{Wi}的值進行解碼,因為解碼是編碼的逆運算,因此解碼方式也有8 種。

      (7)將解碼后的三層分量合并,形成密文圖像。

      本文提出的加密算法解密過程是加密算法的逆運算,在密鑰正確的情況下,即可恢復(fù)出明文圖像,但在DNA 運算時要注意減法和加法置換。加密算法流程如圖3 所示。

      Fig.3 Brief flow of image encryption圖3 圖像加密簡要流程

      3 實驗結(jié)果與分析

      該算法是在Intel Core(TM)i5-9300H CPU@ 2.40GHz、8G RAM、win10 64 位操作系統(tǒng)、Matlab R2018a 下實驗環(huán)境下完成。選取512×512 的Lena、Baboon、Airplane 圖作為測試圖像。其中,隨機彈射矩陣和分量置亂的Logistics 映射初始值由MD5 算法獲取,μ 取3.79。對Chen 超混沌系統(tǒng)取a=35,b=3,c=12,d=7,r=0.6。加密效果如圖4(a-i)所示。

      Fig.4 Contrast image encryption before and after圖4 圖像加密前后對比

      通過圖像加密前后對比圖可以看出,密文圖像與明文圖像毫無關(guān)聯(lián),掩蓋了明文信息,而解密效果展現(xiàn)了明文的全部信息,說明該加密算法可行且效果良好。

      3.1 直方圖分析

      直方圖可以有效地分析圖像中每個像素值出現(xiàn)的頻率,因此像素值分布越均勻,說明該圖像所有像素值出現(xiàn)的頻率越均衡,可利用信息越少。圖5 是以Lena 圖為例R、G、B 3 個通道加密前后直方圖的對比圖。

      Fig.5 Histogram comparison before and after encryption圖5 加密前后直方圖對比

      可以得知,加密前3 個通道的直方圖,分布不均且波動性強,而加密后3 個通道的直方圖分布均衡,具有近乎相同的分布趨勢,因此本加密算法也可以很好地抵抗針對圖像統(tǒng)計分析方法的攻擊。

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

      自然圖片的相鄰像素具有很強的相關(guān)性。以Lena 圖為例,選取加密后的Lena 圖的水平、垂直、對角線3 個方向,隨機選擇1 000 相鄰像素進行相關(guān)性測試,式(12)—式(13)結(jié)果如表5 所示,計算公式如式(14)所示。

      Table 5 Correlation of horizontal,vertical and diagonal adjacent pixels表5 水平、垂直、對角線相鄰像素相關(guān)性

      其中,x、y表示明文圖像與密文圖像相鄰像素值,N表示選擇參與的像素點總數(shù),E(x)、D(x)、cov(x、y)分別表示計算公式的期望、方差、協(xié)方差,rxy表示相鄰像素點的相關(guān)系數(shù)。

      可以看出,明文圖像的相鄰像素相關(guān)系數(shù)十分接近1,這說明相鄰像素相關(guān)性很強,而本文提出的加密算法加密后各通道的相鄰像素相關(guān)系數(shù)比另外兩種算法系數(shù)更接近于0,說明各相鄰像素之間的關(guān)系幾乎被消除。

      以Airplane 圖為例,圖6 是加密前后R 通道的水平、垂直、對角線3 個方向的明文和密文隨機點像素灰度值。可以看出,加密圖像的相鄰像素之間的相關(guān)性顯著降低,說明該方案具有良好的安全性。

      Fig.6 Comparison of pixel values before and after encryption of airplane R channel圖6 airplane R 通道加密前后像素值對比

      3.3 信息熵

      信息熵可以反映出圖像的混亂程度,信息熵的值越接近8,意味著圖像的隨機程度越高,不確定性越大,可利用信息越少。計算公式如式(15)所示。

      其中,p(i)表示信號i出現(xiàn)的概率。本文L 值為512,選取Lana 圖經(jīng)測試后,圖像各通道的信息熵如表6 所示。

      Table 6 Information entropy表6 信息熵

      由表6 可得,本文加密算法經(jīng)加密后的信息熵更接近于8,能夠有效抵御統(tǒng)計攻擊。

      3.4 抗差分攻擊

      使用本文提出的加密算法對明文圖像進行加密,然后改變明文中的一個像素進行重新加密,兩次加密圖像之間的像素關(guān)系可用兩個標(biāo)準(zhǔn)衡量,即像素數(shù)改變率(Number of Pixels Change Rate,NPCR)和歸一化像素平均值(Unified Average Changing Inrensity,UACI)。NPCR 的 理 想 值 是99.609 4%,UACI 的理想值是33.463 5%,在實際數(shù)值不同的實驗環(huán)境下會有上下浮動。計算方式如式(16)—式(17)所示。

      其中,圖像寬度由m表示,高度由n表示,表7 是運用本文算法對改變一位像素的兩張Lena 圖進行加密后的明文敏感性對比??梢钥闯觯疚乃惴ǖ腘PCR 和UACI 接近于理想值,這是因為本文采用的混沌序列初值來源于明文通過MD5 算法提供的散列值并加以運算得到的,即使一位像素發(fā)生變化,它也可以有效地改變混沌序列的初值,這種方法極大提升了明文的敏感性,這也說明本文提出的加密算法具有很強的抗差分攻擊能力。

      Table 7 Contrast of plaintext sensitivity表7 明文敏感性對比

      4 結(jié)語

      本文提出了一種基于混沌控制隨機彈射矩陣和DNA序列的圖像加密算法,該算法首先利用明文圖像和MD5 算法產(chǎn)生混沌映射的初值,然后運用Logistic 映射生成混沌序列轉(zhuǎn)化成控制質(zhì)點彈射的角度值,統(tǒng)計質(zhì)點經(jīng)過每個位置的次數(shù),生成隨機彈射矩陣;接著將分層后的明文圖像進行Arnold 置亂,對置亂后的圖像和隨機彈射矩陣進行分塊、DNA 編碼后作DNA 運算,合并后生成密文圖像。在此基礎(chǔ)上,通過直方圖分析、信息熵值分析、抗差分測試分析等實驗,表明本文提出的圖像加密算法具有很強的安全性和實用性,具有很好的應(yīng)用前景。但在加密效率方面還存在一定的提升空間,今后可針對此方面進行合理優(yōu)化。

      猜你喜歡
      明文加密算法加密
      一種基于熵的混沌加密小波變換水印算法
      奇怪的處罰
      奇怪的處罰
      認(rèn)證加密的研究進展
      基于小波變換和混沌映射的圖像加密算法
      四部委明文反對垃圾焚燒低價競爭
      Hill加密算法的改進
      基于ECC加密的電子商務(wù)系統(tǒng)
      基于格的公鑰加密與證書基加密
      穆棱市| 涡阳县| 嘉善县| 板桥市| 连南| 磐石市| 华坪县| 海晏县| 中宁县| 扎鲁特旗| 县级市| 寻乌县| 新乐市| 长春市| 杭州市| 扎兰屯市| 泾源县| 辽宁省| 开封市| 寿光市| 登封市| 治多县| 新竹县| 凯里市| 临高县| 伊宁市| 马山县| 鄂州市| 财经| 西青区| 泰来县| 大邑县| 龙山县| 富裕县| 常宁市| 建昌县| 黑水县| 锡林浩特市| 兴山县| 乌拉特后旗| 八宿县|