版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
論文題目:數(shù)據(jù)加密技術(shù)設(shè)計(jì)與應(yīng)用摘要在競(jìng)爭(zhēng)激烈信息時(shí)代,信息不但給我們帶來(lái)很大方便,一樣,信息也能夠用來(lái)對(duì)他們組成威脅、造成破壞。所以,在客觀(guān)上就需要一個(gè)強(qiáng)有力安全方法來(lái)保護(hù)機(jī)密數(shù)據(jù)不被竊取或篡改,數(shù)據(jù)加密技術(shù)就應(yīng)運(yùn)而生。所謂數(shù)據(jù)加密技術(shù)是指將一個(gè)信息經(jīng)過(guò)加密鑰匙及加密函數(shù)轉(zhuǎn)換,變成無(wú)意義密文,而接收方則將此密文經(jīng)過(guò)解密函數(shù)、解密鑰匙還原成明文。加密技術(shù)是網(wǎng)絡(luò)安全技術(shù)基石。所謂加密,就是把數(shù)據(jù)信息即明文轉(zhuǎn)換為不可辨識(shí)形式即密文過(guò)程,目標(biāo)是使不應(yīng)了解該數(shù)據(jù)信息人不能夠知道和識(shí)別。將密文轉(zhuǎn)變?yōu)槊魑倪^(guò)程就是解密。加密和解密過(guò)程形成加密系統(tǒng),明文與密文統(tǒng)稱(chēng)為報(bào)文。任何加密系統(tǒng),不論形式怎樣復(fù)雜,實(shí)現(xiàn)算法怎樣不一樣,但其基本組成部分是相同。本文是一篇討論關(guān)于慣用文件加密解密算法畢業(yè)設(shè)計(jì)論文,它詳細(xì)講述了文件加密解密算法實(shí)現(xiàn)過(guò)程中所用到方法、技術(shù)。對(duì)公鑰密碼體制和私鑰密碼體制進(jìn)行了分析和研究,并對(duì)公鑰密碼體制和私鑰密碼體制代表RSA算法和DES算法進(jìn)行了研究和比較。關(guān)鍵詞解密文件加密密碼體制DESRSAAbstractInthefiercecompetitionintheinformationage,informationnotonlybringusalotofconvenience,thesame,theinformationcanalsobeusedtoposeathreat,theycausedamage.Therefore,inwhichtheyneedastrongsecuritymeasurestoprotectconfidentialdataisnottheftorfalsified,dataencryptiontechnologyismade.Theso-calleddataencryptiontechnologyreferstoaninformationencryptedkeyandencryptionfunctionconversion,becomemeaninglessciphertext,andreceivingpartywilltheciphertextafterdecryptionfunction,decryptionkeyreductionintoplaintext.Encryptiontechnologyisthefoundationofnetworksecuritytechnology.Theso-calledencryption,dataistheinformationthatisnotexpresslyconvertedtotheformofidentificationisciphertextprocess,thepurposeistomakeshouldnotunderstandthedatainformationofpeoplecan'tknowandidentification.Willciphertextintoplaintextprocessisdecryption.Encryptionanddecryptionprocessformsencryptionsystem,plaintextandciphertextcollectivelyreferredtoasmessage.Anyencryptionsystem,nomatterhowcomplexform,thealgorithmisrealizedhowdifferent,butthebasiccomponentisthesame.Thispaperisadiscussionaboutthecommonfileencryptiondecryptionalgorithmgraduationdesignpaper,itdetailedtellsthestoryoffileencryptiondecryptionalgorithmusedintheprocessofthemethodandtechnology.Topublickeycryptosystemsandprivatekeyciphersystemwereanalyzedandinvestigated,andthepublickeycryptosystemandtheprivatekeyciphersystemonbehalfoftheRSAalgorithmandDESalgorithmarestudiedandcompared.KEYWORDecryptionFileencryptionThepasswordsystemDESRSA目錄TOC\o"1-4"\h\z第一章緒言1第二章需求分析1第一節(jié)概述 1第二節(jié)密碼學(xué)發(fā)展 2第三節(jié)文件機(jī)密解密中密碼體制研究 4第三章分組加密解密算法5第一節(jié)DES算法 5第二節(jié)RSA算法 6第三節(jié)工作原理 6第四節(jié)DES算法實(shí)例演示 10第五節(jié)測(cè)試分析 15結(jié)束語(yǔ) 16謝辭 17參考文件 18第一章緒言信息安全是一個(gè)綜合性交叉學(xué)科領(lǐng)域,廣泛包括數(shù)學(xué)、密碼學(xué)、計(jì)算機(jī)、通信、控制、人工智能、安全工程、人文科學(xué)等很多學(xué)科,是近幾年快速發(fā)展一個(gè)熱點(diǎn)學(xué)科領(lǐng)域。信息反抗和網(wǎng)絡(luò)安全是信息安全關(guān)鍵熱點(diǎn),它研究和發(fā)展又將刺激、推進(jìn)和促進(jìn)相關(guān)學(xué)科研究與發(fā)展。至今,密碼技術(shù)是取得信息安全性最有效一個(gè)方法,密碼技術(shù)是信息安全關(guān)鍵技術(shù)。經(jīng)過(guò)數(shù)據(jù)加密,人們能夠有效地確保通信線(xiàn)路上內(nèi)容不被泄露,而且還能夠檢驗(yàn)傳送信息完整性。深入,密碼技術(shù)能夠應(yīng)用于數(shù)字署名、身份認(rèn)證和信息判定,這些應(yīng)用對(duì)于資源存取控制以及其它安全方法是必須而且有效。信息安全產(chǎn)品從應(yīng)用類(lèi)型上能夠分為防火墻類(lèi)產(chǎn)品、防病毒類(lèi)產(chǎn)品、防攻擊類(lèi)產(chǎn)品、密碼類(lèi)產(chǎn)品、認(rèn)證類(lèi)產(chǎn)品和訪(fǎng)問(wèn)控制類(lèi)產(chǎn)品。相對(duì)于防病毒軟件和防火墻軟件來(lái)說(shuō),基于密碼技術(shù)密碼類(lèi)產(chǎn)品、認(rèn)證類(lèi)產(chǎn)品份額相對(duì)較小,但伴隨金融、電信、政府等行業(yè)信息化建設(shè)對(duì)于網(wǎng)絡(luò)安全整體處理方案需求增加,將會(huì)有較大增加。在此次畢業(yè)設(shè)計(jì)中,對(duì)公鑰密碼體制和私鑰密碼體制進(jìn)行了分析和研究,并對(duì)公鑰密碼體制和私鑰密碼體制代表RSA算法和DES算法進(jìn)行了研究和比較。而且實(shí)現(xiàn)了基本文件加密解密處理流程,能提供對(duì)文件安全、有效保護(hù)。第二章需求分析第一節(jié)概述信息是一個(gè)資源,也是一個(gè)財(cái)富。在當(dāng)代社會(huì)中,信息處理和通信技術(shù)日益發(fā)展,保護(hù)信息安全,尤其是保護(hù)主要信息安全,越來(lái)越成受到國(guó)內(nèi)外關(guān)于研究人員極大重視。當(dāng)前因?yàn)樾畔⒈Wo(hù)不利和失誤,世界各國(guó)遭受損失是巨大。現(xiàn)在,國(guó)際互聯(lián)網(wǎng)上各站點(diǎn),幾乎都有各種各樣安全方法,比如防火墻(FireWall)、網(wǎng)絡(luò)加密、加密狗等。不過(guò),這些都是系統(tǒng)或網(wǎng)站層次安全設(shè)施。對(duì)于廣大用戶(hù)來(lái)說(shuō),更為直接、也更為有效方法,就是使用信息加密技術(shù)。加密技術(shù)是一門(mén)實(shí)用技術(shù),有著悠久歷史。過(guò)去,加密技術(shù)僅被軍事和謀報(bào)人員以及一些大型商業(yè)企業(yè)所采取,應(yīng)用范圍十分有限。加密學(xué)也是一門(mén)與數(shù)學(xué)關(guān)于深?yuàn)W科學(xué),有能力研究加密學(xué)人為數(shù)不多??峙逻@也是它鮮為人知、較少應(yīng)用原因。信息安全內(nèi)容主要包含五個(gè)部分:信息保密性、信息完整性、信息可用性、信息可控性、信息不可否定性。密碼技術(shù)是確保信息安全關(guān)鍵。第二節(jié)密碼學(xué)發(fā)展認(rèn)證過(guò)程中,用戶(hù)必須向系統(tǒng)提供能夠證實(shí)自己身份信息,證實(shí)用戶(hù)身份信息種類(lèi)很多,能夠是用戶(hù)所知道秘密(口令),也能夠是生物特征(如指紋)等,但現(xiàn)在使用最廣泛依然是用戶(hù)口令(password)。在認(rèn)證系統(tǒng)中口令占據(jù)了非常主要地位,所以對(duì)口令保護(hù)就變得至關(guān)主要。人們提出了許多保護(hù)口令方法,力圖保障口令安全與秘密。這些保護(hù)認(rèn)證信息方法以及認(rèn)證系統(tǒng)是伴隨密碼學(xué)發(fā)展一起發(fā)展,密碼學(xué)為我們提供了保護(hù)口令一個(gè)主要方向。歸根結(jié)底,用戶(hù)用以證實(shí)自己身份是一段信息,不論它是口令還是指紋。而迄今為止,確保信息安全最主要伎倆是加密。對(duì)信息加密、解密、信息保密傳輸,這正是密碼學(xué)研究?jī)?nèi)容。密碼學(xué)泛指一切關(guān)于研究密碼通信學(xué)問(wèn),其中包含下面兩個(gè)領(lǐng)域:怎樣達(dá)成秘密通信,以及怎樣破譯秘密通信。也就是密碼編碼學(xué):指怎樣達(dá)成信息秘密性,判別性科學(xué);密碼分析學(xué):泛指怎樣破解密碼系統(tǒng),或偽造信息使密碼系統(tǒng)誤認(rèn)為真科學(xué)。從密碼學(xué)發(fā)展來(lái)看,它經(jīng)歷了傳統(tǒng)(古典)密碼學(xué)、近代密碼學(xué)、當(dāng)代密碼學(xué)幾個(gè)階段,計(jì)算機(jī)、數(shù)學(xué)領(lǐng)域最新結(jié)果往往與密碼學(xué)關(guān)于或被應(yīng)用于密碼學(xué)研究中。傳統(tǒng)密碼學(xué)、近代密碼學(xué)發(fā)展
密碼學(xué)擁有悠久、豐富多彩歷史。作為古典密碼其中一個(gè),早期出現(xiàn)密寫(xiě)術(shù)形式只需要紙和筆就能夠完成。古典密碼學(xué)兩大范圍是將消息內(nèi)容進(jìn)行重新排列位移密碼和系統(tǒng)地將字母進(jìn)行替換替換密碼。古典密碼學(xué)會(huì)透露出與明文統(tǒng)計(jì)學(xué)結(jié)果相關(guān)大量信息,所以輕易被破解,如對(duì)頻率分析能夠有效地攻擊古典密碼。盡管保密強(qiáng)度很低,因?yàn)閷?shí)現(xiàn)難度低,加密解密快,古典密碼至今依然被廣泛使用。在古典密碼學(xué)中,有四種類(lèi)型代替密碼:
(一)簡(jiǎn)單代替密碼,或單字母密碼:就是明文一個(gè)字符用對(duì)應(yīng)一個(gè)密文字符代替。Caesar密碼就是經(jīng)典簡(jiǎn)單代替密碼。
(二)多編碼代替密碼:它與簡(jiǎn)單代替密碼系統(tǒng)相同,唯一不一樣是單個(gè)字符明文能夠映射成密文幾個(gè)字符之一,比如A可能對(duì)應(yīng)于5、13、25或56,“B”可能對(duì)應(yīng)于7、19、31或42,等等。
(三)字母代替密碼:字符塊被成組加密,比如“ABA”可能對(duì)應(yīng)于“RTQ”,ABB可能對(duì)應(yīng)于“SLL”等。
(四)多表代替密碼:由多個(gè)簡(jiǎn)單代替密碼組成,比如,可能有5個(gè)被使用不一樣簡(jiǎn)單代替密碼,單獨(dú)一個(gè)字符用來(lái)改變明文每個(gè)字符位置。
20世紀(jì)初,包含轉(zhuǎn)輪機(jī)在內(nèi)一些機(jī)械密碼加密裝置被創(chuàng)造出來(lái),其中最有名是二次世界大戰(zhàn)中德國(guó)使用恩尼格碼(Enigma)機(jī)。由這些裝置實(shí)現(xiàn)密碼顯著提升了密碼分析復(fù)雜程度,大量攻擊也僅僅取得了有限結(jié)果。
古典密碼學(xué)以移位密碼、替換密碼、轉(zhuǎn)輪機(jī)為代表,以代替和置換為基礎(chǔ)密碼系統(tǒng)在今天看來(lái)已經(jīng)不堪一擊,無(wú)法確保信息安全,對(duì)處心積慮攻擊者來(lái)說(shuō)形同虛設(shè),因?yàn)橐呀?jīng)有成熟分析方法來(lái)破解這一類(lèi)加密方法。
借助電子計(jì)算機(jī)發(fā)展,人們能夠?qū)崿F(xiàn)更復(fù)雜密碼系統(tǒng)。與古典密碼和機(jī)械密碼對(duì)26個(gè)字母進(jìn)行操作不一樣,計(jì)算機(jī)密碼一個(gè)顯著特征是對(duì)二進(jìn)制串進(jìn)行操作。計(jì)算機(jī)密碼對(duì)密碼分析有更強(qiáng)抵抗力,只有少數(shù)情況下唯密文攻擊才會(huì)生效。
密碼學(xué)大發(fā)展時(shí)期是上世紀(jì)70年代,以DES和RSA算法提出為代表。一系列突破創(chuàng)建了新密碼學(xué)體系。DES是對(duì)稱(chēng)密鑰分組密碼一個(gè)經(jīng)典代表,美國(guó)國(guó)家標(biāo)準(zhǔn)局于1977年公布了由IBM企業(yè)研制一個(gè)加密算法,同意把它作為非機(jī)要部門(mén)使用數(shù)據(jù)加密標(biāo)準(zhǔn).簡(jiǎn)稱(chēng)DES,DES是DataEncryptionStandard縮寫(xiě)。自從公布以來(lái),它一直廣泛用于國(guó)際上商用保密通信和計(jì)算機(jī)通信。但因?yàn)槿趺荑€問(wèn)題和新攻擊伎倆不停出現(xiàn)(差分攻擊、線(xiàn)性攻擊),單純DES加密已經(jīng)極少用于實(shí)際。更多情況下是采取增加密鑰長(zhǎng)度和多重DES加密方法。
RSA作為一個(gè)成功公鑰密碼系統(tǒng),與傳統(tǒng)對(duì)稱(chēng)密碼系統(tǒng)(加密、解密使用相同密鑰)相比,最大特點(diǎn)就是處理了大量密鑰分配、傳輸問(wèn)題。在公鑰密碼系統(tǒng)中,每個(gè)通信者擁有一個(gè)密鑰對(duì),可用其中一個(gè)來(lái)加密,用另一個(gè)來(lái)解密,公開(kāi)其中之一(公鑰)而另二分之一只有自己知道(私鑰)。當(dāng)需要向某人發(fā)送信息時(shí),只需要用他公開(kāi)密鑰對(duì)消息進(jìn)行加密,接收者再用自己私鑰解密即可。而因?yàn)楣€密碼特征,這種密碼系統(tǒng)也能夠用于數(shù)字署名。與對(duì)稱(chēng)密碼一樣,公鑰密碼也輕易受到攻擊,處理方法是增加密鑰長(zhǎng)度,但密鑰長(zhǎng)度增加會(huì)使得加密、解密速度變慢,所以公鑰密碼現(xiàn)在主要僅用于密鑰管理和署名中。
近代密碼學(xué)另一個(gè)分支是序列密碼,這種密碼體制采取與明文長(zhǎng)度相同密鑰,利用模加(異或)方法來(lái)掩蓋明文內(nèi)容。這種加密方法即使簡(jiǎn)單,但在使用一次性密鑰情況下,可取得極高安全性,因?yàn)槊荑€不重復(fù)使用,給破譯帶來(lái)了極大困難。但這種方法也有其缺點(diǎn),因?yàn)槊荑€只使用一次,不適合對(duì)大量數(shù)據(jù)進(jìn)行加密,尤其是流媒體數(shù)據(jù),而且大量密鑰分發(fā)、傳送也是一個(gè)問(wèn)題。這種方法安全性關(guān)鍵是要確保密鑰序列隨機(jī)性,然而“真”隨機(jī)數(shù)是不輕易經(jīng)過(guò)固定算法來(lái)產(chǎn)生,而使用“偽隨機(jī)數(shù)”則存在著一定風(fēng)險(xiǎn)。近年來(lái)提出“量子密碼”采取了量子狀態(tài)來(lái)傳遞信息?!昂Iy(cè)不準(zhǔn)原理”是量子力學(xué)基本原理,它表明,在同一時(shí)刻以相同精度測(cè)定量子位置與動(dòng)量是不可能,只能精準(zhǔn)測(cè)定二者之一。“單量子不可復(fù)制訂理”是“海森堡測(cè)不準(zhǔn)原理”推論,它表明,在不知道量子狀態(tài)情況下復(fù)制單個(gè)量子是不可能,因?yàn)橐獜?fù)制單個(gè)量子就只能先作測(cè)量,而測(cè)量必定改變量子狀態(tài),所以說(shuō)不可能。這么使用量子狀態(tài)作為“一次性便簽”能夠達(dá)成無(wú)條件保密。因?yàn)榧偃缌孔釉趥鬏斨斜粶y(cè)量,其狀態(tài)就會(huì)改變,從而在傳輸中監(jiān)聽(tīng)者會(huì)所以而暴露。即使量子密碼擁有優(yōu)異安全特征,但現(xiàn)在仍處于研究階段。第三節(jié)文件機(jī)密解密中密碼體制研究就整體而言,計(jì)算機(jī)網(wǎng)絡(luò)加密問(wèn)題應(yīng)包含文件存放加密、口令存放加密、數(shù)據(jù)庫(kù)數(shù)據(jù)加密、電子郵件加密等信息加密和數(shù)據(jù)傳輸加密(信道加密)以及密碼體制、密鑰管理中心等三個(gè)方面內(nèi)容,下面我們經(jīng)過(guò)加密原理、密碼體制和產(chǎn)品功效介紹來(lái)概略地講講這三個(gè)方面內(nèi)容:
一密碼原理密碼原理。所謂加密,就是將正常情況下可懂文件數(shù)據(jù)輸入密碼機(jī),由密碼機(jī)變成不可懂亂碼,即將“明文”變成“密文”;所謂解密,就是上述過(guò)程逆過(guò)程,即將“密文”
變成“明文”。密碼機(jī)可看做是一個(gè)用電子元件實(shí)現(xiàn)一個(gè)復(fù)雜數(shù)學(xué)運(yùn)算機(jī)器。復(fù)雜數(shù)學(xué)運(yùn)算選擇范圍大,位數(shù)短(如56位)選擇范圍小。一個(gè)國(guó)家密碼政策,通常是用位數(shù)長(zhǎng)高強(qiáng)度密碼(位數(shù)可達(dá))保護(hù)國(guó)家秘密,其它用于保護(hù)商業(yè)秘密。
在數(shù)據(jù)傳輸加密過(guò)程中,收發(fā)雙方線(xiàn)路密碼機(jī)使用是相同密碼算法,注入了相同密鑰,發(fā)方向收方發(fā)出明文,經(jīng)密碼機(jī)變成密文后送上公網(wǎng)通信線(xiàn)路,抵達(dá)收方后先經(jīng)密碼機(jī)解密再送到收方電腦上。密文在公用通信網(wǎng)上傳輸時(shí),假如被截收,竊密方收到是不可懂亂碼,無(wú)法竊取信息內(nèi)容。
在文件存放加密中,加密解密卡加解密采取同一個(gè)算法和同一個(gè)密鑰,工作人員用電腦處理文件后先將文件加密再存入磁盤(pán),以防竊密者盜用磁盤(pán)竊取文件。工作人員調(diào)用該文件時(shí),文件先經(jīng)解密再?gòu)娘@示器上顯示出來(lái)以供使用。二密碼體制密碼體制,剛才講密碼原理時(shí),收發(fā)雙方密碼機(jī)密碼算法一致、密鑰一致,這在密碼體制中叫“秘密密鑰體制”或“單密鑰體制”,這是一個(gè)傳統(tǒng)密碼體制,有系統(tǒng)理論研究和完善管理機(jī)制,技術(shù)成熟,性能穩(wěn)定,國(guó)內(nèi)自行研制產(chǎn)品安全可靠、保密強(qiáng)度高,通慣用于文件數(shù)據(jù)加密存放和傳輸。國(guó)外著名DES密碼就是美國(guó)政府1977年公布密鑰長(zhǎng)度為56位“秘密密鑰體制”密碼。這種密碼缺點(diǎn)是:僅適適用于內(nèi)部,點(diǎn)對(duì)點(diǎn)方式,事前雙方已知密鑰兩點(diǎn)之間加密傳輸,保守密鑰秘密十分主要,密鑰一旦丟失,整個(gè)系統(tǒng)都要立刻更換密鑰,不然竊密者將可能輕而易舉破解密文。
伴隨近代計(jì)算機(jī)網(wǎng)絡(luò)發(fā)展,不一樣部門(mén)、不一樣單位網(wǎng)上交往增多,“單密鑰體制”顯出了它不足,人們極難對(duì)眾多部門(mén)和單位保管好各自不一樣密鑰。于是人們又創(chuàng)造了“公開(kāi)密鑰體制”或叫“雙密鑰體制”。它是基于一些數(shù)學(xué)問(wèn)題而創(chuàng)造出來(lái)密碼體制,這些數(shù)學(xué)問(wèn)題可記為,其中,寫(xiě)在一起就是,這個(gè)公式說(shuō)明有這么一個(gè)數(shù)學(xué)運(yùn)算,它能夠?qū)⒂妹荑€k加密密文用密鑰k’解密,國(guó)外1978年公布RSA密碼就是這種有兩個(gè)密鑰密碼。這種密碼保密強(qiáng)度不如單密鑰體制密碼,通慣用于通信雙方身份確認(rèn)和數(shù)字署名。
在實(shí)用互聯(lián)網(wǎng)絡(luò)中,各用戶(hù)經(jīng)過(guò)加密傳輸可形成一個(gè)虛擬保密互聯(lián)網(wǎng)。該網(wǎng)要由一個(gè)各用戶(hù)認(rèn)可密鑰管理中心來(lái)生成、管理、分發(fā)和銷(xiāo)毀密鑰,同時(shí)各用戶(hù)可將自己“公鑰”也存放在密鑰管理中心。各用戶(hù)需進(jìn)行保密通信時(shí),先經(jīng)過(guò)公鑰系統(tǒng)進(jìn)行身份確認(rèn)(這個(gè)過(guò)程中密鑰管理中心可起到仲裁判別作用),雙方確認(rèn)身份后由密鑰管理中心分發(fā)秘密密鑰,雙方用得到秘密密鑰進(jìn)行數(shù)據(jù)或文件加密傳輸。這種工作方式不但適適用于黨政機(jī)關(guān)內(nèi)部,也一樣適適用于電子商務(wù),但電子商務(wù)和黨政機(jī)關(guān)不能使用同一個(gè)級(jí)別密碼設(shè)備,黨政機(jī)關(guān)用是“普密”設(shè)備,電子商務(wù)只能用“商密”設(shè)備,二者保密強(qiáng)度是不一樣。第三章分組加密解密算法第一節(jié)DES算法DES算法為密碼體制中對(duì)稱(chēng)密碼體制,又被成為美國(guó)數(shù)據(jù)加密標(biāo)準(zhǔn),是1972年美國(guó)IBM企業(yè)研制對(duì)稱(chēng)密碼體制加密算法。其密鑰長(zhǎng)度為56位,明文按64位進(jìn)行分組,將分組后明文組和56位密鑰按位代替或交換方法形成密文組加密方法。DES加密算法特點(diǎn):分組比較短、密鑰太短、密碼生命周期短、運(yùn)算速度較慢。DES工作基本原理是,其入口參數(shù)有三個(gè):key、data、mode。key為加密解密使用密鑰,data為加密解密數(shù)據(jù),mode為其工作模式。當(dāng)模式為加密模式時(shí),明文按照64位進(jìn)行分組,形成明文組,key用于對(duì)數(shù)據(jù)加密,當(dāng)模式為解密模式時(shí),key用于對(duì)數(shù)據(jù)解密。實(shí)際利用中,密鑰只用到了64位中56位,這么才具備高安全性。第二節(jié)RSA算法當(dāng)前最著名、應(yīng)用最廣泛公鑰系統(tǒng)RSA是在1978年,由美國(guó)麻省理工學(xué)院(MIT)RonRivest,AdiShamir和LeonardAdleman在題為《取得數(shù)字署名和公開(kāi)鑰密碼系統(tǒng)方法》論文中提出。它是一個(gè)基于數(shù)論非對(duì)稱(chēng)(公開(kāi)鑰)密碼體制,是一個(gè)分組密碼體制。其名稱(chēng)來(lái)自于三個(gè)創(chuàng)造者姓名首字母。它安全性是基于大整數(shù)素因子分解困難性,而大整數(shù)因子分解問(wèn)題是數(shù)學(xué)上著名難題,至今沒(méi)有有效方法給予處理,所以能夠確保RSA算法安全性。RSA系統(tǒng)是公鑰系統(tǒng)最具備經(jīng)典意義方法,大多數(shù)使用公鑰密碼進(jìn)行加密和數(shù)字署名產(chǎn)品和標(biāo)準(zhǔn)使用都是RSA算法。RSA算法是第一個(gè)既能用于數(shù)據(jù)加密也能用于數(shù)字署名算法,所以它為公用網(wǎng)絡(luò)上信息加密和判別提供了一個(gè)基本方法。它通常是先生成一對(duì)RSA密鑰,其中之一是保密密鑰,由用戶(hù)保留;另一個(gè)為公開(kāi)密鑰,可對(duì)外公開(kāi),甚至可在網(wǎng)絡(luò)服務(wù)器中注冊(cè),人們用公鑰加密文件發(fā)送給個(gè)人,個(gè)人就能夠用私鑰解密接收。為提升保密強(qiáng)度,RSA密鑰最少為500位長(zhǎng),通常推薦使用1024位。該算法基于下面兩個(gè)事實(shí),這些事實(shí)確保了RSA算法安全有效性:(一)已經(jīng)有確定一個(gè)數(shù)是不是質(zhì)數(shù)快速算法;(二)還未找到確定一個(gè)合數(shù)質(zhì)因子快速算法。第三節(jié)工作原理一、任意選取兩個(gè)不一樣大質(zhì)數(shù)p和q,計(jì)算乘積r=p*q;二、任意選取一個(gè)大整數(shù)e,e與(p-1)*(q-1)互質(zhì),整數(shù)e用做加密密鑰。注意:e選取是很輕易,比如,全部大于p和q質(zhì)數(shù)都可用。三、確定解密密鑰d:d*e=1modulo(p-1)*(q-1)依照e、p和q能夠輕易地計(jì)算出d。四、公開(kāi)整數(shù)r和e,不過(guò)不公開(kāi)d;5)將明文P(假設(shè)P是一個(gè)小于r整數(shù))加密為密文C,計(jì)算方法為:C=Pemodulor6)將密文C解密為明文P,計(jì)算方法為:P=Cdmodulor然而只依照r和e(不是p和q)要計(jì)算出d是不可能。所以,任何人都可對(duì)明文進(jìn)行加密,但只有授權(quán)用戶(hù)(知道d)才可對(duì)密文解密。數(shù)學(xué)原理定理若p,q是相異質(zhì)數(shù),rm==1mod(p-1)(q-1),a是任意一個(gè)正整數(shù),b==a^mmodpq,c==b^rmodpq,則c==amodpq證實(shí)過(guò)程,會(huì)用到費(fèi)馬小定理,敘述以下:m是任一質(zhì)數(shù),n是任一整數(shù),則n^m==nmodm(換另一句話(huà)說(shuō),假如n和m互質(zhì),則n^(m-1)==1modm)利用一些基本群論知識(shí),就能夠很輕易地證出費(fèi)馬小定理證實(shí)因?yàn)閞m==1mod(p-1)(q-1),所以rm=k(p-1)(q-1)+1,其中k是整數(shù)因?yàn)樵趍odulo中是preserve乘法(x==ymodz
and
u==vmodz
=>
xu==yvmodz),所以,c==b^r==(a^m)^r==a^(rm)==a^(k(p-1)(q-1)+1)modpq一、假如a不是p倍數(shù),也不是q倍數(shù)時(shí),
則a^(p-1)==1modp(費(fèi)馬小定理)
=>
a^(k(p-1)(q-1))==1modp
a^(q-1)==1modq(費(fèi)馬小定理)=>
a^(k(p-1)(q-1))==1modq所以p,q均能整除a^(k(p-1)(q-1))-1
=>pq|a^(k(p-1)(q-1))-1
即a^(k(p-1)(q-1))==1modpq
=>
c==a^(k(p-1)(q-1)+1)==amodpq二、假如a是p倍數(shù),但不是q倍數(shù)時(shí),
則a^(q-1)==1modq(費(fèi)馬小定理)
=>
a^(k(p-1)(q-1))==1modq
=>
c==a^(k(p-1)(q-1)+1)==amodq
=>
q|c-a
因p|a
=>
c==a^(k(p-1)(q-1)+1)==0modp
=>
p|c-a所以,pq|c-a
=>
c==amodpq三、假如a是q倍數(shù),但不是p倍數(shù)時(shí),證實(shí)同上四、假如a同時(shí)是p和q倍數(shù)時(shí),
則pq|a=>
c==a^(k(p-1)(q-1)+1)==0modpq
=>
pq|c-a
=>
c==amodpqQ.E.D.這個(gè)定理說(shuō)明a經(jīng)過(guò)編碼為b再經(jīng)過(guò)解碼為c時(shí),a==cmodn
(n=pq)但我們?cè)谧鼍幋a解碼時(shí),限制0<=a<n,0<=c<n,所以這就是說(shuō)a等於c,所以這個(gè)過(guò)程確實(shí)能做到編碼解碼功效為了說(shuō)明該算法工作過(guò)程,我們下面給出一個(gè)簡(jiǎn)單例子,顯然我們?cè)谶@只能取很小數(shù)字,不過(guò)如上所述,為了確保安全,在實(shí)際應(yīng)用上我們所用數(shù)字要大多得多。例:選取p=3,q=5,則r=15,(p-1)*(q-1)=8。選取e=11(大于p和q質(zhì)數(shù)),經(jīng)過(guò)d*11=1modulo8,計(jì)算出d=3。假定明文為整數(shù)13。則密文C為C=Pemodulor=1311modulo15=1,792,160,394,037modulo15=7復(fù)原明文P為:P=Cdmodulor=73modulo15=343modulo15=13因?yàn)閑和d互逆,公開(kāi)密鑰加密方法也允許采取這么方式對(duì)加密信息進(jìn)行"署名",方便接收方能確定署名不是偽造。兩個(gè)在不安全信道中通信人,假設(shè)為Alice(收信者)和Bob(發(fā)信者),他們希望能夠安全通信而不被他們敵手Oscar破壞。Alice想到了一個(gè)方法,她使用了一個(gè)鎖(相當(dāng)于公鑰),這種鎖任何人只要輕輕一按就能夠鎖上,不過(guò)只有Alice鑰匙(相當(dāng)于私鑰)才能夠打開(kāi)。然后Alice對(duì)外發(fā)送無(wú)數(shù)把這么鎖,任何人比如Bob想給她寄信時(shí),只需找到一個(gè)箱子,然后用一把Alice鎖將其鎖上再寄給Alice,這時(shí)候任何人(包含Bob自己)除了擁有鑰匙Alice,都不能再打開(kāi)箱子,這么即使Oscar能找到Alice鎖,即使Oscar能在通信過(guò)程中截獲這個(gè)箱子,沒(méi)有Alice鑰匙他也不可能打開(kāi)箱子,而Alice鑰匙并不需要分發(fā),這么Oscar也就無(wú)法得到這把“私人密鑰”。一、優(yōu)點(diǎn)RSA算法是第一個(gè)能同時(shí)用于加密和數(shù)字署名算法,也易于了解和操作。RSA是被研究得最廣泛公鑰算法,從提出到現(xiàn)在已近二十年,經(jīng)歷了各種攻擊考驗(yàn),逐步為人們接收,普遍認(rèn)為是現(xiàn)在最優(yōu)異公鑰方案之一。該算法加密密鑰和加密算法分開(kāi),使得密鑰分配更為方便。它尤其符共計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境。對(duì)于網(wǎng)上大量用戶(hù),能夠?qū)⒓用苊荑€用電話(huà)簿方式印出。假如某用戶(hù)想與另一用戶(hù)進(jìn)行保密通信,只需從公鑰簿上查出對(duì)方加密密鑰,用它對(duì)所傳送信息加密發(fā)出即可。對(duì)方收到信息后,用僅為自己所知解密密鑰將信息脫密,了解報(bào)文內(nèi)容。由此可看出,RSA算法處理了大量網(wǎng)絡(luò)用戶(hù)密鑰管理難題,這是公鑰密碼系統(tǒng)相對(duì)于對(duì)稱(chēng)密碼系統(tǒng)最突出優(yōu)點(diǎn)。二、缺點(diǎn)(一)產(chǎn)生密鑰很麻煩,受到素?cái)?shù)產(chǎn)生技術(shù)限制,因而難以做到一次一密。(二)安全性,RSA安全性依賴(lài)于大數(shù)因子分解,但并沒(méi)有從理論上證實(shí)破譯RSA難度與大數(shù)分解難度等價(jià),而且密碼學(xué)界多數(shù)人士?jī)A向于因子分解不是NPC問(wèn)題?,F(xiàn)在,人們已能分解140多個(gè)十進(jìn)制位大素?cái)?shù),這就要求使用更長(zhǎng)密鑰,速度更慢;另外,現(xiàn)在人們正在主動(dòng)尋找攻擊RSA方法,如選擇密文攻擊,通常攻擊者是將某一信息作一下偽裝(Blind),讓擁有私鑰實(shí)體簽署。然后,經(jīng)過(guò)計(jì)算就可得到它所想要信息。實(shí)際上,攻擊利用都是同一個(gè)弱點(diǎn),即存在這么一個(gè)事實(shí):乘冪保留了輸入乘法結(jié)構(gòu):(XM)d=Xd*Mdmodn前面已經(jīng)提到,這個(gè)固有問(wèn)題來(lái)自于公鑰密碼系統(tǒng)最有用特征--每個(gè)人都能使用公鑰。但從算法上無(wú)法處理這一問(wèn)題,主要方法有兩條:一條是采取好公鑰協(xié)議,確保工作過(guò)程中實(shí)體不對(duì)其余實(shí)體任意產(chǎn)生信息解密,不對(duì)自己一無(wú)所知信息署名;另一條是決不對(duì)陌生人送來(lái)隨機(jī)文檔署名,署名時(shí)首先使用One-WayHashFunction對(duì)文檔作HASH處理,或同時(shí)使用不一樣署名算法。除了利用公共模數(shù),人們還嘗試一些利用解密指數(shù)或φ(n)等等攻擊.3)速度太慢,因?yàn)镽SA分組長(zhǎng)度太大,為確保安全性,n最少也要600bitx以上,使運(yùn)算代價(jià)很高,尤其是速度較慢,較對(duì)稱(chēng)密碼算法慢幾個(gè)數(shù)量級(jí);且伴隨大數(shù)分解技術(shù)發(fā)展,這個(gè)長(zhǎng)度還在增加,不利于數(shù)據(jù)格式標(biāo)準(zhǔn)化?,F(xiàn)在,SET(SecureElectronicTransaction)協(xié)議中要求CA采取2048比專(zhuān)長(zhǎng)密鑰,其余實(shí)體使用1024比特密鑰。為了速度問(wèn)題,現(xiàn)在人們廣泛使用單,公鑰密碼結(jié)合使用方法,優(yōu)缺點(diǎn)互補(bǔ):單鑰密碼加密速度快,人們用它來(lái)加密較長(zhǎng)文件,然后用RSA來(lái)給文件密鑰加密,極好處理了單鑰密碼密鑰分發(fā)問(wèn)題。公鑰加密算法中使用最廣是RSA。RSA算法研制最初理念與目標(biāo)是努力使互聯(lián)網(wǎng)安全可靠,意在處理DES算法秘密密鑰利用公開(kāi)信道傳輸分發(fā)難題。而實(shí)際結(jié)果不但很好地處理了這個(gè)難題;還可利用RSA來(lái)完成對(duì)電文數(shù)字署名以抗對(duì)電文否定與抵賴(lài);同時(shí)還能夠利用數(shù)字署名較輕易地發(fā)覺(jué)攻擊者對(duì)電文非法篡改,以保護(hù)數(shù)據(jù)信息完整性。現(xiàn)在為止,很多個(gè)加密技術(shù)采取了RSA算法,該算法也已經(jīng)在互聯(lián)網(wǎng)許多方面得以廣泛應(yīng)用,包含在安全接口層(SSL)標(biāo)準(zhǔn)(該標(biāo)準(zhǔn)是網(wǎng)絡(luò)瀏覽器建立安全互聯(lián)網(wǎng)連接時(shí)必須用到)方面應(yīng)用。另外,RSA加密系統(tǒng)還可應(yīng)用于智能IC卡和網(wǎng)絡(luò)安全產(chǎn)品。但現(xiàn)在RSA算法專(zhuān)利期限即將結(jié)束,取而代之是基于橢圓曲線(xiàn)密碼方案(ECC算法)。較之于RSA算法,ECC有其相對(duì)優(yōu)點(diǎn),這使得ECC特征更適合當(dāng)今電子商務(wù)需要快速反應(yīng)發(fā)展時(shí)尚。另外,一個(gè)全新量子密碼也正在發(fā)展中。第四節(jié)DES算法實(shí)例演示一、實(shí)例程序DESTOOL這是DESTOOL截圖,MFC寫(xiě),編譯器是VS,見(jiàn)圖3-1、圖3-2圖3-1加密工具圖3-2加密結(jié)果二、文件功效描述:DES加密類(lèi)#ifndefyxyDESH#defineyxyDESH#include<string>#include<cmath>#include<stdio.h>#include<windows.h>usingnamespacestd;classyxyDES{public:
yxyDES();//類(lèi)結(jié)構(gòu)函數(shù)
~yxyDES();//類(lèi)析構(gòu)函數(shù)
voidInitializeKey(string);
//功效:產(chǎn)生16個(gè)28位key
//參數(shù):源8位字符串(key)
//結(jié)果:函數(shù)將調(diào)用privateCreateSubKey將結(jié)果存于charSubKeys[16][48]
voidEncryptData(string);
//功效:加密8位字符串
//參數(shù):8位字符串
//結(jié)果:函數(shù)將加密后結(jié)果存放于privateszCiphertext[16]
//
用戶(hù)經(jīng)過(guò)屬性Ciphertext得到
voidDecryptData(string);
//功效:解密16位十六進(jìn)制字符串
//參數(shù):16位十六進(jìn)制字符串
//結(jié)果:函數(shù)將解密候結(jié)果存放于privateszPlaintext[8]
//
用戶(hù)經(jīng)過(guò)屬性Plaintext得到
voidEncryptAnyLength(string);
//功效:加密任意長(zhǎng)度字符串
//參數(shù):任意長(zhǎng)度字符串
//結(jié)果:函數(shù)將加密后結(jié)果存放于privateszFCiphertextAnyLength[8192]
//
用戶(hù)經(jīng)過(guò)屬性CiphertextAnyLength得到
voidDecryptAnyLength(string);
//功效:解密任意長(zhǎng)度十六進(jìn)制字符串
//參數(shù):任意長(zhǎng)度字符串
//結(jié)果:函數(shù)將加密后結(jié)果存放于privateszFPlaintextAnyLength[4096]
//
用戶(hù)經(jīng)過(guò)屬性PlaintextAnyLength得到
voidSetCiphertext(char*value);
//Ciphertextset函數(shù)
char*GetCiphertext();
//Ciphertextget函數(shù)
voidSetPlaintext(char*value);
//Plaintextset函數(shù)
char*GetPlaintext();
//Plaintextget函數(shù)
char*GetCiphertextAnyLength();
//CiphertextAnyLengthget函數(shù)
char*GetPlaintextAnyLength();
//PlaintextAnyLengthget函數(shù)
private:
charSubKeys[16][48];//儲(chǔ)存16組48位密鑰
charszCiphertext[16];//儲(chǔ)存16位密文(十六進(jìn)制字符串)
charszPlaintext[8];//儲(chǔ)存8位明文字符串
charszFCiphertextAnyLength[8192];//任意長(zhǎng)度密文(十六進(jìn)制字符串)
charszFPlaintextAnyLength[4096];//任意長(zhǎng)度明文字符串
voidCreateSubKey(char*);
//功效:生成子密鑰
//參數(shù):經(jīng)過(guò)PC1變換56位二進(jìn)制字符串
//結(jié)果:將保留于charSubKeys[16][48]
voidFunctionF(char*,char*,int);
//功效:DES中F函數(shù),
//參數(shù):左32位,右32位,key序號(hào)(0-15)
//結(jié)果:均在變換左右32位
voidInitialPermuteData(string,char*,bool);
//功效:IP變換
//參數(shù):待處理字符串,處理后結(jié)果存放指針,加密/解密(true加密,false解密)
//結(jié)果:函數(shù)改變第二個(gè)參數(shù)內(nèi)容
voidExpansionR(char*,char*);
//功效:將右32位進(jìn)行擴(kuò)展位48位,
//參數(shù):原32位字符串,擴(kuò)展后結(jié)果存放指針
//結(jié)果:函數(shù)改變第二個(gè)參數(shù)內(nèi)容
voidXOR(char*,char*,int,char*);
//功效:異或函數(shù),
//參數(shù):待異或操作字符串1,字符串2,操作數(shù)長(zhǎng)度,處理后結(jié)果存放指針
//結(jié)果:函數(shù)改變第四個(gè)參數(shù)內(nèi)容
stringCompressFuncS(char*);
//功效:S-BOX,數(shù)據(jù)壓縮,
//參數(shù):48位二進(jìn)制字符串,
//結(jié)果:返回結(jié)果:32位字符串
voidPermutationP(string,char*);
//功效:IP逆變換,
//參數(shù):待變換字符串,處理后結(jié)果存放指針
//結(jié)果:函數(shù)改變第二個(gè)參數(shù)內(nèi)容
stringFillToEightBits(string);
//功效:當(dāng)明文不足8
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 吉林省長(zhǎng)春市南關(guān)區(qū)2024-2025學(xué)年八年級(jí)上學(xué)期10月期中生物試題(含答案)
- 低空經(jīng)濟(jì)產(chǎn)業(yè)園時(shí)間安排方案
- 贛南師范大學(xué)《電視名專(zhuān)欄研究》2022-2023學(xué)年第一學(xué)期期末試卷
- 阜陽(yáng)師范大學(xué)《音樂(lè)學(xué)科課程與教學(xué)技能實(shí)訓(xùn)》2022-2023學(xué)年第一學(xué)期期末試卷
- 阜陽(yáng)師范大學(xué)《公共工程項(xiàng)目管理》2022-2023學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)協(xié)和學(xué)院《國(guó)際服務(wù)貿(mào)易》2021-2022學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《寫(xiě)意花鳥(niǎo)畫(huà)》2023-2024學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《課堂教學(xué)技能》2022-2023學(xué)年第一學(xué)期期末試卷
- 第8章 SOPC技術(shù)開(kāi)發(fā)概述課件
- 檔案交接文據(jù)(歸檔)
- 2022年上海市松江區(qū)中考二模語(yǔ)文試卷及答案
- 幼兒園垃圾分類(lèi)整改措施報(bào)告
- 第9課《美麗的顏色》課件(共25張PPT) 部編版語(yǔ)文八年級(jí)上冊(cè)
- 初中體育人教七年級(jí)體育(劉東)室內(nèi)課教學(xué)設(shè)計(jì)《體育保健按摩》
- 悟空識(shí)字1200字字卡-打印版
- 三年級(jí)上冊(cè)數(shù)學(xué) 課件- 時(shí)分的認(rèn)識(shí)(共27張ppt)青島版
- 石油化工設(shè)備維護(hù)檢修規(guī)程
- 金融證券銀行財(cái)務(wù)等行業(yè)術(shù)語(yǔ)英文詞匯(共27頁(yè))
- 經(jīng)方在治療糖尿病及其并發(fā)癥中的應(yīng)用
- 腎素血管緊張素系統(tǒng)藥
- 雙堿法脫硫操作規(guī)程
評(píng)論
0/150
提交評(píng)論