訪問存儲數(shù)據(jù)的方法及裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及移動終端技術領域,尤其涉及一種訪問存儲數(shù)據(jù)的方法及裝置。
【背景技術】
[0002]現(xiàn)有的雙系統(tǒng)智能終端中,通常采用加密存儲的方式來保證安全系統(tǒng)下存儲文件的安全性,使得普通系統(tǒng)因為沒有解密方法而無法讀取安全系統(tǒng)下存儲的文件。因此,安全系統(tǒng)在寫文件時,需要經(jīng)過加密處理,在讀取文件時,需要經(jīng)過解密處理,從而導致安全系統(tǒng)在讀寫文件的過程中,需要不斷地進行加密和解密的過程?,F(xiàn)有技術中這種加密存儲的方式花費的系統(tǒng)資源較大,導致系統(tǒng)資源的利用率不高。
【發(fā)明內容】
[0003]鑒于此,為了解決上述系統(tǒng)資源利用率不高的問題,本發(fā)明提供了一種訪問存儲數(shù)據(jù)的方法,使得安全系統(tǒng)在讀寫文件時不用經(jīng)過加密和解密的過程,只用經(jīng)過一個身份認證的過程,大大降低了對系統(tǒng)資源的占用,提高了系統(tǒng)資源的利用率。
[0004]一種訪問存儲數(shù)據(jù)的方法,包括:
[0005]接收數(shù)據(jù)訪問指令,所述數(shù)據(jù)訪問指令包含目標數(shù)據(jù)標識;
[0006]獲取所述數(shù)據(jù)訪問指令對應的系統(tǒng)類型;
[0007]根據(jù)所述系統(tǒng)類型對所述數(shù)據(jù)訪問指令進行身份認證;
[0008]若所述身份認證通過,則返回與所述目標數(shù)據(jù)標識和所述系統(tǒng)類型對應的訪問路徑。
[0009]進一步地,所述訪問存儲數(shù)據(jù)的方法還包括:若所述身份認證失敗,展示訪問失敗的提示信息。
[0010]進一步地,所述根據(jù)所述系統(tǒng)類型對所述數(shù)據(jù)訪問指令進行身份認證的步驟還包括:
[0011]獲取所述數(shù)據(jù)訪問指令對應的數(shù)字簽名,根據(jù)所述數(shù)字簽名生成私鑰,獲取與所述系統(tǒng)類型對應的公鑰,通過與所述系統(tǒng)類型對應的公鑰和所述私鑰校驗所述數(shù)字簽名,若校驗通過,則身份認證通過。
[0012]進一步地,所述獲取所述數(shù)據(jù)訪問指令對應的系統(tǒng)類型的步驟還包括:
[0013]根據(jù)init進程的進程號獲取所述數(shù)據(jù)訪問指令對應的系統(tǒng)類型,所述系統(tǒng)類型為普通系統(tǒng)或安全系統(tǒng)。
[0014]進一步地,所述返回與所述目標數(shù)據(jù)標識和所述系統(tǒng)類型對應的訪問路徑的步驟還包括:
[0015]返回與所述目標數(shù)據(jù)標識和所述系統(tǒng)類型對應的軟鏈接,所述軟鏈接對應于與所述系統(tǒng)類型對應的存儲區(qū)域中的目標數(shù)據(jù)。
[0016]此外,為了解決上述系統(tǒng)資源利用率不高的技術問題,還提供了一種訪問存儲數(shù)據(jù)的裝置。
[0017]—種訪問存儲數(shù)據(jù)的裝置,包括:
[0018]指令接收模塊,用于接收數(shù)據(jù)訪問指令,所述數(shù)據(jù)訪問指令包含目標數(shù)據(jù)標識;
[0019]系統(tǒng)類型獲取模塊,用于獲取所述數(shù)據(jù)訪問指令對應的系統(tǒng)類型;
[0020]身份認證模塊,用于根據(jù)所述系統(tǒng)類型對所述數(shù)據(jù)訪問指令進行身份認證;
[0021]訪問路徑返回模塊,用于在身份認證通過時,返回與所述目標數(shù)據(jù)標識和所述系統(tǒng)類型對應的訪問路徑。
[0022]進一步地,所述訪問路徑返回模塊還用于在所述身份認證失敗時,展示訪問失敗的提示信息。
[0023]所述身份認證模塊還用于獲取所述數(shù)據(jù)訪問指令對應的數(shù)字簽名,根據(jù)所述數(shù)字簽名生成私鑰,獲取與所述系統(tǒng)類型對應的公鑰,通過與所述系統(tǒng)類型對應的公鑰和所述私鑰校驗所述數(shù)字簽名,若校驗通過,則身份認證通過。
[0024]所述系統(tǒng)類型獲取模塊還用于根據(jù)init進程的進程號獲取所述數(shù)據(jù)訪問指令對應的系統(tǒng)類型,所述系統(tǒng)類型為普通系統(tǒng)或安全系統(tǒng)。
[0025]所述訪問路徑返回模塊還用于返回與所述目標數(shù)據(jù)標識和所述系統(tǒng)類型對應的軟鏈接,所述軟鏈接對應于與所述系統(tǒng)類型對應的存儲區(qū)域中的目標數(shù)據(jù)。
[0026]與現(xiàn)有技術相比,采用了本發(fā)明提出的訪問存儲數(shù)據(jù)的方法和裝置之后,安全系統(tǒng)下存儲的數(shù)據(jù)也可以如同普通系統(tǒng)下存儲數(shù)據(jù)一般采用明文存儲,使得安全系統(tǒng)在讀寫文件時不需要經(jīng)過加密和解密的過程,只需要經(jīng)過身份認證的過程,在保證了安全系統(tǒng)下的存儲的數(shù)據(jù)的安全性的前提下,大大降低了安全系統(tǒng)讀寫文件的計算量,降低了對系統(tǒng)資源的占用,提高了系統(tǒng)資源的利用率。
【附圖說明】
[0027]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0028]其中:
[0029]圖1為一個實施例中一種訪問存儲數(shù)據(jù)的方法的流程圖;
[0030]圖2為一個實施例中android系統(tǒng)的應用場景中的訪問存儲數(shù)據(jù)的方法的示意圖;
[0031]圖3為一個實施例中一種訪問存儲數(shù)據(jù)的裝置的結構圖。
【具體實施方式】
[0032]下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0033]為解決上述系統(tǒng)資源利用率不高的問題,在一個實施例中,特提出了一種訪問存儲數(shù)據(jù)的方法,該方法的執(zhí)行可依賴于馮諾依曼體系的計算機系統(tǒng),該計算機系統(tǒng)可以是安裝了多系統(tǒng)的智能手機、平板電腦、筆記本電腦或者個人電腦等計算機設備。這里的多系統(tǒng)可以是安全權限不同的普通系統(tǒng)和安全系統(tǒng)等,也可以是安全權限級別相同的第一操作系統(tǒng)、第二操作系統(tǒng)、第三操作系統(tǒng)等。
[0034]具體的,在本實施例中,該訪問存儲數(shù)據(jù)的方法如圖1所示,具體包括如下步驟:
[0035]步驟S102:接收數(shù)據(jù)訪問指令,所述數(shù)據(jù)訪問指令包含目標數(shù)據(jù)標識。
[0036]目標數(shù)據(jù)可以是文件或文件夾,例如,相冊、日志、聯(lián)系人資料、系統(tǒng)文件等。目標數(shù)據(jù)標識即為用于訪問目標數(shù)據(jù)的文件名或文件路徑。例如,在一個安卓系統(tǒng)的應用場景中,用戶若要訪問相冊中的某張照片,則需要輸入該照片的文件路徑,并根據(jù)該輸入的文件路徑生成數(shù)據(jù)訪問指令?;蛘哂脩粼L問該照片所在的目錄,相冊應用遍歷該目錄下的照片的文件路徑,獲取縮略圖展示給用戶。手機操作系統(tǒng)在遍歷該目錄下的照片的文件路徑時,即生成了數(shù)據(jù)訪問指令,且該數(shù)據(jù)訪問指令中包含了該照片的文件路徑的參數(shù)。
[0037]步驟S104:獲取所述數(shù)據(jù)訪問指令對應的系統(tǒng)類型。
[0038]與數(shù)據(jù)訪問指令對應的系統(tǒng)類型即為接收該數(shù)據(jù)訪問指令的系統(tǒng)的類型。例如,在安卓android的應用場景中,多系統(tǒng)的運行基于同一個Iinux內核,多個系統(tǒng)即為該Iinux內核上運行的多個Iinux系統(tǒng)的進程,且每個系統(tǒng)對應一個進程。若某個進程接收到數(shù)據(jù)訪問指令,從而對目標數(shù)據(jù)進行讀取,則獲取到的數(shù)據(jù)訪問指令對應的系統(tǒng)類型即為該進程對應的系統(tǒng)的類型。
[0039]例如,用戶在普通系統(tǒng)下操作應用進行讀寫時,獲取到的系統(tǒng)類型即為普通系統(tǒng)類型;用戶在安全系統(tǒng)下操作應用進行讀寫時,獲取到的系統(tǒng)類型即為安全系統(tǒng)類型。
[0040]進一步地,系統(tǒng)類型的獲取可以根據(jù)init進程的進程號PID (英文:ProcessIdentif ier,簡稱:PID)來獲取。系統(tǒng)類型可以為普通系統(tǒng)或安全系統(tǒng),也可以為第一操作系統(tǒng)或第二操作系統(tǒng)。在android系統(tǒng)中,init進程是Iinux內核啟動之后的用戶級進程,當接收到數(shù)據(jù)訪問指令之后,加載到普通系統(tǒng)和安全系統(tǒng)共用的內核,根據(jù)提交數(shù)據(jù)訪問指令的應用來獲取所述數(shù)據(jù)訪問指令對應的系統(tǒng)類型。也就是說,可采用與系統(tǒng)對應的進程的標識信息作為系統(tǒng)類型。
[0041]步驟S106:根據(jù)所述系統(tǒng)類型對所述數(shù)據(jù)訪問指令進行身份認證。
[0042]對數(shù)據(jù)訪問指令進行身份認證的過程即為判斷該數(shù)據(jù)訪問指令是否有權限訪問其包含的目標數(shù)據(jù)的過程。在現(xiàn)有的單一系統(tǒng)的運行環(huán)境中,對數(shù)據(jù)訪問指令進行身份認證的方式即為采用根據(jù)輸入數(shù)據(jù)訪問指令的操作者的數(shù)字簽名進行校驗的方式,即根據(jù)輸入數(shù)據(jù)訪問指令的操作者的數(shù)字簽名生成密鑰,然后通過對該密鑰進行解密來判斷操作者的身份是否符合訪問相應的目標數(shù)據(jù)的權限。
[0043]而在本實施例中,對于多系統(tǒng)的運行環(huán)境,根據(jù)所述系統(tǒng)類型對所述數(shù)據(jù)訪問指令進行身份認證的步驟即可具體為:
[0044]獲取所述數(shù)據(jù)訪問指令對應的數(shù)字簽名,根據(jù)所述數(shù)字簽名生成私鑰,獲取與所述系統(tǒng)類型對應的公鑰,通過與所述系統(tǒng)類型對應的公鑰和所述私鑰校驗所述數(shù)字簽名,若校驗通過,則身份認證通過;否則,身份認證失敗。
[0045]也就是說,每個系統(tǒng)都可以包含多個用戶帳戶,每個用戶帳戶均具有相應的數(shù)字簽名。用戶在使用某個用戶帳戶操作時,輸入的數(shù)據(jù)訪問指令對應的數(shù)字簽名即為該用戶帳戶的數(shù)字簽名。每個系統(tǒng)預先根據(jù)用戶帳戶的數(shù)字簽名生成與系統(tǒng)自身的類型匹配的公鑰,并保存下來,即某