本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是涉及一種可信執(zhí)行環(huán)境的身份驗(yàn)證方法、裝置及終端。
背景技術(shù):
可信執(zhí)行環(huán)境(TEE)是Global Platform(GP)提出的概念。
針對(duì)移動(dòng)設(shè)備的開放環(huán)境,安全問(wèn)題越來(lái)越受到關(guān)注,不僅僅是終端用戶,還包括服務(wù)提供者、移動(dòng)運(yùn)營(yíng)商,以及芯片廠商。TEE是與設(shè)備上的普通執(zhí)行環(huán)境(Rich OS,通常指Android等)并存的運(yùn)行環(huán)境,并且給Rich OS提供安全服務(wù)。它具有其自身的執(zhí)行空間,比Rich OS的安全級(jí)別更高。
TEE所能訪問(wèn)的軟硬件資源是與普通執(zhí)行環(huán)境分離的。TEE提供了授權(quán)安全軟件(可信應(yīng)用,Trusted Application,TA)的安全執(zhí)行環(huán)境,同時(shí)也保護(hù)TA的資源和數(shù)據(jù)的保密性,完整性和訪問(wèn)權(quán)限。為了保證TEE本身的可信根,TEE在安全啟動(dòng)過(guò)程中是要通過(guò)驗(yàn)證并且與普通執(zhí)行環(huán)境隔離。在TEE中,每個(gè)TA是相互獨(dú)立的,而且不能在未授權(quán)的情況下不能互相訪問(wèn)。
TEE現(xiàn)有方案在很多方面還不成熟,主要側(cè)重于解決如何實(shí)現(xiàn)普通執(zhí)行環(huán)境與TEE的通信機(jī)制、高效的內(nèi)存共享機(jī)制,以及多核架構(gòu)帶來(lái)的問(wèn)題。其安全性主要通過(guò)普通執(zhí)行環(huán)境與TEE執(zhí)行空間和資源分離來(lái)實(shí)現(xiàn)。而且,在TEE中運(yùn)行的TA經(jīng)過(guò)嚴(yán)格審查,不帶有惡意代碼,需要相應(yīng)機(jī)構(gòu)的認(rèn)證和簽名才能部署到設(shè)備,以此保證TEE的安全性。
但是,即使TA本身沒(méi)有漏洞,可以正確執(zhí)行,由于現(xiàn)有TEE機(jī)制中尚未定義如何約束普通執(zhí)行環(huán)境中的應(yīng)用通過(guò)Client API訪問(wèn)TA,防止未授權(quán)的普通執(zhí)行環(huán)境中應(yīng)用濫用Client API,導(dǎo)致TA執(zhí)行狀態(tài)和結(jié)果被普通執(zhí)行環(huán)境中的非法應(yīng)用篡改,并影響到普通執(zhí)行環(huán)境中合法應(yīng)用的正確邏輯。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種可信執(zhí)行環(huán)境的身份驗(yàn)證方法、裝置及終端,解決了現(xiàn)有技術(shù)中未授權(quán)的普通執(zhí)行環(huán)境中應(yīng)用濫用Client API,破壞TA正確邏輯的問(wèn)題。該方法不需要在普通執(zhí)行環(huán)境的應(yīng)用中增加額外邏輯,就可實(shí)現(xiàn)身份驗(yàn)證;不需要在TA中增加額外邏輯,就可實(shí)現(xiàn)身份驗(yàn)證,從而保證了TEE的安全性。
為了達(dá)到上述目的,本發(fā)明實(shí)施例提供了一種可信執(zhí)行環(huán)境的身份驗(yàn)證方法,包括:
獲取用于唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí);
獲取終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則;
若所述標(biāo)識(shí)在終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則中,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法;
產(chǎn)生允許所述終端普通執(zhí)行環(huán)境中的應(yīng)用訪問(wèn)終端可信應(yīng)用TA的指令,使所述應(yīng)用根據(jù)所述指令訪問(wèn)所述可信應(yīng)用TA。
其中,所述獲取用于唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí)的步驟包括:
獲取終端中的軟件包管理器在普通執(zhí)行環(huán)境中的應(yīng)用安裝時(shí)的應(yīng)用安裝包;
解析所述應(yīng)用安裝包,獲取所述應(yīng)用身份的標(biāo)識(shí)。
其中,所述標(biāo)識(shí)為應(yīng)用證書哈希值。
其中,所述獲取可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則的步驟包括:
獲取終端生產(chǎn)或安裝可信應(yīng)用TA時(shí),預(yù)置或下載在可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則。
其中,所述身份驗(yàn)證規(guī)則中包括:允許訪問(wèn)可信應(yīng)用TA的普通執(zhí)行環(huán)境中的應(yīng)用的標(biāo)識(shí)和可信應(yīng)用通用唯一識(shí)別碼TA UUID。
本發(fā)明實(shí)施例還提供一種可信執(zhí)行環(huán)境的身份驗(yàn)證裝置,包括:
第一獲取模塊,用于獲取用于唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí);
第二獲取模塊,用于獲取終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則;
確定模塊,用于判斷所述標(biāo)識(shí)在終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則中,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法;
指令產(chǎn)生模塊,用于產(chǎn)生允許所述終端普通執(zhí)行環(huán)境中的應(yīng)用訪問(wèn)移動(dòng)設(shè)備可信應(yīng)用TA的指令,使所述應(yīng)用根據(jù)所述指令訪問(wèn)所述可信應(yīng)用TA。
其中,所述第一獲取模塊包括:
第一獲取子模塊,用于獲取終端中的軟件包管理器在普通執(zhí)行環(huán)境中的應(yīng)用安裝時(shí)的應(yīng)用安裝包;
解析模塊,用于解析所述應(yīng)用安裝包,獲取所述應(yīng)用身份的標(biāo)識(shí)。
其中,所述第二獲取模塊具體用于獲取終端生產(chǎn)或安裝可信應(yīng)用TA時(shí),預(yù)置或下載在可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則。
其中,所述身份驗(yàn)證規(guī)則中包括:允許訪問(wèn)可信應(yīng)用TA的普通執(zhí)行環(huán)境中的應(yīng)用的標(biāo)識(shí)和可信應(yīng)用通用唯一識(shí)別碼TA UUID。
本發(fā)明實(shí)施例還提供一種終端,包括如上述實(shí)施例所述的可信執(zhí)行環(huán)境的身份驗(yàn)證裝置。
本發(fā)明的上述技術(shù)方案至少具有如下有益效果:
本發(fā)明實(shí)施例的可信執(zhí)行環(huán)境的身份驗(yàn)證方法、裝置及終端中,利用唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí)及可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法,且不需要在普通執(zhí)行環(huán)境的應(yīng)用中增加額外邏輯,不需要在TA中增加額外邏輯,即可實(shí)現(xiàn)身份驗(yàn)證。從而防止未授權(quán)的普通執(zhí)行環(huán)境中應(yīng)用濫用Client API,破壞TA正確邏輯,保證了TEE的安全性。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例可信執(zhí)行環(huán)境的身份驗(yàn)證方法的基本步驟示意圖;
圖2為本發(fā)明實(shí)施例可信執(zhí)行環(huán)境的身份驗(yàn)證裝置的組成結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明要解決的技術(shù)問(wèn)題、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖及具體實(shí)施例進(jìn)行詳細(xì)描述。
本發(fā)明針對(duì)現(xiàn)有技術(shù)中終端未授權(quán)的普通執(zhí)行環(huán)境中應(yīng)用濫用Client API,破壞TA正確邏輯的問(wèn)題,提供了一種可信執(zhí)行環(huán)境的身份驗(yàn)證方法、裝置及終端,用唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí)及可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法,且不需要在普通執(zhí)行環(huán)境的應(yīng)用中增加額外邏輯,不需要在TA中增加額外邏輯,即可實(shí)現(xiàn)身份驗(yàn)證。從而防止未授權(quán)的普通執(zhí)行環(huán)境中應(yīng)用濫用Client API,破壞TA正確邏輯,保證了TEE的安全性。
如圖1所示,本發(fā)明實(shí)施例提供一種可信執(zhí)行環(huán)境的身份驗(yàn)證方法,包括:
步驟11,獲取用于唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí);
步驟12,獲取終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則;
步驟13,若所述標(biāo)識(shí)在終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則中,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法;
步驟14,產(chǎn)生允許所述終端普通執(zhí)行環(huán)境中的應(yīng)用訪問(wèn)終端可信應(yīng)用TA的指令,使所述應(yīng)用根據(jù)所述指令訪問(wèn)所述可信應(yīng)用TA。
本發(fā)明實(shí)施例的可信執(zhí)行環(huán)境的身份驗(yàn)證方法及裝置中,利用唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí)及可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法,且不需要在普通執(zhí)行環(huán)境的應(yīng)用中增加額外邏輯,不需要在TA中增加額外邏輯,即可實(shí)現(xiàn)身份驗(yàn)證。從而防止未授權(quán)的普通執(zhí)行環(huán)境中應(yīng)用濫用Client API,破壞TA正確邏輯,保證了TEE的安全性。
本發(fā)明的上述實(shí)施例中,所述可信應(yīng)用TA包括:支付TA、數(shù)字版權(quán)管理TA、企業(yè)TA。
進(jìn)一步的,本發(fā)明的上述實(shí)施例中提供的從終端獲取用于唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí)的方法中,步驟11可以包括:
步驟111,獲取終端中的軟件包管理器在普通執(zhí)行環(huán)境中的應(yīng)用安裝時(shí)的應(yīng)用安裝包;
步驟112,解析所述應(yīng)用安裝包,獲取所述應(yīng)用身份的標(biāo)識(shí)。
具體的,步驟112中的應(yīng)用身份的標(biāo)識(shí)為應(yīng)用證書SHA-1哈希值。
進(jìn)一步的,本發(fā)明的實(shí)施例中提供的獲取終端可信執(zhí)行環(huán)境TEE中的身 份驗(yàn)證規(guī)則的方法中,步驟12可以包括:
步驟121,獲取終端生產(chǎn)或安裝可信應(yīng)用TA時(shí),預(yù)置或下載在可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則。
具體的,步驟121中的身份驗(yàn)證規(guī)則是指:將身份驗(yàn)證規(guī)則信息數(shù)據(jù)庫(kù)中對(duì)應(yīng)TA的身份驗(yàn)證規(guī)則,預(yù)置或下載到TEE中的身份驗(yàn)證規(guī)則。
該身份驗(yàn)證規(guī)則中包括:允許訪問(wèn)可信應(yīng)用TA的普通執(zhí)行環(huán)境中的應(yīng)用的標(biāo)識(shí)和可信應(yīng)用通用唯一識(shí)別碼TA UUID。
下面通過(guò)Android手機(jī)支付應(yīng)用這一具體實(shí)施來(lái)更清楚的描述本申請(qǐng)中可信執(zhí)行環(huán)境的身份驗(yàn)證方法:
當(dāng)可信執(zhí)行環(huán)境TEE中不存在身份驗(yàn)證規(guī)則,普通執(zhí)行環(huán)境中不存在唯一標(biāo)識(shí)終端的應(yīng)用身份的標(biāo)識(shí)時(shí),惡意軟件可以通過(guò)Client API訪問(wèn)支付TA,影響普通執(zhí)行環(huán)境中合法支付應(yīng)用的正確邏輯。
當(dāng)可信執(zhí)行環(huán)境TEE中存在身份驗(yàn)證規(guī)則,普通執(zhí)行環(huán)境中存在唯一標(biāo)識(shí)終端的應(yīng)用身份的標(biāo)識(shí)時(shí),惡意軟件試圖通過(guò)Client API訪問(wèn)支付TA前,需要經(jīng)過(guò)普通執(zhí)行環(huán)境中應(yīng)用身份的標(biāo)識(shí)的檢查,因惡意軟件應(yīng)用證書哈希值不在可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則中,因此普通執(zhí)行環(huán)境中的信令產(chǎn)生模塊不允許惡意軟件通過(guò)Client API訪問(wèn)支付TA。
當(dāng)經(jīng)過(guò)授權(quán)的支付應(yīng)用試圖通過(guò)Client API訪問(wèn)支付TA前,也需要經(jīng)過(guò)普通執(zhí)行環(huán)境中應(yīng)用身份的標(biāo)識(shí)的檢查,因授權(quán)的支付應(yīng)用TA證書哈希值存在于可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則,因此普通執(zhí)行環(huán)境中的指令產(chǎn)生模塊允許經(jīng)過(guò)授權(quán)的支付應(yīng)用通過(guò)Client API訪問(wèn)支付TA。
本發(fā)明的上述方法,利用唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身份的標(biāo)識(shí)及可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法,且不需要在普通執(zhí)行環(huán)境的應(yīng)用中增加額外邏輯,不需要在TA中增加額外邏輯,即可實(shí)現(xiàn)身份驗(yàn)證。從而防止未授權(quán)的普通執(zhí)行環(huán)境中應(yīng)用濫用Client API,破壞TA正確邏輯,保證了TEE的安全性。
如圖2所示,本發(fā)明實(shí)施例還提供一種可信執(zhí)行環(huán)境的身份驗(yàn)證裝置,包括:
第一獲取模塊21,用于獲取用于唯一標(biāo)識(shí)終端普通執(zhí)行環(huán)境中的應(yīng)用身 份的標(biāo)識(shí);
第二獲取模塊22,用于獲取終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則;
確定模塊23,用于判斷所述標(biāo)識(shí)在終端可信執(zhí)行環(huán)境TEE中的身份驗(yàn)證規(guī)則中,確定所述終端普通執(zhí)行環(huán)境中的應(yīng)用合法;
指令產(chǎn)生模塊24,用于產(chǎn)生允許所述終端普通執(zhí)行環(huán)境中的應(yīng)用訪問(wèn)移動(dòng)設(shè)備可信應(yīng)用TA的指令,使所述應(yīng)用根據(jù)所述指令訪問(wèn)所述可信應(yīng)用TA。
具體的,本發(fā)明的上述實(shí)施例中所述第一獲取模塊21包括:
第一獲取子模塊,用于獲取終端中的軟件包管理器在普通執(zhí)行環(huán)境中的應(yīng)用安裝時(shí)的應(yīng)用安裝包;
具體的,本發(fā)明的上述實(shí)施例中所述第一獲取模塊21包括:
解析模塊,用于解析所述應(yīng)用安裝包,獲取所述應(yīng)用身份的標(biāo)識(shí)。
需要說(shuō)明的是:該裝置是與上述方法對(duì)應(yīng)的裝置,上述方法的所有實(shí)現(xiàn)實(shí)施例均適用于該裝置的實(shí)施例中,也能達(dá)到相同的技術(shù)效果。
本發(fā)明實(shí)施例還提供一種終端,包括如上述實(shí)施例所述的可信執(zhí)行環(huán)境的身份驗(yàn)證裝置。
以上所述是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。