




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二章
信息加密技術(shù)根底引言信息加密是網(wǎng)絡(luò)平安體系中重要機(jī)制之一。信息加密的目的是為了堅(jiān)持信息的性,運(yùn)用恰當(dāng)?shù)募用芤?guī)范將在計(jì)算機(jī)環(huán)境中添加平安性。信息加密經(jīng)過(guò)運(yùn)用一種編碼而使存儲(chǔ)或傳輸?shù)男畔⒆優(yōu)椴豢勺x的信息,解密是一個(gè)相反的過(guò)程。這些編碼就是將明文變成密文的加密算法或數(shù)學(xué)方法。引言(續(xù))
加密編碼在Shannon的信息論中有針對(duì)性的論述,數(shù)論及根底代數(shù)是加密算法的實(shí)際根底。要將一段信息加密或解密,他會(huì)要用到密鑰,它是一個(gè)很大的值。普通來(lái)說(shuō),密鑰越大,加密就越強(qiáng)壯。普通來(lái)說(shuō)加密體制分為對(duì)稱密鑰加密和公用密鑰加密,對(duì)稱密鑰加密在密鑰方面有一定的缺陷,但執(zhí)行效率高;公用密鑰加密加密執(zhí)行效率底,但嚴(yán)密性強(qiáng),在報(bào)文和網(wǎng)絡(luò)方面對(duì)小量信息加密非常有效.2.1信息加密實(shí)際根底信息平安的中心技術(shù)之一是加密技術(shù),它涉及信息論、根底數(shù)論和算法復(fù)雜性等多方面根底知識(shí)。隨著計(jì)算機(jī)網(wǎng)絡(luò)不斷浸透到各個(gè)領(lǐng)域,加密技術(shù)的運(yùn)用也隨之?dāng)U展,運(yùn)用加密根底實(shí)際知識(shí),深化探求可靠可行的加密方法,運(yùn)用于數(shù)字簽名、身份鑒別等新技術(shù)中成為網(wǎng)絡(luò)平安研討重要的一個(gè)方面。加密的實(shí)際根據(jù)密碼學(xué)問(wèn)題就是隨機(jī)性的利用問(wèn)題.差不多每臺(tái)運(yùn)用加密技術(shù)的計(jì)算機(jī)平安系統(tǒng)都需求隨機(jī)數(shù),供密鑰、協(xié)議中的根底參量等運(yùn)用或者用做輔助信息或者初始化向量。這些系統(tǒng)的平安也經(jīng)常依賴于這些隨機(jī)數(shù)的隨機(jī)性及被維護(hù)程度。簡(jiǎn)單的加密舉例中秋日月編碼密鑰密文編碼詩(shī)月明明日01010110111111明日月明101010000000?明日明日101101000111日明月明110010011000經(jīng)過(guò)這個(gè)例子我們看到一個(gè)簡(jiǎn)單的加密過(guò)程,原來(lái)的詩(shī)經(jīng)過(guò)與密鑰的模二運(yùn)算實(shí)現(xiàn)了加密。2.1.1信息編碼根底知識(shí)第二次世界大戰(zhàn)期間,美國(guó)為了提高信息儲(chǔ)存和傳送的效率,發(fā)明了多種新的編碼方法,奠定了現(xiàn)代信息科學(xué)技術(shù)的根底。Shannon還于1949年發(fā)表了“嚴(yán)密系統(tǒng)的通訊實(shí)際〞一文,奠定了現(xiàn)代密碼學(xué)根底從而對(duì)加密過(guò)程中信息編碼有了明確的分析。在該文中他從信息論觀念,對(duì)信息系統(tǒng)的嚴(yán)密性問(wèn)題作了全面而深化的論述。1.信息熵基本知識(shí)信息論中最重要的內(nèi)容,是如何認(rèn)識(shí)和運(yùn)用信息熵來(lái)表現(xiàn)信息。這里用Shannon最喜歡用的猜謎方法來(lái)闡明信息熵的根本概念。假設(shè)有:“我們大__都喜__使__計(jì)__機(jī)來(lái)管__數(shù)__。〞不用很多努力,就可以猜出完好的句子:“我們大家都喜歡運(yùn)用計(jì)算機(jī)來(lái)管理數(shù)據(jù)。〞Shannon在信息論中指出,能猜出來(lái)的字符不運(yùn)載信息,而不能猜出來(lái)的字符運(yùn)載信息。1.信息熵基本知識(shí)(續(xù))空格所隱藏的字符屬于多余度字符,不用那些字符也能運(yùn)載該句子的全部信息,比如:“我__大________使______機(jī)來(lái)____數(shù)__。〞就很難猜出完好的句子,在信息傳送的時(shí)候,也很難做檢錯(cuò)和抗錯(cuò)。因此,保管一定的多余度(或冗余度)是非常重要的。2.信息量和信息熵根本定義(1)信息熵〔informationentropy〕是對(duì)信息形狀“無(wú)序〞與“不確定〞的度量〔從本質(zhì)上講,熵不是對(duì)信息的度量,但信息的添加而使產(chǎn)生的熵減小,熵可以用來(lái)度量信息的增益〕。2.信息量和信息熵根本定義(2)定義:給定一離散集合X={xi;i=1,2,…,n},令xi出現(xiàn)的概率是 且。事件xi包含的信息量通常=2,此時(shí)相應(yīng)的信息量單位是bit。Shannon定義信息的數(shù)學(xué)期望為信息熵,即信源的平均信息量。(2.1)2.信息量和信息熵根本定義(3)定義:將集合X中事件所包含的信息量統(tǒng)計(jì)平均,那么平均值定義為集合X的熵.信息熵表征了信源整體的統(tǒng)計(jì)特征,集合X的熵H〔x〕表示X中事件所包含的平均信息量,或總體的平均不確定性的量度。(2.2)2.信息量和信息熵根本定義(4)對(duì)某一特定的信源,其信息熵只需一個(gè),因統(tǒng)計(jì)特性不同,其熵也不同。例如,兩個(gè)信源,其概率空間分別為:2.信息量和信息熵根本定義(5)那么信息熵為:可見(jiàn),,闡明信源比信源的平均不確定性要大,即在事件發(fā)生之前,分析信源,由于事件是等概率的,難以猜測(cè)哪一個(gè)事件會(huì)發(fā)生.2.信息量和信息熵根本定義(6)而信源,雖然也存在不確定性,但大致可以知道,出現(xiàn)的能夠性要大。正如兩場(chǎng)競(jìng)賽,其中一場(chǎng),雙方勢(shì)均力敵;而另一場(chǎng)雙方實(shí)力懸殊很大。當(dāng)然,人們希望看第一場(chǎng),由于勝負(fù)難卜,一旦賽完,人們獲得信息量大。也可以這樣了解,信息熵表征了變量的隨機(jī)性。因此,熵反映了變量的隨機(jī)性,也是表征隨機(jī)變量統(tǒng)計(jì)特性的一個(gè)特征參數(shù)。3.信息熵的根本性質(zhì)(1)對(duì)稱性當(dāng)概率空間中序恣意互換時(shí),熵函數(shù)的值不變,例如下面兩個(gè)信源空間:3.信息熵的根本性質(zhì)(2)
其信息熵.該性質(zhì)闡明,熵只與隨機(jī)變量的總體構(gòu)造有關(guān),與信源總體的統(tǒng)計(jì)特性有關(guān),同時(shí)也闡明所定義的熵有其局限性,它不能描畫(huà)事件本身的客觀意義。3.信息熵的根本性質(zhì)(3)確定性假設(shè)信源的輸出只需一個(gè)形狀是必然的,即那么信源的熵:此性質(zhì)闡明,信源的輸出雖有不同形狀,但其中一種是必然的,意味著其他形狀不能夠出現(xiàn)。那么,這個(gè)信源是一個(gè)確知信源,其熵為零。(2.3)3.信息熵的根本性質(zhì)(4)非負(fù)性即。由于隨機(jī)變量的一切取值的概率分布為,當(dāng)取對(duì)數(shù)的底大于1時(shí),,而,那么得到的熵是正值,只需當(dāng)隨機(jī)變量是一確知量時(shí),熵才等于零。這種非負(fù)性對(duì)于離散信源的熵來(lái)說(shuō),這一性質(zhì)并不存在。3.信息熵的根本性質(zhì)(5)可加性獨(dú)立信源和的結(jié)合信源的熵等于它們各自的熵之和。假設(shè)有兩個(gè)隨機(jī)變量和,它們彼此是統(tǒng)計(jì)獨(dú)立的,即的概率分布為,而的分布概率為,那么結(jié)合信源的熵:
可加性是熵函數(shù)的一個(gè)重要特性,正由于有可加性,所以可以證明熵函數(shù)的方式是獨(dú)一的。3.信息熵的根本性質(zhì)(6)極值性信源各個(gè)形狀為零概率分布時(shí),熵值最大,并且等于信源輸出形狀數(shù),由于當(dāng)時(shí),
(2.5)例題例,信源有兩種形狀時(shí),概率空間其與關(guān)系如下圖,,當(dāng)=1/2時(shí)熵有最大值;當(dāng)信源輸出是確定的,即,那么,此時(shí)闡明該信源不提供任何信息;反之,當(dāng)信源輸出為等概率發(fā)生時(shí),即時(shí)信源的熵到達(dá)最大值,等于1bit信息量。信息熵函數(shù)曲線P(x)00.51明文H(x)4.信息熵在信息加密編碼中的作用(1)經(jīng)過(guò)熵和信息量的概念,可計(jì)算加密系統(tǒng)中各部分的熵。令明文熵為,密鑰熵,密文熵。這里M、K和C分別是明文、密鑰和密文空間,m、k、c分別是它們的字母集,l,r和v分別是明文、密鑰、和密文的長(zhǎng)度。那么明文和密文之間的互信息以及密鑰與密文之間的互信息分別是:(2.6)(2.7)4.信息熵在信息加密編碼中的作用(2)由于只需密文、密鑰確定后,明文也就得到了,所以,故定理:對(duì)恣意加密系統(tǒng)從該實(shí)際我們可以看出,密鑰熵越大,密文中所包含的明文信息量就越小。一個(gè)加密系統(tǒng)中,假設(shè)其密文與明文之間的互信息,那么密碼分析者無(wú)論截獲多大的密文,均不能得到有關(guān)明文的任何信息。這種加密系統(tǒng)稱為完善加密系統(tǒng),或無(wú)條件加密系統(tǒng)。(2.8)4.信息熵在信息加密編碼中的作用(3)在對(duì)密文攻擊下,完善加密系統(tǒng)是平安的,但它不能保證在知明文或選擇性明文攻擊下也是平安的。因此,完善嚴(yán)密系統(tǒng)存在的必要條件是證明:假設(shè),那么由前一個(gè)定理可得,,所以的必要條件是(2.9)2.1.2數(shù)論根本術(shù)語(yǔ)數(shù)論是研討整數(shù)性質(zhì)的一個(gè)數(shù)學(xué)分支,同時(shí)也是加密技術(shù)的根底學(xué)科之一。首先引見(jiàn)一些數(shù)論的根本知識(shí).1.整數(shù)定義:設(shè)。假設(shè)存在使得,那么就說(shuō)b可以被a整除,記為,且稱b是a的倍數(shù),a是b的因數(shù)(或稱約數(shù)、除數(shù)、因子)。b不能被a整除可以記作dFa。由定義及乘法運(yùn)算的性質(zhì),可推出整除關(guān)系具有以下性質(zhì)〔注:符號(hào)本身包含了條件〕:〔1〕;〔2〕假設(shè)且,那么;〔3〕設(shè),那么與等價(jià);〔4〕假設(shè)且,那么對(duì)一切的,有;〔5〕設(shè),假設(shè),那么;2.素?cái)?shù)定義:設(shè)整數(shù)。假設(shè)它除了顯然因數(shù)外沒(méi)有其他的因數(shù),那么p就稱為是素?cái)?shù),也叫不可約數(shù)。假設(shè),且a不是素?cái)?shù),那么a稱為合數(shù)。關(guān)于素?cái)?shù),有以下性質(zhì):〔1〕假設(shè)p是素?cái)?shù),且,那么或,即p至少整除a與b中的一個(gè)。〔2〕任何一個(gè)整數(shù),均可以分解成素?cái)?shù)冪之積:〔3〕假設(shè)不計(jì)因數(shù)的順序,這個(gè)分解式是獨(dú)一的。其中,是兩兩互不一樣的素?cái)?shù),是正整數(shù)。〔4〕素?cái)?shù)有無(wú)窮多個(gè)?!?〕設(shè)表示不大于的素?cái)?shù)的數(shù)目,那么。3.同余設(shè),假設(shè),那么稱a和b模n同余,記為,整數(shù)n稱為模數(shù)。由于等價(jià)于,所以與等價(jià)。因此,普通我們總假定。假設(shè),我們稱b是a對(duì)模n的最小非負(fù)剩余,有時(shí)也稱b為a對(duì)模n的余數(shù)。同余式的一些根本性質(zhì)〔1〕反身性:;〔2〕對(duì)稱性:假設(shè),那么;〔3〕傳送性:假設(shè),,那么;〔4〕假設(shè),那么;?!?〕假設(shè),,gcd,(兩個(gè)不同時(shí)為0的整數(shù)a與b的最大公約數(shù)表示成gcd(a,b))那么,存在,當(dāng)且僅當(dāng)gcd。一些關(guān)于同余的根本概念(1)同余類(lèi)可用其中任一元素a(經(jīng)常取)替代,記作。于是從中分別取一個(gè)數(shù)作為代表構(gòu)成一個(gè)集合,稱為模n的一個(gè)完全剩余系,記為,稱為模n的非負(fù)最小完全剩余系。
(2.11)一些關(guān)于同余的根本概念(2)在模n的完全剩余系中,去掉那些與n不互素的數(shù),剩下的部分稱為模n的簡(jiǎn)化剩余系;的簡(jiǎn)化剩余系記為,讀為模n的非負(fù)最小簡(jiǎn)化剩余系。顯然,中的元便是不超越n并與n互素的那些數(shù),它們的個(gè)數(shù)等于歐拉函數(shù)的值?!矚W拉函數(shù)的定義為:小于自然數(shù)N并與N互質(zhì)(除1以外無(wú)其它公因子)的自然數(shù)的個(gè)數(shù)用函數(shù)表示,稱為歐拉函數(shù)。歐拉函數(shù)的詳細(xì)性質(zhì)會(huì)在后面第6小節(jié)進(jìn)展論述〕4.模運(yùn)算給定正整數(shù)n,對(duì)恣意a,假設(shè)存在q,使得那么稱r是a關(guān)于模n的余數(shù),記為。假設(shè)那么稱整數(shù)a,b同余,記為整數(shù)集中一切與數(shù)a同余的整數(shù)集合稱為a的同余類(lèi),記為。模運(yùn)算的性質(zhì)〔1〕當(dāng)且僅當(dāng)?!?〕當(dāng)且僅當(dāng)?!?〕假設(shè),,那么。a模n的運(yùn)算給出了a對(duì)模n的余數(shù)。留意:模運(yùn)算的結(jié)果是從0到的一個(gè)整數(shù)。模運(yùn)算就像普通的運(yùn)算一樣,它是可交換,可結(jié)合,可分配的。而且,對(duì)每一個(gè)中間結(jié)果進(jìn)展模m運(yùn)算,其作用與先進(jìn)展全部運(yùn)算,然后再進(jìn)展模m運(yùn)算所得到結(jié)果是一樣的。5.最大公約數(shù)與最小公倍數(shù)設(shè),是兩個(gè)整數(shù),假設(shè)且,那么就稱b是和的公約數(shù).普通的,設(shè),是K個(gè)整數(shù),假設(shè)那么就稱b是的公約數(shù)。由于對(duì)于恣意一個(gè)不等于零的整數(shù),它的因數(shù)是有限的。所以,恣意一對(duì)整數(shù),其中一個(gè)不為零時(shí),它們的公約數(shù)的個(gè)數(shù)也必定是有限的;同理,當(dāng)中有一個(gè)不為零時(shí),它們的公約數(shù)是有限的.這樣,我們引入最大公約數(shù)的概念。定義:設(shè),是兩個(gè)整數(shù),我們把和的公約數(shù)中最大的數(shù)稱為和的最大公約數(shù),記為(,)或當(dāng)時(shí),我們稱和是互素的。顯然最大公約數(shù)的性質(zhì)〔1〕〔2〕假設(shè)|,j=2,…,k,那么〔3〕恣意的整數(shù)x,有〔4〕對(duì)恣意的整數(shù)x,有〔5〕設(shè),是不都為零的整數(shù),那么一定存在一對(duì)整數(shù),,使得:最小公倍數(shù)的概念設(shè),是兩個(gè)均不等于零的整數(shù),假設(shè)且,那么1就稱為是和的公倍數(shù),普通地,設(shè)是k個(gè)均不等于零的整數(shù)。假設(shè),那么稱l是的公倍數(shù)。公倍數(shù)的集合是無(wú)窮集合,但根據(jù)自然數(shù)的實(shí)際,存在最小的正的公倍數(shù)。我們把和的正的公倍數(shù)中最小的數(shù)稱為和的最小公倍數(shù),記為或6.歐拉〔Euler〕函數(shù)歐拉〔Euler〕函數(shù)設(shè)n≥1,歐拉函數(shù)表示在區(qū)間中與n互素的整數(shù)的個(gè)數(shù)。歐拉函數(shù)具有以下性質(zhì):(1)假設(shè)p是素?cái)?shù),那么;(2)假設(shè)p是素?cái)?shù),。那么;(3)對(duì)于整數(shù),根據(jù)算術(shù)根本定理,n可以分解成獨(dú)一的形如的分解式,那么(4)假設(shè)和互素,那么。2.1.3算法復(fù)雜性根底知識(shí)所謂問(wèn)題,是指一個(gè)要求給出解釋的普通性提問(wèn),通常含有假設(shè)干個(gè)未定參數(shù)或自在變量。它由兩個(gè)要素組成,第一個(gè)要素是描畫(huà)一切的參數(shù),也就是對(duì)一切未定參數(shù)的普通性描畫(huà);第二個(gè)要素是解答必需滿足的性質(zhì)。一個(gè)問(wèn)題可以看成是由無(wú)窮多個(gè)問(wèn)題實(shí)例組成的一個(gè)類(lèi)。1.算法的定義所謂算法是由明確指出操作的規(guī)那么所組成的假設(shè)干語(yǔ)句的集合,只需按照規(guī)那么一步一步執(zhí)行一定數(shù)目的語(yǔ)句,便可求出問(wèn)題的答案。通常的計(jì)算機(jī)程序都可以看作是算法的表達(dá)方式,在問(wèn)題的兩要素中,對(duì)算法而言,第一個(gè)要素就是“輸入〞,第二個(gè)要素就是“輸出〞。假設(shè)把問(wèn)題P的恣意一個(gè)實(shí)例作為算法A的輸入,A在有限步驟之內(nèi)總能輸出關(guān)于此實(shí)例的正確答案,我們就說(shuō)算法A可解問(wèn)題P。對(duì)于一個(gè)問(wèn)題P,假設(shè)存在一個(gè)算法A可解問(wèn)題P,我們稱問(wèn)題P是算法可解的。2.算法復(fù)雜性算法的復(fù)雜性表征了算法在實(shí)踐執(zhí)行時(shí)所需計(jì)算才干方面的信息,通常它由該算法所要求的最大時(shí)間與存取空間來(lái)確定。由于算法所需的時(shí)間和空間往往取決于問(wèn)題實(shí)例的規(guī)模n(n表示了該實(shí)例的輸入數(shù)據(jù)長(zhǎng)度),同時(shí),算法在用于一樣規(guī)模n的不同實(shí)例時(shí)。其時(shí)間和空間需求也能夠會(huì)有很大差別,因此,實(shí)踐中我們經(jīng)常研討的是算法關(guān)于輸入規(guī)模的一切實(shí)例的時(shí)間與空間需求的平均值。算法復(fù)雜性的構(gòu)成通常情況下,一個(gè)算法的計(jì)算復(fù)雜性由兩個(gè)變量度量:時(shí)間復(fù)雜性和空間復(fù)雜性。它們定義如下:〔1〕時(shí)間復(fù)雜性:以某特定的根本步驟為單元,完成計(jì)算過(guò)程所需的總單元數(shù)稱為算法的時(shí)間復(fù)雜性,或時(shí)間復(fù)雜度。n為輸入的規(guī)模或尺寸?!?〕空間復(fù)雜性:以某特定的根本存儲(chǔ)空間為單元,完成計(jì)算過(guò)程所用的存儲(chǔ)單元數(shù),稱為算法的空間復(fù)雜性或空間復(fù)雜度。n是輸入的規(guī)模或尺寸。算法復(fù)雜性的根本符號(hào)〔1〕一個(gè)算法的計(jì)算復(fù)雜性用“O〞符號(hào)表示其數(shù)量級(jí)?!癘〞的意思是:對(duì)于兩個(gè)恣意的實(shí)值函數(shù)f和g,假設(shè)記號(hào),那么存在有一個(gè)值a,對(duì)充分大的n,有。計(jì)算復(fù)雜性的數(shù)量級(jí)就是這種類(lèi)型的函數(shù),即當(dāng)n變大時(shí)增長(zhǎng)得最快的函數(shù),一切常數(shù)和較低階方式的函數(shù)可以忽略不計(jì)。算法復(fù)雜性的根本符號(hào)〔2〕另一個(gè)符號(hào)是“o〞。它的定義是:當(dāng)且僅當(dāng),這意味著在時(shí),比可以忽略不計(jì)。時(shí)間復(fù)雜度有時(shí)也用任務(wù)因子W表示,這時(shí)。假設(shè)一個(gè)算法的復(fù)雜性不依賴于n,那么它是常數(shù)級(jí)的用表示之,而表示復(fù)雜性隨n線性增長(zhǎng),因此是線性型算法。復(fù)雜性隨n線性增長(zhǎng)的其他一些算法也稱為二次方或三次方等,一切這些算法都是多項(xiàng)式的,它們的時(shí)間復(fù)雜性是。有多項(xiàng)式時(shí)間復(fù)雜性的算法稱為多項(xiàng)式時(shí)間算法或有效算法。3.問(wèn)題的復(fù)雜性問(wèn)題的復(fù)雜性是問(wèn)題固有的性質(zhì)。問(wèn)題的復(fù)雜性實(shí)際利用算法復(fù)雜性作為工具,將大量典型的問(wèn)題按照求解的代價(jià)進(jìn)展分類(lèi)。問(wèn)題的復(fù)雜性由在圖靈機(jī)上解其最難實(shí)例所需的最小時(shí)間與空間決議,還可以了解為由解該問(wèn)題的最有效的算法所需的時(shí)間與空間來(lái)度量。NP問(wèn)題在確定型圖靈機(jī)上可用多項(xiàng)式時(shí)間求解的問(wèn)題,稱為易處置的問(wèn)題。易處置的問(wèn)題的全體稱為確定性多項(xiàng)式時(shí)間可解類(lèi),記為P類(lèi)。在非確定性圖靈機(jī)上可用多項(xiàng)式時(shí)間求解的問(wèn)題,稱為非確定性多項(xiàng)式時(shí)間可解問(wèn)題,記為NP問(wèn)題。NP問(wèn)題的全體稱為非確定性多項(xiàng)式時(shí)間可解類(lèi),記為NP類(lèi)。顯然,,由于在確定型圖靈機(jī)上多項(xiàng)式時(shí)間可解的任何問(wèn)題在非確定型圖靈機(jī)上也是多項(xiàng)式時(shí)間可解的。NPC問(wèn)題NP類(lèi)中還有一類(lèi)問(wèn)題稱為NP完全類(lèi),記為NPC。一切的NP問(wèn)題都可以經(jīng)過(guò)多項(xiàng)式時(shí)間轉(zhuǎn)換為NPC中的問(wèn)題。NPC是NP類(lèi)中困難程度最大的一類(lèi)問(wèn)題,但NPC中的問(wèn)題困難程度相當(dāng),都可以多項(xiàng)式時(shí)間轉(zhuǎn)化為稱為可滿足性問(wèn)題的NPC問(wèn)題,此類(lèi)NPC具有如下性質(zhì),假設(shè)其中的任何一個(gè)問(wèn)題屬于P,那么一切的NP問(wèn)題都屬于P,且。如今的密碼算法的平安性都是基于NPC問(wèn)題的,破譯一個(gè)密碼相當(dāng)于求解一個(gè)NPC問(wèn)題,假設(shè),那么破譯密碼就是一件很容易的事情.2.2信息加密方式與規(guī)范經(jīng)典的信息加密實(shí)際主要用于通訊嚴(yán)密,而現(xiàn)代信息加密技術(shù)的運(yùn)用已深化到信息平安的各個(gè)環(huán)節(jié)和對(duì)象,信息的加密方式和規(guī)范也有了深化廣泛的開(kāi)展,特別是現(xiàn)代加密和信息隱藏技術(shù)的結(jié)合,實(shí)現(xiàn)信息隱蔽傳輸使人類(lèi)對(duì)信息的加密技術(shù)有了新的認(rèn)識(shí)和要求,下面引見(jiàn)信息加密技術(shù)的根本概念、方式和規(guī)范。2.2.1信息加密根本概念〔1〕研討平安信息的加密技術(shù)和研討破解平安信息密碼的密碼分析技術(shù)的學(xué)科稱為密碼學(xué)。信息加密是經(jīng)過(guò)運(yùn)用一種編碼而使某些可讀的信息(明文)變?yōu)椴豢勺x的信息(密文)。這些編碼就是將明文變成密文的加密算法(也稱為密碼)或數(shù)學(xué)方法。密碼運(yùn)用隱蔽言語(yǔ)、文字、圖象的特種符號(hào),目的是接納數(shù)據(jù)作為輸入,產(chǎn)生密文作為輸出,以便數(shù)據(jù)的原始意義得以隱藏。在計(jì)算機(jī)通訊中,采用密碼〔密鑰為參數(shù)〕將信息隱蔽起來(lái),再將隱蔽后的信息傳輸出去,使信息在傳輸過(guò)程中即使被竊取或載獲,也不能了解信息的內(nèi)容,從而保證信息傳輸?shù)钠桨病?.2.1信息加密根本概念〔2〕通訊兩端將信息編碼時(shí),發(fā)送端運(yùn)用簡(jiǎn)單的信息加密;接納端收到傳來(lái)的信息后經(jīng)過(guò)解密看到編碼前的信息,整個(gè)過(guò)程中加密或解密是由密鑰控制實(shí)現(xiàn)的。密鑰是用戶按照一種密碼體制隨機(jī)選取,它通常是一隨機(jī)字符串,是控制明文變換〔加密〕和密文變換〔解密〕的獨(dú)一參數(shù)。密鑰全體稱為密鑰空間。普通來(lái)說(shuō),密鑰越大,加密就越強(qiáng)壯。加密系統(tǒng)的組成部分如上所述,一個(gè)加密系統(tǒng)實(shí)踐上是某種加密算法在密鑰控制下實(shí)現(xiàn)的從明文到密文的映射,它至少包括下面四個(gè)組成部分:〔1〕加密的報(bào)文,也稱明文;〔2〕加密后的報(bào)文,也稱密文;〔3〕加密解密設(shè)備或算法;〔4〕加密解密的密鑰;普通情況下,密鑰由K表示,明文由m表示,加密算法由()表示,解密算法由()表示,;那么,((m))=m加密系統(tǒng)表示圖一個(gè)完好的加密系統(tǒng)如以下圖所示:信源加密解密信宿密文明文竊聽(tīng)干擾明文密鑰K1密鑰K2圖2.2加密系統(tǒng)表示圖加密系統(tǒng)的平安規(guī)那么〔1〕任何一個(gè)加密系統(tǒng)必需根本具備四個(gè)平安規(guī)那么:〔1〕性(confidentiality):加密系統(tǒng)在信息的傳送中提供一個(gè)或一系列密鑰來(lái)把信息經(jīng)過(guò)密碼運(yùn)算譯成密文,使信息不會(huì)被非預(yù)期的人員所讀取,只需發(fā)送者和接納者應(yīng)該知曉此信息的內(nèi)容。加密系統(tǒng)的平安規(guī)那么〔2〕〔2〕完好性(integrity):數(shù)據(jù)在傳送過(guò)程中不應(yīng)被破壞,收到的信宿數(shù)據(jù)與信源數(shù)據(jù)是一致的。應(yīng)該選取強(qiáng)壯的密碼和加密密鑰,以確保入侵者無(wú)法攻破密鑰或找出一個(gè)一樣的加密算法,阻止入侵者會(huì)改動(dòng)數(shù)據(jù)后對(duì)其重新加密。有時(shí),數(shù)據(jù)完好性可以經(jīng)過(guò)適當(dāng)?shù)姆椒ㄔ谛畔⑦€未被完全修正時(shí)檢測(cè)到,如:密碼散列函數(shù)是單向密碼,它為明文產(chǎn)生獨(dú)一的“指紋〞,當(dāng)明文被攔截和讀取,要修正它將改動(dòng)散列,致使有意向的接納者很容易看出散列之間的差別。加密系統(tǒng)的平安規(guī)那么〔3〕〔3〕認(rèn)證性(authentication):加密系統(tǒng)應(yīng)該提供數(shù)字簽名技術(shù)來(lái)使接納信息用戶驗(yàn)證是誰(shuí)發(fā)送的信息,確定信息能否被第三者篡改。只需密鑰還未泄露或與他人共享,發(fā)送者就不能否認(rèn)他發(fā)送的數(shù)據(jù)。實(shí)踐運(yùn)用中,假設(shè)發(fā)送者和接納者都運(yùn)用一個(gè)對(duì)稱密鑰,對(duì)于整體信息加密或計(jì)算機(jī)網(wǎng)絡(luò)上的鏈路級(jí)加密,在兩個(gè)路由器之間建立一個(gè)加密會(huì)話,以經(jīng)過(guò)因特網(wǎng)發(fā)送加密信息。銜接到網(wǎng)絡(luò)的計(jì)算機(jī)發(fā)送明文給路由器,明文被轉(zhuǎn)換為密文,然后經(jīng)過(guò)因特網(wǎng)發(fā)送到另一端的路由器。在整個(gè)加密數(shù)據(jù)構(gòu)成和傳送過(guò)程中,加密方網(wǎng)絡(luò)內(nèi)部和非加密方的任一節(jié)點(diǎn)都能插入信息,并在這一層次分析,但對(duì)于接納者這一節(jié)點(diǎn)來(lái)說(shuō)他只能斷定信息能否來(lái)自某個(gè)特定的網(wǎng)絡(luò),而要確認(rèn)信息的發(fā)送節(jié)點(diǎn),這將使驗(yàn)證機(jī)制變得很復(fù)雜。加密系統(tǒng)的平安規(guī)那么〔4〕〔4〕非否認(rèn)(non-repudiation):加密系統(tǒng)除了應(yīng)該驗(yàn)證是誰(shuí)發(fā)送的信息外,還要進(jìn)一步驗(yàn)證收到的信息能否來(lái)自可信的源端,實(shí)踐上是經(jīng)過(guò)必要的認(rèn)證確認(rèn)信息發(fā)送者能否可信?,F(xiàn)代強(qiáng)壯的驗(yàn)證方法用加密算法來(lái)比較一些知的信息段,如PIN(個(gè)人識(shí)別號(hào))判別源端能否可信。非否認(rèn)規(guī)那么應(yīng)屬于認(rèn)證性規(guī)那么中的一部分。普通來(lái)說(shuō),前三個(gè)規(guī)那么一同被稱為CIA。從技術(shù)的角度來(lái)看,一切的加密都提供了私有性和完好性,其他的均由此衍生,這包括非否認(rèn)和認(rèn)證性規(guī)那么。2.2.2信息加密方式
1.信息加密方式分類(lèi)對(duì)存儲(chǔ)的文件和網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)包實(shí)施信息加密,其加密方式可以根據(jù)加密系統(tǒng)不同的特征劃分:〔1〕按密鑰方式劃分對(duì)稱式加密:收發(fā)雙方運(yùn)用一樣密鑰。加密和解密運(yùn)用同一密鑰。加密算法和解密算法在對(duì)稱式加密中是一樣的,加密和解密運(yùn)用同一密鑰K表示。非對(duì)稱式加密:也稱公用密鑰加密,加密和解密運(yùn)用不同密鑰。它通常有兩個(gè)密鑰,稱為“公鑰〞和“私鑰〞。它們兩個(gè)必需配對(duì)運(yùn)用,否那么不能翻開(kāi)加密文件。這里的“公鑰〞是指可以對(duì)外公布的,“私鑰〞那么不對(duì)外公布,只需持有人知道。加密算法和解密算法在非對(duì)稱式加密中是不一樣的;K1是加密密鑰,是公開(kāi)的,稱為公鑰,K2是解密密鑰,稱為私鑰,那么須嚴(yán)密。2種不同方式的加密表示圖
明文解密密鑰K2明文加密密鑰K2KK密文傳輸圖2.2對(duì)稱式加密表示圖明文解密密鑰K2K1K2加密密鑰K2明文圖2.3非對(duì)稱式加密表示圖1.信息加密方式分類(lèi)〔2〕按嚴(yán)密程度劃分實(shí)際上嚴(yán)密的加密:無(wú)論獲取多少密文和有多大的計(jì)算才干,對(duì)于明文一直不能得到獨(dú)一解的加密方法。如:采用客觀隨機(jī)一次出來(lái)的密碼就屬于這種加密方式。實(shí)踐上嚴(yán)密的加密:從實(shí)際的角度是可以破解的,但在現(xiàn)有客觀條件下,無(wú)法經(jīng)過(guò)計(jì)算來(lái)確定獨(dú)一解。〔3〕按明文形狀劃分模擬信息加密:用來(lái)加密模擬信息。如:動(dòng)態(tài)范圍之內(nèi),延續(xù)變化的語(yǔ)音信號(hào)的加密。數(shù)字信息加密:用來(lái)加密數(shù)字信息。如:兩個(gè)離散電平構(gòu)成0、1二進(jìn)制關(guān)系的電報(bào)信息的加密。2.數(shù)字簽名數(shù)字簽名是對(duì)原信息附上加密信息的過(guò)程,是一種身份認(rèn)證技術(shù),支持加密系統(tǒng)認(rèn)證性和非否認(rèn);簽名者對(duì)發(fā)布的原信息的內(nèi)容擔(dān)任,不可否認(rèn)。數(shù)字簽名采用非對(duì)稱式加密〔也稱公鑰加密規(guī)范〕對(duì)信息m運(yùn)用私鑰K2加密,運(yùn)算如下:S=DK2(m)其中S為簽名,D為解密算法;接納者收到發(fā)送者發(fā)來(lái)的S和m信息,同時(shí)從公開(kāi)媒體找到了發(fā)送者的公鑰K1,發(fā)送者用K2對(duì)S進(jìn)展如下運(yùn)算:EK1(S)=EK1(DK2(m))=m,E為加密算法;收到的m對(duì)應(yīng)計(jì)算出來(lái)的m,結(jié)果闡明信息確實(shí)來(lái)源于發(fā)送者,第三方不能夠知道私鑰K2,無(wú)法篡改S,發(fā)送者無(wú)法否認(rèn)發(fā)送m信息。在實(shí)踐任務(wù)中,由于解密計(jì)算緩慢,為了提高簽名速度,m信息往往要經(jīng)過(guò)緊縮或散列處置或盡量取簡(jiǎn)短信息,如公鑰數(shù)據(jù)等。數(shù)字簽名任務(wù)流程圖
信息m密鑰K2私鑰K2公鑰K1信息m密鑰K2解密算法密鑰K2簽名S密鑰K2簽名S密鑰K2加密算法密鑰K2圖2.4數(shù)字簽名任務(wù)流程圖3.網(wǎng)絡(luò)信息加密
網(wǎng)絡(luò)信息加密的目的是維護(hù)網(wǎng)內(nèi)的數(shù)據(jù)、文件、口令和控制信息,維護(hù)網(wǎng)上傳輸?shù)臄?shù)據(jù)。網(wǎng)絡(luò)加密常用的方式有鏈路加密和端點(diǎn)加密?!?〕鏈路加密鏈路加密對(duì)鏈路層數(shù)據(jù)單元進(jìn)展加密維護(hù),其目的是維護(hù)網(wǎng)絡(luò)節(jié)點(diǎn)之間的鏈路信息平安。這種加密不但對(duì)節(jié)點(diǎn)之間之間傳輸?shù)臄?shù)據(jù)報(bào)文加密,還要把路由信息、校驗(yàn)和控制信息包括數(shù)據(jù)鏈路層的幀頭、位填充和控制序列等都進(jìn)展加密;當(dāng)密文傳輸?shù)侥骋还?jié)點(diǎn)時(shí),全部解密獲得鏈信息和明文,然后全部加密后發(fā)送往下一個(gè)節(jié)點(diǎn);對(duì)于這種加密,加密設(shè)備的設(shè)計(jì)相對(duì)復(fù)雜,必需了解鏈路層協(xié)議和必要的協(xié)議轉(zhuǎn)換。鏈路加密的優(yōu)缺陷鏈路加密非常有效,是由于幾乎任何有用音訊都被加密維護(hù)。加密范圍包括用戶數(shù)據(jù)、路由信息和協(xié)議信息等。因此,攻擊者將不知道通訊的發(fā)送和接受者的身份、不知道信息的內(nèi)容、甚至不知道信息的長(zhǎng)度以及通訊繼續(xù)的時(shí)間。而且,系統(tǒng)的平安性將不依賴任何傳輸管理技術(shù)。密鑰管理也相對(duì)簡(jiǎn)單,僅僅是線路的兩端需求共同的密鑰。線路兩端可以獨(dú)立于網(wǎng)絡(luò)的其他部分改換密鑰。鏈路加密的缺陷是:整個(gè)銜接中的每段銜接都需求加密維護(hù)。對(duì)于包含不同體系機(jī)構(gòu)子網(wǎng)絡(luò)的較大型網(wǎng)絡(luò),加密設(shè)備、戰(zhàn)略管理、密鑰量等方面的開(kāi)銷(xiāo)都是宏大的。另外,在每個(gè)加密節(jié)點(diǎn),都存在加密的空白段:明文信息,這是及其危險(xiǎn)的,特別是對(duì)于跨越不同平安域的網(wǎng)絡(luò)。后來(lái),為處理節(jié)點(diǎn)中數(shù)據(jù)是明文的缺陷,在節(jié)點(diǎn)內(nèi)添加了加解安裝,防止了節(jié)點(diǎn)明文,這種加密方式稱為節(jié)點(diǎn)加密;但和鏈-鏈加密一樣,同樣依托公共網(wǎng)絡(luò)節(jié)點(diǎn)資源的配合,開(kāi)銷(xiāo)依然很大。端點(diǎn)加密端點(diǎn)加密的是對(duì)源端用戶到目的端用戶的數(shù)據(jù)提供加密維護(hù)。既將加密模塊置于網(wǎng)絡(luò)以上的加密方式。端點(diǎn)加密中,數(shù)據(jù)從加密的端節(jié)點(diǎn),不斷到對(duì)應(yīng)的解密節(jié)點(diǎn),數(shù)據(jù)在整個(gè)傳輸過(guò)程中都堅(jiān)持密文方式,從而抑制了鏈路加密出現(xiàn)加密空白段〔中間節(jié)點(diǎn)明文信息〕的問(wèn)題。由于加密和解密只發(fā)生在兩個(gè)端節(jié)點(diǎn),因此對(duì)中間節(jié)點(diǎn)是透明的。這樣大大減少了安裝設(shè)備的開(kāi)銷(xiāo)〔特別是中間節(jié)點(diǎn)設(shè)備開(kāi)銷(xiāo)〕,以及復(fù)雜的戰(zhàn)略管理和密鑰管理所引起的費(fèi)事。由于加密范圍往往集中在高層協(xié)議數(shù)據(jù),還極易為不同流量提供QoS效力,實(shí)現(xiàn)按特定流量進(jìn)展加密和不同強(qiáng)度的加密。從而有利于提高系統(tǒng)的效能,優(yōu)化系統(tǒng)的性能。端點(diǎn)加密的缺陷端點(diǎn)加密的缺陷是:由于通訊環(huán)境往往比較復(fù)雜,要在跨越網(wǎng)絡(luò)的兩個(gè)端用戶之間勝利地完成密鑰的建立是需求付出性能代價(jià)的。其次,端點(diǎn)加密不能維護(hù)數(shù)據(jù)傳輸過(guò)程中的某些信息,如路由信息、協(xié)議信息等,一個(gè)訓(xùn)練有素的攻擊者可以借助這些信息發(fā)動(dòng)某些流量分析攻擊。另外,端點(diǎn)加密設(shè)備〔模塊〕的實(shí)現(xiàn)非常復(fù)雜,要求設(shè)備必需了解效力的提供層的協(xié)議,并且勝利調(diào)用這些效力,然后在設(shè)備中對(duì)對(duì)應(yīng)的數(shù)據(jù)進(jìn)展密碼處置,并且將處置后的數(shù)據(jù)傳送給上層協(xié)議。假設(shè)加密設(shè)備不能為上層協(xié)議提供良好的效力接口,那么將對(duì)通訊的性能產(chǎn)生較大的影響。
2.2.3數(shù)據(jù)加密規(guī)范
1.對(duì)稱密鑰加密DESDES(dataencryptionstandard)是1976年由美國(guó)國(guó)家規(guī)范局公布的一種加密算法,屬于對(duì)稱密鑰加密算法體制,早期被公以為較好的加密算法,經(jīng)過(guò)長(zhǎng)期嚴(yán)驗(yàn)證后,被國(guó)際規(guī)范化組織接受作為國(guó)際規(guī)范。DES自它運(yùn)用20多年來(lái),不斷經(jīng)受了許多科學(xué)家破譯,同時(shí)也成為密碼界研討的重點(diǎn)。DES對(duì)稱密鑰加密算法廣泛的運(yùn)用在民用密碼領(lǐng)域,為全球貿(mào)易、金融等非官方部門(mén)提供了可靠的通訊平安保證。DES的相關(guān)知識(shí)DES主要采用交換和移位的加密方法用56位密鑰對(duì)64位二進(jìn)制數(shù)據(jù)塊進(jìn)展加密,加密每次可對(duì)64位的輸入數(shù)據(jù)進(jìn)展16輪編碼,經(jīng)過(guò)一系列交換和移位后,原始的64位輸入數(shù)據(jù)轉(zhuǎn)換成了完全不同的64位輸出數(shù)據(jù)。DES算法運(yùn)算速度快,生成密鑰容易,適宜于在當(dāng)前大多數(shù)計(jì)算機(jī)上用軟件方法和公用芯片上實(shí)現(xiàn)。但DES密鑰太短〔56位〕,密鑰強(qiáng)壯性不夠好,降低嚴(yán)密強(qiáng)度;同時(shí),DES平安性完全依賴于對(duì)密鑰的維護(hù),在網(wǎng)絡(luò)環(huán)境下運(yùn)用,分發(fā)密鑰的信道必需具備有力的可靠性才干保證性和完好性。DES算法還有一些變形,如:三重DES和廣義DES等。目前,DES運(yùn)用領(lǐng)域主要包括:計(jì)算機(jī)網(wǎng)絡(luò)通訊中的數(shù)據(jù)維護(hù)〔只限于民用敏感信息〕;電子資金加密傳送;維護(hù)用戶存儲(chǔ)文件,防止了未授權(quán)用戶保密;計(jì)算機(jī)用戶識(shí)別等。2.Clipper加密芯片規(guī)范這種數(shù)據(jù)加密規(guī)范對(duì)用戶只提供加密芯片〔Clipper〕和硬件設(shè)備,它的密碼算法不公開(kāi),密鑰量比DES多1000多萬(wàn)倍,是美國(guó)國(guó)家嚴(yán)密局〔NSA〕在1993年正式運(yùn)用的新的商用數(shù)據(jù)加密規(guī)范,目的是取代DES,提高密碼算法的平安性,主要用于通訊交換系統(tǒng)中、和計(jì)算機(jī)通訊信息的平安維護(hù)。為確保更可靠的平安性,加密設(shè)備的制造方法按照Clipper芯片由一個(gè)公司制造裸片,再由另一公司編程嚴(yán)厲規(guī)定來(lái)實(shí)施。Clipper芯片主要特點(diǎn)是充分利用高的運(yùn)算才干的設(shè)備資源加大密鑰量,從而用于計(jì)算機(jī)通訊網(wǎng)上的信息加密,如:政府和軍事通訊網(wǎng)中數(shù)據(jù)加密芯片的研討不斷換代使它還實(shí)現(xiàn)了數(shù)字簽名規(guī)范和嚴(yán)密的哈希函數(shù)規(guī)范以及用純?cè)肼曉串a(chǎn)生隨機(jī)數(shù)據(jù)的算法等。3.國(guó)際數(shù)據(jù)加密規(guī)范這種算法是在DES算法的根底上開(kāi)展的。與DES一樣,國(guó)際數(shù)據(jù)加密算法IDEA〔internationaldataencryptionalgorithm〕也是針對(duì)數(shù)據(jù)塊加密;它采用128位密鑰,設(shè)計(jì)了一系列加密輪次,每輪加密都運(yùn)用從完好的加密密鑰中生成的一個(gè)子密鑰,基于這種算法,采用軟件實(shí)現(xiàn)和采用硬件實(shí)現(xiàn)同樣快速,非常適宜于對(duì)大量的明文信息的快速加密。它在1990年正式公布并在以后得到了加強(qiáng)。傳統(tǒng)加密方法的缺陷在網(wǎng)絡(luò)通訊中,傳統(tǒng)的對(duì)稱加密方法是發(fā)送者加密、接納者解密運(yùn)用同樣的密鑰,這種方法雖然有運(yùn)算快的特點(diǎn),隨著用戶的添加,大量密鑰的分配是一個(gè)難以處理的問(wèn)題。例如,假設(shè)系統(tǒng)中有n個(gè)用戶,其中每?jī)蓚€(gè)用戶之間需求建立密碼通訊,那么系統(tǒng)中每個(gè)用戶須掌握(n-1)/2個(gè)密鑰,而系統(tǒng)中所需的密鑰總數(shù)為n*(n-1)/2個(gè)。對(duì)10個(gè)用戶,每個(gè)用戶必需有9個(gè)密鑰,系統(tǒng)中密鑰的總數(shù)為45個(gè)。對(duì)100個(gè)用戶,每個(gè)用戶必需有99個(gè)密鑰,系統(tǒng)中密鑰的總數(shù)為4950個(gè)。這還僅思索用戶之間的通訊只運(yùn)用一種會(huì)話密鑰的情況。如此龐大數(shù)量的密鑰生成、管理、分發(fā)確實(shí)是一個(gè)難處置的問(wèn)題。因此,對(duì)稱加密方法所帶來(lái)的密鑰的弱的強(qiáng)壯性和密鑰管理的復(fù)雜性局限了它的開(kāi)展。4.公開(kāi)密鑰加密規(guī)范早在20世紀(jì)70年代,美國(guó)斯坦福大學(xué)的兩名學(xué)者迪菲和赫爾曼提出了一種加密方法――公開(kāi)密鑰加密方法,處理了傳統(tǒng)加密體系的密匙分配復(fù)雜的缺陷。公開(kāi)密鑰加密方法是非對(duì)稱加密方式,該技術(shù)采用不同的加密密鑰和解密密鑰對(duì)信息加密和解密,每個(gè)用戶有一個(gè)對(duì)外公開(kāi)的加密算法E和對(duì)外嚴(yán)密的解密算法D,它們須滿足條件:〔1〕D是E的逆,即D[E〔X〕]=X。〔2〕E和D容易計(jì)算。〔3〕假設(shè)由E出發(fā)求解D非常困難。公鑰及私鑰的概念假設(shè)加密密鑰可對(duì)外公開(kāi),稱為公鑰;一個(gè)用戶向另一用戶傳送信息,首先經(jīng)過(guò)開(kāi)放途徑(如BBS)的獲得另一用戶的公開(kāi)密鑰,對(duì)明文加密后發(fā)送,而另一用戶獨(dú)一保管的解密密鑰是嚴(yán)密的,稱為私鑰,另一用戶經(jīng)過(guò)平安的方法驗(yàn)證信源可靠后,私鑰將密文復(fù)原、解密。實(shí)際上解密密鑰可由加密密鑰推算出來(lái),但這種算法設(shè)計(jì)在實(shí)踐上是不能夠的,或者雖然可以推算出,但要破費(fèi)很長(zhǎng)的時(shí)間和代價(jià),所以,將加密密鑰公開(kāi)不會(huì)危害密鑰的平安。RSA算法著名的RSA正是基于這種實(shí)際,算法以發(fā)明者的名字命名:RonRivest,AdiShamir和LeonardAdleman.這種算法為公用網(wǎng)絡(luò)上信息的加密和鑒別提供了一種根本的方法。為提高嚴(yán)密強(qiáng)度,RSA密鑰至少為500位長(zhǎng),普通引薦運(yùn)用1024位,這就使加密的計(jì)算量很大。同時(shí),為減少計(jì)算量,在傳送信息時(shí),常采用傳統(tǒng)對(duì)稱加密方法與RSA公開(kāi)密鑰加密方法相結(jié)合的方式,信息明文加密采用改良的DES或IDEA加密方法,運(yùn)用RSA用于加密密鑰和信息摘要。對(duì)方收到信息后,用各自相關(guān)的密鑰解密并可核對(duì)信息。但是RSA并不能替代DES等對(duì)稱算法,RSA的密鑰長(zhǎng),加密速度慢,而采用DES等對(duì)稱算法加密速度快,適宜加密較長(zhǎng)的報(bào)文,彌補(bǔ)了RSA的缺陷。美國(guó)的嚴(yán)密加強(qiáng)郵件系統(tǒng)〔PEM〕就是采用了RSA和DES結(jié)合的方法,目前已成為嚴(yán)密通訊規(guī)范。5.量子加密方法量子加密與公鑰加密規(guī)范同期出現(xiàn),適用于網(wǎng)絡(luò)上加密普通寬帶數(shù)據(jù)信道所傳送的信息,任務(wù)原理是兩端用戶各自產(chǎn)生一個(gè)私有的隨機(jī)數(shù)字符串,兩個(gè)用戶向?qū)Ψ降慕邮馨惭b發(fā)送代表數(shù)字字符串的單個(gè)量子序列〔光脈沖〕,接受安裝從兩個(gè)字符串中取出相匹配的比特值組成了密鑰。實(shí)現(xiàn)了會(huì)話或交換密鑰的傳送。由于這種方法依賴的是量子力學(xué)定律,傳輸?shù)墓饬孔邮菬o(wú)法被竊聽(tīng)的;假設(shè)有人進(jìn)展竊聽(tīng),就會(huì)對(duì)通訊系統(tǒng)呵斥干擾,對(duì)通訊系統(tǒng)的量子形狀呵斥不可挽回的變化,通訊雙方就會(huì)得知有人進(jìn)展竊聽(tīng),從而終了通訊,重新生成密鑰。這種加密技術(shù)不久的未來(lái)應(yīng)該有運(yùn)用和開(kāi)展,但是如何實(shí)現(xiàn)數(shù)字簽名有待于研討。2.3公鑰信息加密算法隨著密碼技術(shù)的開(kāi)展,Diffie和Hellman在IEEE提出提出了公鑰密碼系統(tǒng),即加密密鑰和解密密鑰不是同一把密鑰。如今公鑰密碼系統(tǒng)被廣泛的運(yùn)用,其中RSA加密算法,Diffie-Hellman算法,ElGamal加密算法,橢圓曲線加密算法被廣泛研討和運(yùn)用。2.3.1RSA加密算法RSA的平安性依賴于大數(shù)分解。公鑰及私鑰都是兩個(gè)大素?cái)?shù)〔大于100個(gè)十進(jìn)制位〕的函數(shù),從一個(gè)密鑰和密文推斷出明文的難度等同于分解兩個(gè)大素?cái)?shù)的積。算法如下:1.生成密鑰〔1〕的選取兩個(gè)大數(shù)p,q〔2〕計(jì)算,,這指的是Euler函數(shù)〔3〕選取整數(shù)e,滿足且。〔4〕計(jì)算d,滿足。即d是e關(guān)于模乘的逆元,〔乘法逆元:設(shè),假設(shè)存在,滿足,那么稱x是a的模n乘法逆元,記為(modn)〕由e的定義,d獨(dú)一?!?〕輸出公鑰,私鑰。詳細(xì)加密解密操作加密操作選定,把明文分生長(zhǎng)度為k的組塊。對(duì)每個(gè)明文分組M,M在0到(n-1)之間。加密操作為:
解密操作得到密文分組C,解密操作為:
(2.14)
(2.15)RSA算法的局限性〔1〕〔1〕有限的平安性RSA是一種分組密碼算法,它的平安是基于數(shù)論中大的整數(shù)n分解為兩個(gè)素?cái)?shù)之積的難解性。目前,RSA的一些變種算法已被證明等價(jià)于大數(shù)分解。同樣,分解n也是最顯然的攻擊方法。如今,人們已能分解140多個(gè)十進(jìn)制位的大素?cái)?shù)。因此,適用詳細(xì)情況而定,模數(shù)n必需選盡能夠大。同時(shí)要留意,假設(shè)系統(tǒng)中共享一個(gè)模數(shù),不同的人擁有不同的公鑰e1和e2,這些公鑰共模而且互質(zhì),假設(shè)普遍的情況是同一信息用不同的公鑰加密,那么該信息無(wú)需私鑰就可得到恢復(fù)。即設(shè)P為信息明文,C1和C2為密文,公共模數(shù)是n,那么:C1=P^e1modn;C2=P^e2modn密碼分析者知道n、e1、e2、C1和C2,就能得到P。處理方法只需一個(gè),那就是不要共享模數(shù)n。RSA算法的局限性〔2〕〔2〕運(yùn)算速度慢RSA算法進(jìn)展的都是大數(shù)計(jì)算,使得其最快的情況也比DES慢上100倍,無(wú)論是軟件實(shí)現(xiàn)還是硬件實(shí)現(xiàn)。速度不斷是RSA算法的缺陷。普通來(lái)說(shuō)RSA算法只用于少量數(shù)據(jù)加密。有一種提高RSA速度的建議是使公鑰e取較小的值,這樣會(huì)使加密變得易于實(shí)現(xiàn),速度有所提高。但這樣作是不平安的,公鑰e和私鑰d還是都取較大的值為好。但是,RSA算法是第一個(gè)能同時(shí)用于加密和數(shù)字簽名的算法,也易于了解和操作。閱歷了各種攻擊的考驗(yàn)和最廣泛的研討,從提出到如今已近二十年,逐漸為人們以為是目前最適用的公鑰算法之一。2.3.2Diffie-Hellman算法Diffie和Hellman在1976年公開(kāi)發(fā)表的第一個(gè)公鑰密碼算法定義了公鑰密碼學(xué)。論文中提出一個(gè)密鑰交換系統(tǒng),讓網(wǎng)絡(luò)互不相見(jiàn)的兩個(gè)通訊體,可以共享一把鑰匙,用以證明公開(kāi)密鑰的概念的可行性。這個(gè)算法本身基于計(jì)算對(duì)數(shù)難度,其目的是實(shí)現(xiàn)兩個(gè)用戶之間平安地交換密鑰以便于后續(xù)的數(shù)據(jù)加密。Diffie-Hellman密鑰交換算法在如今的許多商用產(chǎn)品中運(yùn)用。Diffie-Hellman算法描畫(huà)算法描畫(huà)如下:給定公開(kāi)素?cái)?shù)q和q的本原根r。即r∈{1,2,3,4,…(q-1)},且{1,2,3,4,…(q-1)}={modq,modq,modq,…modq}那么對(duì)b∈{1,2,3,4,…(q-1)},可以獨(dú)一的指數(shù)i,使得b=modq。用戶A,B交換密鑰的方法如下:〔1〕用戶A選擇一個(gè)隨機(jī)數(shù),計(jì)算,A將保管而將公開(kāi)?!?〕用戶B選擇一個(gè)隨機(jī)數(shù),計(jì)算,B將保管而將公開(kāi)。〔3〕A將送給B,B將送給A,〔A并不知道,B并不知道〕〔4〕用戶A計(jì)算密鑰:;〔5〕用戶B計(jì)算密鑰:;2.3.3ElGamal加密算法EIGamal體制是T.EIGamal在1985年發(fā)表的“Apublic-keycryptosystemandasignaturesschemebasedondiscretelogarithms〞(一個(gè)基于離散對(duì)數(shù)的共鑰密碼體制和數(shù)學(xué)簽名方案)論文中提出的公開(kāi)密匙密碼體制。下面給出的EIGamal體制在論文中用于數(shù)據(jù)加密的算法。采用EIGamal公開(kāi)密匙密碼體制的密碼系統(tǒng)中,一切的用戶都共享一個(gè)素?cái)?shù)P以及一個(gè)Z的生成元g,明文空間P=Z,密文空間,選定0<a<p,計(jì)算密鑰:a公開(kāi)密鑰:bElGamal加密解密算法加密算法:設(shè)明文為m,0≤m<p,隨機(jī)的選取正整數(shù)k,0≤k<p,gcd(k,p-1)=1,計(jì)算密文對(duì)y1,y2:
密文。解密算法:可見(jiàn),EIGamal體制的密文不是獨(dú)一的,這是一種非確定性加密方式。顯然添加了系統(tǒng)的平安性,但是,代價(jià)是密文膨脹了兩倍。2.3.4橢圓曲線加密算法定義
定義:橢圓曲線指的是由韋爾斯特拉斯方程所確定的平面曲線。其中,系數(shù)〔i=1,2,…,6〕定義在基域K上〔K可以是有理數(shù)域、實(shí)數(shù)域、復(fù)數(shù)域,還可以是有限域,橢圓曲線密碼體制中用到的橢圓曲線都定義在有限域上〕橢圓曲線加密算法相關(guān)知識(shí)1985年,Koblitz和Miller相互獨(dú)立地開(kāi)發(fā)提出了在密碼學(xué)中運(yùn)用橢圓曲線〔ElipticalCurve〕構(gòu)造公開(kāi)密鑰密碼體制的思想。這一算法一出現(xiàn)便遭到關(guān)注,由于基于橢圓曲線的公開(kāi)密鑰密碼體制開(kāi)銷(xiāo)小〔所需的計(jì)算量小〕、平安性高等優(yōu)點(diǎn),隨著橢圓曲線的公開(kāi)密鑰密碼體制極大的開(kāi)展,它將替代RSA成為通用的公鑰密碼算法。實(shí)際闡明,在32位的PC機(jī)上和16位微處置器上運(yùn)轉(zhuǎn)橢圓曲線密碼算法,其中16位微處置器上的數(shù)字簽名缺乏500ms。因此,運(yùn)用橢圓曲線的數(shù)字簽名可以很容易地在小的有限資源的設(shè)備中運(yùn)用。1.有限域上的橢圓曲線算法的提出
設(shè)K表示一個(gè)有限域,E是域K上的橢圓曲線,那么E是一個(gè)點(diǎn)的集合:E/K={(x,y)|y2+a1xy+a3y=x3+a2x2+a4x+a6,a1,a3,a2,a4,a6x,yK}{O}其中O表示無(wú)窮遠(yuǎn)點(diǎn)。在E上定義‘+’運(yùn)算,P+Q=R,R是過(guò)P、Q的直線與曲線的另一交點(diǎn)關(guān)于x軸的對(duì)稱點(diǎn),當(dāng)P=Q時(shí)R是P點(diǎn)的切線與曲線的另一交點(diǎn)關(guān)于x軸的對(duì)稱點(diǎn)。這樣,(E,+)構(gòu)成可換群(Abel群),O是加法單位元(零元)。橢圓曲線離散對(duì)數(shù)問(wèn)題定義如下:給定定義在K上的橢圓曲線E,一個(gè)n階的點(diǎn)PE/K,和點(diǎn)QE/K,假設(shè)存在l,確定整數(shù)l,0,l,n-1,Q=lP。我們知道,RSA是基于因子分解,其算法的中心就是如何尋覓大數(shù)的因子分解,但大數(shù)的因子分解是比因子分解難得多的問(wèn)題。橢圓曲線上的加法:P+Q=R是橢圓曲線上一點(diǎn)的2倍:P+P=R.基于該難題,1985年N.Koblitz和Miller提出將橢圓曲線用于密碼算法,分別利用有限域上橢圓曲線的點(diǎn)構(gòu)成的群實(shí)現(xiàn)了離散對(duì)數(shù)密碼算法。2.橢圓曲線上的密碼算法橢圓曲線加密系統(tǒng)由很多依賴于橢圓曲線離散對(duì)數(shù)算法問(wèn)題的加密系統(tǒng)組成:〔1〕知E(Fn)對(duì)點(diǎn)的“〞運(yùn)算構(gòu)成一個(gè)Abel群,設(shè)p∈E(Fn),假設(shè)p的周期很大,即使pp……p=θ(共有t個(gè)p相加)成立的最小正整數(shù)t,希望t很大(t=p的周期,表示為∏(p)=t),并且對(duì)Q∈E(Fq),定有某個(gè)正整數(shù)m使Q=m?p=p……p(共有m個(gè)p相加)定義m=㏒nQ(m為以n為底Q的對(duì)數(shù))橢圓曲線上的點(diǎn)構(gòu)成的群E(Fn),相關(guān)它的離散對(duì)數(shù)問(wèn)題是難處置的。建立橢圓曲線密碼體制
選取基域Fn,F(xiàn)n的橢圓曲線詳細(xì)給定為確定的方式。在E(Fn)中選一個(gè)周期很大的點(diǎn),如選了一個(gè)點(diǎn)P=(xn,yn),它的周期為一個(gè)大的素?cái)?shù)n,記∏(P)=n(素?cái)?shù))。留意:在這個(gè)密碼體制中,詳細(xì)的曲線及點(diǎn)P和它的n都是公開(kāi)信息。密碼體制的方式采用EIGamal體制,是完全類(lèi)比過(guò)來(lái)。建立橢圓曲線密碼的方法運(yùn)用者執(zhí)行了以下計(jì)算:a)在區(qū)間[1,n-1]中隨機(jī)選取一個(gè)整數(shù)d;b)計(jì)算點(diǎn)Q:=dP(d個(gè)P相);c)運(yùn)用者公開(kāi)本人的公開(kāi)密鑰——(E(Fn),p,n,Q);d)運(yùn)用者的私鑰為整數(shù)d;發(fā)送者要發(fā)送音訊m給運(yùn)用者,執(zhí)行:a)查找運(yùn)用者的公鑰(E(Fn),p,n,Q),b)將m表示成一個(gè)域元素m∈Fn,c)在區(qū)間[1,n-1]內(nèi)選取一個(gè)隨機(jī)數(shù)k,d)根據(jù)運(yùn)用者的公鑰計(jì)算點(diǎn)(x1,y1):=kP(k個(gè)P相),e)計(jì)算點(diǎn)(x2,y2):=kQ,假設(shè)x2=0,那么回到第c步計(jì)算C:=m?x2;f)傳送加密數(shù)據(jù)(x1,y1,C)給運(yùn)用者;運(yùn)用者收到發(fā)送者的密文(x,y,C)后,執(zhí)行解密過(guò)程:a)運(yùn)用私鑰d,計(jì)算點(diǎn)(x2,y2):=d(x1,y1),再計(jì)算Fn中,b)經(jīng)過(guò)計(jì)算m:=C?,恢復(fù)出明文數(shù)據(jù)m。2.4信息加密產(chǎn)品簡(jiǎn)介信息加密產(chǎn)品隨著加密技術(shù)的運(yùn)用和開(kāi)展出現(xiàn)了良好的商業(yè)化趨勢(shì),比較常用的信息加密軟件有PGP和CryptoAPI,作為開(kāi)放的軟件工具,它們的運(yùn)用為深化開(kāi)展信息加密技術(shù)的研討提供了協(xié)助。下面分別引見(jiàn)PGP和CryptoAPI。2.4.1PGP加密軟件簡(jiǎn)介PGP(pretty
good
privacy)是一個(gè)對(duì)郵件和傳輸?shù)奈膿踹M(jìn)展加密的軟件,可以用來(lái)對(duì)郵件和文擋嚴(yán)密以防止非授權(quán)者閱讀,讓他可以平安地和他從未見(jiàn)過(guò)的人們通訊。PGP軟件綜合了目前強(qiáng)壯的加密方法和加密系統(tǒng)認(rèn)證性方面的新手段,功能強(qiáng)大有很快的速度,是一種比較適用和平安的加密工具。PGP軟件開(kāi)創(chuàng)人是美國(guó)的Phil
Zimmermann,由于許多版本不受密碼出口控制,源代碼也是免費(fèi)的,獲取比較方便。1.PGP采用的加密規(guī)范PGP
用的是公匙加密和傳統(tǒng)加密的雜合算法,這種算法發(fā)明性在于他把公匙加密體系的方便和傳統(tǒng)加密體系的高速度結(jié)合起來(lái),充分利用多個(gè)算法各自的優(yōu)點(diǎn)運(yùn)用于明文加密和密匙認(rèn)證管理機(jī)制中,構(gòu)成了整個(gè)加密系統(tǒng)巧妙的設(shè)計(jì)。PGP實(shí)踐上用來(lái)對(duì)明文加密采用了IDEA的傳統(tǒng)加密算法。IDEA的加〔解〕密速度比公匙加密算法如RSA快得多,但主要缺陷就是密匙的傳送渠道處理不了平安性問(wèn)題,不適宜網(wǎng)絡(luò)環(huán)境加密需求。因此,PGP每次加密都可以隨機(jī)生成密匙用IDEA算法對(duì)明文加密,然后在用密匙的傳送中用公匙加密算法,普通是運(yùn)用不適宜加密大量數(shù)據(jù)的RSA或Diffie-Hellman算法對(duì)該密匙加密來(lái)保證傳送渠道的平安性,這樣收件人同樣是用RSA或Diffie-Hellman解密出這個(gè)隨匙,再用IDEA解密出明文。PGP加密方法表示圖
解密密鑰K2明文密鑰K加密密鑰K2明文加密密鑰K2發(fā)送者接納者IDEA加密密文接納者的公鑰K1公鑰加密密文解密密鑰K2接納者的私鑰K2密鑰K圖4.1PGP加密方法表示圖2.PGP的密匙管理〔1〕在PGP中假設(shè)IDEA密匙是經(jīng)過(guò)網(wǎng)絡(luò)傳送而不加密,網(wǎng)絡(luò)黑客們就會(huì)“監(jiān)聽(tīng)〞而獲取密匙,整個(gè)傳輸一定危險(xiǎn),因此,必需經(jīng)過(guò)必要可靠的密匙管理來(lái)保證信息發(fā)送和接納的平安性。一個(gè)成熟的加密系統(tǒng)必然要有一個(gè)成熟的密匙管理機(jī)制配套,公匙加密體系可以處理傳統(tǒng)加密體系的密匙分配難嚴(yán)密的缺陷,PGP中運(yùn)用RSA或Diffie-Hellman算法實(shí)施密匙分配。2.PGP的密匙管理〔2〕但是,分配過(guò)程中首先要獲取對(duì)方公匙,假設(shè)公匙被篡改,所獲得的公匙成了偽造的,密匙分配就會(huì)傳送給篡改者,篡改者可以用本人的私匙解密獲得密匙。這能夠是公匙密碼體系中最大的破綻和平安性問(wèn)題,他必需確信他拿到的公匙屬于它看上去屬于的那個(gè)人。防止這種情況出現(xiàn)的最好方法是防止讓任何其他人有時(shí)機(jī)篡改公匙,比如直接從要接納信息的人手中得到公匙,然而當(dāng)在千里之外或無(wú)法見(jiàn)到時(shí),這是很困難的。2.PGP的密匙管理〔3〕處理這個(gè)問(wèn)題普通方法是數(shù)字簽名,直接認(rèn)證他的信息接納者的公匙,防止篡改公匙;而PGP那么在此根底上開(kāi)展了一種公匙引見(jiàn)機(jī)制來(lái)處理這個(gè)問(wèn)題,舉例來(lái)說(shuō):假設(shè)他和接納信息的人有一個(gè)共同的朋友,而朋友知道他手中的他的接納信息的人的公匙是正確的,這樣朋友可以用他本人的私匙在他的接納信息的人的公匙上加密,表示他擔(dān)保這個(gè)公匙屬于他的信息接納者,然后他需求用朋友的公匙解密獲取信息接納者給他的公匙,同樣朋友也可以向他的信息接納者認(rèn)證他的公匙。這樣朋友“引見(jiàn)人〞。這樣他就可以放心地到BBS上取朋友簽過(guò)字的公匙,由于經(jīng)過(guò)朋友認(rèn)證,沒(méi)人能夠獲得朋友的私匙去偽造和篡改信息接納者給他的公匙,但前提是朋友認(rèn)證過(guò)他的信息接納者的公匙,這樣是從信任的公共渠道傳送公匙的平安手段。PGP的平安性管理特點(diǎn)〔1〕謹(jǐn)慎的密匙管理〔2〕靈敏選擇加密密匙對(duì)的位數(shù)〔3〕專門(mén)用來(lái)簽名而不加密,用于聲明人用本人的私匙簽名證明本人的身份〔4〕加密的實(shí)踐密匙隨機(jī)數(shù)難以分析,如:PGP程序?qū)﹄S機(jī)數(shù)的產(chǎn)生是很謹(jǐn)慎的,關(guān)鍵的隨機(jī)數(shù)像RSA密匙的產(chǎn)生是從用戶瞧鍵盤(pán)的時(shí)間間隔上獲得隨機(jī)數(shù)種子的,這有效地防止了他人從他的隨機(jī)數(shù)文件中分析出他的加密實(shí)際密匙的規(guī)律來(lái)〔5〕PGP內(nèi)核運(yùn)用PKZIP算法
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公眾責(zé)任險(xiǎn)培訓(xùn)大綱
- 培訓(xùn)管理員培訓(xùn)總結(jié)
- 如何做好安全管理培訓(xùn)
- 農(nóng)村冬季行車(chē)安全培訓(xùn)
- 吊裝作業(yè)培訓(xùn)課件
- 供應(yīng)商入廠安全培訓(xùn)
- 輪椅電動(dòng)租賃合同協(xié)議
- 產(chǎn)品研發(fā)及知識(shí)產(chǎn)權(quán)保護(hù)合同
- 電子商務(wù)知識(shí)培訓(xùn)
- 服裝產(chǎn)業(yè)協(xié)議書(shū)
- 2024年自治區(qū)文化和旅游廳所屬事業(yè)單位招聘工作人員考試真題
- 景區(qū)安全生產(chǎn)管理規(guī)章制度大全
- 2025屆湖北武漢市華中師大一附中高考英語(yǔ)押題試卷含答案
- 消防司機(jī)交通安全課件
- 釣場(chǎng)出租合同協(xié)議
- 骨科病人術(shù)后疼痛護(hù)理
- 廣東2025年03月資本市場(chǎng)學(xué)院(廣東)招考工作人員筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 2025云南省安全員《A證》考試題庫(kù)及答案
- 腦出血手術(shù)護(hù)理查房
- 面食節(jié)活動(dòng)方案
- 低空經(jīng)濟(jì)發(fā)展報(bào)告2024-2025
評(píng)論
0/150
提交評(píng)論