信息安全技術(shù)是一門(mén)綜合的學(xué)科,它涉及信息論、計(jì)算機(jī)科學(xué)和密碼學(xué)等多方面知識(shí),它的主要任務(wù)是研究計(jì)算機(jī)系統(tǒng)和通信網(wǎng)絡(luò)內(nèi)信息的保護(hù)方法以實(shí)現(xiàn)系統(tǒng)內(nèi)信息的安全、保密、真實(shí)和完整。其中,信息安全的核心是密碼技術(shù)?! ?
隨著計(jì)算機(jī)網(wǎng)絡(luò)不斷滲透到各個(gè)領(lǐng)域,密碼學(xué)的應(yīng)用也隨之?dāng)U大。數(shù)字簽名、身份鑒別等都是由密碼學(xué)派生出來(lái)的新技術(shù)和應(yīng)用 。
數(shù)據(jù)加密原理和體制
數(shù)據(jù)加密
在計(jì)算機(jī)上實(shí)現(xiàn)的數(shù)據(jù)加密,其加密或解密變換是由密鑰控制實(shí)現(xiàn)的。密鑰(Keyword)是用戶按照一種密碼體制隨機(jī)選取,它通常是一隨機(jī)字符串,是控制明文和密文變換的唯一參數(shù)?! ?
數(shù)字簽名
密碼技術(shù)除了提供信息的加密解密外,還提供對(duì)信息來(lái)源的鑒別、保證信息的完整和不可否認(rèn)等功能,而這三種功能都是通過(guò)數(shù)字簽名實(shí)現(xiàn)?! ?
數(shù)字簽名的原理是將要傳送的明文通過(guò)一種函數(shù)運(yùn)算(Hash)轉(zhuǎn)換成報(bào)文摘要(不同的明文對(duì)應(yīng)不同的報(bào)文摘要),報(bào)文摘要加密后與明文一起傳送給接受方,接受方將接受的明文產(chǎn)生新的報(bào)文摘要與發(fā)送方的發(fā)來(lái)報(bào)文摘要解密比較,比較結(jié)果一致表示明文未被改動(dòng),如果不一致表示明文已被篡改?! ?
加密體制及比較
根據(jù)密鑰類型不同將現(xiàn)代密碼技術(shù)分為兩類:一類是對(duì)稱加密(秘密鑰匙加密)系統(tǒng),另一類是公開(kāi)密鑰加密(非對(duì)稱加密)系統(tǒng)?! ?
對(duì)稱鑰匙加密系統(tǒng)是加密和解密均采用同一把秘密鑰匙,而且通信雙方都必須獲得這把鑰匙,并保持鑰匙的秘密?! ?
對(duì)稱密碼系統(tǒng)的安全性依賴于以下兩個(gè)因素。第一,加密算法必須是足夠強(qiáng)的,僅僅基于密文本身去解密信息在實(shí)踐上是不可能的;第二,加密方法的安全性依賴于密鑰的秘密性,而不是算法的秘密性,因此,我們沒(méi)有必要確保算法的秘密性,而需要保證密鑰的秘密性。對(duì)稱加密系統(tǒng)的算法實(shí)現(xiàn)速度極快,從AES候選算法的測(cè)試結(jié)果看,軟件實(shí)現(xiàn)的速度都達(dá)到了每秒數(shù)兆或數(shù)十兆比特。對(duì)稱密碼系統(tǒng)的這些特點(diǎn)使其有著廣泛的應(yīng)用。因?yàn)樗惴ú恍枰C?,所以制造商可以開(kāi)發(fā)出低成本的芯片以實(shí)現(xiàn)數(shù)據(jù)加密。這些芯片有著廣泛的應(yīng)用,適合于大規(guī)模生產(chǎn)。
對(duì)稱加密系統(tǒng)最大的問(wèn)題是密鑰的分發(fā)和管理非常復(fù)雜、代價(jià)高昂。比如對(duì)于具有n個(gè)用戶的網(wǎng)絡(luò),需要n(n-1)/2個(gè)密鑰,在用戶群不是很大的情況下,對(duì)稱加密系統(tǒng)是有效的。但是對(duì)于大型網(wǎng)絡(luò),當(dāng)用戶群很大,分布很廣時(shí),密鑰的分配和保存就成了大問(wèn)題。對(duì)稱加密算法另一個(gè)缺點(diǎn)是不能實(shí)現(xiàn)數(shù)字簽名?! ?
公開(kāi)密鑰加密系統(tǒng)采用的加密鑰匙(公鑰)和解密鑰匙(私鑰)是不同的。由于加密鑰匙是公開(kāi)的,密鑰的分配和管理就很簡(jiǎn)單,比如對(duì)于具有n個(gè)用戶的網(wǎng)絡(luò),僅需要2n個(gè)密鑰。公開(kāi)密鑰加密系統(tǒng)還能夠很容易地實(shí)現(xiàn)數(shù)字簽名。因此,最適合于電子商務(wù)應(yīng)用需要。在實(shí)際應(yīng)用中,公開(kāi)密鑰加密系統(tǒng)并沒(méi)有完全取代對(duì)稱密鑰加密系統(tǒng),這是因?yàn)楣_(kāi)密鑰加密系統(tǒng)是基于尖端的數(shù)學(xué)難題,計(jì)算非常復(fù)雜,它的安全性更高,但它實(shí)現(xiàn)速度卻遠(yuǎn)趕不上對(duì)稱密鑰加密系統(tǒng)。在實(shí)際應(yīng)用中可利用二者的各自優(yōu)點(diǎn),采用對(duì)稱加密系統(tǒng)加密文件,采用公開(kāi)密鑰加密系統(tǒng)加密“加密文件”的密鑰(會(huì)話密鑰),這就是混合加密系統(tǒng),它較好地解決了運(yùn)算速度問(wèn)題和密鑰分配管理問(wèn)題。因此,公鑰密碼體制通常被用來(lái)加密關(guān)鍵性的、核心的機(jī)密數(shù)據(jù),而對(duì)稱密碼體制通常被用來(lái)加密大量的數(shù)據(jù)。
對(duì)稱密碼加密系統(tǒng)
對(duì)稱加密系統(tǒng)最著名的是美國(guó)數(shù)據(jù)加密標(biāo)準(zhǔn)DES、AES(高級(jí)加密標(biāo)準(zhǔn))和歐洲數(shù)據(jù)加密標(biāo)準(zhǔn)IDEA?! ?
1977年美國(guó)國(guó)家標(biāo)準(zhǔn)局正式公布實(shí)施了美國(guó)的數(shù)據(jù)加密標(biāo)準(zhǔn)DES,公開(kāi)它的加密算法,并批準(zhǔn)用于非機(jī)密單位和商業(yè)上的保密通信。隨后DES成為全世界使用最廣泛的加密標(biāo)準(zhǔn)。加密與解密的密鑰和流程是完全相同的,區(qū)別僅僅是加密與解密使用的子密鑰序列的施加順序剛好相反?! ?
但是,經(jīng)過(guò)20多年的使用,已經(jīng)發(fā)現(xiàn)DES很多不足之處,對(duì)DES的破解方法也日趨有效。AES將會(huì)替代DES成為新一代加密標(biāo)準(zhǔn)?! ?
公鑰密碼加密系統(tǒng)
自公鑰加密問(wèn)世以來(lái),學(xué)者們提出了許多種公鑰加密方法,它們的安全性都是基于復(fù)雜的數(shù)學(xué)難題。根據(jù)所基于的數(shù)學(xué)難題來(lái)分類,有以下三類系統(tǒng)目前被認(rèn)為是安全和有效的:大整數(shù)因子分解系統(tǒng)(代表性的有RSA)、橢園曲線離散對(duì)數(shù)系統(tǒng)(ECC)和離散對(duì)數(shù)系統(tǒng) (代表性的有DSA)?! ?
當(dāng)前最著名、應(yīng)用最廣泛的公鑰系統(tǒng)RSA是由Rivet、Shamir、Adelman提出的(簡(jiǎn)稱為RSA系統(tǒng)),它的安全性是基于大整數(shù)素因子分解的困難性,而大整數(shù)因子分解問(wèn)題是數(shù)學(xué)上的著名難題,至今沒(méi)有有效的方法予以解決,因此可以確保RSA算法的安全性。RSA系統(tǒng)是公鑰系統(tǒng)的最具有典型意義的方法,大多數(shù)使用公鑰密碼進(jìn)行加密和數(shù)字簽名的產(chǎn)品和標(biāo)準(zhǔn)使用的都是RSA算法。
RSA方法的優(yōu)點(diǎn)主要在于原理簡(jiǎn)單,易于使用。但是,隨著分解大整數(shù)方法的進(jìn)步及完善、計(jì)算機(jī)速度的提高以及計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展(可以使用成千上萬(wàn)臺(tái)機(jī)器同時(shí)進(jìn)行大整數(shù)分解),作為RSA加解密安全保障的大整數(shù)要求越來(lái)越大。為了保證RSA使用的安全性,其密鑰的位數(shù)一直在增加,比如,目前一般認(rèn)為RSA需要1024位以上的字長(zhǎng)才有安全保障。但是,密鑰長(zhǎng)度的增加導(dǎo)致了其加解密的速度大為降低,硬件實(shí)現(xiàn)也變得越來(lái)越難以忍受,這對(duì)使用RSA的應(yīng)用帶來(lái)了很重的負(fù)擔(dān),對(duì)進(jìn)行大量安全交易的電子商務(wù)更是如此,從而使得其應(yīng)用范圍越來(lái)越受到制約。
DSA(Data Signature Algorithm)是基于離散對(duì)數(shù)問(wèn)題的數(shù)字簽名標(biāo)準(zhǔn),它僅提供數(shù)字簽名,不提供數(shù)據(jù)加密功能。安全性更高、算法實(shí)現(xiàn)性能更好的公鑰系統(tǒng)橢圓曲線加密算法ECC(Elliptic Curve Cryptography)基于離散對(duì)數(shù)的計(jì)算困難性?! ?
橢圓曲線加密算法ECC技術(shù)優(yōu)勢(shì)
橢圓曲線加密方法與RSA方法相比,有以下優(yōu)點(diǎn):
安全性能更高
加密算法的安全性能一般通過(guò)該算法的抗攻擊強(qiáng)度來(lái)反映。ECC和其他幾種公鑰系統(tǒng)相比,其抗攻擊性具有絕對(duì)的優(yōu)勢(shì)。如160位 ECC與1024位 RSA、DSA有相同的安全強(qiáng)度。而210位 ECC則與2048bit RSA、DSA具有相同的安全強(qiáng)度。
計(jì)算量小,處理速度快
雖然在RSA中可以通過(guò)選取較小的公鑰(可以小到3)的方法提高公鑰處理速度,即提高加密和簽名驗(yàn)證的速度,使其在加密和簽名驗(yàn)證速度上與ECC有可比性,但在私鑰的處理速度上(解密和簽名),ECC遠(yuǎn)比RSA、DSA快得多。因此ECC總的速度比RSA、DSA要快得多?! ?
存儲(chǔ)空間占用小
ECC的密鑰尺寸和系統(tǒng)參數(shù)與RSA、DSA相比要小得多,意味著它所占的存貯空間要小得多。這對(duì)于加密算法在IC卡上的應(yīng)用具有特別重要的意義?! ?
帶寬要求低
當(dāng)對(duì)長(zhǎng)消息進(jìn)行加解密時(shí),三類密碼系統(tǒng)有相同的帶寬要求,但應(yīng)用于短消息時(shí)ECC帶寬要求卻低得多。而公鑰加密系統(tǒng)多用于短消息,例如用于數(shù)字簽名和用于對(duì)對(duì)稱系統(tǒng)的會(huì)話密鑰傳遞。帶寬要求低使ECC在無(wú)線網(wǎng)絡(luò)領(lǐng)域具有廣泛的應(yīng)用前景。
ECC的這些特點(diǎn)使它必將取代RSA,成為通用的公鑰加密算法。比如SET協(xié)議的制定者已把它作為下一代SET協(xié)議中缺省的公鑰密碼算法。