2021-4-10 | 互聯(lián)網(wǎng)
常見移動(dòng)環(huán)境下身份認(rèn)證技術(shù)方案身份認(rèn)證技術(shù)是在互聯(lián)網(wǎng)中為確認(rèn)操作者身份而產(chǎn)生的解決方法。移動(dòng)互聯(lián)網(wǎng)中一切信息包括用戶身份信息都是用一組特定的數(shù)據(jù)來表示的,如何保證以數(shù)字身份進(jìn)行操作的操作者就是這個(gè)數(shù)字身份的合法擁有者,也就是說保證操作者的物理身份與數(shù)字身份相對(duì)應(yīng),身份認(rèn)證技術(shù)就是為了解決這個(gè)問題。為確保身份認(rèn)證的真實(shí)有效,對(duì)于身份認(rèn)證技術(shù)有以下幾項(xiàng)基本的安全需求。
⑴保密性:確保交易過程中涉及的大量保密數(shù)據(jù)在公開網(wǎng)絡(luò)的傳輸過程中不被竊取。
⑵完整性:保證交易信息在傳輸過程中不會(huì)被篡改或通過重復(fù)發(fā)送進(jìn)行虛假交易。
⑶雙向認(rèn)證:基于單向認(rèn)證的第二代移動(dòng)網(wǎng)絡(luò)安全機(jī)制己經(jīng)導(dǎo)致多種利用協(xié)議漏洞的攻擊出現(xiàn),如中間人攻擊等,因此保證交易雙方身份的正確性尤為重要。
⑷不可抵賴性:確保交易完成后,交易的任何一方都無法否認(rèn)已經(jīng)發(fā)生的交易。
目前移動(dòng)互聯(lián)網(wǎng)中常用的身份認(rèn)證技術(shù)有多種,它們具有不同的操作方式,具備不同的安全等級(jí),可以適用于不同的應(yīng)用場(chǎng)景。
基于硬件安全模塊的PKI身份認(rèn)證技術(shù)方案文件數(shù)字證書在安全等級(jí)上是最高的,同時(shí)具備雙向認(rèn)證機(jī)制及不可抵賴性,是一種較為適合高安全互聯(lián)網(wǎng)應(yīng)用的認(rèn)證方式。這種方式的問題在于,使用文件方式存儲(chǔ)數(shù)字證書,難以阻止非授權(quán)的訪問,一旦文件被破譯,就會(huì)造成用戶密鑰的泄漏,從而導(dǎo)致業(yè)務(wù)信息被破解。網(wǎng)銀目前最普遍使用的USBKEY認(rèn)證也是一種通過數(shù)字證書進(jìn)行安全認(rèn)證的方式,與文件數(shù)字證書方式相比,其證書及用戶的密鑰都采用硬件進(jìn)行存儲(chǔ),因此能夠避免非法的訪問。能否在移動(dòng)終端上引入專用的安全硬件完成類似計(jì)算機(jī)上USBKEY的功能,成為一種很自然的想法。
為此我們研究并提出了一種基于硬件安全模塊(SecureElement,SE,本文中的安全模塊均指通過硬件方式實(shí)現(xiàn))的PKI身份認(rèn)證技術(shù),就是將數(shù)字證書、用戶密鑰存儲(chǔ)在專用的安全模塊中,并由安全模塊完成各種加/解密及簽名/驗(yàn)簽運(yùn)算,從而保證用戶數(shù)據(jù)的安全。
2.1網(wǎng)絡(luò)總體結(jié)構(gòu)
本方案的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,其中主要的功能實(shí)體包括PKI安全模塊、手機(jī)終端、業(yè)務(wù)系統(tǒng)平臺(tái)、CA中心。
2.1.1PKI安全模塊
PKI安全模塊是集成在移動(dòng)終端中的專用安全設(shè)備,能安全地存儲(chǔ)用戶密鑰和數(shù)字證書,可實(shí)現(xiàn)公私密鑰對(duì)生成、數(shù)字證書存儲(chǔ)及訪問、對(duì)稱(非對(duì)稱)加/解密、生成/驗(yàn)證數(shù)字簽名等功能。為提高非對(duì)稱運(yùn)算的速度和效率,通常會(huì)在安全模塊中集成專用的RSA協(xié)處理器用以快速完成密鑰對(duì)生成及各種RSA相關(guān)的加/解密、簽名/驗(yàn)簽運(yùn)算(對(duì)于使用ECC算法進(jìn)行認(rèn)證的業(yè)務(wù),可集成ECC協(xié)處理器)。
2.1.2手機(jī)終端
手機(jī)終端是操作系統(tǒng)和客戶端軟件的運(yùn)行載體?!〔僮飨到y(tǒng)提供了底層的硬件驅(qū)動(dòng)支持,為應(yīng)用軟件提供了對(duì)安全模塊的訪問接口?!】蛻舳塑浖蛴脩籼峁┝藰I(yè)務(wù)交互的界面,它一方面通過調(diào)用操作系
統(tǒng)提供的安全模塊訪問接口來實(shí)現(xiàn)各種安全運(yùn)算,另一方面則通過移動(dòng)網(wǎng)絡(luò)與業(yè)務(wù)系統(tǒng)平臺(tái)進(jìn)行業(yè)務(wù)交互,在安全模塊與后臺(tái)系統(tǒng)之間建立了一條實(shí)時(shí)交互的通道。
2.1.3CA中心
CA中心是PKI體系的核心,它是證書的簽發(fā)機(jī)構(gòu),是保證業(yè)務(wù)交易的權(quán)威性、可信任性和公正性的第三方機(jī)構(gòu),負(fù)責(zé)生成、分發(fā)和撤銷數(shù)字證書。此外CA中心還承擔(dān)公鑰體系中公鑰合法性檢驗(yàn)的責(zé)任,驗(yàn)證用戶身份的真實(shí)性。
2.1.4業(yè)務(wù)系統(tǒng)平臺(tái)
業(yè)務(wù)系統(tǒng)平臺(tái)負(fù)責(zé)實(shí)際處理用戶的交易請(qǐng)求,并通過與CA中心的交互,協(xié)助完成用戶證書管理、簽名驗(yàn)證等功能。2.2功能層次架構(gòu)由于業(yè)務(wù)系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)較為成熟,本文將集中對(duì)手機(jī)客戶端的功能層次架構(gòu)進(jìn)行說明。手機(jī)客戶端分為應(yīng)用層、安全應(yīng)用接口層、手機(jī)操作系統(tǒng)層和物理硬件層4個(gè)層次?!?yīng)用層:客戶端軟件,通過調(diào)用安全應(yīng)用接口層提供的標(biāo)準(zhǔn)接口,完成具體業(yè)務(wù)功能。
安全應(yīng)用接口層:安全應(yīng)用中間件是連接安裝在移動(dòng)終端上的客戶端軟件與安全模塊之間的橋梁。
安全應(yīng)用中間件屏蔽了底層手機(jī)操作系統(tǒng)、安全模塊的差異,向應(yīng)用層提供了標(biāo)準(zhǔn)的PKI運(yùn)算接口,稱為安全應(yīng)用接口,具體包括密鑰對(duì)生成、數(shù)字證書訪問和管理、加/解密、簽名/驗(yàn)簽等。由于不同終端的操作系統(tǒng)和安全模塊驅(qū)動(dòng)并不統(tǒng)一,因此安全應(yīng)用中間件需要根據(jù)終端進(jìn)行適配,工作量非常大。為此需要針對(duì)目前主流的手機(jī)操作系統(tǒng),包括Android、iOS、Symbian等,制定安全模塊驅(qū)動(dòng)接口標(biāo)準(zhǔn),推動(dòng)終端廠商遵循,減輕安全應(yīng)用中間件的適配工作量。
終端操作系統(tǒng)層:手機(jī)終端與智能卡設(shè)備之間的訪問接口簡(jiǎn)稱為機(jī)卡接口。終端廠商在手機(jī)操作系統(tǒng)層對(duì)機(jī)卡接口進(jìn)行技術(shù)實(shí)現(xiàn),并向上層應(yīng)用提供標(biāo)準(zhǔn)的安全模塊訪問接口。
對(duì)于SD卡方式,具備SD卡的終端都支持標(biāo)準(zhǔn)的SD卡訪問接口。為區(qū)分對(duì)SD卡的普通存儲(chǔ)訪問和安全模塊訪問,一般可以采用專用文件讀寫方式實(shí)現(xiàn):⑴安全應(yīng)用中間件調(diào)用SD卡寫入接口,將請(qǐng)求指令寫入到SD卡上的專用輸入文件中;⑵控制芯片判斷是對(duì)專用文件的寫入,認(rèn)為這是安全模塊訪問指令,進(jìn)入業(yè)務(wù)處理流程;⑶驗(yàn)證業(yè)務(wù)請(qǐng)求的合法性,確保是由合法的系統(tǒng)后臺(tái)發(fā)出(可通過簽名驗(yàn)證等方式);⑷驗(yàn)證通過后進(jìn)行運(yùn)算處理,并將處理后的結(jié)果經(jīng)過加密、簽名后放到專用輸出文件中;⑸安全應(yīng)用中間件在發(fā)送訪問請(qǐng)求后,對(duì)輸出文件進(jìn)行定時(shí)查詢,直至取得返回結(jié)果。
對(duì)于SIM卡方式,手機(jī)終端操作系統(tǒng)目前對(duì)SIM卡的訪問是通過“RIL(RadioInterfaceLayer,無線接口層)→基帶芯片(BasebandProcessor)→SIM卡”的通路實(shí)現(xiàn)的,由于SIM卡方式的機(jī)卡接口實(shí)現(xiàn)技術(shù)較為復(fù)雜,具體方案在下文中進(jìn)行專門討論。