亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于混沌的恩尼格瑪加密方法

文檔序號(hào):7982102閱讀:238來源:國知局
專利名稱:基于混沌的恩尼格瑪加密方法
技術(shù)領(lǐng)域
本發(fā)明涉及加密系統(tǒng),用于數(shù)據(jù)與信息保護(hù),特別涉及一種基于混沌的恩尼格瑪加密方法。
背景技術(shù)
恩尼格瑪(Enigma)的加密機(jī)制恩尼格瑪(Enigma)是一臺(tái)便攜式的電子機(jī)械裝置,其內(nèi)部的主要結(jié)構(gòu)如圖1所示,為了描述其加密原理,簡化為只取六個(gè)字母的內(nèi)部結(jié)構(gòu)示意圖2,在圖2中可以看到,恩尼格瑪(Enigma)主要分為鍵盤(Keyboard)、轉(zhuǎn)子 (Scrambler Unit)和顯示器(Lamp Board)三個(gè)部分。每個(gè)轉(zhuǎn)子左右對(duì)應(yīng)關(guān)系是不一樣的, 且均可以逆時(shí)針旋轉(zhuǎn)。加密時(shí),需要先設(shè)置好三個(gè)轉(zhuǎn)子的初始位置作為密鑰,由鍵盤鍵入明文,經(jīng)過三個(gè)轉(zhuǎn)子的替換,相應(yīng)的密文在顯示器上顯示,所述的轉(zhuǎn)子,是指明文與其置換輸出值之間的映射關(guān)系,為方便解釋映射關(guān)系,將其抽象為轉(zhuǎn)子在圖中顯示。在每個(gè)明文被加密后,第一個(gè)轉(zhuǎn)子就自動(dòng)地逆時(shí)針轉(zhuǎn)動(dòng)一個(gè)字母的位置。當(dāng)?shù)谝粋€(gè)轉(zhuǎn)子轉(zhuǎn)過一個(gè)周期后,會(huì)有一個(gè)齒撥動(dòng)第二個(gè)轉(zhuǎn)子逆時(shí)針轉(zhuǎn)過一個(gè)字母位置,依次往下, 如圖2所示,給出的是簡化為三個(gè)轉(zhuǎn)子的情況。恩尼格瑪(Enigma)的設(shè)計(jì)使譯碼的過程和編碼的過程比較容易實(shí)現(xiàn)。由加密過程可以看出,Enigma不是一種簡單替換密碼。同一個(gè)字母在明文的不同位置時(shí),可以被不同的字母替換,而密文中不同位置的同一個(gè)字母,可以代表明文中的不同字母,這就使密碼分析中的頻率分析法在這里失去了作用。恩尼格瑪(Enigma)加密時(shí)轉(zhuǎn)子左右對(duì)應(yīng)關(guān)系的生成方式近似非線性機(jī)制,從而加密有限長度的明文得到的密文大致呈現(xiàn)均勻分布。上述這種電子機(jī)械裝置,對(duì)明文的長度要求是有一定的限制的,一但明文長度過長,就要通過增加電子機(jī)械裝置的體積的方式來保證加密方法的安全性,體積過大又導(dǎo)致不便于使用,致使這種結(jié)構(gòu)的電子機(jī)械裝置很難被廣泛使用。目前采用的方法,是在原來電子機(jī)械裝置的基礎(chǔ)上,通過電路系統(tǒng)實(shí)現(xiàn)出來,如圖 3所示,這種電路系統(tǒng)的實(shí)現(xiàn)克服了以往需要以犧牲體積方式來實(shí)現(xiàn)的缺點(diǎn),但是無論原始機(jī)械Enigma還是現(xiàn)在的電路式Enigma實(shí)現(xiàn)方法都存在兩個(gè)主要的問題使其在現(xiàn)代技術(shù)下不安全(1)當(dāng)較長的明文由Enigma加密后,得到的密文分布不均勻,呈現(xiàn)出一定的周期性特征,這比較容易被破解;(2)另一個(gè)問題是Enigma幾乎不存在擴(kuò)散性,即改變明文的lbit,得到的密文中, 只有改變的明文對(duì)應(yīng)的密文是變化的,其他密文和原來的密文(沒改變明文時(shí)加密得到的)相同,這很容易利用差分攻擊破解,不具備雪崩效應(yīng)的特性。

發(fā)明內(nèi)容
針對(duì)現(xiàn)有方法存在的不足,本發(fā)明提出一種基于混沌的恩尼格瑪加密方法,以克服恩尼格瑪加密密文易被破解的缺陷。
本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的本發(fā)明基于混沌的恩尼格瑪加密方法,包括以下步驟步驟1 設(shè)置初始參數(shù),所述初始參數(shù)包括明文與其置換輸出值之間的映射關(guān)系、第一密鑰和第二密鑰;步驟1-1 建立明文與其置換輸出值之間的映射關(guān)系,公式為Y1 = f1 (χ), y2 = f2(x), -"Yi = fi(x), yi+1 = fi+1(x), ...yN = fN(x);式中,yi = fi (x)表示第i個(gè)映射關(guān)系,即整數(shù)數(shù)組第X位置對(duì)應(yīng)的元素整數(shù)值為其中,X表示整數(shù)數(shù)組元素的位置,所述的整數(shù)數(shù)組共有M+1個(gè)元素,X的取值為O-M之
間的整數(shù);y表示整數(shù)數(shù)組內(nèi)元素的整數(shù)值,所述數(shù)組內(nèi)的M+1個(gè)元素值都不相同,且y的取值也為O-M之間的整數(shù);N表示映射個(gè)數(shù);所述的映射關(guān)系yi = fi (χ)由隨機(jī)函數(shù)產(chǎn)生;所述的N個(gè)不同的映射關(guān)系A(chǔ)O^f2(X),... &00,&+100,...fN(x)共有N !種不同順序的排列方式;步驟1-2 確定第一密鑰為任意0-1之間的小數(shù);步驟1-3 確定第二密鑰,方法為取步驟1-1中N !種不同順序的排列方式中的一種排列作為第二密鑰;步驟2 采用混沌映射方法,確定混沌狀態(tài)值,方法為將第一密鑰作為邏輯斯蒂克(Logistic)混沌映射的初值,對(duì)其進(jìn)行η次迭代,得到混沌狀態(tài)值,公式如下an+1 = μ XanX (l-an) 0 < an < 1, η = 1,2,3— (1)式中, η+1為混沌狀態(tài)值,知為前一次迭代的混沌狀態(tài)值,μ為分支參數(shù),當(dāng) 3.5699456···< μ < 4時(shí),系統(tǒng)進(jìn)入混沌狀態(tài),μ越接近4,其隨機(jī)性越好,并且呈現(xiàn)出類似白噪聲的統(tǒng)計(jì)特性;步驟3 利用步驟2計(jì)算得到的狀態(tài)值an+1 (0-1的小數(shù)),把a(bǔ)n+1轉(zhuǎn)化為8N比特 (bit)的二進(jìn)制,并將每8個(gè)比特(bit)轉(zhuǎn)化為一個(gè)十進(jìn)制整數(shù),共得到N個(gè)整數(shù),公式如下
“‘ ^8 ^ΦV)…辦 16 …辦4#-7辦4#-6 . · .
、ν八γj、γy
Kk2kNZli = (Iii)10 i = 1,2,...N (2)式中,I3i為iin+1轉(zhuǎn)化得到的第i位二進(jìn)制,Ici為b4i_7b4i_6…b4i組成的二進(jìn)制數(shù)串, 所述的每個(gè)二進(jìn)制串共有8位,Zli為二進(jìn)制串Ici對(duì)應(yīng)的十進(jìn)制整數(shù),共確定Zn、Z12j13、… Zin共N個(gè)整數(shù);步驟4 確定第二密鑰中各映射的置換輸出值yi;方法如下利用步驟3得到的Z11與第一位明文P1,將二者帶入如下公式進(jìn)行計(jì)算(Z1^p1) modM將計(jì)算結(jié)果作為步驟1-3所確定第二密鑰中第一個(gè)位置上的映射t = fj(x) (1彡j彡N)的輸入,確定置換輸出值為y」=^.((Zn+p^modM);利用步驟3得到的Z11和Z12,將二者帶入如下公式進(jìn)行計(jì)算
(yj+Z12-Zn+M) modM將計(jì)算結(jié)果作為第二密鑰中第二個(gè)位置上的映射yi = (χ) (1彡1彡N,且1興j) 的輸入,確定置換輸出值為Y1 = f1((yJ.+Z12-Z11+M)modM);利用步驟3得到的和Z13,將二者帶入如下公式進(jìn)行計(jì)算(y^Z^-Z^+M) modM將計(jì)算結(jié)果作為第二密鑰中第三個(gè)位置上的映射ye = fe(x) (1彡e彡N,且 e ^ 1 ^ j)的輸入,確定置換輸出值為ye = fe((yi+Z13-Z12+M)modM);采用上面的方法,直至計(jì)算出第二密鑰最后一個(gè)位置上的映射yg= fg(x) (1彡g彡N,且g乒...的置換輸出值yg ;步驟5 確定第一位明文P1加密后得到密文C1,公式如下C1 = (yg-z1N+M) mod M (3)式中,yg為步驟4得到的最后一個(gè)置換輸出值,Zin為步驟3得到的N個(gè)整數(shù)中的最后一個(gè)整數(shù);步驟6 對(duì)明文的第2 第i位進(jìn)行加密,其中i > 1,利用混沌映射方法對(duì)步驟2 計(jì)算得到的an+1進(jìn)行i-Ι次公式⑴的迭代,確定an+i ;步驟7 采用步驟3的方法,利用步驟6計(jì)算出的結(jié)果an+i,重新確定N個(gè)整數(shù)值;步驟8 重新確定第二密鑰,公式如下Oi =十 Pi—2 十".^PmodiV!(4)式中,Pl,p2,...Ph為第i個(gè)明文之前的明文;Oi為步驟1中N !個(gè)排列順序中第 (Pi-I P,-, ·..A) mod/V!個(gè)排列方式;步驟9 采用步驟4的方法,利用步驟7確定的整數(shù)、步驟8確定的第二密鑰和明文Pi進(jìn)行運(yùn)算,得到明文Pi對(duì)應(yīng)的密文Ci ;步驟10 反復(fù)執(zhí)行步驟6 步驟9進(jìn)行加密,最終得到密文ClC2(v"Ci_lCiCi+r"Cn;為了有更好的擴(kuò)散性,良好的雪崩效應(yīng),可以添加第二輪加密,即把上面得到的密文作為明文,從最后一位(從后往前)采用上面同樣的方法步驟加密,步驟8中公式改為O1 = (cn 十 Cp1 十…mod 岸?、鞘街校琧n, Cn^1, -cn_i+1為第i個(gè)密文之后的密文;0i為步驟1中N !個(gè)排列順序中第(Cn十CV1十…Cm) mod/V!個(gè)排列。本發(fā)明優(yōu)點(diǎn)本發(fā)明基于混沌的恩尼格瑪加密方法,改善了 Enigma具有的周期性問題,通過混沌映射來擴(kuò)大周期,每次每位明文加密時(shí)映射的輸入值由混沌映射的狀態(tài)值來決定,那樣即使很長的明文也很難出現(xiàn)周期性特征;密碼的分布更好,本發(fā)明在Enigma 加密方法中結(jié)合了非線性混沌映射,使其過程完全非線性化,生成密文隨機(jī)性更好;由于每位密文都與前面加密過的明文相關(guān),所以即使對(duì)明文微小的修改也會(huì)帶來密文極大的改變,有很好的雪崩效應(yīng),并且在文字、圖像等多種媒介上都能廣泛應(yīng)用。其加密結(jié)果在加密效果及其直方圖、相鄰像素相關(guān)性分析、差分攻擊分析和對(duì)文本加密上都有很好的表現(xiàn)。


圖1 (a)為傳統(tǒng)的恩尼格瑪加密方法傳統(tǒng)電子機(jī)械結(jié)構(gòu)示意圖;圖1 (b)為傳統(tǒng)的恩尼格瑪加密方法傳統(tǒng)電子機(jī)械結(jié)構(gòu)對(duì)應(yīng)的平面示意圖2(a)為傳統(tǒng)的恩尼格瑪加密方法傳統(tǒng)電子機(jī)械結(jié)構(gòu)內(nèi)部結(jié)構(gòu)示意圖;圖2(b)為傳統(tǒng)的恩尼格瑪加密方法傳統(tǒng)電子機(jī)械結(jié)構(gòu)內(nèi)部結(jié)構(gòu)平面示意圖;圖3為本發(fā)明基于混沌的恩尼格瑪加密方法Enigma采用的電路系統(tǒng)示意圖;圖4為本發(fā)明實(shí)施例中基于混沌的恩尼格瑪加密方法加密的原始灰度圖;圖5為本發(fā)明基于混沌的恩尼格瑪加密方法的流程圖;圖6為本發(fā)明基于混沌的恩尼格瑪加密方法的Lena加密圖;圖7為本發(fā)明基于混沌的恩尼格瑪加密方法的Lena圖灰度直方圖;圖8為本發(fā)明基于混沌的恩尼格瑪加密方法的Lena加密圖灰度直方圖;圖9為本發(fā)明基于混沌的恩尼格瑪加密方法原始加密方法得到的灰度直方圖。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說明。本實(shí)施例中對(duì)灰度圖進(jìn)行加密,如圖4所示,灰度圖的大小為512X512,格式為 Lena, bmp,圖4共有512 X 512個(gè)像素點(diǎn),每個(gè)像素點(diǎn)灰度值都為一個(gè)0-255之間的整數(shù),把圖4中像素點(diǎn)灰度值按照從上到下和從左到右的原則提取出來得到一個(gè)512X512的整數(shù)數(shù)組作為明文。本實(shí)施例采用基于混沌的恩尼格瑪加密方法,包括以下步驟步驟1 設(shè)置初始參數(shù)本實(shí)施例中設(shè)置有4個(gè)映射關(guān)系對(duì)明文進(jìn)行置換;步驟1-1 建立 4 個(gè)映射關(guān)系 I1 = (χ) ,J2 = f2 (χ) ,y3 = f3 (χ),y4 = f4 (X),映射關(guān)系y = fi(x)由隨機(jī)函數(shù)randomO得到,χ為0-255的整數(shù),表示一個(gè)整數(shù)數(shù)組中元素的位置,共256個(gè)元素;y也為0-255的整數(shù),表示整數(shù)數(shù)組內(nèi)元素的整數(shù)值,數(shù)組內(nèi)256個(gè)元素值都不相同;由隨機(jī)函數(shù)randomO生成的4個(gè)不同的映射關(guān)系f工(χ),f2 (χ),f3 (χ),f4(χ) 按不同順序有 24 個(gè)排列方式,如 (χ) -f2 (χ) -f3 (χ) -f4 (χ),fi (χ) -f2 (χ) -f4 (χ) -f3 (χ),f! (x )"f3 (X) "f2 (X) "f4(x)......f4 (X) "f3 (X) "f2 (X) "fi (X),共 24 種排列方式;步驟1-2 第一密鑰為0-1之間的小數(shù),本實(shí)施例中設(shè)置第一密鑰為0. 23456 ;步驟1-3 設(shè)置第二密鑰取步驟1-1的4個(gè)排列方式中的一個(gè) f2 (χ) -f3 (χ) (χ) "f4 (χ)即 2-3-1-4 作為第二密鑰;步驟2 采用混沌映射方法,確定混沌狀態(tài)值,方法為第一密鑰作為混沌映射Logistic映射的初值,進(jìn)行500次迭代,得到混沌狀態(tài)值, 公式如下an+1 = μ XanX (l-an) 0 < an < 1, η = 1,2,3— (1)式中ειη+1為混沌狀態(tài)值,取μ = 4 ;步驟3 利用步驟2計(jì)算得到的狀態(tài)值a +1 (0_1的小數(shù)),把a(bǔ)n+1轉(zhuǎn)化為32bit的二進(jìn)制,進(jìn)而每8bit轉(zhuǎn)化為一個(gè)十進(jìn)制的整數(shù),共得到4個(gè)整數(shù),計(jì)算公式如下
權(quán)利要求
1.基于混沌的恩尼格瑪加密方法,其特征在于包括以下步驟 步驟1 設(shè)置初始參數(shù),所述初始參數(shù)包括明文與其置換輸出值之間的映射關(guān)系、第一密鑰和第二密鑰;步驟2 采用混沌映射方法,確定混沌狀態(tài)值,方法為將第一密鑰作為邏輯斯蒂克Logistic混沌映射的初值,對(duì)其進(jìn)行η次迭代,得到混沌狀態(tài)值,公式如下an+1 = μ XanX (l-an) 0 < an < 1, η = 1,2,3- (1) 式中,^V1為混沌狀態(tài)值,知為前一次迭代的混沌狀態(tài)值,μ為分支參數(shù),當(dāng) 3. 5699456···< μ < 4時(shí),系統(tǒng)進(jìn)入混沌狀態(tài),μ越接近4,其隨機(jī)性越好;步驟3 利用步驟2計(jì)算得到的狀態(tài)值an+1 (0-1的小數(shù)),把a(bǔ)n+1轉(zhuǎn)化為8N比特(bit) 的二進(jìn)制,并將每8個(gè)比特(bit)轉(zhuǎn)化為一個(gè)十進(jìn)制整數(shù),共得到N個(gè)整數(shù),公式如下kIk2kNZli = (Iii)10 i = 1,2,…N(2)式中,h為iin+1轉(zhuǎn)化得到的第i位二進(jìn)制,Ici為b4i_7b4i_6…b4i組成的二進(jìn)制數(shù)串,所述的每個(gè)二進(jìn)制串共有8位,Zli為二進(jìn)制串Ici對(duì)應(yīng)的十進(jìn)制整數(shù),共確定Z11, Z12, Z13、…Zin 共N個(gè)整數(shù);步驟4 確定第二密鑰中各映射的置換輸出值yi;方法如下 利用步驟3得到的Z11與第一位明文P1,將二者帶入如下公式進(jìn)行計(jì)算 (Z1^p1) modM將計(jì)算結(jié)果作為步驟1-3所確定第二密鑰中第一個(gè)位置上的映射L = fj(x)的輸入, 其中1彡j彡N,確定置換輸出值為y」=^.((Zn+p^modM);利用步驟3得到的Z11和Z12,將二者帶入如下公式進(jìn)行計(jì)算 (yj+Z12-Zn+M) modM將計(jì)算結(jié)果作為第二密鑰中第二個(gè)位置上的映射Y1 = ^(x)的輸入,其中1 < 1 <N, 且 1 Φ j,確定置換輸出值為 Y1 = f1((yJ+Z12-Z11+M)modM);利用步驟3得到的Z12和Z13,將二者帶入如下公式進(jìn)行計(jì)算 (Yi+Z^-Z^+M) modM將計(jì)算結(jié)果作為第二密鑰中第三個(gè)位置上的映射Ie = fe(x)的輸入,其中1 < e < N, 且e乒1乒j,確定置換輸出值為ye = fe((yi+Z13-Z12+M)modM);采用上面的方法,直至計(jì)算出第二密鑰最后一個(gè)位置上的映射yg = fg(x)的置換輸出值yg,其中1彡g彡N,且g乒...^ 1 ^ j ;步驟5 確定第一位明文P1加密后得到密文C1,公式如下 C1 = (yg-z1N+M)mod M (3)式中,Yg為步驟4得到的最后一個(gè)置換輸出值,Zin為步驟3得到的N個(gè)整數(shù)中的最后一個(gè)整數(shù);步驟6 對(duì)明文的第2 第i位進(jìn)行加密,其中i > 1,利用混沌映射方法對(duì)步驟2計(jì)算得到的an+1進(jìn)行i-Ι次公式⑴的迭代,確定an+i ;步驟7 采用步驟3的方法,利用步驟6計(jì)算出的結(jié)果an+i,重新確定N個(gè)整數(shù)值;步驟8 重新確定第二密鑰,公式如下Oi =十 Pi—2 十.·· ^1) mod/V!(4)式中,P1, P2,…Ph為第i個(gè)明文之前的明文;0i為步驟1中N !個(gè)排列順序中第 (Pi-I P,-, ·..A) mod/V!個(gè)排列方式;步驟9 采用步驟4的方法,利用步驟7確定的整數(shù)、步驟8確定的第二密鑰和明文Pi 進(jìn)行運(yùn)算,得到明文Pi對(duì)應(yīng)的密文Ci ;步驟10 反復(fù)執(zhí)行步驟6 步驟9進(jìn)行加密,最終得到密文Clc2(vCi_lCi(vr"Cn ; 步驟11 反復(fù)執(zhí)行步驟1 步驟10,進(jìn)行多輪加密。
2.根據(jù)權(quán)利要求1所述的基于混沌的恩尼格瑪加密方法,其特征在于步驟1所述的設(shè)置明文與其置換輸出值之間的映射關(guān)系,方法為步驟1-1 建立明文與其置換輸出值之間的映射關(guān)系,公式為 ii = fi (χ),y2 = f2 (χ),... Yi = fi (χ),yi+i = fi+i (χ),... yN = fN (χ); 式中,Ii = fi(x)表示第i個(gè)映射關(guān)系,即整數(shù)數(shù)組第χ位置對(duì)應(yīng)的元素整數(shù)值為其中,χ表示整數(shù)數(shù)組元素的位置,所述的整數(shù)數(shù)組共有M+1個(gè)元素,χ的取值為O-M之間的整數(shù);y表示整數(shù)數(shù)組內(nèi)元素的整數(shù)值,所述數(shù)組內(nèi)的M+1個(gè)元素值都不相同,且y的取值也為O-M之間的整數(shù);N表示映射個(gè)數(shù);所述的映射關(guān)系Ii = ^ (χ)由隨機(jī)函數(shù)產(chǎn)生;所述的N個(gè)不同的映射關(guān)系(χ),f2 (χ),· · · fi (χ),fi+1 (χ),· · · fN (χ)共有N !種不同順序的排列方式;步驟1-2 確定第一密鑰為任意0-1之間的小數(shù);步驟1-3 確定第二密鑰,方法為取步驟1-1中N !種不同順序的排列方式中的一種排列作為第二密鑰。
3.根據(jù)權(quán)利要求1所述的基于混沌的恩尼格瑪加密方法,其特征在于步驟11所述的多輪加密,方法為將上一輪得到的密文作為明文,從最后一位即從后往前采用步驟1 步驟10的方法進(jìn)行加密,其中,步驟8中公式修改為Oi = ^n 十 h 十…/+1)mod#!(5)式中,cn, Cn^1, -cn_i+1為第i個(gè)密文之后的密文;0i為步驟1中N !個(gè)排列順序中第 (cn十CV1十…Cw1) mod/V!個(gè)排列。
全文摘要
基于混沌的恩尼格瑪加密方法,涉及加密系統(tǒng),用于數(shù)據(jù)與信息保護(hù),本發(fā)明方法,改善了Enigma具有的周期性問題,通過混沌映射來擴(kuò)大周期,每次每位明文加密時(shí)映射的輸入值由混沌映射的狀態(tài)值來決定,那樣即使很長的明文也很難出現(xiàn)周期性特征;密碼的分布更好,本發(fā)明在Enigma加密方法中結(jié)合了非線性混沌映射,使其過程完全非線性化,生成密文隨機(jī)性更好;由于每位密文都與前面加密過的明文相關(guān),所以即使對(duì)明文微小的修改也會(huì)帶來密文極大的改變,有很好的雪崩效應(yīng),并且在文字、圖像等多種媒介上都能廣泛應(yīng)用。其加密結(jié)果在加密效果及其直方圖、相鄰像素相關(guān)性分析、差分攻擊分析和對(duì)文本加密上都有很好的表現(xiàn)。
文檔編號(hào)H04L9/00GK102412960SQ201110373139
公開日2012年4月11日 申請(qǐng)日期2011年11月21日 優(yōu)先權(quán)日2011年11月21日
發(fā)明者于海, 劉國奇, 卜超, 朱志良 申請(qǐng)人:東北大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1