加密算法介紹及加密算法的選擇_第1頁
加密算法介紹及加密算法的選擇_第2頁
加密算法介紹及加密算法的選擇_第3頁
加密算法介紹及加密算法的選擇_第4頁
加密算法介紹及加密算法的選擇_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

加密算法介紹及如何選擇加密算法與公共密鑰密碼使用密鑰對不同,對稱密鑰密碼使用相似的密鑰加密和解密數(shù)據。RSA/ECC密鑰長度比。在實際的操作過程中,我們普通采用的方式是:采用非對稱加密算法管理對稱算法的密鑰,然后用對稱加密算法加密數(shù)據。加密算法介紹一。

密碼學介紹據記載,公元前4,古希臘人發(fā)明了置換密碼.1881年世界上的第一種電話保密專利出現(xiàn).在第二次世界大戰(zhàn)期間,德國軍方啟用“恩尼格瑪"密碼機,密碼學在戰(zhàn)爭中起著非常重要的作用。隨著信息化和數(shù)字化社會的發(fā)展,人們對信息安全和保密的重要性認識不停提高,于是在1997年,美國國標局公布實施了“美國數(shù)據加密原則(DES)”,民間力量開始全方面介入密碼學的研究和應用中,采用的加密算法有DES、RSA、SHA等。隨著對加密強度需求的不停提高,近期又出現(xiàn)了AES、ECC等.使用密碼學能夠達成下列目的:保密性:避免顧客的標記或數(shù)據被讀取。數(shù)據完整性:避免數(shù)據被更改。身份驗證:確保數(shù)據發(fā)自特定的一方。二。

加密算法介紹根據密鑰類型不同將當代密碼技術分為兩類:對稱加密算法(秘密鑰匙加密)和非對稱加密算法(公開密鑰加密)。對稱鑰匙加密系統(tǒng)是加密和解密均采用同一把秘密鑰匙,并且通信雙方都必須獲得這把鑰匙,并保持鑰匙的秘密。非對稱密鑰加密系統(tǒng)采用的加密鑰匙(公鑰)和解密鑰匙(私鑰)是不同的。對稱加密算法對稱加密算法用來對敏感數(shù)據等信息進行加密,慣用的算法涉及:DES(DataEncryptionStandard):數(shù)據加密原則,速度較快,合用于加密大量數(shù)據的場合。3DES(TripleDES):是基于DES,對一塊數(shù)據用三個不同的密鑰進行三次加密,強度更高。AES(AdvancedEncryptionStandard):高級加密原則,是下一代的加密算法原則,速度快,安全級別高;AES10月,NIST(美國國標和技術協(xié)會)宣布通過從15種侯選算法中選出的一項新的密匙加密原則。Rijndael被選中成為將來的AES.Rijndael是在1999年下六個月,由研究員JoanDaemen和VincentRijmen創(chuàng)立的。AES正日益成為加密多個形式的電子數(shù)據的實際原則。美國原則與技術研究院(NIST)于年5月26日制訂了新的高級加密原則(AES)規(guī)范。算法原理AES算法基于排列和置換運算。排列是對數(shù)據重新進行安排,置換是將一種數(shù)據單元替代為另一種.AES使用幾個不同的辦法來執(zhí)行排列和置換運算。AES是一種迭代的、對稱密鑰分組的密碼,它能夠使用128、192和256位密鑰,并且用128位(16字節(jié))分組加密和解密數(shù)據.與公共密鑰密碼使用密鑰對不同,對稱密鑰密碼使用相似的密鑰加密和解密數(shù)據。通過分組密碼返回的加密數(shù)據的位數(shù)與輸入數(shù)據相似。迭代加密使用一種循環(huán)構造,在該循環(huán)中重復置換和替代輸入數(shù)據。AES與3DES的比較算法名稱算法類型密鑰長度速度解密時間(建設機器每秒嘗試255個密鑰)資源消耗AES對稱block密碼128、192、256位高1490000億年低3DES對稱feistel密碼112位或168位低46億年中非對稱算法常見的非對稱加密算法以下:RSA:由RSA公司發(fā)明,是一種支持變長密鑰的公共密鑰算法,需要加密的文獻塊的長度也是可變的;DSA(DigitalSignatureAlgorithm):數(shù)字簽名算法,是一種原則的DSS(數(shù)字簽名原則);ECC(EllipticCurvesCryptography):橢圓曲線密碼編碼學。ECC在1976年,由于對稱加密算法已經不能滿足需要,Diffie和Hellman發(fā)表了一篇叫《密碼學新動向》的文章,介紹了公匙加密的概念,由Rivet、Shamir、Adelman提出了RSA算法.隨著分解大整數(shù)辦法的進步及完善、計算機速度的提高以及計算機網絡的發(fā)展,為了保障數(shù)據的安全,RSA的密鑰需要不停增加,但是,密鑰長度的增加造成了其加解密的速度大為減少,硬件實現(xiàn)也變得越來越難以忍受,這對使用RSA的應用帶來了很重的負擔,因此需要一種新的算法來替代RSA。1985年N.Koblitz和Miller提出將橢圓曲線用于密碼算法,根據是有限域上的橢圓曲線上的點群中的離散對數(shù)問題ECDLP。ECDLP是比因子分解問題更難的問題,它是指數(shù)級的難度。原理-—橢圓曲線上的難題

橢圓曲線上離散對數(shù)問題ECDLP定義以下:給定素數(shù)p和橢圓曲線E,對Q=kP,在已知P,Q的狀況下求出不大于p的正整數(shù)k.能夠證明由k和P計算Q比較容易,而由Q和P計算k則比較困難。將橢圓曲線中的加法運算與離散對數(shù)中的模乘運算相對應,將橢圓曲線中的乘法運算與離散對數(shù)中的模冪運算相對應,我們就能夠建立基于橢圓曲線的對應的密碼體制。例如,對應Diffie—Hellman公鑰系統(tǒng),我們能夠通過以下方式在橢圓曲線上予以實現(xiàn):在E上選用生成元P,規(guī)定由P產生的群元素足夠多,通信雙方A和B分別選用a和b,a和b予以保密,但將aP和bP公開,A和B間通信用的密鑰為abP,這是第三者無法得知的。對應ELGamal密碼系統(tǒng)能夠采用以下的方式在橢圓曲線上予以實現(xiàn):將明文m嵌入到E上Pm點,選一點B∈E,每一顧客都選一整數(shù)a,0<a<N,N為階數(shù)已知,a保密,aB公開。欲向A送m,可送去下面一對數(shù)偶:[kB,Pm+k(aAB)],k是隨機產生的整數(shù)。A能夠從kB求得k(aAB).通過:Pm+k(aAB)—k(aAB)=Pm恢復Pm.同樣對應DSA,考慮以下等式:K=kG

[其中K,G為Ep(a,b)上的點,k為不大于n(n是點G的階)的整數(shù)]不難發(fā)現(xiàn),給定k和G,根據加法法則,計算K很容易;但給定K和G,求k就相對困難了。這就是橢圓曲線加密算法采用的難題。我們把點G稱為基點(basepoint),k(k〈n,n為基點G的階)稱為私有密鑰(privtekey),K稱為公開密鑰(publickey)。ECC與RSA的比較ECC和RSA相比,在許多方面都有對絕對的優(yōu)勢,重要體現(xiàn)在下列方面:抗攻擊性強。相似的密鑰長度,其抗攻擊性要強諸多倍.計算量小,解決速度快。ECC總的速度比RSA、DSA要快得多。存儲空間占用小。ECC的密鑰尺寸和系統(tǒng)參數(shù)與RSA、DSA相比要小得多,意味著它所占的存貯空間要小得多.這對于加密算法在IC卡上的應用品有特別重要的意義。帶寬規(guī)定低.當對長消息進行加解密時,三類密碼系統(tǒng)有相似的帶寬規(guī)定,但應用于短消息時ECC帶寬規(guī)定卻低得多。帶寬規(guī)定低使ECC在無線網絡領域含有廣泛的應用前景。ECC的這些特點使它必將取代RSA,成為通用的公鑰加密算法。例如SET合同的制訂者已把它作為下一代SET合同中缺省的公鑰密碼算法。下面兩張表達是RSA和ECC的安全性和速度的比較。攻破時間(MIPS年)RSA/DSA(密鑰長度)ECC密鑰長度RSA/ECC密鑰長度比1045121065:11087681326:1101110241607:11020204821010:110782100060035:1RSA和ECC安全模長得比較

功效SecurityBuilder1.2BSAFE3。0163位ECC(ms)1,023位RSA(ms)密鑰對生成3.84,708.3簽名2.1(ECNRA)228.43.0(ECDSA)認證9.9(ECNRA)12.710.7(ECDSA)Diffie-Hellman密鑰交換7。31,654。0RSA和ECC速度比較散列算法散列是信息的提煉,普通其長度要比信息小得多,且為一種固定長度.加密性強的散列一定是不可逆的,這就意味著通過散列成果,無法推出任何部分的原始信息。任何輸入信息的變化,哪怕僅一位,都將造成散列成果的明顯變化,這稱之為雪崩效應。散列還應當是防沖突的,即找不出含有相似散列成果的兩條信息。含有這些特性的散列成果就能夠用于驗證信息與否被修改.單向散列函數(shù)普通用于產生消息摘要,密鑰加密等,常見的有:

MD5(MessageDigestAlgorithm5):是RSA數(shù)據安全公司開發(fā)的一種單向散列算法。

SHA(SecureHashAlgorithm):能夠對任意長度的數(shù)據運算生成一種160位的數(shù)值;SHA—1在1993年,安全散列算法(SHA)由美國國標和技術協(xié)會(NIST)提出,并作為聯(lián)邦信息解決原則(FIPSPUB180)公布;1995年又公布了一種修訂版FIPSPUB180-1,普通稱之為SHA—1。SHA—1是基于MD4算法的,并且它的設計在很大程度上是模仿MD4的?,F(xiàn)在已成為公認的最安全的散列算法之一,并被廣泛使用.原理SHA—1是一種數(shù)據加密算法,該算法的思想是接受一段明文,然后以一種不可逆的方式將它轉換成一段(普通更?。┟芪?也能夠簡樸的理解為取一串輸入碼(稱為預映射或信息),并把它們轉化為長度較短、位數(shù)固定的輸出序列即散列值(也稱為信息摘要或信息認證代碼)的過程.單向散列函數(shù)的安全性在于其產生散列值的操作過程含有較強的單向性。如果在輸入序列中嵌入密碼,那么任何人在不懂得密碼的狀況下都不能產生對的的散列值,從而確保了其安全性。SHA將輸入流按照每塊512位(64個字節(jié))進行分塊,并產生20個字節(jié)的被稱為信息認證代碼或信息摘要的輸出.該算法輸入報文的最大長度不超出264位,產生的輸出是一種160位的報文摘要。輸入是按512位的分組進行解決的。SHA-1是不可逆的、防沖突,并含有良好的雪崩效應。通過散列算法可實現(xiàn)數(shù)字簽名實現(xiàn),數(shù)字簽名的原理是將要傳送的明文通過一種函數(shù)運算(Hash)轉換成報文摘要(不同的明文對應不同的報文摘要),報文摘要加密后與明文一起傳送給接受方,接受方將接受的明文產生新的報文摘要與發(fā)送方的發(fā)來報文摘要解密比較,比較成果一致表達明文未被改動,如果不一致表達明文已被篡改.MAC(信息認證代碼)就是一種散列成果,其中部分輸入信息是密碼,只有懂得這個密碼的參加者才干再次計算和驗證MAC碼的正當性.MAC的產生參見下圖。輸入信息密碼散列函數(shù)信息認證代碼SHA—1與MD5的比較由于兩者均由MD4導出,SHA-1和MD5彼此很相似。對應的,他們的強度和其它特性也是相似,但尚有下列幾點不同:

對強行供應的安全性:最明顯和最重要的區(qū)別是SHA-1摘要比MD5摘要長32位.使用強行技術,產生任何一種報文使其摘要等于給定報摘要的難度對MD5是2128數(shù)量級的操作,而對SHA-1則是2160數(shù)量級的操作.這樣,SHA-1對強行攻擊有更大的強度。

對密碼分析的安全性:由于MD5的設計,易受密碼分析的攻擊,SHA—1顯得不易受這樣的攻擊。

速度:在相似的硬件上,SHA-1的運行速度比MD5慢。對稱與非對稱算法比較

以上綜述了兩種加密辦法的原理,總體來說重要有下面幾個方面的不同:

在管理方面:公鑰密碼算法只需要較少的資源就能夠實現(xiàn)目的,在密鑰的分派上,兩者之間相差一種指數(shù)級別(一種是n一種是n2)。因此私鑰密碼算法不適應廣域網的使用,并且更重要的一點是它不支持數(shù)字簽名。

在安全方面:由于公鑰密碼算法基于未解決的數(shù)學難題,在破解上幾乎不可能。對于私鑰密碼算法,到了AES雖說從理論來說是不可能破解的,但從計算機的發(fā)展角度來看。公鑰更含有優(yōu)越性。

從速度上來看:AES的軟件實現(xiàn)速度已經達成了每秒數(shù)兆或數(shù)十兆比特。是公鑰的100倍,如果用硬件來實現(xiàn)的話這個比值將擴大到1000倍。三。

加密算法的選擇前面的章節(jié)已經介紹了對稱解密算法和非對稱加密算法,有諸多人疑惑:那我們在實際使用的過程中終究該使用哪一種比較好呢?我們應當根據自己的使用特點來擬定,由于非對稱加密算法的運行速度比對稱加密算法的速度慢諸多,當我們需要加密大量的數(shù)據時,建議采用對稱加密算法,提高加解密速度。對稱加密算法不能實現(xiàn)簽名,因此簽名只能非對稱算法。由于對稱加密算法的密鑰管理是一種復雜的過程,密鑰的管理直接決定著他的安全性,因此當數(shù)據量很小時,我們能夠考慮采用非對稱加密算法。在實際的操作過程中,我們普通采用的方式是:采用非對稱加密算法管理對稱算法的密鑰,然后用對稱加密算法加密數(shù)據,這樣我們就集成了兩類加密算法的優(yōu)點,既實現(xiàn)了加密速度快的優(yōu)點,又實現(xiàn)了安全方便管理密鑰的優(yōu)點。如果在選定了加密算法后,那采用多少位的密鑰呢?普通來說,密鑰越長,運行的速度就越慢,應當根據的我們實際需要的安全級別來選擇,普通來說,RSA建議采用1024位的數(shù)字,ECC建議采用160位,AES采用128為即可.四。

密碼學在當代的應用隨著密碼學商業(yè)應用的普及,公鑰密碼學受到前所未有的重視。除傳統(tǒng)的密碼應用系統(tǒng)外,PKI系統(tǒng)以公鑰密碼技術為主,提供加密、簽名、認證、密鑰管理、分派等功效。保密通信:保密通信是密碼學產生的動因。使用公私鑰密碼體制進行保密通信時,信息接受者只有懂得對應的密鑰才能夠解密該信息。數(shù)字簽名:數(shù)字簽名技術能夠替代傳統(tǒng)的手寫簽名,并且從安全的角度考慮,數(shù)字簽名含有較好的防偽造功效。在政府機關、軍事領域、商業(yè)領域有廣泛的應用環(huán)境。秘密共享:秘密共享技術是指將一種秘密信息運用密碼技術分拆成n個稱為共享因子的信息,分發(fā)給n個組員,只有k(k≤n)個正當組員的共享因子才能夠恢復該秘密信息,其中任何一種或m(m≤k)個組員合作都不懂得該秘密信息。運用秘密共享技術能夠控制任何需要多個人共同控制的秘密信息、命令等。認證功效:在公開的信道上進行敏感信息的傳輸,采用簽名技術實現(xiàn)對消息的真實性、完整性進行驗證,通過驗證公鑰證書實現(xiàn)對通信主體的身份驗證。密鑰管理:密鑰是保密系統(tǒng)中更為脆弱而重要的環(huán)節(jié),公鑰密碼體制是解決密鑰管理工作的有力工具;運用公鑰密碼體制進行密鑰協(xié)商和產生,保密通信雙方不需要事先共享秘密信息;運用公鑰密碼體制進行密鑰分發(fā)、保護、密鑰托管、密鑰恢復等.基于公鑰密碼體制能夠實現(xiàn)以上通用功效以外,還能夠設計實現(xiàn)下列的系統(tǒng):安全電子商務系統(tǒng)、電子現(xiàn)金系統(tǒng)、電子選舉系統(tǒng)、電子招投標系統(tǒng)、電子彩票系統(tǒng)等。公鑰密碼體制的產生是密碼學由傳統(tǒng)的政府、軍事等應用領域走向商用、民用的基礎,同時互聯(lián)網、電子商務的發(fā)展為密碼學的發(fā)展開辟了更為廣闊的前景。五。

加密算法的將來隨著計算辦法的改善,計算機運行速度

溫馨提示

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

評論

0/150

提交評論