一種瀏覽器緩存數(shù)據(jù)的保護方法及裝置的制造方法
【專利摘要】本發(fā)明實施例提供一種瀏覽器緩存數(shù)據(jù)的保護方法及裝置,方法為,終端在將瀏覽器緩存數(shù)據(jù)寫入磁盤之前,對瀏覽器緩存數(shù)據(jù)進行加密,即使惡意軟件或者插件盜取磁盤中的緩存文件,也無法從緩存文件中讀取到正確的內(nèi)容,從而提高了數(shù)據(jù)的安全性。此外,終端采用預(yù)設(shè)解密算法,對終端磁盤上保存的加密后的瀏覽器緩存數(shù)據(jù)進行解密,以得到網(wǎng)絡(luò)資源數(shù)據(jù)。采用本發(fā)明實施例技術(shù)方案,終端在讀取磁盤中寫入的瀏覽器緩存數(shù)據(jù)的過程中,通過相應(yīng)的解密算法對磁盤中寫入的瀏覽器緩存數(shù)據(jù)進行解密,使終端能夠可靠讀取磁盤中寫入的瀏覽器緩存數(shù)據(jù)。
【專利說明】
一種瀏覽器緩存數(shù)據(jù)的保護方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明實施例涉及計算機網(wǎng)絡(luò)安全領(lǐng)域,尤其涉及一種瀏覽器緩存數(shù)據(jù)的保護方法及裝置。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的發(fā)展,各種移動終端(如手機,pad等)以其通信便捷,操作方便的特性得到了廣泛的應(yīng)用。目前,終端可以具有獨立的操作系統(tǒng),用戶可以根據(jù)需要自行安裝第三方服務(wù)商提供的應(yīng)用軟件,通過此類應(yīng)用軟件,可以擴展終端的功能。
[0003]目前,在安卓系統(tǒng)中,若終端需要通過瀏覽器獲取網(wǎng)絡(luò)數(shù)據(jù),則需要通過瀏覽器生成網(wǎng)絡(luò)資源請求指令;并將該網(wǎng)絡(luò)資源請求指令發(fā)送至相應(yīng)的服務(wù)器;服務(wù)器響應(yīng)該網(wǎng)絡(luò)資源請求指令,生成相應(yīng)的網(wǎng)絡(luò)資源數(shù)據(jù)發(fā)送至終端;終端將服務(wù)器發(fā)送的網(wǎng)絡(luò)資源數(shù)據(jù)緩存至內(nèi)存中,并寫入磁盤中形成緩存文件。
[0004]基于上述網(wǎng)絡(luò)資源數(shù)據(jù)過程可知,當(dāng)終端遭受到惡意攻擊時,攻擊者即可從終端的緩存文件中,獲取終端磁盤中保存的網(wǎng)絡(luò)資源數(shù)據(jù),從而導(dǎo)致網(wǎng)絡(luò)資源數(shù)據(jù)的泄露。
[0005]由此可見,瀏覽器緩存數(shù)據(jù)存在安全性差的問題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明實施例提供一種瀏覽器緩存數(shù)據(jù)的保護方法及裝置,用以解決目前存在的瀏覽器緩存數(shù)據(jù)安全性差的問題。
[0007]本發(fā)明實施例提供的具體技術(shù)方案如下:
[0008]本發(fā)明實施例提供一種瀏覽器緩存數(shù)據(jù)的保護方法,應(yīng)用于安卓操作系統(tǒng)中,所述方法包括:
[0009]通過瀏覽器內(nèi)核獲取瀏覽器緩存數(shù)據(jù);
[0010]采用預(yù)設(shè)加密算法,通過所述瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)進行加密;并
[0011]通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤。
[0012]本發(fā)明實施例提供一種瀏覽器緩存數(shù)據(jù)的保護裝置,應(yīng)用于安卓操作系統(tǒng)中,所述裝置包括:
[0013]獲取單元,用于通過瀏覽器內(nèi)核獲取瀏覽器緩存數(shù)據(jù);
[0014]加密單元,用于采用預(yù)設(shè)加密算法,通過所述瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)進行加密;
[0015]寫入單元,用于通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤。
[0016]本發(fā)明實施例中,終端通過瀏覽器內(nèi)核獲取服務(wù)器發(fā)送的瀏覽器緩存數(shù)據(jù);通過該瀏覽器內(nèi)核對該瀏覽器緩存數(shù)據(jù)進行加密,并將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤。采用本發(fā)明實施例技術(shù)方案,終端在將瀏覽器緩存數(shù)據(jù)寫入磁盤之前,對瀏覽器緩存數(shù)據(jù)進行加密,即使攻擊者獲取磁盤中寫入的緩存文件,也無法讀取到正確的內(nèi)容,從而提高了瀏覽器緩存數(shù)據(jù)的安全性。
【附圖說明】
[0017]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0018]圖1為本發(fā)明實施例中通信系統(tǒng)結(jié)構(gòu)示意圖;
[0019]圖2為本發(fā)明實施例一中對瀏覽器緩存數(shù)據(jù)進行保護的流程圖;
[0020]圖3為本發(fā)明實施例一中實現(xiàn)對緩存文件中瀏覽器緩存數(shù)據(jù)進行加密的代碼;
[0021]圖4a為現(xiàn)有技術(shù)中實現(xiàn)將緩存文件的瀏覽器緩存數(shù)據(jù)部分寫入磁盤的代碼;
[0022]圖4b為本發(fā)明實施例中實現(xiàn)將緩存文件的瀏覽器緩存數(shù)據(jù)部分寫入磁盤的代碼;
[0023]圖5為本發(fā)明實施例二中讀取瀏覽器緩存數(shù)據(jù)的流程圖;
[0024]圖6a為現(xiàn)有技術(shù)中實現(xiàn)讀取瀏覽器緩存數(shù)據(jù)的代碼;
[0025]圖6b為本發(fā)明實施例二中實現(xiàn)讀取瀏覽器緩存數(shù)據(jù)的代碼;
[0026]圖7為本發(fā)明實施例中瀏覽器緩存數(shù)據(jù)保護的裝置結(jié)構(gòu)示意圖。
【具體實施方式】
[0027]為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0028]參閱圖1所示,為本發(fā)明實施例中通信系統(tǒng)架構(gòu)示意圖,該通信系統(tǒng)包括服務(wù)器和終端。具體的,終端用于向服務(wù)器發(fā)送網(wǎng)絡(luò)資源數(shù)據(jù)獲取請求,以請求獲取相應(yīng)的網(wǎng)絡(luò)資源數(shù)據(jù),以及接收服務(wù)器發(fā)送的網(wǎng)絡(luò)資源數(shù)據(jù),并作為瀏覽器緩存數(shù)據(jù),在將瀏覽器緩存數(shù)據(jù)寫入磁盤緩存文件之前,對瀏覽器緩存數(shù)據(jù)進行加密,該終端為具備用戶交互界面的終端(如手機、便攜式電腦等),而終端請求的網(wǎng)絡(luò)資源數(shù)據(jù)根據(jù)具體應(yīng)用場景確定,例如,當(dāng)用戶通過客戶端進行網(wǎng)頁瀏覽時,終端請求的網(wǎng)絡(luò)資源數(shù)據(jù)即為頁面數(shù)據(jù);服務(wù)器用于獲取終端請求的網(wǎng)絡(luò)資源數(shù)據(jù),并將該網(wǎng)絡(luò)資源數(shù)據(jù)發(fā)送至終端,該服務(wù)器根據(jù)功能不同,發(fā)送至終端的網(wǎng)絡(luò)資源數(shù)據(jù)也不同,例如,當(dāng)該服務(wù)器為Web服務(wù)器時,該Web服務(wù)器發(fā)送至終端的網(wǎng)絡(luò)資源數(shù)據(jù)即為Web數(shù)據(jù)。
[0029]在上述通信系統(tǒng)中,可以包含多個服務(wù)器和多個終端,本發(fā)明實施例中,僅以通信系統(tǒng)僅包含一個服務(wù)器和一個終端為例,詳細(xì)描述網(wǎng)絡(luò)資源數(shù)據(jù)寫入本地磁盤和讀取的過程。
[0030]下面結(jié)合說明書附圖,對本發(fā)明實施例作進一步詳細(xì)描述。
[0031]實施例一
[0032]參閱圖2所示,本發(fā)明實施例中,終端通過瀏覽器內(nèi)核保護瀏覽器緩存數(shù)據(jù)的過程,包括:
[0033]步驟200:終端通過瀏覽器內(nèi)核獲取瀏覽器緩存數(shù)據(jù)。
[0034]本發(fā)明實施例中,終端接收用戶輸入的指令,并根據(jù)該用戶輸入的指令,生成網(wǎng)絡(luò)資源數(shù)據(jù)獲取請求;終端將該網(wǎng)絡(luò)資源數(shù)據(jù)獲取請求發(fā)送至相應(yīng)的服務(wù)器。其中,上述終端中安裝的操作系統(tǒng)為安卓操作系統(tǒng)。
[0035]可選的,終端可以運行本地安裝的客戶端應(yīng)用程序,并登錄該客戶端后,通過瀏覽器內(nèi)核向服務(wù)器發(fā)送網(wǎng)絡(luò)資源數(shù)據(jù)獲取請求;終端還可以直接運行本地安裝的瀏覽器,并檢測用戶在該瀏覽器界面上輸入的關(guān)鍵字或者選中的鏈接信息,生成包含該關(guān)鍵字或鏈接信息的網(wǎng)絡(luò)資源數(shù)據(jù)獲取請求;終端接收服務(wù)器發(fā)送的網(wǎng)絡(luò)資源數(shù)據(jù),終端的瀏覽器內(nèi)核將該網(wǎng)絡(luò)資源數(shù)據(jù)視為瀏覽器緩存數(shù)據(jù),瀏覽器內(nèi)核根據(jù)該瀏覽器緩存數(shù)據(jù)在瀏覽器界面中呈現(xiàn)相應(yīng)的信息。
[0036]其中,當(dāng)終端通過瀏覽器內(nèi)核獲取網(wǎng)絡(luò)資源數(shù)據(jù)時,該瀏覽器內(nèi)核為chromium內(nèi)核,或者基于chromium內(nèi)核進行二次開發(fā)的瀏覽器內(nèi)核。以下以終端直接通過瀏覽器請求網(wǎng)絡(luò)資源數(shù)據(jù)為例,詳細(xì)介紹終端獲取網(wǎng)絡(luò)資源數(shù)據(jù)并保護該網(wǎng)絡(luò)資源數(shù)據(jù)的過程。
[0037]可選的,若終端的瀏覽器內(nèi)核為chromium內(nèi)核,則當(dāng)終端接收到服務(wù)器發(fā)送的網(wǎng)絡(luò)資源數(shù)據(jù)時,終端的chromium內(nèi)核將該網(wǎng)絡(luò)資源數(shù)據(jù)作為瀏覽器緩存數(shù)據(jù),并將該瀏覽器緩存數(shù)據(jù)存儲至內(nèi)存中;與此同時,終端通過chromium內(nèi)核中的Backend對象為每一個獲取的網(wǎng)絡(luò)資源創(chuàng)建Entry對象,例如,終端請求的網(wǎng)絡(luò)資源數(shù)據(jù)為兩張圖片,則Backend對象為每一張圖片均創(chuàng)建對應(yīng)的Entry對象;終端通過Entry對象在磁盤中創(chuàng)建緩存文件(File)ο
[0038]步驟210:采用預(yù)設(shè)加密算法,通過所述瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)進行加密。
[0039]本發(fā)明實施例中,終端通過瀏覽器內(nèi)核進行加密之前,還需要生成所述瀏覽器緩存數(shù)據(jù)對應(yīng)的緩存文件,該緩存文件包含三部分,該三部分分別為文件頭部(head),瀏覽器緩存數(shù)據(jù)(data),以及文件尾部(eof)。其中,文件頭部是位于文件開頭的一段承擔(dān)一定任務(wù)的數(shù)據(jù);文件尾部包含用于表征文件結(jié)束的標(biāo)志。
[0040]基于上述緩存文件的結(jié)構(gòu),可選的,終端通過瀏覽器內(nèi)核至少對瀏覽器緩存數(shù)據(jù)進行加密;具體的,終端通過瀏覽器內(nèi)核僅對所述瀏覽器緩存數(shù)據(jù)進行加密,采用該技術(shù)方案,僅對緩存文件中的瀏覽器緩存數(shù)據(jù)進行加密,在有效保證瀏覽器緩存數(shù)據(jù)安全的同時,減少了進行加密處理時系統(tǒng)的數(shù)據(jù)處理量。
[0041]可選的,終端通過瀏覽器內(nèi)核對所述緩存文件的文件頭部和瀏覽器緩存數(shù)據(jù)進行加密;或者,終端通過瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)和緩存文件的文件尾部進行加密;或者,終端通過瀏覽器內(nèi)核對所述緩存文件的文件頭部,瀏覽器緩存數(shù)據(jù),以及緩存文件的文件尾部均進行加密。采用該技術(shù)方案,終端通過瀏覽器內(nèi)核對緩存文件中的多個部分進行加密,當(dāng)攻擊者獲取到緩存文件時,將增大攻擊者破解緩存文件的難度,提高了瀏覽器緩存數(shù)據(jù)的安全性。
[0042]終端通過瀏覽器內(nèi)核采用多種加密算法,對所述瀏覽器緩存數(shù)據(jù)進行加密,可選的,終端通過瀏覽器內(nèi)核采用字符取反方式對所述瀏覽器緩存數(shù)據(jù)進行加密;或者,終端通過瀏覽器內(nèi)核采用字符流前后倒置方式對所述瀏覽器緩存數(shù)據(jù)進行加密;或者,終端通過瀏覽器內(nèi)核采用MD5算法對所述瀏覽器緩存數(shù)據(jù)進行加密。此外,終端還可以通過瀏覽器內(nèi)核采用其他加密算法對瀏覽器緩存數(shù)據(jù)進行加密,在此不再贅述。
[0043]可選的,終端也可以采用上述加密算法對所述緩存文件中的各個部分進行加密。
[0044]進一步的,終端還可以通過瀏覽器內(nèi)核采用多種加密算法的組合對緩存文件進行加密;例如,終端通過瀏覽器內(nèi)核采用第一種加密算法對緩存文件的文件頭部進行加密,采用第二種加密算法對緩存文件的瀏覽器緩存數(shù)據(jù)進行加密;再如,終端通過瀏覽器內(nèi)核采用第一種加密算法對緩存文件的文件頭部進行加密,采用第二種加密算法對緩存文件的瀏覽器緩存數(shù)據(jù)進行加密,采用第三種加密算法對緩存文件的文件尾部進行加密;又如,終端通過瀏覽器內(nèi)核采用第一種加密算法對緩存文件的文件尾部進行加密,采用第二種加密算法對緩存文件的瀏覽器緩存數(shù)據(jù)進行加密。采用該技術(shù)方案,終端通過瀏覽器內(nèi)核采用多種加密方式的組合對緩存文件中的多個部分進行加密,當(dāng)攻擊者獲取到緩存文件時,將增大攻擊者破解緩存文件的難度,提高了瀏覽器緩存數(shù)據(jù)的安全性。
[0045]終端在通過瀏覽器內(nèi)核對瀏覽器緩存數(shù)據(jù)進行加密的過程中,需要占用內(nèi)存資源,因此,可選的,終端在通過瀏覽器內(nèi)核對瀏覽器緩存數(shù)據(jù)進行加密之后,將占用的內(nèi)存資源進行釋放。
[0046]進一步的,當(dāng)終端通過瀏覽器內(nèi)核對緩存文件中的多個部分進行加密時,終端在通過瀏覽器內(nèi)核對緩存文件中需要加密的部分加密完畢之后,將占用的內(nèi)存資源進行釋放。
[0047]采用該技術(shù)方案,在對瀏覽器緩存數(shù)據(jù)進行加密之后,即對加密過程占用的內(nèi)存資源進行釋放,從而避免了內(nèi)存資源占用量較大時,導(dǎo)致的終端響應(yīng)速度慢,甚至內(nèi)存泄露的問題,保證了終端的數(shù)據(jù)處理性能。
[0048]具體的,參閱圖3所示,為本發(fā)明實施例中,實現(xiàn)對緩存文件中的瀏覽器緩存數(shù)據(jù)進行加密的代碼;其中,ProtectCacheData函數(shù)為用于對瀏覽器緩存數(shù)據(jù)進行加密的函數(shù);預(yù)設(shè)加密算法為字符取反方式;ClearTmpDataMem函數(shù)為用于釋放臨時申請的內(nèi)存資源的函數(shù)。
[0049]采用上述技術(shù)方案,終端在獲取到瀏覽器緩存數(shù)據(jù)之后,將該瀏覽器緩存數(shù)據(jù)寫入本地磁盤之前,即對瀏覽器緩存數(shù)據(jù)進行加密,避免了攻擊者竊取瀏覽器緩存數(shù)據(jù)的問題,提高了系統(tǒng)安全性。
[0050]步驟220:通過瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤。
[0051]本發(fā)明實施例中,終端通過瀏覽器內(nèi)核將上述加密后的瀏覽器緩存數(shù)據(jù)存儲至緩存文件中,并將緩存文件寫入本地磁盤。
[0052]可選的,終端通過瀏覽器內(nèi)核將緩存文件寫入本地磁盤后,釋放瀏覽器緩存數(shù)據(jù)占用的內(nèi)存資源。采用該技術(shù)方案,在對瀏覽器緩存數(shù)據(jù)進行加密之后,即對瀏覽器緩存數(shù)據(jù)時占用的內(nèi)存資源進行釋放,從而避免了內(nèi)存資源占用量較大時,導(dǎo)致的終端響應(yīng)速度慢的問題,保證了終端的數(shù)據(jù)處理性能。
[0053]可選的,終端還可以通過瀏覽器內(nèi)核將加密信息寫入磁盤中,該加密信息用于表征緩存文件的加密位置,如僅對緩存文件中的瀏覽器緩存數(shù)據(jù)進行加密,以便后續(xù)讀取瀏覽器緩存數(shù)據(jù)的時候,能夠迅速對緩存文件中的加密部分進行解密。其中,上述加密信息可以通過預(yù)設(shè)字符表示,如I表示僅對瀏覽器緩存數(shù)據(jù)進行加密,2表示對所述瀏覽器緩存數(shù)據(jù)和緩存文件的文件頭部進行加密;3表示對所述瀏覽器緩存數(shù)據(jù)和緩存文件的文件尾部進行加密;4表示對所述緩存文件的文件頭部,瀏覽器緩存數(shù)據(jù),以及緩存文件的文件尾部均進行加密。
[0054]可選的,若終端的瀏覽器內(nèi)核為chromium內(nèi)核,則終端通過瀏覽器內(nèi)核執(zhí)行寫入操作的函數(shù)分別為 SimpleSynchronousEntry::1nitializeCreatedFile, SimpleSynchronousEntry::WriteData 和 SimpleSynchronousEntry::Close ;其中,SimpleSynchronousEntry::1nitializeCreatedFile用于將緩存文件的文件頭部寫入磁盤中;SimpleSynchronousEntry: =WriteData用于將瀏覽器緩存數(shù)據(jù)的網(wǎng)絡(luò)資源數(shù)據(jù)(瀏覽器緩存數(shù)據(jù))部分寫入磁盤中!SimpleSynchronousEntry::Close用于將緩存文件的文件尾部寫入磁盤中。例如,參閱圖4a所示,為現(xiàn)有技術(shù)中,將緩存文件的瀏覽器緩存數(shù)據(jù)部分寫入磁盤中的代碼實現(xiàn)過程;參閱圖4b所示,為本發(fā)明實施例中,將緩存文件的瀏覽器緩存數(shù)據(jù)部分寫入磁盤中的代碼實現(xiàn)過程;其中,ProtectCacheData函數(shù)為用于對瀏覽器緩存數(shù)據(jù)進行加密的函數(shù);ClearTmpDataMem函數(shù)為用于釋放臨時申請的內(nèi)存資源的函數(shù)。
[0055]進一步的,若終端無須將獲取到的瀏覽器緩存數(shù)據(jù)寫入磁盤,則該終端仍可以通過瀏覽器內(nèi)核對上述瀏覽器緩存數(shù)據(jù)進行加密,從而避免了攻擊者的惡意竊取,保證了終端獲取的瀏覽器緩存數(shù)據(jù)的安全性。
[0056]本發(fā)明實施例中,僅以終端通過瀏覽器請求網(wǎng)絡(luò)資源數(shù)據(jù)為例,詳細(xì)介紹終端寫入數(shù)據(jù)的過程,終端通過客戶端調(diào)用瀏覽器應(yīng)用程序請求網(wǎng)絡(luò)資源數(shù)據(jù)的過程與上述方式相似,在此不再贅述。
[0057]實施例二
[0058]參閱圖5所示,本發(fā)明實施例中,終端通過瀏覽器內(nèi)核讀取瀏覽器緩存數(shù)據(jù)的過程,包括:
[0059]步驟500:接收瀏覽器緩存數(shù)據(jù)讀取指令;其中,所述瀏覽器緩存數(shù)據(jù)讀取指令中包含待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識,且所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件中包含的瀏覽器緩存數(shù)據(jù)為在寫入本地磁盤之前,經(jīng)過加密處理的數(shù)據(jù)。
[0060]本發(fā)明實施例中,終端接收瀏覽器緩存數(shù)據(jù)讀取指令,該瀏覽器緩存數(shù)據(jù)讀取指令可以為用戶直接在該終端交互界面上輸入的指令,也可以是終端接收其他設(shè)備發(fā)送的指令,還可以是終端在調(diào)用應(yīng)用程序,且該應(yīng)用程序的運行需要讀取相應(yīng)網(wǎng)絡(luò)資源數(shù)據(jù)時,系統(tǒng)自動生成的指令;終端獲取該瀏覽器緩存數(shù)據(jù)讀取指令中包含的待讀取緩存數(shù)據(jù)標(biāo)識。
[0061]其中,上述終端中安裝的操作系統(tǒng)為安卓操作系統(tǒng);上述終端請求獲取的瀏覽器緩存數(shù)據(jù)為在寫入本地磁盤之前,經(jīng)過加密處理的數(shù)據(jù);終端獲取的緩存文件標(biāo)識可以包含該待讀取緩存數(shù)據(jù)存儲的位置信息,如該待讀取緩存數(shù)據(jù)存儲的緩存文件名稱,該待讀取緩存數(shù)據(jù)標(biāo)識還可以是系統(tǒng)為該待讀取緩存數(shù)據(jù)配置的唯一標(biāo)識。
[0062]步驟510:通過所述瀏覽器內(nèi)核從本地磁盤中獲取所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件。
[0063]本發(fā)明實施例中,終端通過瀏覽器內(nèi)核從本地磁盤中獲取緩存文件標(biāo)識對應(yīng)的加密后的緩存文件。若終端的瀏覽器內(nèi)核為chromium內(nèi)核,則終端通過chromium內(nèi)核中Entry對象獲取緩存文件標(biāo)識對應(yīng)的加密后的緩存文件。
[0064]由于緩存文件包含三部分,該三部分分別為文件頭部(head),瀏覽器緩存數(shù)據(jù)(data),以及文件尾部(eof)。因此,可選的,每一個加密后的緩存文件中均包含加密信息,該加密信息用于表征緩存文件的加密位置,如當(dāng)加密信息為a時,表示僅對瀏覽器緩存數(shù)據(jù)進行加密;終端通過瀏覽器內(nèi)核讀取該加密信息,并對加密信息指示的加密部分進行解
LU O
[0065]其中,上述加密信息可以通過預(yù)設(shè)字符表示,如I表示僅對瀏覽器緩存數(shù)據(jù)進行加密,2表示對所述瀏覽器緩存數(shù)據(jù)和緩存文件的文件頭部進行加密;3表示對所述瀏覽器緩存數(shù)據(jù)和緩存文件的文件尾部進行加密;4表示對所述緩存文件的文件頭部,瀏覽器緩存數(shù)據(jù),以及緩存文件的文件尾部均進行加密。
[0066]采用上述技術(shù)方案,終端的瀏覽器內(nèi)核能夠根據(jù)加密信息迅速確定緩存文件中的加密部分,并對該加密部分進行解密,加快了數(shù)據(jù)解密速度,提高了數(shù)據(jù)處理效率。
[0067]進一步的,終端還可以通過瀏覽器內(nèi)核分別對加密后的瀏覽器緩存數(shù)據(jù)中包含的各個部分進行解析,以確定加密部分,并對加密部分進行解密。
[0068]可選的,若終端的瀏覽器內(nèi)核為chromium內(nèi)核,則終端通過瀏覽器內(nèi)核執(zhí)行讀取操作的函數(shù)分別為 SimpleSynchronousEntry::1nitializeForOpen,SimpleSynchronousEntry::ReadData 和 SimpleSynchronousEntry::GetEOFRecordData ;其中,SimpleSynchronousEntry::1nitializeForOpen用于讀取緩存文件的文件頭部;SimpleSynchronousEntry::ReadData用于讀取緩存文件的瀏覽器緩存數(shù)據(jù)部分;SimpleSynchronousEntry::GetEOFRecordData用于讀取緩存文件的文件尾部。
[0069]步驟520:采用預(yù)設(shè)解密算法,通過所述瀏覽器內(nèi)核對所述緩存文件中包含的加密后的瀏覽器緩存數(shù)據(jù)進行解密。
[0070]本發(fā)明實施例中,終端通過瀏覽器內(nèi)核采用與加密算法相對應(yīng)的解密算法,對所述緩存文件進行解密,以獲取緩存文件中的瀏覽器緩存數(shù)據(jù)。
[0071]可選的,當(dāng)加密算法為字符取反方式時,終端通過瀏覽器內(nèi)核采用字符取反方式對所述緩存文件進行解密;或者,當(dāng)加密算法為字符流前后倒置方式時,終端通過瀏覽器內(nèi)核采用字符流前后倒置方式對所述緩存文件進行解密;或者,當(dāng)加密算法為MD5算法時,終端通過瀏覽器內(nèi)核采用MD5算法對所述緩存文件進行解密。
[0072]采用該技術(shù)方案,終端在讀取磁盤中寫入的瀏覽器緩存數(shù)據(jù)的過程中,通過相應(yīng)的解密算法對磁盤中寫入的瀏覽器緩存數(shù)據(jù)進行解密,使終端能夠可靠讀取磁盤中寫入的瀏覽器緩存數(shù)據(jù)。
[0073]終端在通過瀏覽器內(nèi)核對緩存文件進行解密的過程中,需要占用內(nèi)存資源,因此,可選的,終端在通過瀏覽器內(nèi)核對緩存文件進行解密之后,將占用的內(nèi)存資源進行釋放。采用該技術(shù)方案,在對緩存文件進行解密之后,即對解密過程占用的內(nèi)存資源進行釋放,從而避免了內(nèi)存資源占用量較大時,導(dǎo)致的終端響應(yīng)速度慢的問題,保證了終端的數(shù)據(jù)處理性會K。
[0074]具體的,參閱圖6a所示,為現(xiàn)有技術(shù)中,將緩存文件中的瀏覽器緩存數(shù)據(jù)部分讀取的代碼實現(xiàn)過程;參閱圖6b所示,為本發(fā)明實施例中,將緩存文件中的瀏覽器緩存數(shù)據(jù)部分讀取并解密的代碼實現(xiàn)過程;其中,DecodeCacheData函數(shù)為用于對緩存文件進行解密的函數(shù);ClearTmpDataMem函數(shù)為用于釋放臨時申請的內(nèi)存資源的函數(shù)。
[0075]步驟530:通過所述瀏覽器內(nèi)核獲取解密后的瀏覽器緩存數(shù)據(jù)。
[0076]本發(fā)明實施例中,僅以終端通過瀏覽器請求網(wǎng)絡(luò)資源數(shù)據(jù)為例,詳細(xì)介紹終端讀取數(shù)據(jù)的過程,終端通過客戶端調(diào)用瀏覽器應(yīng)用程序請求網(wǎng)絡(luò)資源數(shù)據(jù)的過程與上述方式相似,在此不再贅述。
[0077]基于上述技術(shù)方案,參閱圖7所示,本發(fā)明實施例還提供一種數(shù)據(jù)重傳裝置,包括獲取單元70,加密單元71,以及寫入單元72,其中:
[0078]獲取單元70,用于通過瀏覽器內(nèi)核獲取瀏覽器緩存數(shù)據(jù);
[0079]加密單元71,用于采用預(yù)設(shè)加密算法,通過所述瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)進行加密;
[0080]寫入單元72,用于通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤。
[0081]可選的,所述瀏覽器內(nèi)核為chromium內(nèi)核,或者在chromium內(nèi)核基礎(chǔ)上二次開發(fā)的瀏覽器內(nèi)核。
[0082]進一步的,所述裝置還包括緩存文件生成單元73,用于:對所述瀏覽器緩存數(shù)據(jù)進行加密之前,生成與所述瀏覽器緩存數(shù)據(jù)對應(yīng)的緩存文件;所述緩存文件包括文件頭部,瀏覽器緩存數(shù)據(jù),以及文件尾部;
[0083]所述加密單元71,還用于:通過所述瀏覽器內(nèi)核對所述文件頭部進行加密;或者,通過所述瀏覽器內(nèi)核對所述文件尾部進行加密;或者,通過所述瀏覽器內(nèi)核對所述文件頭部,以及文件尾部均進行加密。
[0084]進一步的,所述裝置還包括處理單元74,用于:通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤之后,接收瀏覽器緩存數(shù)據(jù)讀取指令;其中,所述瀏覽器緩存數(shù)據(jù)讀取指令中包含待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識,且所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件中包含的瀏覽器緩存數(shù)據(jù)為在寫入本地磁盤之前,經(jīng)過加密處理的數(shù)據(jù);通過所述瀏覽器內(nèi)核從本地磁盤中獲取所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件;通過所述瀏覽器內(nèi)核對所述緩存文件中包含的加密后的瀏覽器緩存數(shù)據(jù)進行解密;并通過所述瀏覽器內(nèi)核獲取解密后的瀏覽器緩存數(shù)據(jù)。
[0085]綜上所述,終端在將瀏覽器緩存數(shù)據(jù)寫入磁盤之前,對瀏覽器緩存數(shù)據(jù)進行加密,即使惡意軟件或者插件盜取磁盤中的緩存文件,也無法從緩存文件中讀取到正確的內(nèi)容,從而提高了數(shù)據(jù)的安全性。此外,終端采用預(yù)設(shè)解密算法,對終端磁盤上保存的加密后的瀏覽器緩存數(shù)據(jù)進行解密,以得到網(wǎng)絡(luò)資源數(shù)據(jù)。采用本發(fā)明實施例技術(shù)方案,終端在讀取磁盤中寫入的瀏覽器緩存數(shù)據(jù)的過程中,通過相應(yīng)的解密算法對磁盤中寫入的瀏覽器緩存數(shù)據(jù)進行解密,使終端能夠可靠讀取磁盤中寫入的瀏覽器緩存數(shù)據(jù)。
[0086]以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性的勞動的情況下,即可以理解并實施。
[0087]通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到各實施方式可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件?;谶@樣的理解,上述技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在計算機可讀存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行各個實施例或者實施例的某些部分所述的方法。
[0088]最后應(yīng)說明的是:以上實施例僅用以說明本發(fā)明實施例的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明實施例進行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明實施例各實施例技術(shù)方案的精神和范圍。
【主權(quán)項】
1.一種瀏覽器緩存數(shù)據(jù)的保護方法,應(yīng)用于安卓操作系統(tǒng)中,其特征在于,所述方法包括: 通過瀏覽器內(nèi)核獲取瀏覽器緩存數(shù)據(jù); 采用預(yù)設(shè)加密算法,通過所述瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)進行加密;并 通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述瀏覽器內(nèi)核為chromium內(nèi)核,或者在chromium內(nèi)核基礎(chǔ)上二次開發(fā)的瀏覽器內(nèi)核。3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,對所述瀏覽器緩存數(shù)據(jù)進行加密之前,所述方法還包括: 生成與所述瀏覽器緩存數(shù)據(jù)對應(yīng)的緩存文件; 所述緩存文件包括文件頭部,瀏覽器緩存數(shù)據(jù),以及文件尾部; 通過所述瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)進行加密,還包括: 通過所述瀏覽器內(nèi)核對所述文件頭部進行加密;或者, 通過所述瀏覽器內(nèi)核對所述文件尾部進行加密;或者, 通過所述瀏覽器內(nèi)核對所述文件頭部,以及所述文件尾部均進行加密。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤之后,還包括: 接收瀏覽器緩存數(shù)據(jù)讀取指令;其中,所述瀏覽器緩存數(shù)據(jù)讀取指令中包含待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識,且所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件中包含的瀏覽器緩存數(shù)據(jù)為在寫入本地磁盤之前,經(jīng)過加密處理的數(shù)據(jù); 通過所述瀏覽器內(nèi)核從本地磁盤中獲取所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件; 通過所述瀏覽器內(nèi)核對所述緩存文件中包含的加密后的瀏覽器緩存數(shù)據(jù)進行解密;并 通過所述瀏覽器內(nèi)核獲取解密后的瀏覽器緩存數(shù)據(jù)。5.一種瀏覽器緩存數(shù)據(jù)的保護裝置,應(yīng)用于安卓操作系統(tǒng)中,其特征在于,所述裝置包括: 獲取單元,用于通過瀏覽器內(nèi)核獲取瀏覽器緩存數(shù)據(jù); 加密單元,用于采用預(yù)設(shè)加密算法,通過所述瀏覽器內(nèi)核對所述瀏覽器緩存數(shù)據(jù)進行加密; 寫入單元,用于通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤。6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述瀏覽器內(nèi)核為chromium內(nèi)核,或者在chromium內(nèi)核基礎(chǔ)上二次開發(fā)的瀏覽器內(nèi)核。7.根據(jù)權(quán)利要求5或6所述的裝置,其特征在于,所述裝置還包括緩存文件生成單元,用于: 對所述瀏覽器緩存數(shù)據(jù)進行加密之前,生成與所述瀏覽器緩存數(shù)據(jù)對應(yīng)的緩存文件; 所述緩存文件包括文件頭部,瀏覽器緩存數(shù)據(jù),以及文件尾部; 所述加密單元,還用于: 通過所述瀏覽器內(nèi)核對所述文件頭部進行加密;或者, 通過所述瀏覽器內(nèi)核對所述文件尾部進行加密;或者, 通過所述瀏覽器內(nèi)核對所述文件頭部,以及所述文件尾部均進行加密。8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括處理單元,用于: 通過所述瀏覽器內(nèi)核將加密后的瀏覽器緩存數(shù)據(jù)寫入本地磁盤之后,接收瀏覽器緩存數(shù)據(jù)讀取指令;其中,所述瀏覽器緩存數(shù)據(jù)讀取指令中包含待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識,且所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件中包含的瀏覽器緩存數(shù)據(jù)為在寫入本地磁盤之前,經(jīng)過加密處理的數(shù)據(jù); 通過所述瀏覽器內(nèi)核從本地磁盤中獲取所述待讀取緩存數(shù)據(jù)所在緩存文件標(biāo)識對應(yīng)的緩存文件; 通過所述瀏覽器內(nèi)核對所述緩存文件中包含的加密后的瀏覽器緩存數(shù)據(jù)進行解密;并 通過所述瀏覽器內(nèi)核獲取解密后的瀏覽器緩存數(shù)據(jù)。
【文檔編號】G06F21/62GK105893862SQ201510583361
【公開日】2016年8月24日
【申請日】2015年9月14日
【發(fā)明人】余紹鵬, 劉文博
【申請人】樂視致新電子科技(天津)有限公司