两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法及系統(tǒng)的制作方法

文檔序號:9489676閱讀:538來源:國知局
一種面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法及系統(tǒng)的制作方法
【專利說明】一種面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法及系統(tǒng)
[0001]
技術領域
本發(fā)明屬于系統(tǒng)安全領域;涉及移動終端上的數(shù)據(jù)保護技術領域,尤其涉及一種對Andro i d系統(tǒng)中數(shù)據(jù)傳遞過程的保護方法及系統(tǒng)。
[0002]
【背景技術】
隨著移動互聯(lián)網(wǎng)的飛速發(fā)展,智能移動終端設備已成為人們生活、工作中的重要一部分。而由Google公司開發(fā)的Android系統(tǒng)以其充分的開放性、良好的易用性,受到廣大設備廠商和用戶的青睞,目前已經(jīng)成為智能移動終端設備中應用最廣泛的操作系統(tǒng)。
[0003]在Android系統(tǒng)內(nèi)部,為了實現(xiàn)不同應用程序、不同進程間的資源共享、數(shù)據(jù)傳輸,Android系統(tǒng)提供了基于Binder的進程間通信的機制。當應用程序進程需要某種資源或服務時,需要向相應服務的管理者發(fā)送請求,管理者經(jīng)過權限檢查之后,對進程的請求進行應答。其中,應用程序對服務的請求和應答,以及應用程序與服務間的數(shù)據(jù)交互、過程調(diào)用等,都是通過Binder進行的。在請求服務的過程中,應用程序將請求的服務類型及數(shù)據(jù),傳遞給Binder,Binder將其交給相應的服務管理者,服務管理者再通過Binder傳回應答;在應用程序與服務建立連接之后,雙方繼續(xù)通過Binder進行服務中方法的遠程過程調(diào)用、數(shù)據(jù)通訊。因此,Binder就好像是服務端與應用程序客戶端之間溝通的管道。
[0004]在Android系統(tǒng)中,Binder機制僅提供了一種端到端的數(shù)據(jù)通訊方式,不支持針對重要數(shù)據(jù)的安全通信接口。所有基于Binder的通信數(shù)據(jù)都以明文方式傳輸,包括用戶隱私相關的敏感型數(shù)據(jù),如短信內(nèi)容、GPS位置信息等。這就存在如下安全問題:一旦攻擊者攔截Binder通信接口或數(shù)據(jù)產(chǎn)生端到使用端整個傳遞過程中的數(shù)據(jù)接口,即可竊取、篡改通過Binder傳輸?shù)闹匾獢?shù)據(jù),破壞數(shù)據(jù)的機密性、完整性和可用性,進而引發(fā)更嚴重的危害。
[0005]在2014年的頂級安全技術會議Blackhat Europe上,就已經(jīng)有安全研究人員給出了針對Android系統(tǒng)中數(shù)據(jù)通信方式Binder的攻擊實例。通過攔截Binder通信的關鍵函數(shù)接口,即可以獲取Binder中的通信數(shù)據(jù),如短信內(nèi)容、按鍵數(shù)據(jù)等。進一步證實了威脅的真實性和嚴重性。因此,亟需一種針對Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法,來有選擇性的確保重要數(shù)據(jù)的安全性。
[0006]

【發(fā)明內(nèi)容】

[0007]針對上述問題,本發(fā)明提出一種能夠有效保護Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法和系統(tǒng)。本發(fā)明通過對基于Binder通信的重要數(shù)據(jù)實施產(chǎn)生源頭加密、數(shù)據(jù)使用處解密,構建了基于Binder的安全通信通道,實現(xiàn)了重要數(shù)據(jù)在Android系統(tǒng)內(nèi)部傳輸過程中的端到端的安全性保證。
[0008]本發(fā)明中的技術方案是:
一種面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法,包括如下步驟:
步驟1:確定需要保護的Android系統(tǒng)內(nèi)部傳遞的數(shù)據(jù)類型,以及數(shù)據(jù)使用端的系統(tǒng)進程或應用程序;
步驟2:根據(jù)確定的數(shù)據(jù)類型、系統(tǒng)進程或應用程序,生成用于對保護的數(shù)據(jù)進行加密和解密的密鑰;
步驟3:使用函數(shù)攔截方法,對所保護數(shù)據(jù)的產(chǎn)生端的數(shù)據(jù)處理函數(shù)進行攔截并安裝數(shù)據(jù)加密功能代碼,對數(shù)據(jù)使用端的應用程序或進程中的數(shù)據(jù)處理函數(shù)進行攔截并安裝數(shù)據(jù)解密功能代碼;
步驟4:數(shù)據(jù)在系統(tǒng)內(nèi)部傳遞之前,在數(shù)據(jù)產(chǎn)生端的處理函數(shù)中使用生成的密鑰進行加密保護;
步驟5:加密的數(shù)據(jù)在系統(tǒng)內(nèi)部傳遞過程的另一端接收之后、使用之前,在被攔截的數(shù)據(jù)處理函數(shù)用生成的密鑰對其進行解密。
[0009]根據(jù)權利要求1所述的一種面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法,其特征在于:所述的步驟1中,系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程包括Android系統(tǒng)中基于Binder的通信方式,進行保護的數(shù)據(jù)包括基于Binder進行的應用程序、系統(tǒng)進程間交互和傳遞的數(shù)據(jù)。
[0010]優(yōu)選的,所述的步驟2中,確定的保護數(shù)據(jù)類型可以為多種被保護的數(shù)據(jù)類型,所述的確定的應用程序或系統(tǒng)進程可以為多個可以正確使用受保護數(shù)據(jù)的應用程序或系統(tǒng)進程;
優(yōu)選的,所述的步驟4中使用對稱加密算法的密鑰進行數(shù)據(jù)加密保護。
[0011]優(yōu)選的,所述的步驟3中對數(shù)據(jù)產(chǎn)生端的數(shù)據(jù)處理函數(shù)、數(shù)據(jù)使用端的數(shù)據(jù)處理函數(shù)的攔截方法,包括對Android Framework層Java代碼中函數(shù)和系統(tǒng)運行庫層原生代碼Native Code中函數(shù)的攔截。
[0012]一種面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護系統(tǒng),其特征在于,至少包括:月艮務選擇模塊,密鑰管理模塊,函數(shù)攔截模塊,數(shù)據(jù)加密模塊,數(shù)據(jù)解密模塊;
所述的服務選擇模塊:用于確定需要保護的Android系統(tǒng)內(nèi)部傳遞的數(shù)據(jù)類型,以及數(shù)據(jù)使用端的系統(tǒng)進程或應用程序;
所述的密鑰管理模塊,用于根據(jù)確定的數(shù)據(jù)類型、系統(tǒng)進程或應用程序,生成用于對保護的數(shù)據(jù)進行加密和解密的密鑰;
所述的函數(shù)攔截模塊,用于使用函數(shù)攔截方法,對所保護數(shù)據(jù)的產(chǎn)生端的數(shù)據(jù)處理函數(shù)進行攔截并安裝數(shù)據(jù)加密功能代碼,對數(shù)據(jù)使用端的應用程序或進程中的數(shù)據(jù)處理函數(shù)進行攔截并安裝數(shù)據(jù)解密功能代碼;所述數(shù)據(jù)加密模塊,用于數(shù)據(jù)在系統(tǒng)內(nèi)部傳遞之前,在數(shù)據(jù)產(chǎn)生端的處理函數(shù)中使用生成的密鑰進行加密保護;
所述的數(shù)據(jù)解密模塊,用于在加密的數(shù)據(jù)在系統(tǒng)內(nèi)部傳遞過程的另一端接收之后、使用之前,在被攔截的數(shù)據(jù)處理函數(shù)用生成的密鑰對其進行解密。
[0013] 優(yōu)選的,還包括提供額外的用于個性化使用的日志存儲模塊、配置數(shù)據(jù)存儲模塊;
所述配置數(shù)據(jù)存儲模塊,包括用于存儲確定的數(shù)據(jù)類型和應用程序信息;
所述日志存儲模塊,包括用于存儲系統(tǒng)的運行日志、數(shù)據(jù)保護日志信息。
[0014]本發(fā)明的有益效果:本發(fā)明提出一種對Android系統(tǒng)中內(nèi)部數(shù)據(jù)傳遞過程的保護方法和系統(tǒng);本發(fā)明通過對基于Binder通信的重要數(shù)據(jù)實施產(chǎn)生源頭加密、數(shù)據(jù)使用處解密,構建了基于Binder的安全通信通道,實現(xiàn)了重要數(shù)據(jù)在Android系統(tǒng)內(nèi)部傳輸過程中的端到端的安全性保證。
[0015]
【附圖說明】
[0016]圖1為本發(fā)明中提供的面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法的流程圖;
圖2為本發(fā)明中提供的面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護系統(tǒng)的結構圖和原理示意圖。
[0017]
【具體實施方式】
[0018]本發(fā)明提供了一種面向Android系統(tǒng)內(nèi)部數(shù)據(jù)傳遞過程的保護方法及系統(tǒng),為了使本技術領域的人員更好的理解本發(fā)明實施案例中的技術方案,并使本發(fā)明的功能、特征和優(yōu)越性更加簡明易懂,下面結合附圖2中的示例對本發(fā)明中的技術和方案作進一步詳細的說明。應當理解為,此處所描述的具體實施例僅用以解釋本發(fā)明,但并不用于限定本發(fā)明。
[0019]本發(fā)明首先提供了一種對Android系統(tǒng)中內(nèi)部數(shù)據(jù)傳遞過程的保護方法,該方法的一個實施方式如圖1所示,包括:
S01步驟首先確定需要保護的數(shù)據(jù)類型和應用程序,所述數(shù)據(jù)和所述應用程序之間存在關聯(lián),即所確定的所述應用程序應能夠有權限訪問所述數(shù)據(jù),本方法中所述應用程序能夠獲得正確的受保護數(shù)據(jù);
S02步驟確定用于生成加密、解密密鑰,在本實施例方法中,加密密鑰和解密密鑰相同,即采用對稱加密算法;
S03步驟攔截Android系統(tǒng)中Framework層中數(shù)據(jù)產(chǎn)生端的數(shù)據(jù)處理函數(shù),該函數(shù)是相應Java類里的一個方法,攔截數(shù)據(jù)接收端的指定應用程序進程空間中的Framework層的數(shù)據(jù)處理函數(shù),該函數(shù)是相應Java類里的一個方法;
S04步驟在上述步驟S03中攔截的數(shù)據(jù)產(chǎn)生端的數(shù)據(jù)處理函數(shù)中,額外執(zhí)行一個加密流程,當保護數(shù)據(jù)流經(jīng)
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
黎川县| 秦安县| 辽阳市| 教育| 南康市| 鹤庆县| 西昌市| 嘉荫县| 西充县| 巴彦县| 杂多县| 台安县| 永泰县| 沁阳市| 东丽区| 伊宁县| 鄂托克旗| 娄烦县| 栖霞市| 兰考县| 汤原县| 西乌珠穆沁旗| 新宁县| 宜昌市| 峨眉山市| 丰顺县| 繁峙县| 丹东市| 抚宁县| 三亚市| 溧阳市| 刚察县| 博爱县| 大埔区| 潮安县| 花垣县| 陇西县| 巩留县| 班戈县| 晋江市| 龙胜|