版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第2章信息加密技術與應用信息加密密技術信息加密密技術是是電子商商務安全全交易的的核心,,可實現現電子商商務交易易的保密密性、完完整性,,不可否否認性等等。密碼學是是應用數數學和計計算機科科學相結結合的一一個交叉叉學科。。數學理理論在密密碼編碼碼學和密密碼分析析學中發(fā)發(fā)揮著重重要的作作用,在在密碼學學中用到到的數學學知識主主要包括括:數論論、群論論、組合合邏輯、、復雜性性理論、、遍歷理理論和信信息論等等。密碼技術術的基本本知識密碼學的的幾個基基本概念念明文、密密文、加加密、解解密、加加密算法法、解密密算法、、加密密密鑰和解解密密鑰鑰。一個密碼碼系統((密碼體體制)通通常由五五個部分分組成::明文空間間M,全體明明文的集集合密文空間間C,全體密密文的集集合密鑰空間間,全體體密鑰的的集合K=(Ke,Kd)加密算法法E,C=E(M,,Ke)解密算法法D,M=D(C,,Kd),D是E的逆變換換加解密過過程示意意圖明文明文密文加密算法解密算法密鑰密鑰密碼分析者竊聽密碼學的的發(fā)展歷歷史密碼學的的發(fā)展大大致分為為三個階階段:古古代密碼碼、古典典密碼和和近現代代密碼學學。?1949年之前::密碼學學是一門門藝術?1949~1975年:密碼碼學成為為科學?1976年以后::密碼學學的新方方向——公鑰密碼碼學的出出現。密碼學的的發(fā)展歷歷史由于古時時多數人人并不識識字,最最早的秘秘密書寫寫的形式式只用到到紙筆或或等同物物品,隨隨著識字字率提高高,就開開始需要要真正的的密碼學學了。最古典的的兩個加加密技巧巧是是::
置換換:將字字母順序序重新排排列,例例如『helpme』變成成『ehplem』』;替替代::有系統統地將一一組字母母換成其其他字母母或符號號,例如如『flyatonce』變成成『gmzbupodf』(每每個字母母用下一一個字母母取代))。古典密碼碼實例希臘密碼碼(二維維字母編編碼查表表)公元元前2世世紀123451ABCDE2FGHIJK3LMNOP4QRSTU5VWXYZ明文:HELLO密文:2315313134古典密碼碼實例凱撒密碼碼:公元元前50年公元前50年,古羅羅馬的凱凱撒大帝帝在高盧盧戰(zhàn)爭中中采用的的加密方方法。凱凱撒密碼碼算法就就是把每每個英文文字母向向前推移移K位。ABCDEFG………XYZDEFGHIJ………ABC明文:HELLO密文:KHOOL中國古代代密碼實實例古中國周周朝兵書書《六韜韜.龍韜韜》也記記載了密密碼學的的運用,,其中的的《陰符符》和《《陰書》》便記載載了周武武王問姜姜子牙關關于征戰(zhàn)戰(zhàn)時與主主將通訊訊的方式式:太公曰::「主與與將,有有陰符,,凡八等等。有大大勝克敵敵之符,,長一尺尺。破軍軍擒將之之符,長長九寸。。降城得得邑之符符,長八八寸。卻卻敵報遠遠之符,,長七寸寸。警眾眾堅守之之符,長長六寸。。請糧益益兵之符符,長五五寸。敗敗軍亡將將之符,,長四寸寸。失利利亡士之之符,長長三寸。。諸奉使使行符,,稽留,,若符事事聞,泄泄告者,,皆誅之之。八符符者,主主將祕聞聞,所以以陰通言言語,不不泄中外外相知之之術。敵敵雖聖智智,莫之之能識。?!刮渫跬鯁柼唬骸浮浮荒苊髅鳎幌嗳トミ|遠,,言語不不通。為為之奈何何?」太太公曰::「諸有有陰事大大慮,當當用書,,不用符符。主以以書遺將將,將以以書問主主。書皆皆一合而而再離,,三發(fā)而而一知。。再離者者,分書書為三部部。三發(fā)發(fā)而一知知者,言言三人,,人操一一分,相相參而不不相知情情也。此此謂陰書書。敵雖雖聖智,,莫之能能識?!埂龟幏且砸园说乳L長度的符符來表達達不同的的消息和和指令,,可算是是密碼學學中的替替代法,,把信息息轉變成成敵人看看不懂的的符號。。至于陰陰書則運運用了移移位法,,把書一一分為三三,分三三人傳遞遞,要把把三份書書從新拼拼合才能能獲得還還原的資資訊。密碼學的的發(fā)展歷歷史1949年美國國科學家家香農((Shannon)發(fā)發(fā)表了題題為“保保密系統統的通信信理論””的著名名論文,,提出利利用數學學方法建建立通用用的密鑰鑰密碼體體系。1976年,美美國密碼碼學家Diffie和和Hellman在一一篇題為為“密碼碼學的新新方向””的論文文中提出出了公鑰鑰密碼體體制的思思路1978年RSA公鑰鑰密碼體體制問世世密碼學的的發(fā)展歷歷史二十世紀紀早期的的密碼學學本質上上主要考考慮語言言學上的的模式。。從此之后后重心轉轉移,現現在密碼碼學使用用大量的的數學,,包括資資訊理論論、計算算復雜性性理論、、統計學學、組合合學、抽抽象代數數以及數數論。密密碼學同同時也是是工程學學的分支支,但卻卻是與別別不同,,因為它它必須面面對有智智能且惡惡意的對對手,大大部分其其他的工工程僅需需處理無無惡意的的自然力力量。密密碼學問問題與量量子物理理間的關關連也是是目前熱熱門的研研究。。課堂練習習運用置換換、替代代法設計計一套針針對中文文的加密密方案,,要求如如下:1、能針針對任何何中文字字符。2、簡單單快捷,,加密、、解密一一個中文文字符的的時間不不得超過過10秒秒。3、盡可可能不被被輕易識識破。密碼分析析主要研究究如何分分析和破破譯密碼碼。對于于一個密密碼體制制,如果果能夠根根據密文文確定明明文或密密鑰,或或者能夠夠根據明明文和相相應的密密文確定定密鑰,,則我們們說這個個密碼體體制是可可破譯的的;否則則,稱其其為不可可破譯的的。密鑰鑰空間中中不同密密鑰的個個數稱為為密碼體體制的密密鑰量,,它是衡衡量密碼碼體制安安全性的的一個重重要指標標。密碼分析析密碼系統統的安全全性由兩兩方面因因素決定定:所使用的的密碼算算法的保保密強度度密碼算法法以外不不安全的的因素因此,密密碼算法法的保密密強度并并不等價價于密碼碼系統整整體上的的安全性性。一個個密碼系系統必須須同時完完善技術術與制度度要求,,才能保保證整個個系統的的支全。。密碼攻擊擊類別惟密文攻攻擊:分分析者有有一個或或一些密密文。已知明文文攻擊::分析者者有一些些明文及及對應的的密文。。選擇明文文攻擊::分析者者選擇一一些對攻攻擊有利利的特定定明文,,并產生生對應的的密文。。選擇密文文攻擊::分析者者選擇一一些對攻攻擊有利利的特定定密文,,并得到到對應的的明文。。密碼攻擊擊方法窮舉攻擊擊:密碼攻擊擊者用試試遍所有有密鑰的的方法來來破譯密密碼。所所花時間間=嘗試試次數**一次解解密所需需的時間間。增大密鑰鑰量和加加大解密密算法的的復雜性性。統計分析析攻擊密碼攻擊擊者通過過分析密密文和明明文的統統計規(guī)律律來破譯譯密碼。。設法使明明文的統統計特性性不帶入入密文,,密文不不帶有明明文的痕痕跡。密碼攻擊擊方法數學分析析攻擊密碼攻擊擊者針對對加密算算法的數數學依據據通過數數學求解解的方法法來破譯譯密碼。。應該選用用具有堅堅實數學學基礎和和足夠復復雜的加加密算法法。密碼體制制的分類類根據發(fā)展展史:古古典密碼碼和近現現代密碼碼;根據加密密方式::流密碼碼和分組組密碼;;根據加密密變換是是否可逆逆:單向向函數密密碼以及及雙向變變換密碼碼體制。。根據加解解密算法法所使用用的密鑰鑰是否相相同:對對稱密鑰鑰密碼體體制和非非對稱密密鑰密碼碼體制;;流密碼流密碼采采用密鑰鑰生成器器,根據據初始密密鑰生成成一系列列密鑰流流來加密密信息,,每個明明文可以以選用不不同的密密鑰加密密。如果果流密碼碼所使用用的是真真正隨機機產生的的、與消消息流長長度相同同的二進進制密鑰鑰序列,,此時的的流密鑰鑰就是一一次一密密的密碼碼體制,,這種密密碼的破破解很困困難。流密碼的的加解密密模型圖圖流密碼流密碼目目前的應應用領域域主要還還是軍事事和外交交等部門門??梢怨_開見到的的流密碼碼算法主主要包括括A5、、SEAL、RC4、、PIKE等。。流密碼同步流密密碼::密鑰流流和明文文流相互互獨立;;異步流密密碼:密密鑰流流和明文文流不相相互獨立立,密鑰鑰流的產產生有密密文或者者明文的的參與,,會發(fā)生生錯誤傳傳播現象象。流密碼的的加解密密過程流密碼多多數情況況下用二二進制序序列來表表示,這這種流密密碼將明明文和密密鑰都轉轉換成相相應的二二進制序序列,種種子密鑰鑰用來控控制密鑰鑰流發(fā)生生器,使使密鑰流流發(fā)生器器輸出密密鑰流,,加密變變換只是是簡單的的模2加加變換((即明文文和密鑰鑰進行二二進制的的異或運運算)流密碼的的加解密密過程一個實例例例如,若若令m==4,設設置初始始密鑰為為1000,由由Zi+4=(Zi⊕Zi+1)mod2生生成的密密鑰流為為:1000100110101111,,…。任任何一個個初始密密鑰不全全為0的的密鑰都都將產生生一個周周期為2m-1個二二進制長長度的密密鑰流。。流密碼的的加密強強度二元流密密碼的安安全強度度取決于于密鑰生生成器所所產生的的密鑰流流的性質質。在實實際應用用中的密密鑰流都都是用有有限存儲儲和有限限復雜邏邏輯的電電路來產產生的,,它的輸輸出是周周期序列列。分組密碼碼分組密碼碼體制是是目前商商業(yè)領域域中比較較重要而而流行的的一種加加密體制制,它廣廣泛地應應用于數數據的保保密傳輸輸、加密密存儲等等應用場場合。加密時,,先對明明文分組組,每組組長度都都相同,,然后對對分組加加密得到到等長的的密文,,分組密密碼的特特點是加加密密鑰鑰與解密密密鑰相相同。如果明文文不是分分組長的的倍數,,則要填填充。分組密碼碼分組密碼碼算法的的要求::分組長度度m足夠夠大密鑰空間間足夠大大密碼變換換必須足足夠復雜雜強化密碼碼算法的的措施::將大的明明文分組組再分成成幾個小小段,分分別完成成各個小小段的加加密置換換,最后后進行并并行操作作。采用乘積積密碼技技術。乘乘積密碼碼就是以以某種方方式連續(xù)續(xù)執(zhí)行兩兩個或多多個密碼碼變換。。分組密碼碼基本設計計原則1、擴散散將每一位位明文的的影響盡盡量迅速速地應用用到較多多的密文文位中。。2、混亂亂密文和明明文間的的統計特特性盡可可能的復復雜化,,避免很很有規(guī)律律的、線線性的相相互關系系。課堂練習習思考題1、簡述述密碼體體制的常常見劃分分方法。。2、簡述述置換和和移位的的基本原原理。3、簡述述混亂和和擴散的的基本原原理。4、流密密碼體制制最復雜雜的部分分是加密密變換函函數,這這種說法法對不對對?單向散列列函數單向散列列函數是是一種單單向密碼碼體制,,它是一一個明文文到密文文的不可可逆函數數。也就是說說,是無無法解密密的。通通常用于于只需要要加密不不需要解解密的特特殊場合合。目前多用用于保存存密碼及及保證數數據的完完整性。。單向散列列函數Hash:哈哈希函函數,雜雜湊函數數,散列列函數h=H(m))H具有如下下特性::1)可以以操作任任何大小小的報文文m;2)給定定任意長長度的m,產生的的h的長度固固定;3)給定定m計計算h==H(m)是是容易的的;4)給定定h,尋尋找m,使得得H(m)=h是困難難的;5)給定定m,,要找到到m’,,m’≠m且H(m)=H(m’’)是計計算上不不可行的的;6)尋找找任何((x,y),,x≠y,使得H(x)=H(y)是計算上上不可行行的。常用的Hash算法有有:MD2、、MD4、MD5SHA、、SHA-1單向散列列函數在實際中中,單向向散列函函數建立立在壓縮縮函數的的基礎上上。給定一長長度為m的輸入入,單向向散列函函數輸出出長度為為n的散散列值。。壓縮函函數的輸輸入是消消息分組組和文本本前一分分組的輸輸出。輸輸出是到到該點所所有分組組的散列列,即::hi=f(Mi,hi-1)單向散列列函數MiHi-1hi單向散列列函數MD5算算法RonRivest設計計,RFC1321經歷過MD2,,MD4不不同的版版本對任意輸輸入均產產生128bit的輸輸出基于32位的簡簡單操作作,易于于軟件實實現簡單而緊緊湊,沒沒有復雜雜的程序序和大數數據結構構適合微處處理器實實現(特特別是Intel)單向散列列函數SHA,,SHA-1NIST和NSA共共同設計計,用用在DSS中基于MD4設設計,與與MD5非常常相似產生160位位散列列值密碼學的的基本數數學知識識異或運算算異或是一一個數學學運算符符。他應應用于邏邏輯運算算。其其運算法法則為a⊕b=a‘b++ab’’(a‘‘為非a)。兩個值不不相同,,則異或或結果為為真。反反之,為為假。密碼學的的基本數數學知識識整除若b可以被a整除,則則表示為為a|b,否則表表示為a|b,這里a,b∈∈Z,Z表示整數數集合。。密碼學的的基本數數學知識識模運算a,m∈∈Z,則a模m的運算為為a除以m的余數,,這種運運算為模模(mod)運算,記記為amodm,其值為為0到m-1的整數(一般假定定m>0))。模運算算和普通通的運算算一樣,,有交換換律,結結合律和和分配律律。密碼學的的基本數數學知識識古典密碼碼實例凱撒密碼碼:公元元前50年公元前50年,古羅羅馬的凱凱撒大帝帝在高盧盧戰(zhàn)爭中中采用的的加密方方法。凱凱撒密碼碼算法就就是把每每個英文文字母向向前推移移K位。ABCDEFG………XYZDEFGHIJ………ABC明文:HELLO密文:KHOOL古典密碼碼實例若將字母母編號a-z對對應為1-26凱撒變換換c=((m+k)modnk=3,,n=26密碼學的的基本數數學知識識同余設a,b∈Z,n≠0,如果果n|((a-b),則則稱為a和b模模n同余余,記為為a≡≡b((modn),整整數n稱稱為模數數。若0≤b<<n,我我們稱b是a對對模n的的最小非非負剩余余,也稱稱b為a對模n的余數數。兩個數同同余的基基本性質質如下::密碼學的的基本數數學知識識兩個數同同余的基基本性質質:(5)若ac≡≡bd((modn),a≡b(modn),((a,n)=1,,那么有c≡d(modn))密碼學的的基本數數學知識識逆變換對稱加密密技術對稱加密密系統———私有有密鑰對稱加密密特點數據的發(fā)發(fā)送方和和接受方方使用的的是同一一把私有有密鑰,,即把明明文加密密成密文文和把密密文解密密成明文文用的是是同一把把私有密密鑰。對稱加密密技術對稱加密密過程發(fā)送方用用自己的的私有密密鑰對要要發(fā)送的的信息進進行加密密發(fā)送方將將加密后后的信息息通過網網絡傳送送給接收收方接收方用用發(fā)送方方進行加加密的那那把私有有密鑰對對接收到到的加密密信息進進行解密密,得到到信息明明文.密文明文發(fā)送方Internet密文密鑰發(fā)送方(=密鑰接收方)加密明文接收方密鑰接收方解密對稱加密密技術對稱加密密的特點點優(yōu)點:加解密速速度快缺陷::首先是密密鑰數目目的問題題n×(n-1))/2其次是安安全傳輸輸密鑰也也是一個個難題第三是無無法鑒別別彼此身身份對稱密碼碼體制對稱密碼碼體制,,也叫做做單鑰密密碼體制制或秘密密密鑰密密碼體制制,即加加密密鑰鑰與解密密密鑰相相同的密密碼體制制,這種種體制中中只要知知道加((解)密密算法,,就可以以反推解解(加))密算法法。對稱密碼碼體制的的分類對稱密碼碼體制按按照對明明文數據據的加密密方式不不同,可可以分為為流密碼碼(又叫叫系列密密碼)和和分組密密碼兩類類。分組密碼碼的加密密單元是是分組..流密碼的的加密單單元是字字符或者者比特..幾種典型型的古典典密碼移位密碼碼幾種典型型的古典典密碼當K=3時,此此密碼體體制通常常叫愷撒撒密碼((CaesarCipher),,由JuliusCaesar首首先使用用??梢砸钥闯鲆埔莆幻艽a碼將明文文在明文文空間中中循環(huán)移移K位而而成密文文。幾種典型型的古典典密碼代換密碼碼幾種典型型的古典典密碼維吉尼亞亞密碼法國密碼碼學家維維吉尼亞亞于1585年年提出了了一種多多表代換換密碼,,即維吉吉尼亞密密碼,它它的一個個明文字字母可以以表示成成多個密密文。ABCDEFGHIJKLMNOPQRSTUVWXYZAABCDEFGHIJKLMNOPQRSTUVWXYZBBCDEFGHIJKLMNOPQRSTUVWXYZACCDEFGHIJKLMNOPQRSTUVWXYZABDDEFGHIJKLMNOPQRSTUVWXYZABCEEFGHIJKLMNOPQRSTUVWXYZABCDFFGHIJKLMNOPQRSTUVWXYZABCDEGGHIJKLMNOPQRSTUVWXYZABCDEFHHIJKLMNOPQRSTUVWXYZABCDEFGIIJKLMNOPQRSTUVWXYZABCDEFGHJJKLMNOPQRSTUVWXYZABCDEFGHIKKLMNOPQRSTUVWXYZABCDEFGHIJLLMNOPQRSTUVWXYZABCDEFGHIJKMMNOPQRSTUVWXYZABCDEFGHIJKLNNOPQRSTUVWXYZABCDEFGHIJKLMOOPQRSTUVWXYZABCDEFGHIJKLMNPPQRSTUVWXYZABCDEFGHIJKLMNOQQRSTUVWXYZABCDEFGHIJKLMNOPRRSTUVWXYZABCDEFGHIJKLMNOPQSSTUVWXYZABCDEFGHIJKLMNOPQRTTUVWXYZABCDEFGHIJKLMNOPQRSUUVWXYZABCDEFGHIJKLMNOPQRSTVVWXYZABCDEFGHIJKLMNOPQRSTUWWXYZABCDEFGHIJKLMNOPQRSTUVXXYZABCDEFGHIJKLMNOPQRSTUVW
YYZABCDEFGHIJKLMNOPQRSTUVWXZZABCDEFGHIJKLMNOPQRSTUVWXY幾種典型型的古典典密碼對如下明明文加密密:TOBEORNOTTOBETHATISTHEQUESTION當選定RELATIONS作作為密鑰鑰時,加加密過程程是:明明文一個個字母為為T,第第一個密密鑰字母母為R,,因此可可以找到到在R行行中代替替T的為為K,依依此類推推,得出出對應關關系如下下:密鑰:RELATIONSRELATIONSRELATIONSREL明明文:TOBEORNOTTOBETHATISTHEQUESTION密密文:KSMEHZBBLKSMEMPOGAJXSEJCSFLZSY歷史上以以維吉尼尼亞密表表為基礎礎又演變變出很多多種加密密方法,,其基本本元素無無非是密密表與密密鑰,并并一直沿沿用到二二戰(zhàn)以后后的初級級電子密密碼機上上。幾種典型型的古典典密碼其他常見見的多表表替換密密碼還有有希爾密密碼、置置換密碼碼等,詳詳見課本本23頁頁。仿射密碼碼仿射密碼碼求模的逆逆元在乘法中中,4××1/4=1,,4和1/4互互為逆元元,在模模運算中中,求逆逆元要更更復雜??!假設:一般而論論,如果果gcd(a,,n)==1,那那么a-1≡xmod((n)有有唯一解解,否則則的話,,無解。。如果n是一個個素數,,在從1到n-1的每一一個數都都與n是是互素的的,且在在這個范范圍恰好好有一個個逆元。。仿射密碼碼模逆元的的求解假設M為為模數,,U為小小于M的的本元元元素,且且與M互互素,R為余數數,它們們滿足U*VmodM==R,當當R=1時,我我們稱V為U的的模逆元元,當R≠1時時,稱V為U的的模系數數.模逆逆元和模模系數是是公開密密鑰加密密算法和和數字簽簽名算法法中最常常用的參參數之一一。課堂練習習思考題1、簡述述單向散散列函數數的特點點。2、簡述述對稱密密鑰體制制的特點點。3、計算算下列運運算的結結果異或運算算:1011⊕1100求模:15mod4求逆:a=16,m==5,求求a-14、對英英文加密密,采用用移位密密碼和代代換密碼碼可能的的變換各各有多少少種?5、維吉吉尼亞密密碼體制制能對抗抗統計概概率分析析嗎?DES算算法IBM公公司,,70年年代初提提出,1977成為美美國國家家標準DES是是一種對對稱密鑰鑰算法,,密鑰長長度為56bits((加上上奇偶校校驗,通通常寫成成64bits)是一種分分組加密密算法,,64bits為一一個分組組基本思想想:混亂(Confusion))和擴擴散(Diffusion))使用標準準的算術術和邏輯輯運算DES算算法加密過程程如下::首先對明明文比特特進行初初始置換換,然后后將所得得的結果果進行完完全相同同的依賴賴于密鑰鑰的16輪處理理,最后后應用一一個末尾尾置換獲獲得密文文。依賴于密密鑰的計計算首先先將64比特的的數據平平均分成成兩半,,其中一一半作為為一個復復雜函數數的輸入入,并且且將其輸輸出結果果與另一一半進行行異或。。復雜函函數包括括通過確確定的8個稱為為S-盒盒的非線線性代換換。DES的安安全性主主要依賴賴于S--盒,而而且S--盒是唯唯一的非非線性部部分。解解密過程程與加密密過程一一樣,除除了所使使用的密密鑰的次次序(以以逆序使使用)外外。DES加加密過程程DES加加密過程程首先把明明文分成成以64bit為單位的的塊m,對于每每個m,執(zhí)行如下下操作DES((m)==IP-1?T16?T15?......T2?T1?IP((m)初始置換換,IP16輪迭迭代,Ti,i=1,2,,…16末置換,,IP-1DES加加密過程程初始置換換末置換M=m1m2,……m62m63,m64M’=m58m50,……m23m15,m7IP(M)IP-1(IP((M)))=M迭代過程程T。在在DES算法中中,要重重復16次。設第i次迭代T的輸入入為,其其中L、、R分別別是左半半部分32位和和右半部部分32位,則則第i次次迭代的的輸出為為第i次迭迭代的輸輸出作為為第i++1次迭迭代的輸輸入,進進行下一一次迭代代。Ki是由56位的密密鑰K確確定的48位密密鑰,每每一次迭迭代使用用不同的的48位位密鑰。。16次迭迭代DES加加密過程程f是將一一個32位的符符號串轉轉換為另另一個32位的的符號串串的運算算函數,,功能的的第一步步是將32位的的輸入轉轉換為48位,,并與迭迭代密鑰鑰按位異異或,再再把得到到的48位分為為八組,,每組六六位,分分別通過過S1,S2,…,S8輸出,每每組只輸輸出四位位,組合合成32位,這這32位位最后通通過置換換輸出。。DES加加密過程程DES加加密過程程下一張圖圖中擴增增排列的的選位表表描述了了如何將將32位位轉換為為48位位的方法法,總共共八行六六列。單純置換換是對輸輸入的32位進進行置換換,產生生32位位輸出。。如果輸輸入為Hi=r1r2…r32,則P((Hi)=h16h7…h(huán)4h25,如后表表所示。。擴增排列列E(R))單純置換換P(H))DES加加密過程程數據在S盒中執(zhí)執(zhí)行混淆淆動作。。八個S盒中的的每一個個S盒都都是將六六位的輸輸入映射射為四位位的輸出出。以S1盒為例,,盒中的的數據排排列如下下表所示示。關于DES的評價DES加密解密密完成的的只是簡簡單的算算術運算算,即比比特串的的異或處處理的組組合,因因此速度度快,密密鑰生產產容易,,能以硬硬件或軟軟件的方方式非常常有效的的實現。。對DES的批評①DES的密鑰長長度56位可能太太?、贒ES的迭代次次數可能能太少③S盒(即代代替函數數Sj)中可能能有不安安全因素素④DES的一些關關鍵部分分不應當當保密((如S盒設計))三重DES人們并沒沒有放棄棄使用DES,,并想出出了一個個解決其其長度問問題的方方法,即即采用三三重DES。這種方法法用兩個個密鑰對對明文進進行三次次加密,,假設兩兩個密鑰鑰是K1和K2,其算算法的如如下:1.用用密鑰K1進行行DES加密。。2.用用K2對對步驟1的結果果進行DES解解密。3.用用步驟2的結果果使用密密鑰K1進行DES加加密。這種方法法的缺點點,是要要花費原原來三倍倍時間,,從另一一方面來來看,三三重DES的112位位密鑰長長度是很很“強壯壯”的加加密方式式了。AES(AdvancedEncryptionStandard))AES的的產生美國國家家標準和和技術協協會NIST從從1997年4月5日日開始征征集和評評估新的的數據加加密標準準;1998年NIST發(fā)發(fā)布了15個AES的的候選算算法,并并挑出了了五個((MARS,RC6TM,Rijndael,Serpent,Twofish))進入新新一輪評評估;2000年10月宣布布Rijndael((發(fā)音為為“Rhine-dale””,設計計者為比比利時的的JoanDaemen和VincentRijmen)為AES的的最終算算法;2001年11月26日NIST正正式宣布布AES為美美國政府府的新加加密標準準,該決決定在2002年5月月26日日生效。。AES的的基本參參數AES為為對稱分分組密碼碼體制。。密鑰長度度有128、192和和256比特三三種。數據分組組長度也也有128、192和和256比特三三種。AES變變換由輪輪函數通通過多輪輪迭代實實現,根根據密鑰鑰、分組組長度不不同,迭迭代次數數可能為為10,,12或或14輪輪三種。。AES加加密算法法的具體體實現AES輪輪函數每每輪要經經過四次次變換,,分別是是SubByte())字字節(jié)代換換運算ShiftRows(()行行移位位變換MixColumns()列列混合合變換AddRoundKey())輪輪密鑰的的混合變變換AES加加密算法法的具體體實現假設我們們用的128bit的密鑰,,并且每每次加密密的分組組長為128bit,即16個字節(jié),,此時輪輪函數迭迭代次數數為10輪。每次從明明文中按按順序取取出16個字節(jié)假假設為a0a1a2a3a4a5a6a7a8a9a10a11a12a13a14a15,這16個字節(jié)在在進行變變換前先先放到一一個4×4的矩陣中中。如下下頁圖所所示:AES(AdvancedEncryptionStandard))a0a4a8a12a1a5a9a13a2a6a10a14a3a7a11a15這個矩陣陣稱為狀狀態(tài)(state)以后所有有的變換換都是基基于這個個矩陣進進行的,,到此,,準備工工作已經經完成。?,F在按按照前面面的順序序進行加加密變換換,首先先開始第第一次循循環(huán)的第第一個變變換:字字節(jié)代換換(SubByte(()))。字節(jié)代換換(SubByte(()))a0a4a8a12a1a5a9a13a2a6a10a14a3a7a11a15s00s01s02s03s10s11s12s13s20s21s22s23s30s31s32s33out0out4out8out12out1out5out9out13out2out6out10out14out3out7out11out15查表字節(jié)代換換-S盒盒變換((查表))S12={53},則X=5,,Y==3,out9=edShiftRows(()行行移位位變換s00s01s02s03s10s11s12s13s20s21s22s23s30s31s32s33s00s01s02s03s11s12s13s10s22s23s20s21s33s30s31s32行變換示示意圖SS′MixColumns()列列混合變變換S’0cS’1cS’2cS’3cS0cS1cS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年健康產業(yè)投資中介合同書3篇
- 《人際關系學》課件
- 2024年北京市安全員C1證理論考試試題庫(附答案)
- 避免涉及非法金融活動的合同
- 收費站五一安全培訓
- 專利設備維修合同范例
- 簡易廣告制作合同范例
- 銷售營業(yè)員聘用合同范例
- 蔬菜訂單收購合同范例
- 環(huán)保測評合同范例
- 2024年高考語文二輪復習:語言綜合運用新情境新題型(練習)
- 小數乘除法豎式計算專項練習題大全(每日一練共23份)
- 計算機程序設計語言(Python)學習通超星期末考試答案章節(jié)答案2024年
- DB14∕T638-2011人工影響天氣固定作業(yè)站點建設規(guī)范
- 薪資調整合同(2篇)
- 循環(huán)水泵更換施工方案
- 公路路面恢復施工協議書
- 北師大版(2024新版)七年級上冊數學第四章《基本平面圖形》檢測試卷(含答案解析)
- 國防教育法(課件)主題班會
- 英語完形填空練習題20篇
- 綠色港口等級評價指南
評論
0/150
提交評論