物聯(lián)傳媒 旗下網(wǎng)站
登錄 注冊(cè)

HCE技術(shù)在移動(dòng)支付中的應(yīng)用與安全分析

作者:本站收錄
來(lái)源:《中國(guó)金融電腦》雜志
日期:2016-06-13 08:38:19
摘要:由于HCE方案軟件卡支付應(yīng)用不再要求移動(dòng)終端中必須存在安全單元,因而需要應(yīng)設(shè)計(jì)一套完整的安全加固方案以保護(hù)支付應(yīng)用數(shù)據(jù)的安全。本文將對(duì)HCE技術(shù)在移動(dòng)支付的應(yīng)用安全進(jìn)行分析,并提出典型的技術(shù)解決方案。

  在非接觸式移動(dòng)設(shè)備進(jìn)行現(xiàn)場(chǎng)支付業(yè)務(wù)時(shí),一般是利用NFC技術(shù)的卡模擬方式來(lái)實(shí)現(xiàn),即把移動(dòng)設(shè)備模擬成一張非接觸式的金融IC卡,與支持非接觸式受理的POS終端進(jìn)行交互。在這種傳統(tǒng)的卡模擬方案中,需在移動(dòng)設(shè)備內(nèi)加載安全單元(SEcure E1ement,SE),用于支付應(yīng)用及其數(shù)據(jù)的安全存儲(chǔ)和安全運(yùn)算,為支付過(guò)程提供了芯片級(jí)的可靠安全保障。該安全單元的載體形式可以是智能SD卡、智能SIM卡或者移動(dòng)終端內(nèi)部的嵌入式獨(dú)立單元。這些安全單元的存在確實(shí)保障了金融數(shù)據(jù)安全,但同時(shí)也在卡的發(fā)行運(yùn)營(yíng)方面增加了移動(dòng)支付的復(fù)雜性。

中國(guó)銀聯(lián)李偉:HCE技術(shù)在移動(dòng)支付中的應(yīng)用與安全分析

中國(guó)銀聯(lián)股份有限公司技術(shù)部助理總經(jīng)理 李偉

  2013年底,安卓操作系統(tǒng)4.4以上版本支持了主機(jī)卡模擬(Host-baSEd Card Emulation,HCE)技術(shù),該技術(shù)使基于操作系統(tǒng)應(yīng)用軟件直接實(shí)現(xiàn)卡模擬技術(shù)成為可能,不再要求手機(jī)中必須存在安全單元。HCE技術(shù)的應(yīng)用可以大幅降低支付應(yīng)用的門(mén)檻,減少移動(dòng)支付的推廣成本,因而引起了業(yè)界的廣泛關(guān)注。但是,由于HCE方案軟件卡支付應(yīng)用不再要求移動(dòng)終端中必須存在安全單元,因而需要應(yīng)設(shè)計(jì)一套完整的安全加固方案以保護(hù)支付應(yīng)用數(shù)據(jù)的安全。本文將對(duì)HCE技術(shù)在移動(dòng)支付的應(yīng)用安全進(jìn)行分析,并提出典型的技術(shù)解決方案。

  一、基于HCE的軟件卡技術(shù)方案整體架構(gòu)

  圖1給出了一個(gè)較為全面的能夠涵蓋多種具體解決方案的整體架構(gòu),其關(guān)鍵模塊介紹如下。

中國(guó)銀聯(lián)李偉:HCE技術(shù)在移動(dòng)支付中的應(yīng)用與安全分析

  1.移動(dòng)終端

  移動(dòng)終端是用戶支付應(yīng)用的載體,具體形態(tài)可以為支持NFC功能的手機(jī)、平板或者可穿戴設(shè)備等。移動(dòng)終端應(yīng)具備用于支撐各類(lèi)應(yīng)用運(yùn)行的執(zhí)行環(huán)境,執(zhí)行環(huán)境為上層應(yīng)用提供運(yùn)算、存儲(chǔ)管理、輸入輸出界面等一系列功能和服務(wù)。通過(guò)移動(dòng)終端,用戶可以下載、安裝基于HCE技術(shù)實(shí)現(xiàn)的軟件卡支付應(yīng)用軟件(如數(shù)字錢(qián)包應(yīng)用等)。通過(guò)支付應(yīng)用軟件,實(shí)現(xiàn)支付應(yīng)用的管理、非接觸式支付或遠(yuǎn)程支付等功能??尚艌?zhí)行環(huán)境(Trusted Execution Environment,TEE)技術(shù)被視為是未來(lái)進(jìn)一步提升移動(dòng)終端執(zhí)行環(huán)境安全的一個(gè)重要方向。

  2.軟件卡支付應(yīng)用

  軟件卡支付應(yīng)用是解決方案中最為核心的組成要素,一般而言,其主要功能如下:

  用戶軟件卡賬戶信息的管理,如申請(qǐng)、下載、刪除、暫停、恢復(fù)等功能;用戶賬戶信息的保存和處理,如賬戶參數(shù)的保存和更新等;支付過(guò)程中的數(shù)據(jù)運(yùn)算,如非接觸支付中對(duì)終端指令的處理和響應(yīng)、遠(yuǎn)程支付中交易驗(yàn)證數(shù)據(jù)的生成或驗(yàn)證等;可提供賬戶信息查詢、余額查詢、圈存等操作入口。

  軟件卡支付應(yīng)用可以有多種實(shí)現(xiàn)形式,可以作為獨(dú)立的移動(dòng)應(yīng)用軟件存在,也可以作為插件的形式集成在其他服務(wù)提供商的移動(dòng)應(yīng)用軟件中。

  3.移動(dòng)應(yīng)用平臺(tái)

  移動(dòng)應(yīng)用平臺(tái)是移動(dòng)應(yīng)用軟件接入的既有或新建的后臺(tái)管理系統(tǒng),提供移動(dòng)應(yīng)用的下載和管理功能。在云端支付解決方案中,它還可負(fù)責(zé)移動(dòng)應(yīng)用與云端支付平臺(tái)之間的數(shù)據(jù)轉(zhuǎn)發(fā)或路由。

  4.云端支付平臺(tái)

  云端支付平臺(tái)是云端支付解決方案中使用到的后臺(tái)系統(tǒng),可提供云賬戶生命周期的管理服務(wù),包括云賬戶為創(chuàng)建和初始化、活躍賬戶管理、交易驗(yàn)證、交易處理、生命周期管理及后交易處理。除了這些基礎(chǔ)功能外,云端支付平臺(tái)可同時(shí)提供一些輔助功能,例如賬單服務(wù)、報(bào)告服務(wù)等。

  5.標(biāo)記化服務(wù)提供商系統(tǒng)

  標(biāo)記化服務(wù)提供商系統(tǒng)是指在符合EMVCo標(biāo)記化規(guī)范架構(gòu)下,能夠完成從標(biāo)記生成和發(fā)布功能的系統(tǒng),并在標(biāo)記請(qǐng)求者發(fā)出請(qǐng)求時(shí)維護(hù)已建立的“標(biāo)記一主賬號(hào)”的映射關(guān)系。

  6.安全單元

  在某些應(yīng)用場(chǎng)景下,如果移動(dòng)終端中存在安全芯片,軟件卡解決方案也可以結(jié)合SE,由其來(lái)提供更為安全的支付應(yīng)用數(shù)據(jù)存儲(chǔ)和運(yùn)算功能。

  7.遠(yuǎn)程支付網(wǎng)關(guān)

  用于處理遠(yuǎn)程支付交易的系統(tǒng)前置平臺(tái)。

  二、安全性分析

  相比于傳統(tǒng)基于SE實(shí)現(xiàn)的支付應(yīng)用(主要由SE提供安全存儲(chǔ)和安全運(yùn)算保障),軟件卡支付應(yīng)用的安全防護(hù)需要由整體解決方案來(lái)提供。在軟件卡支付解決方案中,每一個(gè)部件都分擔(dān)了系統(tǒng)安全的一些責(zé)任,同時(shí)實(shí)現(xiàn)了系統(tǒng)安全的一些功能。安全性不再以某單獨(dú)部件的安全與否進(jìn)行衡量,而是以多部件系統(tǒng)整體為單位進(jìn)行衡量。

  軟件卡解決方案的安全性可以從兩個(gè)角度來(lái)衡量,一方面是發(fā)現(xiàn)漏洞以及利用漏洞的難易程度,另一方面是一旦漏洞被利用之后造成損失的大小。由于軟件卡支付應(yīng)用所處的移動(dòng)終端操作系統(tǒng)能提供的安全防護(hù)較為薄弱,軟件卡支付應(yīng)用一般在整體解決方案中不是獨(dú)立存在的,它一般與其它安全環(huán)境或者云端支付系統(tǒng)架構(gòu)緊密結(jié)合??傮w看來(lái),軟件卡解決方案的安全性可以從前端和后端兩個(gè)方面來(lái)考慮:前端包含移動(dòng)終端能提供的安全環(huán)境及軟件卡支付應(yīng)用,后端主要是移動(dòng)應(yīng)用平臺(tái)、云端支付平臺(tái)等。

  在前端的安全考慮中,由移動(dòng)終端操作系統(tǒng)自身提供的安全防護(hù)在目前階段往往存在安全漏洞。因此,建議應(yīng)用提供方在實(shí)現(xiàn)軟件卡支付應(yīng)用時(shí),應(yīng)該著重分析會(huì)有哪些可能存在的風(fēng)險(xiǎn),然后采用相應(yīng)的防護(hù)技術(shù)降低風(fēng)險(xiǎn)。比如,針對(duì)支付應(yīng)用自身,可采用白盒加密、代碼混淆等技術(shù)手段來(lái)提升安全防護(hù)能力,減少漏洞,降低漏洞暴露的可能性,提升漏洞被利用的難度;另一方面,盡量降低漏洞被利用之后造成的損失,如可采用賬號(hào)標(biāo)記化、限制密鑰使用等手段。

  在后端的系統(tǒng)實(shí)現(xiàn)中,從安全的角度看,一個(gè)關(guān)鍵前提是在設(shè)計(jì)服務(wù)器端時(shí)不應(yīng)該假設(shè)前端是安全的,應(yīng)該要考慮到前端安全有被攻破的可能性。基于這個(gè)思想,系統(tǒng)做支付授權(quán)時(shí),不應(yīng)只根據(jù)前端信息做決定,而應(yīng)根據(jù)前端和后端的信息做出綜合決定。另外,服務(wù)器端應(yīng)該實(shí)現(xiàn)一些遠(yuǎn)程管理的功能,保障一旦前端出現(xiàn)安全漏洞服務(wù)器能采取一定的措施去修復(fù)。同時(shí),應(yīng)充分利用移動(dòng)終端和前端支付應(yīng)用提供的信息,比如位置服務(wù)(LBS、指紋識(shí)別、交易頻次、設(shè)備指紋等,建立模型進(jìn)行綜合風(fēng)險(xiǎn)監(jiān)控。

  因此,就軟件卡支付應(yīng)用作為單個(gè)部件而言,和基于SE的支付應(yīng)用實(shí)現(xiàn)相比,其風(fēng)險(xiǎn)無(wú)疑大幅增加。但如果能合理結(jié)合多種安全加固措施和后臺(tái)服務(wù)平臺(tái),從系統(tǒng)整體上來(lái)看,其安全性能夠得到保障。此外,在實(shí)現(xiàn)軟件卡支付的安全解決方案后,相應(yīng)的檢測(cè)與認(rèn)證也將面臨一個(gè)新的挑戰(zhàn),此時(shí),檢測(cè)和認(rèn)證的對(duì)象不再只是系統(tǒng)內(nèi)的某個(gè)部件,而應(yīng)針對(duì)整個(gè)解決方案進(jìn)行綜合的評(píng)估。

  三、典型解決方案示例

  以下列出幾個(gè)典型的軟件卡解決方案,重點(diǎn)描述實(shí)現(xiàn)過(guò)程中需充分考慮的安全要點(diǎn)。

  1.云端支付解決方案

  云端支付產(chǎn)品是目前基于HCE實(shí)現(xiàn)的軟件卡主流解決方案。在本方案中,支付應(yīng)用的核心數(shù)據(jù)在服務(wù)器云端(云端支付平臺(tái)),軟件卡支付應(yīng)用的管理模塊、支付運(yùn)算模塊以及存儲(chǔ)模塊都基于移動(dòng)終端的操作系統(tǒng)實(shí)現(xiàn),與POS終端交互,實(shí)現(xiàn)非接觸式移動(dòng)支付。移動(dòng)終端需支持基于HCE實(shí)現(xiàn)的NlFC功能。

  由于本方案中前端支付應(yīng)用運(yùn)行在普通移動(dòng)設(shè)備的操作系統(tǒng)之下,所以在服務(wù)器端需采取較為嚴(yán)格的參數(shù)管理、交易風(fēng)險(xiǎn)控制策略,比如,不允許基于本模型實(shí)現(xiàn)線下脫機(jī)交易、減少交易參數(shù)的有效次數(shù)和縮短有效周期、控制基于該模型實(shí)現(xiàn)的支付應(yīng)用單次交易限額和累計(jì)交易限額等。通過(guò)較為嚴(yán)格的后臺(tái)風(fēng)險(xiǎn)控制,可以降低系統(tǒng)性攻擊的風(fēng)險(xiǎn)。

  后臺(tái)服務(wù)器應(yīng)對(duì)用戶身份、移動(dòng)設(shè)備及移動(dòng)應(yīng)用等進(jìn)行全方位的驗(yàn)證。在驗(yàn)證通過(guò)后,軟件卡支付應(yīng)用與后臺(tái)服務(wù)器之間的數(shù)據(jù)通信建立在安全連接的基礎(chǔ)上,敏感數(shù)據(jù)通過(guò)安全通道進(jìn)行傳輸。

  2.標(biāo)記化技術(shù)在云端支付解決方案中的應(yīng)用

  在云端支付解決方案的基礎(chǔ)上,后臺(tái)服務(wù)器為了進(jìn)一步加強(qiáng)風(fēng)險(xiǎn)控制力度,可以進(jìn)一步增加標(biāo)記化服務(wù)器(Token ServICe Provider,TSP)的角色,云端支付平臺(tái)可向標(biāo)記化服務(wù)器申請(qǐng)標(biāo)記(Token),進(jìn)一步解決在手機(jī)中存放卡號(hào)等敏感數(shù)據(jù)形成潛在風(fēng)險(xiǎn)的問(wèn)題。國(guó)際金融IC卡聯(lián)合組織EMVCo統(tǒng)一在全球范圍對(duì)TSP進(jìn)行了編號(hào),并通過(guò)各卡組織分別建立技術(shù)業(yè)務(wù)體系,管理卡組織自身銀行卡對(duì)應(yīng)Token的注冊(cè)、標(biāo)記庫(kù)、標(biāo)記提取、生命周期管理等功能。

  相比于普通的云端支付解決方案,疊加標(biāo)記(Token)技術(shù)后,對(duì)軟件卡支付應(yīng)用中所存儲(chǔ)的支付卡信息的保護(hù)和管控得到進(jìn)一步加強(qiáng),后臺(tái)服務(wù)器可基于標(biāo)記化技術(shù)有效控制因前端安全漏洞所造成的卡信息泄露帶來(lái)的損失,同時(shí)也進(jìn)一步提高了對(duì)持卡人各類(lèi)交易風(fēng)險(xiǎn)的綜合管控。

  3.TEE技術(shù)在云端支付解決方案中的應(yīng)用

  由于以上解決方案的前端應(yīng)用客戶端仍處于安全級(jí)較低的操作系統(tǒng)環(huán)境下,理論上仍存在一定的安全漏洞,為進(jìn)一步增強(qiáng)安全,還可進(jìn)一步引進(jìn)TEE技術(shù)。

  通過(guò)運(yùn)用移動(dòng)終端所提供的TEE環(huán)境,可有效提升前端應(yīng)用的安全防護(hù)水平。TEE是移動(dòng)終端中一個(gè)與通用環(huán)境相隔離的執(zhí)行環(huán)境,能夠提供例如應(yīng)用隔離運(yùn)行、可信應(yīng)用及其資源完整性和保密性保護(hù)等安全功能。不過(guò),TEE的安全除了需要自身軟件保障以外,還需要依賴于移動(dòng)終端平臺(tái)硬件的保障。

  利用TEE提供的安全環(huán)境,軟件卡應(yīng)用可以通過(guò)多種方式提升自身安全防護(hù)能力,比如,可將軟件卡應(yīng)用中的敏感數(shù)據(jù)如交易參數(shù)、與后臺(tái)服務(wù)器的通信密鑰等存儲(chǔ)在TEE環(huán)境下;軟件卡應(yīng)用與NFC芯片之間的通信信道可通過(guò)TEE環(huán)境進(jìn)行安全隔離保護(hù);將軟件卡應(yīng)用的支付運(yùn)算模塊以可信應(yīng)用(TA)的方式運(yùn)行在TEE環(huán)境下;對(duì)用戶身份的認(rèn)證(例如指紋識(shí)別)可通過(guò)TEE內(nèi)置的安全服務(wù)來(lái)實(shí)現(xiàn)等。

  四、總結(jié)

  通過(guò)云端存儲(chǔ)和控制、Token技術(shù)、TEE環(huán)境等技術(shù)的運(yùn)用,基于HCE技術(shù)的移動(dòng)支付應(yīng)用成為安全可行的業(yè)務(wù)模式。當(dāng)然,軟件卡支付應(yīng)用還可以直接利用移動(dòng)設(shè)備中已有的SE提供的安全環(huán)境來(lái)存放敏感數(shù)據(jù),從而進(jìn)一步提升自身的安全防護(hù)能力,對(duì)此,發(fā)行方需根據(jù)實(shí)際具體情況進(jìn)行綜合考量。

  基于HCE技術(shù)的軟件卡方案可降低NFC支付的門(mén)檻,減少NFC技術(shù)的推廣成本,已成為支付產(chǎn)業(yè)界的新熱點(diǎn),相信在卡組織和發(fā)卡機(jī)構(gòu)的創(chuàng)新推動(dòng)下,相關(guān)的移動(dòng)支付產(chǎn)品不久即將為持卡人廣泛使用。