本發(fā)明涉及移動終端設(shè)備安全技術(shù)領(lǐng)域,具體而言,涉及一種基于trustzone的數(shù)據(jù)庫文件口令加解密方法、裝置及終端設(shè)備。
背景技術(shù):
數(shù)據(jù)庫文件是一種很常見的文件類型,很多應(yīng)用程序或系統(tǒng)應(yīng)用依賴于數(shù)據(jù)庫文件的使用。尤其是關(guān)系數(shù)據(jù)庫在很多應(yīng)用程序中,用于保存大量的需要檢索的數(shù)據(jù),例如用戶賬號、聯(lián)系人信息、郵件地址等。
目前適用于移動終端設(shè)備使用的常見數(shù)據(jù)庫技術(shù)有sqlite、msql、extremedb等。應(yīng)用最為廣泛的是sqlite,尤其在安卓與ios操作系統(tǒng)中。sqlite原生支持加密接口,但是需要擴充其加密接口的實現(xiàn),才能真正的支持加密操作。
開源項目sqlcipher是一個典型的基于sqlite實現(xiàn)的加密數(shù)據(jù)項目。該項目實現(xiàn)了sqlite的加密接口,從而支持了加密數(shù)據(jù)庫操作。但目前該項目僅支持用戶按照文件口令加密的方式進行數(shù)據(jù)庫文件的加密。這就要求用戶必須要“記住”這個口令,由于該口令是每數(shù)據(jù)庫文件獨立的,為了“記住”各數(shù)據(jù)庫文件的口令,用戶可能需要將其保存在一個介質(zhì)中,如電子文檔中,但是對于黑盒加密機制而言,安全的保存一個口令本身是很困難的。而如果對所有數(shù)據(jù)庫文件使用同樣的口令,則會降低應(yīng)用程序的安全性。
因此,需要一種新的數(shù)據(jù)庫文件加密方法,使得數(shù)據(jù)庫文件的口令對用戶是透明的,也即無需用戶來“記住”該口令。
在所述背景技術(shù)部分公開的上述信息僅用于加強對本發(fā)明的背景的理解,因此它可以包括不構(gòu)成對本領(lǐng)域普通技術(shù)人員已知的現(xiàn)有技術(shù)的信息。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種基于trustzone的數(shù)據(jù)庫文件口令加解密方法、裝置及終端設(shè)備,能夠提供一種數(shù)據(jù)庫文件口令安全地創(chuàng)建及使用的方法,使口令對用戶透明,保證口令的安全性。
本發(fā)明的其他特性和優(yōu)點將通過下面的詳細描述變得顯然,或部分地通過本發(fā)明的實踐而習得。
根據(jù)本發(fā)明的一方面,提供一種基于trustzone的數(shù)據(jù)庫文件口令加密方法,包括:接收口令創(chuàng)建請求,口令創(chuàng)建請求中包括:數(shù)據(jù)庫文件的第一元數(shù)據(jù)及類密鑰標識;為數(shù)據(jù)庫文件創(chuàng)建用于加密數(shù)據(jù)庫文件的口令,并將第一元數(shù)據(jù)與口令合并為第二元數(shù)據(jù);查找存儲的類密鑰標識對應(yīng)的類密鑰;通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)加密請求,數(shù)據(jù)加密請求包括:類密鑰及第二元數(shù)據(jù);可信應(yīng)用程序根據(jù)預(yù)先存儲于可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密;可信應(yīng)用程序根據(jù)解密后的類密鑰,對第二元數(shù)據(jù)進行加密;以及可信應(yīng)用程序通過客戶接口,將加密后的第二元數(shù)據(jù)返回至普通執(zhí)行環(huán)境中存儲。
根據(jù)本發(fā)明的一實施方式,類密鑰標識與應(yīng)用場景相對應(yīng);應(yīng)用場景包括:終端設(shè)備啟動成功后可以訪問、終端設(shè)備啟動成功后且合法登錄后可以訪問、終端設(shè)備啟動成功且合法登錄且用戶界面解除鎖定后可以訪問、終端設(shè)備啟動成功且合法登錄且用戶界面鎖定時僅可以寫入。
根據(jù)本發(fā)明的一實施方式,上述方法還包括:接收加密后的第二元數(shù)據(jù);以及將加密后的第二元數(shù)據(jù)與加密后的數(shù)據(jù)庫文件合并為一個文件進行存儲;其中,數(shù)據(jù)庫文件根據(jù)口令在可信執(zhí)行環(huán)境中被加密。
根據(jù)本發(fā)明的一實施方式,上述方法還包括:通過客戶接口,向可信應(yīng)用程序發(fā)送各應(yīng)用場景對應(yīng)的類密鑰;可信應(yīng)用程序根據(jù)主密鑰對各應(yīng)用場景對應(yīng)的類密鑰進行加密;以及可信應(yīng)用程序通過客戶接口,將加密后的各應(yīng)用場景對應(yīng)的類密鑰返回至普通執(zhí)行環(huán)境中存儲。
根據(jù)本發(fā)明的一實施方式,客戶接口采用強制訪問控制權(quán)限管理機制。
根據(jù)本發(fā)明的另一個方面,提供一種適用于如上述任意一項的加密方法的數(shù)據(jù)庫文件口令解密方法,包括:接收數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求,元數(shù)據(jù)解密請求包括:數(shù)據(jù)庫文件的待解密的元數(shù)據(jù)及類密鑰標識,元數(shù)據(jù)包括:用于加密數(shù)據(jù)庫文件的口令;查找存儲的類密鑰標識對應(yīng)的類密鑰;通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)解密請求,數(shù)據(jù)解密請求包括:類密鑰及待解密的元數(shù)據(jù);可信應(yīng)用程序根據(jù)預(yù)先存儲于可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密;可信應(yīng)用程序根據(jù)解密后的類密鑰,對元數(shù)據(jù)進行解密;以及可信應(yīng)用程序通過客戶接口,將解密后的元數(shù)據(jù)返回至普通執(zhí)行環(huán)境中。
根據(jù)本發(fā)明的一實施方式,上述方法還包括:接收普通執(zhí)行環(huán)境中的客戶應(yīng)用程序發(fā)送的對數(shù)據(jù)庫文件的操作請求;以及根據(jù)操作請求,發(fā)送數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求。
根據(jù)本發(fā)明的一實施方式,上述方法還包括:將解密后的數(shù)據(jù)庫文件發(fā)送給客戶應(yīng)用程序;其中,數(shù)據(jù)庫文件根據(jù)解密后的元數(shù)據(jù)中的口令在可信執(zhí)行環(huán)境中被解密。
根據(jù)本發(fā)明的再一個方面,提供一種基于trustzone的數(shù)據(jù)庫文件口令加密裝置,包括:請求接收模塊,用于接收口令創(chuàng)建請求,口令創(chuàng)建請求中包括:數(shù)據(jù)庫文件的第一元數(shù)據(jù)及類密鑰標識;口令創(chuàng)建模塊,用于為數(shù)據(jù)庫文件創(chuàng)建用于加密數(shù)據(jù)庫文件的口令,并將第一元數(shù)據(jù)與口令合并為第二元數(shù)據(jù);類密鑰獲取模塊,用于查找存儲的類密鑰標識對應(yīng)的類密鑰;加密請求模塊,用于通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)加密請求,數(shù)據(jù)加密請求包括:類密鑰及第二元數(shù)據(jù);類密鑰解密模塊,用于通過可信應(yīng)用程序根據(jù)預(yù)先存儲于可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密;加密執(zhí)行模塊,用于通過可信應(yīng)用程序根據(jù)解密后的類密鑰,對第二元數(shù)據(jù)進行加密;以及數(shù)據(jù)返回模塊,用于通過可信應(yīng)用程序通過客戶接口,將加密后的第二元數(shù)據(jù)返回至普通執(zhí)行環(huán)境中存儲。
根據(jù)本發(fā)明的一實施方式,類密鑰標識與應(yīng)用場景相對應(yīng);應(yīng)用場景包括:終端設(shè)備啟動成功后可以訪問、終端設(shè)備啟動成功后且合法登錄后可以訪問、終端設(shè)備啟動成功且合法登錄且用戶界面解除鎖定后可以訪問、終端設(shè)備啟動成功且合法登錄且用戶界面鎖定時僅可以寫入。
根據(jù)本發(fā)明的一實施方式,上述裝置還包括:元數(shù)據(jù)接收模塊,用于接收加密后的第二元數(shù)據(jù);以及合并存儲模塊,用于將加密后的第二元數(shù)據(jù)與加密后的數(shù)據(jù)庫文件合并為一個文件進行存儲;其中,數(shù)據(jù)庫文件根據(jù)口令在可信執(zhí)行環(huán)境中被加密。
根據(jù)本發(fā)明的一實施方式,上述裝置還包括:類密鑰發(fā)送模塊,通過客戶接口,向可信應(yīng)用程序發(fā)送各應(yīng)用場景對應(yīng)的類密鑰;類密鑰加密模塊,用于通過可信應(yīng)用程序根據(jù)主密鑰對各應(yīng)用場景對應(yīng)的類密鑰進行加密;以及類密鑰返回模塊,用于通過可信應(yīng)用程序通過客戶接口,將加密后的各應(yīng)用場景對應(yīng)的類密鑰返回至普通執(zhí)行環(huán)境中存儲。
根據(jù)本發(fā)明的一實施方式,客戶接口采用強制訪問控制權(quán)限管理機制。
根據(jù)本發(fā)明的再一個方面,提供一種適用于如上述任意一項的加密裝置的數(shù)據(jù)庫文件口令解密裝置,包括:口令請求接收模塊,用于接收數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求,元數(shù)據(jù)解密請求包括:數(shù)據(jù)庫文件的待解密的元數(shù)據(jù)及類密鑰標識,元數(shù)據(jù)包括:用于加密數(shù)據(jù)庫文件的口令;類密鑰獲取模塊,用于查找存儲的類密鑰標識對應(yīng)的類密鑰;解密請求模塊,用于通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)解密請求,數(shù)據(jù)解密請求包括:類密鑰及待解密的元數(shù)據(jù);類密鑰解密模塊,用于通過可信應(yīng)用程序根據(jù)預(yù)先存儲于可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密;解密執(zhí)行模塊,用于通過可信應(yīng)用程序根據(jù)解密后的類密鑰,對元數(shù)據(jù)進行解密;以及數(shù)據(jù)返回模塊,用于通過可信應(yīng)用程序通過客戶接口,將解密后的元數(shù)據(jù)返回至普通執(zhí)行環(huán)境中。
根據(jù)本發(fā)明的一實施方式,上述裝置還包括:操作請求接收模塊,用于接收普通執(zhí)行環(huán)境中的客戶應(yīng)用程序發(fā)送的對數(shù)據(jù)庫文件的操作請求;以及口令請求發(fā)送模塊,用于根據(jù)操作請求,發(fā)送數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求。
根據(jù)本發(fā)明的一實施方式,上述裝置還包括:數(shù)據(jù)庫文件發(fā)送模塊,用于將解密后的數(shù)據(jù)庫文件發(fā)送給客戶應(yīng)用程序;其中,數(shù)據(jù)庫文件根據(jù)解密后的元數(shù)據(jù)中的口令在可信執(zhí)行環(huán)境中被解密。
根據(jù)本發(fā)明的再一個方面,提供一種終端設(shè)備,包括:處理器;以及存儲器,用于存儲處理器的可執(zhí)行指令;其中處理器配置為經(jīng)由執(zhí)行可執(zhí)行指令來執(zhí)行如上述任意一項的方法。
根據(jù)本發(fā)明的再一個方面,提供一種終端設(shè)備,包括:處理器;以及存儲器,用于存儲處理器的可執(zhí)行指令;其中處理器配置為經(jīng)由執(zhí)行可執(zhí)行指令來執(zhí)行如上述任意一項的方法。
根據(jù)本發(fā)明實施方式的基于基于trustzone的數(shù)據(jù)庫文件口令加密方法,通過依靠普通執(zhí)行環(huán)境中的服務(wù)為數(shù)據(jù)庫文件創(chuàng)建口令,在可信執(zhí)行環(huán)境中對口令進行加密,并在普通執(zhí)行環(huán)境中存儲口令的密文,保證了口令創(chuàng)建和使用的安全性;并且使得用戶不需要記錄數(shù)據(jù)庫文件的口令,即口令對用戶是透明的;此外,由于trustzone的可信執(zhí)行環(huán)境一般是與終端設(shè)備具有一一對應(yīng)的綁定關(guān)系的,而數(shù)據(jù)庫文件口令操作依賴的普通執(zhí)行環(huán)境中的服務(wù)綁定了trustzone的可信執(zhí)行環(huán)境,因此數(shù)據(jù)庫文件的口令不能在另一臺終端設(shè)備上使用,從而阻止了數(shù)據(jù)庫文件的任意拷貝、移動和備份。
應(yīng)當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性的,并不能限制本發(fā)明。
附圖說明
通過參照附圖詳細描述其示例實施例,本發(fā)明的上述和其它目標、特征及優(yōu)點將變得更加顯而易見。
圖1是根據(jù)一示例示出的終端設(shè)備中普通執(zhí)行環(huán)境與可信執(zhí)行的架構(gòu)示意圖。
圖2是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令加密方法的流程圖。
圖3是根據(jù)一示例示出的另一種終端設(shè)備中普通執(zhí)行環(huán)境與可信執(zhí)行的架構(gòu)示意圖。
圖4是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令解密方法的流程圖。
圖5是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令加密裝置的框圖。
圖6是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令解密裝置的框圖。
具體實施方式
現(xiàn)在將參考附圖更全面地描述示例實施方式。然而,示例實施方式能夠以多種形式實施,且不應(yīng)被理解為限于在此闡述的范例;相反,提供這些實施方式使得本發(fā)明將更加全面和完整,并將示例實施方式的構(gòu)思全面地傳達給本領(lǐng)域的技術(shù)人員。附圖僅為本發(fā)明的示意性圖解,并非一定是按比例繪制。圖中相同的附圖標記表示相同或類似的部分,因而將省略對它們的重復(fù)描述。
此外,所描述的特征、結(jié)構(gòu)或特性可以以任何合適的方式結(jié)合在一個或更多實施方式中。在下面的描述中,提供許多具體細節(jié)從而給出對本發(fā)明的實施方式的充分理解。然而,本領(lǐng)域技術(shù)人員將意識到,可以實踐本發(fā)明的技術(shù)方案而省略所述特定細節(jié)中的一個或更多,或者可以采用其它的方法、組元、裝置、步驟等。在其它情況下,不詳細示出或描述公知結(jié)構(gòu)、方法、裝置、實現(xiàn)或者操作以避免喧賓奪主而使得本發(fā)明的各方面變得模糊。
trustzone技術(shù)是arm平臺上的一種可信執(zhí)行環(huán)境(trustedexecutionenvironment,tee)標準,其通過硬件的訪問隔離和安全內(nèi)核軟件的配合,提供了在可信執(zhí)行環(huán)境中安全的執(zhí)行部分代碼的能力?;趖rustzone硬件隔離技術(shù)所構(gòu)建的可信執(zhí)行環(huán)境將涉及敏感數(shù)據(jù)的應(yīng)用程序分成客戶應(yīng)用程序(clientapp)和可信應(yīng)用程序(trustedapp,ta),客戶應(yīng)用程序在普通執(zhí)行環(huán)境(richexecutionenvironment,ree)中被執(zhí)行以用于處理大部分非敏感業(yè)務(wù),普通執(zhí)行環(huán)境即移動終端設(shè)備的普通操作系統(tǒng)(richoperationsystem,richos),而可信應(yīng)用程序在可信執(zhí)行環(huán)境中被執(zhí)行以處理敏感業(yè)務(wù)。普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境相互隔離,運行在普通執(zhí)行環(huán)境中的客戶應(yīng)用程序通過客戶接口(trustzoneclientapi)接入(access)運行在可信執(zhí)行環(huán)境中的可信應(yīng)用程序,或通過該客戶接口與可信應(yīng)用程序交換數(shù)據(jù)。
圖1是根據(jù)一示例示出的終端設(shè)備中普通執(zhí)行環(huán)境與可信執(zhí)行的架構(gòu)示意圖。圖2是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令加密方法的流程圖。結(jié)合圖1及圖2,圖1所示的方法10包括:
在步驟s102中,接收口令創(chuàng)建請求。
例如,由圖1中的加解密存儲服務(wù)接收由數(shù)據(jù)庫加密實現(xiàn)服務(wù)發(fā)送的口令創(chuàng)建請求。數(shù)據(jù)庫加密實現(xiàn)服務(wù)通過向加解密存儲服務(wù)發(fā)送該口令創(chuàng)建請求,請求加解密存儲服務(wù)為圖1中所述的數(shù)據(jù)庫中的數(shù)據(jù)庫文件創(chuàng)建用于加密的口令。
加解密存儲服務(wù)及數(shù)據(jù)庫加密實現(xiàn)服務(wù)均可實現(xiàn)為由至少一個函數(shù)構(gòu)成的代碼集合,各函數(shù)包括:函數(shù)名稱,函數(shù)調(diào)用信息和函數(shù)實現(xiàn)中的部分或全部。當有多個函數(shù)時,一個函數(shù)實現(xiàn)還可以包括調(diào)用所定義的其他函數(shù)等。
該口令創(chuàng)建請求例如為通過進程間通信(inter-processcommunication,ipc)發(fā)送的口令創(chuàng)建調(diào)用,如dbus、biner進程間通信機制等。
該口令創(chuàng)建請求中以參數(shù)形式攜帶數(shù)據(jù)庫文件的第一元數(shù)據(jù)及類密鑰標識(id)。
在步驟s104中,為數(shù)據(jù)庫文件創(chuàng)建用于加密該數(shù)據(jù)庫文件的口令,并將該第一元數(shù)據(jù)與該口令合并為第二元數(shù)據(jù)。
例如,當加解密存儲服務(wù)接收到數(shù)據(jù)庫加密實現(xiàn)服務(wù)發(fā)送的口令創(chuàng)建請求后,將第一元數(shù)據(jù)與口令合并,生成第二元數(shù)據(jù)。
在步驟s106中,查找存儲的類密鑰標識對應(yīng)的類密鑰。
例如,由加解密存儲服務(wù)查找存儲的類密鑰標識對應(yīng)的類密鑰。在加解密存儲服務(wù)中,存儲有各類密鑰標識所對應(yīng)的類密鑰,其中各類密鑰為在可信執(zhí)行環(huán)境中使用主密鑰加密后的密文。
在一些實施例中,類密鑰標識與調(diào)用該數(shù)據(jù)庫文件的應(yīng)用程序的應(yīng)用場景相對應(yīng)。應(yīng)用場景例如包括:
1)終端設(shè)備啟動成功后可以訪問:該場景通常用于常駐系統(tǒng)服務(wù)對加密的需求;
2)終端設(shè)備啟動成功后且合法登錄后可以訪問:該場景通常用于系統(tǒng)服務(wù)和系統(tǒng)應(yīng)用的加密需求;
3)終端設(shè)備啟動成功且合法登錄且用戶界面解除鎖定后可以訪問:該場景通常用于普通客戶應(yīng)用程序的加密需求;或者,
4)終端設(shè)備啟動成功且合法登錄且用戶界面鎖定時僅可以寫入:該場景通常用于常駐應(yīng)用程序的加密需求,如短信、郵件、即時通信(im)等,需要在用戶界面被鎖定的情況下向系統(tǒng)安全的寫入數(shù)據(jù)。
由于應(yīng)用程序在不同應(yīng)用場景下的安全策略是不同的,應(yīng)用場景每次擇一的選擇上述的一種應(yīng)用場景以確定相應(yīng)的類密鑰,差異化的應(yīng)用場景可以提高應(yīng)用數(shù)據(jù)的安全性。舉例來說,如果一個加密項的策略被設(shè)置為終端設(shè)備啟動成功且合法登錄且用戶界面解除鎖定后可以訪問,則其他時刻的訪問請求會被拒絕,并且對應(yīng)的類密鑰也會被從內(nèi)存中清除出去,從而進一步提升了加密的安全性。
密鑰是黑盒加密算法的主要攻擊點,因此需要保證密鑰在存儲及使用時的安全性。存儲的安全性主要是指攻擊者不能夠?qū)ζ溥M行讀寫訪問,使用的安全性主要是指密鑰在內(nèi)存中遭受動態(tài)攻擊的可能。在本方法中,為了增強密鑰的安全性,將存儲于普通執(zhí)行環(huán)境中的類密鑰以密文形式存儲。
在一些實施例中,加解密存儲服務(wù)在初始化過程中,還需要通過客戶接口,向可信應(yīng)用程序確認該主密鑰是否可用。
在一些實施例中,在步驟s106之前該方法10還可以進一步包括如下步驟:
在步驟1中,加解密存儲服務(wù)通過客戶接口,向可信應(yīng)用程序發(fā)送各應(yīng)用場景對應(yīng)的類密鑰。
在步驟2中,可信應(yīng)用程序根據(jù)trustzone上下文中的主密鑰對各應(yīng)用場景的類密鑰進行加密。
在步驟3中,可信應(yīng)用程序通過客戶接口,將加密后的各應(yīng)用場景對應(yīng)的類密鑰返回至普通執(zhí)行環(huán)境中的加解密存儲服務(wù)中存儲。
在步驟s108中,通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)加密請求。
例如,由加解密存儲服務(wù)向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)加密請求,該數(shù)據(jù)加密請求包括:在步驟s106中查找到的類密鑰及第二元數(shù)據(jù)。
如圖1中所示,在具體實施時,加解密存儲服務(wù)可以通過trustzone客戶接口,并利用內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制,實現(xiàn)加密存儲服務(wù)與專屬服務(wù)于加解密的可信應(yīng)用程序之間的調(diào)用,即加密存儲服務(wù)與專屬服務(wù)于加解密的可信應(yīng)用程序之間的通信服務(wù)。需要說明的是內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制為本領(lǐng)域技術(shù)人員所知悉,在此不再贅述。
在一些實施例中,客戶接口采用強制訪問控制(mac)權(quán)限管理機制,如采用selinux訪問控制機制。
selinux是一套基于標簽(label)的安全系統(tǒng)。在selinux策略中,通過標簽的設(shè)定來實現(xiàn)主體對客體的控制。其中主體可以為終端設(shè)備中運行的每個進程,客體則為系統(tǒng)中的所有資源,包括:文件系統(tǒng)、目錄、文件、文件啟動指示符、端口、消息接口和網(wǎng)絡(luò)接口等。每個進程都擁有自己的標簽,而每個客體對象也都擁有自己的標簽。通過編寫的selinux策略,來控制進程標簽可以對客體對象標簽進行訪問,如文件訪問、讀寫及socket操作等。例如,通過策略配置,允許標簽為a的進程對標簽為b的客戶接口的調(diào)用,從而保證加密存儲服務(wù)的接口不被任意濫用。
在步驟s110中,可信應(yīng)用程序根據(jù)預(yù)先存儲于所述可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密。
主密鑰為每個終端設(shè)備所獨立擁有的,在可執(zhí)行環(huán)境初始化過程中,該主密鑰被加載到trustzone的映像文件中,即加載到trustzone的可信執(zhí)行環(huán)境的上下文中。由于該主密鑰被預(yù)埋到可信執(zhí)行環(huán)境中,不會在普通執(zhí)行環(huán)境中出現(xiàn),因此在普通執(zhí)行環(huán)境中由于無法獲取該主密鑰而無法解密類密鑰,從而增強了通過類密鑰加密的應(yīng)用數(shù)據(jù)的安全性。
在步驟s112中,可信應(yīng)用程序根據(jù)解密后的類密鑰,對第二元數(shù)據(jù)進行加密。
可信應(yīng)用程序例如可以采用aes(advancedencryptionstandard,高級加密標準)或des(dataencryptionstandard,數(shù)據(jù)加密標準)等對稱加密算法,根據(jù)解密后的類密鑰對待加密數(shù)據(jù)進行加密,本發(fā)明不以此為限。可用的加密模式包括:cbc(cipherblockchaining,塊狀密碼鏈),ofb(outputfeedback,輸出反饋),cfb(cipherfeedback,加密反饋)。
如圖1所示,可信應(yīng)用程序可以通過調(diào)用可信執(zhí)行環(huán)境中通用的硬件加密引擎,實施上述數(shù)據(jù)加密操作。
在步驟s114中,可信應(yīng)用程序通過客戶接口,將加密后的第二元數(shù)據(jù)返回至普通執(zhí)行環(huán)境中存儲。
可信應(yīng)用程序完成加密后,通過客戶接口,向普通執(zhí)行環(huán)境中返回加密后的數(shù)據(jù)。
在一些實施例中,圖2所示的方法10還包括:
在步驟s116中,接收加密后的第二元數(shù)據(jù)。
例如由數(shù)據(jù)庫加密時限服務(wù)通過加解密存儲服務(wù)接收加密后的第二元數(shù)據(jù)。
在步驟s118中,將加密后的第二元數(shù)據(jù)與加密后的數(shù)據(jù)庫文件合并為一個文件進行存儲。
其中,數(shù)據(jù)庫文件的加密是根據(jù)上述的口令在可信執(zhí)行環(huán)境中進行的。
例如,可以如圖1所示,數(shù)據(jù)庫加密實現(xiàn)服務(wù)通過可信執(zhí)行環(huán)境中的通用的硬件加密引擎對數(shù)據(jù)庫文件進行加密。數(shù)據(jù)庫加密實現(xiàn)服務(wù)將待加密的數(shù)據(jù)庫文件與口令的明文發(fā)送給可信執(zhí)行環(huán)境中的硬件加密引擎,由硬件加密引擎為數(shù)據(jù)庫文件進行加密。在具體實施時,數(shù)據(jù)庫加密實現(xiàn)服務(wù)可以通過trustzone客戶接口,并利用內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制,實現(xiàn)數(shù)據(jù)庫加密實現(xiàn)服務(wù)與硬件加密引擎之間的調(diào)用,即數(shù)據(jù)庫加密實現(xiàn)服務(wù)與硬件加密引擎之間的通信服務(wù)。需要說明的是內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制為本領(lǐng)域技術(shù)人員所知悉,在此不再贅述。
或者,圖3是根據(jù)一示例示出的另一種終端設(shè)備中普通執(zhí)行環(huán)境與可信執(zhí)行的架構(gòu)示意圖。如圖3所示,數(shù)據(jù)庫加密實現(xiàn)服務(wù)還可以通過可信執(zhí)行環(huán)境中的第二可信應(yīng)用程序?qū)?shù)據(jù)庫文件進行加密。數(shù)據(jù)庫加密實現(xiàn)服務(wù)將待加密的數(shù)據(jù)庫文件與口令的明文發(fā)送給可信執(zhí)行環(huán)境中的第二可信應(yīng)用程序,由第二可信應(yīng)用程序為數(shù)據(jù)庫文件進行加密。在具體實施時,數(shù)據(jù)庫加密實現(xiàn)服務(wù)可以通過trustzone客戶接口,并利用內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制,實現(xiàn)數(shù)據(jù)庫加密實現(xiàn)服務(wù)與第二可信應(yīng)用程序之間的調(diào)用,即數(shù)據(jù)庫加密實現(xiàn)服務(wù)與第二可信應(yīng)用程序之間的通信服務(wù)。而圖3中的第一可信應(yīng)用程序用于實現(xiàn)上述對第二元數(shù)據(jù)的加密操作。需要說明的是內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制為本領(lǐng)域技術(shù)人員所知悉,在此不再贅述。
根據(jù)本發(fā)明實施方式的基于基于trustzone的數(shù)據(jù)庫文件口令加密方法,通過依靠普通執(zhí)行環(huán)境中的服務(wù)為數(shù)據(jù)庫文件創(chuàng)建口令,在可信執(zhí)行環(huán)境中對口令進行加密,并在普通執(zhí)行環(huán)境中存儲口令的密文,保證了口令創(chuàng)建和使用的安全性;并且使得用戶不需要記錄數(shù)據(jù)庫文件的口令,即口令對用戶是透明的;此外,由于trustzone的可信執(zhí)行環(huán)境一般是與終端設(shè)備具有一一對應(yīng)的綁定關(guān)系的,而數(shù)據(jù)庫文件口令操作依賴的普通執(zhí)行環(huán)境中的服務(wù)綁定了trustzone的可信執(zhí)行環(huán)境,因此數(shù)據(jù)庫文件的口令不能在另一臺終端設(shè)備上使用,從而阻止了數(shù)據(jù)庫文件的任意拷貝、移動和備份。
應(yīng)清楚地理解,本發(fā)明描述了如何形成和使用特定示例,但本發(fā)明的原理不限于這些示例的任何細節(jié)。相反,基于本發(fā)明公開的內(nèi)容的教導(dǎo),這些原理能夠應(yīng)用于許多其它實施方式。
圖4是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令解密方法的流程圖。該解密方法可適用于上述的數(shù)據(jù)庫文件口令存儲方法10。結(jié)合圖1及圖3,圖4所示的方法20包括:
在步驟s202中,接收數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求。
例如,由圖1所示的加解密存儲服務(wù)接收由數(shù)據(jù)庫加密實現(xiàn)服務(wù)發(fā)送的元數(shù)據(jù)解密請求。
該元數(shù)據(jù)解密請求例如為通過進程間通信發(fā)送的口令創(chuàng)建調(diào)用,如dbus、biner進程間通信機制等。
該元數(shù)據(jù)解密請求例如以參數(shù)形式攜帶數(shù)據(jù)庫文件的待解密的元數(shù)據(jù)及類密鑰標識,元數(shù)據(jù)包括:用于加密數(shù)據(jù)庫文件的口令。
在步驟s204中,查找存儲的所述類密鑰標識對應(yīng)的類密鑰。
例如,由加解密存儲服務(wù)查找存儲的類密鑰標識對應(yīng)的類密鑰。在加解密存儲服務(wù)中,存儲有各類密鑰標識所對應(yīng)的類密鑰,其中各類密鑰為在可信執(zhí)行環(huán)境中使用主密鑰加密后的密文。
在一些實施例中,類密鑰標識與調(diào)用該數(shù)據(jù)庫文件的應(yīng)用程序的應(yīng)用場景相對應(yīng)。應(yīng)用場景的類別同上,在此不再贅述。
密鑰是黑盒加密算法的主要攻擊點,因此需要保證密鑰在存儲及使用時的安全性。存儲的安全性主要是指攻擊者不能夠?qū)ζ溥M行讀寫訪問,使用的安全性主要是指密鑰在內(nèi)存中遭受動態(tài)攻擊的可能。在本方法中,為了增強密鑰的安全性,將存儲于普通執(zhí)行環(huán)境中的類密鑰以密文形式存儲。
在步驟s206中,通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)解密請求。
例如,由加解密存儲服務(wù)向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)加密請求,該數(shù)據(jù)加密請求包括:在步驟s206中查找到的類密鑰及待解密的元數(shù)據(jù)。
如圖1中所示,在具體實施時,加解密存儲服務(wù)可以通過trustzone客戶接口,并利用內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制,實現(xiàn)加密存儲服務(wù)與專屬服務(wù)于加解密的可信應(yīng)用程序之間的調(diào)用,即加密存儲服務(wù)與專屬服務(wù)于加解密的可信應(yīng)用程序之間的通信服務(wù)。需要說明的是內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制為本領(lǐng)域技術(shù)人員所知悉,在此不再贅述。
在步驟s208中,可信應(yīng)用程序根據(jù)預(yù)先存儲于所述可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密。
主密鑰為每個終端設(shè)備所獨立擁有的,在可執(zhí)行環(huán)境初始化過程中,該主密鑰被加載到trustzone的映像文件中,即加載到trustzone的可信執(zhí)行環(huán)境的上下文中。由于該主密鑰被預(yù)埋到可信執(zhí)行環(huán)境中,不會在普通執(zhí)行環(huán)境中出現(xiàn),因此在普通執(zhí)行環(huán)境中由于無法獲取該主密鑰而無法解密類密鑰,從而增強了通過類密鑰加密的應(yīng)用數(shù)據(jù)的安全性。
在步驟s210中,可信應(yīng)用程序根據(jù)解密后的類密鑰,對待解密的元數(shù)據(jù)進行加密。
對應(yīng)上述加密過程中所使用的加密算法,對待解密數(shù)據(jù)進行解密操作。
在步驟s212中,可信應(yīng)用程序通過客戶接口,將解密后的元數(shù)據(jù)返回至加解密存儲服務(wù)中。
可信應(yīng)用程序完成解密后,通過客戶接口,向普通執(zhí)行環(huán)境中返回解密后的元數(shù)據(jù)。
此外,在一些實施例中,該方法20還可以包括:
在步驟s214中,接收普通執(zhí)行環(huán)境中的客戶應(yīng)用程序發(fā)送的對數(shù)據(jù)庫文件的操作請求。
例如,如圖1中所示,當客戶應(yīng)用程序需要對數(shù)據(jù)庫文件進行入讀寫或增刪操作時,向數(shù)據(jù)庫加密實現(xiàn)服務(wù)發(fā)送該操作請求。
需要說明的而是,在具體實施時,數(shù)據(jù)庫加密實現(xiàn)服務(wù)可以實現(xiàn)在每個應(yīng)用程序,即每個調(diào)用該服務(wù)的內(nèi)部。也可以為獨立的服務(wù),各應(yīng)用程序通過如進程間通信等機制實現(xiàn)對該服務(wù)的調(diào)用。
在步驟s216中,根據(jù)該操作請求,發(fā)送數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求。
例如,如圖1中所示的數(shù)據(jù)庫加密實現(xiàn)服務(wù)接收到該操作請求后,向加解密存儲服務(wù)發(fā)送該元數(shù)據(jù)解密請求,以對該包含了口令的元數(shù)據(jù)進行解密。
此外,該方法20還可以進一步包括:
在步驟s218中,將解密后的數(shù)據(jù)庫文件發(fā)送給客戶應(yīng)用程序。
其中,數(shù)據(jù)庫文件是根據(jù)解密后的元數(shù)據(jù)中的口令在可信執(zhí)行環(huán)境中被解密。
例如,可以如圖1所示,數(shù)據(jù)庫加密實現(xiàn)服務(wù)通過可信執(zhí)行環(huán)境中的通用的硬件加密引擎對數(shù)據(jù)庫文件進行解密。數(shù)據(jù)庫加密實現(xiàn)服務(wù)將待解密的數(shù)據(jù)庫文件與口令的明文發(fā)送給可信執(zhí)行環(huán)境中的硬件加密引擎,由硬件加密引擎為數(shù)據(jù)庫文件進行解密。在具體實施時,數(shù)據(jù)庫加密實現(xiàn)服務(wù)可以通過trustzone客戶接口,并利用內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制,實現(xiàn)數(shù)據(jù)庫加密實現(xiàn)服務(wù)與硬件加密引擎之間的調(diào)用,即數(shù)據(jù)庫加密實現(xiàn)服務(wù)與硬件加密引擎之間的通信服務(wù)。需要說明的是內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制為本領(lǐng)域技術(shù)人員所知悉,在此不再贅述。
或者,如圖3所示,數(shù)據(jù)庫加密實現(xiàn)服務(wù)還可以通過可信執(zhí)行環(huán)境中的第二可信應(yīng)用程序?qū)?shù)據(jù)庫文件進行解密。數(shù)據(jù)庫加密實現(xiàn)服務(wù)將待加密的數(shù)據(jù)庫文件與口令的明文發(fā)送給可信執(zhí)行環(huán)境中的第二可信應(yīng)用程序,由第二可信應(yīng)用程序為數(shù)據(jù)庫文件進行解密。在具體實施時,數(shù)據(jù)庫加密實現(xiàn)服務(wù)可以通過trustzone客戶接口,并利用內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制,實現(xiàn)數(shù)據(jù)庫加密實現(xiàn)服務(wù)與第二可信應(yīng)用程序之間的調(diào)用,即數(shù)據(jù)庫加密實現(xiàn)服務(wù)與第二可信應(yīng)用程序之間的通信服務(wù)。而圖3中的第一可信應(yīng)用程序用于實現(xiàn)上述對第二元數(shù)據(jù)的解密操作。需要說明的是內(nèi)核空間中普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境中的通信機制為本領(lǐng)域技術(shù)人員所知悉,在此不再贅述。
數(shù)據(jù)庫加密實現(xiàn)服務(wù)將解密后的數(shù)據(jù)庫文件發(fā)送給請求對該數(shù)據(jù)文件操作的客戶應(yīng)用程序。
本領(lǐng)域技術(shù)人員可以理解實現(xiàn)上述實施方式的全部或部分步驟被實現(xiàn)為由cpu執(zhí)行的計算機程序。在該計算機程序被cpu執(zhí)行時,執(zhí)行本發(fā)明提供的上述方法所限定的上述功能。所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,該存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
此外,需要注意的是,上述附圖僅是根據(jù)本發(fā)明示例性實施方式的方法所包括的處理的示意性說明,而不是限制目的。易于理解,上述附圖所示的處理并不表明或限制這些處理的時間順序。另外,也易于理解,這些處理可以是例如在多個模塊中同步或異步執(zhí)行的。
下述為本發(fā)明裝置實施例,可以用于執(zhí)行本發(fā)明方法實施例。對于本發(fā)明裝置實施例中未披露的細節(jié),請參照本發(fā)明方法實施例。
圖5是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令加密裝置的框圖。如圖5所示,該裝置30包括:請求接收模塊302、口令創(chuàng)建模塊304、類密鑰獲取模塊306、加密請求模塊308、類密鑰解密模塊310、加密執(zhí)行模塊312、數(shù)據(jù)返回模塊314。
其中,請求接收模塊302用于接收口令創(chuàng)建請求,口令創(chuàng)建請求中包括:數(shù)據(jù)庫文件的第一元數(shù)據(jù)及類密鑰標識。
口令創(chuàng)建模塊304用于為數(shù)據(jù)庫文件創(chuàng)建用于加密數(shù)據(jù)庫文件的口令,并將第一元數(shù)據(jù)與口令合并為第二元數(shù)據(jù)。
類密鑰獲取模塊306用于查找存儲的類密鑰標識對應(yīng)的類密鑰。
在一些實施例中,類密鑰標識與應(yīng)用場景相對應(yīng);應(yīng)用場景包括:終端設(shè)備啟動成功后可以訪問、終端設(shè)備啟動成功后且合法登錄后可以訪問、終端設(shè)備啟動成功且合法登錄且用戶界面解除鎖定后可以訪問、終端設(shè)備啟動成功且合法登錄且用戶界面鎖定時僅可以寫入。
加密請求模塊308用于通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)加密請求,數(shù)據(jù)加密請求包括:類密鑰及第二元數(shù)據(jù)。
類密鑰解密模塊310用于通過可信應(yīng)用程序根據(jù)預(yù)先存儲于可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密。
加密執(zhí)行模塊312用于通過可信應(yīng)用程序根據(jù)解密后的類密鑰,對第二元數(shù)據(jù)進行加密。
數(shù)據(jù)返回模塊314用于通過可信應(yīng)用程序通過客戶接口,將加密后的第二元數(shù)據(jù)返回至普通執(zhí)行環(huán)境中存儲。
在一些實施例中,裝置30還包括:元數(shù)據(jù)接收模塊316及合并存儲模塊318。其中,元數(shù)據(jù)接收模塊316用于接收加密后的第二元數(shù)據(jù)。合并存儲模塊318用于將加密后的第二元數(shù)據(jù)與加密后的數(shù)據(jù)庫文件合并為一個文件進行存儲;其中,數(shù)據(jù)庫文件根據(jù)口令在可信執(zhí)行環(huán)境中被加密。
在一些實施例中,裝置30還包括:類密鑰發(fā)送模塊320、類密鑰加密模塊322及類密鑰返回模塊324。其中,類密鑰發(fā)送模塊320用于通過客戶接口,向可信應(yīng)用程序發(fā)送各應(yīng)用場景對應(yīng)的類密鑰。類密鑰加密模塊322用于通過可信應(yīng)用程序根據(jù)主密鑰對各應(yīng)用場景對應(yīng)的類密鑰進行加密。類密鑰返回模塊324用于通過可信應(yīng)用程序通過客戶接口,將加密后的各應(yīng)用場景對應(yīng)的類密鑰返回至普通執(zhí)行環(huán)境中存儲。
在一些實施例中,客戶接口采用強制訪問控制權(quán)限管理機制。
根據(jù)本發(fā)明實施方式的基于基于trustzone的數(shù)據(jù)庫文件口令加密裝置,通過依靠普通執(zhí)行環(huán)境中的服務(wù)為數(shù)據(jù)庫文件創(chuàng)建口令,在可信執(zhí)行環(huán)境中對口令進行加密,并在普通執(zhí)行環(huán)境中存儲口令的密文,保證了口令創(chuàng)建和使用的安全性;并且使得用戶不需要記錄數(shù)據(jù)庫文件的口令,即口令對用戶是透明的;此外,由于trustzone的可信執(zhí)行環(huán)境一般是與終端設(shè)備具有一一對應(yīng)的綁定關(guān)系的,而數(shù)據(jù)庫文件口令操作依賴的普通執(zhí)行環(huán)境中的服務(wù)綁定了trustzone的可信執(zhí)行環(huán)境,因此數(shù)據(jù)庫文件的口令不能在另一臺終端設(shè)備上使用,從而阻止了數(shù)據(jù)庫文件的任意拷貝、移動和備份。
圖6是根據(jù)一示例性實施方式示出的一種基于trustzone的數(shù)據(jù)庫文件口令解密裝置的框圖。該解密裝置適用于上述加密裝置30。如圖6所示,該解密裝置40包括:口令請求接收模塊402、類密鑰獲取模塊404、解密請求模塊406、類密鑰解密模塊408、解密執(zhí)行模塊410、數(shù)據(jù)返回模塊412。
其中,口令請求接收模塊402用于接收數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求,元數(shù)據(jù)解密請求包括:數(shù)據(jù)庫文件的待解密的元數(shù)據(jù)及類密鑰標識,元數(shù)據(jù)包括:用于加密數(shù)據(jù)庫文件的口令。
類密鑰獲取模塊404用于查找存儲的類密鑰標識對應(yīng)的類密鑰。
解密請求模塊406用于通過普通執(zhí)行環(huán)境與可信執(zhí)行環(huán)境之間的客戶接口,向可信執(zhí)行環(huán)境中的可信應(yīng)用程序發(fā)送數(shù)據(jù)解密請求,數(shù)據(jù)解密請求包括:類密鑰及待解密的元數(shù)據(jù)。
類密鑰解密模塊408用于通過可信應(yīng)用程序根據(jù)預(yù)先存儲于可信執(zhí)行環(huán)境中的主密鑰,對類密鑰進行解密。
解密執(zhí)行模塊410用于通過可信應(yīng)用程序根據(jù)解密后的類密鑰,對元數(shù)據(jù)進行解密。
數(shù)據(jù)返回模塊412用于通過可信應(yīng)用程序通過客戶接口,將解密后的元數(shù)據(jù)返回至普通執(zhí)行環(huán)境中。
在一些實施例中,該裝置40還包括:操作請求接收模塊414及口令請求發(fā)送模塊416。其中,操作請求接收模塊414用于接收普通執(zhí)行環(huán)境中的客戶應(yīng)用程序發(fā)送的對數(shù)據(jù)庫文件的操作請求??诹钫埱蟀l(fā)送模塊416用于根據(jù)操作請求,發(fā)送數(shù)據(jù)庫文件的元數(shù)據(jù)解密請求。
在一些實施例中,該裝置40還包括:數(shù)據(jù)庫文件發(fā)送模塊418,用于將解密后的數(shù)據(jù)庫文件發(fā)送給客戶應(yīng)用程序;其中,數(shù)據(jù)庫文件根據(jù)解密后的元數(shù)據(jù)中的口令在可信執(zhí)行環(huán)境中被解密。
需要注意的是,上述附圖中所示的框圖是功能實體,不一定必須與物理或邏輯上獨立的實體相對應(yīng)??梢圆捎密浖问絹韺崿F(xiàn)這些功能實體,或在一個或多個硬件模塊或集成電路中實現(xiàn)這些功能實體,或在不同網(wǎng)絡(luò)和/或處理器裝置和/或微控制器裝置中實現(xiàn)這些功能實體。
通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員易于理解,這里描述的示例實施方式可以通過軟件實現(xiàn),也可以通過軟件結(jié)合必要的硬件的方式來實現(xiàn)。因此,根據(jù)本發(fā)明實施方式的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲在一個非易失性存儲介質(zhì)(可以是cd-rom,u盤,移動硬盤等)中或網(wǎng)絡(luò)上,包括若干指令以使得一臺計算設(shè)備(可以是個人計算機、服務(wù)器、移動終端、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行根據(jù)本發(fā)明實施方式的方法。
以上具體地示出和描述了本發(fā)明的示例性實施方式。應(yīng)可理解的是,本發(fā)明不限于這里描述的詳細結(jié)構(gòu)、設(shè)置方式或?qū)崿F(xiàn)方法;相反,本發(fā)明意圖涵蓋包含在所附權(quán)利要求的精神和范圍內(nèi)的各種修改和等效設(shè)置。