信息安全課件-02-密碼學基礎_第1頁
信息安全課件-02-密碼學基礎_第2頁
信息安全課件-02-密碼學基礎_第3頁
信息安全課件-02-密碼學基礎_第4頁
信息安全課件-02-密碼學基礎_第5頁
已閱讀5頁,還剩255頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1第2講密碼學基礎2密碼學的起源和發(fā)展三個階段:1949年之前密碼學是一門藝術(shù)1949~1975年密碼學成為科學1976年以后密碼學的新方向——公鑰密碼學3第1階段-古典密碼

密碼學還不是科學,而是藝術(shù)出現(xiàn)一些密碼算法和加密設備密碼算法的基本手段出現(xiàn),針對的是字符簡單的密碼分析手段出現(xiàn)主要特點:數(shù)據(jù)的安全基于算法的保密4第1階段-古典密碼Phaistos圓盤,一種直徑約為160mm的Cretan-Mnoan粘土圓盤,始于公元前17世紀。表面有明顯字間空格的字母,至今還沒有破解。520世紀早期密碼機6第1階段-古典密碼1883年Kerchoffs第一次明確提出了編碼的原則:加密算法應建立在算法的公開不影響明文和密鑰的安全。這一原則已得到普遍承認,成為判定密碼強度的衡量標準,實際上也成為傳統(tǒng)密碼和現(xiàn)代密碼的分界線。7

計算機使得基于復雜計算的密碼成為可能相關技術(shù)的發(fā)展1949年Shannon的“TheCommunicationTheoryofSecretSystems”

1967年DavidKahn的《TheCodebreakers》1971-1973年IBMWatson實驗室的HorstFeistel等幾篇技術(shù)報告主要特點:數(shù)據(jù)的安全基于密鑰而不是算法的保密

第2階段1949~197581976年:Diffie&Hellman的

“NewDirectionsinCryptography”

提出了不對稱密鑰;1977年Rivest,Shamir&Adleman提出了RSA公鑰算法90年代逐步出現(xiàn)橢圓曲線等其他公鑰算法主要特點:公鑰密碼使得發(fā)送端和接收端無密鑰傳輸?shù)谋C芡ㄐ懦蔀榭赡艿?階段1976~91977年DES正式成為標準80年代出現(xiàn)“過渡性”的“PostDES”算法,如IDEA,RCx,CAST等90年代對稱密鑰密碼進一步成熟Rijndael,RC6,MARS,Twofish,Serpent等出現(xiàn)2001年Rijndael成為DES的替代者第3階段1976~10保密通信11保密通信的功罪100年前,1894年的中日甲午海戰(zhàn),中國慘敗,其本質(zhì)是由于清政府的腐敗,但其中一個重要的具體原因,是日方在甲午戰(zhàn)爭前就破譯了清政府使用的密電碼。日方破譯的電報多達一百余則,對清政府的決策、海軍的行蹤等了如指掌,因而日方不僅在海戰(zhàn)中取得了勝利,還迫使清政府簽訂“馬關條約”,割讓遼東半島、臺灣及澎湖列島,賠償軍費白銀2億兩。12保密通信的功罪1917年1月,正當?shù)谝淮问澜绱髴?zhàn)進入第三個年頭時,英國海軍破譯機關截收到了德國外長齊默爾曼簽發(fā)的一份密報,經(jīng)過一個多月的辛勤勞作,終于在2月下旬完全破開了那份密報。密報稱,德國將在歐洲進行無限制的潛艇戰(zhàn),意思是說,中立國家的船隊也在其打擊目標之列,同時指出,若美國不再保持中立,就要求墨西哥與德國結(jié)盟,對美宣戰(zhàn)。英國外交部在權(quán)衡了種種利弊后,到2月22日將此密報交給了美國政府,德國政府的陰謀激怒了開戰(zhàn)以來一直保持中立并且在三個月前還聲明繼續(xù)保持中立的美國人,五個星期后美國對德宣戰(zhàn),出兵西線,既避免了在美國本土燃起戰(zhàn)火,又加速了協(xié)約國的勝利。13保密通信的功罪1941年12月,日本取得了突襲珍珠港、摧毀美國太平洋艦隊主力的重大勝利,為了完全控制太平洋,并設法誘出在珍珠港的美國艦隊殘部予以徹底消滅,日本制定了于1942年6月突然攻擊夏威夷前哨中途島的計劃。14保密通信的功罪當時日本海軍使用的是日本最高級的密碼體制——紫密,它的第二版本JN25b自1940年12月1日啟用后應在1942年4月1日內(nèi)第三版本JN25c替換。但由于艦船分散在廣闊的海域不停地轉(zhuǎn)移,給分發(fā)新的版本增添許多困難,因此替換工作延期到5月1日,后因同樣的原因再延期—個月,到6月1日啟用新版本。這就使盟國破譯人員有充分的時間更透徹地破解JY25b。5月27日,山本的作戰(zhàn)命令已基本上被破譯,美國太平洋艦隊司令尼米茲海軍上將發(fā)布作戰(zhàn)計劃,將3艘航空母艦部署在敵艦不可能偵察到的海域,戰(zhàn)斗打響時也以突然攻擊的方式打擊日軍的突擊艦隊。6月4日,日軍4艘巨型航空母艦在一日之內(nèi)相繼被炸沉.從此日本海軍由進攻轉(zhuǎn)為防御,最終走向失敗。15保密通信的功罪1943年春天,山本五十六為了控制不斷惡化的殘局,親自前住所羅門群島基地巡視,以鼓舞士氣。在視察前五天,1943年4月13日,日軍第八艦隊司令將山本行將視察的行程、時間表,用JN25體制加密后播發(fā)給有關基地,以作好迎接的準備,盡管該體制的所用版本在4月1日剛換過,但美國破譯人員根據(jù)過去的經(jīng)驗,迅速地破譯了這份密報,美軍決定在空中打掉山本的座機,使日軍失去一位戰(zhàn)略家,沉重地打擊日軍士氣。經(jīng)過精心組織,周密安排,終于使山本五十六在飛往視察地途中,被美軍飛機擊落,葬身于叢林深處。16密碼學起源密碼是通信雙方按約定的法則進行信息特殊變換的一種重要保密手段。依照這些法則,變明文為密文,稱為加密變換;變密文為明文,稱為解密變換。17世紀,英國著名的哲學家弗朗西斯·培根在他所著的《學問的發(fā)展》一書中最早給密碼下了定義,他說,“所謂密碼應具備三個必要的條件,即易于翻譯、第三者無法理解、在一定場合下不易引人生疑?!?/p>

加密解密明文密文原始明文17密碼學起源謀成于密,敗于泄——明揭暄兵經(jīng)百言》古典密碼學包含兩個互相對立的分支,即密碼編碼學(Cryptography)和密碼分析學(Cryptanalytics)。前者編制密碼以保護秘密信息,而后者則研究加密消息的破譯以獲取信息。二者相反相成,共處于密碼學的統(tǒng)一體中。現(xiàn)代密碼學除了包括密碼編碼學和密碼分析學外,還包括安全管理、安全協(xié)議設計、散列函數(shù)等內(nèi)容。18密碼學起源大約在4000年以前,在古埃及的尼羅河畔,一位擅長書寫者在貴族的基碑上書寫銘文時有意用加以變形的象形文字而不是普通的象形文字來寫銘文,從而揭開了有文字記載的密碼史。這篇頗具神秘感的碑文,已具備了密碼的基本特征:把一種符號(明文)用另一種符號(密文)代替19密碼學起源公元前5世紀,古斯巴達人使用了一種叫做“天書”的器械,這是人類歷史上最早使用的密碼器械?!疤鞎笔且桓貌菁垪l、皮條或羊皮紙條緊緊纏繞的木棍。密信自上而下寫在羊皮紙條上。然后把羊皮紙條解開送出。把羊皮紙條重新纏在一根直徑和原木棍相同的木棍上,這樣字就一圈圈跳出來。20密碼學起源公元前1世紀古羅馬凱撒大帝時代曾使用過一種“代替式密碼”,在這種密碼中,每個字母都由其后的第三個字母(按字母順序)所代替。這種代替式密碼直到第二次大戰(zhàn)時還被日本海軍使用。公元前4世紀前后,希臘著名作家艾奈阿斯在其著作《城市防衛(wèi)論》中就曾提到一種被稱為“艾奈阿斯繩結(jié)”的密碼。它的作法是從繩子的一端開始,每隔一段距離打一個繩結(jié),而繩結(jié)之間距離不等,不同的距離表達不同的字母。21密碼學起源〈六韜.龍韜.陰符〉武王問太公曰:‘引兵深入諸侯之地,三軍猝有緩急,或利或害。吾將以近通遠,從中應外,以給三軍之用。為之奈何?’太公曰:‘主與將,有陰符。凡八等:有大勝克敵之符,長一尺;破軍殺將之符,長九寸;降城得邑之符,長八寸;卻敵報遠之符,長七寸;誓眾堅守之符,長六寸;請糧益兵之符,長五寸;敗軍亡將之符,長四寸;失利亡士之符,長三寸。諸奉使行符,稽留者,若符事泄,聞者告者,皆誅之。八符者,主將秘聞,所以陰通言語,不泄中外相知之術(shù)。敵雖圣智,莫之通識。’武王曰:‘善哉。’22密碼學起源〈六韜.龍韜.陰書〉武王問太公曰:‘引兵深入諸侯之地,主將欲合兵,行無窮之變,圖不測之利。其事繁多,符不能明;相去遼遠,言語不通。為之奈何?’太公曰:‘諸有陰事大慮,當用書,不用符。主以書遺將,將以書問主。書皆一合而再離,三發(fā)而一知。再離者,分書為三部;三發(fā)而一知者,言三人,人操一分,相參而不知情也。此謂陰書。敵雖圣智,莫之能識。’武王曰:‘善哉。’23密碼學起源在古代還出現(xiàn)過一種被稱為“疊痕法”的密碼,使用時先把信紙折疊幾下(上下及左右),然后鋪平信紙,將傳遞的信息按順序一個個分開,寫在折痕的交叉點上,每一個交叉點寫一個字。然后再在空白位置上填上公開的普通信文,普通信文與秘密信文的文字通順地連貫在一起。為了防止被敵人察覺,使用這種密碼需要在編公開信文上下些功夫。如果在秘密信文上再用些暗語式密碼,那么敵人就更難看出破綻了。宋曾公亮、丁度等編撰《武經(jīng)總要》“字驗”記載,北宋前期,在作戰(zhàn)中曾用一首五言律詩的40個漢字,分別代表40種情況或要求,這種方式已具有了密碼本體制的特點。24密碼學起源暗號。簡單地說,暗號就是通過用物件的狀態(tài)或人的行為來傳達事先約定的信息.如窗臺上的花瓶、手中拿著的報紙、口中昨著的曲子,可分別代表“現(xiàn)在安全”、“我是你要找的人”、“我在找自己人”等明確的信息.隱語。暗號是把信息變換為物件或動作,隱語則是把信息變換成與此信息完全無關的(但有意義的)語言.據(jù)說,1941年,日本偷襲珍珠港前兩星期,美國情報人員曾截獲一次重要的電話對話.那是兩名分別在東京和華盛頓的日本高級官員之間的通話.這段對話里“小孩出生”的真正意思是“發(fā)動戰(zhàn)爭”.在華盛頓的日本人:是不是真的有個小孩要出生了?在東京的日本人:是的.而且看來馬上就要出生了.在華盛頓的日本人:這個小孩真的要生了嗎?是在哪個方向呢?25密碼學起源16世紀意大利數(shù)學家卡爾達諾發(fā)明的一種保密通信方法,史稱“卡爾達諾漏格板”.漏格板是一張用硬質(zhì)材料(如硬紙、羊皮、金屬等)做成的板,上面挖了一些長方形的孔,即漏格.26密碼學起源〈兵經(jīng)百言.衍部.傳〉軍行無通法,則分者不能合,遠者不能應。彼此莫相喻,敗道也。然通而不密,反為敵算。故自金、旌、炮、馬、令箭、起火、烽煙,報警急外;兩軍相遇,當詰暗號;千里而遙,宜用素書,為不成字、無形文、非紙簡。傳者不知,獲者無跡,神乎神乎!或其隔敵絕行,遠而莫及,則又相機以為之也?!?7密碼學起源大約在1793年,當時的美國總統(tǒng)托馬斯杰斐遜發(fā)明了一種輪子密碼機。轉(zhuǎn)動輪子使明文中的所有字母全排在一條直線上為止.這時圓柱體的其他25行字母也因這一行的固定而被固定了.任選這25行中的一行發(fā)出去即為密文.28密碼學起源“謎”(ENIGMA)密碼最初是由一個叫胡戈·科赫的荷蘭人發(fā)明的。起初主要提供給想保護自己生意秘密的公司使用,但其商界的銷路一直不理想。后來德國人將其改裝為軍用型,使之更為復雜可靠。德國海軍于1926年開始使用“ENIGMA”,陸軍則于1928年開始使用。1933年,納粹最高統(tǒng)帥部通信部決定將“ENIGMA”作為德國國防軍新式閃擊部隊的通信裝置。德國人在戰(zhàn)爭期間共生產(chǎn)了大約10多萬部“謎”密碼機。1940年,經(jīng)過盟軍密碼分析學家的不懈努力,“恩尼格瑪”密碼機被動攻破,盟軍掌握了德軍的許多機密,而德國軍方卻對此一無所知。29密碼學起源傳說,古時候有一對夫妻,男的名叫李石匠,女的叫張小花。李石匠靠手藝賺錢,張小花在家紡紗織布。一年,李石匠參加修建石橋,因工程緊張,十一個月也沒回家一次。張小花獨自在家只有紡車做伴。一天石匠工地回來一個工友路過她家,她托這個工友給丈夫帶去一封書信。30密碼學起源第六十回吳用智賺玉麒麟梁山泊義軍頭領宋江久慕盧俊義的威名,一心想招取盧俊義上山坐第一把交椅,共圖大業(yè),替天行道。智多星吳用扮成一個算命先生,利用盧俊義正為躲避“血光之災”的惶恐心里,口占四句卦歌,并讓他端書在家宅的墻壁上。盧花灘上有扁舟,俊杰黃昏獨自游。義到盡頭原是命,反躬逃難必無憂。這四句詩寫出后,被官府拿到了證據(jù),大興問罪之師,到處捉拿盧俊義,終于把他逼上梁山。3132加密與解密現(xiàn)代密碼學涉及數(shù)學(如數(shù)論、有限域、復雜性理論、組合算法、概率算法等)、物理學(如量子力學、現(xiàn)代光學、混沌動力學等)、信息論、計算機科學等學科。1949年,信息論之父C.E.Shannon發(fā)表了《保密系統(tǒng)的通信理論》,密碼學走上科學和理性之路。1976年W.Diffie和M.E.Hellman發(fā)表的《密碼學的新方向》,以及1977年美國公布實施的數(shù)據(jù)加密標準DES,標志著密碼學發(fā)展的革命。2001年11月美國國家標準技術(shù)研究所發(fā)布高級數(shù)據(jù)加密標準AES代表著密碼學的最新發(fā)展。33加密與解密基于密鑰的算法通常有兩類:對稱算法和公開密鑰算法。使用一個密鑰的加/解密。加密時可以使用一個參數(shù)K,稱此參數(shù)K為加密密鑰。K可以是很多數(shù)值里的任意值。密鑰K的可能值的范圍叫做密鑰空間。34加密與解密使用兩個密鑰的加/解密。EK1(P)=CDK2(C)=PDK2

(EK1(P))=P解密密鑰加密密鑰原始明文密文加密解密明文35加密與解密加密通信的模型信源Mm加密器解密器接收者m非法接入者搭線信道(主動攻擊)C’搭線信道(被動攻擊)密碼分析員m‘密鑰源K1k1密鑰源K2k2密鑰信道36加密與解密對稱算法就是加密密鑰能夠從解密密鑰中推算出來,反過來也成立。在大多數(shù)對稱算法中,加/解密密鑰是相同的。這些算法也叫秘密密鑰算法或單密鑰算法。對稱算法可分為兩類。序列密碼(流密碼)與分組密碼。37序列密碼(流密碼)序列密碼主要應用于軍事和外交場合。序列密碼的優(yōu)點是錯誤擴展小、速度快、利于同步、安全程度高。密鑰流產(chǎn)生器密鑰k明文m密文c異或運算38序列密碼偽隨機序列發(fā)生器是指輸入真隨機的較短的密鑰(種子)通過某種復雜的運算產(chǎn)生大量的偽隨機位流。真隨機序列從真實世界的自然隨機性源產(chǎn)生。如自然界中的拋幣。偽隨機序列用確定的算法產(chǎn)生,不是真正的隨機序列。偽隨機序列發(fā)生器指使用短的真隨機序列(稱為種子)x擴展成較長的偽隨機序列y。隨機數(shù)是較短的隨機位序列。seed(short)PRBS(long)011011010010110....39分組密碼分組密碼是將明文按一定的位長分組,明文組和密鑰組的全部經(jīng)過加密運算得到密文組。數(shù)據(jù)加密標準DES出自IBM被美國政府正式采納的數(shù)據(jù)加密算法(DataEncryptionAlgorithm,DEA)由中國學者來學嘉XuejiaLai和JamesL.Massey在蘇黎世的ETH開發(fā)的國際數(shù)據(jù)加密算法IDEA(InternationalDataEncryptionAlgorithm)比利時JoanDaemen和VincentRijmen提交,被美國國家標準和技術(shù)研究所(USNationalInstituteofStandardsandTechnology,NIST)選為美國高級加密標準(AES)的Rijndael。40分組密碼的操作模式電子密碼本ECB(electroniccodebookmode)密碼分組鏈接CBC(cipherblockchaining)密碼反饋CFB(cipherfeedback)輸出反饋OFB(outputfeedback)計數(shù)器模式CTR)美國NSB在[FIPSPUB74和81]中規(guī)定ANSI在[ANSIX3.106]中規(guī)定

ISO和ISO/IEC在[ISO9732ISO/IEC10116]中規(guī)定分組密碼的操作模式模式描述典型應用電子密碼本ECB用相同的密鑰分別對明文分組加密單個數(shù)據(jù)的安全傳輸密碼分組鏈接CBC加密算法的輸入是上一個密文分組和下一個明文分組的異或普通目的的面向分組的傳輸密碼反饋CFB一次處理J位,上一個分組密文作為產(chǎn)生一個偽隨機數(shù)輸出的加密算法的輸入,該輸出與明文分組異或,作為下一個分組的輸入普通目的的面向分組的傳輸認證輸出反饋OFB與CFB相同,只是加密算法的輸入是上一次DES的輸出噪聲信道上數(shù)據(jù)流的傳輸(如衛(wèi)星傳輸)計數(shù)器模式CTR)每個明文分組是加密的計數(shù)器的異或,對每個后續(xù)的分組,計數(shù)器是累加的。普通目的的面向分組的傳輸用于高速需求42分組密碼的分析方法根據(jù)攻擊者所掌握的信息,可將分組密碼的攻擊分為以下幾類:唯密文攻擊已知明文攻擊選擇明文攻擊攻擊的復雜度數(shù)據(jù)復雜度:實施該攻擊所需輸入的數(shù)據(jù)量處理復雜度:處理這些數(shù)據(jù)所需要的計算量43分組密碼的典型攻擊方法最可靠的攻擊辦法:強力攻擊最有效的攻擊:差分密碼分析,通過分析明文對的差值對密文對的差值的影響來恢復某些密鑰比特.線性密碼分析:本質(zhì)上是一種已知明文攻擊方法,通過尋找一個給定密碼算法的有效的線性近似表達式來破譯密碼系統(tǒng)插值攻擊方法密鑰相關攻擊44強力攻擊窮盡密鑰搜索攻擊:唯密文,2k已知(選擇)明文,2k,k-密鑰長度字典攻擊:明密文對編成字典,2n,n-分組長度查表攻擊:選擇明文攻擊,給定明文,用所有的2k個密鑰,預計算密文,k-密鑰長度時間存儲權(quán)衡攻擊:選擇明文攻擊,由窮盡密鑰搜索和查表攻擊混合而成,它在選擇明文攻擊中以時間換取空間45現(xiàn)代常規(guī)分組加密算法

一種是對DES進行復合,強化它的抗攻擊能力;另一種是開辟新的方法,即象DES那樣加解密速度快,又具有抗差分攻擊和其他方式攻擊的能力。46現(xiàn)代常規(guī)分組加密算法1.TripleDES2.IDEA3.RC54.RC65.AES其他一些較實用的算法,如Blowfish,CAST,以及RC2。47雙重DES(DoubleDES)C=EK2(EK1(P))P=DK1(DK2(C))

48Triple-DES的四種模型DES-EEE3:三個不同密鑰,順序使用三次加密算法DES-EDE3:三個不同密鑰,依次使用加密-解密-加密算法DES-EEE2:K1=K3,同上DES-EDE2:K1=K3,同上491.TRIPLEDES由于已經(jīng)證明DES不能成為群,見

K.W.CampbellandM.J.WienerProofthatDESisnotagroupInAdvancesinCryptology——Crpto’92.Springer-Verlag,NewYork,1993.于是多重DES,尤其是三重DES還在普遍使用。50雙密鑰的三重DES

(TripleDESwithTwoKeys)C=EK1(DK2(EK1(P)))P=DK1(EK2(DK1(C)))51三密鑰的三重DES

(TripleDESwithThreeKeys)C=EK3(DK2(EK1(P)))=DK3(EK2(DK1(C)))521973年,美國國家標準局(NBS)開始征集聯(lián)邦數(shù)據(jù)加密標準的方案。Feistel等人研究了一種128位的對稱密鑰系統(tǒng),后IBM改進為56位的密鑰系統(tǒng),并提交NBS。1975年3月17日,NBS公布了IBM公司提供的密碼算法,以標準建議的形式在全國范圍內(nèi)征求意見。1977年7月15日,NBS接受這個建議,數(shù)據(jù)加密標準DES正式頒布,供商業(yè)界和非國防性政府部門使用。DES的歷史53爭論:56位夠長嗎?內(nèi)部結(jié)構(gòu)公開,設計原理沒公開?DES的歷史54DES的應用1979年,美國銀行協(xié)會批準使用1980年,美國國家標準局(ANSI)贊同DES作為私人使用的標準,稱之為DEA(ANSIX.392)

1983年,國際化標準組織ISO贊同DES作為國際標準,稱之為DEA-1該標準規(guī)定每五年審查一次,計劃十年后采用新標準最近的一次評估是在1994年1月,已決定1998年12月以后,DES將不再作為聯(lián)邦加密標準。55DES的描述DES利用56比特串長度的密鑰K來加密長度為64位的明文,得到長度為64位的密文輸入64比特明文數(shù)據(jù)初始置換IP在密鑰控制下16輪迭代初始逆置換IP-1輸出64比特密文數(shù)據(jù)DES算法框圖交換左右32比特

56初始置換IP和初始逆置換IP—1

Li-1(32比特)Ri-1(32比特)Li(32比特)48比特寄存器擴充/置換運算48比特寄存器子密鑰Ki(48比特)32比特寄存器代換/選擇運算置換運算PRi(32比特)Li=Ri-1DES的一輪迭代F函數(shù)DES:FunctionFExpansion:3248(擴充)S-box:64(壓縮)Permutation:置換

擴充/置換運算32|01020304|0504|05060708|0908|09101112|1312|13141516|1716|17181920|2120|21222324|2524|25262728|2928|29303132|0160代換/選擇運算61S-Box-i62S-Box-ii

63S-Box對每個盒,6比特輸入中的第1和第6比特組成的二進制數(shù)確定的行,中間4位二進制數(shù)用來確定的列。相應行、列位置的十進制數(shù)的4位二進制數(shù)表示作為輸出。例如的輸入為101001,則行數(shù)和列數(shù)的二進制表示分別是11和0100,即第3行和第4列,的第3行和第4列的十進制數(shù)為3,用4位二進制數(shù)表示為0011,所以的輸出為0011。

64

Permutation1607202129122817011523260518311002082414322703091913300622110425子密鑰的產(chǎn)生

k1

(56位)(48位)

ki

(56位)

(48位)64位密鑰置換選擇1

C0(28位)

D0(28位)

循環(huán)左移循環(huán)左移

C1(28位)

D1(28位)

循環(huán)左移循環(huán)左移

Ci(28位)

Di(28位)置換選擇2置換選擇2密鑰表的計算邏輯循環(huán)左移:11912110232112421225213262142721528

216166置換選擇1(PC-1)和置換選擇2(PC-2)

總結(jié)-DES示意圖68DES的安全性分析DES的安全性完全依賴于密鑰,與算法本身沒有關系。主要研究內(nèi)容:密鑰的互補性;弱密鑰與半弱密鑰;密文-明文相關性;密文-密鑰相關性;S-盒的設計;密鑰搜索。69弱密鑰弱密鑰:由密鑰k確定的加密函數(shù)與解密函數(shù)相同,即。DES的弱密鑰:如果各輪產(chǎn)生的子密鑰一樣,則加密函數(shù)與解密函數(shù)相同。DES至少有4個弱密鑰:01010101010101011f1f1f1f0e0e0e0ee0e0e0e0f1f1f1f1fefefefefefefefe70半弱密鑰半弱密鑰:對于密鑰k,存在一個不同的密鑰,滿足。DES的半弱密鑰:子密鑰生成過程中只能產(chǎn)生兩個不同的子密鑰或四個不同的子密鑰,互為對合。DES至少有12個半弱密鑰。71S-盒的設計原則S-盒的設計原理沒有公開,一些原則如下:所有S-盒的每一行是0,1,…,15的一個置換;所有S-盒的輸出都不是輸入的線性函數(shù)或仿射函數(shù);S-盒的輸入改變?nèi)我庖晃欢紩疠敵鲋兄辽賰晌话l(fā)生變化;對于任何輸入x(6位),S(x)與S(x⊕001100)至少有兩位不同;對于任何輸入x(6位),S(x)與S(x⊕00ef00)不相等,e,f取0或1;對于任意一個輸入位保持不變而其他五位變化時,輸出中0和1的數(shù)目幾乎相等。72針對DES的攻擊方法攻擊DES的方法主要有:密鑰窮搜索攻擊,DES算法總的密鑰量為,1998年使用高級計算機的情況下,破譯DES只需56小時;差分攻擊;線性攻擊,較有效的方法;相關密鑰攻擊等。73DES的破譯1990年,以色列密碼學家EliBiham和AdiShamir提出了差分密碼分析法,可對DES進行選擇明文攻擊。線性密碼分析比差分密碼分析更有效

74公鑰密碼公開密鑰算法中用作加密的密鑰不同于用作解密的密鑰,而且解密密鑰不能根據(jù)加密密鑰計算出來(至少在合理假定的長時間內(nèi)),所以加密密鑰能夠公開,每個人都能用加密密鑰加密信息,但只有解密密鑰的擁有者才能解密信息。在公開密鑰算法系統(tǒng)中,加密密鑰叫做公開密鑰(簡稱公鑰),解密密鑰叫做秘密密鑰(私有密鑰,簡稱私鑰)。公開密鑰算法主要用于加密/解密、數(shù)字簽名、密鑰交換。75討論議題為什么要設計公鑰密碼算法密鑰分配公鑰密碼體制概述及其應用公鑰密碼算法的實現(xiàn)Diffie-Hellman密鑰交換算法背包算法RSA算法EIGamal算法橢圓曲線密碼算法ECC761.為什么要設計公鑰密碼體制77密鑰分配(KeyDistribution)保密通信雙方需共享密鑰共享密鑰要經(jīng)常更換A選擇密鑰并手工傳遞給B第三方C選擇密鑰分別手工傳遞給A,B用A,B原有共享密鑰傳送新密鑰與A,B分別有共享密鑰的第三方C傳送新密鑰給A和/或BN個用戶集需要N(N-1)/2個共享密鑰密鑰分發(fā)中心(KeyDistributionCenter)78密鑰分發(fā)中心(KDC)每個用戶與KDC有共享密鑰(MasterKey)N個用戶,KDC只需分發(fā)N個MasterKey兩個用戶間通信用會話密鑰(SessionKey)用戶必須信任KDCKDC能解密用戶間通信的內(nèi)容79

(1)密鑰管理量的困難傳統(tǒng)密鑰管理:兩兩分別用一對密鑰時,則n個用戶需要C(n,2)=n(n-1)/2個密鑰,當用戶量增大時,密鑰空間急劇增大。如:n=100時,C(100,2)=4,995n=5000時,C(5000,2)=12,497,500

(2)數(shù)字簽名的問題傳統(tǒng)加密算法無法實現(xiàn)抗抵賴的需求。問題的提出80起源公鑰密碼又稱為雙鑰密碼和非對稱密碼,是1976年由Diffie和Hellman在其“密碼學新方向”一文中提出的,見劃時代的文獻:

W.DiffieandM.E.Hellman,NewDirectrionsinCryptography,IEEETransactiononInformationTheory,V.IT-22.No.6,Nov1976,PP.644-654RSA公鑰算法是由Rivest,Shamir和Adleman在1978年提出來的,見

CommunitionsoftheACM.Vol.21.No.2.Feb.1978,PP.120-12681公開密鑰密碼的重要特性加密與解密由不同的密鑰完成 加密:mc:c=EK(m)

解密:cm:m=DB(c)=DB(EK(m))知道加密算法,從加密密鑰得到解密密鑰在計算上是不可行的兩個密鑰中任何一個都可以用作加密而另一個用作解密(不是必須的) m=DB(EK(m))=EK(DB(m))822.公鑰密碼體制的應用概述83公鑰加密算法傳統(tǒng)加密過程加密和解密使用相同密鑰明文明文密文84公鑰加密算法公鑰密碼算法加密和解密使用不同密鑰明文明文密文85

用公鑰密碼實現(xiàn)保密86基于公開密鑰的加密過程87

用公鑰密碼實現(xiàn)認證88基于公開密鑰的認證過程89

用公鑰密碼實現(xiàn)保密與認證90

公鑰密鑰的應用范圍加密/解密數(shù)字簽名(身份鑒別)密鑰交換算法加/解密數(shù)字簽名密鑰交換RSA是是是Dieffie-Hellman否否是DSS否是否913.公鑰密碼算法92基本思想和要求涉及到各方:發(fā)送方、接收方、攻擊者涉及到數(shù)據(jù):公鑰、私鑰、明文、密文公鑰算法的條件:產(chǎn)生一對密鑰是計算可行的已知公鑰和明文,產(chǎn)生密文是計算可行的接收方利用私鑰來解密密文是計算可行的對于攻擊者,利用公鑰來推斷私鑰是計算不可行的已知公鑰和密文,恢復明文是計算不可行的(可選)加密和解密的順序可交換93陷門單向函數(shù)單向陷門函數(shù)是滿足下列條件的函數(shù)f:(1)給定x,計算y=fk(x)是容易的;(2)給定y,計算x使x=fk-1(y)是不可行的。(3)存在k,已知k時,對給定的任何y,若相應的x存在,則計算x使fk-1(y)是容易的。94

公鑰密碼基于的數(shù)學難題背包問題大整數(shù)分解問題(TheIntegerFactorizationProblem,RSA體制)有限域的乘法群上的離散對數(shù)問題

(TheDiscreteLogarithmProblem,ElGamal體制)橢圓曲線上的離散對數(shù)問題(TheEllipticCurveDiscreteLogarithmProblem,

類比的ElGamal體制)95背包問題背包問題:已知一長度為B的背包,及長度分別為a1,a2,...,an的n個物品。假定這些物品的半徑和背包相同,若從這n個物品中選出若干個正好裝滿這個背包?,F(xiàn)在反過來問:究竟是哪些物品?96背包問題數(shù)學描述97背包問題求解98超遞增序列背包問題求解方法思路:xi取值只可能為0或者1;如果為0,表示不能裝入對應的物體,否則可以裝入。99超遞增序列背包問題求解方法100Merkle-Hellman背包公鑰算法101Merkle-Hellman背包公鑰算法102Merkle-Hellman背包公鑰算法問題:如何解密?103Merkle-Hellman背包公鑰算法

MH背包公鑰算法是由超遞增序列進行變換得到得:104Merkle-Hellman背包公鑰算法

MH背包公鑰算法的公鑰和私鑰105Merkle-Hellman背包公鑰算法

106Merkle-Hellman背包公鑰算法

107Merkle-Hellman背包公鑰算法

108Merkle-Hellman背包公鑰算法

109Merkle-Hellman背包公鑰算法

110Merkle-Hellman背包公鑰算法

111RSA算法概要:Bob選擇保密的素數(shù)p和q,并計算n=pq;Bob通過gcd(e,(p-1)(q-1))=1來選擇e;Bob通過de≡1(mod(p-1)(q-1))來計算d;Bob將n和e設為公開的,p、q、d設為秘密的;Alice將m加密為c≡me(modn),并將c發(fā)送給Bob;Bob通過計算m≡cd(modn)解密。112密碼學RSA:例1選擇兩個素數(shù):p=17&q=11計算

n=pq=17×11=187計算?(n)=(p–1)(q-1)=16×10=160選擇e:gcd(e,160)=1;其中e=7計算d:de=1mod160

且d<160

,則

d=23

(因為23×7=161=10×160+1)公布公鑰KU={7,187}保存私鑰KR={23,17,11}113密碼學RSA:例1如果待加密的消息M=88(注意:88<187)加密:C=887mod187=11

解密:M=1123mod187=88

密碼學RSA:例2Bob選擇p=885320693,q=238855417,則可以計算

n=p*q=211463707796206571,設加密系數(shù)為e=9007,將n和e發(fā)送給Alice。假設Alice傳遞的信息是cat。令a=01c=03t=20,則cat=030120=30120。

Alice計算:c≡me≡301209007≡113535859035722866(modn)

她將c傳給Bob。Bob已知p和q的值,他用擴展歐幾里德算法計算d:

de≡1(mod(p-1)(q-1)),得到

d=116402471153538991

然后Bob計算:

cd≡113535859035722866116402471153538991≡30120(modn)

由此他可以得到最初的信息。115密碼學ECCECC:EllipticCurveCryptography1985年,N.Koblitz及V.S.Miller分別提出了橢圓曲線密碼體制(ECC)。已經(jīng)開發(fā)出的橢圓曲線標準的文檔有:IEEEP1363P1363a、ANSIX9.62X9.63、ISO/IEC14888等。近年來,ECC已走向工程實現(xiàn)和實際應用階段。目前,德國、日本、法國、美國、加拿大等許多西方國家的密碼學研究小組和公司已經(jīng)實現(xiàn)了橢圓曲線密碼體制。116密碼學ECC為什么要提出ECC?RSA主要問題之一:為了保證必要的安全強度,其密鑰必須很長ECC的優(yōu)勢:在同等安全強度下,ECC所需密鑰比RSA短117密碼學ECC橢圓曲線指的是由韋爾斯特拉斯(Weierstrass)方程所確定的平面曲線。其中,系數(shù)(i=1,2,…,6)定義在基域K上(K可以是有理數(shù)域、實數(shù)域、復數(shù)域,還可以是有限域,橢圓曲線密碼體制中用到的橢圓曲線都定義在有限域上)。橢圓曲線并非橢圓118密碼學ECC群:對于非空集合G,其上的一個二元運算(.)滿足:封閉性、結(jié)合率、單位元和可逆性環(huán):對于R上的兩個二元運算(+,x)滿足:關于+是一個交換群(群的條件+交換率)對于乘法x滿足:封閉性+結(jié)合率+分配率域:對于F上的兩個運算(+,x)滿足F是一個整環(huán):交換環(huán)+乘法逆元+無零因子乘法逆元存在119密碼學ECC120密碼學ECC橢圓曲線加法運算規(guī)則:O是加法的單位元,O=-O;對于橢圓曲線上的任一點P,有P+O=P點P的負元是與P具有現(xiàn)同x坐標和相反y坐標的點,即若P=(x,y),則-P=(x,-y);P+(P)=O若P=(x1,y),Q=(x2,z),則P+Q=-R。其中R是直線PQ與橢圓曲線的第三個交點。若P和Q的x坐標相同,則為無窮遠點O若Q=(x,y),則Q+Q=2Q=-S,其中S為橢圓曲線在Q點的切線與橢圓曲線的另一交點。121橢圓曲線密碼學ECC有限域上橢圓曲線 y2x3+ax+bmodpp是奇素數(shù),且4a3+27b20modp(構(gòu)成Abel群的條件,證明過程略) y2+xyx3+ax2+bmod2m(Galois域的橢圓曲線)122橢圓曲線密碼學ECC有限域上橢圓曲線 y2x3+ax+bmodp

(3)加法公式:P=(xp,yp),Q=(xQ,yQ)若xP=xQ且yP=-yQ則P+Q=O否則P+Q=(xR,yR)xR=2-xP-xQyR=(xP-xR)-yP其中

=(yQ-yP)/(xQ-xP),如果PQ=(3xP2+a)/(2yP),如果P=Q(1)P+O=P(2)P=(x,y)P+(x,-y)=O其中(x,-y)是P的負元-P(4)重復相加:nP=P+…+P按照上述定義構(gòu)成了一個橢圓曲線上的Abel群123橢圓曲線密碼學ECC示例:有限域上橢圓曲線

y2x3+ax+bmodp條件:a=1,b=1,x=9,y=7,p=23y2

=72mod23=3x3+ax+b=(93+9+1)mod23=3y2x3+ax+bmodp124橢圓曲線密碼學ECC示例示例:有限域上橢圓曲線

y2x3+ax+bmodp條件:a=1,b=1,x=9,y=7,p=23問題:求滿足上述方程的所有整數(shù)對(x,y)以及無窮遠點O組成的集合Ep(a,b)=E23(1,1)?125橢圓曲線密碼學ECC示例(0,1)(6,4)(12,19)(0,22)(6,19)(13,7)(1,7)(7,11)(13,16)(1,16)(7,12)(17,3)(3,10)(9,7)(17,20)(3,13)(9,16)(18,3)(4,0)(11,3)(18,20)(5,4)(11,20)(19,5)(5,19)(12,4)(19,18)E23(1,1)126橢圓曲線密碼學ECC示例(0,1)(6,4)(12,19)(0,22)(6,19)(13,7)(1,7)(7,11)(13,16)(1,16)(7,12)(17,3)(3,10)(9,7)(17,20)(3,13)(9,16)(18,3)(4,0)(11,3)(18,20)(5,4)(11,20)(19,5)(5,19)(12,4)(19,18)E23(1,1)1)P=(0,1),P+O=(0,1)2)P=(13,7)

-P=(13,-7)=(13,16)3)P=(3,10),Q=(9,7)

P+Q=(17,20)4)P=(3,10)

2P=(7,12)127橢圓曲線密碼學ECCP+Q計算過程:x3=2-x1-x2y3=(x1-x3)-y1其中=(y2-y1)/(x2-x1),如果PQ=(3x12+a)/2y1,如果P=Q128橢圓曲線密碼學ECC有限域上橢圓曲線y2+xyx3+ax2+bmod2m(Galois域的橢圓曲線)(3)加法公式:P=(xP,yP),Q=(xQ,yQ),且P≠-Q,P≠Q(mào)則P+Q=(xR,yR)xR=2++xP+xQ+ayR=(xP+xR)+xR+yP其中

=(yQ+yP)/(xQ+xP)(1)P+O=P(2)P=(x,y)P+(x,-y)=O其中(x,-y)是P的負元-P(4)若P=(xP,yP),則R=2P=(xr,yr)其中:xR=2++ayR=xP2+(+1)xR=xp+yp/xP按照上述定義構(gòu)成了一個橢圓曲線上的Abel群129橢圓曲線密碼學ECC橢圓曲線上的離散對數(shù)“難題”對于方程Q=kP,其中P,Q屬于Ep(a,b)。對于給定的k和P,計算Q比較容易,而對于給定的P和Q,計算k比較困難例如:方程y2=(x3+9x+17)mod23所定義的群E23(9,17)。求:P=(16,5)和Q=(4,5)的離散對數(shù)k?窮舉計算:P=(16,5),2P=(20,20),3P=(14,14),4P=(19,20),5P=13,10);6P=(7,3),7P=(8,7),8P=(12,17),9P=(4,5)因此k=9130橢圓曲線密碼學ECC加密/解密實現(xiàn)Alice->BobStep1:Bob選擇Ep(a,b)的元素G,使得G的階n是一個大素數(shù),秘密選擇整數(shù)k.計算P=kG,公開(p,a,b,G,P),保密k。其中Kb=kG為Bob公鑰,Kb‘=k為Bob私鑰Step2:將消息m編碼為x-y形式的點PmStep3:Alice隨機選擇一個正整數(shù)r,對Pm產(chǎn)生密文Cm={rG,Pm+rKb}Step4:Bob解密Cm-Kb’(rG)=Pm+rKb-krG=Pm+r(kG)-rkG=Pm131橢圓曲線密碼學ECC加密/解密實現(xiàn)Alice->Bob(示例)Step1:Bob選擇E88331(3,45),G=(4,11),Bob私鑰Kb‘=K=3,Bob公布公鑰Kb=(413,1808)Step2:Pm=(5,1734)

Step3:Alice隨機選擇一個正整數(shù)r=8,對Pm產(chǎn)生密文:Cm={rG,Pm+rKb}={(5415,6321),(6626,3576)}Step4:Bob解密Kb’(rG)=3(5415,6321)=(673,146)Cm-Kb’(rG)=(6626,3576)-(673,146)=(5,1734)132密碼學序列密碼按位處理消息一般具有一個偽隨機密鑰流發(fā)生器對明文按位進行異或運算(XOR)以隨機的密鑰流來破壞消息的統(tǒng)計特征Ci=MiXORStreamKeyi

133密碼學序列密碼同步流密碼原理密鑰流生成器密鑰流生成器加密變換解密變換安全信道公開信道種子密鑰k種子密鑰k密鑰流Ki密鑰流Ki明文m密文c密文c明文m134密碼學序列密碼自同步流密碼原理密鑰流生成器密鑰流生成器加密變換解密變換安全信道公開信道種子密鑰k種子密鑰k密鑰流Ki密鑰流Ki明文m密文c密文c明文m135密碼學序列密碼:RC4RC:“RC”isRon’sCodeorRivestCipher1987年RonRivest為RSA公司所設計的流密碼算法可變密鑰長度的、面向字節(jié)操作的流密碼:8~2048位可變1994年算法才公開在SSL/TLS和IEEE802.11無線網(wǎng)絡中有廣泛應用:WEP協(xié)議136密碼學序列密碼:RC4用從1到256個字節(jié)的可變長度密鑰初始化矢量S:0..255,S[0],S[1],…,S[255]S形成了算法的內(nèi)部狀態(tài)密鑰流字節(jié)K由S中255個元素按照一定方式選出一個元素來生成每生成一個K,S中的元素就被重新置換一次RC4初始化137密碼學序列密碼:RC4初始化S初始條件:密鑰種子Key[],密鑰初始化向量S初始化S:S中元素被置為按升序從0到255:S[0]=0,S[1]=1,…,S[255]=255建立一個臨時矢量K如果密鑰種子Key的長度為256字節(jié),則將Key賦值給K;否則將K的值賦給K的前N個元素(N為密鑰長度),循環(huán)重復用Key的值賦給K剩下的元素,直到K的所有元素都被賦值然后用K產(chǎn)生S的初始置換從S[0]到S[255],對每個S[i],根據(jù)由K[i]確定的方案,將S[i]置換為S中的另外一個字節(jié)由于對S的操作僅是交換(即置換),因此S仍然包含所有值為0到255的元素密鑰生成Input:Key[],N=len(key)Output:S[]/*密鑰流初始值*//*Array“key”containsNbytesofkey*//*Array“S”alwayshasapermutationof0,1,…,255*/ fori=0to255 S[i]=i K[i]=key[i(modN)] nexti j=0 fori=0to255 j=(j+S[i]+K[i])mod256 swap(S[i],S[j]) nexti138密碼學序列密碼:RC4密鑰流KeyStramByte的生成是從S[0]到S[255],對每個S[i],根據(jù)當前S的值,將S[i]與S中另外一個字節(jié)置換當S[255]完成置換后,操作繼續(xù)重復加密:將KeyStreamByte值與下一個明文字節(jié)異或解密:將KeyStreamByte值與下一個密文字節(jié)異或加密與解密Input:M,S[]Output:Ci=j=0foreachmessagebyteMii=(i+1)mod256j=(j+S[i])mod256swap(S[i],S[j])t=(S[i]+S[j])mod256KeyStreamByte=S[t]Ci=MiXORKeyStreamByteNextC=C1|C2|…|Cn

139密碼學序列密碼:RC4對已知的密碼分析很安全有很多攻擊分析,但不是很實際結(jié)果非線性絕對不能重復使用密鑰在無線保密協(xié)議(WEP)中使用,但是有潛在的安全問題RC4安全性對于WEP協(xié)議,后續(xù)內(nèi)容將進一步討論140硬件加密采用電路、器件等對硬件本身的加密采用硬件對軟件和數(shù)據(jù)的加密加密包括:隱藏、防護,防破譯、防竊聽等芯片技術(shù)將軟件算法由硬件芯片實現(xiàn)壓縮解壓芯片將算法固化在存儲芯片中硬件加解密技術(shù)其他密碼學知識141采用軟件方法的加解密技術(shù)程序、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)變換、循環(huán)、迭代循環(huán)、嵌套循環(huán)、迷宮程序等。軟件壓縮還原技術(shù)用于數(shù)據(jù)壓縮、文本壓縮、存儲單元壓縮、影象壓縮技術(shù)等應用算法,壓縮加密。壓縮文本成為攻擊對象,還原問題成為安全的關鍵研究。軟件加解密技術(shù)其他密碼學知識142不知道密碼,可能入侵密碼系統(tǒng)不知道密鑰,仍然可能入侵密碼系統(tǒng)被動攻擊:截獲密文,分析推斷出明文的攻擊。主動攻擊:向系統(tǒng)注入假信息(串擾、刪除、增添、篡改、偽造等)手段的攻擊。密碼破譯與竊取其他密碼學知識143唯密文攻擊已知明文攻擊選擇明文攻擊選擇密文攻擊密碼分析其他密碼學知識144密碼學與安全性總結(jié)第一階段80年代第二階段90年代第三階段90年代后期信息保密信息保護信息保障密碼學保密學加解密技術(shù)數(shù)據(jù)完整性數(shù)據(jù)可用性數(shù)據(jù)可控性可信環(huán)境可信計算可信存儲抗抵賴性++++密碼學145密碼學與安全性總結(jié)(續(xù))密碼學(數(shù)學基礎)編碼學分析學相輔相成對立統(tǒng)一機密性、完整性、可鑒別性、抗抵賴性信息源目標服務密碼學146密碼學密碼實現(xiàn)數(shù)學發(fā)現(xiàn)密碼算法算法論證復雜性密鑰配置算法實現(xiàn)密碼協(xié)議加密解密破譯技術(shù)密鑰技術(shù)密碼應用領域應用密碼系統(tǒng)密碼管理密鑰管理交叉融合基礎過程結(jié)果密碼學與安全性總結(jié)(續(xù))密碼學147計算復雜性單向函數(shù)代數(shù)結(jié)構(gòu)密碼分析古典密碼公鑰密碼簽名模式私鑰密碼散列函數(shù)密碼學協(xié)議密鑰管理操作式抗抵賴機密性密碼系統(tǒng)的整體設計與分析數(shù)學基礎基本工具密碼學系統(tǒng)完整性鑒別性密碼學與安全性總結(jié)(續(xù))密碼學148信息安全理論與技術(shù)Topic1:信息安全基礎InformationSecurityFoundations密碼學(Cryptography)消息認證(MessageAuthentication)數(shù)字簽名(DigitalSignature)身份認證(IdentificationAuthentication)訪問控制(AccessControl)密鑰管理(KeyManagement)計算機系統(tǒng)與網(wǎng)絡安全(ComputerSystemandNetworkFoundation)……信息安全法律法規(guī)與標準化信息安全與法律法規(guī)基本原理國內(nèi)外主要信息安全法律法規(guī)標準化與標準化組織149信息安全基礎

MessageAuthenticationMessageAuthentication:報文鑒別(消息認證,消息鑒別)Message:消息、報文。Authentication:鑒別、認證。認證:消息的接收者對消息進行的驗證真實性:消息確實來自于其真正的發(fā)送者,而非假冒;完整性:消息的內(nèi)容沒有被篡改。是一個證實收到的消息來自可信的源點且未被篡改的過程。它也可以驗證消息的順序和及時性150消息認證概念三元組(K,T,V)密鑰生成算法K標簽算法T驗證算法V攻擊者信宿信源認證編碼器認證譯碼器信道安全信道密鑰源TVK151消息認證認證函數(shù)鑒別編碼器和鑒別譯碼器可抽象為認證函數(shù)認證函數(shù)產(chǎn)生一個鑒別標識(AuthenticationIdentification)給出合理的認證協(xié)議(AuthenticationProtocol)接收者完成消息的鑒別(Authentication)152消息認證認證函數(shù)分類認證的函數(shù)分為三類:消息加密函數(shù)(Messageencryption)用完整信息的密文作為對信息的認證。消息認證碼MAC(MessageAuthenticationCode)是對信源消息的一個編碼函數(shù)。散列函數(shù)

(HashFunction)是一個公開的函數(shù),它將任意長的信息映射成一個固定長度的信息。153消息認證認證函數(shù):加密函數(shù)MEKEK(M)DMK提供保密提供認證不提供簽名BobAlice對稱加密:保密性與認證154消息認證認證函數(shù):加密函數(shù)公鑰加密:保密性MEKaEKa(M)DMK’a提供保密不提供認證BobAlice155消息認證認證函數(shù):加密函數(shù)公鑰加密:認證與簽名MDK’bEK’b(M)EMKb提供認證BobAlice156消息認證認證函數(shù):加密函數(shù)公鑰加密:保密、認證與簽名MDKaEKa(Dk’b(M))DK’a提供認證提供保密性EK’bDk’b(M)Dk’b(M)EKbMBobAlice157消息認證認證函數(shù):加密函數(shù)公鑰加密:保密、認證與簽名??MEK’bEK’b(Eka(M))EKb提供認證提供保密性DKaEa(M)Eka(M)DK’aMBobAlice158消息認證認證函數(shù):消息認證碼消息認證碼:使用一個密鑰生成一個固定大小的短數(shù)據(jù)塊,并將該數(shù)據(jù)塊加載到消息后面,稱MAC(或密碼校驗和)

MAC=Ck(M)MAC函數(shù)類似于加密函數(shù),但不需要可逆性。因此在數(shù)學上比加密算法被攻擊的弱點要少159消息認證認證函數(shù):消息認證碼MAC的基本用法:消息認證AliceBobM||KCK(M)CKCM比較提供認證160消息認證認證函數(shù):消息認證碼MAC的基本用法:與明文有關的認證M||K1CK(M)CK2CM比較EK2MDK1MAliceBob提供認證提供保密161消息認證認證函數(shù):消息認證碼MAC的基本用法:與密文有關的認證M||K1CK1(Ek2(M))CCM比較EK2K1提供認證提供保密MMDK2BobAliceEk2(M)162消息認證認證函數(shù):Hash函數(shù)HashFunction哈希函數(shù)、摘要函數(shù)輸入:任意長度的消息報文M輸出:一個固定長度的散列碼值H(M)是報文中所有比特的函數(shù)值單向函數(shù)根據(jù)是否使用密鑰帶秘密密鑰的Hash函數(shù):消息的散列值由只有通信雙方知道的秘密密鑰K來控制。此時,散列值稱作MAC。不帶秘密密鑰的Hash函數(shù):消息的散列值的產(chǎn)生無需使用密鑰。此時,散列值稱作MDC。Hash函數(shù)需滿足以下條件:輸入x可以為任意長度,輸出為固定長度正向計算容易,反向計算困難抗沖突性(無沖突性)163消息認證認證函數(shù):Hash函數(shù)成熟的HashFunctionMD5:輸入:消息長度任意輸出:128位SHA-1:輸入:消息長度<264輸出:160位164比較認證函數(shù):Hash函數(shù)比較項MD5SHA-1MD長度128位160位抗窮舉攻擊能力給定消息的摘要:2128產(chǎn)生兩個具有相同摘要的消息:264給定消息的摘要:2160產(chǎn)生兩個具有相同摘要的消息:280抗密碼分析能力對已知的密碼分析能力弱未知速度64步,緩沖區(qū)128位,快80步,緩沖區(qū)160位,較MD5慢很多簡單性簡單,軟件易實現(xiàn)簡單,軟件易實現(xiàn)低位結(jié)構(gòu)于高位結(jié)構(gòu)低位結(jié)構(gòu)高位結(jié)構(gòu)165消息認證認證函數(shù):Hash函數(shù)哈希函數(shù)的基本用法(a)M||H(M)HKHM比較EKMDMBobAlice提供認證提供保密EK(M|H(M))166消息認證認證函數(shù):Hash函數(shù)哈希函數(shù)的基本用法(b)M||KEK(H(M))HHM比較EDBobAlice提供認證K167消息認證認證函數(shù):Hash函數(shù)哈希函數(shù)的基本用法(c)M||K’bDK’b(H(M))HHM比較DEBobAlice提供認證Kb168消息認證認證函數(shù):Hash函數(shù)哈希函數(shù)的基本用法(d)M||KDK’b(H(M))HHM比較EDBobAlice提供認證提供保密KMMDK’bEKbEk(M|DK’b(H(M))169消息認證認證函數(shù):Hash函數(shù)哈希函數(shù)的基本用法(e)M||H(M||S)||HM比較BobAlice提供認證SS||H170消息認證認證函數(shù):Hash函數(shù)哈希函數(shù)的基本用法(f)M||H(M||S)||KHM比較EKMDMBobAlice提供認證提供保密EK(M||H(M||S)SS||H171信息安全規(guī)范與標準-概述Topic1:信息安全基礎InformationSecurityFoundations密碼學(Cryptography)消息認證(MessageAuthentication)數(shù)字簽名(DigitalSignature)身份認證(IdentificationAuthentication)訪問控制(AccessControl)計算機系統(tǒng)與網(wǎng)絡安全(ComputerSystemandNetworkFoundation)密鑰管理(KeyManagement)計算機系統(tǒng)與網(wǎng)絡安全(ComputerSystemandNetworkFoundation)

……信息安全法律法規(guī)與標準化信息安全與法律法規(guī)基本原理國內(nèi)外主要信息安全法律法規(guī)標準化與標準化組織172信息安全基礎

數(shù)字簽名數(shù)字簽名:DigitalSignature傳統(tǒng)簽名的基本特點簽名是可信的:能與被簽的文件在物理上不可分割簽名是不可抵賴的:簽名者不能否認自己的簽名簽名不能被偽造:除了合法者外,其他任何人不能偽造其簽名簽名是不可復制的:對一個消息的簽名不能通過復制的方式變?yōu)榱硗庖粋€消息的簽名簽名是不可改變的:經(jīng)簽名的消息不能被篡改容易被驗證數(shù)字簽名是傳統(tǒng)簽名的數(shù)字化能與所簽文件“綁定”簽名者不能否認自己的簽名容易被自動驗證簽名不能被偽造173信息安全基礎

數(shù)字簽名五元組(P,A,K,S,V)P是所有消息組成的有限集A是所有可能的簽名組成的有限集K是所有可能的密鑰組成的有限集S簽名算法D驗證算法174信息安全基礎

數(shù)字簽名可分為兩類:直接數(shù)字簽名方案(directdigitalsignature);基于仲裁的數(shù)字簽名方案(arbitrateddigitalsignature)。175數(shù)字簽名直接數(shù)字簽名Sa(M)Eb(Sa(M))M,Sa(H(M))Eb(M,Sa(H(M)))MMSH(M)Ek(H)MDk(H)HHH比較Alice(A)Bob(B)直接簽名Alice(A)Bob(B)加密+簽名Alice(A)Bob(B)Hash+簽名Alice(A)Bob(B)加密+簽名+HashHash+簽名176數(shù)字簽名仲裁數(shù)字簽名Alice(A)Bob(B)Trent(T)M,Eat(IDa,H(M))Ebt(IDa,M,Eat(Ida,H(M)),T))對稱密碼+明文傳送177數(shù)字簽名仲裁數(shù)字簽名Alice(A)Bob(B)Trent(T)Eab(M),Eat(IDa,Eab(H(M)))Ebt(IDa,Eab(M),Ea

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論