信息文件加密過(guò)程中二維化信息的三維化加密算法
根據(jù)象棋的博弈原理而整理出一個(gè)全新的信息文件加密算法——二維化信息的三維化加密算法。該加密算法在信息加密前,對(duì)所有可能用到的原始信息進(jìn)行二維化處理,建立原始信息表。在信息加密時(shí),找出明文在原始信息表中對(duì)應(yīng)二維坐標(biāo)的分量信息,再將這些二維信息按一定的規(guī)則對(duì)應(yīng)存放在一個(gè)三維化表格中而形成密文。解密則按加密時(shí)信息存放的順序取出信息即可。
一、二維化信息的三維化加密算法基本原理
對(duì)傳統(tǒng)信息文件加密過(guò)程中的原始信息可以看成一維化信息,再進(jìn)行一系列的復(fù)雜的數(shù)學(xué)變換或置換而得到。本文開(kāi)始從加密信息的原始信息著手,先將信息進(jìn)行二維化處理,再對(duì)信息進(jìn)行三維化加密,最終形成密文。
1、信息二維化處理
信息二維化,即先建立一個(gè)二維化表格,將所有可能用于信息傳輸?shù)男畔⒎旁谶@個(gè)表格中,稱(chēng)這個(gè)表格為原始信息表。再給該表建立一套二維坐標(biāo),使得其中每個(gè)原始信息都有一組相對(duì)應(yīng)的坐標(biāo)地址,而坐標(biāo)地址又分行地址和列地址,即行信息和列信息。
為了后續(xù)處理方便,二維化表格建立時(shí)采用正方形表格,即a行a列的表格能存放a2個(gè)原始信息。對(duì)二維化表格坐標(biāo)的建立采用兩位數(shù)的n進(jìn)制數(shù)描述,即能描述n2個(gè)行和列的信息,其中n2=a。對(duì)于a2個(gè)原始信息放進(jìn)該二維表格中沒(méi)有任何限制,即最大叮以生成a2!份不同的原始信息表。如n為3時(shí)能表示9行9列(00.01,02,10,11,12,20,21,22),能表示81個(gè)原始信息。對(duì)這相同的81個(gè)原始信息有81!種不同的存放方案。又如n為10時(shí)能表示100行100列信息,能表示1萬(wàn)個(gè)原始信息,即有104!種不同的存放方案。
2、信息三維化加密
在信息加密過(guò)程中首先模擬象棋原理建立一個(gè)三維表格,再將棋譜演變?yōu)榭诹?,最后根?jù)口令按一定的規(guī)則將明文信息放到‘維表格中而完成信息加密。
1)三維表格
采用n×n×h的三維表格,此處的n和原始信息表中n進(jìn)制數(shù)的n是一致的,h稱(chēng)之為深度,即象棋棋局中棋子在某個(gè)位置出現(xiàn)的最大次數(shù)演變而來(lái)。
2)口令
口令為任意一段語(yǔ)言信息,該語(yǔ)言信息在原始信息表中都能找到每個(gè)字的行信息和列信息,不能找到的字在加密和解密過(guò)程都可自動(dòng)忽略。
3)加密規(guī)則
在口令信息中每個(gè)字行和列信息都是兩位數(shù)的信息,再將該兩位數(shù)按位拆開(kāi)成兩個(gè)一位的數(shù),如:一個(gè)字信息為(x1,y1, x2,y2)。該行信息(x1,y1)和列信息(x2,y2)。最后
拆分之后為(x1,y1),(x2,y2),它們剛好在n×n的二維表格中對(duì)應(yīng)兩個(gè)位置坐標(biāo)。如把行對(duì)應(yīng)的位置和列對(duì)應(yīng)的位置作為棋游中一步棋起子和落子的位置,則該口令中一個(gè)字就是
一步棋。一個(gè)口令字對(duì)應(yīng)一個(gè)明文信息,即口令字行信息對(duì)應(yīng)的位置存放一個(gè)明文信息的行信息,列信息對(duì)應(yīng)的位置存放該明文信息的列信息。
一個(gè)明文信息在二維衷格中存放I嚀兩個(gè)位置,即n×n×h的三維表格最多只能存放n×n×h/2個(gè)明文信息,一套加密系統(tǒng)形成之后n是固定的,而h可以自由變化,明文信息越多,h越大,即h在明文信息加密時(shí)根據(jù)明文信息量決定,只需保證明文信息個(gè)數(shù)n×n×h/2。
加密時(shí),明文信息與口令信息一一對(duì)應(yīng),當(dāng)n令信息長(zhǎng)度不夠時(shí),可以充分使用口令。根據(jù)口令信息在三維表格中指定的位置存放明文信息,按明文信息先后順次存放時(shí),當(dāng)三維表格中某個(gè)位置存放信息龜已經(jīng)等于h時(shí),將該信息存放在緊跟在后面信息量小于h的位置,到最后一個(gè)位置時(shí)自動(dòng)返回從第一位置開(kāi)始尋找小于h的位置存放。所有的明文信息存放完畢之后,如果明文信息數(shù)最<n×n×h/2,在所有小于h的位置補(bǔ)允垃圾信息,使其所有的位置信息量都達(dá)到h。最后去掉表格,形成最終的密文信息。
垃圾信息填寫(xiě)符合原始信息表中的坐標(biāo)表示范圍即可。這些信息不是明文信息中的內(nèi)容,對(duì)明文沒(méi)有任何意義,但對(duì)該加密過(guò)程中密文信息格式規(guī)整化,同時(shí)垃圾信息存在給破解者帶來(lái)更大的迷惑性。
3、信息解密
信息解密者不用知道加密者使用的深度h,當(dāng)解密者接到密文之后,根據(jù)n×n的表格將密義信息均勻劃分n2等份,按順序依次放入n×n的表格中,從而形成三維化表格信息。
根據(jù)口令信息順序,按加密時(shí)存放信息的方法依次取出明文信息,當(dāng)取出一個(gè)信息時(shí),在三維表格中自動(dòng)刪除該信息??诹铋L(zhǎng)度不夠時(shí),自動(dòng)重復(fù)使用口令。根據(jù)口令尋找的位置已經(jīng)沒(méi)有信息時(shí),在緊跟該位置的后面位置尋找信息,到最后一個(gè)位置時(shí)自動(dòng)返同從第一位置開(kāi)始尋找。當(dāng)表格中所有信息取完時(shí),停止取信息操作。最后根據(jù)取出的信息每四位數(shù)為一個(gè)明文信息在原始信息表中查詢(xún)?cè)撁魑脑夹畔?,即?shí)現(xiàn)信息解密。
二、二維化信息的三維化加密算法的應(yīng)用
1、信息二維化處理
在實(shí)例中以n=7為例。當(dāng)n=7時(shí),它能表示49行和49列即2401個(gè)原始信息。從而可以建立一個(gè)2401個(gè)常用漢字的原始信息表。表中每個(gè)字都有一組二維坐標(biāo)(行信息和列信息),坐標(biāo)表示采用兩位數(shù)的7進(jìn)制數(shù)描述。
如要對(duì)下面的明文信息進(jìn)行加密:
靜夜思 李白
床前明月光疑是地上霜
舉頭望明月低頭思故鄉(xiāng)
如果存在一個(gè)這樣的原始信息表,上述明文信息在原始信息表中的分量(坐標(biāo))信息查詢(xún)?nèi)缦拢ㄇ皟晌粩?shù)為行信息,后兩位數(shù)為列信息):
靜52 30夜31 04 思24 25李13 46白06 16床14 12前25 15 明35 60月02 60光31 56疑66 66是24 02地06 64上01 16霜63 14舉33 04頭05 41 望45 40明02 60月02 60低31 66頭05 41 思24 25故30 03鄉(xiāng)01 32
2、信息三維化加密
1)三維表格的建立
當(dāng)n=7時(shí)建立一個(gè)7×7×h的三維表格,需加密的明文信息有25個(gè)字,取h =2。如表1所示。
2)口令
尋找一段任意的文字為口令,如“請(qǐng)找出唐詩(shī)”。假如口令在原始信息表巾的分量信息為“請(qǐng)”(55 04),“找”(10 05),“出”(13 66),‘“唐”(41 23),‘‘詩(shī)”(15 32)(前兩位數(shù)為行,后兩位數(shù)為列)。
3)信息加密
口令按順序每一個(gè)字對(duì)應(yīng)明文信息中一個(gè)字,口令可以重復(fù)使用。如下:
靜5230(請(qǐng)5504) 夜3104(找1005) 思2425(出1366)李1346(唐4123) 白0616(詩(shī)1532)床1412(請(qǐng)5504) 前2515(找1005) 明3560(出1366) 月0260(唐4123)光31 6(詩(shī)1532)疑6666(請(qǐng)5504) 是2402(找1005) 地0664(出1366) 上0116(唐4123)霜6314(詩(shī)1532)舉3304(請(qǐng)5504) 頭0541(找1005) 望4540(出1366) 明0260(唐4123) 月0260(詩(shī)1532)低3166(請(qǐng)5504) 頭0541(找1005) 恩2425(出1366)故3003(唐4123)鄉(xiāng)0132(詩(shī)1532)
口令中一個(gè)字信息的行信息中兩個(gè)數(shù)字分別為需加密的明文信息的行信息在表1中的行和列坐標(biāo),口令中該字信息中列信息的兩個(gè)數(shù)字分別對(duì)應(yīng)明文信息的列信息在表1中5行5列坐標(biāo)。如明文信息:“靜”5230對(duì)應(yīng)口令:“請(qǐng)”5504即將靜字的行信息52填入表I中5行5列的位置,靜宇的列信息30填入表l中0行4列的位置。依此類(lèi)推,同一個(gè)位置內(nèi)信息先存放的放在E面,后存放的放在下面,當(dāng)一個(gè)位置信息存放個(gè)數(shù)達(dá)到2時(shí),將該信息存放性緊跟在后面信息量小于2的位置,如表2所示。

從表2可以看出,由于還有許多位置未填滿(mǎn),在未填滿(mǎn)的位置隨機(jī)填寫(xiě)符合原始信息表的坐標(biāo)信息,如表3所示。

最后表3的信息為加密后的信息。去掉表格,信息按順序排列得最終密文信息。如:
6440252344524023301204156602312524040541 24350645063 1630266054124011246601660031552134225244216561 41603213621043242211 13020102306530130006665436422421516J 24130133521466333121421201054132163006052560
3、信息解密
當(dāng)解密者接到密文之后,根據(jù)7×7的表格將密文信息均劃分7的2次方等份,按順序依次放入表1中,得到表3。
根據(jù)加密口令,如“請(qǐng)找出唐詩(shī)”。找出該口令在原始信息表中的坐標(biāo)信息為(請(qǐng)5504),(找1005),(出1366),(唐4123),(詩(shī)1532),(請(qǐng)5504)。;口令可以簡(jiǎn)單看成以?xún)晌粩?shù)字為單位的55 04 10 05 13 66 41 23 15 32一個(gè)序列,每?jī)晌粩?shù)字的第一個(gè)數(shù)字為行,第二個(gè)數(shù)字為列,在圖中取出一個(gè)二位數(shù)字信息。該口令序列可以重復(fù)使用。根據(jù)口令序列,每取出一個(gè)信息,將該信息在表3中刪除。
如口令序列執(zhí)行完兩次后得到:5230 3104 24251346 0616 1412 2515 3560 0260 3156序列,表3就演變成表4。

根據(jù)口令取出所有的數(shù)值后得序列:
5230 3104 2425 1346 0616 1412 2515 35600260 3156 6666 2402 0664 01 16 6314 3304 0541_4540 0260 0260 3166 0541 2425 3003 0132_2112 1552 1323 6542 2513 4224 4262 1044 3043_2422 1211 1300 0652 61654 3642 0124 2151_6140 2413 0133 0541 3216 3023 0605
根據(jù)上面序列按前兩位數(shù)字為行信息,后兩位數(shù)字為列信息,在原始信息表中查詢(xún)得到這樣文字:靜夜思 李白 床前明月光,疑是地上霜,舉頭望明月,低頭思故鄉(xiāng)。
**************(*為垃圾信息產(chǎn)生的隨機(jī)文字)
三、密鑰方案
為了保密通信,必須有密鑰才能保密,密鑰的分配有兩種方案。
1、以口令為密鑰
通信過(guò)程中傳送的是密文信息,原始信息表可以公開(kāi),以方便表中信息隨時(shí)更新。
密鑰長(zhǎng)度不限,如果有不在原始信息表中的字,自動(dòng)忽略該字。由語(yǔ)言文字組成的口令是無(wú)限的,因此不存在密鑰用完的可能。正因?yàn)槿绱?,用它?lái)實(shí)現(xiàn)一次一密也很有可能,通信雙方只要約定用一本相同的書(shū)就可以。以書(shū)中一句話或多句話為一次密鑰,第二次用后面的一句話或后面的多句話,……這樣通信還能很好記錄通信次數(shù),如果信息接收方在第5次接到信息時(shí)用第5次密鑰不能解開(kāi)密文但是用第7次密鑰解開(kāi),就能證明在通信過(guò)程中丟失兩次信息,通信方法存在不安全因素。
2、以原始信息表為密鑰
通信過(guò)程中傳送的是密文信息和口令,當(dāng)然口令只能以語(yǔ)言文字形式出現(xiàn)或只能以口令在原始信息表中坐標(biāo)信息出現(xiàn),口令不能交叉用兩種形式出現(xiàn),其中只以語(yǔ)言文字形式出現(xiàn)為最佳。那密鑰的數(shù)量就是從我們語(yǔ)言文字中選出K=a2個(gè)字按順序排列組合Abk,b就是語(yǔ)言范圍。即使確定了原始信息K.原始信息表也有K!種不同組合。
小知識(shí)指二維坐標(biāo)
二維坐標(biāo)可以解釋為在平面內(nèi)兩條相互垂直且有公共原點(diǎn)的數(shù)軸組成的坐標(biāo)系即二維坐標(biāo)。










