USB智能卡應(yīng)用技術(shù)研究
文章出處:http://srpd123.com 作者: 人氣: 發(fā)表時(shí)間:2012年03月15日
摘要:公鑰基礎(chǔ)設(shè)施PKI是以公開(kāi)密鑰技術(shù)為基礎(chǔ),以數(shù)據(jù)的機(jī)密性、完整性和不可抵賴(lài)性為安全目的而構(gòu)建的認(rèn)證、授權(quán)、加密等硬件、軟件的綜合體系,是信息安全基礎(chǔ)設(shè)施的一個(gè)重要組成部分,是一種普遍適用的網(wǎng)絡(luò)安全體系。將智能卡與PKI技術(shù)有機(jī)結(jié)合可以增強(qiáng)文件傳輸安全性,在客戶(hù)端與服務(wù)器之間傳輸數(shù)據(jù)前進(jìn)行身份驗(yàn)證,并且能對(duì)傳輸?shù)膬?nèi)容進(jìn)行加密,解決了在Internet傳輸敏感信息的顧慮。
關(guān)鍵詞:公鑰基礎(chǔ)設(shè)施;PKI ;智能卡
科學(xué)技術(shù)的發(fā)展使得計(jì)算機(jī)幾乎成為各個(gè)領(lǐng)域的信息處理工具,政府機(jī)關(guān)、企業(yè)、銀行及軍事機(jī)構(gòu)等國(guó)家重要部門(mén)都使用計(jì)算機(jī)建立信息系統(tǒng),各種重要的信息和情報(bào)均由計(jì)算機(jī)進(jìn)行處理。特別是Internet的出現(xiàn),以計(jì)算機(jī)聯(lián)網(wǎng)方式獲得信息和交流信息已成為現(xiàn)代信息社會(huì)的重要特征。然而,隨著網(wǎng)絡(luò)的開(kāi)放性、共享性、互聯(lián)程度的擴(kuò)大,以及社會(huì)對(duì)網(wǎng)絡(luò)信息系統(tǒng)日益增強(qiáng)的依賴(lài)性,網(wǎng)絡(luò)安全問(wèn)題日益突出。
目前網(wǎng)絡(luò)通信主要提供五種安全服務(wù),即身份認(rèn)證服務(wù)、訪問(wèn)控制服務(wù)、機(jī)密性服務(wù)、完整性服務(wù)和抗否認(rèn)性服務(wù),所有的網(wǎng)絡(luò)應(yīng)用環(huán)境包括銀行、電子交易、政府以及互聯(lián)網(wǎng)本身都需要上述網(wǎng)絡(luò)安全服務(wù)支持。
身份認(rèn)證用于實(shí)現(xiàn)網(wǎng)絡(luò)通信方身份的互相驗(yàn)證,在網(wǎng)絡(luò)安全中占據(jù)十分重要的位置。用戶(hù)在訪問(wèn)網(wǎng)絡(luò)系統(tǒng)之前,首先經(jīng)過(guò)身份認(rèn)證系統(tǒng)識(shí)別身份,然后訪問(wèn)監(jiān)控器根據(jù)用戶(hù)身份和授權(quán)數(shù)據(jù)庫(kù)決定用戶(hù)能否訪問(wèn)某個(gè)資源??梢?jiàn)身份認(rèn)證是最基本的安全服務(wù),訪問(wèn)控制、審計(jì)等其它安全服務(wù)都要依賴(lài)于身份認(rèn)證系統(tǒng)提供的用戶(hù)身份信息。一旦身份認(rèn)證系統(tǒng)被攻破,那么系統(tǒng)所有安全措施將形同虛設(shè)。
1 PKI體系結(jié)構(gòu)
PKI是以公鑰密碼體制的概念和技術(shù)為基礎(chǔ),實(shí)施和提供信息安全服務(wù)的具有普適性的安全基礎(chǔ)設(shè)施,是信息安全基礎(chǔ)設(shè)施的重要組成部分,是對(duì)密碼學(xué)的最完整的應(yīng)用。PKI遵循既定的標(biāo)準(zhǔn),能為所有網(wǎng)絡(luò)應(yīng)用提供加密和數(shù)字簽名等安全服務(wù)及必需的密鑰和證書(shū)管理體系。公鑰基礎(chǔ)設(shè)施能為具有各種不同安全需求的用戶(hù)提供各種安全服務(wù)。其核心的目標(biāo)是解決網(wǎng)絡(luò)空間的信任問(wèn)題,確定網(wǎng)絡(luò)空間各行為主體的身份的唯一性和真實(shí)性,保護(hù)信息網(wǎng)絡(luò)空間中各種主體的安全利益。
PKI涉及多個(gè)實(shí)體間的協(xié)作,圖1說(shuō)明了典型PKI系統(tǒng)的架構(gòu),其組成部分包括認(rèn)證中心、注冊(cè)機(jī)構(gòu)、證書(shū)庫(kù)、密鑰管理和最終實(shí)體。認(rèn)證中心(Certification‘Authority,CA ),CA是PKI的核心,具備權(quán)威性。CA負(fù)責(zé)最終確認(rèn)PKI用戶(hù)的身份,以公鑰證書(shū)的形式建立一個(gè)身份和一對(duì)公/私鑰問(wèn)的唯一關(guān)聯(lián);同時(shí)負(fù)責(zé)頒發(fā)和管理公鑰證書(shū)。整個(gè)過(guò)程包括了軟、硬件,服務(wù)集合,以及人、操作過(guò)程和操作環(huán)境,制定諸如怎樣鑒別用戶(hù)身份,頒發(fā)哪種格式的證書(shū)等安全策略。
圖1 典型的PKI系統(tǒng)的體系結(jié)構(gòu)
注冊(cè)機(jī)構(gòu)(Registration Authority,RA),RA的主要功能是確認(rèn)證書(shū)申請(qǐng)者的身份信息,將申請(qǐng)者的身份信息和公鑰用RA的私鑰簽名后發(fā)送給CA;接收證書(shū)作廢的申請(qǐng),驗(yàn)證其有效性,向CA發(fā)出該申請(qǐng)。對(duì)于地理上分散的機(jī)構(gòu),RA的存在可使CA離線運(yùn)作,減少遭受攻擊的可能,增強(qiáng)安全性。
證書(shū)庫(kù)(Certificate Repository),證書(shū)庫(kù)存放經(jīng)CA簽發(fā)的證書(shū)和己撤銷(xiāo)證書(shū)列表,最終實(shí)體可通過(guò)證書(shū)庫(kù)提供的服務(wù)得到其他實(shí)體的證書(shū),驗(yàn)證其真?zhèn)?,查?xún)證書(shū)的狀態(tài)。密鑰管理(Key Management),密鑰對(duì)可能在某個(gè)集中的密鑰生成服務(wù)器中創(chuàng)建,也可能在智能卡中生成,并存放在相應(yīng)密鑰存儲(chǔ)容器中。但無(wú)論如何都需要存檔用于)Jn/解密的密鑰對(duì),以便在丟失時(shí)可以及時(shí)恢復(fù),避免造成因丟失密鑰而導(dǎo)致信息無(wú)法恢復(fù)。但需要注意的是,為了保證簽名密鑰的唯一性,和對(duì)數(shù)字簽名的權(quán)威性,一般不對(duì)用于數(shù)字簽名的密鑰對(duì)進(jìn)行備份操作。
最終實(shí)體(End Entity),最終實(shí)體是PKI系統(tǒng)的使用者,它可能是人,也可能是其他需要安全服務(wù)的應(yīng)用程序。因此,可以將最終實(shí)體視作PKI提供的應(yīng)用接口系統(tǒng),它使得各種各樣的應(yīng)用能夠以
安全、一致和可信的方式與PKI交互,使用PKI提供的安全服務(wù),確保安全網(wǎng)絡(luò)環(huán)境的完整性和易用性。
2 PKI提供的核心安全服務(wù)
PKI提供的核心服務(wù)有認(rèn)證、完整性和機(jī)密性,其實(shí)現(xiàn)機(jī)制如下:
(1)認(rèn)證:PKI的認(rèn)證服務(wù)采用數(shù)字簽名技術(shù),通常是用用戶(hù)證書(shū)的私鑰對(duì)(i)被認(rèn)證的數(shù)據(jù);(ii)用戶(hù)希望發(fā)送到遠(yuǎn)程設(shè)備的請(qǐng)求;(iii)遠(yuǎn)程設(shè)備生成的隨機(jī)詢(xún)問(wèn)信息;這三種數(shù)據(jù)的雜湊值簽名。其中第一項(xiàng)支持PKI的數(shù)據(jù)來(lái)源認(rèn)證服務(wù),即可以確定數(shù)據(jù)是來(lái)自特定的用戶(hù);后兩項(xiàng)支持PKI的實(shí)體認(rèn)證服務(wù),即是向?qū)Ψ阶C實(shí)自己是某個(gè)用戶(hù)。
(2)完整性:PKI的數(shù)據(jù)完整性服務(wù)可以采用兩種技術(shù),第一種是使用用戶(hù)私鑰對(duì)數(shù)據(jù)雜湊值的數(shù)字簽名技術(shù),既可以提供實(shí)體認(rèn)證,也可以保證被簽名數(shù)據(jù)的完整性。數(shù)據(jù)的任何變化都會(huì)導(dǎo)致其雜湊值的改變,從而使對(duì)雜湊值的原簽名與變化后雜湊值不匹配,簽名就無(wú)法通過(guò)驗(yàn)證,因而保證了數(shù)據(jù)的完整性。第二種技術(shù)是信息認(rèn)證碼(MAC)。這種方法的實(shí)現(xiàn)需要兩個(gè)通信的實(shí)體事先商定一個(gè)MAC的私鑰,因而受到一定的限制。
(3)機(jī)密性:假設(shè)一個(gè)PKI中的兩個(gè)實(shí)體A欲與B通信,機(jī)密通信按如下方式實(shí)現(xiàn)。
(i)A生成一個(gè)對(duì)稱(chēng)密鑰,并用它加密通信數(shù)據(jù);
(ii)A將加密過(guò)的數(shù)據(jù)和用B的公鑰加密的對(duì)稱(chēng)密鑰一齊發(fā)送給B;
(iii)B收到信息后,先用自己的公鑰解密對(duì)稱(chēng)密鑰,再用對(duì)稱(chēng)密鑰解密A發(fā)送的數(shù)據(jù)。
3 智能卡
PKI極大地保障了電子商務(wù)、電子政務(wù)并推動(dòng)其他信息安全技術(shù)的發(fā)展。智能卡作為PKI的安全終端,保存著用戶(hù)的數(shù)字證書(shū),包含著用戶(hù)公鑰和個(gè)人信息,在系統(tǒng)中是機(jī)密數(shù)據(jù)的移動(dòng)載體。
3.1 USB智能卡概述
USB智能卡是一種使用了硬件微處理器(MPU)的,以USB總線為通訊接口的硬件設(shè)備。它能夠根據(jù)不同要求生成對(duì)稱(chēng)和非對(duì)稱(chēng)密鑰,支持對(duì)稱(chēng)和非對(duì)稱(chēng)加密及數(shù)字簽名等安全機(jī)制,使用個(gè)人識(shí)別碼(PIN)驗(yàn)證持卡人。事實(shí)上,USB智能卡內(nèi)部是一個(gè)小型嵌入式系統(tǒng),主要由處理器,存儲(chǔ)器和I/O接口三部分組成,其組成結(jié)構(gòu)如圖2所示。
圖2 USB智能卡的組成結(jié)構(gòu)
處理器部分主要由MPU、密碼協(xié)處理器(CAU)和隨機(jī)數(shù)發(fā)生器(RNG )三個(gè)部件組成。MPU的主要功能類(lèi)似微機(jī)中的CPU,負(fù)責(zé)執(zhí)行系統(tǒng)的中央運(yùn)算、處理和管理;CAU是專(zhuān)用的實(shí)現(xiàn)高速加/解密運(yùn)算的硬件處理器;RNG的主要功能是通過(guò)硬件快速產(chǎn)生加密算法所需要的高質(zhì)量隨機(jī)數(shù)。存儲(chǔ)器部分主要由ROM,RAM和EEPROM三個(gè)部件組成。ROM是只讀存儲(chǔ)器,存儲(chǔ)與應(yīng)用緊密關(guān)聯(lián)的芯片操作系統(tǒng)(Chip Operating System,COS)程序,COS是芯片資源的管理者和安全保密的基礎(chǔ);RAM是隨機(jī)存儲(chǔ)器,作為內(nèi)存使用,用于臨時(shí)保存工作數(shù)據(jù);EEPROM是電可擦除存儲(chǔ)器,主要功能是存儲(chǔ)應(yīng)用程序數(shù)據(jù)。
存儲(chǔ)器和微處理器之間通過(guò)總線進(jìn)行數(shù)據(jù)交換,而圖2中的I/O接口則連接著符合USB2.0規(guī)范的接口電路,完成數(shù)據(jù)輸入輸出所必需的處理;安全邏輯sL保護(hù)存儲(chǔ)器(主要是EEPROM)內(nèi)的數(shù)據(jù),對(duì)卡內(nèi)資源實(shí)施訪問(wèn)控制。
3.2 USB智能卡的優(yōu)點(diǎn)
作為硬件載體,USB智能卡的結(jié)構(gòu)和卡內(nèi)安全邏輯能為公鑰證書(shū)和用戶(hù)私鑰提供硬件級(jí)安全保護(hù)。與其他載體相比,usB智能卡具有以下優(yōu)點(diǎn):
(1)提高了密鑰對(duì)的私有性:密鑰對(duì)由CAU在MPU的控制下生成,改變了密鑰對(duì)由服務(wù)器統(tǒng)一產(chǎn)生的方式,使得密鑰對(duì)的安全性不再僅僅依賴(lài)于服務(wù)器的安全性和可信度。
(2)提高了私鑰的安全性:私鑰以只讀形式存儲(chǔ)在USB智能卡內(nèi),幾乎不可能出現(xiàn)在除此以外的任何地方,所有涉及私鑰(如簽名等)的操作全部在USB智能卡內(nèi)部完成,只有知道PIN碼的合法用戶(hù)才可能完成這些操作,保證了私鑰的安全性。
(3)降低了秘鑰管理的復(fù)雜度:每張智能卡只需要秘密保存自己的私鑰,M張智能卡和 臺(tái)主機(jī)相互鑒別只需要( M+N)對(duì)密鑰。
(4)具有黑盒特性的安全操作:USB智能卡提供統(tǒng)一的API接口,以類(lèi)似“黑盒”的形式完成數(shù)字簽名和數(shù)據(jù)加/解密等私鑰相關(guān)安全操作,不僅加強(qiáng)安全性,而且操作十分簡(jiǎn)便。
(5)具有較高的性?xún)r(jià)比:USB智能卡的成本較低,且具有廣泛的軟硬件支持,支持即插即用。此外,它還具有良好的便攜性和耐用性等優(yōu)點(diǎn)。
4 總結(jié)
PKI是一種遵循既定標(biāo)準(zhǔn)的密鑰管理平臺(tái),它可以為各種網(wǎng)絡(luò)應(yīng)用透明地提供采用加密和數(shù)字簽名等密碼服務(wù)所必須的密鑰和證書(shū)管理,從而達(dá)到保證網(wǎng)上傳遞信息的保密、真實(shí)、完整和不可否認(rèn)性的目的。利用PKI,人們可以方便地建立和維護(hù)一個(gè)可信的網(wǎng)絡(luò)計(jì)算環(huán)境,無(wú)須直接見(jiàn)面就能確認(rèn)彼此的身份,安全地進(jìn)行信息交換。USB智能卡作為PKI的安全終端,既提高了PKI系統(tǒng)的安全性能,又降低了用戶(hù)的使用復(fù)雜度。但是,智能卡本身也存在著被攻擊的可能,需要進(jìn)行進(jìn)一步的研究,這也對(duì)網(wǎng)絡(luò)安全提出了更高的要求。
參考文獻(xiàn)
1 關(guān)振勝.公鑰基礎(chǔ)設(shè)施PKI與認(rèn)證機(jī)構(gòu)CA.北京:電子工業(yè)出版社,2002
2 張先紅.?dāng)?shù)字簽名原理及技術(shù).北京:機(jī)械工業(yè)出版社,2004
3 張佳偉.一種基于PKI的局域網(wǎng)防泄密系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).上海師范大學(xué)碩士學(xué)位論文,2006
第一作者簡(jiǎn)介:孫海濤,博士研究生。研究方向:集成電路信息泄漏與主動(dòng)防護(hù)技術(shù)研究。
【稿件聲明】:如需轉(zhuǎn)載,必須注明來(lái)源和作者,保留文中圖片和內(nèi)容的完整性,違者將依法追究。