基于虹膜特征密鑰的營(yíng)房信息加密

在軍隊(duì)后勤信息化建設(shè)中,營(yíng)房勤務(wù)信息化是重要的組成部分,為解決營(yíng)房信息化中信息安全面臨的嚴(yán)峻形勢(shì)和傳統(tǒng)加密手段的安全隱患,提出一種基于虹膜特征密鑰的信息加密算法。從人體虹膜中提取375位虹膜特征碼,然后從特征碼中提取加密密鑰用于營(yíng)房信息加密。

一、虹膜預(yù)處理

虹膜預(yù)處理包括圖像采集、虹膜定位、歸一化步驟,采集的原始人眼圖像除虹膜外,還包括瞳孔、眼瞼和睫毛,所以需要虹膜定位提取虹膜環(huán)狀紋理,并且去除睫毛、眼瞼和光斑等干擾。為克服瞳孔縮放等因素引起的差異,便于比對(duì),將虹膜圖像歸一化為固定大小的矩形圖像。圖1為虹膜預(yù)處理過程。

基于虹膜特征密鑰的營(yíng)房信息加密

二、圖像的二維離散小波變換

二維離散小波變換將圖像分解成近似分量和細(xì)節(jié)分量。分解的尺度函數(shù)φj,m,(x,y)和小波函數(shù)ψiφj,m,(x,y)為:

基于虹膜特征密鑰的營(yíng)房信息加密

(2)式中的i標(biāo)識(shí)三個(gè)方向敏感性小波,度量不同方向圖像強(qiáng)度的變化,H為水平方向,V為垂直方向,D為對(duì)角線方向。

尺寸為MXN的圖像f(x,y)的二維離散小波變換為:

基于虹膜特征密鑰的營(yíng)房信息加密

jo是任意的起始尺度,一般選j0=0,Wφ(jo,m,n)定義了在尺度j0的近似系數(shù),wψj(j,m,n)對(duì)于j≥j0定義了不同方向的細(xì)節(jié)系數(shù),一般選擇N=M=2j,j=0,1,2,J-1 m,n=0,1,2,,2J-1。

對(duì)圖像進(jìn)行二維離散小波變換是從高尺度向低尺度進(jìn)行的,如圖2所示.

基于虹膜特征密鑰的營(yíng)房信息加密

每一級(jí)小波分解得到近似系數(shù)LL(對(duì)應(yīng)W(p),以及細(xì)節(jié)系數(shù)HH HL和LH(分別對(duì)應(yīng)W\vD,WlyH,和Wlvv);而下一級(jí)的分解是在上一級(jí)的低頻系數(shù)LL上展開的,類似對(duì)LL進(jìn)一步分解可以得到更低尺度下的系數(shù)。

三、虹膜特征提取

對(duì)虹膜歸一化圖像分析,如圖3(a)所示,R1區(qū)域受上眼瞼和睫毛干擾較嚴(yán)重,R2區(qū)域受下眼瞼干擾,且虹膜紋理主要集中在靠近瞳孔的區(qū)域,所以選擇歸一化圖像的右上部R3區(qū)域?yàn)樘卣魈崛^(qū)域,歸一化圖像大小為100400,R3區(qū)域大小一般不小于歸一化圖像大小的1/6,這里取40×200。

現(xiàn)有大多文獻(xiàn)采用Gabor小波提取虹膜特征,為了提高編碼效率,本文采用最簡(jiǎn)單的Haar小波提取特征,同時(shí)Haar小波具有正交性、緊致性及廣義線性相位特點(diǎn)。對(duì)R3區(qū)域利用圖3(b)所示二維Haar小波進(jìn)行三級(jí)分解,得到近似系數(shù)LL3,LH={LH1,LH2,LH3}、垂直細(xì)節(jié)系數(shù)HL={HL1,HL2,HL3}和對(duì)角細(xì)節(jié)HH={HH1,HH2,HH3}。如3(c)所示。

基于虹膜特征密鑰的營(yíng)房信息加密

虹膜紋理信息主要集中在細(xì)節(jié)系數(shù)上,如果把第一或第二層的細(xì)節(jié)系數(shù)作為特征,導(dǎo)致特征空間過大,會(huì)影響編碼效率,經(jīng)過大容量樣本實(shí)驗(yàn),發(fā)現(xiàn)提取第三層的細(xì)節(jié)系數(shù)LH3,HL3和HH3作為特征較合適,每個(gè)細(xì)節(jié)系數(shù)大小為(40×200)/(23×23)=125,三個(gè)方向的高頻分量大小為125×3=375。

對(duì)這375個(gè)小波系數(shù)分析,有正有負(fù),而小波系數(shù)表示小波與信號(hào)的相似程度,正小波系數(shù)與負(fù)小波系數(shù)描述的相似程度截然不同,故利用該性質(zhì)對(duì)375個(gè)特征系數(shù)進(jìn)行二進(jìn)制編碼,設(shè)C={LH3,HL3,HH3}為虹膜特征空間,特征空間元素C(i)的編碼規(guī)則為:

基于虹膜特征密鑰的營(yíng)房信息加密

通過以上編碼方式,共形成375bits IYJ虹膜特癥碼,與Daugman的2048bits虹膜特征制碼相比產(chǎn)提高了編碼效率,特征空間比較緊湊,節(jié)省了模板存儲(chǔ)空間,與Lim的87bits虹膜特征碼相比,更加充分描述了紋理特征。

四、加密密鑰提取

采用以下隨機(jī)函數(shù)從所提取的虹膜特征碼中生成密鑰。

基于虹膜特征密鑰的營(yíng)房信息加密

j為虹膜特征碼序列的下標(biāo),Zr定義為偽隨機(jī)整數(shù)且O<zr<107。m為虹膜特征碼長(zhǎng)度,這里是375。選取AES密鑰長(zhǎng)度為128bit,即n=128。通過(6)式映射得到128bit密鑰,如圖4所示。

基于虹膜特征密鑰的營(yíng)房信息加密

五、基于虹膜特征密鑰的信息加密過程

AES算法是一種明文分組長(zhǎng)度和密鑰長(zhǎng)度均可變的分組加密算法,同時(shí)也是對(duì)稱加密算法,其加密、解密過程如圖5所示。

基于虹膜特征密鑰的營(yíng)房信息加密

其加密和解密使用的密鑰相同,其分組長(zhǎng)度和密鑰長(zhǎng)度都分別可為128位、192位或256位。

設(shè)一幅灰度數(shù)字圖像可用矩陣f(i,j)表示,圖像的 大小為M×Ⅳ,其中0≤f≤M-1,0≤j≤n-1,f(i,j)表示圖像在第i行第j列處像素的灰度值,共有28=256個(gè)等級(jí),取值范圍是[0~255]。由于AES算法中的明文輸入是以字節(jié)為元素的16字節(jié)矩陣,矩陣元素的取值范圍也是[0~255],這與灰度圖像像素的灰度值范圍一致,因此,本文將AES算法中的密鑰異或、字節(jié)代換、行移 位和列混淆應(yīng)用到數(shù)字圖像加密,要包括三部分內(nèi)容:

(1)利用密鑰異或?qū)崿F(xiàn)圖摻像素變換;

(2)利用字節(jié)代換來完成圖像像素的替代,起到混亂的作用;

(3)采用行移位和列混沌來完成圖像像素的置換,起到混亂之上的高度擴(kuò)散。

六、加密效果與分析

1、加密效果分析

利用所提取的128位密鑰充當(dāng)AES密鑰對(duì)野營(yíng)裝備圖像加密,明文分組為128位(16字節(jié)),對(duì)于圖像就是以4×4像素子塊為加密分組。實(shí)驗(yàn)結(jié)果如圖5所示,野營(yíng)裝備圖像大小為400像素×280像素。

對(duì)圖6(d)分析,加密圖像的直方圖分布較平坦,接近均勻分布,那么可以認(rèn)為圖像信號(hào)比較隨機(jī),加密圖像的可讀性越差,還原的可能性就更小了,也就是說加密后圖像更安全。

基于虹膜特征密鑰的營(yíng)房信息加密

2、與Arnold變換加密安全性的比較

采用Arnold變換對(duì)圖6(a)所示野營(yíng)裝備圖像進(jìn)行置亂加密,由于Arnold變換要求輸入圖像為方陣圖像,所以在圖6(a)中截取帶有重要信息的圖像方塊(280像素×280像素)。

根據(jù)置亂度定義分別計(jì)算兩種算法加密圖像后的置亂度。

μiris為本文提出算法加密圖像后的置亂度,μarnold為Arnold變換加密圖像后的置亂度。本文加密算法加密圖像后的置亂度,μiris大于Arnold變換加密圖像后的置亂度μarnold,根據(jù)置亂度定義,置亂度值越大,表示加密信息越不容易破解,加密安全性越高。本文提出的加密算法在加密安全性上較Arnold變換高。

小知識(shí)之Arnold變換

Arnold變換是一種常用的圖像置亂技術(shù),Arnold變換的定義如下:
對(duì)任意N*N矩陣(所有元素都相同的矩陣除外),設(shè)i,j為矩陣元素原始下標(biāo),經(jīng)過Arnold變換后新下標(biāo)為i',j',且滿足下式:
i'=(i+j)mod N
j'=(i+2j)mod N
i,j:0,1,.........N-1
Arnold變換具有周期性,即經(jīng)過若干次變換后,矩陣回到最初狀態(tài),且周期T與N的大小有關(guān)。理論基礎(chǔ)沒找到,但可以用程序來進(jìn)行計(jì)算,可以設(shè)i,j從一個(gè)點(diǎn)出發(fā),不斷使用以上變換,再次回到這個(gè)起點(diǎn)時(shí),經(jīng)歷的變換次數(shù)就是周期。