密碼學(xué)心得體會(huì)(DES數(shù)據(jù)算法)_第1頁(yè)
密碼學(xué)心得體會(huì)(DES數(shù)據(jù)算法)_第2頁(yè)
密碼學(xué)心得體會(huì)(DES數(shù)據(jù)算法)_第3頁(yè)
密碼學(xué)心得體會(huì)(DES數(shù)據(jù)算法)_第4頁(yè)
密碼學(xué)心得體會(huì)(DES數(shù)據(jù)算法)_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、現(xiàn)代密碼學(xué)小論文姓名:肖寬學(xué)號(hào):P111813618 專業(yè):11級(jí)電子信息工程二班指導(dǎo)教師:李娟數(shù)據(jù)的DES加密算法摘要:密碼學(xué)是研究如何隱密地傳遞信息的學(xué)科。在現(xiàn)代特別指對(duì)信息以及其傳輸?shù)臄?shù)學(xué)性研究,常被認(rèn)為是數(shù)學(xué)和計(jì)算機(jī)科學(xué)的分支,和信息論也密切相關(guān)。著名的密碼學(xué)者Ron Rivest解釋道:“密碼學(xué)是關(guān)于如何在敵人存在的環(huán)境中通訊,自工程學(xué)角度,這相當(dāng)于密碼學(xué)與純數(shù)學(xué)的異同。密碼學(xué)是信息安全等相關(guān)議題,如認(rèn)證,訪問(wèn)控制的核心。密碼學(xué)的首要目的是隱藏信息的涵義,并不是隱藏信息的存在。密碼學(xué)也是促進(jìn)計(jì)算機(jī)科學(xué),特別是在于電腦與網(wǎng)絡(luò)安全所使用的技術(shù),如訪問(wèn)控制與信息的機(jī)密性。密碼學(xué)已經(jīng)被應(yīng)用在

2、日常生活:包括自動(dòng)柜員機(jī)的芯片卡,電腦使用者存取密碼,電子商務(wù)等等。本文以DES數(shù)據(jù)加密算法為例,演示如何使用c#中的加密包進(jìn)行DES算法加密,關(guān)鍵詞:加密 對(duì)稱 非對(duì)稱DES 密鑰 明文20世紀(jì)70年代,主機(jī)時(shí)代的信息安全是面向單機(jī)的,由于早期的用戶主要是軍方,信息安全的主要內(nèi)容是保密,20世紀(jì)80年代,微機(jī)和局域網(wǎng)的興起帶來(lái)了信息在微機(jī)間的傳輸和用戶間的共享問(wèn)題,豐富了信息安全的內(nèi)函,使人們認(rèn)識(shí)到數(shù)據(jù)完整性,可用性的重要性。安全服務(wù),安全機(jī)制等基本框架成為信息安全的重要內(nèi)容。20世紀(jì)90年代,因特網(wǎng)爆炸性的發(fā)展把人類帶進(jìn)了一個(gè)新生的生存空間。因特網(wǎng)具有高度分布,邊界模糊,層次欠清,動(dòng)態(tài)演化

3、,而用戶又在其中扮演主角的特點(diǎn),如何處理好這一復(fù)雜而又巨大的系統(tǒng)的安全,成為信息安全的主要問(wèn)題。21世紀(jì)是信息時(shí)代,信息已經(jīng)成為社會(huì)發(fā)展的重要戰(zhàn)略資源,社會(huì)的信息已經(jīng)成為當(dāng)今世界發(fā)展的潮流和核心,而信息安全在信息社會(huì)中將扮演極為重要的角色,它會(huì)直接關(guān)系到國(guó)家安全,企業(yè)經(jīng)營(yíng)和人們的日常生活。 信息安全可分為系統(tǒng)安全,數(shù)據(jù)安全和內(nèi)容安全三個(gè)層次,是一個(gè)綜合,交叉的學(xué)科領(lǐng)域,要利用數(shù)學(xué),電子,信息,通信,計(jì)算機(jī)等諸多學(xué)科的長(zhǎng)期知識(shí)積累和最新發(fā)展成果。隨著信息安全的快速發(fā)展,全球?qū)π畔踩瞬诺男枨蟛粩嘣黾?,但我?guó)起步較晚,目前信息安全人才極度匱乏,遠(yuǎn)遠(yuǎn)不能滿足金融,商業(yè),公共安全,國(guó)防軍事和政府等部

4、門的需求。要解決供需矛盾,必須加快信息安全人才的培養(yǎng),以滿足社會(huì)對(duì)信息安全人才的需求。而我作為一名21世紀(jì)的大學(xué)生,有機(jī)會(huì)學(xué)到了密碼學(xué)這門課,從這門課中,我學(xué)到了很多有用的知識(shí),讓自己受益匪淺。經(jīng)過(guò)半學(xué)期的學(xué)習(xí),我了解了密碼學(xué)的大致內(nèi)容,掌握了密碼學(xué)的基礎(chǔ)知識(shí),密碼學(xué)主要有以下章節(jié):1密碼學(xué)概述2流密碼3分組密碼體制4公鑰密碼5密鑰分配與密鑰管理按照密鑰方式劃分,可分為對(duì)稱加密算法和非對(duì)稱加密算法。一、對(duì)稱加密算法對(duì)稱加密算法有時(shí)又叫做傳統(tǒng)密碼算法,加密密鑰可以從解密密鑰中推導(dǎo)出來(lái),解密密鑰也可以從加密密鑰中推導(dǎo)出來(lái)。在大多數(shù)的對(duì)稱算法中 加密密鑰和解密密鑰是相同的,因此也成為秘密密鑰算法或者

5、單密鑰算法。它要求發(fā)送發(fā)和接收方在安全通信之前先商定一個(gè)密鑰。對(duì)稱算法的安全性依賴于密鑰所以密鑰的保密性對(duì)通信至關(guān)重要。對(duì)稱加密算法主要有分組加密和流加密兩類。分組加密是指將明文分成固定商都的組,用同一密鑰分別對(duì)每一組加密輸出固定長(zhǎng)度的密文 典型代表:DES。二、非對(duì)稱加密算法非對(duì)稱加密算法有時(shí)又叫做公開(kāi)密鑰算法。其中用到兩個(gè)密鑰。一個(gè)是公共的。一個(gè)事私有的。一個(gè)密鑰用于加密,另一個(gè)密鑰用于解密。兩個(gè)密鑰不能夠互相推導(dǎo)。常用的非對(duì)稱加密算法有RSA公鑰算法、Diffie-HelIman算法和ECC橢圓曲線密碼。以下具體介紹DES算法:我們?cè)敿?xì)分析一下DES加密算法的處理過(guò)程。DES加密算法是分

6、組加密算法明文以64位為單位分成塊。64位數(shù)據(jù)在64位密鑰的控制下經(jīng)過(guò)初始變換后 進(jìn)行1 6輪加密迭代:64位數(shù)據(jù)被分成左右兩半部分每部分32位,密鑰與右半部分相結(jié)合然后再與左半部分相結(jié)合結(jié)果作為新的右半部分:結(jié)合前的右半部分作為新的左半部分。這一系列步驟組成一輪。這種輪換要重復(fù)16次。最后一輪之后,再進(jìn)行初始置換的逆置換,就得到了64位的密文。DES的加密過(guò)程可分為加密處理加密變換和子密鑰生成幾個(gè)部分組成。1加密處理過(guò)程(1)初始變換。加密處理首先要對(duì)64位的明文按表1所示的初始換位表IP進(jìn)行變換。表中的數(shù)值表示輸入位被置換后的新位置。例如輸入的第58位,在輸出的時(shí)候被置換到第1位;輸入的是

7、第7位,在輸出時(shí)被置換到第64位。(2)加密處理。上述換位處理的輸出,中間要經(jīng)過(guò)1 6輪加密變換。初始換位的64位的輸出作為下一次的輸入,將64位分為左、右兩個(gè)32位,分別記為L(zhǎng)O和RO 從L0、RO到L1 6、R16,共進(jìn)行1 6輪加密變換。其中,經(jīng)過(guò)n輪處理后的點(diǎn)左右32位分別為L(zhǎng)n和Rn則可做如下定義:Ln=Rn-1Rn=Ln一1其中kn是向第n輪輸入的48位的子密鑰,Ln-1和Rn-1分別是第n-1輪的輸出 f是Mangler函數(shù)。(3)最后換位。進(jìn)行1 6輪的加密變換之后,將L1 6和R1 6合成64位的數(shù)據(jù)再按照表2所示的最后換位表進(jìn)行IP一1的換位 得到64位的密文 這就是DES

8、算法加密的結(jié)果。2加密變換過(guò)程通過(guò)重復(fù)某些位將32位的右半部分按照擴(kuò)展表3擴(kuò)展換位表擴(kuò)展為48位而56位的密鑰先移位然后通過(guò)選擇其中的某些位減少至48位48位的右半部分通過(guò)異或操作和48位的密鑰結(jié)合并分成6位的8個(gè)分組通過(guò)8個(gè)S一盒將這48位替代成新的32位數(shù)據(jù),再將其置換一次。這些s一盒輸入6位,輸出4位。3.子密鑰產(chǎn)生過(guò)程鑰通常表示為64位自然數(shù),首先通過(guò)壓縮換位,去掉每個(gè)字節(jié)的第八位,用作奇偶校驗(yàn),因此,密鑰去掉8,16,24,.減至56位,所以實(shí)際密鑰長(zhǎng)度為56位 ,而每輪要生成48位的子密鑰。輸入的64位密鑰,首先通過(guò)減壓換位得到56位的密鑰,每層分成兩部分,上部分28位為C0,下部

9、分為D0。C0和D0依次進(jìn)行循環(huán)左移操作生成C1和D1,將C1和D1合成56位,再通過(guò)壓縮換位PC-2輸出48位的子密鑰K1,再將將C1和D1進(jìn)行循環(huán)左移和PC-2壓縮位,得到子密鑰K2.以此類推,得到16個(gè)子密鑰。4解密處理過(guò)程從密文到明文的解密過(guò)程可采用與加密完全相同的算法。不過(guò)解密要用加密的逆變換就是把上面的最后換位表和初始換位表完全倒過(guò)來(lái)變換。使用以下實(shí)例演示了如何使用c# 中的加密包進(jìn)行DES算法加密。des_ demo CS代碼如下:using System ;using System.Security.Cryptography;using System.IO;using Syst

10、em.Text;public class EncryptsngDES pubIic static void Main(Stringargs)if(args Length ”args0);returnUTF8Encoding utf8Encoding= new UTF8Encoding():byteinputByteArray= utf8Encoding GetBytes(args0ToCharArray():DES des= DES Create():Bytekey= 0x01,0x23,0x45,0x67,0x89,0xab,0xcd Oxef;ByteIV= 0x12,0x34,0x56,

11、0x78,0x90,0xab,Oxcd,Oxef;Des.Key = key;Des.lV = 1V;SymmetricStreamEncryptor sse= des.CreateEncryptor();CryptoMemoryStream cms= new CryptoMemoryStream();Sse.SetSink(cms);sse.Write(inputByteArray);sse.CloseSt ream();byte1 encryptedData= cms.Data;Console WdteLine(”加密結(jié)果:”);for(int i= 0;i encryptedData,L

12、ength;i+)ConsoleWrite(“0:X2l”.encryptedDatai);Console WriteLine();SymmetricStreamDecryptor ssd = des.CreateDecryptor();cms= new CryptoMemoryStream();ssd.SetSink(cms);ssd.Write(encryptedData);ssd.CIoseStream();bytedecryptedData;cms.DatachardecryptedCharArray=utf8Encoding.GetChars(decryptedData);Conso

13、le.WriteUne(”解密后數(shù)據(jù):”);Console.Write(decryptedCharArray);Console.WriteLiRe(); 編譯,運(yùn)行后:使用C#編寫(xiě)DES加密程序的framework加密結(jié)果:3D 22 64 C6 57 D1 C4 C3 CF 77 CE 2F D0 E1 78 2A 4D ED 7A AB 83 F9 0E 14 E1 BA 38 7B 06 41 8D B5 E9 3F 00 0D C3 28 D1 F9 6D 17 4B 6E A7 41 68 40解密后的數(shù)據(jù):使用C#編寫(xiě)DES加密程序的frameworkDES算法的安全性極高,到目前為止,除了用窮舉搜索法對(duì)DES算法進(jìn)行攻擊外,還沒(méi)有發(fā)現(xiàn)更有效的辦法。通過(guò)窮舉搜索空間,可獲得總共256個(gè)可能的密鑰。如果每一秒能檢測(cè)一百萬(wàn)個(gè)的話,需要2000年才能完成檢測(cè)??梢?jiàn),這是很難實(shí)現(xiàn)的。隨著科學(xué)技術(shù)的發(fā)展,超級(jí)計(jì)算機(jī)可能會(huì)破解,但我們可以增加DES密鑰的長(zhǎng)度,以此達(dá)到保密性。密碼學(xué)應(yīng)用廣泛,滲透到社會(huì)的各個(gè)領(lǐng)域,了解密碼學(xué)的基礎(chǔ)知識(shí),學(xué)習(xí)密碼學(xué)的基本技術(shù),會(huì)對(duì)我們了解信息安全有很大的益處,就目前而言,我們的一些私人信息如身份證號(hào),銀行卡密碼,手機(jī)號(hào),還有平時(shí)愛(ài)玩的QQ賬號(hào)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論