亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種可執(zhí)行文件的處理方法、裝置和系統(tǒng)與流程

文檔序號(hào):12365095閱讀:232來源:國(guó)知局
一種可執(zhí)行文件的處理方法、裝置和系統(tǒng)與流程

本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種可執(zhí)行文件的處理方法、裝置和系統(tǒng)。



背景技術(shù):

在移動(dòng)終端高度普及的今天,基于種種目的,大量的移動(dòng)終端應(yīng)用被破解,并進(jìn)行反編譯等操作,從而構(gòu)建出大量的山寨應(yīng)用的安裝包,影響用戶對(duì)移動(dòng)終端應(yīng)用的使用;更甚者,這些山寨應(yīng)用的安裝包中還可能會(huì)植入廣告插件或惡意指令等,對(duì)用戶數(shù)據(jù)與財(cái)產(chǎn)帶來嚴(yán)重的安全隱患,為此,如何防止移動(dòng)終端應(yīng)用被破解和反編譯,對(duì)于數(shù)據(jù)安全具有重大意義。

由于移動(dòng)終端應(yīng)用的指令多數(shù)都是編譯在可執(zhí)行文件中,比如,安卓(Android)系統(tǒng)的dex文件中,因此,為了防止可執(zhí)行文件被反編譯,在現(xiàn)有技術(shù)中,一般會(huì)對(duì)可執(zhí)行文件進(jìn)行整體加密,然后在運(yùn)行時(shí),才在內(nèi)存中對(duì)其進(jìn)行解密并重組成系統(tǒng)所需的文件,比如odex文件。

在對(duì)現(xiàn)有技術(shù)的研究和實(shí)踐過程中,本發(fā)明的發(fā)明人發(fā)現(xiàn),雖然現(xiàn)有技術(shù)可在一定程度上降低可執(zhí)行文件被反編譯的幾率,但是,由于解密后內(nèi)存中存在原始代碼,若反編譯者從內(nèi)存中把原始代碼拷貝出來,一樣可以達(dá)到反編譯的目的,因此,現(xiàn)有方案對(duì)于代碼的保護(hù)力度并不夠;而且,由于運(yùn)行時(shí)需要解密大量的數(shù)據(jù),所以,其運(yùn)行效率也較低。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明實(shí)施例提供一種可執(zhí)行文件的處理方法、裝置和系統(tǒng),可以更好地對(duì)代碼進(jìn)行加固,在保護(hù)代碼,提高數(shù)據(jù)安全性的同時(shí),提高運(yùn)行效率。

本發(fā)明實(shí)施例提供一種可執(zhí)行文件的處理方法,包括:

在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī);

利用所述微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè);

確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至所述微型虛擬機(jī)中進(jìn)行解密并運(yùn)行。

相應(yīng)的,本發(fā)明實(shí)施例還提供一種可執(zhí)行文件的處理裝置,包括:

啟動(dòng)單元,用于在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī);

檢測(cè)單元,用于利用所述微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè);

處理單元,用于確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至所述微型虛擬機(jī)中進(jìn)行解密并運(yùn)行。

此外,本發(fā)明實(shí)施例還提供一種可執(zhí)行文件的處理系統(tǒng),包括微型虛擬機(jī)和本發(fā)明實(shí)施例所提供的任一種可執(zhí)行文件的處理裝置,其中:

所述微型虛擬機(jī),用于在所述可執(zhí)行文件的處理裝置的控制下啟動(dòng),并在所述可執(zhí)行文件的處理裝置的控制下,對(duì)加載在本微型虛擬機(jī)中的加固后的可執(zhí)行文件進(jìn)行解密并運(yùn)行。

本發(fā)明實(shí)施例采用在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī),利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè),并在確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行;由于本方案在進(jìn)行解密和運(yùn)行代碼之前,均會(huì)對(duì)運(yùn)行環(huán)境進(jìn)行檢測(cè),以保證運(yùn)行環(huán)境的安全性,因此,可以更好地保護(hù)代碼,提高數(shù)據(jù)安全性;而且,由于代碼的解密和運(yùn)行是在指定的微型虛擬機(jī)中進(jìn)行的,因此,相對(duì)于現(xiàn)有技術(shù)只能在內(nèi)存中進(jìn)行解密和運(yùn)行的方案而言,可以避免受其他進(jìn)程的影響,提高其運(yùn)行效率。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明實(shí)施例提供的可執(zhí)行文件的處理方法的流程示意圖;

圖2a是本發(fā)明實(shí)施例提供的可執(zhí)行文件的處理方法中的加固流程圖;

圖2b是本發(fā)明實(shí)施例提供的可執(zhí)行文件的處理方法中的運(yùn)行流程圖;

圖3a是本發(fā)明實(shí)施例提供的可執(zhí)行文件的處理裝置的結(jié)構(gòu)示意圖;

圖3b是本發(fā)明實(shí)施例提供的可執(zhí)行文件的處理裝置的另一結(jié)構(gòu)示意圖;

圖4是本發(fā)明實(shí)施例提供的移動(dòng)終端的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

本發(fā)明實(shí)施例提供一種可執(zhí)行文件的處理方法、裝置和系統(tǒng)。以下將分別進(jìn)行詳細(xì)說明。

實(shí)施例一、

本實(shí)施例將從可執(zhí)行文件的處理裝置的角度進(jìn)行描述,該可執(zhí)行文件的處理裝置具體可以集成在移動(dòng)終端等設(shè)備中,該移動(dòng)終端具體可以為手機(jī)或平板電腦等。

一種可執(zhí)行文件的處理方法,包括:在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī);利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè);確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行。

如圖1所示,該可執(zhí)行文件的處理方法的流程具體可以如下:

101、在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī)。

例如,以安卓系統(tǒng)為例,具體可以利用安卓系統(tǒng)原有dalvik(一種用于Android平臺(tái)的Java虛擬機(jī))的解釋運(yùn)行的特性,來指定本移動(dòng)終端專屬的微型虛擬機(jī),使得該微型虛擬機(jī)可以具有加固后的可執(zhí)行文件運(yùn)行前的最高優(yōu)先運(yùn)行權(quán),即在加固后的可執(zhí)行文件運(yùn)行前優(yōu)先運(yùn)行微型虛擬機(jī),這樣,在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),便可以啟動(dòng)微型虛擬機(jī)。

102、利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè)。

其中,對(duì)該運(yùn)行環(huán)境的檢測(cè)包括對(duì)微型虛擬機(jī)自身的完整性的檢測(cè),以及對(duì)運(yùn)行環(huán)境的安全性的檢測(cè),即步驟“利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè)”具體可以如下:

利用該微型虛擬機(jī)對(duì)微型虛擬機(jī)自身的完整性進(jìn)行檢測(cè);以及,

利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境的安全性進(jìn)行檢測(cè);

若完整性檢測(cè)通過且運(yùn)行環(huán)境為安全,則確定檢測(cè)結(jié)果符合預(yù)置條件;

若完整性檢測(cè)不通過或運(yùn)行環(huán)境不安全,則確定檢測(cè)結(jié)果不符合預(yù)置條件。

其中,完整性檢測(cè)和安全性檢測(cè)的執(zhí)行步驟可以不分先后,在此不再贅述。

103、確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行。

例如,可以將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中,并確定該加固后的可執(zhí)行文件中加密代碼的位置,根據(jù)確定的位置獲取相應(yīng)的加密索引,并在該微型虛擬機(jī)中對(duì)加密索引進(jìn)行解密,得到解密后索引,然后,在該微型虛擬機(jī)中,根據(jù)解密后索引還原該可執(zhí)行文件的代碼并運(yùn)行還原后代碼。

其中,加固后的可執(zhí)行文件指的是加密后的可執(zhí)行文件,加固的方式可以有多種,例如,具體可以如下:

(1)獲取可執(zhí)行文件中需要加固的代碼的索引。

例如,具體可以獲取移動(dòng)終端應(yīng)用提交的關(guān)于可執(zhí)行文件的加固請(qǐng)求,根據(jù)該加固請(qǐng)求掃描該移動(dòng)終端應(yīng)用的可執(zhí)行文件,以獲取需要加固的代碼,然后根據(jù)預(yù)置的虛擬機(jī)特性獲取該需要加固的代碼的索引。

(2)對(duì)該需要加固的代碼的索引進(jìn)行加密,得到加密索引。

其中,加密的方式可以有多種,具體可以根據(jù)實(shí)際應(yīng)用的需求進(jìn)行設(shè)置,在此不再贅述。

(3)將加密索引添加至該可執(zhí)行文件中的相應(yīng)位置,得到加固后的可執(zhí)行文件。

由上可知,本實(shí)施例采用在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī),利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè),并在確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行;由于本方案在進(jìn)行解密和運(yùn)行代碼之前,均會(huì)對(duì)運(yùn)行環(huán)境進(jìn)行檢測(cè),以保證運(yùn)行環(huán)境的安全性,因此,可以更好地保護(hù)代碼,提高數(shù)據(jù)安全性;而且,由于代碼的解密和運(yùn)行是在指定的微型虛擬機(jī)中進(jìn)行的,因此,相對(duì)于現(xiàn)有技術(shù)只能在內(nèi)存中進(jìn)行解密和運(yùn)行的方案而言,可以避免受其他進(jìn)程的影響,提高其運(yùn)行效率,且兼容性更優(yōu)。

實(shí)施例二、

根據(jù)實(shí)施例一所描述的方法,以下將舉例作進(jìn)一步詳細(xì)說明。

在本實(shí)施例中,將以安卓系統(tǒng)為例進(jìn)行說明。其中,該可執(zhí)行文件的處理裝置具體可以集成在移動(dòng)終端中,簡(jiǎn)稱為處理裝置,而該可執(zhí)行文件具體可以為dex文件等。

其中,該可執(zhí)行文件的處理方法的流程包括可執(zhí)行文件的加固流程和運(yùn)行流程,以下將分別進(jìn)行詳細(xì)說明。

(1)加固;

如圖2a所示,該可執(zhí)行文件的加固方法的具體流程可以如下:

A201、處理裝置獲取移動(dòng)終端應(yīng)用提交的關(guān)于可執(zhí)行文件的加固請(qǐng)求,比如,關(guān)于dex文件的加固請(qǐng)求。

A202、處理裝置根據(jù)該加固請(qǐng)求掃描該移動(dòng)終端應(yīng)用的可執(zhí)行文件,比如掃描該移動(dòng)終端應(yīng)用的dex文件,以獲取需要加固的代碼。

A203、處理裝置根據(jù)安卓系統(tǒng)的虛擬機(jī)特性獲取該需要加固的代碼的索引。

A204、處理裝置對(duì)該需要加固的代碼的索引進(jìn)行加密,得到加密索引。

例如,具體可以隱藏該索引,比如將該索引中的一些項(xiàng)目的值改寫為無效值,等等。

A205、處理裝置將加密索引添加至該可執(zhí)行文件,比如dex文件中的相應(yīng)位置,得到加固后的可執(zhí)行文件。

(2)運(yùn)行;

如圖2b所示,該加固后可執(zhí)行文件的運(yùn)行方法的具體流程可以如下:

B201、在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),處理裝置啟動(dòng)本移動(dòng)終端的微型虛擬機(jī)。

例如,以安卓系統(tǒng)為例,具體可以利用安卓系統(tǒng)原有dalvik(一種用于Android平臺(tái)的Java虛擬機(jī))的解釋運(yùn)行的特性,來指定本移動(dòng)終端專屬的微型虛擬機(jī),使得該微型虛擬機(jī)可以具有加固后的可執(zhí)行文件運(yùn)行前的最高優(yōu)先運(yùn)行權(quán),即在加固后的可執(zhí)行文件運(yùn)行前優(yōu)先運(yùn)行微型虛擬機(jī),這樣,在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),便可以啟動(dòng)微型虛擬機(jī)。

B202、處理裝置利用該微型虛擬機(jī)對(duì)微型虛擬機(jī)自身的完整性進(jìn)行檢測(cè),若完整性檢測(cè)通過,則執(zhí)行步驟B203,若完整性檢測(cè)不通過,則終止運(yùn)行,流程結(jié)束。

B203、處理裝置利用該微型虛擬機(jī)對(duì)可執(zhí)行文件如dex文件的運(yùn)行環(huán)境的安全性進(jìn)行檢測(cè),若運(yùn)行環(huán)境為安全,則執(zhí)行步驟B204,若運(yùn)行環(huán)境為不安全,則終止運(yùn)行,流程結(jié)束。

B204、在完整性檢測(cè)通過且運(yùn)行環(huán)境為安全,處理裝置將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中,比如將加固后的dex文件加載至該微型虛擬機(jī)中。

B205、處理裝置確定該加固后的可執(zhí)行文件中加密索引的位置,根據(jù)確定的位置獲取相應(yīng)的加密索引。

B206、處理裝置在該微型虛擬機(jī)中對(duì)加密索引進(jìn)行解密,得到解密后代索引。

其中,解密的方法與加密的方法想匹配,例如,如果在加密時(shí)隱藏了需要加固的代碼的索引,則此時(shí)可以將隱藏的索引還原,比如,將一些項(xiàng)目的無效值還原為原有的值,等等。

B207、處理裝置在該微型虛擬機(jī)中根據(jù)解密后索引還原該可執(zhí)行文件如 dex文件的代碼,并在該微型虛擬機(jī)中運(yùn)行還原后代碼。

由上可知,本實(shí)施例采用在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī),利用該微型虛擬機(jī)對(duì)微信虛擬機(jī)自身的完整性,以及可執(zhí)行文件運(yùn)行環(huán)境的安全性進(jìn)行檢測(cè),并在確定檢測(cè)通過時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行;由于本方案在進(jìn)行解密和運(yùn)行代碼之前,均會(huì)對(duì)運(yùn)行環(huán)境進(jìn)行檢測(cè),以保證運(yùn)行環(huán)境的安全性,因此,可以更好地保護(hù)代碼,提高數(shù)據(jù)安全性;而且,由于代碼的解密和運(yùn)行是在指定的微型虛擬機(jī)中進(jìn)行的,因此,相對(duì)于現(xiàn)有技術(shù)只能在內(nèi)存中進(jìn)行解密和運(yùn)行的方案而言,可以避免受其他進(jìn)程的影響,提高其運(yùn)行效率,且兼容性更優(yōu)。

實(shí)施例三、

為了更好地實(shí)施以上方法,本發(fā)明實(shí)施例還提供一種可執(zhí)行文件的處理裝置,如圖3a所示,該可執(zhí)行文件的處理裝置可以包括啟動(dòng)單元301、檢測(cè)單元302和處理單元303,如下:

啟動(dòng)單元301,用于在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī)。

例如,以安卓系統(tǒng)為例,具體可以利用安卓系統(tǒng)原有dalvik的解釋運(yùn)行的特性,來指定本移動(dòng)終端專屬的微型虛擬機(jī),使得該微型虛擬機(jī)可以具有加固后的可執(zhí)行文件運(yùn)行前的最高優(yōu)先運(yùn)行權(quán),即在加固后的可執(zhí)行文件運(yùn)行前優(yōu)先運(yùn)行微型虛擬機(jī),這樣,在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),便可以啟動(dòng)微型虛擬機(jī)。

檢測(cè)單元302,用于利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè)。

其中,對(duì)該運(yùn)行環(huán)境的檢測(cè)包括對(duì)微型虛擬機(jī)自身的完整性的檢測(cè),以及對(duì)運(yùn)行環(huán)境的安全性的檢測(cè),即:

檢測(cè)單元302,具體用于利用該微型虛擬機(jī)對(duì)微型虛擬機(jī)自身的完整性進(jìn)行檢測(cè);以及,利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境的安全性進(jìn)行檢測(cè);若完整性檢測(cè)通過且運(yùn)行環(huán)境為安全,則確定檢測(cè)結(jié)果符合預(yù)置條件;若完整性檢測(cè)不通過或運(yùn)行環(huán)境不安全,則確定檢測(cè)結(jié)果不符合預(yù)置條件。

其中,完整性檢測(cè)和安全性檢測(cè)的執(zhí)行可以不分先后,在此不再贅述。

處理單元303,用于確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行。

例如,該處理單元303,具體可以用于將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中,并確定該加固后的可執(zhí)行文件中加密索引的位置;根據(jù)確定的位置獲取相應(yīng)的加密索引,并在該微型虛擬機(jī)中對(duì)加密索引進(jìn)行解密,得到解密后索引;在該微型虛擬機(jī)中,根據(jù)解密后索引還原該可執(zhí)行文件的代碼并運(yùn)行還原后代碼。

其中,加固后的可執(zhí)行文件指的是加密后的可執(zhí)行文件,加固的方式可以有多種,例如,可以獲取可執(zhí)行文件中需要加固的代碼的索引,然后對(duì)該索引進(jìn)行加密,即如圖3b所示,該可執(zhí)行文件的處理裝置還可以包括獲取單元304、加密單元305和添加單元306,如下:

獲取單元304,用于獲取可執(zhí)行文件中需要加固的代碼的索引。

例如,獲取單元304,具體可以用于獲取移動(dòng)終端應(yīng)用提交的關(guān)于可執(zhí)行文件的加固請(qǐng)求,根據(jù)該加固請(qǐng)求掃描該移動(dòng)終端應(yīng)用的可執(zhí)行文件,以獲取需要加固的代碼,然后根據(jù)預(yù)置的虛擬機(jī)特性獲取該需要加固的代碼的索引。

加密單元305,用于對(duì)該需要加固的代碼的索引進(jìn)行加密,得到加密索引。

其中,加密的方式可以有多種,具體可以根據(jù)實(shí)際應(yīng)用的需求進(jìn)行設(shè)置,在此不再贅述。

添加單元306,用于將加密索引添加至該可執(zhí)行文件中的相應(yīng)位置,得到加固后的可執(zhí)行文件。

具體實(shí)施時(shí),以上各個(gè)單元可以作為獨(dú)立的實(shí)體來實(shí)現(xiàn),也可以進(jìn)行任意組合,作為同一或若干個(gè)實(shí)體來實(shí)現(xiàn),以上各個(gè)單元的具體實(shí)施可參見前面的方法實(shí)施例,在此不再贅述。

該可執(zhí)行文件的處理裝置具體可以集成在移動(dòng)終端等設(shè)備中,該移動(dòng)終端具體可以為手機(jī)或平板電腦等。

由上可知,本實(shí)施例的可執(zhí)行文件的處理裝置的啟動(dòng)單元301可以在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī),然后由檢測(cè)單元302利用該微型虛擬機(jī)對(duì) 可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè),并在確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),由處理單元303將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行;由于本方案在進(jìn)行解密和運(yùn)行代碼之前,均會(huì)對(duì)運(yùn)行環(huán)境進(jìn)行檢測(cè),以保證運(yùn)行環(huán)境的安全性,因此,可以更好地保護(hù)代碼,提高數(shù)據(jù)安全性;而且,由于代碼的解密和運(yùn)行是在指定的微型虛擬機(jī)中進(jìn)行的,因此,相對(duì)于現(xiàn)有技術(shù)只能在內(nèi)存中進(jìn)行解密和運(yùn)行的方案而言,可以避免受其他進(jìn)程的影響,提高其運(yùn)行效率,且兼容性更優(yōu)。

實(shí)施例四、

相應(yīng)的,本發(fā)明實(shí)施例還提供一種可執(zhí)行文件的處理系統(tǒng),包括微型虛擬機(jī)和本發(fā)明實(shí)施例所提供的任一種可執(zhí)行文件的處理裝置,其中,該可執(zhí)行文件的處理裝置具體可參見實(shí)施例三,例如,具體可以如下:

可執(zhí)行文件的處理裝置,用于在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī);利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè);確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行。

微型虛擬機(jī),用于在該可執(zhí)行文件的處理裝置的控制下啟動(dòng),并在該可執(zhí)行文件的處理裝置的控制下,對(duì)加載在本微型虛擬機(jī)中的加固后的可執(zhí)行文件進(jìn)行解密并運(yùn)行。

其中,加固后的可執(zhí)行文件指的是加密后的可執(zhí)行文件,加固的方式可以有多種,例如,具體可以如下:

可執(zhí)行文件的處理裝置,還可以用于獲取可執(zhí)行文件中需要加固的代碼的索引,對(duì)該需要加固的代碼的索引進(jìn)行加密,得到加密索引,將加密索引添加至該可執(zhí)行文件中的相應(yīng)位置,得到加固后的可執(zhí)行文件。

以上各個(gè)設(shè)備的具體實(shí)施可參見前面的實(shí)施例,在此不再贅述。

由于該可執(zhí)行文件的處理系統(tǒng)可以包括本發(fā)明實(shí)施例所提供的任一種可執(zhí)行文件的處理裝置,因此,可以實(shí)現(xiàn)本發(fā)明實(shí)施例所提供的任一種可執(zhí)行文件的處理裝置所能實(shí)現(xiàn)的有益效果,詳見前面的實(shí)施例,在此不再贅述。

實(shí)施例五、

相應(yīng)的,本發(fā)明實(shí)施例還提供一種移動(dòng)終端,如圖4所示,該移動(dòng)終端可以包括射頻(RF,Radio Frequency)電路401、包括有一個(gè)或一個(gè)以上計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的存儲(chǔ)器402、輸入單元403、顯示單元404、傳感器405、音頻電路406、無線保真(WiFi,Wireless Fidelity)模塊407、包括有一個(gè)或者一個(gè)以上處理核心的處理器408、以及電源409等部件。本領(lǐng)域技術(shù)人員可以理解,圖4中示出的移動(dòng)終端結(jié)構(gòu)并不構(gòu)成對(duì)移動(dòng)終端的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:

RF電路401可用于收發(fā)信息或通話過程中,信號(hào)的接收和發(fā)送,特別地,將基站的下行信息接收后,交由一個(gè)或者一個(gè)以上處理器408處理;另外,將涉及上行的數(shù)據(jù)發(fā)送給基站。通常,RF電路401包括但不限于天線、至少一個(gè)放大器、調(diào)諧器、一個(gè)或多個(gè)振蕩器、用戶身份模塊(SIM,Subscriber Identity Module)卡、收發(fā)信機(jī)、耦合器、低噪聲放大器(LNA,Low Noise Amplifier)、雙工器等。此外,RF電路401還可以通過無線通信與網(wǎng)絡(luò)和其他設(shè)備通信。所述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于全球移動(dòng)通訊系統(tǒng)(GSM,Global System of Mobile communication)、通用分組無線服務(wù)(GPRS,General Packet Radio Service)、碼分多址(CDMA,Code Division Multiple Access)、寬帶碼分多址(WCDMA,Wideband Code Division Multiple Access)、長(zhǎng)期演進(jìn)(LTE,Long Term Evolution)、電子郵件、短消息服務(wù)(SMS,Short Messaging Service)等。

存儲(chǔ)器402可用于存儲(chǔ)軟件程序以及模塊,處理器408通過運(yùn)行存儲(chǔ)在存儲(chǔ)器402的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理。存儲(chǔ)器402可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)移動(dòng)終端的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲(chǔ)器402可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。 相應(yīng)地,存儲(chǔ)器402還可以包括存儲(chǔ)器控制器,以提供處理器408和輸入單元403對(duì)存儲(chǔ)器402的訪問。

輸入單元403可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與用戶設(shè)置以及功能控制有關(guān)的鍵盤、鼠標(biāo)、操作桿、光學(xué)或者軌跡球信號(hào)輸入。具體地,在一個(gè)具體的實(shí)施例中,輸入單元403可包括觸敏表面以及其他輸入設(shè)備。觸敏表面,也稱為觸摸顯示屏或者觸控板,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸敏表面上或在觸敏表面附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動(dòng)相應(yīng)的連接裝置??蛇x的,觸敏表面可包括觸摸檢測(cè)裝置和觸摸控制器兩個(gè)部分。其中,觸摸檢測(cè)裝置檢測(cè)用戶的觸摸方位,并檢測(cè)觸摸操作帶來的信號(hào),將信號(hào)傳送給觸摸控制器;觸摸控制器從觸摸檢測(cè)裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器408,并能接收處理器408發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸敏表面。除了觸敏表面,輸入單元403還可以包括其他輸入設(shè)備。具體地,其他輸入設(shè)備可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。

顯示單元404可用于顯示由用戶輸入的信息或提供給用戶的信息以及移動(dòng)終端的各種圖形用戶接口,這些圖形用戶接口可以由圖形、文本、圖標(biāo)、視頻和其任意組合來構(gòu)成。顯示單元404可包括顯示面板,可選的,可以采用液晶顯示器(LCD,Liquid Crystal Display)、有機(jī)發(fā)光二極管(OLED,Organic Light-Emitting Diode)等形式來配置顯示面板。進(jìn)一步的,觸敏表面可覆蓋顯示面板,當(dāng)觸敏表面檢測(cè)到在其上或附近的觸摸操作后,傳送給處理器408以確定觸摸事件的類型,隨后處理器408根據(jù)觸摸事件的類型在顯示面板上提供相應(yīng)的視覺輸出。雖然在圖4中,觸敏表面與顯示面板是作為兩個(gè)獨(dú)立的部件來實(shí)現(xiàn)輸入和輸入功能,但是在某些實(shí)施例中,可以將觸敏表面與顯示面板集成而實(shí)現(xiàn)輸入和輸出功能。

移動(dòng)終端還可包括至少一種傳感器405,比如光傳感器、運(yùn)動(dòng)傳感器以及 其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板的亮度,接近傳感器可在移動(dòng)終端移動(dòng)到耳邊時(shí),關(guān)閉顯示面板和/或背光。作為運(yùn)動(dòng)傳感器的一種,重力加速度傳感器可檢測(cè)各個(gè)方向上(一般為三軸)加速度的大小,靜止時(shí)可檢測(cè)出重力的大小及方向,可用于識(shí)別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計(jì)姿態(tài)校準(zhǔn))、振動(dòng)識(shí)別相關(guān)功能(比如計(jì)步器、敲擊)等;至于移動(dòng)終端還可配置的陀螺儀、氣壓計(jì)、濕度計(jì)、溫度計(jì)、紅外線傳感器等其他傳感器,在此不再贅述。

音頻電路406、揚(yáng)聲器,傳聲器可提供用戶與移動(dòng)終端之間的音頻接口。音頻電路406可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號(hào),傳輸?shù)綋P(yáng)聲器,由揚(yáng)聲器轉(zhuǎn)換為聲音信號(hào)輸出;另一方面,傳聲器將收集的聲音信號(hào)轉(zhuǎn)換為電信號(hào),由音頻電路406接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器408處理后,經(jīng)RF電路401以發(fā)送給比如另一移動(dòng)終端,或者將音頻數(shù)據(jù)輸出至存儲(chǔ)器402以便進(jìn)一步處理。音頻電路406還可能包括耳塞插孔,以提供外設(shè)耳機(jī)與移動(dòng)終端的通信。

WiFi屬于短距離無線傳輸技術(shù),移動(dòng)終端通過WiFi模塊407可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁(yè)和訪問流式媒體等,它為用戶提供了無線的寬帶互聯(lián)網(wǎng)訪問。雖然圖4示出了WiFi模塊407,但是可以理解的是,其并不屬于移動(dòng)終端的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。

處理器408是移動(dòng)終端的控制中心,利用各種接口和線路連接整個(gè)手機(jī)的各個(gè)部分,通過運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)器402內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)器402內(nèi)的數(shù)據(jù),執(zhí)行移動(dòng)終端的各種功能和處理數(shù)據(jù),從而對(duì)手機(jī)進(jìn)行整體監(jiān)控??蛇x的,處理器408可包括一個(gè)或多個(gè)處理核心;優(yōu)選的,處理器408可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器408中。

移動(dòng)終端還包括給各個(gè)部件供電的電源409(比如電池),優(yōu)選的,電源可以通過電源管理系統(tǒng)與處理器408邏輯相連,從而通過電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。電源409還可以包括一個(gè)或一個(gè)以上的直流或交流電源、再充電系統(tǒng)、電源故障檢測(cè)電路、電源轉(zhuǎn)換器或者逆變器、電源狀態(tài)指示器等任意組件。

盡管未示出,移動(dòng)終端還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。具體在本實(shí)施例中,移動(dòng)終端中的處理器408會(huì)按照如下的指令,將一個(gè)或一個(gè)以上的應(yīng)用程序的進(jìn)程對(duì)應(yīng)的可執(zhí)行文件加載到存儲(chǔ)器402中,并由處理器408來運(yùn)行存儲(chǔ)在存儲(chǔ)器402中的應(yīng)用程序,從而實(shí)現(xiàn)各種功能:

在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī);利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè);確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行。

其中,對(duì)該運(yùn)行環(huán)境的檢測(cè)包括對(duì)微型虛擬機(jī)自身的完整性的檢測(cè),以及對(duì)運(yùn)行環(huán)境的安全性的檢測(cè),具體可參見前面的實(shí)施例。

此外,需說明的是,加固后的可執(zhí)行文件指的是加密后的可執(zhí)行文件,其中,加固的方式可以有多種,例如,具體可以如下:

獲取可執(zhí)行文件中需要加固的代碼的索引,對(duì)該需要加固的代碼的索引進(jìn)行加密,得到加密索引,將加密索引添加至該可執(zhí)行文件中的相應(yīng)位置,得到加固后的可執(zhí)行文件,詳見前面的實(shí)施例。

以上各個(gè)操作的具體實(shí)施可參見前面的實(shí)施例,在此不再贅述。

由上可知,本實(shí)施例的移動(dòng)終端采用在啟動(dòng)移動(dòng)終端應(yīng)用時(shí),啟動(dòng)微型虛擬機(jī),利用該微型虛擬機(jī)對(duì)可執(zhí)行文件的運(yùn)行環(huán)境進(jìn)行檢測(cè),并在確定檢測(cè)結(jié)果符合預(yù)置條件時(shí),將加固后的可執(zhí)行文件加載至該微型虛擬機(jī)中進(jìn)行解密并運(yùn)行;由于本方案在進(jìn)行解密和運(yùn)行代碼之前,均會(huì)對(duì)運(yùn)行環(huán)境進(jìn)行檢測(cè),以保證運(yùn)行環(huán)境的安全性,因此,可以更好地保護(hù)代碼,提高數(shù)據(jù)安全性;而且,由于代碼的解密和運(yùn)行是在指定的微型虛擬機(jī)中進(jìn)行的,因此,相對(duì)于現(xiàn)有技術(shù)只能在內(nèi)存中進(jìn)行解密和運(yùn)行的方案而言,可以避免受其他進(jìn)程的影響,提 高其運(yùn)行效率,且兼容性更優(yōu)。

本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)可以包括:只讀存儲(chǔ)器(ROM,Read Only Memory)、隨機(jī)存取記憶體(RAM,Random Access Memory)、磁盤或光盤等。

以上對(duì)本發(fā)明實(shí)施例所提供的一種可執(zhí)行文件的處理方法、裝置和系統(tǒng)進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1