數(shù)據(jù)安全保護(hù)方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)安全保護(hù)方法及裝置。
【背景技術(shù)】
[0002]隨著現(xiàn)代通信技術(shù)的不斷發(fā)展和移動終端自身性能的不斷提高,手機(jī)等移動終端已經(jīng)進(jìn)入了智能數(shù)字時代,Android系統(tǒng)憑借其開放性和易用性成為了當(dāng)今移動終端的主流操作系統(tǒng)之一。應(yīng)用Android系統(tǒng)的移動終端與用戶的生活隱私、商業(yè)活動的聯(lián)系越來越緊密,但隨之也帶來了數(shù)據(jù)安全和隱私保護(hù)的問題。在目前的Android系統(tǒng)中,主要采用“沙盒機(jī)制”(也稱為沙箱機(jī)制)來保護(hù)數(shù)據(jù)的安全,所述“沙盒機(jī)制”其核心安全防患措施是:各應(yīng)用程序在默認(rèn)情況下相互隔離運(yùn)行、互相不能訪問對方的數(shù)據(jù),具體方法描述如下:
[0003]將應(yīng)用程序置于“沙盒”之內(nèi),互相不具備信任關(guān)系的應(yīng)用程序相互隔離,獨(dú)自運(yùn)行。每個應(yīng)用程序擁有整個系統(tǒng)唯一的UID (User Identificat1n,用戶身份證明),并且設(shè)定該應(yīng)用程序允許或拒絕API (Applicat1n Programming Interface,應(yīng)用程序編程接口 )調(diào)用的權(quán)限,在默認(rèn)情況下,運(yùn)行在進(jìn)程“沙盒”內(nèi)的應(yīng)用程序沒有被分配訪問系統(tǒng)或資源的權(quán)限,無法訪問系統(tǒng)或資源,如訪問文件、目錄、網(wǎng)絡(luò)、傳感器等,且應(yīng)用程序之間無法交互。因此,無論是直接運(yùn)行于操作系統(tǒng)之上的應(yīng)用程序,還是運(yùn)行于Dalvik虛擬機(jī)的應(yīng)用程序都得到同樣的安全隔離與保護(hù),被限制在各自“沙盒”內(nèi)的應(yīng)用程序互不干擾,對系統(tǒng)與其他應(yīng)用程序的損害可降至最低。
[0004]Android系統(tǒng)的上述數(shù)據(jù)安全保護(hù)機(jī)制至少存在如下缺陷,從而導(dǎo)致應(yīng)用Android系統(tǒng)的移動終端無法有效保護(hù)用戶數(shù)據(jù)的安全:
[0005]首先,由于Android系統(tǒng)其開源的特點(diǎn),它的系統(tǒng)漏洞也是公開的,因此,很容易被惡意程序利用,從而獲得系統(tǒng)的Root權(quán)限,得到Root權(quán)限的惡意程序就可以隨意竊取操作系統(tǒng)數(shù)據(jù)庫中任意應(yīng)用程序的數(shù)據(jù)。
[0006]其次,Android系統(tǒng)的授權(quán)機(jī)制只有“接受全部權(quán)限安裝軟件”和“拒絕安裝軟件”兩個選擇,無法選擇接受部分權(quán)限,這就使得某些應(yīng)用程序能將危險(xiǎn)權(quán)限混于普通權(quán)限中而混過用戶的簡單檢查,從而對操作系統(tǒng)數(shù)據(jù)庫中應(yīng)用程序的數(shù)據(jù)安全造成威脅。
[0007]最后,用戶過度依賴的手機(jī)衛(wèi)士等第三方安全軟件,需要向用戶申請Root權(quán)限,擁有Root權(quán)限的安全軟件本身同樣存在竊取操作系統(tǒng)數(shù)據(jù)庫中應(yīng)用程序的數(shù)據(jù)的風(fēng)險(xiǎn)。
[0008]綜上所述,Android系統(tǒng)現(xiàn)有的數(shù)據(jù)安全保護(hù)機(jī)制,由于惡意程序可以通過多種方式越過沙盒的限制,從而輕易的竊取操作系統(tǒng)數(shù)據(jù)庫中應(yīng)用程序的數(shù)據(jù),因此應(yīng)用Android系統(tǒng)的移動終端無法非常有效地保護(hù)用戶數(shù)據(jù)的安全。
【發(fā)明內(nèi)容】
[0009]本申請實(shí)施例提供一種數(shù)據(jù)安全保護(hù)方法,用于提高終端的操作系統(tǒng)數(shù)據(jù)庫中應(yīng)用程序的數(shù)據(jù)的安全性,從而有效保護(hù)用戶數(shù)據(jù)的安全。
[0010]本申請實(shí)施例還提供一種數(shù)據(jù)安全保護(hù)裝置,用于提高終端的操作系統(tǒng)數(shù)據(jù)庫中應(yīng)用程序的數(shù)據(jù)的安全性,從而有效保護(hù)用戶數(shù)據(jù)的安全。
[0011]本申請實(shí)施例采用下述技術(shù)方案:
[0012]一種數(shù)據(jù)安全保護(hù)方法,包括:
[0013]為終端的操作系統(tǒng)數(shù)據(jù)庫增加加解密功能;
[0014]將操作系統(tǒng)數(shù)據(jù)庫的加解密功能以加解密接口的形式開放給操作系統(tǒng)的上層應(yīng)用程序,以使得所述上層應(yīng)用程序可執(zhí)行下述操作:
[0015]調(diào)用加密接口,對所述操作系統(tǒng)數(shù)據(jù)庫中保存的所述上層應(yīng)用程序的數(shù)據(jù)進(jìn)行加密保護(hù)。
[0016]一種數(shù)據(jù)安全保護(hù)裝置,包括:
[0017]加解密功能增加單元,用于為終端的操作系統(tǒng)數(shù)據(jù)庫增加加解密功能;
[0018]加解密接口開放單元,用于將操作系統(tǒng)數(shù)據(jù)庫的加解密功能以加解密接口的形式開放給操作系統(tǒng)的上層應(yīng)用程序;
[0019]加密單元,用于應(yīng)用程序調(diào)用加密接口,對所述操作系統(tǒng)數(shù)據(jù)庫中保存的所述上層應(yīng)用程序的數(shù)據(jù)進(jìn)行加密保護(hù)。
[0020]本申請實(shí)施例采用的上述至少一個技術(shù)方案能夠達(dá)到以下有益效果:
[0021]本申請通過為終端的操作系統(tǒng)數(shù)據(jù)庫增加加解密功能,且將操作系統(tǒng)數(shù)據(jù)庫的加解密功能以加解密接口的形式開放給操作系統(tǒng)的上層應(yīng)用程序,以使得上層應(yīng)用程序可調(diào)用加密接口,對所述操作系統(tǒng)數(shù)據(jù)庫中保存的所述上層應(yīng)用程序的數(shù)據(jù)進(jìn)行加密保護(hù),實(shí)現(xiàn)了即使終端的操作系統(tǒng)被惡意獲取Root權(quán)限,其加密保護(hù)的操作系統(tǒng)數(shù)據(jù)庫中上層應(yīng)用程序的數(shù)據(jù)也不會被竊取到,有效保證了終端用戶數(shù)據(jù)的安全。
【附圖說明】
[0022]此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申請的示意性實(shí)施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:
[0023]圖1為本申請實(shí)施例提供的數(shù)據(jù)安全保護(hù)方法操作流程圖;
[0024]圖2為本申請實(shí)施例基于Android分層架構(gòu),為數(shù)據(jù)庫增加加解密功能后開放加解密接口示意圖;
[0025]圖3為本申請實(shí)施例提供的數(shù)據(jù)安全保護(hù)裝置結(jié)構(gòu)示意圖;
[0026]圖4為本申請實(shí)施例加解密功能增加單元結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0027]為使本申請的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請具體實(shí)施例及相應(yīng)的附圖對本申請技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本申請一部分實(shí)施例,而不是全部的實(shí)施例。基于本申請中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本申請保護(hù)的范圍。
[0028]以下結(jié)合附圖,詳細(xì)說明本申請各實(shí)施例提供的技術(shù)方案。
[0029]本申請實(shí)施例提供一種數(shù)據(jù)安全保護(hù)方法,如圖1中所示為所述方法操作流程圖,具體包括如下步驟:
[0030]S100、為終端的操作系統(tǒng)數(shù)據(jù)庫增加加解密功能;
[0031]本申請實(shí)施例為保護(hù)終端的操作系統(tǒng)數(shù)據(jù)庫中應(yīng)用程序的數(shù)據(jù)的安全,防止終端的操作系統(tǒng)被惡意獲取Root權(quán)限后,隨意獲取數(shù)據(jù)庫中上層應(yīng)用程序的數(shù)據(jù),采用令操作系統(tǒng)數(shù)據(jù)庫具有加解密功能,從而終端可以對操作系統(tǒng)數(shù)據(jù)庫中上層應(yīng)用程序的數(shù)據(jù)進(jìn)行加密保護(hù)。
[0032]本申請實(shí)施例中,為操作系統(tǒng)數(shù)據(jù)庫增加加解密功能的具體實(shí)現(xiàn)方式可以包括:終端通過修改操作系統(tǒng)數(shù)據(jù)庫的底層源碼,實(shí)現(xiàn)為操作系統(tǒng)數(shù)據(jù)庫增加加解密功能。具體地,一種為操作系統(tǒng)數(shù)據(jù)庫增加加解密功能的實(shí)施例可以包括如下操作:
[0033]首先,從終端的操作系統(tǒng)源碼中提取操作系統(tǒng)數(shù)據(jù)庫的源碼;
[0034]由于終端的操作系統(tǒng)源碼的代碼量大、結(jié)構(gòu)復(fù)雜,要在整個終端的操作系統(tǒng)源碼中修改并調(diào)試操作系統(tǒng)數(shù)據(jù)庫的源碼會比較復(fù)雜,且耗時,因此本申請實(shí)施例可以將操作系統(tǒng)數(shù)據(jù)庫的源碼獨(dú)立出來,單獨(dú)針對獨(dú)立出來的操作系統(tǒng)數(shù)據(jù)庫的源碼進(jìn)行修改,以增加加解密功能。
[0035]之后,修改所述操作系統(tǒng)數(shù)據(jù)庫的源碼,增加加解密功能;
[0036]最后,將增加了加解密功能的操作系統(tǒng)數(shù)據(jù)庫的源碼合并到被提取了所述操作系統(tǒng)數(shù)據(jù)庫的源碼的終端的操作系統(tǒng)源碼中。增加了加解密功能的操作系統(tǒng)數(shù)據(jù)庫的源碼可以以加解密功能函數(shù)形式被調(diào)用。
[0037]以修改Android 系統(tǒng) SQlite 數(shù)據(jù)庫源碼,增加 AES (Ad