




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一種非線性流式加密算法by袁園為了更好的說(shuō)明算法,我們先對(duì)一些必要的概念做簡(jiǎn)單介紹。1 流式算法1.1 對(duì)稱加密對(duì)稱加密,它的加密和解密都是用同一把密鑰完成。對(duì)稱加密比不對(duì)稱加密快得多,但缺點(diǎn)在于,它的安全性完全依賴于保持密碼的機(jī)密性。不對(duì)稱加密,它要求使用兩個(gè)密鑰,一個(gè)是公共的(公鑰),另一個(gè)是私有的(私鑰)。每個(gè)密鑰都要求使用另一個(gè)密鑰來(lái)解密一條消息。它的復(fù)雜性提高,因此沒(méi)有普及。1.2 加密算法通常有兩種方法可以對(duì)一批數(shù)據(jù)進(jìn)行加密,一種是區(qū)塊加密系統(tǒng),另一種是流式加密系統(tǒng)。1.2.1 Block Cipher(區(qū)塊加密系統(tǒng))區(qū)塊加密獲取一大批數(shù)據(jù),并用密鑰對(duì)其加密。這個(gè)過(guò)程不斷重復(fù),直至
2、徹底加密整條消息。通常,會(huì)有一個(gè)長(zhǎng)度變量來(lái)控制數(shù)據(jù)塊的大小。但無(wú)論長(zhǎng)度大小,都會(huì)用整個(gè)密鑰來(lái)加密數(shù)據(jù)區(qū)塊。Cipher Function(data , password)=Output整個(gè)密鑰(password)每次都原封不動(dòng)的用于數(shù)據(jù)加密,在連續(xù)使用的過(guò)程中,區(qū)塊加密系統(tǒng)在功能上會(huì)越來(lái)越弱。密鑰很容易從密文中提取出來(lái)。1.2.2 Stream Cipher(流式加密系統(tǒng))流式加密也使用一個(gè)密鑰,但它的加密單位小的多。區(qū)塊加密可一次加密整頁(yè)文本,但流式加密只能對(duì)構(gòu)成一頁(yè)文本的每個(gè)字母的每個(gè)比特進(jìn)行加密。流式加密使用了除密鑰和數(shù)據(jù)外的一個(gè)狀態(tài)條件,即對(duì)流經(jīng)加密程序的每個(gè)數(shù)據(jù)區(qū)塊,數(shù)據(jù)都會(huì)進(jìn)行不同
3、的加密。為了實(shí)現(xiàn)此算法,需要合并狀態(tài)值和密鑰生成一個(gè)隨機(jī)改變的數(shù)據(jù)流Key Stream。它的加密函數(shù)有兩部構(gòu)成:Key Stream = State Function(State ,Password);Output = XOR(data , key stream).2 加密算法2.1 概述該算法本質(zhì)為流式加密算法的一種,即對(duì)明文數(shù)據(jù)的每個(gè)bit位都進(jìn)行加密。而且生成上述Key Stream 的State Function 是非線性函數(shù),因此是一種非線性流式加密算法,還因?yàn)樗咏饷芏际褂猛幻荑€,所以稱它是對(duì)稱的。2.2 名詞介紹該算法涉及到一些專業(yè)術(shù)語(yǔ),我們有必要首先作聲明。移位寄存器序列是
4、指由移位寄存器輸出的由“1”和“0”構(gòu)成的序列。相應(yīng)的時(shí)間波形是指由“1”和“-1”構(gòu)成的時(shí)間函數(shù),如圖2-1所示。(a)1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0(b)圖2-1(a)移位寄存器序列(b)移位寄存器波形移位寄存器序列的產(chǎn)生如圖2-2 。主要由移位寄存器和反饋函數(shù)構(gòu)成。移位寄存器內(nèi)容為或1,反饋函數(shù)的輸入端通過(guò)系數(shù)與移位寄存器的各級(jí)狀態(tài)相聯(lián)()輸出通過(guò)反饋線作為的輸入。移位寄存器在時(shí)鐘的作用下把反饋函數(shù)的輸出存入,在下一個(gè)時(shí)鐘周期又把新的反饋函數(shù)的輸出存入而把原的內(nèi)容移入,依次循環(huán)下去,不斷輸出。如果反饋函數(shù)為的模2加(即異或),就稱寄存器為線
5、性反饋移位寄存器序列產(chǎn)生器(LFSR)。反饋函數(shù)還決定了寄存器移位的狀態(tài)總數(shù),若使得寄存器能遍歷除全零外的所有狀態(tài),則稱寄存器為m序列發(fā)生器,對(duì)應(yīng)此時(shí)的稱為本原多項(xiàng)式。 異或(XOR)XOR是一個(gè)簡(jiǎn)單的邏輯運(yùn)算。它是比特位的不進(jìn)位加法,是一種初級(jí)的加密方案,將一個(gè)數(shù)據(jù)區(qū)段與另一個(gè)數(shù)據(jù)區(qū)段合并到一起,從而生成一個(gè)被打亂的輸出。因?yàn)樗乃俣葮O快,因此成為最流行的加密方法之一。在生成Key Stream 后,加密函數(shù)只需將數(shù)據(jù)與其做異或便得到密文,解密是只需將密文再與其做異或,即可得到數(shù)據(jù)。2.3 算法實(shí)現(xiàn) 獲得加密密鑰算法使用password的為64比特。在該算法中狀態(tài)值也是64 bit。算法初始
6、時(shí)取機(jī)器時(shí)間的低64位與password異或得到加密密鑰。以后取算法運(yùn)行一次生成的84 bit中的64 bit作為狀態(tài)值。初始狀態(tài)值的隨機(jī)性,以及后來(lái)狀態(tài)值的迭代性,使得加密算法更安全。 移位寄存器.1 兩個(gè)寄存器運(yùn)算上述加密密鑰送到兩個(gè)64級(jí),但具有不同的本原多項(xiàng)式的m序列寄存器中,作為寄存器的輸入。其中為寄存器的第i bit 位對(duì)兩個(gè)寄存器作如下操作:首先運(yùn)轉(zhuǎn)128次,得到的序列取其最高7bit構(gòu)成一個(gè)十進(jìn)制數(shù)N,查隨機(jī)數(shù)表,輸出另一個(gè)十進(jìn)數(shù)Ni,寄存器再運(yùn)轉(zhuǎn)Ni次,得到64bit輸出序列。將兩個(gè)寄存器的輸出按如下形式運(yùn)算:LFSR1 = A1 + A2 + A3 + A4 + A5 +
7、A6 + A7 + A8LFSR2 = B1 + B2 + B3 + B4 + B5 + B6 + B7 + B8LFSR = A1 B8 + A2 B7 + A3 B6 + A4 B5 + A5 B4 + A6 B3 + A7 B2 + A8 B1.2 得到非線性函數(shù)的輸入上述得到的LFSR 作為第三個(gè)寄存器的輸入,經(jīng)過(guò)與前兩個(gè)寄存器相同的運(yùn)轉(zhuǎn)后,輸出序列即位非線性函數(shù)的64bit輸入。 非線性State Function.1 得到14個(gè)十進(jìn)制數(shù)從64bit的輸入中確定14個(gè)數(shù),計(jì)算式如下:得到的為一組,為另一組。.2 對(duì)第一組數(shù)的處理 根據(jù)的值計(jì)算一組非線性函數(shù),輸出為一個(gè)8 bit數(shù)。因
8、為的值為03,所以只可能是下面函數(shù)中其中一個(gè):式中,是兩個(gè)置換表,輸入為7 bit,輸出也為7 bit。根據(jù)計(jì)算出來(lái)的值我們繼續(xù)運(yùn)算:上式中Ni7時(shí),取Ni=0。最后計(jì)算輸出一個(gè)8 bit字。.3 對(duì)第二組數(shù)的處理對(duì)第二組數(shù)做相同的處理,也得到一個(gè)8 bit字。 Key Stream 的生成對(duì)兩個(gè)8 bit字作如下運(yùn)算,輸出一個(gè)4 bit 字合并寄存器3的64 bit輸出,以及上述4 bit字,生成84 bit Key Stream序列: 加密將生成序列奇偶互換,并接在原始序列之后構(gòu)成一個(gè)長(zhǎng)度為168 bit的序列。設(shè)置一個(gè)值指向序列的某一位,由所指當(dāng)前位相鄰的高8 bit構(gòu)成一個(gè)字節(jié),這個(gè)值
9、由序列第一位開(kāi)始依次后移直到序列的最后一位。(其中當(dāng)值指向序列末尾時(shí),不夠8 bit的向序列起始位循環(huán))由上生成168個(gè)字節(jié)的加密序列,與所給數(shù)據(jù)相應(yīng)的字節(jié)做異或運(yùn)算,得到密文。3附表 31 隨機(jī)數(shù)表87797111073121611110113155921248970364045675596610978849198105112120011916251154317627290921031141251279730445669749510812211022655158829613318654494283100118826416381101512145285931972827619411611345
10、7801043912648737512320465335124235077294326088117184776106102386899233643732 置換表016324864809611282440567288104120117334965819711392541577389105121218345066829811410264258749010612231935516783991151127435975911071234203652688410011612284460769210812452137536985101117132945617793109125622385470861021181430466278941101267233955718710311915314763799511112733 置換表064165266367468569670771872973107411751276137714781579168017811882198320842185228623872488258926902791289229
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司組織建黨節(jié)目活動(dòng)方案
- 2025年智能制造與工業(yè)轉(zhuǎn)型相關(guān)知識(shí)考試試卷及答案
- 2025年生物醫(yī)學(xué)工程師職業(yè)資格考試題及答案
- 2025年青少年心理健康教育課程考試試題及答案
- 2025年民俗文化與社會(huì)變遷考試試題及答案
- 2025年就業(yè)指導(dǎo)與職業(yè)規(guī)劃考試試卷及答案
- 2025年婚姻家庭咨詢師職業(yè)資格考試試卷及答案
- 2025年國(guó)際貿(mào)易知識(shí)考試及其答案
- 2025年法律法規(guī)與社會(huì)責(zé)任考試試卷及答案
- 2025護(hù)理科內(nèi)自查分析討論
- 普惠性托育機(jī)構(gòu)申請(qǐng)托育中心情況說(shuō)明基本簡(jiǎn)介
- 外輪理貨業(yè)務(wù)基礎(chǔ)-理貨單證的制作
- 《水火箭制作》課件
- 網(wǎng)絡(luò)安全預(yù)防電信詐騙主題班會(huì)PPT
- 農(nóng)村垃圾清運(yùn)投標(biāo)方案
- 優(yōu)秀物業(yè)管理項(xiàng)目評(píng)選方案
- GB/T 5470-2008塑料沖擊法脆化溫度的測(cè)定
- 圖書管理系統(tǒng)畢業(yè)論文參考文獻(xiàn)精選,參考文獻(xiàn)
- 中國(guó)當(dāng)代舊體詩(shī)選讀幻燈片
- 吉林省全省市縣鄉(xiāng)鎮(zhèn)衛(wèi)生院街道社區(qū)衛(wèi)生服務(wù)中心基本公共衛(wèi)生服務(wù)醫(yī)療機(jī)構(gòu)信息名單目錄995家
- 倔強(qiáng)的小紅軍-精講版課件
評(píng)論
0/150
提交評(píng)論