欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于TrustZone技術(shù)的安全輸入系統(tǒng)與方法與流程

文檔序號:11156262閱讀:447來源:國知局
一種基于TrustZone技術(shù)的安全輸入系統(tǒng)與方法與制造工藝

本發(fā)明涉及一種基于TrusZone(信任區(qū)域)技術(shù)的安全輸入系統(tǒng)與方法,屬于移動終端安全領(lǐng)域。



背景技術(shù):

隨著移動互聯(lián)網(wǎng)技術(shù)和移動智能終端的快速發(fā)展,移動終端處理的業(yè)務(wù)從傳統(tǒng)的通信、娛樂領(lǐng)域延伸到移動辦公、移動支付等高安全、高敏感業(yè)務(wù)領(lǐng)域。用戶需要在移動終端輸入越來越多的敏感信息包括登陸用戶名和密碼、聯(lián)系人信息、銀行卡號等。研究發(fā)現(xiàn)大部分第三方輸入法軟件會在用戶輸入的過程中發(fā)送輸入的信息到遠(yuǎn)程服務(wù)器,其中包括用戶名和密碼等隱私信息,所以需要在這種情況下保障用戶在移動終端輸入的敏感信息不被第三方惡意截獲或被輸入法服務(wù)提供商惡意利用。

雖然對于數(shù)據(jù)的加密操作可以防止信息截獲,但是輸入法服務(wù)提供商依然可以獲取用戶輸入的敏感信息。大多數(shù)對輸入法安全問題的解決方案是在輸入法已經(jīng)獲取用戶的點擊后執(zhí)行回滾或加密等操作,不能在輸入法的代碼執(zhí)行之前采取行動,因此安全問題仍然存在。

為了更好地解決移動終端安全輸入的問題,必須從底層硬件架構(gòu)、操作系統(tǒng)等多個環(huán)節(jié)設(shè)計軟硬件結(jié)合的整體解決方案。ARM TrustZone硬件隔離技術(shù)在移動終端構(gòu)建普通執(zhí)行環(huán)境和可信執(zhí)行環(huán)境兩個獨立的運行世界,即普通世界和安全世界,并利用處理器的監(jiān)控模式提供兩個世界的切換與數(shù)據(jù)傳輸。普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境相互隔離,保證了可信執(zhí)行環(huán)境中操作的安全性。有效實現(xiàn)應(yīng)用系統(tǒng)高敏感業(yè)務(wù)與普通業(yè)務(wù)的隔離。

基于TrustZone技術(shù)實現(xiàn)安全輸入系統(tǒng)需解決以下幾個問題:如何識別敏感信息輸入場景,如何將用戶輸入操作切換到可信執(zhí)行環(huán)境,如何將可信執(zhí)行環(huán)境中的輸入信息傳輸?shù)狡胀▓?zhí)行環(huán)境中的普通應(yīng)用程序。

目前現(xiàn)有技術(shù)均未有解決上述問題的技術(shù)報導(dǎo)。



技術(shù)實現(xiàn)要素:

本發(fā)明的技術(shù)解決問題:解決用戶在移動終端的安全輸入問題,提供一種基于TrustZone技術(shù)的安全輸入系統(tǒng)與方法,從而有效地保證移動終端輸入系統(tǒng)的安全性,具有通用性、高效且用戶友好、強安全性等優(yōu)勢。

本發(fā)明技術(shù)解決方案為:一種基于TrustZone技術(shù)的安全輸入系統(tǒng)與方法,下面簡要介紹下本方案的基本思想,本發(fā)明在吸取已有解決方案優(yōu)點的基礎(chǔ)之上,提出了自己的設(shè)計思想,具體來說,本發(fā)明的基于TrustZone技術(shù)的安全輸入系統(tǒng)包括下列幾個方面:

方面一,用戶名和密碼場景識別模塊位于普通執(zhí)行環(huán)境中,利用普通應(yīng)用程序編輯框的文本域的類型信息判斷當(dāng)前是否位于用戶名和密碼輸入場景,從而判斷是否切換到可信執(zhí)行環(huán)境中的隔離初始化模塊。當(dāng)用戶在普通應(yīng)用程序中觸摸編輯框調(diào)用第三方輸入法時,普通執(zhí)行環(huán)境中的用戶名和密碼檢測模塊分析編輯框的文本域的類型信息,如果是用戶名和密碼類型,切換到隔離初始化模塊;如果不是用戶名和密碼類型,用戶可以在普通執(zhí)行環(huán)境繼續(xù)操作。

方面二,鍵盤布局檢測模塊檢測普通執(zhí)行環(huán)境中顯示的第三方輸入法軟鍵盤的安全性,在其未經(jīng)修改的情況下才繼續(xù)執(zhí)行隔離初始化模塊,從而保證用戶在安全的軟鍵盤上進(jìn)行輸入。在上述已經(jīng)識別出是用戶名和密碼場景的情況下,用戶在第三方輸入法的軟鍵盤觸摸時,輸入法框架通知隔離初始化模塊,在隔離初始化模塊的開始階段執(zhí)行鍵盤布局檢測模塊。鍵盤布局檢測模塊利用哈希值對比當(dāng)前普通執(zhí)行環(huán)境中顯示的第三方輸入法的軟鍵盤布局信息與預(yù)存在可信執(zhí)行環(huán)境中該第三方輸入法的軟鍵盤布局信息是否一致,如果一致則復(fù)用該第三方輸入法的軟鍵盤作為可信執(zhí)行環(huán)境中的軟鍵盤,然后繼續(xù)執(zhí)行隔離初始化模塊,進(jìn)而用戶可以在可信執(zhí)行環(huán)境所復(fù)用的軟鍵盤上輸入。

方面三,隔離初始化模塊負(fù)責(zé)可信執(zhí)行環(huán)境中安全輸入隔離環(huán)境的配置,基于TrustZone技術(shù)的安全輸入隔離環(huán)境包括安全外設(shè)(安全觸摸屏)和安全幀緩存。在上述鍵盤布局檢測模塊檢測當(dāng)前第三方輸入法軟件盤布局的一致性之后,隔離初始化模塊重新配置幀緩存和觸摸中斷處理。配置幀緩存即將普通執(zhí)行環(huán)境的幀緩存頁表和物理地址配置到可信執(zhí)行環(huán)境;配置觸摸中斷處理即將外設(shè)(觸摸屏)的中斷設(shè)置成優(yōu)先級較高的安全中斷,然后將觸摸屏設(shè)置成安全外設(shè)。當(dāng)安全外設(shè)上發(fā)生觸摸事件,即用戶輸入時,由可信執(zhí)行環(huán)境處理,然后將用戶輸入的數(shù)據(jù)交給鍵值安全返回模塊。

方面四,鍵值安全返回模塊負(fù)責(zé)將用戶在可信執(zhí)行環(huán)境中輸入的鍵值安全提交給普通執(zhí)行環(huán)境中的普通應(yīng)用程序。在普通執(zhí)行環(huán)境的輸入法框架中,鍵值通過第三方輸入法提交給普通應(yīng)用程序,即鍵值要經(jīng)過第三方輸入法的地址空間傳輸,存在敏感信息泄露的風(fēng)險。基于此問題,本發(fā)明設(shè)計了鍵值安全返回模塊,將用戶在可信執(zhí)行環(huán)境中輸入的鍵值不通過第三方輸入法直接提交給普通應(yīng)用程序。鍵值安全返回模塊包括安全鍵值提交服務(wù)及其與普通應(yīng)用程序之間的安全通道,安全鍵值提交服務(wù)首先使用安全通道驗證普通應(yīng)用程序的合法性,然后利用可信執(zhí)行環(huán)境和普通執(zhí)行環(huán)境的共享內(nèi)存向普通應(yīng)用程序提交鍵值。

一種基于TrustZone技術(shù)的安全輸入方法,實現(xiàn)步驟如下:

(1)用戶在普通應(yīng)用程序的編輯框觸摸調(diào)用第三方輸入法時,普通執(zhí)行環(huán)境中的用戶名和密碼場景檢測模塊首先利用編輯框的文本域的類型信息檢測當(dāng)前是否位于用戶名和密碼輸入場景,如果是用戶名和密碼輸入場景,就切換到可信執(zhí)行環(huán)境中的隔離初始化模塊;如果不是用戶名和密碼輸入場景,則用戶在普通執(zhí)行環(huán)境中繼續(xù)操作。

(2)用戶在啟動的第三方輸入法的軟鍵盤上觸摸時,相應(yīng)的觸摸事件被添加在輸入法框架的系統(tǒng)服務(wù)的觸摸輸入處理類TouchInputMapper中的鉤子函數(shù)sync()捕獲并通知隔離初始化模塊,該模塊開始時首先執(zhí)行鍵盤布局檢測模塊,檢測當(dāng)前第三方輸入法的軟鍵盤的布局是否與預(yù)存在可信執(zhí)行環(huán)境中的信息一致,如果一致則繼續(xù)進(jìn)行隔離初始化模塊的初始化操作。

(3)隔離初始化模塊首先將普通執(zhí)行環(huán)境的幀緩存頁表和物理地址配置到可信執(zhí)行環(huán)境,然后把觸摸中斷設(shè)置成可信執(zhí)行環(huán)境中的安全硬件中斷,并且設(shè)置該中斷是不可屏蔽的,最后復(fù)用上述經(jīng)過檢測的第三方輸入法的軟鍵盤作為可信執(zhí)行環(huán)境中的安全鍵盤,然后用戶可以在可信執(zhí)行環(huán)境進(jìn)行安全輸入,用戶輸入的鍵值交給鍵值安全返回模塊。

(4)鍵值安全返回模塊將鍵值提交給普通應(yīng)用程序,該模塊包括安全通道和安全鍵值提交服務(wù)。其中安全通道負(fù)責(zé)對普通應(yīng)用程序的合法性檢測,普通應(yīng)用程序啟動第三方輸入法時,輸入法框架通知隔離初始化模塊為普通應(yīng)用程序產(chǎn)生標(biāo)識其身份的唯一標(biāo)識,然后請求安全鍵值提交服務(wù)利用該標(biāo)識和輸入連接接口InputConnection對普通應(yīng)用程序進(jìn)行驗證,驗證通過則普通應(yīng)用程序和鍵值安全提交模塊完成綁定。在已綁定的情況下,當(dāng)鍵值安全返回模塊需要向普通應(yīng)用程序提交數(shù)據(jù)時,數(shù)據(jù)首先被放在可信執(zhí)行環(huán)境和普通執(zhí)行環(huán)境之間的共享內(nèi)存中,然后該模塊的安全鍵值提交服務(wù)從共享內(nèi)存中獲取數(shù)據(jù),并利用輸入連接接口InputConnection調(diào)用普通程序中的基本輸入連接接口BaseInputConnection,從而把數(shù)據(jù)不經(jīng)第三方輸入法提交給普通應(yīng)用程序。

本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點:

(1)利用ARM TrustZone硬件隔離技術(shù)在系統(tǒng)級保證安全輸入,不受第三方輸入法和普通應(yīng)用程序的限制,并通過添加系統(tǒng)服務(wù)“安全鍵值提交服務(wù)”保證用戶在可信執(zhí)行環(huán)境輸入的敏感信息向普通應(yīng)用程序提交的安全性,所本發(fā)明在保證通用性和機(jī)密性的同時,不影響用戶體驗。

(2)本發(fā)明在可信執(zhí)行環(huán)境中復(fù)用當(dāng)前普通執(zhí)行環(huán)境中第三方輸入法的軟鍵盤,減少了設(shè)計的復(fù)雜性,同時通過鍵盤布局檢測模塊保證可信執(zhí)行環(huán)境所復(fù)用的第三方輸入法的軟鍵盤是未經(jīng)修改的。該安全輸入系統(tǒng)還可以防止圖形顯示攻擊,即惡意軟件模仿普通應(yīng)用程序的用戶界面來進(jìn)行釣魚或觸摸劫持,因為鍵值安全返回模塊的安全通道利用可信執(zhí)行環(huán)境為普通應(yīng)用程序產(chǎn)生的標(biāo)識驗證其安全性,從而保證鍵值被提交給未經(jīng)修改的普通應(yīng)用程序。

(3)利用ARM TrustZone提供的硬件隔離技術(shù)將安全輸入系統(tǒng)的主要部分運行在可信執(zhí)行環(huán)境,通過在輸入法框架的系統(tǒng)服務(wù)中添加鉤子函數(shù),保證在特定操作下可以觸發(fā)可信執(zhí)行環(huán)境中相應(yīng)模塊的操作,最終在不影響用戶體驗的情況下切換到可信執(zhí)行環(huán)境讓用戶進(jìn)行輸入,通過添加系統(tǒng)服務(wù)安全鍵值提交服務(wù),不經(jīng)第三方輸入法而是使用可信執(zhí)行環(huán)境和普通執(zhí)行環(huán)境的共享內(nèi)存向普通應(yīng)用程序提交敏感信息。所以本發(fā)明具有較強的安全性。

附圖說明

圖1為本發(fā)明的整體框架示意圖;

圖2為本發(fā)明的用戶名和密碼檢測模塊工作示意圖;

圖3為本發(fā)明的安全輸入隔離環(huán)境初始化模塊示意圖;

圖4為本發(fā)明的鍵值安全返回模塊的安全鍵值提交服務(wù)與普通應(yīng)用程序的綁定示意圖。

具體實施方式

本發(fā)明利用ARM TrustZone硬件隔離技術(shù)和可信執(zhí)行環(huán)境作為基礎(chǔ)平臺,實現(xiàn)具有通用性的安全輸入系統(tǒng),在用戶名和密碼輸入場景下,普通執(zhí)行環(huán)境的操作通過安全中斷切換到可信執(zhí)行環(huán)境執(zhí)行,用戶在與普通執(zhí)行環(huán)境隔離的環(huán)境下進(jìn)行輸入,并通過添加系統(tǒng)服務(wù)向普通應(yīng)用程序提交敏感信息;保證對系統(tǒng)最小修改的前提下,在可信執(zhí)行環(huán)境中復(fù)用當(dāng)前第三方輸入法的軟鍵盤讓用戶進(jìn)行輸入,鍵盤布局檢測模塊負(fù)責(zé)檢測所復(fù)用的軟鍵盤的安全性;本發(fā)明的鍵值安全返回模塊通過添加系統(tǒng)服務(wù)“安全鍵值提交服務(wù)”而不經(jīng)過第三方輸入法向普通應(yīng)用程序提交用戶在可信執(zhí)行環(huán)境輸入的敏感信息,同時可以對普通應(yīng)用程序進(jìn)行驗證,保證了用戶在可信執(zhí)行環(huán)境輸入的敏感信息的安全性?;诖耍景l(fā)明基于TrustZone技術(shù)的安全輸入系統(tǒng)和方法具有通用性、高效且用戶友好、強安全性等優(yōu)勢。

為使本發(fā)明的目的、優(yōu)點以及技術(shù)方案更加清楚,以下通過具體實施,并結(jié)合附圖,對本發(fā)明進(jìn)一步詳細(xì)說明。

圖1從整體上描述了該方案實施的總體架構(gòu),主要包括以下四部分內(nèi)容:

一、普通執(zhí)行環(huán)境中操作系統(tǒng)對用戶名和密碼場景識別模塊的實現(xiàn)方法

當(dāng)普通應(yīng)用程序100啟用輸入法框架102并準(zhǔn)備調(diào)用第三方輸入法103時,用戶名和密碼場景檢測模塊101檢測當(dāng)前是否是用戶名和密碼輸入場景,判斷是否切換到隔離初始化模塊105。

結(jié)合圖2具體分析用戶名和密碼場景識別模塊在系統(tǒng)中是怎樣發(fā)揮作用的:

(1)用戶需要在普通應(yīng)用程序100的文本框進(jìn)行輸入操作時,觸摸文本框組件調(diào)用第三方輸入法,從而觸發(fā)用戶名和密碼場景識別模塊101;

(2)文本域中的類型信息包括用戶名、密碼、數(shù)字等,用戶名和密碼場景識別模塊101判斷類型信息是否是用戶名和密碼200;

(3)如果判斷是用戶名和密碼輸入場景,則切換到隔離初始化模塊105;

(4)如果判斷不是用戶名和密碼輸入場景,普通應(yīng)用程序100正常調(diào)用第三方輸入法103,用戶可以在普通執(zhí)行環(huán)境中執(zhí)行正常輸入操作。

二、可信執(zhí)行環(huán)境中鍵盤布局檢測模塊的實現(xiàn)方法

基于上述(一)中對用戶名和密碼場景的檢測,切換到隔離初始化模塊105當(dāng)用戶在第三方輸入法103的軟鍵盤觸摸時,輸入法框架102的系統(tǒng)服務(wù)中的鉤子函數(shù)sync()通知隔離初始化模塊105,在隔離初始化模塊105開始時要啟用鍵盤布局檢測模塊104對普通執(zhí)行環(huán)境中顯示的第三方輸入法103的軟鍵盤進(jìn)行檢測。下面描述鍵盤布局檢測模塊104的實現(xiàn)步驟:

(1)從第三方輸入法103安裝包的xml文件中獲取其軟鍵盤布局信息,并將軟鍵盤的哈希值預(yù)加載在可信執(zhí)行環(huán)境中。

(2)當(dāng)用戶在第三方輸入法103的軟鍵盤觸摸時,相應(yīng)的觸摸事件被輸入法框架的系統(tǒng)服務(wù)中的鉤子函數(shù)showSoftInput()通知隔離初始化模塊105,該模塊最開始階段執(zhí)行鍵盤布局檢測模塊104,鍵盤布局檢測模塊104將當(dāng)前普通執(zhí)行環(huán)境中顯示的第三方輸入法103的軟鍵盤的哈希值與可信執(zhí)行環(huán)境中預(yù)存的該第三方輸入法的軟鍵盤的哈希值進(jìn)行對比,如果一致則繼續(xù)執(zhí)行隔離初始化模塊105。

三、可信執(zhí)行環(huán)境中安全輸入隔離環(huán)境的初始化的實現(xiàn)方法

下面結(jié)合圖3描述本發(fā)明中隔離初始化模塊105的實現(xiàn)步驟:

(1)配置幀緩存包括兩部分:

①配置幀緩存頁表到可信執(zhí)行環(huán)境300,即從Linux驅(qū)動中獲得幀緩存的頁表,然后更新這些頁的內(nèi)存管理單元表;

②利用TrustZone地址控制器配置幀緩存安全物理地址301,TrustZone地址控制器是符合高級微控制器總線架構(gòu)的片上芯片外設(shè),能夠把地址空間分成具有可編程安全權(quán)限的連續(xù)區(qū)域,這里把幀緩存的物理地址空間設(shè)置成具有RWNN權(quán)限的區(qū)域,使得可信執(zhí)行環(huán)境對它具有讀寫權(quán)限,卻沒有執(zhí)行權(quán)限。

(2)配置觸摸中斷處理包括四部分:

①當(dāng)硬件中斷被設(shè)置成安全的,非可信執(zhí)行環(huán)境的代碼將不能訪問相關(guān)的中斷配置寄存器,所以本發(fā)明設(shè)置觸摸屏的通用中斷控制器為安全中斷302;

②IRQ和FIQ都可以作為安全中斷源,但是IRQ作為安全中斷時存在被非安全代碼屏蔽中斷的風(fēng)險,這可以通過改變當(dāng)前程序狀態(tài)寄存器的I位實現(xiàn),所以本發(fā)明設(shè)置觸摸中斷為FIQ中斷303;

③TrustZone為中斷提供可配置路由策略,本發(fā)明使用FIQ監(jiān)視異常和觸摸事件304,使得它比其他IRQ中斷有更高優(yōu)先級,這樣可信執(zhí)行環(huán)境中的觸摸事件被優(yōu)先響應(yīng);

④通過TrustZone保護(hù)控制器將觸摸屏設(shè)置成安全外設(shè)305,當(dāng)觸摸事件發(fā)生時,監(jiān)控異常處理器將調(diào)用上述的TrustZone配置。

四、鍵值安全返回模塊的實現(xiàn)方法

經(jīng)過鍵盤布局檢測模塊104和隔離初始化模塊105后,可信執(zhí)行環(huán)境中復(fù)用的第三方輸入法103的軟鍵盤可以供用戶在可信執(zhí)行環(huán)境中進(jìn)行輸入操作,用戶輸入的敏感數(shù)據(jù)交給鍵值安全返回模塊106,然后鍵值安全返回模塊106通過添加的系統(tǒng)服務(wù)安全鍵值提交服務(wù)將敏感數(shù)據(jù)提交給已綁定的普通應(yīng)用程序。下面結(jié)合圖4描述本發(fā)明的鍵值安全返回模塊106中普通應(yīng)用程序和安全鍵值提交服務(wù)的綁定,然后介紹安全鍵值提交服務(wù)從可信執(zhí)行環(huán)境和普通執(zhí)行環(huán)境的共享內(nèi)存獲取敏感數(shù)據(jù)并提交給已綁定的普通應(yīng)用程序的過程:

(1)用戶在普通應(yīng)用程序100點擊文本框,普通應(yīng)用程序100啟用第三方輸入法103,同時觸發(fā)輸入法框架102的系統(tǒng)服務(wù)中的鉤子函數(shù)startInput(),該鉤子函數(shù)通知隔離初始化模塊105,為相應(yīng)的普通應(yīng)用程序100產(chǎn)生“標(biāo)識”400,即與該普通應(yīng)用程序的簽名信息相關(guān)的隨機(jī)數(shù)。該“標(biāo)識”被發(fā)送給鍵值安全返回模塊106的“安全鍵值提交服務(wù)”,目的是請求“安全鍵值提交服務(wù)”綁定普通應(yīng)用程序401,然后安全鍵值提交服務(wù)驗證并綁定普通應(yīng)用程序402,完后綁定的普通應(yīng)用程序100才可以接收鍵值安全返回模塊106提交的敏感數(shù)據(jù)。

(2)用戶在可信執(zhí)行環(huán)境中輸入的鍵值通過鍵值安全返回模塊106提交給已完成綁定的普通應(yīng)用程序100。鍵值首先放在可信執(zhí)行環(huán)境和普通執(zhí)行環(huán)境的共享內(nèi)存中,鍵值安全返回模塊106的安全鍵值提交服務(wù)被喚醒并從共享內(nèi)存中獲取鍵值,然后該服務(wù)通過輸入連接接口InputConnection調(diào)用普通應(yīng)用程序100中的基本輸入連接接口BaseInputConnection,從而在不經(jīng)過第三方輸入法103的情況下把鍵值提交給普通應(yīng)用程序100,從而完成可信執(zhí)行環(huán)境中輸入的敏感信息向普通應(yīng)用程序100的安全提交。

提供以上實施例僅僅是為了描述本發(fā)明的目的,而并非要限制本發(fā)明的范圍。本發(fā)明的范圍由所附權(quán)利要求限定。不脫離本發(fā)明的精神和原理而做出的各種等同替換和修改,均應(yīng)涵蓋在本發(fā)明的范圍之內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
和林格尔县| 余姚市| 通州区| 沁阳市| 瓮安县| 常宁市| 裕民县| 阿合奇县| 晋宁县| 霍林郭勒市| 平安县| 汉寿县| 上高县| 巴青县| 宜良县| 闸北区| 封丘县| 巍山| 延津县| 玉屏| 赤城县| 三穗县| 新昌县| 五华县| 赤城县| 灵寿县| 塔河县| 开化县| 双桥区| 得荣县| 淳化县| 米泉市| 越西县| 阿荣旗| 秦安县| 翼城县| 大庆市| 长沙县| 保山市| 恭城| 龙门县|