版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
演示文稿密碼學(xué)基礎(chǔ)新目前一頁\總數(shù)一百九十二頁\編于十二點密碼學(xué)基礎(chǔ)新ppt課件目前二頁\總數(shù)一百九十二頁\編于十二點問題的提出
1996年7月9日,北京市海淀區(qū)法院審理國內(nèi)第一起電子郵件侵權(quán)案。此案的原、被告均系北京大學(xué)心理學(xué)系93級女研究生。4月9日,原告薛燕戈收到美國密執(zhí)安大學(xué)發(fā)給她的電子郵件,內(nèi)容是該校將給她提供1.8萬美元獎學(xué)金的就學(xué)機(jī)會,此后久等正式通知卻杳無音訊,4月27日薛了解到密執(zhí)安大學(xué)在4月12日收到一封署名薛燕戈的電子郵件,表示拒絕該校的邀請。因此密執(zhí)安大學(xué)已將獎學(xué)金機(jī)會轉(zhuǎn)給他人。經(jīng)過調(diào)查,證實以薛名義發(fā)電子郵件的是其同學(xué)張男。目前三頁\總數(shù)一百九十二頁\編于十二點如果電子郵件的發(fā)送附加了數(shù)字簽名,也許本案就不會發(fā)生了。目前四頁\總數(shù)一百九十二頁\編于十二點第2章密碼學(xué)基礎(chǔ)
▅2.1密碼學(xué)概述
▅2.2傳統(tǒng)對稱密碼體制
▅2.3公鑰密碼體制
▅2.4量子密碼體制
電子商務(wù)安全目前五頁\總數(shù)一百九十二頁\編于十二點2.1密碼學(xué)概述2.1.1密碼學(xué)起源與發(fā)展2.1.2什么是密碼學(xué)2.1.3密碼體制分類2.1.4密碼系統(tǒng)設(shè)計的基本原則2.1.5密碼系統(tǒng)攻擊及分析使用加密技術(shù)是保護(hù)信息的最基本的方法,密碼學(xué)技術(shù)是信息安全技術(shù)的核心,已被廣泛應(yīng)用到各類交互的信息中。實質(zhì)上,密碼學(xué)不是現(xiàn)代社會才出現(xiàn)的概念,它的起源與發(fā)展要追溯到幾千年前。目前六頁\總數(shù)一百九十二頁\編于十二點2.1.1密碼學(xué)起源與發(fā)展密碼學(xué)的雛形始于古希臘人,他們與敵人作戰(zhàn)時,在戰(zhàn)場上需要與同伴傳遞書寫有“戰(zhàn)爭機(jī)密”的信件,為了防止信件會落到敵人手中從而泄漏了戰(zhàn)略機(jī)密,聰明的古希臘戰(zhàn)士采取了將信中的內(nèi)容“加密”的手段,這樣信中所顯示的內(nèi)容就不是真實的要表達(dá)的戰(zhàn)略內(nèi)容。這種情況下,即使戰(zhàn)爭信件被敵人獲取,敵人也很難得到信件中所包含的軍事機(jī)密。目前七頁\總數(shù)一百九十二頁\編于十二點2.1.1密碼學(xué)起源與發(fā)展加密:將要傳遞的信息隱藏例如:清末大儒紀(jì)曉嵐贈送的對聯(lián)鳳遊禾蔭鳥飛去馬走蘆邊草不生禾下加鳳去掉鳥字得禿字馬置蘆邊去掉草頭得驢字
目前八頁\總數(shù)一百九十二頁\編于十二點2.1.1密碼學(xué)起源與發(fā)展這樣的數(shù)字毫無意義么?目前九頁\總數(shù)一百九十二頁\編于十二點2.1.1密碼學(xué)起源與發(fā)展1.古典密碼學(xué)
1949年之前,密碼學(xué)是一門藝術(shù)2.近代密碼學(xué)
1949~1975年:密碼學(xué)成為科學(xué)3.現(xiàn)代密碼學(xué)
1976年以后:密碼學(xué)的新方向——公鑰密碼學(xué)目前十頁\總數(shù)一百九十二頁\編于十二點2.1.2什么是密碼學(xué)1.密碼學(xué)概念2.密碼系統(tǒng)構(gòu)成3.密碼系統(tǒng)數(shù)學(xué)模型目前十一頁\總數(shù)一百九十二頁\編于十二點1.密碼學(xué)概念密碼學(xué):是研究如何保護(hù)信息安全性的一門科學(xué)。它包含兩個分支:密碼編碼學(xué)和密碼分析學(xué)。密碼編碼學(xué):主要研究密碼方案的設(shè)計,即尋找對信息編碼的方法從而實現(xiàn)隱藏信息的一門學(xué)問。密碼分析學(xué):主要是從攻擊者的角度來看問題,研究如何破解被隱藏信息的一門學(xué)問。兩個分支:是既相互對立,又相互依存的科學(xué)。目前十二頁\總數(shù)一百九十二頁\編于十二點2.密碼系統(tǒng)構(gòu)成
密碼系統(tǒng)主要包括以下幾個基本要素:明文指的是希望得到保密的原始信息。用某種方法偽裝信息以隱藏它的內(nèi)容的過程稱為加密,經(jīng)過加密處理后得到的隱藏信息稱為密文。而把密文轉(zhuǎn)變?yōu)槊魑牡倪^程稱為解密。加密算法是指通過一系列的變換、替代或其他各種方式將明文信息轉(zhuǎn)化為密文的方法。解密算法指通過一系列的變換、替代或其他各種方法將密文恢復(fù)為明文的方法。目前十三頁\總數(shù)一百九十二頁\編于十二點2.密碼系統(tǒng)構(gòu)成
加解密算法通常都是在一組密鑰的控制下進(jìn)行的,分別稱為加密密鑰和解密密鑰。加密和解密過程如下圖所示。明文明文密文加密算法解密算法加密密鑰解密密鑰目前十四頁\總數(shù)一百九十二頁\編于十二點2.密碼系統(tǒng)構(gòu)成
比如我們想加密“HelloWorld”這個信息,“helloworld”就是明文;過某種加密機(jī)制,上述的“HelloWorld”信息變?yōu)椤癿jqqtbtwqi”,則“mjqqtbtwqi”就是密文信息;“helloworld”隱藏為“mjqqtbtwqi”的過程就是由加密算法完成的;解密算法則完成由“mjqqtbtwqi”恢復(fù)為“helloworld”的過程。目前十五頁\總數(shù)一百九十二頁\編于十二點3.密碼系統(tǒng)數(shù)學(xué)模型
以五元組(M,C,K,E,D)表示密碼系統(tǒng),其中M是明文信息空間,C是密文信息空間,K是密鑰信息空間,E是加密算法,D是解密算法。各元素之間有如下的關(guān)系:E:MK->C,表示E是M與K到C的一個映射;D:CK->M,表示D是C與K到M的一個映射。目前十六頁\總數(shù)一百九十二頁\編于十二點3.密碼系統(tǒng)數(shù)學(xué)模型
例如:愷撒密碼體制解密算法:(C-K)mod26目前十七頁\總數(shù)一百九十二頁\編于十二點3.密碼系統(tǒng)數(shù)學(xué)模型
例如在最早的愷撒密碼體制中,明文信息空間是26個英文字母集合,即M={a,b,c,d……z,A,B……Z};密文信息空間也是26個英文字母集合,即C={a,b,c,d…..z,A,B…..Z};密鑰信息空間是正整數(shù)集合,即
K={N|N=1,2…..};為了計算方便,將26個英文字母集合對應(yīng)為從0到25的整數(shù),加密算法則是明文與密鑰相加之和,然后模26,因此Ek=(M+K)mod26;與之對應(yīng)的解密算法是Dk
,Dk=(C-K)mod26。例如M為“helloworld”,在密鑰k=5的條件下,此時對應(yīng)的密文就是“mjqqtbtwqi”。
目前十八頁\總數(shù)一百九十二頁\編于十二點3.密碼系統(tǒng)數(shù)學(xué)模型
發(fā)送信息的一方使用密鑰K加密明文M,通過加密算法得到密文C,即C=EK(M);接收信息的一方使用密鑰K’解密密文C,通過解密算法得到明文M,即M=DK’(C);。K與K’可能相等,也可能不等,具體取決于所采用的密碼體制。
目前十九頁\總數(shù)一百九十二頁\編于十二點3.密碼系統(tǒng)數(shù)學(xué)模型
明文m加密算法:密文c=Ek1(m)加密密鑰源解密密鑰源解密算法:m=Dk2(c)明文mmmk1k2cc目前二十頁\總數(shù)一百九十二頁\編于十二點2.1.3密碼體制分類
按不同的劃分標(biāo)準(zhǔn)或者方式,密碼體制可以分為多種形式。在此,我們主要從加密方式、所采用的密鑰方式以及保密程度來劃分。
目前二十一頁\總數(shù)一百九十二頁\編于十二點1.按加密方式劃分
(1)流密碼體制。也稱為序列密碼,它是將明文信息一次加密一個比特形成密文字符串,典型的流密碼體制是一次一密密碼體制,其密鑰長度與明文長度相等。
(2)分組密碼體制。
也稱為塊密碼體制,分組密碼則是將明文信息分成各組或者說各塊,每組具有固定的長度,然后將一個分組作為整體通過加密算法產(chǎn)生對應(yīng)密文的處理方式。目前二十二頁\總數(shù)一百九十二頁\編于十二點1.按加密方式劃分
⑴流密碼在流密碼中,將明文m寫成連續(xù)的符號m=m1m2…,利用密鑰流k=k1k2…中的第i個元素ki對明文中的第i個元素mi進(jìn)行加密,若加密算法為E,則加密后的密文c=Ek(m)=Ek1(m1)Ek2(m2)…Eki(mi)…。設(shè)與加密算法E對應(yīng)的解密算法為D,則通過解密運算可譯得明文為:m=Dk(c)=Dk1(Ek1(m1))Dk2(Ek2(m2))…=m1m2…,從而完成一次密碼通信。目前二十三頁\總數(shù)一百九十二頁\編于十二點1.按加密方式劃分
⑴流密碼加密算法E解密算法D明文mi密文ci=Eki(mi)明文mi=Dki(ci)密鑰ki密鑰ki目前二十四頁\總數(shù)一百九十二頁\編于十二點2.按使用的密鑰方式劃分
(1)單密鑰體制。也稱為對稱密碼機(jī)制,在該體制下,密碼系統(tǒng)只有一個密鑰,加密算法和解密算法使用統(tǒng)一的一個密鑰,擁有密鑰的用戶既可以加密信息也可以解密信息。(2)雙密鑰體制。也稱為非對稱密碼體制或者公鑰密碼體制,在該體制下,密碼系統(tǒng)有兩個密鑰,分別是公開密鑰和私有密鑰,公開密鑰是對外公開的,即所有的人都可知,私有密鑰是只有特定的用戶方能擁有。目前二十五頁\總數(shù)一百九十二頁\編于十二點3.按保密程度劃分
(1)實際上保密的密碼體制。是指在理論上可破解,但是在現(xiàn)有的客觀條件下以及有限的時間內(nèi),無法通過計算從密文破譯出明文或者密鑰的密碼體制。(2)絕對保密的密碼體制。是指無論在理論上還是實際上,都不可破解的密碼體制。目前二十六頁\總數(shù)一百九十二頁\編于十二點2.1.4密碼系統(tǒng)設(shè)計的基本原則
(1)簡單實用原則。在已知密鑰的情況下,容易通過加密算法和解密算法計算密文和明文;但是在未知密鑰的情況下,無法從加密算法或者解密算法推導(dǎo)出明文或者密文。
(2)抗攻擊性原則。在現(xiàn)有的計算環(huán)境下,能夠抵抗各種密碼分析攻擊,例如:已知密文,如果不知道密鑰,則無法從其中推出密鑰和明文(3)算法公開化原則。目前二十七頁\總數(shù)一百九十二頁\編于十二點2.1.5密碼系統(tǒng)攻擊及分析
對密碼系統(tǒng)的攻擊分為被動攻擊和主動攻擊被動攻擊是指通過竊取密文試圖了解明文或者密鑰的內(nèi)容;主動攻擊是指篡改和偽造密文,以達(dá)到修改或者偽造明文的目的。被動攻擊的主要方法有:通過竊聽通信信道上傳輸?shù)拿芪模瑢ζ溥M(jìn)行分析破譯出明文為或者密鑰;
主動攻擊的主要方法有:攻擊者截取通信信道上傳輸?shù)拿芪?,然后對其篡改(如添加、刪除某些內(nèi)容)再發(fā)送目前二十八頁\總數(shù)一百九十二頁\編于十二點2.2傳統(tǒng)對稱密碼體制
在公鑰密碼體制出現(xiàn)以前,無論是古典密碼還是近現(xiàn)代密碼都屬于對稱密碼體制,也就是說加密和解密使用同一個密鑰,我們在實際中常用的分組密碼體制如DES、IDEA都屬于對稱密碼體制。多年來,對稱密碼體制一直被廣泛應(yīng)用于各類信息的加密和解密。2.2.1加解密的基本原理
2.2.2數(shù)據(jù)加密標(biāo)準(zhǔn)DES
2.2.3高級加密標(biāo)準(zhǔn)AES目前二十九頁\總數(shù)一百九十二頁\編于十二點加解密的基本原理無論是采用手工或者機(jī)械的方式完成的古典密碼體制,還是采用計算機(jī)程序軟件方式或者電子電路的硬件方式完成的現(xiàn)代密碼體制,盡管使用的操作方法不一樣,但是其加密和解密的基本原理是一致的:都是基于對明文信息的“置換”和“替代”完成的,或者是通過對兩者的組合運用即乘積的方式完成。目前三十頁\總數(shù)一百九十二頁\編于十二點1.置換置換又稱“換位”方法,是指變換明文中各元素的相對位置,但保持其內(nèi)容不變的方法,即通過對明文元素重新排列組合來達(dá)到隱藏明文原始內(nèi)容所表達(dá)含義的加密方法。最典型的置換密碼體制是柵欄密碼技術(shù)。目前三十一頁\總數(shù)一百九十二頁\編于十二點1.置換柵欄加密算法步驟如下:①將明文的元素按照兩行的方式書寫,并按照從上到下,從左到右的方式排列;②按從上到下的順序依次讀出每一行的元素所得到的組合就是密文。目前三十二頁\總數(shù)一百九十二頁\編于十二點1.置換柵欄解密算法步驟如下:①將接收到的密文按照從左到右的順序?qū)憺閮尚校绻芪脑氐膫€數(shù)為偶數(shù)n,則每一行寫n/2個元素;如果密文元素個數(shù)為奇數(shù),則第一行排列[n+1]/2個元素,第二行排列[n-1]/2個元素;②按照加密算法的規(guī)則,依次從上到下,從左到右的規(guī)則讀取各元素,所得到的字母序列即獲得所需要的明文。目前三十三頁\總數(shù)一百九十二頁\編于十二點1.置換目前三十四頁\總數(shù)一百九十二頁\編于十二點1.置換一種改進(jìn)的方案是將明文元素以矩陣的方式排列,假設(shè)明文可以寫成nm的n行m階的矩陣,矩陣法:①按照nm的矩陣格式從左到右依次寫出明文元素;②根據(jù)密鑰的內(nèi)容指示,讀出相應(yīng)各列的明文元素;③所有讀出的元素按一行的順序排列,得到的結(jié)果即為密文。
目前三十五頁\總數(shù)一百九十二頁\編于十二點1.置換例如:目前三十六頁\總數(shù)一百九十二頁\編于十二點1.置換矩陣法解密算法是:①根據(jù)密鑰長度將密文寫成矩陣形式,但書寫的格式是按照逐列寫,各列之間的排列順序參照密鑰內(nèi)容的編號;②依次讀取排列好的矩陣逐行元素,得到的結(jié)果就是明文。目前三十七頁\總數(shù)一百九十二頁\編于十二點1.置換目前三十八頁\總數(shù)一百九十二頁\編于十二點1.置換置換法破譯:通過字母的使用頻率破譯目前三十九頁\總數(shù)一百九十二頁\編于十二點2.替代替代方法是將明文各元素的內(nèi)容用新的符號或者符號組合代替,替換之后形成的新的元素符合集合便是密文。公元前50年,古羅馬的凱撒大帝在高盧戰(zhàn)爭中采用的加密方法。凱撒密碼算法就是把每個英文字母向后推移K位。用各自后面對應(yīng)的第k個字符代替。ABCDEFGH……VWXYZFGHIJKLM……ABCDE目前四十頁\總數(shù)一百九十二頁\編于十二點2.替代——密碼分析給定加密信息:PHHWPHDIWHUWKHSDUWB由于:①加密算法已知②可能嘗試的密鑰只有26個通過強(qiáng)力攻擊得到明文:Meetmeaftertheparty替代法容易受到攻擊!目前四十一頁\總數(shù)一百九十二頁\編于十二點加解密的基本原理為了提高安全性,自然會想到能不能將置換和替代兩種方法結(jié)合起來使用,這樣得到的結(jié)果從密碼編碼的角度來看比使用一種方式安全性要高很多,我們將置換和替換兩者交替使用的密碼編碼方法稱為乘積密碼,F(xiàn)eistel提出的Feistel密碼結(jié)構(gòu)就是乘積密碼,它是在密鑰的控制下按照一定的規(guī)則經(jīng)過多輪循環(huán)的置換與替代操作達(dá)到隱藏信息的目的?,F(xiàn)在普遍使用的分組密碼體制設(shè)計原理幾乎都遵循Feistel密碼結(jié)構(gòu),如經(jīng)典的數(shù)據(jù)加密標(biāo)準(zhǔn)DES。目前四十二頁\總數(shù)一百九十二頁\編于十二點數(shù)據(jù)加密標(biāo)準(zhǔn)DES目前四十三頁\總數(shù)一百九十二頁\編于十二點1.DES的產(chǎn)生
1972年,美國標(biāo)準(zhǔn)局NBS(現(xiàn)在的NIST)公開征求用于計算機(jī)通信數(shù)據(jù)保密的方案,其要求為:①算法必須提供高度的安全性;②算法必須有詳細(xì)的說明,并易于理解;③算法的安全性取決于密鑰,不依賴于算法;④算法適用于所有用戶;⑤算法適用于不同應(yīng)用場合;⑥算法必須高效、經(jīng)濟(jì);⑦算法必須能被證實有效;⑧算法必須可出口。目前四十四頁\總數(shù)一百九十二頁\編于十二點1.DES的產(chǎn)生IBM公司的W.Tuchman和C.Meyers等研究人員提交了一個數(shù)據(jù)加密算法Lucifer該算法被美國標(biāo)準(zhǔn)局采用,在經(jīng)過一系列的研究討論和簡單的修改于1977年正式批為數(shù)據(jù)加密標(biāo)準(zhǔn)DES。目前四十五頁\總數(shù)一百九十二頁\編于十二點2.DES算法基本原理
DES屬于典型的分組密碼體制。DES將明文信息按64比特大小分組,密鑰長度也是64比特,但是實際使用過程中密鑰長度是56比特,另外8比特用作奇偶校驗位(即每個字節(jié)的最后一位用作奇偶校驗)。64比特的明文分組在密鑰的作用下經(jīng)過多次的置換和替代組合操作,最終形成攻擊者難以破譯的64比特密文。目前四十六頁\總數(shù)一百九十二頁\編于十二點2.DES算法基本原理
DES算法的基本原理是上一節(jié)所講的置換和替代操作,根據(jù)前面我們對置換和替代算法的分析,無論是單一的置換還是單一的替代,其安全系數(shù)都很低,攻擊者通過統(tǒng)計分析等方法很容易的攻破密碼系統(tǒng)。因此,DES的設(shè)計者在加密過程中,使用了置換和替代的多次組合過程,并且使用多輪循環(huán)加密來擾亂和擴(kuò)散明文信息
。
目前四十七頁\總數(shù)一百九十二頁\編于十二點2.DES算法基本原理
DES算法加密的基本原理:⑴加密過程中輸入64比特的明文,首先經(jīng)過初始矩陣IP置換;⑵在56比特的輸入密鑰控制下,進(jìn)行16輪迭代加密處理過程;⑶通過簡單的換位和逆置換算法,得到64比特的輸出密文。目前四十八頁\總數(shù)一百九十二頁\編于十二點2.DES算法基本原理
DES算法加密的基本原理:目前四十九頁\總數(shù)一百九十二頁\編于十二點2.DES算法基本原理
DES算法解密的基本原理:具體的解密處理過程與加密處理過程順序完全一樣,只是控制每一輪迭代的密鑰K’與加密過程中的密鑰K正好相反,即加密過程的第1輪控制密鑰K1是解密過程的第16輪密鑰K’16,K1=K’16,而解密處理過程的第1輪控制密鑰K是加密處理過程的第16輪密鑰,即K’1=K16。
目前五十頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程DES加密算法主要由4個元素組成:初始置換矩陣IP、加密函數(shù)F、S-盒子、逆初始置換矩陣IP-1。
目前五十一頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程初始置換:初始置換矩陣IP目前五十二頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程初始置換:由置換矩陣可知置換規(guī)則:將原先處在第58位置的比特置換后放在第1個位置,第50位置的比特置換后放在第2個位置,第7個位置的比特置換后放在第64個位置。如果明文M分組是序列m1m2m3
….m64,則經(jīng)過IP置換后變成序列m58m50m42
….m7。目前五十三頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程初始置換:舉例,假設(shè)64比特明文M是:按照初始置換矩陣IP的變換規(guī)則,將M變換為M1,M1序列是:目前五十四頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程M寫成88的矩陣,如表2-7所示。初始置換后如表2-8所示目前五十五頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程通過比較表2-7與表2-8,可以發(fā)現(xiàn),M由置換矩陣IP變換到M1遵循一定的規(guī)律:矩陣M1的第1行是矩陣M的第2列的倒置,第2行是矩陣M的第4列倒置,第5行是矩陣M的第1列的倒置。概括的說,置換后的矩陣M1前4行是明文矩陣M各偶數(shù)列的倒置,后4行是明文矩陣M各奇數(shù)列的倒置。目前五十六頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程再次對照逆初始矩陣IP-1(如表2-6所示)可發(fā)現(xiàn),將M1前4行各行的倒置作為新矩陣M2的偶數(shù)列,后4行各行的倒置作為新矩陣M2的奇數(shù)列,會得到結(jié)果M=M2。也就是說將任何明文M經(jīng)過初始矩陣IP置換,然后再經(jīng)過逆初始矩陣IP-1的置換,M的值保持不變目前五十七頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程每輪迭代加密處理過程:
DES算法加密過程需要16輪迭代處理,每一輪迭代的處理步驟是一樣的,只是輸入的信息和控制密鑰不同,第i輪加密處理過程如圖2-3所示。目前五十八頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程目前五十九頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程F函數(shù)是DES算法的精髓,它是多個置換函數(shù)和替代函數(shù)的組合函數(shù),該函數(shù)以密鑰和上一輪加密得到的部分結(jié)果作為輸入,通過多次擴(kuò)展、置換和替代達(dá)到真正“擾亂”明文信息的目的。F函數(shù)分為擴(kuò)展、異或運算、S盒替代以及置換四個步驟。目前六十頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程⑴擴(kuò)展
F函數(shù)首先將32比特的數(shù)據(jù)Ri-1預(yù)擴(kuò)展為48比特,其方法是:將Ri-1從左到右分成8塊,每塊4比特,然后將每塊從4比特擴(kuò)展到6比特。擴(kuò)展的規(guī)則是:每一塊向左擴(kuò)展一位,同時向右擴(kuò)展一位,也就是說,第n塊向左擴(kuò)展一位,與第n-1塊未擴(kuò)展前的最后一位相同,同時向右擴(kuò)展一位,與第n+1塊未擴(kuò)展前的最后一位相同;目前六十一頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程例如由表2-8所知的序列M1,得到加密時的L0和R0分別是:首先將R0
分為8塊,得到數(shù)據(jù):1001011101010110101110011100000,如圖2-4所示,目前六十二頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程目前六十三頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程⑵異或運算:由圖2-3所示,經(jīng)過擴(kuò)展后的48比特Ri-1
將與第i輪加密密鑰Ki進(jìn)行異或運算,密鑰Ki
也是48位,由原始密鑰經(jīng)過循環(huán)左移以及置換排列的方式產(chǎn)生,具體的生成過程后面將詳細(xì)描述。
48位的Ki同Ri-1
一樣,也分成8塊,每塊6比特,然后與擴(kuò)展后的Ri-1
對應(yīng)的各塊做異或運算后,同樣生成8個6位比特塊,其輸出是S盒子的輸入。
目前六十四頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程假設(shè)密鑰Ki的第1塊6比特數(shù)據(jù)為:110111,圖2-4所示的第一塊擴(kuò)展比特是010010,則兩者異或的結(jié)果是100101目前六十五頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程⑶S盒替代
DES算法中的S盒子由8個子盒S1、S2、S3
、S4
、S5、S6、S7、S8組成,每個盒子構(gòu)成4行16階的416矩陣,表2-9列出了其中一個子盒S1的定義。
目前六十六頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程目前六十七頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程S盒子的輸入是上述所講的由Ri-1與Ki
兩者異或運算得到的結(jié)果,其中第j個子盒Sj的輸入是第j塊異或運算的結(jié)果,輸出是根據(jù)Sj盒子定義得到的4比特數(shù)據(jù)。目前六十八頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程對于每個盒子Sj
(j=1,2….8)其輸入與輸出之間的映射關(guān)系是:將Sj輸入的第一位與最后一位兩個二進(jìn)制組合起來,得到某個十進(jìn)制數(shù)m,m用來選擇矩陣Sj的行;Sj輸入的中間四比特數(shù)據(jù)組合,得到十進(jìn)制數(shù)n,n用來選擇矩陣Sj的列。已知行m與列n,查找已經(jīng)定義好的矩陣Sj
的m行n列對應(yīng)的值,該值就是Sj的輸出。目前六十九頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程對應(yīng)前面敘述的例子,S1盒子的輸入是F函數(shù)第二步異或運算所得結(jié)果,為數(shù)據(jù)100101,S1盒子的輸出通過表2-9確定,具體的方法是:將輸入的第1位“1”與第6位“1”構(gòu)成二進(jìn)制數(shù)“11”,“11”表示十進(jìn)制數(shù)3,即要選擇矩陣S1的第3行,輸入的中間四位二進(jìn)制數(shù)“0010”,表示十進(jìn)制數(shù)2,即要選擇矩陣S1的第2列,在表2-4中,第3行第2列對應(yīng)的二進(jìn)制數(shù)是1000目前七十頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程⑷置換F函數(shù)的最后一步是對S盒子輸出的32比特數(shù)據(jù)進(jìn)行置換,目的是使得S盒的輸出對下一輪多個Si子盒產(chǎn)生影響,以增強(qiáng)DES的安全性。F函數(shù)的輸出結(jié)果與上一輪加密處理的左半部分?jǐn)?shù)據(jù)Li-1異或,得到第i輪加密處理的右半部分32位數(shù)據(jù)Ri。然后Li與Ri又作為第i+1輪加密處理時的輸入數(shù)據(jù),這樣,經(jīng)過16輪迭代加密處理之后,得到L16
與R16。
目前七十一頁\總數(shù)一百九十二頁\編于十二點3.算法加密具體過程將R16
與L16
左右換位,即將R16的32比特數(shù)據(jù)移到左邊,L16的32比特數(shù)據(jù)移到右邊。換位之后,再次經(jīng)過逆初始矩陣IP-1置換,最終得到的結(jié)果就是密文。目前七十二頁\總數(shù)一百九十二頁\編于十二點4.DES算法解密過程
DES的解密算法與加密算法除了在每一輪循環(huán)迭代時所使用的控制密鑰不同之外,其他的完全一樣。并且,輸出的64比特密文經(jīng)過解密處理過程,所得結(jié)果就是所需的明文。目前七十三頁\總數(shù)一百九十二頁\編于十二點5.密鑰的生成DES算法定義的分組長度是64比特,其主密鑰長度與明文分組長度一樣,也是64比特,不過在實際使用中,只用到56比特,還有8比特用作奇偶校驗位。每輪迭代所使用的密鑰Ki(i=1,2….16)都是從主密鑰生成的,Ki的長度是48比特。密鑰的具體生成方法如圖2-5所示:目前七十四頁\總數(shù)一百九十二頁\編于十二點5.密鑰的生成目前七十五頁\總數(shù)一百九十二頁\編于十二點6.DES算法安全性分析關(guān)于DES算法的安全性,在最初公布的時候,曾受到很多人的置疑。比如有人認(rèn)為算法中實際使用的密鑰只有56位,過短,難以抵抗窮舉式攻擊,攻擊者會很容易的破譯DES算法密鑰;更多的人擔(dān)心保密設(shè)計的S盒子的安全性,他們猜測S盒之所以不公開設(shè)計標(biāo)準(zhǔn),是否意味著公布該算法的政府機(jī)構(gòu)隱藏了“后門”。但是隨著DES算法在實踐中的廣泛使用以及密碼分析技術(shù)的突破,上述大多數(shù)問題都有了答案。目前七十六頁\總數(shù)一百九十二頁\編于十二點6.DES算法安全性分析在DES剛開始公布的時候,曾經(jīng)有很多用戶擔(dān)心S盒子存在隱藏的弱點,利用這種弱點,公布該算法的美國國家安全局NSA能夠在不知道密鑰的情況下解密DES加密的報文信息。但是通過多年來對DES算法在實踐中的使用分析,以及90年代初差分密碼分析技術(shù)的公布都證實了DES的S盒子具有很強(qiáng)的防范攻擊的能力,這種擔(dān)心S盒子有弱點的想法是多余的。目前七十七頁\總數(shù)一百九十二頁\編于十二點6.DES算法安全性分析DES算法為什么需要16次循環(huán)迭代?而不是15次或者更多的20次呢?從一定程度上來說,迭代的次數(shù)越多,密碼分析的難度就會越大,但是相應(yīng)的加解密所需的時間與代價也會隨之增大,算法的效率與性能將會受到影響,所以一方面不能一味的為了防止攻擊者破譯密碼,不斷增加循環(huán)迭代次數(shù),另一方面,較少的迭代次數(shù)又會導(dǎo)致攻擊者容易分析密碼算法,從而破譯出密鑰。目前七十八頁\總數(shù)一百九十二頁\編于十二點6.DES算法安全性分析關(guān)于DES算法使用56位密鑰是否安全問題。56比特密鑰,其密鑰空間是256,大約有7.21016個密鑰,如果使用最簡單的窮舉式攻擊方法,一臺每微妙完成一次DES加密的機(jī)器將要花費255us,即要1142年時間才能完成密鑰的搜索,這個代價在上世紀(jì)70年代DES密鑰提出的時候,幾乎是計算不可行的,所以很長一段時間以來,DES被廣泛使用在安全級別要求不高的場合。但是20世紀(jì)90年代以來,隨著計算能力的提高以及分布式計算的使用,56位的DES算法安全強(qiáng)度越來越低,1997年3月,美國程序員verser利用因特網(wǎng)成功找到DES密鑰,就表明破解56位的DES密鑰已經(jīng)成為事實,顯然,從計算上講,56位密鑰的DES不能再認(rèn)為是安全的。目前七十九頁\總數(shù)一百九十二頁\編于十二點2.2.3高級加密標(biāo)準(zhǔn)AES1.
AES的起源2.
AES的設(shè)計原則目前八十頁\總數(shù)一百九十二頁\編于十二點1.AES的起源1997年9月,NIST征集AES方案,以替代DES。1999年8月,以下5個方案成為最終候選方案:MARS,RC6,Rijndael,Serpent,Twofish。2000年10月,由比利時的JoanDaemen和VincentRijmen提出的算法最終勝出。(Rijndael讀成RainDoll。)2000年12月,美國國家標(biāo)準(zhǔn)局NIST正式確認(rèn)新一代數(shù)據(jù)加密標(biāo)準(zhǔn)是高級加密標(biāo)準(zhǔn)AES(AdvancedEncryptionStandard)。目前八十一頁\總數(shù)一百九十二頁\編于十二點2.AES的設(shè)計原則能抵抗所有已知的攻擊;在各種平臺上易于實現(xiàn),速度快;設(shè)計簡單,是一種分組密碼體制,加密和解密使用相同的密鑰,屬于對稱密碼體制;與DES分組密碼體制不同的是,AES中明文或密文分組長度以及密鑰長度不是固定的,而是可變的,它們可以是128比特、192比特、256比特。目前八十二頁\總數(shù)一百九十二頁\編于十二點2.3公鑰密碼體制
公鑰密碼體制的基本原理
RSA算法2.3.3有限域上橢圓曲線密碼算法ECC2.3.4公鑰密碼體制的應(yīng)用目前八十三頁\總數(shù)一百九十二頁\編于十二點2.3.1公鑰密碼體制的基本原理是密碼學(xué)一次偉大的革命1976年,Diffie和Hellman在“密碼學(xué)新方向”一文中提出使用兩個密鑰:公密鑰、私密鑰加解密的非對稱性利用數(shù)論與其他數(shù)學(xué)難題的方法是對對稱密碼的重要補(bǔ)充目前八十四頁\總數(shù)一百九十二頁\編于十二點2.3.1公鑰密碼體制的基本原理重要特點僅根據(jù)加密算法和加密密鑰來確定解密密鑰在計算上不可行兩個密鑰中的任何一個都可用來加密,另一個用來解密。六個組成部分:明文、密文;公鑰、私鑰;加密、解密算法目前八十五頁\總數(shù)一百九十二頁\編于十二點2.3.1公鑰密碼體制的基本原理1.公鑰密碼體制依賴的基礎(chǔ)2.公鑰密碼系統(tǒng)的特征3.公鑰密碼體制加解密過程目前八十六頁\總數(shù)一百九十二頁\編于十二點1.公鑰密碼體制依賴的基礎(chǔ)經(jīng)典的公鑰密碼算法RSA、橢圓曲線密碼算法ECC等都是依賴某類數(shù)學(xué)問題的,它們共同的特點是基于某個單向陷門函數(shù)。單向陷門函數(shù)y=fk(x)是指同時滿足下列條件的一類可逆函數(shù):⑴函數(shù)是一一映射關(guān)系,也就是說,對于每個函數(shù)值y,只有唯一的一個原象x與之對應(yīng);⑵給定x與關(guān)鍵參數(shù)k,函數(shù)y=fk(x)很容易計算;目前八十七頁\總數(shù)一百九十二頁\編于十二點1.公鑰密碼體制依賴的基礎(chǔ)⑶給定y,存在某個關(guān)鍵參數(shù)k’,在未知k’時,由y計算出x非常困難,即在未知k’的條件下,逆函數(shù)x=f-1(y)的計算相當(dāng)復(fù)雜,實際上是不可行的;在已知k’時,對給定的任何y,若其對應(yīng)的x存在,則逆函數(shù)x=f-1k’(y)很容易計算;⑷給定y和參數(shù)k,無法從函數(shù)y=fk(x)推導(dǎo)出影響其逆函數(shù)f-1的關(guān)鍵參數(shù)k’。目前八十八頁\總數(shù)一百九十二頁\編于十二點2.公鑰密碼系統(tǒng)的特征根據(jù)密碼系統(tǒng)的組成以及公鑰密碼體制自身的特點,一個公鑰密碼系統(tǒng)可以表示為:加密算法E、解密算法D、公鑰/私鑰(PK/SK)對、明文M、密文C六個元素,且各元素必須要滿足以下條件:目前八十九頁\總數(shù)一百九十二頁\編于十二點2.公鑰密碼系統(tǒng)的特征⑴密鑰。要滿足三點要求:公鑰/私鑰(PK/SK)對容易產(chǎn)生,且私鑰除了生成密鑰的用戶自己知道之外,其他任何人都不可知;PK和SK中的任何一個都可以用于加密,相應(yīng)的另一個用于解密;已知公鑰PK,無法計算出私鑰SK,即公鑰密碼系統(tǒng)所要滿足的基本條件之一是從公開密鑰無法通過計算得到私有密鑰。目前九十頁\總數(shù)一百九十二頁\編于十二點2.公鑰密碼系統(tǒng)的特征⑵加密算法E。要滿足兩點要求:已知公鑰PK,對任何明文M,由E計算出密文C非常容易,即C=EPK(M)易計算,或者已知私鑰SK,對任何信息M,由E計算數(shù)字簽名也非常容易,即C=ESK(M)易計算。目前九十一頁\總數(shù)一百九十二頁\編于十二點2.公鑰密碼系統(tǒng)的特征⑶解密算法D。要滿足兩點要求:已知私鑰SK,對任何密文C,由D容易計算出明文M,或者已知公鑰PK,對任何用SK所做的數(shù)字簽名C,容易通過D計算,得到簽名前的信息;但是已知公鑰PK、密文C,以及解密算法D,無法由三者推導(dǎo)出明文M或者私鑰SK。即僅知道解密算法以及加密密鑰,推導(dǎo)明文和解密密鑰都是計算不可行的。目前九十二頁\總數(shù)一百九十二頁\編于十二點3.公鑰密碼體制加解密過程假設(shè)網(wǎng)絡(luò)上的兩個用戶Alice和Bob需要進(jìn)行秘密通信,為了防止攻擊者Eve竊聽信息,Alice和Bob選擇使用公鑰密碼體制加密傳輸?shù)男畔?。Alice是信息的發(fā)送方;Bob是信息的接收方。⑴Alice與Bob產(chǎn)生公鑰/私鑰對:PKA/SKA,PKB/SKB。目前九十三頁\總數(shù)一百九十二頁\編于十二點3.公鑰密碼體制加解密過程⑵Alice與Bob通過某種機(jī)制公布各自的公鑰PKA與PKB,例如將公鑰放到一個公共的服務(wù)器,供其他用戶查詢。目前九十四頁\總數(shù)一百九十二頁\編于十二點3.公鑰密碼體制加解密過程⑶Alice通過查詢公共服務(wù)器獲得Bob的公鑰PKB。如果Alice欲給Bob發(fā)送報文M,他就用Bob的公鑰PKB加密報文。已知待加密的明文M以及Bob的公鑰PKB,Alice很容易通過加密算法E計算出密文,即C=EPKB(M)。目前九十五頁\總數(shù)一百九十二頁\編于十二點3.公鑰密碼體制加解密過程接收方Bob收到Alice發(fā)送的信息之后,使用自己的私鑰SKB解密報文。已知密文C私鑰SKB,Bob很容易通過解密算法計算出明文M,即M=DSKB(C)。目前九十六頁\總數(shù)一百九十二頁\編于十二點2.3.2RSA算法1.RSA算法依賴的數(shù)學(xué)問題2.RSA算法密鑰產(chǎn)生過程3.RSA算法加解密過程4.RSA算法安全性及性能分析目前九十七頁\總數(shù)一百九十二頁\編于十二點1.RSA算法依賴的數(shù)學(xué)問題⑴模運算的性質(zhì):正整數(shù)n是素數(shù),集合Zn={0,1,2….,(n-1)}表示小于n的所有非負(fù)整數(shù)集合,則對于集合Zn中的每一個整數(shù)wZn,均存在一個z,滿足公式w×z=1modn,我們稱z是w的乘法逆元,且n是它們的模。目前九十八頁\總數(shù)一百九十二頁\編于十二點1.RSA算法依賴的數(shù)學(xué)問題⑵費馬定理:如果p是素數(shù),a是不能整除p的正整數(shù),則:ap-1≡1modp例如:P=7,a=2,則27-1=26=64,64mod7=1目前九十九頁\總數(shù)一百九十二頁\編于十二點1.RSA算法依賴的數(shù)學(xué)問題⑶歐拉函數(shù):正整數(shù)n的歐拉函數(shù)是指小于n且與n互素的正整數(shù)個數(shù),通常記為?(n)。對于任一素數(shù)p,顯然有:?(p)=p–1,例如:設(shè)p=3,小于3且與3互素的正整數(shù)為1,2,因此?(3)=2;類似地,當(dāng)p=7時,小于7且與7互素的正整數(shù)為1,2,3,4,5,6,因此?(7)=6目前一百頁\總數(shù)一百九十二頁\編于十二點1.RSA算法依賴的數(shù)學(xué)問題假定有兩個不同的素數(shù)p和q,n是p與q之積,即
n=p×q,則有如下公式關(guān)系:?(n)=?(pq)=?(p)×?(q)=(p-1)×(q-1)
例如:取n=21,?(21)=?(3)×?(7)=(3-1)×(7-1)=2×6=12,其中這12個整數(shù)是{1,2,4,5,8,10,11,13,16,17,19,20}目前一百零一頁\總數(shù)一百九十二頁\編于十二點1.RSA算法依賴的數(shù)學(xué)問題⑷歐拉定理:任何兩個互素的整數(shù)a和n,有如下關(guān)系:
a?(n)=1modn例如:a=3;n=8;由(3)歐拉函數(shù)的定義,?(8)=4;則a?(n)=34=81=10×8+1≡1mod8≡1modn
目前一百零二頁\總數(shù)一百九十二頁\編于十二點1.RSA算法依賴的數(shù)學(xué)問題歐幾里德(Elucid)算法:該算法主要的思想是:用一個簡單的方法確定兩個正整數(shù)的最大公因子,并且如果這兩個整數(shù)互素,通過擴(kuò)展該算法能確定它們各自的逆元
目前一百零三頁\總數(shù)一百九十二頁\編于十二點2.RSA算法密鑰產(chǎn)生過程⑴隨機(jī)選擇兩個大素數(shù)p與q,且p×q=n。為了增強(qiáng)算法的安全性,避免攻擊者通過數(shù)學(xué)攻擊的方法找到n的歐拉函數(shù)?(n),從而攻破RSA密碼方案,RSA算法的設(shè)計者建議p與q長度應(yīng)該只差幾個數(shù)字,且p與q應(yīng)該位于區(qū)間[1075..10100]內(nèi)。⑵計算n的歐拉函數(shù)值:?(n)=(p-1)×(q-1)。
目前一百零四頁\總數(shù)一百九十二頁\編于十二點2.RSA算法密鑰產(chǎn)生過程⑶隨機(jī)選擇一個大的正整數(shù)e,e滿足小于n且與?(n)互素的條件,即e與?(n)的最大公因子是1⑶根據(jù)e,?(n),計算另外一個值d,d是e的乘法逆元,且?(n)是它們的模,由模運算的及乘法逆元的性質(zhì),d×e=1mod?(n)則兩個二元組(e,n)、(d,n)構(gòu)成RSA的密鑰對,選擇其中任意一個二元組作為公鑰,則另外一個就為私鑰,在此,我們定義(e,n)為公鑰,(d,n)為私鑰。目前一百零五頁\總數(shù)一百九十二頁\編于十二點2.RSA算法密鑰產(chǎn)生過程例如:1)令p=7,q=11,則n=77;2)計算n的歐拉函數(shù)值?(n)=(7-1)×(11-1)=60;3)選擇e=17,e符合小于77,且于歐拉函數(shù)值?(n)(?(n)=60)的最大公因子是1的條件;4)計算e的逆元d,因為53×17=15×60+1≡1mod60,所以當(dāng)e=17時,d=53。
因此(17,77)/(53,77)構(gòu)成一個RSA的公鑰/私鑰對。
目前一百零六頁\總數(shù)一百九十二頁\編于十二點3.RSA算法加解密過程RSA算法屬于分組加密方案,也就是說明文以分組為單位加密,分組的大小取決于所選的模n的值,明文塊每個分組的長度可以相同也可以不同,但是,各分組大小必須小于或等于log2(n)的值。已知明文的某塊分組報文M,公鑰(e,n),私鑰(d,n),則加密過程如下:對M的e次方冪指數(shù)運算結(jié)果再做模n運算,所得結(jié)果即為密文C,即由M計算C用公式表示為:C=EpK(M)=Memodn(公式21)
目前一百零七頁\總數(shù)一百九十二頁\編于十二點3.RSA算法加解密過程RSA算法加密和解密過程是等價的,解密過程如下:對C的d次方冪運算結(jié)果再做模n運算,所得結(jié)果即為明文M,即由C推導(dǎo)M可用公式表示為:M=DSK(M)=Cdmodn(公式22)目前一百零八頁\總數(shù)一百九十二頁\編于十二點3.RSA算法加解密過程目前一百零九頁\總數(shù)一百九十二頁\編于十二點3.RSA算法加解密過程目前一百一十頁\總數(shù)一百九十二頁\編于十二點4.RSA算法安全性及性能分析RSA算法的安全性基于大整數(shù)因子分解的困難性,即給定大整數(shù)n,將n分解為兩個素數(shù)因子p與q,在數(shù)學(xué)上已證明是難題,至今沒有有效的方法予以解決。RSA密碼方案的優(yōu)點在于原理簡單,易于使用目前一百一十一頁\總數(shù)一百九十二頁\編于十二點4.RSA算法安全性及性能分析缺點:RSA的性能比較低。因為算法中使用的模數(shù)n以及p與q都是大整數(shù),因此無論是用硬件實現(xiàn)還是軟件實現(xiàn)效率都比較低,其中硬件實現(xiàn)的效率是DES的1/1000,軟件實現(xiàn)的效率是DES的1/100,由此可見,RSA不適用于對長的明文信息加密,它常常與對稱密碼體制結(jié)合使用,RSA用來加密通信雙方的會話密鑰,對稱密碼體制如DES用來加密傳輸?shù)膱笪?。目前一百一十二頁\總數(shù)一百九十二頁\編于十二點4.RSA算法安全性及性能分析為了安全起見,RSA方案中要求模數(shù)n越來越大。當(dāng)前,RSA密鑰長度要求大于1024比特才有安全保障,在安全要求比較高的政府等部門,需要采用2048比特長的密鑰。密鑰長度的增加提高了安全性,但是進(jìn)一步影響了算法的性能,RSA算法加解密的速度會越來越慢,對系統(tǒng)的要求較高,因此,在選擇RSA密鑰時,不能只考慮安全性,單純的擴(kuò)大RSA密鑰長度,在系統(tǒng)的安全性和性能之間需要找到一個平衡點。目前一百一十三頁\總數(shù)一百九十二頁\編于十二點2.3.3有限域上橢圓曲線密碼算法ECC1985年NealKobiltz和Victormiller提出橢圓曲線密碼算法ECC(EllipticCurveCryptosystem)1.ECC算法依賴的數(shù)學(xué)問題2.ECC算法密鑰的選擇3.ECC算法的加解密過程4.ECC算法的安全性分析
目前一百一十四頁\總數(shù)一百九十二頁\編于十二點1.ECC算法依賴的數(shù)學(xué)問題⑴橢圓曲線定義:設(shè)K表示一個域,橢圓曲線E(K)用二元方程表示:y2+axy+by=x3+cx2+dx+e其中
a,b,c,d,e均屬于K域。在實際的密碼學(xué)研究中,主要應(yīng)用的是基于有限域上的橢圓曲線。具有q個元素的有限域上的橢圓曲線滿足下列方程關(guān)系:
y2=x3+ax+b目前一百一十五頁\總數(shù)一百九十二頁\編于十二點1.ECC算法依賴的數(shù)學(xué)問題⑵橢圓曲線上的點加運算:設(shè)P、Q是E上任意兩點,R’是連接P,Q的直線L與E相交點,R’關(guān)于X軸的對稱節(jié)點是R,如圖2-6所示。根據(jù)橢圓曲線的對稱性,R必定在橢圓曲線E上定義:R=P+Q,R就是P與Q點加的和
目前一百一十六頁\總數(shù)一百九十二頁\編于十二點1.ECC算法依賴的數(shù)學(xué)問題目前一百一十七頁\總數(shù)一百九十二頁\編于十二點1.ECC算法依賴的數(shù)學(xué)問題如果P和Q相同,即P與Q是橢圓曲線的某一點,如圖2-7所示,則過P做橢圓的切線,該切線同E相交點為M’,M’關(guān)于X軸的對稱點M就是P+P的點加和,即M=P+P,我們將P+P記做M=[2]P,以此類推,n個P相加P+P+P…..+P記做[n]P,[n]P也稱為倍乘。根據(jù)橢圓曲線的性質(zhì),[2]P、[3]P…..[n]P都是E上的點。目前一百一十八頁\總數(shù)一百九十二頁\編于十二點1.ECC算法依賴的數(shù)學(xué)問題目前一百一十九頁\總數(shù)一百九十二頁\編于十二點1.ECC算法依賴的數(shù)學(xué)問題⑶橢圓曲線離散對數(shù)問題給定橢圓曲線E及該橢圓曲線上的一點P,[k]P表示k個P相加,k為某整數(shù),如果橢圓曲線上存在一點Q,能夠滿足方程Q=[k]P,那么橢圓曲線離散對數(shù)問題就是給定點P和點Q,求解k的問題,在數(shù)學(xué)上該問題是同時涉及整數(shù)因式分解和離散對數(shù)的難題。目前一百二十頁\總數(shù)一百九十二頁\編于十二點1.ECC算法依賴的數(shù)學(xué)問題ECC算法就是基于“橢圓曲線離散對數(shù)問題”難以求解而設(shè)計的,給定P和k容易通過方程Q=[k]P計算Q;但是反過來,給定Q和P,求k在計算上是不可行的,因此我們可以設(shè)定k為私鑰。
目前一百二十一頁\總數(shù)一百九十二頁\編于十二點2.ECC算法密鑰的選擇基于橢圓曲線密碼體制的ECC算法在加解密之前,首先要給出橢圓曲線域的一些參數(shù),如基點P,階n,以確定具體的橢圓曲線。
ECC算法密鑰的產(chǎn)生是都是建立在某個有限域的橢圓曲線上,設(shè)給定一個具有q個元素有限域的橢圓曲線E,E的基點是P,P的階為n。目前一百二十二頁\總數(shù)一百九十二頁\編于十二點2.ECC算法密鑰的選擇(1)密鑰的產(chǎn)生者在區(qū)間[2,n-1]隨機(jī)選取某整數(shù)k;(2)
計算Q=[k]P。則Q就是公鑰,私鑰是k。目前一百二十三頁\總數(shù)一百九十二頁\編于十二點3.ECC算法的加解密過程假設(shè)網(wǎng)絡(luò)上的用戶Alice和Bob要進(jìn)行保密通信,它們選擇ECC算法加密通信的報文。Alice與Bob知道同一條橢圓曲線E,并已分別產(chǎn)生公鑰/私鑰對kA/QA,kB/QB,Alice欲發(fā)送明文m送給Bob,并且已獲知Bob的公鑰QB。目前一百二十四頁\總數(shù)一百九十二頁\編于十二點3.ECC算法的加解密過程
Alice加密過程如下:(1)首先要將明文m編碼成橢圓曲線上的點Pm,Pm為(Xm,Ym);(2)
Alice隨機(jī)選擇整數(shù)k[2,n-1];(3)計算[k]P=R1(X1,Y1),([k]QB=R2(X2,Y2);如果X2=0;則返回到(2);則密文C由{R1,Pm+R2}組成;目前一百二十五頁\總數(shù)一百九十二頁\編于十二點3.ECC算法的加解密過程
Bob收到密文C后,解密過程如下:(1)計算[kB]R1=[kB][k]P=[k][kB]P=[k]QB(2)Bob利用密文C的第二點的值R2+Pm
減去由(1)計算得到的結(jié)果[k]QB,即Pm+R2
[k]QB=
Pm+[k]QB
–[k]QB=Pm;(3)Bob得到橢圓曲線上點Pm,然后按照某種解碼方法從點Pm獲取明文m。目前一百二十六頁\總數(shù)一百九十二頁\編于十二點4.ECC算法的安全性分析
ECC算法的安全性依賴于橢圓曲線離散對數(shù)問題計算的困難性,如果離散對數(shù)問題容易計算,從用戶的公鑰能夠推導(dǎo)出私鑰,那么整個密碼體制就會坍塌。目前一百二十七頁\總數(shù)一百九十二頁\編于十二點4.ECC算法的安全性分析相對于RSA,ECC具有一定的優(yōu)勢:安全性高
解決橢圓曲線上的離散對數(shù)問題,其時間復(fù)雜度是完全指數(shù)階的,而RSA所依賴的大整數(shù)因子分解問題,其時間復(fù)雜度是子指數(shù)階的,因此攻擊ECC的復(fù)雜度比RSA要高得多;目前一百二十八頁\總數(shù)一百九十二頁\編于十二點4.ECC算法的安全性分析相對于RSA,ECC具有一定的優(yōu)勢:密鑰短
ECC算法中所使用的密鑰長度比RSA中要短很多,一般加解密時使用160位長度密鑰,據(jù)統(tǒng)計,160位密鑰ECC與1024位RSA安全強(qiáng)度相同性能高
ECC算法的性能比RSA算法要高,其加解密速度比RSA要快得多。目前一百二十九頁\總數(shù)一百九十二頁\編于十二點4.ECC算法的安全性分析目前一百三十頁\總數(shù)一百九十二頁\編于十二點4.ECC算法的安全性分析隨著計算能力的提高,從安全性角度考慮,對密鑰長度的要求越來越高。相對于其他公鑰密碼算法,ECC逐漸體現(xiàn)出其優(yōu)越性。但是自從使用公鑰密碼體制以來,實際應(yīng)用中,RSA算法因為原理簡單被廣泛使用,ECC算法在實際應(yīng)用中相對比較少。但是隨著時間的推移,ECC算法理論不斷完善,相信它逐漸會被應(yīng)用到實際系統(tǒng)中。目前一百三十一頁\總數(shù)一百九十二頁\編于十二點2.3.4公鑰密碼體制的應(yīng)用1.用于加解密信息2.用于數(shù)字簽名目前一百三十二頁\總數(shù)一百九十二頁\編于十二點2.4量子密碼體制2.4.1概述2.4.2量子密碼原理2.4.3量子密鑰分配2.4.4量子密鑰分配協(xié)議BB842.4.5量子密碼體制的發(fā)展與現(xiàn)狀2.4.6三大密碼體制的比較目前一百三十三頁\總數(shù)一百九十二頁\編于十二點2.4.1概述對稱密碼體制與公鑰密碼體制絕大部分算法都是實際上保密的密碼體制,理論上并不保密。理論上唯一能確保不可破譯的密碼體制是一次一密密碼1918年由美國數(shù)學(xué)家vernam設(shè)計,也稱vernam密碼,vernam密碼是一種對稱密碼體制,它要求密鑰的長度與所需加密的明文具有相同的長度,而且每個密鑰使用且只能使用一次,即一次一密密碼體制,用過的密鑰不能再用來加密其他任何信息。該體制需要通信雙方共享與待加密的明文長度一樣長的密鑰目前一百三十四頁\總數(shù)一百九十二頁\編于十二點2.4.1概述對稱密碼體制與公鑰密碼體制絕大部分算法都是實際上保密的密碼體制,理論上并不保密。理論上唯一能確保不可破譯的密碼體制是一次一密密碼。該體制在實際應(yīng)用中是不可行的。
目前一百三十五頁\總數(shù)一百九十二頁\編于十二點2.4.1概述隨著計算能力的不斷增強(qiáng),從安全角度考慮,基于數(shù)學(xué)問題求解困難的密碼體制,逐漸需要通過擴(kuò)充密鑰長度來提高安全性,例如RSA算法密鑰長度由原來的768位擴(kuò)充到現(xiàn)在的1024位。1994年,AT&T試驗室的PeterShor提出一種量子計算的方法,采用該方法能夠在有限時間內(nèi)分解大的質(zhì)因數(shù),該結(jié)論引起密碼學(xué)屆的普遍關(guān)注,因為這就意味著采用量子計算機(jī)將可以輕而易舉地破譯RSA算法,RSA公鑰算法將不能再使用。目前一百三十六頁\總數(shù)一百九十二頁\編于十二點2.4.1概述1996年,Bell試驗室的LovGrover發(fā)現(xiàn)了一種量子搜索算法,該算法可以對現(xiàn)有的DES算法中的密鑰進(jìn)行快速窮舉,從而破譯出密鑰。因此不論是對稱密碼體制還是公鑰密碼體制,在量子計算環(huán)境下,安全性受到極大的威脅。
目前一百三十七頁\總數(shù)一百九十二頁\編于十二點2.4.1概述1996年,Bell試驗室的LovGrover發(fā)現(xiàn)了一種量子搜索算法,該算法可以對現(xiàn)有的DES算法中的密鑰進(jìn)行快速窮舉,從而破譯出密鑰。因此不論是對稱密碼體制還是公鑰密碼體制,在量子計算環(huán)境下,安全性受到極大的威脅。為此,從事密碼學(xué)研究的專家就考慮到:利用量子通信中量子的性質(zhì)重新建立新的密碼體制,即量子密碼體制。目前一百三十八頁\總數(shù)一百九十二頁\編于十二點2.4.1概述1970年,美國科學(xué)家威斯納首次提出量子密碼技術(shù),威斯納當(dāng)時的想法是利用單量子態(tài)制造不可偽造的“電子鈔票”。1984年,貝內(nèi)特和布拉薩德兩位學(xué)者提出了第一個量子密鑰分配方案BB84協(xié)議,標(biāo)志著量子密碼體制研究真正的開始。目前一百三十九頁\總數(shù)一百九十二頁\編于十二點2.4.1概述量子密碼是以量子力學(xué)和密碼學(xué)為基礎(chǔ),利用量子物理學(xué)中的原理實現(xiàn)密碼體制的一種新型密碼體制,與當(dāng)前大多使用的經(jīng)典密碼體制不一樣的是,量子密碼利用信息載體的物理屬性實現(xiàn)。目前,量子密碼中用于承載信息的載體包括光子、壓縮態(tài)光信號、相干態(tài)光信號等。當(dāng)前量子密碼實驗中,大多采用光子作為信息的載體。利用光子的偏振進(jìn)行編碼目前一百四十頁\總數(shù)一百九十二頁\編于十二點2.4.1概述量子密碼體制的理論基礎(chǔ)是量子物理定理,而物理定理是物理學(xué)家經(jīng)過多年的研究與論證得出的結(jié)論,有可靠的理論依據(jù),且不論在何時都是不會變的,因此,理論上,依賴于這些物理定理的量子密碼也是不可攻破的,量子密碼體制是一種絕對保密的密碼體制。目前一百四十一頁\總數(shù)一百九十二頁\編于十二點2.4.2量子密碼原理
量子密碼利用測不準(zhǔn)原理和量子不可克隆原理,建立量子密鑰,該密鑰不會被任何攻擊者竊聽到,因為通信雙方在確定密鑰之前可以檢測信息是否被干擾過。1.海森堡測不準(zhǔn)原理2.量子不可克隆定理3.量子糾纏4.量子密碼安全性分析目前一百四十二頁\總數(shù)一百九十二頁\編于十二點1.海森堡測不準(zhǔn)原理對任何量子系統(tǒng)都不可能進(jìn)行精確的測量而不改變其原有的狀態(tài),即對量子系統(tǒng)的任何測量都會改變其量子態(tài),并且這種轉(zhuǎn)變是不可預(yù)測、無法逆轉(zhuǎn)的。目前一百四十三頁\總數(shù)一百九十二頁\編于十二點2.量子不可克隆定理量子不可克隆定理的最初表述是Wootters和Zurek兩位學(xué)者于1982年提出來的,當(dāng)時,他們在《自然》雜志上發(fā)表的一篇paper里提出了這樣的問題:是否存在一個物理過程,實現(xiàn)對一個未知量子態(tài)的精確復(fù)制,使得每個復(fù)制態(tài)與初始的量子態(tài)完全相同呢?Wootters和Zurek證明了不存在這樣的物理過程目前一百四十四頁\總數(shù)一百九十二頁\編于十二點2.量子不可克隆定理量子不可克隆原理是海森堡測不準(zhǔn)原理的推論,它是指在不知道量子態(tài)的情況下精確復(fù)制單個量子是不可能的,即未知態(tài)的單量子是不可精確復(fù)制的。因為要復(fù)制單個量子必須要先測量,根據(jù)海森堡測不準(zhǔn)原理,測量單量子必然會改變量子的狀態(tài),因此任何對單量子的復(fù)制都會改變原來的量子態(tài)目前一百四十五頁\總數(shù)一百九十二頁\編于十二點2.量子不可克隆定理量子不可克隆定理是量子力學(xué)的固有特性,量子力學(xué)以量子態(tài)作為信息載體,量子態(tài)不可精確復(fù)制是量子密碼體制的重要前提,它確保了量子密碼的“絕對保密”特性。目前一百四十六頁\總數(shù)一百九十二頁\編于十二點3.量子糾纏量子糾纏也是量子密碼學(xué)基本原理之一。所謂“量子糾纏”是指不論兩個粒子間距離有多遠(yuǎn),一個粒子的變化總會影響另一個粒子的變化,即兩個粒子之間不論相距多遠(yuǎn),從根本上講它們還是相互聯(lián)系的。目前一百四十七頁\總數(shù)一百九十二頁\編于十二點4.量子密碼安全性分析攻擊者竊聽到發(fā)送的量子態(tài),為了要知道該量子態(tài)所對應(yīng)的量子比特,它必須要測量量子態(tài),根據(jù)海森堡測不準(zhǔn)原理,攻擊者測量量子態(tài)必然會導(dǎo)致量子態(tài)的變化,并且這種改變是無法逆轉(zhuǎn)的,合法的接收者在收到信息后,對量子態(tài)同樣也要測量,由于受到攻擊者的竊聽干擾,接收者測得的結(jié)果是攻擊者測量之后的量子態(tài),這樣就出現(xiàn)了與發(fā)送方發(fā)送的量子態(tài)結(jié)果出現(xiàn)不一致的情況,發(fā)送方與接收方在隨后的信息交互中通過比較各自的量子態(tài),會發(fā)現(xiàn)這種不一致現(xiàn)象,因此通信雙方能夠判斷通信信道上存在攻擊者。目前一百四十八頁\總數(shù)一百九十二頁\編于十二點4.量子密碼安全性分析攻擊者利用物理上可行的量子復(fù)制機(jī)克隆發(fā)送方發(fā)送的量子態(tài),但是對原來的量子態(tài)不做任何測量工作,而是直接轉(zhuǎn)發(fā)給合法的接收者,其目的是避免測量時引起的量子態(tài)變化被合法的通信雙方發(fā)現(xiàn),并且想通過測量復(fù)制下來的量子態(tài)確定量子比特,但是根據(jù)量子不可克隆原理,任何量子復(fù)制機(jī)都無法克隆出與輸入量子態(tài)完全一樣的量子態(tài)來,因此,攻擊者仍然無法獲得所需的量子比特信息。目前一百四十九頁\總數(shù)一百九十二頁\編于十二點2.4.3量子密鑰分配在傳統(tǒng)的通信信道上,不可能通過通信信道直接傳輸雙方共享的密鑰,那樣密鑰極有可能被第三方竊聽到。但是量子密碼體制的出現(xiàn),改變了這種現(xiàn)象,因為在量子信道上傳輸?shù)男畔⒛軌虮WC絕對的安全性。如果將這些傳輸?shù)男畔⒕幋a為密鑰,則量子密碼體制能為通信雙方提供可靠的密鑰分配手段。目前一百五十頁\總數(shù)一百九十二頁\編于十二點2.4.3量子密鑰分配量子密碼學(xué)以量子態(tài)作為密鑰的編碼方式,如光子的偏振方向或者相位,電子的自旋等信息都可作為編碼密鑰的方式,量子密鑰的信息編碼隱含在量子態(tài)中。在實際實驗操作中,由于光子的易操作、便于傳輸?shù)忍匦?,常被用作量子密鑰的信息載體。目前一百五十一頁\總數(shù)一百九十二頁\編于十二點2.4.3量子密鑰分配主要有以下三類量子密鑰的分配方案:1.基于兩種共軛基的量子密鑰分配方案2.基于兩個非正態(tài)的兩態(tài)量子密鑰分配方案3.基于EPR佯謬的糾纏態(tài)量子密鑰分配方案目前一百五十二頁\總數(shù)一百九十二頁\編于十二點2.4.4量子密鑰分配協(xié)議BB841984年,IBM公司的C.H.Bennett和蒙特利爾大學(xué)的GBrassard兩人共同提出量子密鑰分配協(xié)議BB84,1991年該協(xié)議通過實驗得到了證實。主要介紹以下幾點內(nèi)容:1.物理學(xué)原理2.BB84協(xié)議具體工作過程3.BB84協(xié)議舉例目前一百五十三頁\總數(shù)一百九十二頁\編于十二點1.物理學(xué)原理根據(jù)物理學(xué)現(xiàn)象,光子有四個不同的偏振方向,分別是:水平方向、垂直方向、與水平成45°夾角、與水平成135°夾角。<,>構(gòu)成一組基,稱為線偏振,<,>構(gòu)成一組基,稱為斜偏振。線偏振和斜偏振是互補(bǔ)的,對某個光子,不可能同時用線偏振和斜偏振測量它,稱線偏振與斜偏振為共軛基。
目前一百五十四頁\總數(shù)一百九十二頁\編于十二點1.物理學(xué)原理同一基內(nèi)的兩個量子態(tài)是正交的,且其中的兩個偏振方向是可以區(qū)分的,即<,>中的兩個量子態(tài)是正交的,使用線偏振基測量時,能夠區(qū)分光子的水平偏振方向與垂直偏振方向;同理,<,>中的兩個量子態(tài)也是正交的。
目前一百五十五頁\總數(shù)一百九十二頁\編于十二點1.物理學(xué)原理假設(shè)發(fā)送者Alice發(fā)送的是偏振方向為線偏振光子,如果接收者Bob使用的是線偏振基<,>測量,那么測量結(jié)果就是水平偏振方向,換句話說,Bob選擇正確的測量基能得到所需的結(jié)果;如果接收者Bob使用的是斜偏振基<,>測量,那么Bob測得結(jié)果是隨機(jī)的,50%概率是與水平成45°夾角方向,50%概率是與水平成135°夾角方向。但是Bob自身并不得知其測量結(jié)果是正確的還是錯誤的,除非他和Alice進(jìn)一步通信確認(rèn)其測量基的選擇是否正確。
目前一百五十六頁\總數(shù)一百九十二頁\編于十二點2.BB84協(xié)議具體工作過程BB84協(xié)議主要思路分為兩個階段:第一階段在量子信道上單向的信息傳輸;第二階段在傳統(tǒng)公共信道上雙向的信息傳輸。如圖2-8所示,假設(shè)通信雙方分別是Alice和Bob,其中Alice是信息的發(fā)送方、Bob是信息的接收方,Eve是攻擊方。目前一百五十七頁\總數(shù)一百九十二頁\編于十二點2.BB84協(xié)議具體工作過程目前一百五十八頁\總數(shù)一百九十二頁\編于十二點2.BB84協(xié)議具體工作過程Alice和Bob事先要約定好各偏振方向所表示的二進(jìn)制比特,即表示的0還是1。在BB84協(xié)議中,一般規(guī)定水平偏振方向、斜偏振方向45°角表示比特“0”;線偏振垂直方向、斜偏振方向135°角表示比特“1”。Alice和Bob選擇的測量共軛基是(,),使用只能檢測到水平與垂直方向上的光子,使用只能檢測到與水平成45°度方向以及與水平成135°度方向。
目前一百五十九頁\總數(shù)一百九十二頁\編于十二點2.BB84協(xié)議具體工作過程第一階段:量子信道上的通信,Alice在量子信道上發(fā)送信息給Bob,量子信道一般是光纖,也可以是自由空間,比如利用空氣傳輸,具體操作步驟如下:
⑴在發(fā)送端和接收端均放置偏振方向分別為水平方向、與水平成45°度夾角、與水平成90°夾角、與水平成135°夾角的四個偏振儀。
目前一百六十頁\總數(shù)一百九十二頁\編于十二點2.BB84協(xié)議具體工作過程⑵Alice選擇一串光子脈沖隨機(jī)的通過各偏振儀。不同的偏振儀產(chǎn)生不同的偏振方向,分別代表不同的量子態(tài)。例如某個光子通過偏振方向是垂直方向的偏振儀,則發(fā)送的光子偏振方向就是。Alice同時要記錄發(fā)送的光子序列偏振方向。
⑶Bob隨機(jī)選擇一組測量基序列接收單光子。由于Bob事先并不知道Alice使用的是什么測量基序列,它只好將自己的測量基以及測量結(jié)果保存好,并且不對外公開。
目前一百六十一頁\總數(shù)一百九十二頁\編于十二點2.BB84協(xié)議具體工作過程第二階段:傳統(tǒng)公共信道上的通信:⑴Bob將它隨機(jī)選擇的測量基序列通過公共信道發(fā)送給Alice,此通信過程不存在任何安全措施,所發(fā)的測量基序列Eve可以竊取到;⑵Alice收到Bob測量基之后,將它與自己所發(fā)的光子序列偏振方向做比較,確定Bob在哪些位上用的是正確的測量基,并將比較結(jié)果通過公共信道返回給Bob;
目前一百六十二頁
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度環(huán)境監(jiān)測系統(tǒng)采購與安裝合同
- 2024年建筑工程混凝土材料供應(yīng)合同
- 2024年度廣告媒體采購服務(wù)合同
- 農(nóng)業(yè)干旱課件教學(xué)課件
- 2024年度智能交通系統(tǒng)集成合同
- 2024屋頂停車設(shè)施設(shè)計與施工合同
- 2024電視媒體廣告合同
- 2024年度自然人汽車租賃合同
- 2024年建筑工程施工質(zhì)量檢測協(xié)議
- 2024年度大型設(shè)備搬遷安全合同
- 人文地理與城鄉(xiāng)規(guī)劃專業(yè)職業(yè)生涯規(guī)劃書
- GB 6514-2023涂裝作業(yè)安全規(guī)程涂漆工藝安全及其通風(fēng)
- 工程倫理 課件第8、9章 工程、健康與可持續(xù)發(fā)展;全球化視野下的工程倫理
- 汽車防盜系統(tǒng)維修從入門到精通
- 云服務(wù)門禁管理系統(tǒng)
- 2024醫(yī)藥行業(yè)政策分析
- 雨污分流監(jiān)理實施細(xì)則
- DD 2022-1.2 巖心數(shù)字化技術(shù)規(guī)程 第2部分:表面圖像數(shù)字化
- 全國優(yōu)質(zhì)課一等獎初中物理九年級《科學(xué)探究:歐姆定律》課件
- 中醫(yī)外科乳房疾病診療規(guī)范診療指南2023版
- 2023-2024年抖音直播行業(yè)現(xiàn)狀及發(fā)展趨勢研究報告
評論
0/150
提交評論