ECC加密算法在Intranet身份認(rèn)證中的應(yīng)用
隨著互聯(lián)網(wǎng)的推廣,來自網(wǎng)絡(luò)信息安全的威脅也逐漸引起了各方面的關(guān)注。身份認(rèn)證是信息安全的重要組成部分,是企業(yè)信息安全的保障。那么我們今天就來談?wù)凟CC加密算法在Intranet身份認(rèn)證中的應(yīng)用。
一、ECC加密算法與身份認(rèn)證
1、ECC加密算法
橢圓曲線加密算法(ECC)是基于橢圓曲線離散對(duì)數(shù)問題密碼算法的總稱。一個(gè)具體的橢圓曲線加密算法總是建立在一條具體的橢圓曲線上的。
橢圓曲線的定義:
橢圓曲線源自于橢圓積分,是由Weierstrass方程所確定的平面曲線。
在橢圓曲線中,真正具有密碼實(shí)用價(jià)值的主要是基于二元域GF(2n)和素?cái)?shù)域GF(p)的橢圓曲線。 在SECI工作草案中,所定義的二元域上橢圓曲線用到六個(gè)參量: _T=(p,a,b,G,n,f)。(p,a,b用來確定一條橢圓曲線,G為基點(diǎn),n為點(diǎn)G的階,h是橢圓曲線上所有的點(diǎn)的個(gè)數(shù)m與n相除的整數(shù)部分) _這幾個(gè)參量取值的選擇,直接影響了加密的安全性。p越大越安全,但相應(yīng)的計(jì)算速度會(huì)變慢,200位左右可以滿足一般安全要求;
但目前對(duì)于橢圓曲線的參數(shù)取值還沒有一個(gè)標(biāo)準(zhǔn)來規(guī)范。 ECC所基于的數(shù)學(xué)問題的困難性被公認(rèn)是目前已知的公鑰密碼體制當(dāng)中每位提供加強(qiáng)密度最高的一種體制。數(shù)學(xué)問題越難,意味著越小的密鑰尺寸能產(chǎn)生等價(jià)的安全性。_因此,和傳統(tǒng)的公鑰密碼體制RSA相比,ECC加密算法具有以下特點(diǎn):
ECC加密算法特點(diǎn):
(1) 安全性能更高:如表1所示, ECC和RSA相比,單位bit的安全強(qiáng)度更高。
(2) 計(jì)算量小和處理速度快:密鑰長(zhǎng)度縮短使得ECC的計(jì)算量大大減小,總速度比RSA快很多。同時(shí)ECC系統(tǒng)的密鑰生成速度比RSA快百倍。
(3) 存儲(chǔ)空間?。涸谕劝踩珬l件下,ECC所占的存儲(chǔ)空間要小得多。
(4) 帶寬要求低:但應(yīng)用于短消息時(shí),ECC帶寬要求低很多。
ECC加密算法可以應(yīng)用在公鑰密碼(如RSA)的所有應(yīng)用中,如橢圓曲線加密體制(如ECES)、數(shù)字簽名體制(如ECSA、ECDSA、Schnorr)、密鑰交換協(xié)議(如ECKEP、Diffie-Hellman)等。
由于ECC加密算法在安全性、實(shí)現(xiàn)代價(jià)和應(yīng)用效率上較RSA密碼都有明顯的優(yōu)勢(shì),目前已經(jīng)被多家國(guó)際標(biāo)準(zhǔn)組織所接受,如IEEE、ANSI、ISO、IETF、ATM 等,它們所開發(fā)的橢圓曲線標(biāo)準(zhǔn)的文檔有:IEEE P1363 P1363a、ANSI X9.62 X9.63、ISO/IEC14888 等。ECC加密算法替代RSA加密算法,成為行業(yè)或組織的公鑰密碼標(biāo)準(zhǔn)的趨勢(shì)已經(jīng)形成,并已有國(guó)家(美國(guó)、日本、韓國(guó)和歐洲一些國(guó)家)在國(guó)家密碼標(biāo)準(zhǔn)中采用ECC密碼體制。
但由于橢圓曲線的參數(shù)選擇很多,目前國(guó)際上還缺乏一種通用的標(biāo)準(zhǔn),這一方面也限制了ECC加密算法的推廣和應(yīng)用。
2、身份認(rèn)證和公鑰密碼體制
在計(jì)算機(jī)科學(xué)中,身份是授予權(quán)限的基礎(chǔ),也是構(gòu)成某個(gè)保護(hù)域的名稱系統(tǒng)的必要組成部分。身份認(rèn)證就是將某個(gè)身份與某個(gè)實(shí)體進(jìn)行綁定,是防止主動(dòng)攻擊的主要方法。
在身份認(rèn)證系統(tǒng)中,起關(guān)鍵作用的是其中的加密體系。它的密碼體制分為對(duì)稱密碼體制和非對(duì)稱密碼體制。非對(duì)稱密碼體制是指在加密過程中,密鑰被分為一對(duì):公開密鑰(a public-key), 可以被任何人知道,用于加密或驗(yàn)證簽名;私鑰(private-key), 只能被消息的接收者或簽名者知道,用于解密或簽名。這對(duì)密鑰具有這樣一個(gè)特點(diǎn):當(dāng)知道密鑰對(duì)中的一個(gè)密鑰時(shí),要檢測(cè)出另一個(gè)密鑰,在計(jì)算上是不可能的。在這個(gè)系統(tǒng)中,每個(gè)通信實(shí)體都有一個(gè)加密密鑰和一個(gè)緊密相關(guān)的解密密鑰.通信的雙方只要知道對(duì)方的公鑰,就可以進(jìn)行安全的通信。
目前用國(guó)際上公認(rèn)的對(duì)于RSA加密算法算法最有效的攻擊方法有一般數(shù)域篩(NFS)方法去破譯和攻擊RSA算法,由于求解和攻破RSA算法是一種亞指數(shù)級(jí)別運(yùn)算難度的,破解難度不高。所以RSA加密算法算法的安全性不是很高。
目前,國(guó)外廣泛應(yīng)用公開密鑰基礎(chǔ)設(shè)施(PKI),利用密碼學(xué)理論對(duì)要傳輸?shù)臄?shù)字信息進(jìn)行加密和簽名,保證了信息傳輸?shù)臋C(jī)密性、真實(shí)性、完整性和不可抵賴性。PKI的核心采用RSA加密算法進(jìn)行加密運(yùn)算,在電子商務(wù)領(lǐng)域有著廣泛而成功的應(yīng)用,但隨著橢圓曲線算法的出現(xiàn),ECC加密算法其自身不同于RSA加密算法的優(yōu)點(diǎn)使其越來越受人們的關(guān)注。
二、 ECC加密算法在Intranet身份認(rèn)證中的應(yīng)用
內(nèi)聯(lián)網(wǎng)絡(luò)Intranet是在統(tǒng)一行政管理和安全控制管理之下,采用Internet的標(biāo)準(zhǔn)技術(shù)和應(yīng)用系統(tǒng)建設(shè)成的網(wǎng)絡(luò),可以看作是一種“專用Internet”,相對(duì)于Internet強(qiáng)調(diào)網(wǎng)絡(luò)的互連和通信,Intranet則更強(qiáng)調(diào)企業(yè)內(nèi)部的信息交流和協(xié)同工作,如何在保證效率的同時(shí),保障Intranet的安全是我們面臨的一個(gè)難題。
如上節(jié)所述,公開密鑰基礎(chǔ)設(shè)施(PKI)廣泛應(yīng)用于Internet的電子商務(wù)與電子政務(wù)身份認(rèn)證。但目前PKI機(jī)制多采用RSA加密算法進(jìn)行加解密和簽名,其算法的速度比較慢,安全級(jí)別不夠,無法滿足Intranet協(xié)同工作的要求。 我們依據(jù)PKI理論框架,提出一種新的模型,針對(duì)開放通信系統(tǒng)中的加密文件傳輸?shù)膶?shí)現(xiàn)問題提出了一種實(shí)現(xiàn)方法。該方法提供軟硬件協(xié)同工作保障的安全,使得密鑰系統(tǒng)的建立、傳遞更加可靠。
未解決系統(tǒng)的速度問題,我們擬采用ECC加密算法代替RSA進(jìn)行加解密和電子簽名,設(shè)計(jì)基于PKI機(jī)制的Intranet身份認(rèn)證系統(tǒng)。 在這個(gè)加密通信中,如果有一個(gè)入侵者H,他只能看到Ep(,)ab、K、G、C1、C2 而通過K、G 求K或通過C2、G求r都是相對(duì)困難的。因此,H無法得到A、B間傳送的明文信息。
在本文提出的模型中,假設(shè)通信的是A與B雙方,A與B處在同一個(gè)Intranet中。此內(nèi)聯(lián)網(wǎng)絡(luò)內(nèi)部有一個(gè)密鑰管理中心(KMC)。事先約定密碼體制:采用混合密鑰體制,即文本加解密采用對(duì)稱算法AES,而密鑰的傳輸與簽名驗(yàn)簽都采用非對(duì)稱加密算法ECC 。
整個(gè)系統(tǒng)包括KMC(Key Manage Center)密鑰管理中心、服務(wù)器、硬件加密設(shè)備Usb Key等部分組成(上圖所示)。 在PKI體制中,采用證書管理公鑰,通過第三方可信任機(jī)構(gòu)CA把用戶公鑰和用戶其他標(biāo)識(shí)信息捆綁在一起,在網(wǎng)絡(luò)上驗(yàn)證用戶身份。本模型借鑒PKI體制,每一個(gè)終端用戶設(shè)備無需事先存有對(duì)方公鑰信息,只需獲取KMC授予的相關(guān)信息和公鑰即可直接與網(wǎng)絡(luò)中其它授權(quán)用戶進(jìn)行通信。
KMC作為公認(rèn)的第三方機(jī)構(gòu),實(shí)現(xiàn)下列功能:生成密鑰:生成ECC加解密密鑰;儲(chǔ)存密鑰:儲(chǔ)存各Server生成的密鑰;安裝密鑰:安裝各ECC密鑰至各個(gè)電子鑰匙Key中;發(fā)放公鑰:儲(chǔ)存并發(fā)放公鑰。
Key(電子鑰匙)是一種USB安全設(shè)備,具有存儲(chǔ)密鑰、隨機(jī)生成一次性隨機(jī)密鑰和硬件加密功能。密鑰存儲(chǔ)在Key中不允許導(dǎo)出,避免了密碼運(yùn)輸和在公共硬件中存儲(chǔ)帶來的安全隱患。USB Key作為雙因素認(rèn)證終端設(shè)備,代替了原來通用的只有口令的認(rèn)證方式。
在系統(tǒng)的發(fā)送端,Key插在服務(wù)器A上,利用其中的隨機(jī)數(shù)生成器,生成AES密鑰中密鑰,將明文m加密成密文C。用Key中的ECC私鑰加密AES密鑰,與密文C、數(shù)字簽名一起打包成數(shù)字信封。
數(shù)字信封壓縮為一個(gè)包,由發(fā)送端的服務(wù)器A發(fā)通過開放式通信網(wǎng)絡(luò)發(fā)送到接收端服務(wù)器B。
數(shù)字信封通過Intranet傳輸,傳給服務(wù)器B。在接收端,將數(shù)字信封解壓縮查找KMC中得到的發(fā)送端A的ECC公鑰,用其解碼,得到文本AES加密的密鑰,將密文C解密成明文M,再將明文M進(jìn)行Hash運(yùn)算,比較其結(jié)果與數(shù)字信封中的數(shù)字簽名S,確認(rèn)文件未被篡改和丟失,保證其數(shù)據(jù)完整性。
本模型采用軟硬件協(xié)同工作的方式,適用于基于Intranet的系統(tǒng)機(jī)構(gòu)內(nèi)部的身份認(rèn)證。 在信息安全中,密鑰管理可以定義為密鑰的產(chǎn)生、記錄、傳抄、分配、安裝、存儲(chǔ)、變更、銷毀和控制過程。任何一個(gè)步驟都可能導(dǎo)致密碼系統(tǒng)的泄密,而實(shí)踐表明對(duì)密鑰和密鑰管理的攻擊比對(duì)算法的攻擊更加常見也更加有效。
在本模型中,根密鑰保存在硬件設(shè)備USB Key中,使得密鑰數(shù)據(jù)絕不以任何明文形式出現(xiàn)在加密設(shè)備之外,還可以保護(hù)數(shù)據(jù)完整性,不可篡改,運(yùn)算速度快,防止逆向工程。
在硬件加密方面,USB Key以智能卡芯片為基礎(chǔ),內(nèi)置芯片操作系,利用算法IP核,作為終端加密認(rèn)證設(shè)備,直接從系統(tǒng)和硬件層面提供安全保護(hù),確保關(guān)鍵信息特別是根密鑰安全地保存在硬件設(shè)備中。 在USB Key中,由隨機(jī)數(shù)發(fā)生器,生成一次性隨機(jī)密鑰,在各Server端生成AES加密密鑰。這樣基本可以做到“一次一密”,大大提高了數(shù)據(jù)加密的強(qiáng)度。 本模型是根據(jù)PKI進(jìn)行部分修改得到,使用ECC對(duì)AES的密鑰進(jìn)行加密,并使用橢圓曲線數(shù)字簽名算法ESDSA。
由于ECC加密算法還無法支持標(biāo)準(zhǔn)的數(shù)字證書,在本模型中,使用類似功能的數(shù)字信封,將密文、使用ECC加密后的AES密鑰和簽名打包,再通過網(wǎng)絡(luò)傳輸。 為了加快系統(tǒng)的速度,提高系統(tǒng)的安全性,本模型提出海量數(shù)據(jù)加密采用對(duì)稱加密算法中的AES算法,替代傳統(tǒng)的DES算法。 AES算法即高級(jí)加密標(biāo)準(zhǔn)——Rijndael算法。速度快,安全強(qiáng)度高,是新興的對(duì)稱密鑰加密算法。
在信息安全領(lǐng)域,ECC加密算法簽名以其密鑰長(zhǎng)度小、安全性能高、整個(gè)數(shù)字簽名耗時(shí)小,使其在智能終端應(yīng)用中有很大的發(fā)展?jié)摿?,比如掌上電腦、移動(dòng)手機(jī)等中能有更好的表現(xiàn)。而在內(nèi)聯(lián)網(wǎng)絡(luò)中,ECC算法也保證了其協(xié)同工作的實(shí)時(shí)性,使用ECC加密算法加密敏感性級(jí)別較高的數(shù)據(jù)(如密鑰),速度上能夠滿足大數(shù)據(jù)量要求,而且安全性更高,能很好的保障系統(tǒng)的安全。
在信息安全領(lǐng)域,僅靠單一技術(shù)手段構(gòu)成的安全體系往往是脆弱的,軟硬件協(xié)同工作是目前的流行趨勢(shì),可以提高安全性。 ECC加密算法是目前正在組建興起的非對(duì)稱加密算法,在很多領(lǐng)域開始逐漸替代傳統(tǒng)的RSA算法。
小知識(shí)之Intrane:
Intranet稱為企業(yè)內(nèi)部網(wǎng),或稱內(nèi)部網(wǎng),內(nèi)網(wǎng),是一個(gè)使用與因特網(wǎng)同樣技術(shù)的計(jì)算機(jī)網(wǎng)絡(luò),它通常建立在一個(gè)企業(yè)或組織的內(nèi)部并為其成員提供信息的共享和交流等服務(wù),例如萬維網(wǎng),文件傳輸,電子郵件等。是Internet技術(shù)在企業(yè)內(nèi)部的應(yīng)用。它的核心技術(shù)是基于Web的計(jì)算。










