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