新四季網

應用程式的指令執行方法及裝置與流程

2023-06-14 00:04:51 1


本申請涉及計算機領域,具體而言,涉及一種應用程式的指令執行方法及裝置。



背景技術:

android作業系統是一個開源系統,針對該作業系統存在完整的逆向工具集合,例如,開源的dex2jar工具可以將dex文件(android作業系統中可執行文件的格式)轉換成標準的java(一種可以撰寫跨平臺應用程式的面向對象的程序設計語言)字節碼格式的文件,利用現有的java反編譯軟體可以直接獲取android應用程式的原始碼,由於android應用程式的逆向破解難度較低,因此需要使用額外的方式來保護android應用程式的可執行代碼。

基於android應用程式的逆向破解難度較低,現有技術中保護android應用程式的可執行代碼的方式及各自缺陷主要包括:

方式一、apk整體保護,即將apk(androidpackage,android安裝包)文件整體加密後保存,待用戶使用時提示用戶安裝。但是,該種方式存在的缺陷為:若apk文件已安裝,攻擊者可以獲取到完整的apk文件。

方式二、dex整體保護,即將apk文件中的dex文件整體加密後保存,待用戶使用時釋放至文件系統或者內存中,並且使用虛擬機的加載機制進行加載。但是,該種方式存在的缺陷為:攻擊者可以構造一個虛擬機,在文件系統或者內存中dex文件的加載過程中保存該dex文件,從而獲取到該dex文件。

方式三、dex函數保護,即從dex文件中抽取函數的指令塊(codeitem)並加密保存,待用戶使用時,恢復到dex文件所在的內存區域,或者恢復到虛擬機的內部數據結構中。但是,該種方式存在的缺陷為:攻擊者可以構造一個虛擬機,當dex文件中的某個函數被執行時,記錄這個函數的指令塊,最終可依據dex文件的格式要求重新拼裝出完整的dex文件,從而獲取到該dex文件。

綜上所述,由於攻擊者的攻擊方式較為繁雜,且上述方式均不能有效阻止現有的攻擊行為。因此,現有技術中存在android應用程式的逆向破解難度較低、文件安全性和攻擊防範性較差的技術問題。

針對上述的問題,目前尚未提出有效的解決方案。

申請內容

本申請實施例提供了一種應用程式的指令執行方法及裝置,以至少解決現有技術中的應用程式逆向破解難度較低的技術問題。

根據本申請實施例的一個方面,提供了一種應用程式的指令執行方法,包括:接收用於執行應用程式的程序運行請求;響應於所述程序運行請求,調用預先設置的執行模板;利用所述執行模板獲取預定數量的待執行指令,並執行所述待執行指令。

根據本申請實施例的另一方面,還提供了一種應用程式的指令執行裝置,包括:接收單元,用於接收用於執行應用程式的程序運行請求;調用單元,用於響應於所述程序運行請求,調用預先設置的執行模板;處理單元,用於利用所述執行模板獲取預定數量的待執行指令,並執行所述待執行指令。

在本申請實施例中,採用接收用於執行應用程式的程序運行請求;響應於所述程序運行請求,調用預先設置的執行模板;利用所述執行模板獲取預定數量的待執行指令,並執行所述待執行指令的方式,通過響應接收到的用於執行應用程式的程序運行請求,以及調用預先設置的執行模板,達到了利用執行模板獲取並執行預定數量的待執行指令的目的,而現有技術中的方案在運行應用程式時,獲取指令塊中的全部指令再依次執行指令,採用現有技術中的方案可以同時獲取一個指令塊中的全部指令,通過本申請,攻擊者在同一時刻最多只能獲取一條指令,因此,採用本申請的方案可以實現提升android應用程式的逆向破解難度、增強android應用程式的文件安全性和攻擊防範性的技術效果,進而解決了現有技術中的應用程式逆向破解難度較低的技術問題。

附圖說明

此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在附圖中:

圖1是根據本申請實施例的一種應用程式的指令執行方法的計算機終端的硬體結構框圖;

圖2是根據本申請實施例的一種可選的應用程式的指令執行方法的流程示意圖;

圖3是根據本申請實施例的一種可選的應用程式的指令執行方法的結構示意圖;

圖4是根據本申請實施例的另一種可選的應用程式的指令執行方法的流程示意 圖;

圖5是根據本申請實施例的另一種可選的應用程式的指令執行方法的結構示意圖;

圖6是根據本申請實施例的又一種可選的應用程式的指令執行方法的結構示意圖;

圖7是根據本申請實施例的又一種可選的應用程式的指令執行方法的結構示意圖;

圖8是根據本申請實施例的一種可選的應用程式的指令執行裝置的結構示意圖;

圖9是根據本申請實施例的另一種可選的應用程式的指令執行裝置的結構示意圖;

圖10是根據本申請實施例的又一種可選的應用程式的指令執行裝置的結構示意圖;

圖11是根據本申請實施例的又一種可選的應用程式的指令執行裝置的結構示意圖;

圖12是根據本申請實施例的又一種可選的應用程式的指令執行裝置的結構示意圖;

圖13是根據本申請實施例的一種計算機終端的結構框圖。

具體實施方式

為了使本技術領域的人員更好地理解本申請方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分的實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本申請保護的範圍。

需要說明的是,本申請的說明書和權利要求書及上述附圖中的術語「第一」、「第二」等是用於區別類似的對象,而不必用於描述特定的順序或先後次序。應該理解這樣使用的數據在適當情況下可以互換,以便這裡描述的本申請的實施例能夠以除了在這裡圖示或描述的那些以外的順序實施。此外,術語「包括」和「具有」以及他們的任何變形,意圖在於覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限於清楚地列出的那些步驟或單元,而是可包括沒有清楚 地列出的或對於這些過程、方法、產品或設備固有的其它步驟或單元。

實施例1

根據本申請實施例,還提供了一種應用程式的指令執行方法的實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執行指令的計算機系統中執行,並且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟。

本申請實施例一所提供的方法實施例可以在移動終端、計算機終端或者類似的運算裝置中執行。以運行在計算機終端上為例,圖1是本申請實施例的一種應用程式的指令執行方法的計算機終端的硬體結構框圖。如圖1所示,計算機終端10可以包括一個或多個(圖中僅示出一個)處理器102(處理器102可以包括但不限於微處理器mcu或可編程邏輯器件fpga等的處理裝置)、用於存儲數據的存儲器104、以及用於通信功能的傳輸裝置106。本領域普通技術人員可以理解,圖1所示的結構僅為示意,其並不對上述電子裝置的結構造成限定。例如,計算機終端10還可包括比圖1中所示更多或者更少的組件,或者具有與圖1所示不同的配置。

存儲器104可用於存儲應用軟體的軟體程序以及模塊,如本申請實施例中的應用程式的指令執行方法對應的程序指令/模塊,處理器102通過運行存儲在存儲器104內的軟體程序以及模塊,從而執行各種功能應用以及數據處理,即實現上述的應用程式的指令執行方法。存儲器104可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、快閃記憶體、或者其他非易失性固態存儲器。在一些實例中,存儲器104可進一步包括相對於處理器102遠程設置的存儲器,這些遠程存儲器可以通過網絡連接至計算機終端10。上述網絡的實例包括但不限於網際網路、企業內部網、區域網、移動通信網及其組合。

傳輸裝置106用於經由一個網絡接收或者發送數據。上述的網絡具體實例可包括計算機終端10的通信供應商提供的無線網絡。在一個實例中,傳輸裝置106包括一個網絡適配器(networkinterfacecontroller,nic),其可通過基站與其他網絡設備相連從而可與網際網路進行通訊。在一個實例中,傳輸裝置106可以為射頻(radiofrequency,rf)模塊,其用於通過無線方式與網際網路進行通訊。

在上述運行環境下,本申請提供了如圖2所示的應用程式的指令執行方法。圖2是根據本申請實施例一的應用程式的指令執行方法的流程示意圖。

如圖2所示,應用程式的指令執行方法可以包括如下實施步驟:

步驟s202,接收用於執行應用程式的程序運行請求;

步驟s204,響應於程序運行請求,調用預先設置的執行模板;

步驟s206,利用執行模板獲取預定數量的待執行指令,並執行待執行指令。

採用本申請上述實施例,通過響應接收到的用於執行應用程式的程序運行請求,以及調用預先設置的執行模板,達到了利用執行模板獲取並執行預定數量的待執行指令的目的,而現有技術中的方案在運行應用程式時,獲取指令塊中的全部指令再依次執行指令,採用現有技術中的方案可以同時獲取一個指令塊中的全部指令,通過本申請,攻擊者在同一時刻最多只能獲取一條指令,因此,採用本申請的方案可以實現提升android應用程式的逆向破解難度、增強android應用程式的文件安全性和攻擊防範性的技術效果,進而解決了現有技術中的應用程式逆向破解難度較低的技術問題。

在上述實施例中,可以利用執行模板逐條獲取並執行待執行指令,而不是一次性獲取所有的指令,攻擊者在一個時刻最多只能獲取一條指令,增加了攻擊者的破解難度。此外,還可以利用執行模板獲取預定數量的待執行指令,該預定數量可以依據實際需求人為地進行設置,例如,某個應用程式的dex文件中的待執行指令共計5條,執行模板可以在前一個時刻獲取2個待執行指令,而在後一個時刻獲取剩餘的3個待執行指令。

該預定數量可以為固定的數量,也可以根據處理器的處理速度對該預定數量的值進行調整。

可選地,本申請上述步驟s202中,應用程式是指為完成某項或多項特定工作的電腦程式,應用程式一般運行在用戶模式,可以和用戶進行交互,並具有可視的用戶界面。例如,android應用程式一般為dex文件,下述指令為構成該dex文件的部分或全部指令,執行下述指令用於實現的功能為「計算1+2的結果,然後返回」。具體地,下述指令包括:

mova,1

movb,2

addc,a,b

returnc

可選地,本申請上述步驟s204中,一個執行模板可以包含若干條dex指令。

具體地,圖3是根據本申請實施例的一種可選的應用程式的指令執行方法的結構 示意圖,如圖3所示,該執行模板包含3條dex指令:dispatch指令、nop指令和goto指令,其中,dispatch指令為執行模板中的第一條指令,nop指令為執行模板中的第二條指令,goto指令為執行模板中的最後一條指令。

其中,dispatch指令為函數調用指令,用於調用特定的函數dispatch,當被執行時其負責修改第二條執行(即nop指令);nop指令為空指令,當執行第一條指令[即dispatch指令]時,其內容會被修改;goto指令為無條件跳轉指令,用於將指令流返回至第一條指令[即dispatch指令]。

需要說明的是,android虛擬機均包含一個解釋執行引擎,該解釋執行引擎可以逐條執行dex指令,當解釋執行引擎正在執行一條dex指令時,其並不會去讀取當前正在執行指令的下一條指令,並只在開始執行下一條指令時才讀取。考慮到本申請實施例一所提供的應用程式的指令執行方法也需要從dex文件中抽離dex指令,若直接使用android虛擬機去執行完整的dex指令序列,會使得攻擊者有機會獲取到完整的dex指令序列,因此,本申請並不將抽離的指令在運行時直接還原,而是將對應的指令塊替換為預先設置的dex指令的執行模板。

可選地,本申請上述步驟s206中,指令為控制計算機工作的指示和命令。指令指針是由寄存器cs:ip指向,確定待執行指令所位於的內存地址,並由待執行指令執行結果確定下一條指令。

可選地,圖4是根據本申請實施例的另一種可選的應用程式的指令執行方法的流程示意圖,如圖4所示,利用執行模板獲取預定數量的待執行指令,並執行待執行指令包括:

步驟s402,通過執行該執行模板中的第一指令,讀取待執行指令,並使用待執行指令修改執行模板中第二指令的內容。

可選地,本申請上述步驟s402中,初始狀態下,指令指針vpc指向待執行的dex指令,即待執行指令。虛擬機可以使用待執行指令修改執行模板中nop指令的內容。

步驟s404,在執行第一指令完成之後,執行修改後的第二指令,以執行待執行指令。

可選地,本申請上述步驟s404中,修改後的第二指令可以為「mova,1」指令,也可以為「movb,2」指令,也可以為「addc,a,b」指令,還可以為「returnc」指令。

步驟s406,在執行第二指令完成之後,返回執行第一指令。

可選地,本申請上述步驟s406中,返回執行第一指令的目的在於依次執行應用程式中的dex文件中抽離的所有dex指令。

可選地,第二指令為空指令,其中,使用待執行指令修改執行模板中第二指令的內容包括:

步驟s10,將待執行指令寫入第二指令所在的位置。

可選地,結合步驟s10,圖5是根據本申請實施例的另一種可選的應用程式的指令執行方法的結構示意圖,如圖5所示,待執行指令為「mova,1」,虛擬機在執行執行模板的第一條指令,即調用diapatch函數時,diapatch函數可讀取待執行指令,並將預定數量的待執行指令寫入執行模板中第二指令所在的位置。需要說明的是,第二指令所在的位置可以置入一條指令,也可以置入多條指令。

可選地,在執行該執行模板中的第一指令的過程中,指令執行方法還包括:

步驟s20,將指令指針移動至待執行指令的下一條指令,其中,指令指針用於指向應用程式的可執行文件中的指令。

可選地,結合步驟s20,圖6是根據本申請實施例的又一種可選的應用程式的指令執行方法的結構示意圖,如圖6所示,指令指針(圖6中標有「vpc」字樣的箭頭為指令指針)可由當前位置移動至下一條指令所在的位置,從而完成依次執行全部dex指令。需要說明的是,指令指針的移動方式不限於逐條移動,指令指針可以單獨指向一條指令,也可以同時指向多條指令。本申請的指令執行方法可以採用逐條執行,但逐條執行並不用於限制本申請可以實現的其他多種執行方式,例如每2條逐次執行、每3條逐次執行、任意條逐次執行(每次執行的指令數量可以不等)等。

可選地,在返回執行第一指令之前,指令執行方法還包括:

步驟s30,恢復執行模板的初始狀態。

本申請上述步驟s30中,當dispatch函數返回時,若執行模板的第二條指令位置已經存在實際的指令(即存在非空指令),則虛擬機可以正常的執行。

可選地,結合步驟s30,圖7是根據本申請實施例的又一種可選的應用程式的指令執行方法的結構示意圖,如圖7所示,虛擬機(圖中標有「pc」字樣的箭頭為虛擬機指針)可執行mova,1指令;其次可執行該執行模板的無條件跳轉指令;最終可恢復執行模板的初始狀態,並可繼續執行虛擬機所指向的dex指令。

可選地,第一指令為函數調用指令,預定數量的待執行指令為一條或多條指令。

具體地,函數調用指令是指可以實現函數調用(functionreference)功能的計算機指令,其中,函數調用是指計算機編譯或運行時,使用某個函數來完成相關命令。對無參函數調用時無實際參數表,實際參數表中的參數可以是常數、變量或其它構造類型數據及表達式,各實際參數之間用逗號隔開。

可選地,若待執行指令為多條指令,則可以在同一命令行上執行該多條指令,執行該多條指令的方式可以為先後執行,也可以為並列執行。

需要說明的是,對於前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請並不受所描述的動作順序的限制,因為依據本申請,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模塊並不一定是本申請所必須的。

通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到根據上述實施例的方法可藉助軟體加必需的通用硬體平臺的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質(如rom/ram、磁碟、光碟)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,伺服器,或者網絡設備等)執行本申請各個實施例所述的方法。

實施例2

根據本申請實施例,還提供了一種用於實施上述應用程式的指令執行方法的應用程式的指令執行裝置,如圖8所示,該裝置可以包括:接收單元801、調用單元803、處理單元805。

其中,接收單元801,用於接收用於執行應用程式的程序運行請求;調用單元803,用於響應於程序運行請求,調用預先設置的執行模板;處理單元805,用於利用執行模板獲取預定數量的待執行指令,並執行待執行指令。

此處需要說明的是,上述接收單元801、調用單元803、處理單元805對應於實施例一中的步驟s202至步驟s206,三個單元與對應的步驟所實現的示例和應用場景相同,但不限於上述實施例一所公開的內容。需要說明的是,上述單元作為裝置的一部分可以運行在實施例一提供的計算機終端10中。

採用本申請上述實施例,通過響應接收到的用於執行應用程式的程序運行請求, 以及調用預先設置的執行模板,達到了利用執行模板獲取並執行預定數量的待執行指令的目的,而現有技術中的方案在運行應用程式時,獲取指令塊中的全部指令再依次執行指令,採用現有技術中的方案可以同時獲取一個指令塊中的全部指令,通過本申請,攻擊者在同一時刻最多只能獲取一條指令,因此,採用本申請的方案可以實現提升android應用程式的逆向破解難度、增強android應用程式的文件安全性和攻擊防範性的技術效果,進而解決了現有技術中的應用程式逆向破解難度較低的技術問題。

可選地,如圖9所示,處理單元805可以包括:處理子單元901、第一執行子單元903、第二執行子單元905。

其中,處理子單元901,用於通過執行該執行模板中的第一指令,讀取待執行指令,並使用待執行指令修改執行模板中第二指令的內容;第一執行子單元903,用於在執行第一指令完成之後,執行修改後的第二指令,以執行待執行指令;第二執行子單元905,用於在執行第二指令完成之後,返回執行第一指令。

此處需要說明的是,上述處理子單元901、第一執行子單元903、第二執行子單元905用於執行實施例一中的圖3所示的執行模板中的三個指令,三個子單元與對應的步驟所實現的示例和應用場景相同,但不限於上述實施例一所公開的內容。需要說明的是,上述子單元作為裝置的一部分可以運行在實施例一提供的計算機終端10中。

可選地,第二指令為空指令,如圖10所示,處理子單元901可以包括:寫入模塊1001。

其中,寫入模塊1001,用於將待執行指令寫入第二指令所在的位置。

此處需要說明的是,上述寫入模塊1001對應於實施例一中的步驟s10,該模塊與對應的步驟所實現的示例和應用場景相同,但不限於上述實施例一所公開的內容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端10中。

可選地,如圖11所示,指令執行裝置還包括:移動單元1101。

其中,移動單元1101,用於將指令指針移動至待執行指令的下一條指令,其中,指令指針用於指向應用程式的可執行文件中的指令。

此處需要說明的是,上述移動單元1101對應於實施例一中的步驟s20,該單元與對應的步驟所實現的示例和應用場景相同,但不限於上述實施例一所公開的內容。需要說明的是,上述單元作為裝置的一部分可以運行在實施例一提供的計算機終端10中。

可選地,如圖12所示,指令執行裝置還包括:恢復單元1201。

其中,恢復單元1201,用於恢復執行模板的初始狀態。

此處需要說明的是,上述恢復單元1201對應於實施例一中的步驟s30,該單元與對應的步驟所實現的示例和應用場景相同,但不限於上述實施例一所公開的內容。需要說明的是,上述單元作為裝置的一部分可以運行在實施例一提供的計算機終端10中。

可選地,第一指令為函數調用指令,預定數量的待執行指令為一條或多條指令。

本實施例中所提供的各個模塊與方法實施例對應步驟所提供的使用方法相同、應用場景也可以相同。當然,需要注意的是,上述模塊涉及的方案可以不限於上述實施例中的內容和場景,且上述模塊可以運行在計算機終端或移動終端,可以通過軟體或硬體實現。

實施例3

本申請的實施例可以提供一種計算機終端,該計算機終端可以是計算機終端群中的任意一個計算機終端設備。可選地,在本實施例中,上述計算機終端也可以替換為移動終端等終端設備。

可選地,在本實施例中,上述計算機終端可以位於計算機網絡的多個網絡設備中的至少一個網絡設備。

在本實施例中,上述計算機終端可以執行應用程式的指令執行方法中以下步驟的程序代碼:接收用於執行應用程式的程序運行請求;響應於程序運行請求,調用預先設置的執行模板;利用執行模板獲取預定數量的待執行指令,並執行待執行指令。

採用本申請上述實施例,通過響應接收到的用於執行應用程式的程序運行請求,以及調用預先設置的執行模板,達到了利用執行模板獲取並執行預定數量的待執行指令的目的,而現有技術中的方案在運行應用程式時,獲取指令塊中的全部指令再依次執行指令,採用現有技術中的方案可以同時獲取一個指令塊中的全部指令,通過本申請,攻擊者在同一時刻最多只能獲取一條指令,因此,採用本申請的方案可以實現提升android應用程式的逆向破解難度、增強android應用程式的文件安全性和攻擊防範性的技術效果,進而解決了現有技術中的應用程式逆向破解難度較低的技術問題。

可選地,圖13是根據本申請實施例的一種計算機終端的結構框圖。如圖13所示,該計算機終端a可以包括:一個或多個(圖中僅示出一個)處理器1301、存儲器1303、 以及傳輸裝置1305。

其中,存儲器1303可用於存儲軟體程序以及模塊,如本申請實施例中的指令執行方法和裝置對應的程序指令/模塊,處理器1301通過運行存儲在存儲器1303內的軟體程序以及模塊,從而執行各種功能應用以及數據處理,即實現上述的指令執行方法。存儲器1303可包括高速隨機存儲器,還可以包括非易失性存儲器,如一個或者多個磁性存儲裝置、快閃記憶體、或者其他非易失性固態存儲器。在一些實例中,存儲器1303可進一步包括相對於處理器遠程設置的存儲器,這些遠程存儲器可以通過網絡連接至終端a。上述網絡的實例包括但不限於網際網路、企業內部網、區域網、移動通信網及其組合。

上述的傳輸裝置1305用於經由一個網絡接收或者發送數據。上述的網絡具體實例可包括有線網絡及無線網絡。在一個實例中,傳輸裝置1305包括一個網絡適配器(networkinterfacecontroller,nic),其可通過網線與其他網絡設備與路由器相連從而可與網際網路或區域網進行通訊。在一個實例中,傳輸裝置1305為射頻(radiofrequency,rf)模塊,其用於通過無線方式與網際網路進行通訊。

其中,具體地,存儲器1303用於存儲預設動作條件和預設權限用戶的信息、以及應用程式。

處理器1301可以通過傳輸裝置1305調用存儲器1303存儲的信息及應用程式,以執行下述步驟:接收用於執行應用程式的程序運行請求;響應於程序運行請求,調用預先設置的執行模板;利用執行模板獲取指令指針當前指向的待執行指令,並執行待執行指令,其中,指令指針用於指向應用程式的可執行文件中的指令。

可選的,上述處理器1301還可以執行如下步驟的程序代碼:通過執行該執行模板中的第一指令,讀取待執行指令,並使用待執行指令修改執行模板中第二指令的內容;在執行第一指令完成之後,執行修改後的第二指令,以執行待執行指令;在執行第二指令完成之後,返回執行第一指令。

可選的,上述處理器1301還可以執行如下步驟的程序代碼:將待執行指令寫入第二指令所在的位置。

可選的,上述處理器1301還可以執行如下步驟的程序代碼:將指令指針移動至待執行指令的下一條指令,其中,指令指針用於指向應用程式的可執行文件中的指令。

可選的,上述處理器1301還可以執行如下步驟的程序代碼:恢復執行模板的初始狀態。

本領域普通技術人員可以理解,圖13所示的結構僅為示意,計算機終端也可以是 智慧型手機(如android手機、ios手機等)、平板電腦、掌聲電腦以及移動網際網路設備(mobileinternetdevices,mid)、pad等終端設備。圖13其並不對上述電子裝置的結構造成限定。例如,計算機終端13還可包括比圖13中所示更多或者更少的組件(如網絡接口、顯示裝置等),或者具有與圖13所示不同的配置。

本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令終端設備相關的硬體來完成,該程序可以存儲於一計算機可讀存儲介質中,存儲介質可以包括:快閃記憶體盤、只讀存儲器(read-onlymemory,rom)、隨機存取器(randomaccessmemory,ram)、磁碟或光碟等。

實施例4

本申請的實施例還提供了一種存儲介質。可選地,在本實施例中,上述存儲介質可以用於保存上述實施例一所提供的應用程式的指令執行方法所執行的程序代碼。

可選地,在本實施例中,上述存儲介質可以位於計算機網絡中計算機終端群中的任意一個計算機終端中,或者位於移動終端群中的任意一個移動終端中。

可選地,在本實施例中,存儲介質被設置為存儲用於執行以下步驟的程序代碼:接收用於執行應用程式的程序運行請求;響應於程序運行請求,調用預先設置的執行模板;利用執行模板獲取預定數量的待執行指令,並執行待執行指令。

採用本申請上述實施例,通過響應接收到的用於執行應用程式的程序運行請求,以及調用預先設置的執行模板,達到了利用執行模板獲取並執行預定數量的待執行指令的目的,而現有技術中的方案在運行應用程式時,獲取指令塊中的全部指令再依次執行指令,採用現有技術中的方案可以同時獲取一個指令塊中的全部指令,通過本申請,攻擊者在同一時刻最多只能獲取一條指令,因此,採用本申請的方案可以實現提升android應用程式的逆向破解難度、增強android應用程式的文件安全性和攻擊防範性的技術效果,進而解決了現有技術中的應用程式逆向破解難度較低的技術問題。

此處需要說明的是,上述計算機終端群中的任意一個可以與網站伺服器和掃描器建立通信關係,掃描器可以掃描計算機終端上php執行的web應用程式的值命令。

上述本申請實施例序號僅僅為了描述,不代表實施例的優劣。

在本申請的上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。

在本申請所提供的幾個實施例中,應該理解到,所揭露的技術內容,可通過其它 的方式實現。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特徵可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。

另外,在本申請各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用軟體功能單元的形式實現。

所述集成的單元如果以軟體功能單元的形式實現並作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基於這樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可為個人計算機、伺服器或者網絡設備等)執行本申請各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、移動硬碟、磁碟或者光碟等各種可以存儲程序代碼的介質。

以上所述僅是本申請的優選實施方式,應當指出,對於本技術領域的普通技術人員來說,在不脫離本申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本申請的保護範圍。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀