TWI793053B - 一種電子設備、可信應用調用方法、裝置、設備及介質 - Google Patents
一種電子設備、可信應用調用方法、裝置、設備及介質 Download PDFInfo
- Publication number
- TWI793053B TWI793053B TW111133829A TW111133829A TWI793053B TW I793053 B TWI793053 B TW I793053B TW 111133829 A TW111133829 A TW 111133829A TW 111133829 A TW111133829 A TW 111133829A TW I793053 B TWI793053 B TW I793053B
- Authority
- TW
- Taiwan
- Prior art keywords
- trusted application
- identification information
- trusted
- native
- byte code
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Cash Registers Or Receiving Machines (AREA)
Abstract
本發明公開了一種電子設備、可信應用調用方法、裝置、設備及介質,用於降低可信應用的開發週期以及開發成本。由於本發明可信應用開發平臺聯結多個可信執行環境作業系統分別對應的原生可信應用,基於該可信應用開發平臺,位元組碼可信應用可以適用於任一TEE OS,針對不同的TEE OS硬體平臺,只需要為一個應用開發一個對應的位元組碼可信應用即可,相比相關技術中,針對同一應用,需要為不同的TEE OS硬體平臺開發不同版本的可信應用而言,本發明可以降低可信應用的開發週期及開發成本;同時,本發明開發的可信應用開發平臺及位元組碼可信應用,可以適用於不同的TEE OS的電子設備(終端),從而可以達到「一次開發,多終端部署」的目的,實現應用的快速部署推廣。
Description
本發明屬於可信應用調用技術領域,尤其是關於一種電子設備、可信應用調用方法、裝置、設備及介質。
移動通信技術的發展帶來了移動終端技術的快速發展,現代的移動終端設備提供了強大而靈活的普通執行環境(Rich Execution Environment,REE),但同時也導致設備容易受到安全威脅。可信執行環境(Trusted Execution Environment,TEE)是為了解決當前移動終端設備存在的安全風險而提出的技術方案。TEE和REE平行運行於同一個設備上,TEE能夠保證在可信的環境中進行敏感性資料的存儲、處理和保護,並為授權的安全軟體(可信軟體)提供了安全的執行環境,通過執行保護、保密、完整和資料存取權限實現了端到端的安全。其中,可信應用(Trusted Application,TA)運行於TEE上,用戶端應用(Client Application,CA)運行於REE上,CA通過調用TA,從而使用TEE及TA提供的安全功能。
傳統的TA一般是基於可信執行環境作業系統(TEE OS)上運行的機器碼程式。針對同一應用,通常需要為華為iTrustee、高通QSEE等不同的TEE OS硬體平臺開發不同版本的可信應用,以適應不同的TEE OS硬體平臺的使用需求。
相關技術中,針對同一應用,需要為不同的TEE OS硬體平臺開發不同版本的可信應用的方式,存在可信應用開發週期較長,開發成本較高的問題。
本發明提供了一種電子設備、可信應用調用方法、裝置、設備及介質,用於降低可信應用的開發週期以及開發成本。
第一方面,本發明提供了一種電子設備,該電子設備包括:用戶端應用CA和可信應用開發平臺;
該CA,用於發起對該可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
該可信應用開發平臺,用於接收該第一訪問請求,根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並將該第一訪問請求發送給該第一標識資訊對應的原生可信應用;
該第一標識資訊對應的原生可信應用,用於接收該第一訪問請求,並判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向該CA返回確認資訊;
該CA,還用於接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送調用命令;
該第一標識資訊對應的原生可信應用,還用於將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該電子設備還包括:
創建模組,用於基於支援跨平臺功能的位元組碼技術,創建該可信應用開發平臺,其中該可信應用開發平臺聯結至少兩個可信執行環境作業系統分別對應的原生可信應用。
在一種可能的實施方式中,該第一標識資訊對應的原生可信應用,還用於若判斷自身沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;
該CA,還用於向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;
該第一標識資訊對應的原生可信應用,還用於根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;
該CA,還用於接收到該返回資訊後,發起第二訪問請求。
在一種可能的實施方式中,該電子設備還包括:可信應用管理平臺;
該CA,還用於向該可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求;
該可信應用管理平臺,用於接收該安裝請求,根據該安裝請求,組裝包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文;並將該OTRP報文發送給該CA;
該CA,具體用於接收該OTRP報文,將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
第二方面,本發明還提供了一種可信應用調用方法,該方法應用於用戶端應用CA,該方法包括:
發起對可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該CA所屬的電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;使該可信應用開發平臺接收該第一訪問請求,使該可信應用開發平臺根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並使該可信應用開發平臺將該第一訪問請求發送給該第一標識資訊對應的原生可信應用;
接收該第一標識資訊對應的原生可信應用返回的確認資訊,其中該確認資訊為該第一標識資訊對應的原生可信應用在接收到該第一訪問請求,並判斷自身安裝有該第二標識資訊的位元組碼可信應用時發送的;
向該第一標識資訊對應的原生可信應用發送調用命令;使該第一標識資訊對應的原生可信應用將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該方法還包括:
若接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊,向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;使該第一標識資訊對應的原生可信應用根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;
接收該第一標識資訊對應的原生可信應用發送的返回資訊,並發起第二訪問請求,其中該返回資訊為該第一標識資訊對應的原生可信應用在成功安裝該第二標識資訊的位元組碼可信應用時發送的。
在一種可能的實施方式中,該接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊之後,該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令之前,該方法還包括:
向可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求;
接收該可信應用管理平臺發送的包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文,其中該OTRP報文為該可信應用管理平臺接收到該安裝請求,並根據該安裝請求,成功組裝該OTRP報文時發送的;
該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令包括:
將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
第三方面,本發明提供了一種可信應用調用方法,該方法應用於原生可信應用,該方法包括:
接收第一訪問請求,其中該第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向CA返回確認資訊;
接收該CA發送的調用命令,其中該調用命令為該CA在接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送的命令;
將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該方法還包括:
若判斷自身沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;使該CA向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;
接收該安裝指令,根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;使該CA接收到該返回資訊後,發起第二訪問請求。
第四方面,本發明提供了一種可信應用調用裝置,該裝置應用於用戶端應用CA,該裝置包括:
發起模組,用於發起對可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該CA所屬的電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;使該可信應用開發平臺接收該第一訪問請求,使該可信應用開發平臺根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並使該可信應用開發平臺將該第一訪問請求發送給該第一標識資訊對應的原生可信應用;
第一接收模組,用於接收該第一標識資訊對應的原生可信應用返回的確認資訊,其中該確認資訊為該第一標識資訊對應的原生可信應用在接收到該第一訪問請求,並判斷自身安裝有該第二標識資訊的位元組碼可信應用時發送的;
發送命令模組,用於向該第一標識資訊對應的原生可信應用發送調用命令;使該第一標識資訊對應的原生可信應用將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該裝置還包括:
發送安裝指令模組,用於若接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊,向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;使該第一標識資訊對應的原生可信應用根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;
該發起模組,還用於接收該第一標識資訊對應的原生可信應用發送的返回資訊,並發起第二訪問請求,其中該返回資訊為該第一標識資訊對應的原生可信應用在成功安裝該第二標識資訊的位元組碼可信應用時發送的。
在一種可能的實施方式中,該發送安裝指令模組,還用於向可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求;接收該可信應用管理平臺發送的包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文,其中該OTRP報文為該可信應用管理平臺接收到該安裝請求,並根據該安裝請求,成功組裝該OTRP報文時發送的;將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
第五方面,本發明還提供了一種可信應用調用裝置,該裝置應用於原生可信應用,該裝置包括:
第二接收模組,用於接收第一訪問請求,其中該第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
判斷模組,用於判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向CA返回確認資訊;
第三接收模組,用於接收該CA發送的調用命令,其中該調用命令為該CA在接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送的命令;
轉交模組,用於將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該裝置還包括:
提示模組,用於若判斷該第一標識資訊對應的原生可信應用沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;使該CA向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;
安裝模組,用於接收該安裝指令,根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;使該CA接收到該返回資訊後,發起第二訪問請求。
第六方面,本發明提供了一種電子設備,該電子設備至少包括處理器和記憶體,該處理器用於執行記憶體中存儲的電腦程式時實現如上述任一所述可信應用調用方法的步驟。
第七方面,本發明提供了一種電腦可讀存儲介質,其存儲有電腦程式,該電腦程式被處理器執行時實現如上述任一所述可信應用調用方法的步驟。
由於本發明CA發起第一訪問請求後,可信應用開發平臺可以從可信應用開發平臺聯結的至少兩個(多個)TEE OS分別對應的原生可信應用中,確定第一訪問請求攜帶的第一標識資訊對應的原生可信應用;第一標識資訊對應的原生可信應用在判斷自身安裝有第一訪問請求中攜帶的第二標識資訊的位元組碼可信應用後,向CA返回確認資訊,CA在接收到該確認資訊後,可以向第一標識資訊對應的原生可信應用發送調用命令;第一標識資訊對應的原生可信應用可以將從CA處接收到的調用命令轉交給第二標識資訊的位元組碼可信應用,實現對第二標識資訊的位元組碼可信應用的準確調用。由於本發明可信應用開發平臺聯結多個可信執行環境作業系統分別對應的原生可信應用,基於該可信應用開發平臺,位元組碼可信應用可以適用於任一TEE OS,針對不同的TEE OS硬體平臺,只需要為一個應用開發一個對應的位元組碼可信應用即可,相比相關技術中,針對同一應用,需要為不同的TEE OS硬體平臺開發不同版本的可信應用而言,本發明可以降低可信應用的開發週期及開發成本;同時,本發明開發的可信應用開發平臺及位元組碼可信應用,可以適用於不同的TEE OS的電子設備(終端),從而可以達到「一次開發,多終端部署」的目的,實現應用的快速部署推廣。
為了降低可信應用的開發週期以及開發成本,本發明提供了一種電子設備、可信應用調用方法、裝置、設備及介質。
為使本發明的目的和實施方式更加清楚,下面將結合本發明示例性實施例中的附圖,對本發明示例性實施方式進行清楚、完整地描述,顯然,描述的示例性實施例僅是本發明一部分實施例,而不是全部的實施例。
需要說明的是,本發明中對於術語的簡要說明,僅是為了方便理解接下來描述的實施方式,而不是意圖限定本發明的實施方式。除非另有說明,這些術語應當按照其普通和通常的含義理解。
本發明中說明書和權利要求書及上述附圖中的術語「第一」、「第二」、「第三」等是用於區別類似或同類的物件或實體,而不必然意味著限定特定的順序或先後次序,除非另外注明。應該理解這樣使用的用語在適當情況下可以互換。
術語「包括」和「具有」以及他們的任何變形,意圖在於覆蓋但不排他的包含,例如,包含了一系列元件的產品或設備不必限於清楚地列出的所有元件,而是可包括沒有清楚地列出的或對於這些產品或設備固有的其它元件。
術語「模組」是指任何已知或後來開發的硬體、軟體、固件、人工智慧、模糊邏輯或硬體或/和軟體代碼的組合,能夠執行與該元件相關的功能。
最後應說明的是:以上各實施例僅用以說明本發明的技術方案,而非對其限制;儘管參照前述各實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特徵進行等同替換;而這些修改或者替換,並不使相應技術方案的本質脫離本發明各實施例技術方案的範圍。
實施例1:
圖1示出了一些實施例提供的第一種電子設備結構示意圖,該電子設備包括:用戶端應用(Client Application,CA)11和可信應用開發平臺12;
該CA11,用於發起對該可信應用開發平臺12聯結的與該CA11對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
該可信應用開發平臺12,用於接收該第一訪問請求,根據該第一標識資訊,從該可信應用開發平臺12聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並將該第一訪問請求發送給該第一標識資訊對應的原生可信應用;
該第一標識資訊對應的原生可信應用13,用於接收該第一訪問請求,並判斷自身是否安裝有該第二標識資訊的BTA14,若是,向該CA11返回確認資訊;
該CA11,還用於接收到該確認資訊後,向該第一標識資訊對應的原生可信應用13發送調用命令;
該第一標識資訊對應的原生可信應用13,還用於將從該CA11處接收到的該調用命令轉交給該第二標識資訊的BTA14。
在一種可能的實施方式中,本發明的電子設備可以是PC、移動終端等設備,也可以是伺服器等。示例性的,電子設備中的可信執行環境作業系統(TEE OS)可以為華為iTrustee、高通QSEE等任一TEE OS。
在一種可能的實施方式中,針對每個TEE OS,可以創建該TEE OS對應的可信應用(為方便描述,稱為原生可信應用)。其中,創建TEE OS對應的原生可信應用可以採用現有技術,在此不再贅述。在一種可能的實施方式中,為了針對任一應用,開發出可適用於多個TEE OS,可跨不同TEE OS硬體平臺使用的可信應用,從而降低可信應用的開發週期以及開發成本,電子設備中還可以包括創建模組,該創建模組可以基於支援跨平臺功能的位元組碼技術(如WebAssembly位元組碼技術等),創建聯結多個(至少兩個)TEE OS分別對應的原生可信應用(為方便描述,稱為Native TA)的可信應用開發平臺12(可信應用開發框架)。其中,WebAssembly是由主流流覽器廠商組成的萬維網聯盟(World Wide Web Consortium,W3C)小區團體制定的一個新的規範,其定義了一個可移植、體積小、載入快並且相容萬維網(Web)的全新格式。
圖2示出了一些實施例提供的第二種電子設備結構示意圖,參閱圖2,本發明可以基於支援跨平臺功能的位元組碼技術(如WebAssembly位元組碼技術等),將多個TEE OS分別對應的Native TA構建為一個可信應用開發平臺12,該可信應用開發平臺12可以向上提供統一的開發介面,可信應用開發者可以無需再關注TEE OS硬體平臺的具體版本,只需基於該可信應用開發平臺12,針對例如建設銀行、農業銀行等任一應用,開發該應用對應的可信應用(為方便描述,稱為位元組碼可信應用)即可,該位元組碼可信應用(為方便描述,稱為Bytecode Trusted Application,BTA)是基於可信應用開發平臺12開發的可適用於不同的TEE OS,可跨不同的TEE OS硬體平臺使用的可信應用。本發明針對每個應用,可以只開發一個對應的可信應用,相比相關技術中,針對每個應用,需要為不同的TEE OS硬體平臺分別開發一個可信應用,需要為同一個應用開發多個不同版本的可信應用而言,本發明可以縮短可信應用的開發週期、降低開發成本,同時還可以達到「一次開發,多終端部署」的目的,實現應用的快速部署推廣。
在一種可能的實施方式中,當需要使用可信執行環境(Trusted Execution Environment,TEE)提供的安全功能時,電子設備中的用戶端應用(CA)11可以發起對可信應用開發平臺12中包含的與該CA11對應的TEE OS的原生可信應用的訪問請求(為方便描述,稱為第一訪問請求)。示例性的,假設電子設備的TEE OS是華為iTrustee,該電子設備中的CA11可以發起對可信應用開發平臺12中包含的華為iTrustee TEE OS對應的原生可信應用的第一訪問請求。在一種可能的實施方式中,第一訪問請求中可以攜帶電子設備的標識資訊(為方便描述,稱為第一標識資訊)以及待調用的任一應用的位元組碼可信應用的標識資訊(為方便描述,稱為第二標識資訊)。其中,第一標識資訊和第二標識資訊可以根據需求靈活設置,本發明對此不做具體限定。示例性的,電子設備的第一標識資訊可以為電子設備的型號、電子設備的品牌等標識資訊。在一種可能的實施方式中,第一標識資訊中除了包含電子設備的型號、電子設備的品牌等標識資訊之外,還可以包含電子設備適用的原生可信應用的名稱、原生可信應用版本號等原生可信應用的標識資訊。位元組碼可信應用的第二標識資訊可以為位元組碼可信應用的名稱、供應商名稱等標識資訊。
CA11發起第一訪問請求,可信應用開發平臺12接收到第一訪問請求後,可信應用開發平臺12可以根據第一訪問請求中攜帶的電子設備的第一標識資訊,從可信應用開發平臺12自身聯結的至少兩個(多個)TEE OS分別對應的Native TA中,確定電子設備的第一標識資訊對應的Native TA,並將第一訪問請求發送給第一標識資訊對應的Native TA。示例性的,如果電子設備的品牌為華為,電子設備的第一標識資訊可以包括華為、華為品牌的電子設備(終端)適用的原生可信應用的名稱以及原生可信應用版本號等,則可信應用開發平臺12可以將華為iTrustee TEE OS對應的原生可信應用確定為第一標識資訊對應的原生可信應用。
在一種可能的實施方式中,可以將多個(至少兩個)TEE OS分別對應的原生可信應用直接集成在可信應用開發平臺12中,可信應用開發平臺12中包含(聯結)多個TEE OS分別對應的原生可信應用。在一種可能的實施方式中,考慮到如果將多個TEE OS分別對應的原生可信應用均集成在可信應用開發平臺12中時,可信應用開發平臺12佔用的空間可能較大。為了節省空間,可信應用開發平臺12中可以先只包含(聯結)多個TEE OS分別對應的原生可信應用的標識資訊,可信應用開發平臺12根據電子設備的標識資訊與原生可信應用的標識資訊的對應關係,確定了電子設備的第一標識資訊對應的原生可信應用的標識資訊後,可以通過空中下載技術(OTA),從與可信應用開發平臺12聯結的後端應用平臺中,將第一標識資訊對應的原生可信應用下載並安裝到可信應用開發平臺12中。在一種可能的實施方式中,可信應用開發平臺12中包含了第一標識資訊對應的原生可信應用後,可以將第一訪問請求發送給第一標識資訊對應的原生可信應用(Native TA)。
在一種可能的實施方式中,由於可以將位元組碼可信應用(BTA)安裝在Native TA的資料區等設定位置處,第一標識資訊的Native TA13在接收到第一訪問請求後,可以判斷第一標識資訊的Native TA13自身是否安裝有第二標識資訊的BTA。如果第一標識資訊的Native TA13自身安裝有第二標識資訊的BTA,可以認為可以繼而對第二標識資訊的BTA發送調用命令等來實現對BTA的調用。在一種可能的實施方式中,為了使CA11可以獲知可以繼而發送調用命令等,第一標識資訊的Native TA13可以向CA11返回確認資訊。
在一種可能的實施方式中,CA11在接收到第一標識資訊的Native TA13返回的確認資訊後,可以向第一標識資訊的Native TA13發送調用命令。第一標識資訊的Native TA13在接收到CA11發送的調用命令後,可以將該調用命令轉交(如透傳等)給第二標識資訊的BTA。第二標識資訊的BTA在接收到該調用命令後,可以根據該調用命令,執行對應的操作。其中,調用命令可以根據需求靈活設置,本發明對此不做具體限定。
由於本發明可信應用開發平臺12聯結多個可信執行環境作業系統分別對應的原生可信應用,基於該可信應用開發平臺12,位元組碼可信應用可以適用於任一TEE OS,針對不同的TEE OS硬體平臺,只需要為一個應用開發一個對應的位元組碼可信應用即可,相比相關技術中,針對同一應用,需要為不同的TEE OS硬體平臺開發不同版本的可信應用而言,本發明可以降低可信應用的開發週期及開發成本;同時,本發明開發的可信應用開發平臺12及位元組碼可信應用,可以適用於不同的TEE OS的電子設備(終端),從而可以達到「一次開發,多終端部署」的目的,實現應用的快速部署推廣。
實施例2:
為了準確的安裝第二標識資訊對應的位元組碼可信應用,在上述實施例的基礎上,在本發明實施例中,該第一標識資訊對應的原生可信應用13,還用於若判斷自身沒有安裝該第二標識資訊的BTA14,則向該CA11返回尚未安裝的提示資訊;
該CA11,還用於向該第一標識資訊對應的原生可信應用13發送安裝該第二標識資訊的BTA14的安裝指令;
該第一標識資訊對應的原生可信應用13,還用於根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的BTA14安裝在自身設定位置處;並在安裝成功後,向該CA11發送安裝成功的返回資訊;
該CA11,還用於接收到該返回資訊後,發起第二訪問請求。
在一種可能的實施方式中,第一標識資訊的Native TA13如果判斷自身沒有安裝第二標識資訊的BTA,可以向CA11返回尚未安裝的提示資訊。其中,提示資訊可以根據需求靈活設置,本發明對此不做具體限定。示例性的,第一標識資訊的Native TA13向CA11返回的提示資訊可以是預先設定的一個狀態值(STATUS_WAIT_TASM_TA)。
參閱圖2,在一種可能的實施方式中,電子設備中還可以包括可信應用管理平臺(Trusted Application Management,TAM),TAM(應用商場)可以對多個BTA進行管理,TAM中可以包含多個BTA的安裝包、應用簽名、服務商公開金鑰證書等安裝資訊。CA11在接收到提示資訊後,可以向TAM發送安裝第二標識資訊的BTA的安裝請求。TAM接收到安裝第二標識資訊的BTA的安裝請求後,可以根據該安裝請求,組裝包含第二標識資訊的BTA的安裝包、應用簽名、服務商公開金鑰證書等安裝資訊的開放信任協定(Open Trust Protocol,OTRP)報文;並可以將該OTRP報文發送給CA11。
CA11接收到TAM發送的OTRP報文後,可以將該OTRP報文以及安裝第二標識資訊的位元組碼可信應用的安裝指令發送給第一標識資訊的Native TA13。在一種可能的實施方式中,Native TA中可以包含OTRP報文處理模組。第一標識資訊的Native TA13接收到該OTRP報文及安裝指令後,第一標識資訊的Native TA13中的OTRP報文處理模組可以基於開放信任協定OTRP,對OTRP報文進行解析,並基於OTRP,將第二標識資訊的BTA14安裝在自身設定位置處。其中,設定位置可以根據需求靈活設置,本發明對此不做具體限定。示例性的,可以將BTA安裝在Native TA內的資料區等設定位置處,BTA可以基於WebAssembly虛擬機器運行於Native TA之內。
第一標識資訊的Native TA13在成功安裝第二標識資訊的BTA14後,可以向CA11發送安裝成功的返回資訊。CA11接收到第一標識資訊的Native TA13發送的返回資訊後,可以再次發起訪問請求(為方便描述,稱為第二訪問請求)。在一種可能的實施方式中,CA11可以通過重新發送命令(CMD_OPEN_WASM_TA_SESSION)發起第二訪問請求。其中,可信應用開發平臺12、第一標識資訊對應的原生可信應用13等對第二訪問請求的處理過程與對第一訪問請求的處理過程類似,在此不再贅述。
相關技術中,應用開發商通常需要為不同TEE OS硬體平臺,開發不同版本的可信應用,且通常只有TEE OS硬體平臺的設備廠商才擁有對可信應用的管理許可權(TEE所有權),導致應用開發商需要與不同的設備廠商進行技術溝通,才能為不同的TEE OS對應的可信應用進行簽名分發,使得可信應用可以在對應的TEE OS上運行。本發明只需在創建設備廠商的TEE OS對應的Native TA時,與設備廠商進行技術溝通,而基於可信應用開發平臺12開發的BTA可以無需再與設備廠商進行技術溝通。本發明可以在應用開發商沒有TEE所有權的情況下,基於TAM,對原生可信應用中承擔實際業務的BTA進行簽名分發及管理,使得BTA可以在TEE OS上運行。
為方便理解,下面通過一個具體實施例對本發明提供的可信應用調用過程進行舉例說明。圖3示出了一些實施例提供的第一種可信應用調用過程示意圖,圖4示出了一些實施例提供的第二種可信應用調用過程示意圖,參閱圖3和圖4,該過程包括以下步驟:
S301:CA11發起對可信應用開發平臺12聯結的與CA11對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊。
其中,參閱圖2及圖4,在一種可能的實施方式中,CA11可以通過調用打開會話函數(TEEC_OpenSession)實現發起第一訪問請求。CA11可以基於TEEC 應用程式設計發展介面(Application Programming Interface,API)發起第一訪問請求,電子設備中的TEE OS可以接收CA11發起的第一訪問資訊,並將該第一訪問資訊發送給可信應用開發平臺12。
S302:可信應用開發平臺12接收第一訪問請求,根據第一標識資訊,從可信應用開發平臺12聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定第一標識資訊對應的原生可信應用,並將第一訪問請求發送給第一標識資訊對應的原生可信應用。
S303:第一標識資訊對應的原生可信應用13接收第一訪問請求,並判斷自身是否安裝有第二標識資訊的BTA14,若是,則進行S304;若否,進行S307。
參閱圖2,示例性的,第一標識資訊對應的原生可信應用13中可以安裝有BTA1、BTA2、BTA3等多個不同的BTA。
S304:第一標識資訊對應的原生可信應用13向CA11返回確認資訊。
S305:CA11接收到確認資訊後,向第一標識資訊對應的原生可信應用13發送調用命令。
S306:第一標識資訊對應的原生可信應用13將從CA11處接收到的調用命令轉交給第二標識資訊的BTA14。
S307:第一標識資訊對應的原生可信應用13向CA11返回尚未安裝的提示資訊。
其中,參閱圖4,第一標識資訊對應的Native TA13向CA11返回的提示資訊可以是預先設定的一個狀態值(STATUS_WAIT_TASM_TA)。
S308:CA11向TAM發送安裝第二標識資訊的BTA14的安裝請求。
S309:可信應用管理平臺接收安裝請求,並根據該安裝請求,組裝包含第二標識資訊的BTA14的安裝資訊的開放信任協定報文;並將該開發信任協議報文發送給CA11。
S310:CA11接收開發信任協議報文,將開發信任協議報文及安裝第二標識資訊的位元組碼可信應用的安裝指令發送給第一標識資訊對應的原生可信應用13。
S311:第一標識資訊對應的原生可信應用13接收安裝指令及開發信任協定報文,並根據安裝指令,基於開放信任協定,將第二標識資訊的BTA14安裝在自身設定位置處;並在安裝成功後,向CA11發送安裝成功的返回資訊。
S312:CA11接收到返回資訊後,發起第二訪問請求。其中第二訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊。
S313:可信應用開發平臺12接收第二訪問請求,根據第一標識資訊,從可信應用開發平臺12聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定第一標識資訊對應的原生可信應用,並將第二訪問請求發送給第一標識資訊對應的原生可信應用。
S314:第一標識資訊對應的原生可信應用13判斷自身是否安裝有第二標識資訊的BTA14,若是,則進行S304。
實施例3:
基於相同的技術構思,本發明提供了一種可信應用調用方法,該方法應用於用戶端應用(CA),圖5示出了一些實施例提供的第三種可信應用調用過程示意圖,如圖5所示,該過程包括以下步驟:
S501:發起對可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該CA所屬的電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;使該可信應用開發平臺接收該第一訪問請求,使該可信應用開發平臺根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並使該可信應用開發平臺將該第一訪問請求發送給該第一標識資訊對應的原生可信應用。
S502:接收該第一標識資訊對應的原生可信應用返回的確認資訊,其中該確認資訊為該第一標識資訊對應的原生可信應用在接收到該第一訪問請求,並判斷自身安裝有該第二標識資訊的位元組碼可信應用時發送的。
S503:向該第一標識資訊對應的原生可信應用發送調用命令;使該第一標識資訊對應的原生可信應用將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該方法還包括:
若接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊,向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;使該第一標識資訊對應的原生可信應用根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;
接收該第一標識資訊對應的原生可信應用發送的返回資訊,並發起第二訪問請求,其中該返回資訊為該第一標識資訊對應的原生可信應用在成功安裝該第二標識資訊的位元組碼可信應用時發送的。
在一種可能的實施方式中,該接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊之後,該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令之前,該方法還包括:
向可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求;
接收該可信應用管理平臺發送的包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文,其中該OTRP報文為該可信應用管理平臺接收到該安裝請求,並根據該安裝請求,成功組裝該OTRP報文時發送的;
該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令包括:
將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
由於本發明CA發起第一訪問請求後,可信應用開發平臺可以從可信應用開發平臺聯結的至少兩個(多個)TEE OS分別對應的原生可信應用中,確定第一訪問請求攜帶的電子設備的第一標識資訊對應的原生可信應用;第一標識資訊對應的原生可信應用在判斷自身安裝有第一訪問請求中攜帶的第二標識資訊的位元組碼可信應用後,向CA返回確認資訊,CA在接收到該確認資訊後,可以向第一標識資訊對應的原生可信應用發送調用命令;第一標識資訊對應的原生可信應用可以將從CA處接收到的調用命令轉交給第二標識資訊的位元組碼可信應用,實現對第二標識資訊的位元組碼可信應用的準確調用。由於本發明可信應用開發平臺中聯結多個可信執行環境作業系統分別對應的原生可信應用,基於該可信應用開發平臺,位元組碼可信應用可以適用於任一TEE OS,針對不同的TEE OS硬體平臺,只需要為一個應用開發一個對應的位元組碼可信應用即可,相比相關技術中,針對同一應用,需要為不同的TEE OS硬體平臺開發不同版本的可信應用而言,本發明可以降低可信應用的開發週期及開發成本;同時,本發明開發的可信應用開發平臺及位元組碼可信應用,可以適用於不同的TEE OS的電子設備(終端),從而可以達到「一次開發,多終端部署」的目的,實現應用的快速部署推廣。
實施例4:
基於相同的技術構思,本發明提供了一種可信應用調用裝置,該裝置應用於用戶端應用(CA),圖6示出了一些實施例提供的第一種可信應用調用裝置示意圖,如圖6所示,該裝置包括:
發起模組61,用於發起對可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該CA所屬的電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;使該可信應用開發平臺接收該第一訪問請求,使該可信應用開發平臺根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並使該可信應用開發平臺將該第一訪問請求發送給該第一標識資訊對應的原生可信應用;
第一接收模組62,用於接收該第一標識資訊對應的原生可信應用返回的確認資訊,其中該確認資訊為該第一標識資訊對應的原生可信應用在接收到該第一訪問請求,並判斷自身安裝有該第二標識資訊的位元組碼可信應用時發送的;
發送命令模組63,用於向該第一標識資訊對應的原生可信應用發送調用命令;使該第一標識資訊對應的原生可信應用將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該裝置還包括:
發送安裝指令模組,用於若接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊,向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;使該第一標識資訊對應的原生可信應用根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;
該發起模組61,還用於接收該第一標識資訊對應的原生可信應用發送的返回資訊,並發起第二訪問請求,其中該返回資訊為該第一標識資訊對應的原生可信應用在成功安裝該第二標識資訊的位元組碼可信應用時發送的。
在一種可能的實施方式中,該發送安裝指令模組,還用於向可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求;接收該可信應用管理平臺發送的包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文,其中該OTRP報文為該可信應用管理平臺接收到該安裝請求,並根據該安裝請求,成功組裝該OTRP報文時發送的;將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
實施例5:
基於相同的技術構思,本發明還提供了一種電子設備,圖7示出了一些實施例提供的第一種電子設備結構示意圖,如圖7所示,包括:處理器71、通信介面72、記憶體73和通信匯流排74,其中,處理器71,通信介面72,記憶體73通過通信匯流排74完成相互間的通信;
該記憶體73中存儲有電腦程式,當該程式被該處理器71執行時,使得該處理器71執行如下步驟:
發起對可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該CA所屬的電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;使該可信應用開發平臺接收該第一訪問請求,使該可信應用開發平臺根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並使該可信應用開發平臺將該第一訪問請求發送給該第一標識資訊對應的原生可信應用;
接收該第一標識資訊對應的原生可信應用返回的確認資訊,其中該確認資訊為該第一標識資訊對應的原生可信應用在接收到該第一訪問請求,並判斷自身安裝有該第二標識資訊的位元組碼可信應用時發送的;
向該第一標識資訊對應的原生可信應用發送調用命令;使該第一標識資訊對應的原生可信應用將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該處理器71,還用於若接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊,向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;使該第一標識資訊對應的原生可信應用根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;
接收該第一標識資訊對應的原生可信應用發送的返回資訊,並發起第二訪問請求,其中該返回資訊為該第一標識資訊對應的原生可信應用在成功安裝該第二標識資訊的位元組碼可信應用時發送的。
在一種可能的實施方式中,該處理器71,還用於向可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求;接收該可信應用管理平臺發送的包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文,其中該OTRP報文為該可信應用管理平臺接收到該安裝請求,並根據該安裝請求,成功組裝該OTRP報文時發送的;將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
由於上述電子設備解決問題的原理與可信應用調用方法相似,因此上述電子設備的實施可以參見方法的實施,重複之處不再贅述。
上述電子設備提到的通信匯流排可以是外設部件互連標準(Peripheral Component Interconnect,PCI)匯流排或延伸工業標準架構(Extended Industry Standard Architecture,EISA)匯流排等。該通信匯流排可以分為位址匯流排、資料匯流排、控制匯流排等。為便於表示,圖中僅用一條粗線表示,但並不表示僅有一根匯流排或一種類型的匯流排。
通信介面72用於上述電子設備與其他設備之間的通信。
記憶體可以包括隨機存取記憶體(Random Access Memory,RAM),也可以包括非易失性記憶體(Non-Volatile Memory,NVM),例如至少一個磁碟記憶體。可選地,記憶體還可以是至少一個位於遠離前述處理器的存儲裝置。
上述處理器可以是通用處理器,包括中央處理器、網路處理器(Network Processor,NP)等;還可以是數位指令處理器(Digital Signal Processing,DSP)、專用積體電路、現場可程式設計門陳列或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等。
實施例6:
基於相同的技術構思,本發明實施例提供了一種電腦可讀存儲介質,該電腦可讀存儲介質內存儲有可由電子設備執行的電腦程式,當該程式在該電子設備上運行時,使得該電子設備執行時實現如下步驟:
發起對可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該CA所屬的電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;使該可信應用開發平臺接收該第一訪問請求,使該可信應用開發平臺根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並使該可信應用開發平臺將該第一訪問請求發送給該第一標識資訊對應的原生可信應用;
接收該第一標識資訊對應的原生可信應用返回的確認資訊,其中該確認資訊為該第一標識資訊對應的原生可信應用在接收到該第一訪問請求,並判斷自身安裝有該第二標識資訊的位元組碼可信應用時發送的;
向該第一標識資訊對應的原生可信應用發送調用命令;使該第一標識資訊對應的原生可信應用將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該方法還包括:
若接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊,向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;使該第一標識資訊對應的原生可信應用根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;
接收該第一標識資訊對應的原生可信應用發送的返回資訊,並發起第二訪問請求,其中該返回資訊為該第一標識資訊對應的原生可信應用在成功安裝該第二標識資訊的位元組碼可信應用時發送的。
在一種可能的實施方式中,該接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊之後,該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令之前,該方法還包括:
向可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求;
接收該可信應用管理平臺發送的包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文,其中該OTRP報文為該可信應用管理平臺接收到該安裝請求,並根據該安裝請求,成功組裝該OTRP報文時發送的;
該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令包括:
將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
由於上述電腦可讀存儲介質解決問題的原理與可信應用調用方法相似,因此上述電腦可讀存儲介質的實施可以參見方法的實施,重複之處不再贅述。
上述電腦可讀存儲介質可以是電子設備中的處理器能夠存取的任何可用介質或資料存放裝置,包括但不限於磁性記憶體如軟碟、硬碟、磁帶、磁光碟(MO)等、光學記憶體如CD、DVD、BD、HVD等、以及半導體記憶體如ROM、EPROM、EEPROM、非易失性記憶體(NAND FLASH)、固態硬碟(SSD)等。
實施例7:
基於相同的技術構思,本發明提供了一種可信應用調用方法,該方法應用於原生可信應用,圖8示出了一些實施例提供的第四種可信應用調用過程示意圖,如圖8所示,該過程包括以下步驟:
S801:接收第一訪問請求,其中該第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
S802:判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向CA返回確認資訊;
S803:接收該CA發送的調用命令,其中該調用命令為該CA在接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送的命令;
S804:將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該方法還包括:
若判斷自身沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;使該CA向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;
接收該安裝指令,根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;使該CA接收到該返回資訊後,發起第二訪問請求。
由於本發明CA發起第一訪問請求後,可信應用開發平臺可以從可信應用開發平臺聯結的至少兩個(多個)TEE OS分別對應的原生可信應用中,確定第一訪問請求攜帶的第一標識資訊對應的原生可信應用;第一標識資訊對應的原生可信應用在判斷自身安裝有第一訪問請求中攜帶的第二標識資訊的位元組碼可信應用後,向CA返回確認資訊,CA在接收到該確認資訊後,可以向第一標識資訊對應的原生可信應用發送調用命令;第一標識資訊對應的原生可信應用可以將從CA處接收到的調用命令轉交給第二標識資訊的位元組碼可信應用,實現對第二標識資訊的位元組碼可信應用的準確調用。由於本發明可信應用開發平臺聯結多個可信執行環境作業系統分別對應的原生可信應用,基於該可信應用開發平臺,位元組碼可信應用可以適用於任一TEE OS,針對不同的TEE OS硬體平臺,只需要為一個應用開發一個對應的位元組碼可信應用即可,相比相關技術中,針對同一應用,需要為不同的TEE OS硬體平臺開發不同版本的可信應用而言,本發明可以降低可信應用的開發週期及開發成本;同時,本發明開發的可信應用開發平臺及位元組碼可信應用,可以適用於不同的TEE OS的電子設備(終端),從而可以達到「一次開發,多終端部署」的目的,實現應用的快速部署推廣。
實施例8:
基於相同的技術構思,本發明提供了一種可信應用調用裝置,該裝置應用於原生可信應用(電子設備的第一標識資訊對應的原生可信應用),圖9示出了一些實施例提供的第二種可信應用調用裝置示意圖,如圖9所示,該裝置包括:
第二接收模組91,用於接收第一訪問請求,其中該第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
判斷模組92,用於判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向CA返回確認資訊;
第三接收模組93,用於接收該CA發送的調用命令,其中該調用命令為該CA在接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送的命令;
轉交模組94,用於將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該裝置還包括:
提示模組,用於若判斷該第一標識資訊對應的原生可信應用沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;使該CA向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;
安裝模組,用於接收該安裝指令,根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;使該CA接收到該返回資訊後,發起第二訪問請求。
實施例9:
基於相同的技術構思,本發明還提供了一種電子設備,圖10示出了一些實施例提供的第二種電子設備結構示意圖,如圖10所示,包括:處理器101、通信介面102、記憶體103和通信匯流排104,其中,處理器101,通信介面102,記憶體103通過通信匯流排104完成相互間的通信;
該記憶體103中存儲有電腦程式,當該程式被該處理器101執行時,使得該處理器101執行如下步驟:
接收第一訪問請求,其中該第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向CA返回確認資訊;
接收該CA發送的調用命令,其中該調用命令為該CA在接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送的命令;
將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該處理器101,還用於若判斷自身沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;使該CA向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;
接收該安裝指令,根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;使該CA接收到該返回資訊後,發起第二訪問請求。
由於上述電子設備解決問題的原理與可信應用調用方法相似,因此上述電子設備的實施可以參見方法的實施,重複之處不再贅述。
上述電子設備提到的通信匯流排可以是外設部件互連標準(Peripheral Component Interconnect,PCI)匯流排或延伸工業標準架構(Extended Industry Standard Architecture,EISA)匯流排等。該通信匯流排可以分為位址匯流排、資料匯流排、控制匯流排等。為便於表示,圖中僅用一條粗線表示,但並不表示僅有一根匯流排或一種類型的匯流排。
通信介面102用於上述電子設備與其他設備之間的通信。
記憶體可以包括隨機存取記憶體(Random Access Memory,RAM),也可以包括非易失性記憶體(Non-Volatile Memory,NVM),例如至少一個磁碟記憶體。可選地,記憶體還可以是至少一個位於遠離前述處理器的存儲裝置。
上述處理器可以是通用處理器,包括中央處理器、網路處理器(Network Processor,NP)等;還可以是數位指令處理器(Digital Signal Processing,DSP)、專用積體電路、現場可程式設計門陳列或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等。
實施例10:
基於相同的技術構思,本發明實施例提供了一種電腦可讀存儲介質,該電腦可讀存儲介質內存儲有可由電子設備執行的電腦程式,當該程式在該電子設備上運行時,使得該電子設備執行時實現如下步驟:
接收第一訪問請求,其中該第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;
判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向CA返回確認資訊;
接收該CA發送的調用命令,其中該調用命令為該CA在接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送的命令;
將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
在一種可能的實施方式中,該方法還包括:
若判斷自身沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;使該CA向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;
接收該安裝指令,根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;使該CA接收到該返回資訊後,發起第二訪問請求。
由於上述電腦可讀存儲介質解決問題的原理與可信應用調用方法相似,因此上述電腦可讀存儲介質的實施可以參見方法的實施,重複之處不再贅述。
上述電腦可讀存儲介質可以是電子設備中的處理器能夠存取的任何可用介質或資料存放裝置,包括但不限於磁性記憶體如軟碟、硬碟、磁帶、磁光碟(MO)等、光學記憶體如CD、DVD、BD、HVD等、以及半導體記憶體如ROM、EPROM、EEPROM、非易失性記憶體(NAND FLASH)、固態硬碟(SSD)等。
本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用存儲介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
本發明是參照根據本發明的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理設備的處理器以產生一個機器,使得通過電腦或其他可程式設計資料處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些電腦程式指令也可存儲在能引導電腦或其他可程式設計資料處理設備以特定方式工作的電腦可讀記憶體中,使得存儲在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理設備上,使得在電腦或其他可程式設計設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和範圍。這樣,倘若本發明的這些修改和變型屬於本發明權利要求及其等同技術的範圍之內,則本發明也意圖包含這些改動和變型在內。
S301~S314、S501~S503、S801~S804:步驟
11:用戶端應用(CA)
12:可信應用開發平臺
13:第一標識資訊對應的原生可信應用
14:第二標識資訊的BTA
61:發起模組
62:第一接收模組
63:發送命令模組
71:處理器
72:通信介面
73:記憶體
74:通信匯流排
91:第二接收模組
92:判斷模組
93:第三接收模組
94:轉交模組
101:處理器
102:通信介面
103:記憶體
104:通信匯流排
為了更清楚地說明本發明實施例或相關技術中的實施方式,下面將對實施例或相關技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對於本領域普通技術人員來講,還可以根據這些附圖獲得其他的附圖:
圖1示出了一些實施例提供的第一種電子設備結構示意圖;
圖2示出了一些實施例提供的第二種電子設備結構示意圖;
圖3示出了一些實施例提供的第一種可信應用調用過程示意圖;
圖4示出了一些實施例提供的第二種可信應用調用過程示意圖;
圖5示出了一些實施例提供的第三種可信應用調用過程示意圖;
圖6示出了一些實施例提供的第一種可信應用調用裝置示意圖;
圖7示出了一些實施例提供的第一種電子設備結構示意圖;
圖8示出了一些實施例提供的第四種可信應用調用過程示意圖;
圖9示出了一些實施例提供的第二種可信應用調用裝置示意圖;
圖10示出了一些實施例提供的第二種電子設備結構示意圖。
Claims (10)
- 一種電子設備,其特徵在於,該電子設備包括:用戶端應用CA和可信應用開發平臺; 該CA,用於發起對該可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊; 該可信應用開發平臺,用於接收該第一訪問請求,根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並將該第一訪問請求發送給該第一標識資訊對應的原生可信應用; 該第一標識資訊對應的原生可信應用,用於接收該第一訪問請求,並判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向該CA返回確認資訊; 該CA,還用於接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送調用命令; 該第一標識資訊對應的原生可信應用,還用於將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
- 如請求項1所述的電子設備,其中,該電子設備還包括: 創建模組,用於基於支援跨平臺功能的位元組碼技術,創建該可信應用開發平臺,其中該可信應用開發平臺聯結至少兩個可信執行環境作業系統分別對應的原生可信應用。
- 如請求項1所述的電子設備,其中,該第一標識資訊對應的原生可信應用,還用於若判斷自身沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊; 該CA,還用於向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令; 該第一標識資訊對應的原生可信應用,還用於根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊; 該CA,還用於接收到該返回資訊後,發起第二訪問請求。
- 如請求項3所述的電子設備,其中,該電子設備還包括:可信應用管理平臺; 該CA,還用於向該可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求; 該可信應用管理平臺,用於接收該安裝請求,根據該安裝請求,組裝包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文;並將該OTRP報文發送給該CA; 該CA,具體用於接收該OTRP報文,將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
- 一種可信應用調用方法,其特徵在於,該方法應用於用戶端應用CA,該方法包括: 發起對可信應用開發平臺聯結的與該CA對應的可信執行環境作業系統的原生可信應用的第一訪問請求,其中該第一訪問請求中攜帶該CA所屬的電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊;使該可信應用開發平臺接收該第一訪問請求,使該可信應用開發平臺根據該第一標識資訊,從該可信應用開發平臺聯結的至少兩個可信執行環境作業系統分別對應的原生可信應用中,確定該第一標識資訊對應的原生可信應用,並使該可信應用開發平臺將該第一訪問請求發送給該第一標識資訊對應的原生可信應用; 接收該第一標識資訊對應的原生可信應用返回的確認資訊,其中該確認資訊為該第一標識資訊對應的原生可信應用在接收到該第一訪問請求,並判斷自身安裝有該第二標識資訊的位元組碼可信應用時發送的; 向該第一標識資訊對應的原生可信應用發送調用命令;使該第一標識資訊對應的原生可信應用將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
- 如請求項5所述的可信應用調用方法,其中,該方法還包括: 若接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊,向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令;使該第一標識資訊對應的原生可信應用根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處; 接收該第一標識資訊對應的原生可信應用發送的返回資訊,並發起第二訪問請求,其中該返回資訊為該第一標識資訊對應的原生可信應用在成功安裝該第二標識資訊的位元組碼可信應用時發送的。
- 如請求項6所述的可信應用調用方法,其中,該接收到該第一標識資訊對應的原生可信應用返回的尚未安裝的提示資訊之後,該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令之前,該方法還包括: 向可信應用管理平臺發送安裝該第二標識資訊的位元組碼可信應用的安裝請求; 接收該可信應用管理平臺發送的包含該第二標識資訊的位元組碼可信應用的安裝資訊的開放信任協定OTRP報文,其中該OTRP報文為該可信應用管理平臺接收到該安裝請求,並根據該安裝請求,成功組裝該OTRP報文時發送的; 該向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令包括: 將該OTRP報文及安裝該第二標識資訊的位元組碼可信應用的安裝指令發送給該第一標識資訊對應的原生可信應用。
- 一種可信應用調用方法,其特徵在於,該方法應用於原生可信應用,該方法包括: 接收第一訪問請求,其中該第一訪問請求中攜帶電子設備的第一標識資訊及任一應用的位元組碼可信應用的第二標識資訊; 判斷自身是否安裝有該第二標識資訊的位元組碼可信應用,若是,向CA返回確認資訊; 接收該CA發送的調用命令,其中該調用命令為該CA在接收到該確認資訊後,向該第一標識資訊對應的原生可信應用發送的命令; 將從該CA處接收到的該調用命令轉交給該第二標識資訊的位元組碼可信應用。
- 如請求項8所述的可信應用調用方法,其中,該方法還包括: 若判斷自身沒有安裝該第二標識資訊的位元組碼可信應用,則向該CA返回尚未安裝的提示資訊;使該CA向該第一標識資訊對應的原生可信應用發送安裝該第二標識資訊的位元組碼可信應用的安裝指令; 接收該安裝指令,根據該安裝指令,基於開放信任協定OTRP,將該第二標識資訊的位元組碼可信應用安裝在自身設定位置處;並在安裝成功後,向該CA發送安裝成功的返回資訊;使該CA接收到該返回資訊後,發起第二訪問請求。
- 一種電子設備,其特徵在於,該電子設備至少包括處理器和記憶體,該處理器用於執行記憶體中存儲的電腦程式時實現如請求項5至7中任一項所述的可信應用調用方法的步驟,或,實現如請求項8或9所述的可信應用調用方法的步驟。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111275919.8 | 2021-10-29 | ||
CN202111275919.8A CN114021141A (zh) | 2021-10-29 | 2021-10-29 | 一种电子设备、可信应用调用方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI793053B true TWI793053B (zh) | 2023-02-11 |
TW202318237A TW202318237A (zh) | 2023-05-01 |
Family
ID=80058885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111133829A TWI793053B (zh) | 2021-10-29 | 2022-09-07 | 一種電子設備、可信應用調用方法、裝置、設備及介質 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN114021141A (zh) |
TW (1) | TWI793053B (zh) |
WO (1) | WO2023071423A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114021141A (zh) * | 2021-10-29 | 2022-02-08 | 中国银联股份有限公司 | 一种电子设备、可信应用调用方法、装置、设备及介质 |
CN114036524A (zh) * | 2021-10-29 | 2022-02-11 | 中国银联股份有限公司 | 一种电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105978920A (zh) * | 2016-07-28 | 2016-09-28 | 恒宝股份有限公司 | 一种访问可信应用的方法、ca及ta |
CN107003889A (zh) * | 2014-12-24 | 2017-08-01 | 英特尔公司 | 用于提供全球平台兼容可信执行环境的系统和方法 |
TW201818240A (zh) * | 2016-11-09 | 2018-05-16 | 南韓商三星電子股份有限公司 | 在豐富執行環境中安全地執行安全應用程式用的計算系統 |
CN109739522A (zh) * | 2019-01-03 | 2019-05-10 | 中国—东盟信息港股份有限公司 | 一种适用于eSIM应用的TEE OS适配系统 |
US10878083B2 (en) * | 2015-12-11 | 2020-12-29 | Thales Dis France Sa | Mobile device having trusted execution environment |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3935538A1 (en) * | 2019-03-08 | 2022-01-12 | Microsoft Technology Licensing, LLC | Secure policy ingestion into trusted execution environments |
US11295014B2 (en) * | 2019-05-08 | 2022-04-05 | Baidu Usa Llc | TPM-based secure multiparty computing system using a non-bypassable gateway |
CN111382445B (zh) * | 2020-03-03 | 2023-04-07 | 首都师范大学 | 利用可信执行环境系统提供可信服务的方法 |
CN114021141A (zh) * | 2021-10-29 | 2022-02-08 | 中国银联股份有限公司 | 一种电子设备、可信应用调用方法、装置、设备及介质 |
-
2021
- 2021-10-29 CN CN202111275919.8A patent/CN114021141A/zh active Pending
-
2022
- 2022-08-15 WO PCT/CN2022/112599 patent/WO2023071423A1/zh active Application Filing
- 2022-09-07 TW TW111133829A patent/TWI793053B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107003889A (zh) * | 2014-12-24 | 2017-08-01 | 英特尔公司 | 用于提供全球平台兼容可信执行环境的系统和方法 |
US10878083B2 (en) * | 2015-12-11 | 2020-12-29 | Thales Dis France Sa | Mobile device having trusted execution environment |
CN105978920A (zh) * | 2016-07-28 | 2016-09-28 | 恒宝股份有限公司 | 一种访问可信应用的方法、ca及ta |
TW201818240A (zh) * | 2016-11-09 | 2018-05-16 | 南韓商三星電子股份有限公司 | 在豐富執行環境中安全地執行安全應用程式用的計算系統 |
CN109739522A (zh) * | 2019-01-03 | 2019-05-10 | 中国—东盟信息港股份有限公司 | 一种适用于eSIM应用的TEE OS适配系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114021141A (zh) | 2022-02-08 |
TW202318237A (zh) | 2023-05-01 |
WO2023071423A1 (zh) | 2023-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI793053B (zh) | 一種電子設備、可信應用調用方法、裝置、設備及介質 | |
TWI709056B (zh) | 韌體升級方法及裝置 | |
US10614212B1 (en) | Secure software containers | |
US8904518B2 (en) | Information processing device, information processing method, and program distribution system | |
WO2017071207A1 (zh) | 一种应用安装方法、相关装置及应用安装系统 | |
TWI828306B (zh) | 一種電子設備 | |
US20200264863A1 (en) | Hot update method, operating system, terminal device, and storage medium | |
CN108845812A (zh) | 插件更新方法、装置、计算机设备和存储介质 | |
WO2019062703A1 (zh) | 升级方法、嵌入式系统 | |
CN103530563A (zh) | 用于更新经授权软件的系统和方法 | |
CN107567629B (zh) | 在可信执行环境容器中的动态固件模块加载器 | |
CN111831308A (zh) | 快充设备的固件更新方法、程序、快充设备及存储介质 | |
JP6793667B2 (ja) | アプリケーションダウンロード方法及び装置 | |
CN104751049A (zh) | 一种应用程序安装方法及移动终端 | |
JP2017527912A (ja) | ブラウザによりローカルサービスアセンブリを呼び出すための方法、デバイス及びシステム | |
CN107844306B (zh) | 应用程序的修复方法、装置、存储介质及终端 | |
JP2017523511A (ja) | ダイバーシティベースのソフトウェアセキュリティのための動的パッチング | |
TW200541286A (en) | Execution of unverified programs in a wireless device operating environment | |
CN106709323A (zh) | 一种识别伪装下载链接的方法和装置 | |
CN104036194B (zh) | 一种应用程序中泄露隐私数据的漏洞检测方法及装置 | |
JP2021508880A (ja) | 端末のアプリケーション管理方法、アプリケーションサーバー及び端末 | |
US20240281234A1 (en) | Method, apparatus, electronic device and storage medium for installing applications across systems | |
WO2023124420A1 (zh) | 应用签名方法、系统、交易终端及服务平台 | |
US9535715B2 (en) | Booting from a trusted network image | |
CN108958785B (zh) | 一种应用程序升级方法及装置 |