彩色圖像文件加密之四元數(shù)

在信息安全傳榆過程中,進行圖像文件加密很重要,通過運用四元數(shù)的有關知識,我們提出了一種彩色圖像加密算法,把彩色圖像的RGB值和四元數(shù)的三個虛部的系數(shù)聯(lián)系起來,直接用一個四元數(shù)來表示彩色圖像的像素點,并運用單位四元數(shù)的作為密鑰,得到一旋轉(zhuǎn)矩陣,隨后給出了對彩色圖像文件加密的安全體制,該算法具有較強的安全性。

一、四元數(shù)簡介

1、四元數(shù)的定義

四元數(shù)的概念是1 843年由愛爾蘭數(shù)學家威廉,盧云,哈密頓提出的,明確地說,四元數(shù)是復數(shù)的不可交換延伸,它由實數(shù)加上三個元素i、j、k組成。每個四元數(shù)都是1、i、j和k的線性組合,設:

彩色圖像文件加密之四元數(shù)

其中i、j、k滿足j2= j2=k2=ijk= -1,Ij=-ji,ik=-jk=i,ki=-ik=j則稱(1)形式的數(shù)q為四元數(shù),稱a為四元數(shù)的實部,記為Re(q)=a,稱bi+ci+dk為四元數(shù)的虛部,四元數(shù)的全體Q={a十bi十cj+dk/z,b,c,d∈r) 。設qi=ai +bii +crj+dik,q2=a2+bzi+cj+d2k,則四元數(shù)的加法和乘法定義為:

彩色圖像文件加密之四元數(shù)

其中當ql或q2有一個為實數(shù)時,不妨設qi =a,則有aqz=aa2+abi +ac2j+ ad2jlc。以下是幾個四元數(shù)的有關概念:

四元數(shù)的共軛:彩色圖像文件加密之四元數(shù);四元數(shù)的模:彩色圖像文件加密之四元數(shù),把|q|=1的四元數(shù)稱為單位四元數(shù),把a=0,|q|=1的四元數(shù)稱為單位純四元數(shù)。

四元數(shù)的逆:彩色圖像文件加密之四元數(shù),則當q為單位四元數(shù)時,彩色圖像文件加密之四元數(shù)

2、四元數(shù)與旋轉(zhuǎn)

四元數(shù)有多種表示方法,如復數(shù)表示,三角形式以及矩陣表示等,對于形式為(1)的四元數(shù)它的三角形式表示為gd ql(cosθ+lsinθ),其中I2=-1,當q為單位四元數(shù)時,
有g= cosθ+lsinθ其中l(wèi)2 =-1,則此時的q稱為旋轉(zhuǎn)四元數(shù),其中秒表示旋轉(zhuǎn)角度,I表示旋轉(zhuǎn)軸,其幾何意義是以I為轉(zhuǎn)軸,使垂直于轉(zhuǎn)軸平面內(nèi)的一個矢量按右手螺旋方向
轉(zhuǎn)過2θ角度a將一向量繞某一轉(zhuǎn)軸旋轉(zhuǎn)某個角度可以用以下公式表示:

彩色圖像文件加密之四元數(shù)

或:

彩色圖像文件加密之四元數(shù)

等式(2)和(3)是等價的,Rota是下面的矩陣:

彩色圖像文件加密之四元數(shù)

二、彩色圖像文件加密方法

設原始圖像A是一幅256x256的彩色圖像,記為I(x,y),則可以用純四元數(shù)表示為:

彩色圖像文件加密之四元數(shù)

其中R(x,y),G(x,y)和B(x,y)分別代表x,y處的RGB值。

1、彩色圖像四元數(shù)旋轉(zhuǎn)變換

給定一單位四元數(shù)q作為密鑰,由(4)可得到旋轉(zhuǎn)矩陣Ror,將彩色圖像A的像素點按3x3分塊,其中每一個彩色像素都是用一個四元數(shù)(5)的形式表示,對每個分塊利用旋轉(zhuǎn)矩陣進行變換得到三階四元數(shù)矩陣B=RowXA。

2、四元數(shù)矩陣預處理

變換之后的三階四元數(shù)矩陣B中的系數(shù)如果均在0·256之間,則B直接進入3.3進行處理,如果存在不屬于0-256之間的數(shù),則把B中的每個元素系數(shù)加上B中最大的負數(shù)的絕對值得到正矩陣B’,分別對B'中的每一個元素對256進行取模和取整處理,得到矩陣Bnxx和Buu,這樣Bmoci和Bint。的每一個元素都在0-256之間。

3、加密圖像文件

有定義1:對給定的n階數(shù)字圖像P,變換:

彩色圖像文件加密之四元數(shù)

aij為 整數(shù),而x1...xn∈{0,1,…,N-1))關于P的周期為mN,mN是使得圖像P經(jīng)一系列變換后恢復到P的最少次數(shù)。

定理1以上變換有周期性的充分必要條件為IAI與N互素,其中A是變換矩陣,|A|是矩陣的行列式。

式(6)中的XI∈[1,N-1]∈Z+,把再從正整數(shù)域擴展到四元數(shù)域,即有:

定義2對給定的n階數(shù)字圖像P,變換:

彩色圖像文件加密之四元數(shù)

其中aij為整數(shù),q1,…,qn為四元數(shù),其中關于P的周期為mN。圖1即加密算法流程圖。

彩色圖像文件加密之四元數(shù)

三、解密圖像

解密圖像算法和加密圖像相反,接收者把收到的圖像分成上下兩部分Bmod和Bint,根據(jù)得到的密鑰k對Bmod進行k次矩陣變換到Bint,Bint進行k次矩陣變換到Bint,由Bmod和Bint即可得到矩陣B,根據(jù)所提供的四元數(shù)得到旋轉(zhuǎn)矩陣,從而恢復出原彩色圖像的四元數(shù)矩陣,進而恢復原圖像。

小知識之四元數(shù)

四元數(shù)是最簡單的超復數(shù)。?復數(shù)是由實數(shù)加上元素 i 組成,其中i^2 = -1。 相似地,四元數(shù)都是由實數(shù)加上三個元素 i、j、k 組成,而且它們有如下的關系: i^2 = j^2 = k^2 = ijk = -1 , 每個四元數(shù)都是 1、i、j 和 k 的線性組合,即是四元數(shù)一般可表示為a + bi + cj + dk,其中a、b、c 、d是實數(shù)。