• 
    

    
    

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

      ?

      基于比特平面分解的圖像加密算法

      2021-05-20 01:03:12熊繼偉吳秋新
      關(guān)鍵詞:明文加密算法比特

      熊繼偉,吳秋新

      (北京信息科技大學(xué) 理學(xué)院,北京 100192)

      0 引言

      不同于文本數(shù)據(jù),數(shù)字圖像作為一種二維數(shù)據(jù),其數(shù)據(jù)量大,冗余度高,像素間相關(guān)性強(qiáng)。傳統(tǒng)的加密方法如高級(jí)加密標(biāo)準(zhǔn)(advanced encryption standard,AES)、數(shù)據(jù)加密標(biāo)準(zhǔn)(data encryption standard, DES)、RSA加密算法(Rivest, Shamir, Adleman)、國際數(shù)據(jù)加密算法(international data encryption algorithm, IDEA)等并不適合用來加密圖像[1-2]。目前,數(shù)字圖像加密算法按加密思路主要分為以下幾類:基于空間域的像素置亂、基于混沌的加密、基于變換域的加密。陳關(guān)榮等[3]提出了像素置亂和異或擴(kuò)散的加密算法,但由于此算法產(chǎn)生的混沌序列與明文無關(guān)聯(lián),導(dǎo)致加密算法可以被選擇明文攻擊破譯。鄧曉衡等在文獻(xiàn)[3]的基礎(chǔ)上提出比特置亂加密算法[4-8],既保留了原算法的優(yōu)點(diǎn),又通過比特置亂進(jìn)一步改變像素值,更好地隱藏明文統(tǒng)計(jì)特征,同時(shí)將混沌序列與明文產(chǎn)生關(guān)聯(lián),使得中間密鑰隨明文自適應(yīng)變化,能較為有效地抵御選擇明文攻擊。

      本文提出一種新的加密算法,能夠分別對(duì)不同的比特平面使用不同的置亂方式,可以有效地破壞明文的相關(guān)性,更好地隱藏明文的信息。同時(shí)密鑰和明文有很強(qiáng)的相關(guān)性,能夠抵抗文獻(xiàn)[9]所提出的攻擊方法。

      1 算法基礎(chǔ)

      1.1 混沌系統(tǒng)

      混沌現(xiàn)象是在非線性動(dòng)力系統(tǒng)中表現(xiàn)的確定性、類隨機(jī)的過程,這種過程既非周期又不收斂,并且對(duì)于初始值具有敏感依賴性。這種現(xiàn)象很契合加密算法需要的偽隨機(jī)序列的特性。

      logistic映射[10]是一種簡(jiǎn)單快速、易于實(shí)現(xiàn)的混沌映射。其表達(dá)式為

      x(n+1)=μxn(1-xn)

      (1)

      當(dāng)參數(shù)xn∈(0,1),μ∈(3.57,4]時(shí),logistics映射處于混沌狀態(tài),如圖1所示。

      圖1 混沌系統(tǒng)

      1.2 比特置亂

      由于每個(gè)圖像由8個(gè)比特平面組成,不同比特平面所占權(quán)重不同,所以包含的信息也有所差異,每個(gè)比特平面所包含的信息為

      (2)

      由式(2)可以看出,從I1到I8圖像所包含的信息逐漸增多。為了提高加密算法的抗攻擊性,首先對(duì)比特平面進(jìn)行歸一化,使用比特循環(huán)右移打亂每個(gè)平面的信息分布。歸一化之后每個(gè)平面信息分布能夠更加平均。

      2 加密算法流程

      本文提出的加密算法流程主要由以下幾部分組成:1)密鑰及混沌序列的生成;2)比特循環(huán)位移及分平面置亂;3)組合比特平面。

      加密步驟如圖2所示。首先計(jì)算出明文圖像的SHA-256值,該散列值是一個(gè)具有256 bit的值,用一個(gè)長度為64位的16進(jìn)制字符串表示。盡管兩幅圖像之間僅有任意一個(gè)bit的區(qū)別,但產(chǎn)生的散列值截然不同[11-12]。將明文圖像的散列值與密鑰進(jìn)行異或計(jì)算,通過logistic映射產(chǎn)生混沌序列用于比特循環(huán)位移與比特平面置亂。最后組合比特平面得到密文。解密算法是加密算法的逆過程。

      圖2 加密算法流程

      2.1 初始值的計(jì)算

      步驟1讀取明文圖像P(m×n),其中m,n分別為圖像P的長和寬。計(jì)算明文圖像的SHA-256值與密鑰異或計(jì)算結(jié)果H={H1,H2,…,H64}。

      步驟2由式(3)~(6)計(jì)算出logistic映射初始值x0,參數(shù)μ,以及棄置項(xiàng)個(gè)數(shù)c。

      (3)

      (4)

      (5)

      (6)

      2.2 隨機(jī)序列生成

      將式(4)和式(5)產(chǎn)生的初始值代入式(1)迭代c+9×m×n次,得到長度為c+9×m×n的隨機(jī)序列,棄置前c項(xiàng)以保證序列的隨機(jī)性,然后將迭代得到的隨機(jī)序列按順序分為9段,得到一組隨機(jī)序列t0,t1,t2,…,t8,其中每個(gè)序列的長度為m×n。

      2.3 比特循環(huán)位移

      取隨機(jī)序列t0,將原圖像P中的所有像素灰度值pi按照式(7)映射產(chǎn)生新的圖像。

      (7)

      (8)

      將比特循環(huán)位移后的圖像R的每個(gè)像素的灰度值按照式 (9)分解成為8個(gè)比特平面,得到8個(gè)分解之后的比特平面R1~R8:

      (9)

      式中:R為循環(huán)位移之后的圖像;Ri為第i個(gè)比特平面。

      對(duì)圖像進(jìn)行比特循環(huán)位移能夠使每個(gè)比特平面包含相近的信息量。從圖3和圖4可以看出,經(jīng)過比特循環(huán)位移之后的每個(gè)比特平面所包含的信息量大致相同,而未循環(huán)位移分解的比特平面的信息較多地集中于高比特平面。

      圖3 未循環(huán)位移的8個(gè)比特平面

      圖4 循環(huán)位移之后的8個(gè)比特平面

      2.4 比特平面置亂

      取隨機(jī)序列t1~t8按照算法1產(chǎn)生置亂序列v1~v8。將上節(jié)分解得到的8個(gè)比特平面R1~R8與置亂序列v1~v8應(yīng)用算法2置亂。

      算法1生成置亂序列

      輸入: 隨機(jī)序列t輸出: 置亂序列v1: l = length of t2: w = 1,2,3,4,…,l3: for i = l,…,4,3,2,1 Do4: 交換wi,wmod(ti,i-1) 5: end for

      算法2置亂

      輸出:置亂序列v, 圖像矩陣R輸入:置亂圖像矩陣R'1: l = length of v2: for i = 1,2,3,…,l Do3: R'i=Rvi4: end for

      2.5 合并比特平面

      最終密文圖像為合并置亂之后的8個(gè)比特平面:

      (10)

      3 仿真結(jié)果與分析

      選擇lena圖像,在Python3.6環(huán)境下對(duì)本文提出的算法進(jìn)行實(shí)驗(yàn)仿真,加密與解密效果如圖5 所示。

      圖5 加密與解密效果

      由圖可見,使用本文提出的算法進(jìn)行加密,密文完全隱藏明文圖像信息。下面從統(tǒng)計(jì)特征、信息熵、密鑰敏感性、明文敏感性、密鑰空間這幾個(gè)角度進(jìn)行分析對(duì)比。

      3.1 統(tǒng)計(jì)特征分析

      3.3.1 直方圖分析

      對(duì)圖像P中每個(gè)像素pi的灰度值進(jìn)行統(tǒng)計(jì),得出圖像灰度值的分布情況如圖6所示。

      圖6 直方圖統(tǒng)計(jì)

      由圖6可以看出,明文圖像的灰度值有明顯的分布規(guī)律。而經(jīng)過加密的密文圖像的直方圖各個(gè)灰度值分布得非常均勻,很好地隱藏了明文圖像的信息,使得攻擊者難以通過灰度值分布得到信息。

      3.3.2 相鄰像素相關(guān)性

      對(duì)于一個(gè)安全的圖像加密算法,應(yīng)該能夠明顯地破壞明文圖像相鄰像素的相關(guān)性。

      圖7 顯示了對(duì)隨機(jī)抽取的500個(gè)像素點(diǎn)的明文水平相鄰像素和密文水平相鄰像素的相關(guān)性。

      圖7 水平相鄰像素相關(guān)性

      由圖7可以看出,明文圖像的相鄰像素有很強(qiáng)的相關(guān)性,這是由圖像的特點(diǎn)決定的,任何一個(gè)有意義的圖像,其相鄰像素必然有很強(qiáng)的相關(guān)性。對(duì)于加密之后的圖像,其相鄰像素的相關(guān)性明顯降低。由此可見,本文提出的加密算法能夠很好地破壞圖像相鄰像素的相關(guān)性,有較高的安全性。

      3.3.3 信息熵

      信息熵[13]為

      (11)

      3.2 密鑰敏感性分析

      密鑰敏感性是指解密算法接收到的錯(cuò)誤密鑰不管與正確密鑰多接近都無法正確解密出明文的屬性。本文提出的算法在錯(cuò)誤密鑰與正確密鑰僅僅有一位不同時(shí),解密出的明文如圖8所示??梢钥闯觯疚奶岢龅乃惴▽?duì)密鑰有非常高的敏感性。

      圖8 密鑰解密效果

      3.3 明文敏感性

      明文敏感性是指加密過程中不管兩個(gè)明文有多接近,加密之后得到的密文也存在差距的屬性。

      本文采用灰度值變化率RNPC作為指標(biāo)來分析明文敏感性。原圖像加密之后明文為C1,隨機(jī)交換原圖像中兩個(gè)像素點(diǎn)的位置進(jìn)行加密之后得到的密文為C2。灰度值變化率為

      (12)

      式中M、N分別為圖像的長與寬。當(dāng)C1(i,j)=C2(i,j)時(shí)p(i,j)=0,否則p(i,j)=1。本文算法灰度值變化率為0.996,對(duì)比文獻(xiàn)[4]的0.634和文獻(xiàn)[5]的0.633,本文算法對(duì)于明文敏感性更高。

      3.4 密鑰空間

      本文提出的加密算法使用了3個(gè)參數(shù),長度分別為64,50,14。任意一個(gè)參數(shù)錯(cuò)誤都將無法解密密文。因此密鑰空間大小為2128。從安全角度來講,密鑰空間大于2100就具有較高的安全性[14],可知本算法能夠抵抗一般的窮舉攻擊。

      4 結(jié)束語

      本文提出了一種新的圖像加密算法,能夠處理任意大小的圖片,并且擁有較高的性能,對(duì)于常見的攻擊方式具有較好的抵抗能力。采用的分解比特平面的方法不僅能夠增加加密系統(tǒng)的安全性,同時(shí)也能夠提高加密解密的性能,增強(qiáng)了算法的實(shí)用性。實(shí)驗(yàn)結(jié)果表明,本文提出的加密算法對(duì)密鑰十分敏感,符合加密算法的要求。如何擴(kuò)大密鑰空間使得加密算法更加安全是我們今后研究的重點(diǎn)。

      猜你喜歡
      明文加密算法比特
      奇怪的處罰
      比特幣還能投資嗎
      海峽姐妹(2017年10期)2017-12-19 12:26:20
      比特幣分裂
      比特幣一年漲135%重回5530元
      銀行家(2017年1期)2017-02-15 20:27:20
      奇怪的處罰
      基于小波變換和混沌映射的圖像加密算法
      四部委明文反對(duì)垃圾焚燒低價(jià)競(jìng)爭(zhēng)
      Hill加密算法的改進(jìn)
      蘋果封殺比特幣應(yīng)用另有隱情?
      垫江县| 房山区| 镇安县| 柳江县| 鹿邑县| 成都市| 施秉县| 镇赉县| 凭祥市| 长兴县| 深州市| 建宁县| 平罗县| 武定县| 河北区| 集安市| 萍乡市| 瑞金市| 普格县| 清徐县| 紫云| 三门县| 金川县| 萨嘎县| 和静县| 云霄县| 湖南省| 赤峰市| 大厂| 呼伦贝尔市| 柳河县| 麻阳| 穆棱市| 黑龙江省| 望谟县| 蕉岭县| 乐至县| 嘉鱼县| 许昌市| 石门县| 修武县|