Standard映射及其三維擴(kuò)展在多媒體加密中的應(yīng)用
混沌由于其對(duì)初值敏感性、對(duì)參數(shù)敏感性、遍歷性和類(lèi)隨機(jī)性等的特點(diǎn),很適合于信息加密。T.Habutsu等使用斜帳篷映射構(gòu)造了分塊加密密碼,M.Tsueike等使用修改的二維Baker映射構(gòu)造了分塊加密密碼。但這些方法中因?yàn)橛玫捷^頻繁的浮點(diǎn)運(yùn)算,對(duì)計(jì)算機(jī)的計(jì)算精度要求高,同時(shí)也降低了計(jì)算速度。為此,一些離散化方法得到了研究,對(duì)斜帳篷映射離散化,構(gòu)造了新的密碼,F(xiàn).Picller和J.Scharinger通過(guò)離散化二維Baker映射,建立了基于混沌置亂的密碼,F(xiàn).Picmer將其擴(kuò)展到了任意尺寸的二維格形。
二維混沌映射因其與圖像位置維數(shù)相適應(yīng),廣泛用于圖像置亂和圖像加密,J.FridrichE81研究了二維Baker映射和Cat映射用于加密的方法,并分析了這2種映射的密鑰空間和密鑰可靠性,但其中的三維擴(kuò)展只針對(duì)灰度,不適合用于三維空間中的位置置亂,如視頻流、多頻段圖列等。Standard映射是一種非線(xiàn)性混沌映射,從密碼學(xué)的觀(guān)點(diǎn)來(lái)看,此映射可以提供更大的密鑰空間,正是基于這點(diǎn),本文構(gòu)造了基于Standard映射的加密方案,將二維Standard映射擴(kuò)展到三維,用于多媒體加密,并分析了它的密鑰敏感性,給出擴(kuò)散函數(shù)和循環(huán)次數(shù)的選擇等。
一、Standard映射的離散化及其三維擴(kuò)展
Standard映射:

J.FridrichE81以2Jr7N為單位,將其從區(qū)域[O,2n)×[O,2π)離散化到區(qū)域N×N,其中N為正整數(shù)。即得到:

式中,K>O且K∈Z.Fridrich將圖像灰度作為第三維,實(shí)現(xiàn)了三維擴(kuò)展,這并不能實(shí)現(xiàn)三維空間中的位置置亂,為此,我們做了新的擴(kuò)展,我們分別沿著i,j,t這三個(gè)方向做一次Standard映射后,將Standard映射擴(kuò)展到了三維,因?yàn)檫@種三維映射是以二維映射為基礎(chǔ)的,因此延續(xù)了映射的混沌特性。

式中,Ki,K2,K3>O且Ki,K2,K3∈Z。
可見(jiàn),這種三維映射與二維映射相比,有更大的參數(shù)空間,用于加密,能夠獲得更大的密鑰空間,我們將圖像灰度值排列成立方體,用這種三維映射對(duì)圖像加密,獲得了更快的置亂速度。另外,這種三維映射可以用于視頻數(shù)據(jù)、圖像序列等三維數(shù)據(jù)的置亂和加密。
二、多媒體數(shù)據(jù)加密方案
這里將Standard映射與擴(kuò)散機(jī)構(gòu)相結(jié)合,構(gòu)造了如圖1,所示的數(shù)據(jù)加密方法,即將混沌映射與擴(kuò)散函數(shù)相結(jié)合,利用混沌映射實(shí)現(xiàn)置亂功能,利用擴(kuò)散函數(shù)實(shí)現(xiàn)擴(kuò)散功能,系統(tǒng)密鑰由離散混沌映射的參數(shù)、擴(kuò)散函數(shù)的參數(shù)和加密循環(huán)次數(shù)構(gòu)成。

三、混沌映射的參數(shù)敏感性
離散化后的二維Standard映射的參數(shù)空間為K>O且K∈Z,此空間已經(jīng)很大,但并非所有的K都適合作密鑰,這要與置亂的循環(huán)次數(shù)和明文分塊大小結(jié)合考慮,使得密鑰的敏感性最好,為此,我們測(cè)試了映射參數(shù)不同、置亂循環(huán)次數(shù)以及映射區(qū)域大小對(duì)參數(shù)敏感性的影響。
此處,定義參數(shù)敏感性的一個(gè)衡量指標(biāo)Ps(K)。令原始圖像為XO(設(shè)圖像任何兩點(diǎn)的灰度值都不相同),圖像為邊長(zhǎng)Ⅳ的正方形,設(shè)映射參數(shù)K=p(p為參數(shù)空間中的任一個(gè)參數(shù),并且p>0,p∈Z)時(shí),原始圖像被映射為X1;映射參數(shù)K=p+l時(shí),原始圖像被映射為X2;映射參數(shù)K=p-1時(shí),原始圖像被映射為X3。則Ps(K)定義為:

式中:

X(i,j)為圖像中(i,j)位置處的像素值??梢詫⒂成鋮?shù)敏感性理解為映射參數(shù)輕微變化時(shí),引起的映射結(jié)果的變化,強(qiáng)度高的密碼要求這個(gè)指標(biāo)要大。
1、置亂循環(huán)次數(shù)對(duì)參數(shù)敏感性的影響
我們選擇邊長(zhǎng)為256像素的正方形區(qū)域,映射參數(shù)在1到50 000間、置亂循環(huán)次數(shù)在1到6間變化,計(jì)算出敏感性指標(biāo)變化曲線(xiàn),如圖2(a)所示,可見(jiàn),對(duì)于相同的置亂循環(huán)次數(shù)乃,參數(shù)敏感性隨著映射參數(shù)K的增大,緩慢增加;對(duì)于相同的映射參數(shù)K,參數(shù)敏感性隨著置亂循環(huán)次數(shù)n的增加,迅速增大到100%,當(dāng)n=6時(shí),Ps(K)≈100%。因此,如果選擇整個(gè)映射參數(shù)空間作為密鑰空間,要保證置亂循環(huán)次數(shù)n超過(guò)3次,密碼系統(tǒng)才更安全。
2、映射區(qū)域大小對(duì)參數(shù)敏感性的影響
測(cè)試在映射參數(shù)、置亂循環(huán)次數(shù)一定情況下,映射區(qū)域大?。ㄕ叫芜呴L(zhǎng)N)不同對(duì)參數(shù)敏感性的影響。我們選擇邊長(zhǎng)分別為32,128,256的正方形區(qū)域,分別測(cè)試了它們?cè)谥脕y循環(huán)次數(shù)為3時(shí),映射參數(shù)在1到50 000間變化的參數(shù)敏感性曲線(xiàn),如圖2(b)所示,由圖可見(jiàn),映射區(qū)域較小時(shí)(圖中為32 x 32),參數(shù)敏感性相對(duì)較小,但仍然在85070以上,映射區(qū)域大小在128×128以上時(shí),參數(shù)敏感性保持在95%左右,而且隨著置亂循環(huán)次數(shù)的增加,參數(shù)敏感性也增加。因此,使用此種映射加密,在置亂循環(huán)次數(shù)大于3時(shí),選擇的明文塊大于32×32,可以認(rèn)為是安全的。為了保持更高的密碼強(qiáng)度和系統(tǒng)安全性,可以選擇更大的明文塊,或更多的循環(huán)次數(shù)。

四、擴(kuò)散函數(shù)
傳統(tǒng)的高強(qiáng)度密碼都由置亂和擴(kuò)散過(guò)程組成,如DES,IDEA,AES等。引入擴(kuò)散結(jié)構(gòu)可以增加抗差分攻擊和選擇明文攻擊的能力,從而增加密碼強(qiáng)度,常用的擴(kuò)散方法有2種。一種是圖像中相鄰4個(gè)點(diǎn)的灰度值的擴(kuò)散,這樣,隨著置亂循環(huán)次數(shù)的增加,擴(kuò)散范圍成4的冪指數(shù)增加;另一種是按光柵掃描方式,用當(dāng)前像素灰度值與前一個(gè)相鄰的像素之間的擴(kuò)散,這種擴(kuò)散方式的擴(kuò)散速度更快,我們按照上面的方式分別設(shè)計(jì)了一種擴(kuò)散函數(shù)。
1、相鄰四點(diǎn)之間的擴(kuò)散
設(shè)相鄰4點(diǎn)為x(i,j),x(i,j+1),x(i+1,j)和x(i+1,j+1),擴(kuò)散后的對(duì)應(yīng)4個(gè)點(diǎn)為x'(i,j),x'(i,j+1),x'(i+1,j)和x'(i+1,j+1),則擴(kuò)散方程為:

解密時(shí)的反擴(kuò)散方程為:

2、相鄰2點(diǎn)之間的連續(xù)擴(kuò)散
這里使用相鄰點(diǎn)之間的擴(kuò)散,圖像采用光柵掃描順序,若Pi為擴(kuò)散前的像素值,Ci為擴(kuò)散后的像素值,三為像素灰度數(shù),則擴(kuò)散過(guò)程為:
![]()
CO由用戶(hù)密鑰中提供,解密時(shí),反擴(kuò)散過(guò)程為:
![]()
CO由用戶(hù)密鑰中提供。
我們測(cè)試了以上2種擴(kuò)散方法的擴(kuò)散速率,即明文中一個(gè)像素改變帶來(lái)的密文變化率與置亂循環(huán)次數(shù)的關(guān)系。這里的密文變化率是指明文中改變一個(gè)像素后,引起的密文的像素改變個(gè)數(shù)的百分比,我們也稱(chēng)其為擴(kuò)散率.實(shí)驗(yàn)結(jié)果表明,使用相鄰4點(diǎn)間的擴(kuò)散方法和相鄰兩點(diǎn)間連續(xù)擴(kuò)散方法,在4次循環(huán)后擴(kuò)散率均可達(dá)80%以上,這種擴(kuò)散率,對(duì)選擇明文攻擊和差分攻擊要求更高的工作量和復(fù)雜度,從而增加了攻擊難度,提高了密碼強(qiáng)度,增強(qiáng)了安全性。
五、置亂循環(huán)次數(shù)
對(duì)于將混沌映射與擴(kuò)散過(guò)程相結(jié)合的加密系統(tǒng),增加置亂循環(huán)次數(shù)具有以下優(yōu)點(diǎn):①循環(huán)映射次數(shù)越多,映射參數(shù)的敏感性就越高,擴(kuò)散函數(shù)的擴(kuò)散率也就越高,從而提高了密碼系統(tǒng)的密鑰敏感性;②增加置亂循環(huán)次數(shù),不僅能夠增加密鑰敏感性,也能夠使加密后的圖像直方圖更加均勻,從而提高了抗統(tǒng)計(jì)分析和已知密文攻擊的能力;③每次置亂采用不同的映射參數(shù)和擴(kuò)散的初始值,從而增加窮舉攻擊的難度,提高了密碼強(qiáng)度??傊?,置亂循環(huán)次數(shù)越高,密碼的強(qiáng)度也相對(duì)越高;當(dāng)然,循環(huán)次數(shù)的增加,也會(huì)帶來(lái)運(yùn)算量的增大,所以,置亂循環(huán)次數(shù)可以根據(jù)對(duì)安全性和快速性要求的不同而適當(dāng)選擇。
六、實(shí)驗(yàn)結(jié)果
1、圖像序列加密
我們用以上算法加密尺寸為240×352的圖像序列Bus,以64×64 x 64的圖像塊加密,原圖像序列和加密后圖像序列分別如圖3所示(僅列出4幅),其中,(a)和(e)分別為第1幅圖在加密前后的圖像;(b)和(f)分別為第5幅圖在加密前后的圖像;(c)和(g)分別為第9幅圖在加密前后的圖像;(d)和(h)分別為第13幅圖在加密前后的圖像,可見(jiàn),加密后圖像內(nèi)容完全不可理解。

2、時(shí)間測(cè)試
這里將本文提出的方案與DES算法做比較,測(cè)試它們加密速度的不同,運(yùn)行的計(jì)算機(jī)是1.4 GHz CPU,256 MRAM,Microsoft Windows操作系統(tǒng),采用相鄰點(diǎn)間連續(xù)擴(kuò)散時(shí),Standard映射的循環(huán)次數(shù)為3次;采用相鄰4點(diǎn)間擴(kuò)散時(shí),Standard映射的循環(huán)次數(shù)為6次,測(cè)試結(jié)果如表1所示,可見(jiàn),基于二維、三維Standard映射的加密方法與DES相比,具有更快的加密解密速度,其中,采用相鄰點(diǎn)間連續(xù)擴(kuò)散方式時(shí)的加解密速度達(dá)到1.7 Mbit7s以上,更適合用于圖像、視頻等大數(shù)據(jù)量、實(shí)時(shí)性要求高的多媒體數(shù)據(jù)的加密。

小知識(shí)之圖例
圖例是集中于地圖一角或一側(cè)的地圖上各種符號(hào)和顏色所代表內(nèi)容與指標(biāo)的說(shuō)明。



