保障客戶端運(yùn)行安全的裝置制造方法
【專利摘要】本發(fā)明實(shí)施例公開了一種保障客戶端運(yùn)行安全的裝置。該裝置包括安全部件、非安全操作系統(tǒng)、安全操作系統(tǒng)、運(yùn)行在非安全操作系統(tǒng)中的第一中間件和第二中間件代理,以及運(yùn)行在安全操作系統(tǒng)中的第二中間件;在非安全操作系統(tǒng)上安裝有客戶端應(yīng)用,客戶端應(yīng)用直接調(diào)用所述第一中間件,客戶端應(yīng)用通過第二中間件代理調(diào)用第二中間件;安全部件存儲(chǔ)有客戶端應(yīng)用中的敏感數(shù)據(jù);第一中間件用于在非安全操作系統(tǒng)中完成客戶端應(yīng)用中的一部分服務(wù)功能;第二中間件用于在安全操作系統(tǒng)中通過與安全部件進(jìn)行交互,完成客戶端應(yīng)用中的另一部分服務(wù)功能。根據(jù)本發(fā)明實(shí)施例,減小甚至避免由客戶端所完成的操作的安全隱患。
【專利說明】保障客戶端運(yùn)行安全的裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及嵌入式【技術(shù)領(lǐng)域】,特別是涉及保障客戶端運(yùn)行安全的裝置。
【背景技術(shù)】
[0002] 網(wǎng)上銀行系統(tǒng)或者電子財(cái)務(wù)系統(tǒng)等的應(yīng)用系統(tǒng)一般是由:服務(wù)端、中間網(wǎng)絡(luò)層以 及客戶端組成的,整個(gè)應(yīng)用系統(tǒng)的安全性需要由以上三個(gè)部分的運(yùn)行安全來保障。例如,在 網(wǎng)上銀行系統(tǒng)中,服務(wù)端以及中間網(wǎng)絡(luò)層是由銀行來保障其運(yùn)行安全的,而客戶端的運(yùn)行 安全則由一個(gè)網(wǎng)上銀行安全裝置來保障。
[0003] 目前,主流的網(wǎng)上銀行安全裝置為:網(wǎng)銀盾(也可以稱為USBKey,其外形看似一個(gè) 便攜式的U盤),網(wǎng)銀盾作為用戶身份認(rèn)證和交易簽名的終端,已經(jīng)被網(wǎng)上銀行和電子財(cái)務(wù) 等廣泛應(yīng)用于各種終端認(rèn)證產(chǎn)品。同樣,在除了網(wǎng)上銀行系統(tǒng)之外的其它應(yīng)用系統(tǒng)中,也存 在保障客戶端運(yùn)行安全的裝置。
[0004] 這些保障客戶端運(yùn)行安全的裝置中會(huì)集成有微處理器、存儲(chǔ)器和片上操作系統(tǒng) (COS, Chip On Sysetem),并構(gòu)成一個(gè)獨(dú)立的計(jì)算機(jī)系統(tǒng),具有獨(dú)立的數(shù)據(jù)處理能力。并且, 通過C0S的安全機(jī)制保障在該裝置內(nèi)的數(shù)據(jù)處理以及傳輸?shù)陌踩?br>
[0005] 由于這些保障客戶端運(yùn)行安全的裝置在外形上都比較小巧,因此,其片上操作系 統(tǒng)以及硬件的配置通常都不會(huì)太高。而受到配置方面的限制,通常只能將一些安全性要求 非常高的操作交給該裝置執(zhí)行,而將其余一些安全性要求相對(duì)比較低的操作交給客戶端執(zhí) 行,從而避免給該裝置帶來太大的工作壓力。
[0006] 但是,在實(shí)現(xiàn)本發(fā)明的過程中,本發(fā)明的發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問 題:由于客戶端運(yùn)行在一個(gè)開放的執(zhí)行環(huán)境(執(zhí)行環(huán)境包括操作系統(tǒng)部分以及相應(yīng)的硬件 部分)中,而開放的執(zhí)行環(huán)境本身是不安全、不可信的,因此,由客戶端完成的操作就會(huì)存 在非常大的安全隱患。例如,當(dāng)用戶在客戶端上輸入網(wǎng)銀盾的PIN碼以便客戶端提交給網(wǎng) 銀盾進(jìn)行驗(yàn)證時(shí),由于一個(gè)開放的執(zhí)行環(huán)境無法阻止鍵盤記錄等惡意軟件的攻擊,因此,很 有可能會(huì)出現(xiàn)PIN碼泄露。
【發(fā)明內(nèi)容】
[0007] 為了解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了保障客戶端運(yùn)行安全的裝置,以減 小甚至避免由客戶端所完成的操作的安全隱患。
[0008] 本發(fā)明實(shí)施例公開了如下技術(shù)方案:
[0009] -種保障客戶端運(yùn)行安全的裝置,包括:安全部件、非安全操作系統(tǒng)、安全操作系 統(tǒng)、運(yùn)行在所述非安全操作系統(tǒng)中的第一中間件和第二中間件代理,以及運(yùn)行在所述安全 操作系統(tǒng)中的第二中間件;其中,
[0010] 在所述非安全操作系統(tǒng)上安裝有客戶端應(yīng)用,所述客戶端應(yīng)用直接調(diào)用所述第一 中間件,所述客戶端應(yīng)用通過所述第二中間件代理調(diào)用所述第二中間件;
[0011] 所述安全部件用于實(shí)現(xiàn)所述裝置的信息安全;
[0012] 所述第一中間件用于在所述非安全操作系統(tǒng)中完成所述客戶端應(yīng)用中預(yù)先設(shè)定 的第一部分服務(wù)功能;
[0013] 所述第二中間件用于在所述安全操作系統(tǒng)中通過與所述安全部件進(jìn)行交互,完成 所述客戶端應(yīng)用中預(yù)先設(shè)定的第二部分服務(wù)功能。
[0014] 所述安全操作系統(tǒng)位于安全執(zhí)行環(huán)境中,所述非安全操作系統(tǒng)位于非安全執(zhí)行環(huán) 境中,所述安全執(zhí)行環(huán)境與所述非安全執(zhí)行環(huán)境之間通過硬件防火墻進(jìn)行隔離。
[0015] 所述安全執(zhí)行環(huán)境和所述非安全執(zhí)行環(huán)境共用相同的硬件系統(tǒng)。
[0016] 所述硬件系統(tǒng)為可信執(zhí)行環(huán)境TEE芯片硬件系統(tǒng)。
[0017] 所述安全執(zhí)行環(huán)境和所述非安全執(zhí)行環(huán)境之間通過安全監(jiān)視器進(jìn)行切換。
[0018] 所述第二中間件通過應(yīng)用程序接口 API與所述安全部件進(jìn)行交互。
[0019] 所述第二中間件至少包括輸入中間件、輸出中間件、身份認(rèn)證中間件、簽名中間件 和文件管理中間件。
[0020] 所述第二中間件代理至少包括:輸入中間件代理、輸出中間件代理、身份認(rèn)證中間 件代理、簽名中間件代理和文件管理中間件代理。
[0021] 所述安全部件包括片上操作系統(tǒng)C0S和安全元件SE芯片硬件系統(tǒng)。
[0022] 所述C0S至少包括輸入子系統(tǒng)、輸出子系統(tǒng)、身份認(rèn)證子系統(tǒng)、簽名子系統(tǒng)和文件 管理子系統(tǒng)。
[0023] 所述C0S還包括:生命周期子系統(tǒng),用于管理所述C0S的各個(gè)生命周期。
[0024] 由上述實(shí)施例可以看出,與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
[0025] 將保障客戶端運(yùn)行安全的裝置內(nèi)置在客戶端所在的設(shè)備中,也就是說,將客戶端 與保障客戶端運(yùn)行安全的裝置集成在同一個(gè)設(shè)備中。在該設(shè)備中,包含有兩個(gè)相互隔離的 操作系統(tǒng):安全操作系統(tǒng)和非安全操作系統(tǒng),該安全操作系統(tǒng)所在的安全執(zhí)行環(huán)境和該非 安全操作系統(tǒng)所在的非安全執(zhí)行環(huán)境共用同一個(gè)硬件系統(tǒng)。對(duì)于沒有安全性要求,或者安 全性要求非常低的操作,可以由非安全操作系統(tǒng)控制執(zhí)行。而對(duì)于安全性要求比較高的操 作,可以由安全執(zhí)行環(huán)境控制執(zhí)行。例如,PIN碼的輸入等操作。因此,可以減小甚至避免 由客戶端所完成的操作的安全隱患。
[0026] 另外,由于該安全操作系統(tǒng)所在的安全執(zhí)行環(huán)境和該非安全操作系統(tǒng)所在的非安 全執(zhí)行環(huán)境共用同一個(gè)硬件系統(tǒng),因此,也節(jié)省了成本、降低了復(fù)雜性和功耗。
[0027] 并且,將保障客戶端運(yùn)行安全的裝置內(nèi)置在客戶端所在的設(shè)備,還可以防止用戶 在業(yè)務(wù)執(zhí)行過程中意外將保障客戶端運(yùn)行安全的裝置拔出,保障業(yè)務(wù)的順利執(zhí)行。
【專利附圖】
【附圖說明】
[0028] 為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可 以根據(jù)這些附圖獲得其他的附圖。
[0029] 圖1為本發(fā)明提供的一種保障客戶端運(yùn)行安全的裝置的一個(gè)實(shí)施例的結(jié)構(gòu)圖;
[0030] 圖2為本發(fā)明提供的一種保障客戶端運(yùn)行安全的裝置的另一個(gè)實(shí)施例的結(jié)構(gòu)圖;
[0031] 圖3為本發(fā)明提供的一種保障客戶端運(yùn)行安全的裝置的另一個(gè)實(shí)施例的結(jié)構(gòu)圖;
[0032] 圖4為通過本發(fā)明的保證客戶端運(yùn)行安全的裝置實(shí)現(xiàn)簽名操作的方法流程圖。
【具體實(shí)施方式】
[0033] 本發(fā)明實(shí)施例提供了一種保障客戶端運(yùn)行安全的裝置。本發(fā)明技術(shù)方案的核心在 于,為保障客戶端運(yùn)行安全的裝置提供更強(qiáng)大的硬件以及軟件性能,將保障客戶端運(yùn)行安 全的裝置內(nèi)置在客戶端所在的設(shè)備中,也就是說,將客戶端與保障客戶端運(yùn)行安全的裝置 集成在同一個(gè)設(shè)備中。該集成后的設(shè)備即為本發(fā)明提出的新型的保障客戶端運(yùn)行安全的裝 置。該裝置可以為PC機(jī),也可以為各種移動(dòng)終端(包括手機(jī)和平板電腦等)。其中,在該裝 置中,隔離了兩個(gè)平行的執(zhí)行環(huán)境:非安全執(zhí)行環(huán)境以及安全執(zhí)行環(huán)境。對(duì)于沒有安全性要 求,或者安全性要求非常低的操作,可以放在非安全執(zhí)行環(huán)境中執(zhí)行。而對(duì)于安全性要求比 較高的操作,可以放在安全執(zhí)行環(huán)境中執(zhí)行。
[0034]目前,"安全操作系統(tǒng)"(也可以稱為可信操作系統(tǒng))是指計(jì)算機(jī)信息系統(tǒng)在自主 訪問控制、強(qiáng)制訪問控制、標(biāo)記、身份鑒別、客體重用、審計(jì)、數(shù)據(jù)完整性、隱蔽信道分析、可 信路徑和可信恢復(fù)等十個(gè)方面滿足相應(yīng)的安全技術(shù)要求。"安全操作系統(tǒng)"的主要特征是 :
[0035] 1、最小特權(quán)原則,即每個(gè)特權(quán)用戶只擁有能進(jìn)行他工作的權(quán)力。
[0036] 2、實(shí)現(xiàn)自主訪問控制和強(qiáng)制訪問控制,強(qiáng)制訪問控制包括保密性訪問控制和完整 性訪問控制。
[0037] 3、安全審計(jì)。
[0038] 4、安全域隔離。
[0039] 只要有了這些最底層的安全功能,各種混為"應(yīng)用軟件"的病毒、木馬程序、網(wǎng)絡(luò)入 侵和人為非法操作才能被真正抵制,因?yàn)樗鼈冞`背了操作系統(tǒng)的安全規(guī)則,也就失去了運(yùn) 行的基礎(chǔ)。
[0040] 安全執(zhí)行環(huán)境,例如,可信執(zhí)行環(huán)境(TEE,Trusted Execution Environment),是 指通過在采用安全設(shè)計(jì)的終端設(shè)備上運(yùn)行經(jīng)過認(rèn)證的安全操作系統(tǒng),從而在現(xiàn)有的終端設(shè) 備上提供一個(gè)可以信賴的應(yīng)用執(zhí)行環(huán)境。根據(jù)需要,運(yùn)行TEE的設(shè)備可以達(dá)到EAL2、3或者 更高級(jí)別。上述安全設(shè)計(jì)包括采用SoC(Sy Stem On Chip,片上操作系統(tǒng))芯片以及電路板 布局規(guī)則等方面。在SoC芯片方面,目前移動(dòng)終端上的應(yīng)用處理器核心多使用ARM公司的 Cortex系列芯片,ARM公司在Cortex處理器上實(shí)現(xiàn)了 TrustZone技術(shù)。
[0041] TrustZone技術(shù)使SoC芯片具備了正常和安全兩種狀態(tài),在正常狀態(tài)下,可以運(yùn)行 Android等非安全操作系統(tǒng),并執(zhí)行相應(yīng)的應(yīng)用程序。在安全狀態(tài)下,可以運(yùn)行安全操作系 統(tǒng)(Trusted 0S),并執(zhí)行某些安全性要求較高的操作和服務(wù),如用戶密碼輸入、交易信息顯 示、與遠(yuǎn)程服務(wù)器的安全會(huì)話建立、加解密數(shù)據(jù)、保存用戶敏感信息等操作。當(dāng)處于安全狀 態(tài)時(shí),非安全操作系統(tǒng)下的各應(yīng)用程序?qū)φ麄€(gè)終端設(shè)備沒有控制權(quán),僅有安全操作系統(tǒng)下 的相應(yīng)的應(yīng)用程序可以訪問終端設(shè)備,如,終端設(shè)備上的顯示器、鍵盤、SD卡和NFC(近距離 無線通訊,Near Field Communication)設(shè)備等。
[0042] 安全操作系統(tǒng)可以抵制各種目前已知的遠(yuǎn)程攻擊和本地軟件攻擊,部分硬件攻 擊,不能抵御智能卡具有的各種防篡改硬件攻擊。
[0043] 另外,在軟件方面,應(yīng)用程序可分為兩個(gè)部分,一個(gè)部分是運(yùn)行在Android等非安 全操作系統(tǒng)下的應(yīng)用程序,這些應(yīng)用程序?yàn)橛脩籼峁┝擞押玫慕缑?,另一個(gè)部分是運(yùn)行在 安全操作系統(tǒng)中的安全服務(wù),這些服務(wù)將執(zhí)行安全性較高的操作,如,用戶信息輸入和交易 內(nèi)容確認(rèn)等。
[0044] 為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明 實(shí)施例進(jìn)行詳細(xì)描述。
[0045] 請(qǐng)參閱圖1,其為本發(fā)明提供的一種保障客戶端運(yùn)行安全的裝置的一個(gè)實(shí)施例的 結(jié)構(gòu)圖,該裝置10包括:安全部件11、非安全操作系統(tǒng)12、安全操作系統(tǒng)13、運(yùn)行在非安全 操作系統(tǒng)12中的第一中間件121和第二中間件代理122,以及運(yùn)行在安全操作系統(tǒng)13中的 第二中間件131。其中,
[0046] 在非安全操作系統(tǒng)12上安裝有客戶端應(yīng)用20,客戶端應(yīng)用20直接調(diào)用運(yùn)行在非 安全操作系統(tǒng)12中的第一中間件121,客戶端應(yīng)用20通過運(yùn)行在非安全操作系統(tǒng)12中的 第二中間件代理122調(diào)用運(yùn)行在安全操作系統(tǒng)13中的第二中間件131。
[0047] 安全部件11用于實(shí)現(xiàn)所述裝置的信息安全。
[0048] 第一中間件121用于在非安全操作系統(tǒng)12中完成客戶端應(yīng)用20中預(yù)先設(shè)定的第 一部分服務(wù)功能。第二中間件131用于在安全操作系統(tǒng)13中通過與安全部件11進(jìn)行交互, 完成客戶端應(yīng)用中預(yù)先設(shè)定的第二部分服務(wù)功能。例如,當(dāng)該保障客戶端運(yùn)行安全的裝置 10運(yùn)用于網(wǎng)上銀行應(yīng)用時(shí),安全部件11存儲(chǔ)的敏感數(shù)據(jù)21包括但不限于PIN碼和交易密 鑰。
[0049] 預(yù)先設(shè)定的第一部分服務(wù)功能即為預(yù)先設(shè)定的一些安全性低的服務(wù)功能,即,第 一中間件完成客戶端應(yīng)用中一些安全性低的服務(wù)功能。而預(yù)先設(shè)定的第二部分服務(wù)功能即 為預(yù)先設(shè)定的一些安全性高的服務(wù)功能,即,第二中間件完成客戶端應(yīng)用中一些安全性高 的服務(wù)功能。例如,安全性高的服務(wù)功能包括但不限于:用戶信息輸入和交易簽名等。
[0050] 安全部件11具體可以為一個(gè)USBKey模塊(存儲(chǔ)敏感數(shù)據(jù)),第二中間件在安全操 作系統(tǒng)中通過與該USBKey模塊進(jìn)行交互,可以實(shí)現(xiàn)交易簽名和加解密等數(shù)學(xué)運(yùn)算。
[0051] 其中,中間件在操作系統(tǒng)、網(wǎng)絡(luò)和數(shù)據(jù)庫的上層,應(yīng)用程序的下層,總的作用是為 處于自己上層的應(yīng)用程序提供運(yùn)行與開發(fā)的環(huán)境,幫助用戶靈活、高效地開發(fā)和集成復(fù)雜 的應(yīng)用程序。
[0052] 在本發(fā)明的一個(gè)優(yōu)選實(shí)施方式中,如圖2所示,安全操作系統(tǒng)12位于一個(gè)安全執(zhí) 行環(huán)境中,非安全操作系統(tǒng)13位于一個(gè)非安全執(zhí)行環(huán)境中,安全執(zhí)行環(huán)境與非安全執(zhí)行環(huán) 境中間通過硬件防火墻進(jìn)行隔離。
[0053] 在本發(fā)明的另一個(gè)優(yōu)選實(shí)施方式中,所述安全執(zhí)行環(huán)境和所述非安全執(zhí)行環(huán) 境共用相同的硬件系統(tǒng)。例如,該硬件系統(tǒng)為可信執(zhí)行環(huán)境(TEE,Trusted Execution Environment)芯片硬件系統(tǒng)。
[0054] 在本發(fā)明的另一個(gè)優(yōu)選實(shí)施方式中,所述安全執(zhí)行環(huán)境和所述非安全執(zhí)行環(huán)境之 間通過安全監(jiān)視器進(jìn)行切換。
[0055] 其中可以通過內(nèi)存屬性實(shí)現(xiàn)安全執(zhí)行環(huán)境與非安全執(zhí)行環(huán)境中的兩個(gè)物理地址 空間之間的切換。即,安全地址空間與非安全地址空間,非安全執(zhí)行環(huán)境只能訪問非安全地 址空間,而不能訪問安全地址空間。
[0056] 在本發(fā)明的另一個(gè)優(yōu)選實(shí)施方式中,如圖3所示,第二中間件131通過應(yīng)用程序接 口(API,Application Programming Interface)與安全部件 11 進(jìn)行交互。
[0057] 在本發(fā)明的技術(shù)方案中,安全操作系統(tǒng)為第二中間件提供了一個(gè)安全的運(yùn)行環(huán) 境,第二中間件是一種安全可信的中間件。因此,可以將客戶端應(yīng)用中與安全性要求非常高 的操作相關(guān)的中間件作為第二中間件,使其運(yùn)行在安全操作系統(tǒng)中,而將客戶端應(yīng)用中與 安全性要求比較低的操作相關(guān)的中間件作為第一中間件,使其運(yùn)行在非安全操作系統(tǒng)中。 當(dāng)然,也可以將客戶端應(yīng)用中與所有操作相關(guān)的各中間件全部作為第二中間件。
[0058] 在本發(fā)明的一個(gè)優(yōu)選實(shí)施方式中,第二中間件至少包括:輸入中間件、輸出中間 件、身份認(rèn)證中間件、簽名中間件和文件管理中間件。
[0059] 例如,輸入中間件可以為鍵盤或者觸控設(shè)備的中間件,將輸入中間件作為第二中 間件運(yùn)行在安全操作系統(tǒng)中,可以防止鍵盤記錄等一些惡意軟件的攻擊,避免PIN碼泄露 等問題的出現(xiàn),保證了安全性。
[0060] 為了實(shí)現(xiàn)在安全操作系統(tǒng)與非安全操作系統(tǒng)之間實(shí)現(xiàn)安全隔離,從而保證運(yùn)行在 安全操作系統(tǒng)中的各第二中間件的安全性,位于非安全操作系統(tǒng)的客戶端應(yīng)用必須通過被 授權(quán)的代理(即,第二中間件代理)調(diào)用第二中間件??梢岳斫獾?,第二中間件代理相當(dāng)于 非安全操作系統(tǒng)與安全操作系統(tǒng)之間的安全通道。
[0061] 與第二中間件相對(duì)應(yīng)的,在本發(fā)明的另一個(gè)優(yōu)選實(shí)施方式中,第二中間件代理至 少包括:輸入中間件代理、輸出中間件代理、身份認(rèn)證中間件代理、簽名中間件代理和文件 管理中間件代理。
[0062] 在本發(fā)明的另一個(gè)優(yōu)選實(shí)施方式中,安全部件11包括C0S(片上操作系統(tǒng),Chip Operating System)和 SE(安全兀件,Secure Element)芯片硬件系統(tǒng)。
[0063] 其中,通過C0S的安全機(jī)制可以保障安全部件11內(nèi)數(shù)據(jù)操作、數(shù)據(jù)傳輸?shù)陌踩?。?全部件11具有很高的安全級(jí)別,所有安全性要求比較高的相關(guān)操作都可以在安全操作系 統(tǒng)13和安全部件11中執(zhí)行,安全操作系統(tǒng)13提供了較高的安全運(yùn)算性能,安全部件11提 供了較高的安全存儲(chǔ)以及運(yùn)算性能。
[0064]為了配合與安全操作系統(tǒng)中的第二中間件完成安全性要求比較高的操作,在本發(fā) 明的另一個(gè)優(yōu)選實(shí)施方式中,與第二中間件相對(duì)應(yīng)的,cos至少包括輸入子系統(tǒng)、輸出子系 統(tǒng)、身份認(rèn)證子系統(tǒng)、簽名子系統(tǒng)和文件管理子系統(tǒng)。
[0065] 可以理解的,第二中間件中的輸入中間件通過與C0S中的輸入子系統(tǒng)進(jìn)行交互, 完成客戶端應(yīng)用中的輸入功能。第二中間件中的輸出中間件通過與cos中的輸出子系統(tǒng)進(jìn) 行交互,完成客戶端應(yīng)用中的輸出功能。第二中間件中的身份認(rèn)證中間件通過與cos中的 身份認(rèn)證子系統(tǒng)進(jìn)行交互,完成客戶端應(yīng)用中的身份認(rèn)證功能。第二中間件中的簽名中間 件通過與cos中的簽名子系統(tǒng)進(jìn)行交互,完成客戶端應(yīng)用中的簽名功能。第二中間件中的 文件管理中間件通過與cos中的文件管理子系統(tǒng)進(jìn)行交互,完成客戶端應(yīng)用中的文件管理 功能。并且,由于是由位于安全操作系統(tǒng)中的第二中間件發(fā)起與安全部件中的cos建立通 信,所有的操作都是在安全操作系統(tǒng)中完成的,因此,保障了操作的高度安全性。
[0066] 在本發(fā)明的另一優(yōu)選實(shí)施方式中,上述C0S還包括生命周期子系統(tǒng),用于管理所 述cos的各個(gè)生命周期。
[0067] 例如,C0S的各個(gè)生命周期包括但不限于開發(fā)和生產(chǎn)階段。
[0068] 由上述實(shí)施例可以看出,與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
[0069] 將保障客戶端運(yùn)行安全的裝置內(nèi)置在客戶端所在的設(shè)備中,也就是說,將客戶端 與保障客戶端運(yùn)行安全的裝置集成在同一個(gè)設(shè)備中。在該設(shè)備中,包含有兩個(gè)相互隔離的 操作系統(tǒng):安全操作系統(tǒng)和非安全操作系統(tǒng),該安全操作系統(tǒng)所在的安全執(zhí)行環(huán)境和該非 安全操作系統(tǒng)所在的非安全執(zhí)行環(huán)境共用同一個(gè)硬件系統(tǒng)。對(duì)于沒有安全性要求,或者安 全性要求非常低的操作,可以由非安全操作系統(tǒng)控制執(zhí)行。而對(duì)于安全性要求比較高的操 作,可以由安全執(zhí)行環(huán)境控制執(zhí)行。例如,PIN碼的輸入等操作。因此,可以減小甚至避免 由客戶端所完成的操作的安全隱患。
[0070] 另外,由于該安全操作系統(tǒng)所在的安全執(zhí)行環(huán)境和該非安全操作系統(tǒng)所在的非安 全執(zhí)行環(huán)境共用同一個(gè)硬件系統(tǒng),因此,也節(jié)省了成本、降低了復(fù)雜性和功耗。
[0071] 并且,將保障客戶端運(yùn)行安全的裝置內(nèi)置在客戶端所在的設(shè)備,還可以防止用戶 在業(yè)務(wù)執(zhí)行過程中意外將保障客戶端運(yùn)行安全的裝置拔出,保障業(yè)務(wù)的順利執(zhí)行。
[0072] 在網(wǎng)上銀行系統(tǒng)中,對(duì)于網(wǎng)上銀行的客戶端應(yīng)用來說,在其與服務(wù)端之間完成的 交易操作中,最重要的操作之一就是簽名操作,并且,該操作對(duì)于安全性要求也非常高。下 面以交易簽名操作為例,來說明在本發(fā)明的保證客戶端運(yùn)行安全的裝置中,如何實(shí)現(xiàn)一次 簽名操作。請(qǐng)參閱圖4所示,其為通過本發(fā)明的保證客戶端運(yùn)行安全的裝置實(shí)現(xiàn)簽名操作 的方法流程圖,具體包括如下步驟:
[0073] 步驟401 :在非安全操作系統(tǒng)中,啟動(dòng)網(wǎng)上銀行客戶端應(yīng)用。
[0074] 步驟402 :網(wǎng)上銀行客戶端應(yīng)用調(diào)用非安全操作系統(tǒng)中的第一中間件。
[0075] 步驟403 :網(wǎng)上銀行客戶端應(yīng)用調(diào)用非安全操作系統(tǒng)中的第二中間件代理,以便 通過第二中間件代理調(diào)用安全操作系統(tǒng)中的第二中間件。
[0076] 步驟404 :安全監(jiān)視器監(jiān)視將操作系統(tǒng)從非安全操作系統(tǒng)切換至安全操作系統(tǒng)。
[0077] 步驟405 :在安全操作系統(tǒng)中,安全操作系統(tǒng)控制輸入中間件接收用戶輸入的PIN 碼。
[0078] 步驟406 :安全操作系統(tǒng)建立其與安全部件之間的安全通道,并通過安全通道向 安全部件發(fā)送請(qǐng)求驗(yàn)證PIN碼的請(qǐng)求消息。
[0079] 其中,在該請(qǐng)求消息中攜帶有PIN碼。
[0080] 步驟407 :安全部件響應(yīng)于請(qǐng)求消息,對(duì)PIN碼進(jìn)行驗(yàn)證,并在驗(yàn)證通過后,通過安 全通道向安全操作系統(tǒng)發(fā)送PIN驗(yàn)證通過的響應(yīng)消息。
[0081] 步驟408 :安全操作系統(tǒng)控制簽名中間件進(jìn)行交易協(xié)商以及交易數(shù)據(jù)的校驗(yàn)。
[0082] 例如,交易數(shù)據(jù)的校驗(yàn)可以包括校驗(yàn)交易數(shù)據(jù)的總長度與交易數(shù)據(jù)總報(bào)數(shù)是否一 致,校驗(yàn)交易數(shù)據(jù)的格式是否滿足要求以及校驗(yàn)交易數(shù)據(jù)是否完整。
[0083] 步驟409 :交易協(xié)商以及交易數(shù)據(jù)驗(yàn)證通過后,安全操作系統(tǒng)控制簽名中間件將 交易數(shù)據(jù)發(fā)送給安全部件。
[0084] 與此同時(shí),安全操作系統(tǒng)還可以控制輸出中間件顯示交易金額及相關(guān)信息。
[0085] 步驟410 :安全部件對(duì)交易數(shù)據(jù)進(jìn)行交易簽名,并將交易簽名數(shù)據(jù)通過簽名中間 件發(fā)送給安全操作系統(tǒng)。
[0086] 步驟411 :安全操作系統(tǒng)控制輸出中間件顯示交易簽名結(jié)果。
[0087] 步驟412 :安全操作系統(tǒng)控制輸入中間件接收用戶輸入的交易確認(rèn)按鍵碼。
[0088] 步驟413 :安全監(jiān)視器將操作系統(tǒng)從安全操作系統(tǒng)切換回非安全操作系統(tǒng)。
[0089] 步驟414 :非安全操作系統(tǒng)將交易簽名結(jié)果返回給網(wǎng)上銀行客戶端應(yīng)用。
[0090] 所述領(lǐng)域的技術(shù)人員可以清楚地了解到,為了描述的方便和簡潔,上述描述的系 統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過程,在此不再贅述。
[0091] 在本發(fā)明所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以 通過其它的方式實(shí)現(xiàn)。例如,以上所描述到的裝置實(shí)施例僅僅是示意性的,例如,所述單元 的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組 件可以結(jié)合或可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或 討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦 合或通信連接,可以是電性、機(jī)械或其它的形式。
[0092] 所述作為分離部件說明的單元可以是或者也可以是物理上分開的,作為單元顯示 的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng) 絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目 的。
[0093] 另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以 是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單 元既可以采用硬件的形式實(shí)現(xiàn),可以采用軟件功能單元的形式實(shí)現(xiàn)。
[0094] 需要說明的是,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部 分流程,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī) 可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的 存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(Read-Only Memory, ROM)或隨機(jī)存儲(chǔ)記憶體 (Random Access Memory,RAM)等。
[0095] 以上對(duì)本發(fā)明所提供的一種保障客戶端運(yùn)行安全的裝置進(jìn)行了詳細(xì)介紹,本文中 應(yīng)用了具體實(shí)施例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫 助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思 想,在【具體實(shí)施方式】及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì) 本發(fā)明的限制。
【權(quán)利要求】
1. 一種保障客戶端運(yùn)行安全的裝置,其特征在于,包括:安全部件、非安全操作系統(tǒng)、 安全操作系統(tǒng)、運(yùn)行在所述非安全操作系統(tǒng)中的第一中間件和第二中間件代理,以及運(yùn)行 在所述安全操作系統(tǒng)中的第二中間件;其中, 在所述非安全操作系統(tǒng)上安裝有客戶端應(yīng)用,所述客戶端應(yīng)用直接調(diào)用所述第一中間 件,所述客戶端應(yīng)用通過所述第二中間件代理調(diào)用所述第二中間件; 所述安全部件用于實(shí)現(xiàn)所述裝置的信息安全; 所述第一中間件用于在所述非安全操作系統(tǒng)中完成所述客戶端應(yīng)用中預(yù)先設(shè)定的第 一部分服務(wù)功能; 所述第二中間件用于在所述安全操作系統(tǒng)中通過與所述安全部件進(jìn)行交互,完成所述 客戶端應(yīng)用中預(yù)先設(shè)定的第二部分服務(wù)功能。
2. 根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述安全操作系統(tǒng)位于安全執(zhí)行環(huán)境中, 所述非安全操作系統(tǒng)位于非安全執(zhí)行環(huán)境中,所述安全執(zhí)行環(huán)境與所述非安全執(zhí)行環(huán)境之 間通過硬件防火墻進(jìn)行隔離。
3. 根據(jù)權(quán)利要求2所述的裝置,其特征在于,所述安全執(zhí)行環(huán)境和所述非安全執(zhí)行環(huán) 境共用相同的硬件系統(tǒng)。
4. 根據(jù)權(quán)利要求3所述的裝置,其特征在于,所述硬件系統(tǒng)為可信執(zhí)行環(huán)境TEE芯片硬 件系統(tǒng)。
5. 根據(jù)權(quán)利要求2所述的裝置,其特征在于,所述安全執(zhí)行環(huán)境和所述非安全執(zhí)行環(huán) 境之間通過安全監(jiān)視器進(jìn)行切換。
6. 根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述第二中間件通過應(yīng)用程序接口 API與 所述安全部件進(jìn)行交互。
7. 根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述第二中間件至少包括輸入中間件、輸 出中間件、身份認(rèn)證中間件、簽名中間件和文件管理中間件。
8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述第二中間件代理至少包括:輸入中間 件代理、輸出中間件代理、身份認(rèn)證中間件代理、簽名中間件代理和文件管理中間件代理。
9. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述安全部件包括片上操作系統(tǒng)COS和安 全元件SE芯片硬件系統(tǒng)。
10. 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述COS至少包括輸入子系統(tǒng)、輸出子系 統(tǒng)、身份認(rèn)證子系統(tǒng)、簽名子系統(tǒng)和文件管理子系統(tǒng)。
11. 根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述COS還包括:生命周期子系統(tǒng),用 于管理所述COS的各個(gè)生命周期。
【文檔編號(hào)】G06F21/53GK104102876SQ201410342446
【公開日】2014年10月15日 申請(qǐng)日期:2014年7月17日 優(yōu)先權(quán)日:2014年7月17日
【發(fā)明者】江先 申請(qǐng)人:北京握奇智能科技有限公司