智能卡在WPKI中的應用研究
文章出處:http://psychicreadingswithdeb.com 作者:黃成 汪海航 人氣: 發(fā)表時(shí)間:2011年09月23日
0 引 言
隨著(zhù)移動(dòng)通信技術(shù)的迅速發(fā)展,人們借助終端設備可以隨時(shí)隨地地接入網(wǎng)絡(luò )進(jìn)行交易和數據交換,促進(jìn)了移動(dòng)電子商務(wù)的發(fā)展。移動(dòng)電子商務(wù)作為移動(dòng)通信應用的一個(gè)主要發(fā)展方向,其與Intemet上的在線(xiàn)交易相比有著(zhù)許多優(yōu)點(diǎn),因此日益受到人們的關(guān)注,而移動(dòng)交易系統的安全是推廣移動(dòng)電子商務(wù)必須解決的關(guān)鍵問(wèn)題。
在有線(xiàn)網(wǎng)絡(luò )環(huán)境中,PKI是網(wǎng)絡(luò )安全建設的基礎與核心,是電子商務(wù)安全實(shí)施的基本保障。而在無(wú)線(xiàn)通信網(wǎng)絡(luò )中帶寬、終端處理能力等方面的限制,使得PKI不能引入無(wú)線(xiàn)網(wǎng)絡(luò )。wPKI(wirelesS PKI)就是為滿(mǎn)足無(wú)線(xiàn)通信安全需求而發(fā)展起來(lái)的,它可應用于手機、PDA等無(wú)線(xiàn)裝置,為用戶(hù)提供身份認證、訪(fǎng)問(wèn)控制和授權、傳輸保密、資料完整性、不可否認性等安全服務(wù)。智能卡擁有優(yōu)秀的安全性,可以作為WPKI體系當中網(wǎng)絡(luò )安全客戶(hù)端很好的接入載體。智能卡有自己的處理器,因而能夠在卡內實(shí)現密碼算法和數字簽名,并且能夠安全地存儲私鑰。目前,智能卡已經(jīng)逐漸應用于公安系統警務(wù)查詢(xún)、稅務(wù)部門(mén)查詢(xún)、企業(yè)移動(dòng)應用、移動(dòng)電子商務(wù)、移動(dòng)電子銀行等領(lǐng)域,其中包括了基于PKI體系的USB Key以及利用手機短信進(jìn)行移動(dòng)業(yè)務(wù)處理的STK卡等。
1 WPKI與PKI智能卡
WPKI由終端、PKI門(mén)戶(hù)、CA、PKI目錄服務(wù)器等部分組成密鑰管理體系。在WPKI的應用中,還設計WAP網(wǎng)關(guān)和數據提供服務(wù)器等服務(wù)設備。WPKI的基本結構如圖1所示。
圖1 W PKI的結構
WPKI中定義了一個(gè)PKI中沒(méi)有的組件,即PKI門(mén)戶(hù),它負責處理來(lái)自終端和網(wǎng)關(guān)的請求,PKI門(mén)戶(hù)一般代表RA并且通常和網(wǎng)關(guān)集成在一起。RA是連接終端和網(wǎng)關(guān)之間的橋梁,它負責接受終端和網(wǎng)關(guān)的注冊請求,并向CA注冊證書(shū),CA一方面需要把生成的證書(shū)放到證書(shū)目錄器(如LDAP服務(wù)器),供需要時(shí)(如網(wǎng)關(guān)和服務(wù)器等設備在需要進(jìn)行驗證時(shí))各實(shí)體查詢(xún);另一方面要將證書(shū)通過(guò)RA發(fā)送到終端和網(wǎng)關(guān)。終端包括手機、PDA等WAP設備,而應用于其上的智能卡則用來(lái)存儲數字證書(shū)、密鑰等機密信息,實(shí)現加解密及進(jìn)行數字簽名的功能。
一張智能卡主要由微處理器(CPU)和存儲器以及固化在卡上的操作系統構成,是具有存儲能力和計算能力的集成電路芯片卡-2] PKI智能卡是將PKI技術(shù)應用于智能卡的產(chǎn)物,在PKI體系中,私有密鑰以及第三方認證機構所頒發(fā)的數字證書(shū)可以存儲在極為安全的智能卡上。由于智能卡所攜帶的微處理器可實(shí)現存儲、加解密、卡內生成密鑰對等功能,因此數字簽名可以利用存儲在智能卡上的私鑰自動(dòng)計算生成。整個(gè)簽名過(guò)程都是由卡內自動(dòng)完成,并且簽名密鑰不可出卡,所以PKI智能卡可以有效確保私鑰安全和簽名的有效性。
2 智能卡在WPKI中應用問(wèn)題分析
一個(gè)安全、可靠的WPKI應用系統,其安全性取決于系統的方方面面。將智能卡應用于WPKI時(shí),其在客戶(hù)端的安全中扮演了重要的角色。WPKI體系根據無(wú)線(xiàn)環(huán)境與有線(xiàn)網(wǎng)絡(luò )的種種區別,對PKI進(jìn)行了優(yōu)化,而當將智能卡應用于其中時(shí),由于智能卡有特殊的環(huán)境要求,因此尚需解決一些特殊問(wèn)題。在智能卡應用系統中,終端可以支持多個(gè)應用系統,終端上的智能卡需要保存所有被其支持的應用系統CA公鑰,產(chǎn)生密鑰并進(jìn)行加解密運算、數字簽名、存儲數字證書(shū)等-3 J,因此智能卡上的密鑰的安全存儲是要解決的重要問(wèn)題。在智能卡與終端的交互中,還需要進(jìn)行相應的信息鑒別,保存交互的信息,以決定智能卡和終端的合法性。
另外智能卡作為一些機密信息的載體,其自身的安全性也是關(guān)乎整個(gè)系統安全的關(guān)鍵因素,因此在智能卡的設計和選擇上需要相應安全策略和安全組件以達到一定的安全級別。
2.1 智能卡密鑰管理策略
公鑰密碼技術(shù)已成為現代網(wǎng)絡(luò )安全保密技術(shù)的基石,目前居于核心位置的公鑰密碼算法有兩種,即RSA算法和橢圓曲線(xiàn)(ECC)算法。智能卡應用于WPKI時(shí),不僅要選擇計算簡(jiǎn)單且安全性高的算法,而且對于密鑰的管理也非常重要。
2.1.1 算法選擇
基于PKI的應用中,密鑰算法的安全程度也是非常重要的一個(gè)環(huán)節。目前智能卡芯片通常提供DES甚至Triple—DES 的加密/解密計算能力。DES 算法是一種公開(kāi)的算法,盡管能破譯,但計算既不經(jīng)濟又不實(shí)用。例如采用差分分析對一個(gè)16輪DES的最佳攻擊需要24r個(gè)選擇明文,采用最佳線(xiàn)性攻擊平均需要245個(gè)已知明文。
RSA算法的優(yōu)點(diǎn)在于簡(jiǎn)單易用,缺點(diǎn)是隨著(zhù)安全性要求提高,其所需的密鑰長(cháng)度幾乎是成倍增加。目前,一般認為RSA密鑰至少要1024bit以上的長(cháng)度才有安全保障,但1024位的加密運算對于智能卡將是一個(gè)沉重的負擔。ECC算法使用較短的密鑰就可以達到和RSA算法相同的加密強度,它的數論基礎是有限域上的橢圓曲線(xiàn)離散對數問(wèn)題,現在還沒(méi)有針對這個(gè)難題的亞指數時(shí)間算法,因而ECC算法具有每比特最高的安全強度。由于智能卡在CPU處理能力和RAM大小的限制,采用一種運算量小同時(shí)能提供高加密強度的公鑰密碼體制對在智能卡上實(shí)現數字簽名應用是至關(guān)重要的。ECC在這方面具有明顯的優(yōu)勢,160位的ECC算法安全性相當于1024位的RSA算法,而210位的ECC則相當于RSA的2048位。
智能卡對秘密數據的加解密都是在卡內完成,攻擊者是無(wú)法通過(guò)智能卡接口取得秘密數據的,因此是比較安全的。
2.1.2 密鑰存儲
無(wú)線(xiàn)識別模塊wIM(Wireless Identity Module)用于存儲WPKI公鑰和用戶(hù)私鑰等密鑰信息及相關(guān)證書(shū)信息,以完成無(wú)線(xiàn)傳輸安全層(WTLS)、傳輸安全層(TLS)和應用層的安全功能j 。在對WIM 的實(shí)現中,最基本的要求就是其載體的抗攻擊性,也就是有某種物理保護措施,使得任何從WIM 模塊中非法提取和修改信息的操作都不可能成功,智能卡就是一個(gè)很好的此類(lèi)安全載體(目前普遍使用SIM 卡來(lái)實(shí)現此模塊),而且智能卡有自己的處理器進(jìn)行加解密和數字簽名,更是節省了手機等終端設備的資源。一般,公鑰具有兩類(lèi)用途:數字簽名驗證和數據加密。因此,終端智能卡需要配置簽名密鑰對和加密密鑰對。這兩類(lèi)密鑰對對于密鑰管理有不同的要求。
簽名密鑰對:由終端智能卡生成,公鑰發(fā)送給認證中心CA,由CA制作證書(shū)后再發(fā)給用戶(hù);私鑰則保存在智能卡中,不能由WAP終端設備讀取,也不能備份。
加密密鑰對:通常情況下,用戶(hù)端加密密鑰由CA中心生成,生成后公鑰用戶(hù)簽發(fā)證書(shū),解密時(shí)要由CA中心加密保存,即做備份處理。在智能卡個(gè)人化時(shí),解密私鑰以加密方式寫(xiě)入卡中,同時(shí)完成加密證書(shū)的灌制。
2.2 證書(shū)存儲
在無(wú)線(xiàn)環(huán)境中,由于網(wǎng)絡(luò )帶寬窄、穩定性差,以及終端設備受存儲能力和處理能力的限制,因此要將智能卡應用于WPKI體系,必然對證書(shū)大小有嚴格的要求。
WPK1支持WTLS和X.509兩種證書(shū)。IETFPKIx工作組定義了一種新的證書(shū)格式——WTLS 證書(shū)格式,它是標準PKI證書(shū)的子集,保證了這些PKI標準互操作的可能性,但更小,更簡(jiǎn)化。智能卡中的容量通常比較小,一般只有2~32kB,而X.509證書(shū)代碼可多達10k,這將影響到智能卡功能的發(fā)揮。在WPKI中,除了使用WTLS證書(shū)格式外,還有一個(gè)解決方案:只在智能卡中存放一個(gè)指針,由指針指出完整證書(shū)的位置,而這個(gè)指針往往是一個(gè)URL地址(HTTP URL或LDAP URL)并且由PKI 門(mén)戶(hù)或(網(wǎng)關(guān))服務(wù)器負責解析。這個(gè)URL地址往往只有幾個(gè)字節,既適應了無(wú)線(xiàn)環(huán)境的特點(diǎn),又能與現有PKI設施兼容。
在PKI系統中,客戶(hù)端最大負荷在于驗證對方的證書(shū),這項任務(wù)可由兩種方式完成。一是證書(shū)注銷(xiāo)清單CRL,它是證書(shū)吊銷(xiāo)的一個(gè)列表,用戶(hù)將CRL下載到本地后進(jìn)行驗證,這樣開(kāi)銷(xiāo)比較大;另一種是在線(xiàn)證書(shū)狀態(tài)協(xié)議CCsP方式,CCsP服務(wù)器對外公開(kāi)證書(shū)狀態(tài)查詢(xún)端口,收到查詢(xún)請求包后,在系統證書(shū)狀態(tài)表中檢查證書(shū)是否作廢,將查詢(xún)結果按OCSP協(xié)議生成響應包后回送客戶(hù)端。因定期下載CRL所需要的時(shí)間和費用以及無(wú)線(xiàn)帶寬限制等原因,上述兩種方法不適合WPKI。目前WPKI中采用短生命周期的網(wǎng)關(guān)證書(shū),這種證書(shū)使用短的有效期,當CA想撤回網(wǎng)關(guān)或服務(wù)器證書(shū),只要停止發(fā)放短期證書(shū)就可以了,客戶(hù)因為得不到有效證書(shū)也會(huì )停止認為這個(gè)服務(wù)器或網(wǎng)關(guān)是有效的。
在PKI應用中,當智能卡插入到終端時(shí)將卡中的用戶(hù)個(gè)人證書(shū)導入到終端系統的證書(shū)存儲區,這樣終端就可以使用用戶(hù)證書(shū)進(jìn)行身份驗證和接入應用了。當智能卡從終端拔出時(shí),終端需要將證書(shū)存儲區中的證書(shū)信息刪除以保證安全性。在證書(shū)導入、導出的過(guò)程中,需要驗證此用戶(hù)是否為合法經(jīng)授權的用戶(hù),因此,可以結合用戶(hù)的個(gè)人密碼來(lái)提高安全性。
3 智能卡安全
智能卡中存儲了WPKI所需的證書(shū)、密鑰等機密信息,這些信息不僅在使用時(shí)確保其安全性,在存儲中時(shí)也要確保防盜、防篡改。智能卡的安全在硬件方面通常是添加一些安全組件來(lái)保證的,在軟件方面包括構造安全的卡片操作系統、安全的應用程序及相應的文件結構。
3.1 卡片安全組件
智能卡應用于WPKI時(shí)需保證存儲于其中的信息的安全,因此卡自身的安全變得非常重要,為智能卡添加安全組件則是常用的一些方法,主要有硬件加解密、隨機數發(fā)生器、內存管理單元以及安全檢測與防護等模塊組成。
安全的身份認證:智能卡采用PIN碼進(jìn)行保護,持卡人只有同時(shí)具備卡和其PIN碼才可正常使用卡??ㄅc終端采用互認證,即不僅終端要驗證卡的身份,而且卡也要驗證終端的身份,以避免潛在的攻擊、信息外泄。
卡片抵御攻擊能力:智能卡在設計階段就應采取有針對性的安全檢測和防護手段。通過(guò)優(yōu)化或增加一些硬件保護組件抵御入侵式或者非入侵式的硬件攻擊,如通過(guò)產(chǎn)生干擾信號、抵御SPAE2 J等攻擊手段??ㄆ僮飨到y的良好設計也能避免被植入木馬等程序而導致密鑰等機密信息泄露的情形。
硬件加解密:密鑰和加解密算法是系統中非常機密的信息,由于采用軟件進(jìn)行加解密操作有被盜取信息的可能性,而采用硬件實(shí)現則將機密信息屏蔽,外界很難探測到重要信息,具有更高的安全性。對于用來(lái)生成密鑰的隨機數來(lái)說(shuō),更是需要采用硬件隨機數發(fā)生器(白噪聲技術(shù))來(lái)提高安全性。
安全的內存管理:實(shí)現邏輯地址的分區管理以及物理地址與邏輯地址的映射,保證用戶(hù)程序代碼和數據在存儲區中的不連續存放。這樣,即使芯片被解剖分析,攻擊者也無(wú)法讀出正確的數據。
3.2 卡片安全訪(fǎng)問(wèn)權限
智能卡中往往存儲了機密信息,在卡片正式使用之前,須對卡片進(jìn)行應用規劃:建立相關(guān)的文件結構、建立相應的訪(fǎng)問(wèn)權限、寫(xiě)入相關(guān)數據和密鑰。公鑰算法中的簽名私鑰則只能在卡內生成,并且私鑰只允許設置修改權和使用權,即私鑰不出卡。用戶(hù)的私有信息(如私鑰、證書(shū)、PIN碼等)由用戶(hù)密碼進(jìn)行保護,并且設置密碼的錯誤次數上限,一般限制為3次,即密碼核實(shí)三次出錯,卡片鎖死,且只能到指定地點(diǎn)進(jìn)行解鎖。
4 結束語(yǔ)
隨著(zhù)移動(dòng)通信技術(shù)的發(fā)展,基于WPKI體系的應用也會(huì )越來(lái)越廣泛,而智能卡則在這些應用系統中保證了客戶(hù)端的安全。從技術(shù)和現實(shí)的角度討論了將智能卡應用于WPK1體系中的一些問(wèn)題,分析了如何根據智能卡的特點(diǎn)突破這些局限性,并對智能卡的存儲安全和使用安全的相關(guān)策略進(jìn)行了探討。然而不同的應用系統可能會(huì )對智能卡有不同的要求,因此應根據需要采用不同的使用策略。
作者簡(jiǎn)介:黃成(1983-),男。江蘇鹽城人,同濟大學(xué)計算機科學(xué)與技術(shù)系 碩士研究生,主要研究方向為計算機網(wǎng)絡(luò )與電子商務(wù);汪海航,教授,博士生導師,主要研究方向為計算機網(wǎng)絡(luò )與電子商務(wù)。
參考文獻:
[1] 趙文,戴宗坤.WPKI應用體系架構研究[J].四川大學(xué)學(xué)報:自然科學(xué)版,2005,42(4):725—730.
[2] 張志紅.智能卡安全技術(shù)及在PKI中的應用[J].網(wǎng)絡(luò )安全技術(shù)與應用,2005(6) 10—12.
[3] 曹化工,梁宗煉,高小新,等.基于智能卡的PKI體系實(shí)現框架[J].小型微型計算機系統,2003,24(6):1004—1008.
[4] Henry M、智能卡安全與應用[M].楊義先等譯.北京 人民郵電出版社,2oo2.
f5] 劉杰.王春萌,范春曉.移動(dòng)電子商務(wù)及WPKI技術(shù)[J].北京郵電大學(xué)學(xué)報,2002,25(2):1—7.
[6] 劉志強.智能卡在無(wú)線(xiàn)交易中的應用fJ].信息安全與通信保密,2006(1):53—57.
[7]路綱,余塹,周明天,等.WPK!-5 PKI關(guān)鍵技術(shù)對比[J].計算機應用,2005,25(11):2505—2508.