公鑰加密體制的理論與實現(xiàn)論文_第1頁
公鑰加密體制的理論與實現(xiàn)論文_第2頁
公鑰加密體制的理論與實現(xiàn)論文_第3頁
公鑰加密體制的理論與實現(xiàn)論文_第4頁
公鑰加密體制的理論與實現(xiàn)論文_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 本科生畢業(yè)論文(設(shè)計)題目 公鑰加密體制的理論與實現(xiàn) 姓名 李瑤 學號 2012417017 院系 信息科學與工程學院 專業(yè) 軟件工程 指導教師 馬旭 職稱 講師 2016 年 5 月 21 日曲阜師范大學教務(wù)處制目錄摘要3關(guān)鍵詞3Abstract3Key Words31 前言31.1研究背景41.2加密算法的研究現(xiàn)狀42 密碼學基礎(chǔ)知識52.1數(shù)學問題52.2公鑰加密模型62.3安全性定義63經(jīng)典加密算法73.1 ELGamal算法73.1.1 ElGamal算法思想73.1.2 ELGamal算法描述73.3.3 ELGamal方案的安全性73.2 Rabin加密算法83.2.1 Rab

2、in算法思想83.2.2 Rabin算法思想83.2.3 Rabin密碼體制的安全性83.3 RSA密碼算法83.3.1 RSA算法思想83.3.2 RSA算法描述93.3.3 RSA方案的安全性94算法的實現(xiàn)105 總結(jié)126致謝12參考文獻13 公鑰加密體制的理論與實現(xiàn)軟件工程專業(yè)學生:李瑤指導教師:馬旭1 摘要:本文主要論述研究背景及相關(guān)的研究現(xiàn)狀:密碼學中初等加密算法是對稱密碼,各發(fā)送方和各接收方之間都只存在一種密鑰。初等加密算法的密鑰管理復(fù)雜,而且安全性較差。因此引入了高級加密算法,非對稱密碼。然后介紹了密碼學基礎(chǔ)知識,其中涉及數(shù)學困難問題,包括陷門單向函數(shù)問題、整數(shù)分解問題、離散對

3、數(shù)問題等。然后介紹了典型的加密算法,如ELGamal算法,它基于的困難問題是群中的離散對數(shù)問題;RSA算法,它基于大整數(shù)分解問題,與ELGamal算法一樣既可以進行數(shù)據(jù)加密也可以數(shù)字簽名。然后是利用Eclipse軟件開發(fā)工具實現(xiàn)了ELGamal算法的截圖,最后對本文進行了總結(jié)。關(guān)鍵詞:公鑰密碼 信息安全 密碼學 Design and Implementation of Public Key CryptographyStudent Majoring in Soft Engineer: Yao LiTutor Name:Xu MaAbstract:Mainly discusses the rese

4、arch background of this paper and the related research status of elementary encryption algorithm in cryptography which is a symmetric cipher between the sender and the receiver is only one key. The key management of elementary complex encryption algorithm, and poor safety. Therefore the introduction

5、 of advanced encryption algorithm and asymmetric cryptography. Then introduces the basic knowledge of cryptography, which involves the problem of mathematical difficulties, including the trapdoor one-way function problem, integer factorization problem and discrete logarithm problem. Then introduces

6、the typical encryption algorithms, such as ELGamal algorithm, which is based on the difficulty of the problem is the discrete logarithm problem in the group; the RSA algorithm, which is based on the integer factorization problem, like ELGamal the algorithm can encrypt the data can also be a digital

7、signature. Then the ELGamal algorithm is implemented using Eclipse screenshot software development tools, finally summarized in this paper. Key Words: Public key ; Information Security ; Cyrptography;Cryptography 1 前言 互聯(lián)網(wǎng)時代里,人們的生活到處都圍繞著網(wǎng)絡(luò),比如:廣泛使用的騰訊的QQ、微信;阿里巴巴的支付寶、淘寶、蘑菇街;360的瀏覽器以及網(wǎng)易的各種業(yè)務(wù),它們的產(chǎn)生和發(fā)展沖擊著

8、社會的變遷,給人們的生活帶來了巨大的變化。它們帶來了很多方便的同時也存在很多隱患。在網(wǎng)絡(luò)安全問題上已經(jīng)出現(xiàn)很多的惡意、犯罪事件,例如,5月4日,據(jù)每日郵報報道,知情人士爆料稱,在未經(jīng)患者同意下,谷歌已經(jīng)獲得160萬份私人醫(yī)療記錄,用以研發(fā)幫助監(jiān)控腎病的應(yīng)用。隨著有關(guān)我們的信息被越來越多的共享,在很多情況下,民眾根本不知道誰在使用他們的信息。我們經(jīng)??吹綌?shù)據(jù)在未經(jīng)同意或正確理解的情況下被分享,這會產(chǎn)生巨大影響。這就催生出了新的科學即網(wǎng)絡(luò)安全。網(wǎng)絡(luò)安全的發(fā)展為網(wǎng)絡(luò)信息安全共享和為人們服務(wù)的安全、方便、快捷提供了可能。當然,網(wǎng)絡(luò)安全的核心技術(shù)-密碼學顯得尤為重要。1.1研究背景 從整體上來說,密碼學

9、經(jīng)歷過人工密碼,到機械密碼,到電子計算機密碼的發(fā)展歷程。近代密碼時期的密碼技術(shù)常常是憑直覺和信念來進行密碼設(shè)計和分析,而不是推理證明。因此,也有學者將古典、近代密碼時期劃分為一個階段?,F(xiàn)代密碼時期密碼學時期,密碼學越發(fā)成熟。 隨著信息社會的發(fā)展,信息的安全成為一個需要解決的關(guān)鍵問題。信息安全采用了信息論、計算機科學和密碼學等方面的知識,其主要任務(wù)是研究計算機系統(tǒng)和通信網(wǎng)絡(luò)中信息的保護方法,以及實現(xiàn)系統(tǒng)和網(wǎng)絡(luò)中信息的機密性、完整性、認證性、不可否認性、可用性等目標,其中密碼學是實現(xiàn)信息安全目標的核心技術(shù)。密碼學研究實現(xiàn)信息安全各目標的相關(guān)的數(shù)學、方法和技術(shù)。密碼學是數(shù)學、計算機科學、電子與通信等

10、交接在一起的一門交叉的學科。 先出現(xiàn)的對稱加密算法的特點是算法公開、計算量小、加密速度快、加密效率高。不足之處是,交易雙方使用同樣鑰匙,安全性不能保證。而且,用戶每次使用對稱加密算法時,都需要使用其他人不知道的惟一鑰匙,這會使得發(fā)收信雙方所擁有的鑰匙數(shù)量巨大,密鑰管理就成為了用戶的負擔。還有就是對稱加密算法在分布式網(wǎng)絡(luò)系統(tǒng)上使用較為困難,因為密鑰管理困難,導致成本較高。但是對公開密鑰加密算法來說,對稱加密算法能夠提供加密和認證但是沒有簽名功能,使得使用范圍有所縮小。 公鑰密碼的安全性更好,私鑰密碼的通信雙方使用相同的秘鑰,如果一方的秘鑰遭泄露,那么整個通信就會被破解。而且非對稱加密使用一對秘鑰

11、,一個用來加密,一個用來解密,而且公鑰是公開的,秘鑰是自己保存的,不需要像對稱加密那樣在通信之前要先同步秘鑰。公鑰密碼的缺點是加密和解密花費時間長、速度慢,只適合對少量數(shù)據(jù)進行加密。 密鑰分發(fā)問題,使用對稱密鑰體制進行保密通信時,通信雙方需要事先通過安全信道傳遞密鑰,但是安全信道不易實現(xiàn)。因此,對稱密鑰的分發(fā)問題一直困擾著密碼專家。 密鑰管理問題,由于對稱密碼體制的密鑰量過于大。例如如果有個用戶在通信網(wǎng)絡(luò)中,都想和其他個用戶進行通信,則必須使用個密鑰,那么系統(tǒng)的總密鑰量就是 。也就是說當較大時,就會產(chǎn)生、保存、使用、銷毀龐大的密鑰量,這樣操作就會變得很復(fù)雜,也會存在安全隱患。不可抵賴性是對稱密

12、鑰體制的局限,但實際應(yīng)用的需求急需一種新密碼體制的出現(xiàn)。即非對稱密碼密鑰密碼體制也就是公開密鑰密碼體制。1.2加密算法的研究現(xiàn)狀 我們已知私鑰密碼和公鑰密碼各有其特點,但公鑰密碼的適用性以及其優(yōu)越性,使得對它的研究越來越多。其中根據(jù)其基于的數(shù)學問題不同可分為: MH背包公鑰密碼,在背包公鑰密碼算法的基礎(chǔ)上,結(jié)合Rabin算法,使得原先的密碼體制變得更為靈活。改進后的算法不但能在性能上保持高效率,而且還將原先的密鑰變?yōu)楣h,可以根據(jù)用戶需求動態(tài)地改變公鑰,成倍提高安全性能。 RSA算法, RSA公開密鑰加密算法自20世紀70年代提出,現(xiàn)在在電子安全領(lǐng)域的各方面已經(jīng)形成了較為完備的國際規(guī)范。RSA

13、在硬件方面,應(yīng)用在技術(shù)成熟的IC應(yīng)用各種消費電子產(chǎn)品。RSA在軟件方面的應(yīng)用,在Internet上取得了很多的應(yīng)用。 NTRU公約密碼系統(tǒng) NTRU具有很多優(yōu)良特性,如密鑰生成、加密/解密速度快,運算簡單等,還可以廣泛應(yīng)用于通信、嵌入式系統(tǒng)等領(lǐng)域。 ELGamal算法, ELGamal簽名方案,是基于離散對數(shù)問題且主要是為數(shù)字簽名而設(shè)計的,是繼RSA之后最著名的數(shù)字簽名方案。在金融系統(tǒng)中,廣泛地使用到ELGamal簽名體制,同時在通信系統(tǒng)中,也大量使用基于ELGamal簽名算法的認證和通信協(xié)議。 橢圓曲線公鑰密碼算法, ECC技術(shù)的更強安全性、更高效率和更好的性價比,使其在實際中得到了更為廣泛

14、的應(yīng)用。國際上,Scott-Vanstone博士和他的同事在1985年成立了Certicom研究小組,并成功實現(xiàn)和推廣了ECC技術(shù)及產(chǎn)品;2005年3月2日,美國政府部分正式采用ECC用于數(shù)字簽名和密碼交換的排他性的公鑰密碼技術(shù);夏普將M-System 加密技術(shù)并入安全性半導體產(chǎn)品;SET的發(fā)展商Globeset公司計劃將ECC用于付費中,將此技術(shù)并于基于芯片的產(chǎn)品和服務(wù)當中;Entrust提供一系列全面的軟件產(chǎn)品,包括Entrust Authority、TruePass和Entelligence使PKI可以用于多種應(yīng)用;Sun公司計劃推出支持ECC7.0版的Sun Java系統(tǒng)服務(wù)器等。國內(nèi)

15、,我國已經(jīng)擁有了自主知識產(chǎn)權(quán)的ECC算法標準-SM2,完整實現(xiàn)ECC國家標準算法的芯片已經(jīng)研發(fā)成功;2003年5月12日,我國頒布的無線局域網(wǎng)國家標準GB15629.11中采用了ECC算法,并包含了全新的WAPI;ECC技術(shù)已經(jīng)用于我國第二代身份證;基于ECC的可信計算、電子政務(wù)、數(shù)字電視CA等,正在建設(shè)或者已經(jīng)建設(shè)完成。這些都表明ECC在我國正得到越來越多的重視,其應(yīng)用也必將越來越廣泛。2 密碼學基礎(chǔ)知識 在密碼學中,常用的一種方法是基于已知的數(shù)學難題構(gòu)造安全的密碼方案。而公鑰密碼體制是保障信息安全的重要方法,它除了安全還很高效。目前成熟的公鑰密碼算法很多都是基于整數(shù)分解和離散對數(shù)等數(shù)學難題

16、的。本章首先講述了密碼學基于的7種數(shù)學困難問題,通過對這些數(shù)學問題的研究可以更清楚的理解加密的本質(zhì);繼而又講述了公鑰加密模型,至此你可以了解到加密解密的過程。2.1數(shù)學問題(1)陷門單向函數(shù)與“可交換”單向函數(shù) 單向函數(shù):就是滿足下列條件的函數(shù): 1)給定,計算是容易的; 2)給定,計算使得是困難的。 在密碼學中常用的單向函數(shù):一是單向陷門函數(shù);二是單向散列函數(shù)。其中陷門單向函數(shù)即滿足下列條件的函數(shù): 1)可計算性:給定,計算是容易的; 2)單向性即:給定,想要得到使得,很困難; 3)陷門性:存在,已知,對給定的任何,若相應(yīng)的存在則計算使是容易的。 簡言之,知道陷門信息后,函數(shù)就不是單向函數(shù)了

17、。為陷門信息。通常為加密函數(shù),可公開,相當于公開了加密密鑰。需要保密,它是解密密鑰,即私鑰。當使用陷門單向函數(shù)構(gòu)造公鑰加密時,陷門信息也許就是私鑰,也許是某種方法??山粨Q的單向函數(shù)即具有“可交換”特性的單向函數(shù)。(2)整數(shù)分解問題,任何大于1的正整數(shù)都可以分解成如下質(zhì)因數(shù)分解式: ,其中,為質(zhì)數(shù),為正整數(shù)。(3)離散對數(shù)問題,設(shè)為素數(shù)的模循環(huán)群的原根,對任意的,計算:是容易的。反過來,給定計算滿足式中的是困難的,稱為以為基的對數(shù)。因為均為整數(shù),不像實數(shù)那么“連續(xù)”,故稱離散對數(shù)。(其中都屬于模的循環(huán)群)(4)二次剩余問題 若的最大公約數(shù)為1記為,m整除記為有解,則稱為模的二次剩余(或平方剩余)

18、; 否則,稱為模二次非剩余(或平方非剩 二次剩余余)。(5)橢圓曲線問題 橢圓曲線是域上虧格為1的光滑射影曲線,它的(仿射)方程,通常稱為維爾斯特拉斯方程,可以寫成 如果這個域的特征不等于2和3,則可以改寫成或,。(6)歐拉定理問題 一個關(guān)于同余的性質(zhì),歐拉定理表明,若為正整數(shù),且互質(zhì)。(7)費馬定理 它斷言當整數(shù)時,關(guān)于的方程沒有正整數(shù)解。2.2公鑰加密模型 公共密鑰加密方案是一個元組的概率多項式時間算法,滿足以下: 1)算法需要輸入一個安全參數(shù)和輸出一對密鑰。我們稱第一個為公鑰,二是私鑰,每個的長度至少為。而可由確定; 2)算法需要一個公鑰和一段明文。然后根據(jù)輸出密文; 3)算法Dec需要

19、一個密鑰和一段密文,輸出明文或亂碼。我們假設(shè)沒有損失的一般性,Dec是確定的,并寫為:。2.3安全性定義(1)語義安全性 語義安全性是密碼學中的術(shù)語。戈德瓦塞爾和米卡里在1982年首次提出語義安全性的概念,后來又證明了語義安全和另一性質(zhì)密文不可辨別性是等價的。(2) CPA (Chosen-Plaintext Attack) 選擇明文攻擊(CPA)其公共密鑰加密方案具有相同的加密:,在選擇明文攻擊(或CPA安全)中,攻擊者可以事先任意選擇一定數(shù)量的明文,讓被攻擊的加密算法加密,并得到相應(yīng)的密文: 。步驟如下:是運行得到的密鑰;然后A得到用于訪問然后輸出一對消息;隨機選擇,算出密文,發(fā)送給A,我

20、們稱為密文,A繼續(xù)訪問;A輸出;如果實驗結(jié)果為1,否則為0。(3) CCA(Indistinguishability Chosen Ciphertext Attack) 不可區(qū)分選擇密文攻擊(IND-CCA)一個基于身份的加密方案,如果對任意的概率多項式時間攻擊者A的攻擊下,都有,就稱該方案是可以抵抗泄漏的CCA安全加密方案。步驟如下:初始設(shè)置:生成系統(tǒng)的主私鑰和主公鑰;密鑰產(chǎn)生,對身份為ID的用戶生成對應(yīng)的公鑰和私鑰;解密和泄漏查詢:攻擊者A可以進行私鑰查詢,給定一個ID,挑戰(zhàn)者會產(chǎn)生一個對應(yīng)的返還給攻擊者,并且攻擊者給定ID,可以進行相應(yīng)泄漏查詢,泄漏可以看成是私鑰的一個函數(shù),挑戰(zhàn)者返回,

21、其輸出總長記為L;另外也可以自適應(yīng)進行解密查詢,攻擊者給定密文,挑戰(zhàn)者輸出對應(yīng)的消息;解密查詢:攻擊者A可以自適應(yīng)進行解密查詢,給定密文,挑戰(zhàn)者輸出對應(yīng)明文;輸出:A輸出,則稱A贏。3經(jīng)典加密算法 經(jīng)典的密碼學是關(guān)于加密和解密的理論,主要用于通信保密。在今天,密碼學一得到了更深入、廣泛的發(fā)展。其內(nèi)容已不再是單一的加密技術(shù),已被有效、系統(tǒng)地用于電子數(shù)據(jù)的保密性、完整性、真實性和不可否認性等各個方面。本章詳細介紹了ELGamal加密算法、Rabin加密算法和RSA加密算法。3.1 ELGamal算法3.1.1 ElGamal算法思想 ELGamal是一種較為常見的加密算法,基于1984年提出的公鑰

22、密碼體制和橢圓曲線加密體系。ELGamal密碼體制基于的困難問題是群中的離散對數(shù)問題。離散對數(shù)問題是在密碼學中有著廣泛應(yīng)用的問題。ELGamal密碼體制的構(gòu)造方法可推廣到一般的循環(huán)群中,如基于有限域和橢圓曲線的ELGamal面加密方案。ELGamal的特點是加密是概率的,即不同的明文加密后具有不同的密文。3.1.2 ELGamal算法描述 ELGamal加密其實是利用DH密鑰交換思想,產(chǎn)生隨機密鑰加密,然后傳遞生成隨機密鑰的“部件”,接收方利用該“部件”和自己的私鑰生成隨機密鑰進行解密。ELGamal密碼體制可以在任何離散對數(shù)問題難解的有限群中實現(xiàn)。密鑰生成,選擇一個合適的循環(huán)群,設(shè)其階為,生

23、成元為;隨機選取整數(shù),使得,計算y=;公開公鑰,保持私鑰。加密算法,假設(shè)發(fā)送者B想把明文加密發(fā)送給接受者A,B先選擇合適的可逆映射,使得G,并獲取A的公鑰,再選取隨機數(shù)r,,然后計算c=,.密文。 解密算法,A收到密文后,利用私鑰計算:。然后利用的逆映射求出明文。所謂合適的循環(huán)群,是指上的群運算容易計算,求解上的離散對數(shù)問題是計算不可行的。通常包括如下一些群: 1)大素數(shù)取模的乘法群; 2)的階子群,其中是的大素數(shù)因子,是的唯一的階子群; 3)有限域上的乘法群,其中,為素數(shù); 4)有限域上的橢圓曲線上的點構(gòu)成的群。3.3.3 ELGamal方案的安全性 ELGamal加密方案基于的安全問題 E

24、LGamal加密方案的破解是指:給定,能夠得出。如果能破解,則可以來得到,于是在給定,的情況下,得到了,從而解決了DHP。另一方面,如果能夠解決DHP,則可以在給定,的情況下,計算,然后來得到,從而破解了DLP問題。 基本的參數(shù)要求 前面提到加密不同消息必須使用不同的隨機數(shù)r。假如同一個r加密兩個消息,結(jié)果為,由于。如果已知,則很容易計算出來。比特安全性,敵手能夠觀察到密文和。如果是二次剩余。當且僅當是偶數(shù),因而敵手可以根據(jù)密文來確定的奇偶性。從公鑰是否是二次剩余,可以確定的奇偶性。從而可以計算的奇偶性。于是可以確定是否是二次剩余。加上可以確定是否為二次剩余,于是從可以確定m是否為二次剩余。因

25、此,加密泄露了是否為二次剩余這一信息。因此不是語義安全的。即明文m是否為二次剩余這一比特信息不安全。求解離散對數(shù)問題 與RSA問題中因子分解攻擊方法類似,方案的破解的一個直接方法是求解離散對數(shù)問題。這是一種完全攻破,即給出公鑰,可以求私鑰。3.2 Rabin加密算法3.2.1 Rabin算法思想 目前主流的基于概率的素數(shù)測試算法,在構(gòu)建密碼安全體系中占有重要的地位。大整數(shù)因子分解問題:給定一個正整數(shù),找到它的素因子分解,即將寫為=,這里是不同的素數(shù),且。3.2.2 Rabin算法思想 密鑰的生成 隨機生成兩個大的素數(shù)和,滿足,計算。為公鑰,作為私鑰。加密算法 c=解密算法 解密就是求c模n的平

26、方根,即解,該方程等價于方程組 由于p=q=3mod4,可容易地求出c在模p下的2個方程根 和c在模q下的兩個方程 兩兩組合聯(lián)立,可得4個方程組: 求得4個,其中必有一個為明文。3.2.3 Rabin密碼體制的安全性 Rabin密碼體制的破解等價于大整數(shù)因子分解。由于大整數(shù)因子分解被公認是困難的,故Rabin密碼體制不能破解。因此它是第一個可證明安全的個月密碼體制。Rabin方案的可證明安全性:Rabin方案的攻破將會導致解決一個公認的困難問題。所謂“方案的攻破”,就是說給定Rabin方案密文,可得到明文。即擁有一個解密函數(shù),給定y,返回y的4個平方根中的1個。3.3 RSA密碼算法3.3.1

27、 RSA算法思想 公鑰加密算法是1977年由羅納德·李維斯特、阿迪·薩莫爾和倫納德·阿德曼一起提出的。1987年首次公布,當時他們?nèi)硕荚诼槭±砉W院工作。RSA就是他們?nèi)诵帐祥_頭字母拼在一起組成的。 RSA算法基于一個十分簡單的數(shù)論事實:將兩個大素數(shù)相乘十分容易,但是想要對其乘積進行因式分解卻極其困難,因此可以將乘積公開作為加密密鑰。3.3.2 RSA算法描述 RSA的安全性基于大整數(shù)的因子分解,其基礎(chǔ)是數(shù)論中的歐拉定理。因子分解可以破解RSA密碼系統(tǒng),但是目前尚無人證明RSA的解密一定需要分解因子。 密鑰生成,1)選取兩個大素數(shù);2)計算乘積,,其中為n的歐

28、拉函數(shù);3)隨機選擇整數(shù),要求滿足,即與互素;4)用擴展的Euclidean算法計算私鑰,以滿足,即。得到:公鑰為和,是私鑰。 加密過程,明文先轉(zhuǎn)換為比特串分組,使每個分組對應(yīng)的十進制數(shù)小于,即分組長度小于,然后對每個明文分組作加密運算,具體過程: 1)獲得接收公鑰;2)把消息M分組長度為的消息分組;3)使用加密算法,計算出密文。 解密過程,將密文按長度L分組得。1)使用私鑰和解密算法計算;2)得明文消息。3.3.3 RSA方案的安全性 共模攻擊,設(shè)兩個用戶的公鑰中的模相同,雖然加密解密不同,但仍然是不安全的。設(shè)模為,公開的加密密鑰分別為和,通常很可能和是互素的,明文消息為,密文是。敵手截獲和

29、后,可通過如下方法恢復(fù):利用擴展的Euclidean算法求出滿足的兩個整數(shù)和,其中必有一個為負數(shù),不妨設(shè)是。再次利用擴展的Euclidean算法求出,于是,因此公鑰中每個實體的參數(shù)不要相同。 低加密指數(shù),對于加密指數(shù)的選擇,通常建議。原因的解釋要從計算模密的快速算法說起。其實RSA的加密和解密就是計算模密,因此,尋求快速求模密的算法對RSA的加密解密效率至關(guān)重要,于是平方乘算法被提出來。由于平方乘算法的循環(huán)中模乘的次數(shù)等于加密指數(shù)的二進制表示中1的個數(shù),故選擇二進制表示中1較少的那種將會加快加密的速度,例如,,在平方乘算法的循環(huán)中只有2次模乘。 低解密指數(shù)攻擊,為了提高解密速度,希望選用小的,

30、但是有研究表明,利用格攻擊方法在且時,攻擊者可以成功攻擊RSA。另外,M.Wiener提出一種攻擊,可以成功地計算出解密指數(shù),前提是當不夠大時,即滿足條件,如果n的二進制表示為l比特,那么的二進制表示的位數(shù)小于,且和相距不太遠時攻擊有效。為安全起見建議,和有大的素數(shù)因子,設(shè)在模下階為k,由得(為抵御循環(huán)攻擊,的選擇應(yīng)保證使很大,所以,即,為滿足上式的最小值。又當與互素時,,為使大,就應(yīng)該大,且應(yīng)有大的素因子。 不動點,滿足條件的稱為不動點。顯然,不動點對RSA的安全性有一定的威脅,因此,應(yīng)盡量減少。 因子分解攻擊,對RSA最直接的攻擊就是因子分解。如果能夠分解得到和,便可以得到。4算法的實現(xiàn) 本章演示了使用Eclipse實現(xiàn)的ELGamal算法。該算法采用文件輸入輸出形式讀取英文的輸入,然后輸出加密解密的結(jié)果。以下是已完成的部分截圖:圖1 實現(xiàn)ELGamal算法圖2 ELGamal加解密界面圖3 加解密的結(jié)果5 總結(jié) 本文重點講解了公鑰密碼的設(shè)計與實現(xiàn),其中還涉及了數(shù)學困難問題。在對公鑰密碼學的學習以及本文設(shè)計的重點中有以下總結(jié):盡管MH背包公鑰密碼體制的弱密鑰問題在強大的計算機攻擊下顯得不堪一擊,但是由于其生成密鑰效率高,加密/解密速度快,因此在

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論