欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于移動(dòng)應(yīng)用保護(hù)的系統(tǒng)和方法

文檔序號(hào):8223802閱讀:933來(lái)源:國(guó)知局
用于移動(dòng)應(yīng)用保護(hù)的系統(tǒng)和方法
【專利說(shuō)明】用于移動(dòng)應(yīng)用保護(hù)的系統(tǒng)和方法
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本公開(kāi)內(nèi)容要求對(duì)2013年7月17日提交的美國(guó)臨時(shí)專利申請(qǐng)N0.61/847,203的優(yōu)先權(quán)以及來(lái)自該美國(guó)臨時(shí)專利申請(qǐng)的權(quán)益,它的全文通過(guò)弓I用并入本文。
技術(shù)領(lǐng)域
[0003]本專利文件中所描述的技術(shù)一般性地涉及移動(dòng)設(shè)備,并且更特別地涉及移動(dòng)應(yīng)用保護(hù)。
【背景技術(shù)】
[0004]移動(dòng)設(shè)備(例如,智能電話)經(jīng)常能夠支持各種各樣的應(yīng)用(即,應(yīng)用程序)來(lái)豐富用戶體驗(yàn)。虛擬機(jī)(VM)通常對(duì)應(yīng)于計(jì)算機(jī)的一種軟件實(shí)施方式,該軟件實(shí)施方式在任意平臺(tái)上以相同方式提供用于執(zhí)行一個(gè)或多個(gè)應(yīng)用的獨(dú)立編程環(huán)境,并且抽象去除底層的硬件或操作系統(tǒng)(OS)的細(xì)節(jié)。使用在移動(dòng)設(shè)備中的VM可以包括:例如,Java虛擬機(jī)(JVM)、安卓的Dalvik VM、由蘋果的iPhone操作系統(tǒng)(1S)所使用的低級(jí)虛擬機(jī)(LLVM)、等等。VM可以執(zhí)行到字節(jié)代碼的編譯以克服具體硬件或OS的限制,在應(yīng)用的實(shí)際操作期間解譯字節(jié)代碼,以及執(zhí)行該應(yīng)用。為移動(dòng)設(shè)備所開(kāi)發(fā)的應(yīng)用經(jīng)常分布在應(yīng)用包中,應(yīng)用包包含用以運(yùn)行應(yīng)用的元素,諸如程序代碼、資源、資產(chǎn)(assets)、證書(shū)和清單。例如,對(duì)于安卓智能電話,應(yīng)用包對(duì)應(yīng)于其文件名以apk”結(jié)尾的應(yīng)用包文件(APK文件)。

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

[0005]根據(jù)本文所描述的教導(dǎo),提供了系統(tǒng)和方法以用于移動(dòng)應(yīng)用保護(hù)。接收與應(yīng)用相關(guān)聯(lián)的可執(zhí)行代碼。至少部分地基于該可執(zhí)行代碼來(lái)生成加密的代碼和包裝器(wrapper)代碼。該加密的代碼能夠至少部分地基于該包裝器代碼而被解密。為移動(dòng)設(shè)備生成包括該加密的代碼和該包裝器代碼的應(yīng)用包。
[0006]在一個(gè)實(shí)施例中,用于保護(hù)用于移動(dòng)設(shè)備的應(yīng)用的系統(tǒng)包括:加密模塊和包生成器。該加密模塊被配置為:接收與應(yīng)用相關(guān)聯(lián)的可執(zhí)行代碼,并且至少部分地基于該可執(zhí)行代碼來(lái)生成加密的代碼和包裝器代碼。該加密的代碼能夠至少部分地基于該包裝器代碼而被解密。該包生成器被配置為:為移動(dòng)設(shè)備生成包括該加密的代碼和該包裝器代碼的應(yīng)用包。
[0007]在另一個(gè)實(shí)施例中,用于保護(hù)用于移動(dòng)設(shè)備的應(yīng)用的系統(tǒng)包括:一個(gè)或多個(gè)數(shù)據(jù)處理器和機(jī)器可讀存儲(chǔ)介質(zhì)。該存儲(chǔ)介質(zhì)以用于命令這些數(shù)據(jù)處理器以執(zhí)行某些操作的指令來(lái)編碼。接收與應(yīng)用相關(guān)聯(lián)的可執(zhí)行代碼。至少部分地基于該可執(zhí)行代碼來(lái)生成加密的代碼和包裝器代碼。該加密的代碼能夠至少部分地基于該包裝器代碼而被解密。為移動(dòng)設(shè)備生成包括該加密的代碼和該包裝器代碼的應(yīng)用包。
【附圖說(shuō)明】
[0008]圖1描繪了一個(gè)示例圖,該示例圖示出了用于移動(dòng)設(shè)備的應(yīng)用的示例打包流程。
[0009]圖2描繪了一個(gè)示例圖,該示例圖示出了應(yīng)用包的部分加密。
[0010]圖3描繪了一個(gè)示例圖,該示例圖示出了用于移動(dòng)設(shè)備的應(yīng)用的示例打包流程。
[0011]圖4描繪了一個(gè)示例圖,該示例圖示出了用于移動(dòng)設(shè)備的應(yīng)用的另一個(gè)示例打包流程。
[0012]圖5描繪了一個(gè)示例圖,該示例圖示出了應(yīng)用包的簽名校驗(yàn)。
[0013]圖6描繪了一個(gè)示例圖,該示例圖示出了應(yīng)用包的散列值校驗(yàn)。
[0014]圖7描繪了用于保護(hù)用于移動(dòng)設(shè)備的應(yīng)用的示例流程圖。
【具體實(shí)施方式】
[0015]圖1描繪了一個(gè)示例圖,該示例圖示出了針對(duì)用于移動(dòng)設(shè)備的應(yīng)用的示例打包流程。如圖1中所示出的,應(yīng)用102被編譯并且打包到應(yīng)用包104中,應(yīng)用包104然后被分發(fā)給一個(gè)或多個(gè)移動(dòng)設(shè)備106。具體地說(shuō),應(yīng)用102使用安卓軟件開(kāi)發(fā)套件(SDK)以Java語(yǔ)言而寫成。在編譯和打包期間,Java代碼首先被編譯為采用Java字節(jié)代碼格式的類文件。接著,這些類文件被轉(zhuǎn)換為采用Dalvik字節(jié)代碼格式的DEX文件,其中Dalvik字節(jié)代碼與用于安卓的Dalvik VM的本機(jī)格式相對(duì)應(yīng)。應(yīng)用包(例如,APK文件)104包括清單文件(例如,AndroidManifest.xml)、可執(zhí)行代碼(例如,classes, dex文件)、資源(例如,resources, arse文件)、未編譯的資源、等等。
[0016]應(yīng)用包104能夠經(jīng)常容易被反編譯和篡改。惡意軟件可能被插入到應(yīng)用包104中。當(dāng)被篡改的應(yīng)用包104在移動(dòng)設(shè)備106上被運(yùn)行時(shí),惡意操作可能在后臺(tái)執(zhí)行而引起對(duì)移動(dòng)設(shè)備106的危害。因此,保護(hù)應(yīng)用包104免于被篡改是重要的。
[0017]圖2描繪了一個(gè)示例圖,該示例圖示出了應(yīng)用包的部分加密。如圖2中所示出的,原始應(yīng)用包202被部分地加密以生成新的應(yīng)用包204。具體地說(shuō),與用于移動(dòng)設(shè)備的應(yīng)用相關(guān)聯(lián)的可執(zhí)行代碼206 (例如,classes, dex文件)被轉(zhuǎn)換為兩個(gè)文件-加密的代碼210 (例如,加密的DEX文件)和包裝器代碼208 (例如,classes, dex’文件)。
[0018]在一些實(shí)施例中,包裝器代碼208不包括用于執(zhí)行應(yīng)用的功能的基本邏輯代碼。替代地,基本邏輯代碼被加密并且成為加密的代碼210的一部分。包裝器代碼208被用來(lái)輔助對(duì)加密的代碼210的解密以及調(diào)用基本邏輯代碼。本機(jī)庫(kù)代碼212被用來(lái)支持包裝器代碼208 (例如,classes, dex’文件)加載加密的代碼210 (例如,通過(guò)本機(jī)安全類加載器)以及解密目標(biāo)移動(dòng)設(shè)備的存儲(chǔ)器中的加密的代碼210。
[0019]在某些實(shí)施例中,新的應(yīng)用包204包括META-1NF目錄214,META-1NF目錄214可以包含清單文件(例如,“MANIFEST.MF”)、證書(shū)(例如,“CERT.RSA”)、以及資源的列表(例如,“CERT.SF”)。另外,新的應(yīng)用包204包括附加清單文件216 (例如,AndroidManifest.xml),附加清單文件216描述了名稱、版本、訪問(wèn)權(quán)限、以及用于該應(yīng)用的參考庫(kù)文件。新的應(yīng)用包204可以包括其他文件218,諸如包含對(duì)于處理器的軟件層是特定的經(jīng)編譯的代碼的“l(fā)ib”目錄、包含經(jīng)預(yù)編譯的資源的“resources, arse”文件、包含未被編譯到“resources.arse”文件中的資源的“res”目錄、以及包含應(yīng)用資產(chǎn)的“資產(chǎn)”目錄。
[0020]圖3描繪了一個(gè)示例圖,該示例圖示出了針對(duì)用于移動(dòng)設(shè)備的應(yīng)用的示例打包流程。如圖3中所示出的,應(yīng)用302被編譯并且打包到原始應(yīng)用包304中,并且原始應(yīng)用包304被部分地加密以生成新的應(yīng)用包310,新的應(yīng)用包310然后被分發(fā)給一個(gè)或多個(gè)移動(dòng)設(shè)備312。加密組件308執(zhí)行對(duì)原始應(yīng)用包304的部分加密,并且包生成器306生成新的應(yīng)用包310。例如,原始應(yīng)用包304和新的應(yīng)用包310分別包括與原始應(yīng)用包202和新的應(yīng)用包204相同的組件。
[0021]具體地說(shuō),加密組件308將可執(zhí)行代碼314(例如,classes, dex文件)轉(zhuǎn)換為加密的代碼316 (例如,加密的DEX文件)和包裝器代碼318 (例如,classes, dex’文件)。包裝器代碼318不包括用于執(zhí)行應(yīng)用308的功能的基本邏輯代碼,并且基本邏輯代碼包含在加密的代碼316中。本機(jī)庫(kù)代碼320被用來(lái)支持包裝器代碼318加載加密的代碼316以及解密移動(dòng)設(shè)備312的存儲(chǔ)器中的加密的代碼316。例如,移動(dòng)設(shè)備312包括移動(dòng)設(shè)備仿真器。
[0022]如圖4中所
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
白玉县| 巫山县| 东丰县| 中宁县| 桂林市| 合川市| 德阳市| 施秉县| 南丰县| 南雄市| 康保县| 湘潭市| 微山县| 盐山县| 武城县| 丹寨县| 隆林| 蒙山县| 会东县| 马公市| 古丈县| 万源市| 巴塘县| 塘沽区| 托里县| 长寿区| 拜泉县| 汉沽区| 湘潭县| 永昌县| 兴义市| 德清县| 乐平市| 资源县| 肇庆市| 柘城县| 青岛市| 汾阳市| 永寿县| 江都市| 九龙坡区|