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

基于Android系統(tǒng)的應(yīng)用程序加密方法和裝置與流程

文檔序號(hào):12467463閱讀:1006來(lái)源:國(guó)知局
基于Android系統(tǒng)的應(yīng)用程序加密方法和裝置與流程

本發(fā)明涉及Android系統(tǒng)領(lǐng)域,更具體地,本發(fā)明涉及一種基于Android系統(tǒng)的應(yīng)用程序加密方法和裝置。



背景技術(shù):

隨著智能終端的日益普及、網(wǎng)絡(luò)寬帶化的高速發(fā)展,以移動(dòng)應(yīng)用與服務(wù)不斷豐富為標(biāo)志的移動(dòng)互聯(lián)網(wǎng)時(shí)代為人們帶來(lái)了更便捷與智能的數(shù)字生活,并逐漸滲透到線下生活的點(diǎn)滴。然而,兼具開(kāi)放性與靈活性的終端系統(tǒng)及其應(yīng)用中潛在的信息安全問(wèn)題卻可能對(duì)用戶(hù)、承載網(wǎng)絡(luò)等各個(gè)環(huán)節(jié)造成影響。

隨著Android系統(tǒng)使用的廣泛性,Android應(yīng)用程序開(kāi)發(fā)市場(chǎng)日漸火熱,而打包黨通過(guò)破解、反編譯應(yīng)用程序,插入廣告或收費(fèi)代碼等不法手段來(lái)獲取巨額利潤(rùn)。經(jīng)??梢钥吹竭@樣一個(gè)現(xiàn)象,當(dāng)Android開(kāi)發(fā)者有一個(gè)好的創(chuàng)意,辛苦編寫(xiě)出很好的應(yīng)用軟件發(fā)布后,很快Android市場(chǎng)上會(huì)出現(xiàn)相仿的產(chǎn)品。由于Android的開(kāi)放性,再加之業(yè)內(nèi)常用的防止應(yīng)用程序篡改、反編譯的技術(shù)很透明,破解者只需簡(jiǎn)單幾個(gè)步驟,就可以將一款A(yù)ndroid應(yīng)用程序進(jìn)行篡改并二次打包變成自己的軟件。因此,缺乏對(duì)應(yīng)用程序有效的保護(hù)工具和方法。



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

本發(fā)明旨在提供一種基于Andriod系統(tǒng)的應(yīng)用程序加密方法和裝置,為開(kāi)發(fā)者提供一種避免應(yīng)用程序被盜風(fēng)險(xiǎn)的方案,從而更好地保護(hù)開(kāi)發(fā)者的利益,維護(hù)移動(dòng)應(yīng)用的健康發(fā)展。

本發(fā)明的基于Android系統(tǒng)的應(yīng)用程序加密方法包括以下步驟:當(dāng)基于Android的系統(tǒng)開(kāi)機(jī)時(shí),授權(quán)服務(wù)模塊啟動(dòng),并請(qǐng)求加密驅(qū)動(dòng)模塊讀取SOC特征信息;加密驅(qū)動(dòng)模塊讀取SOC模塊中的SOC特征信息,并且通過(guò)AES加密算法和異或加密算法對(duì)該SOC特征信息進(jìn)行二次加密,然后發(fā)送至授權(quán)服務(wù)模塊;授權(quán)服務(wù)模塊讀取來(lái)自加密驅(qū)動(dòng)模塊的加密信息,并利用AES解密算法和異或解密算法對(duì)加密信息進(jìn)行解密,根據(jù)解密的信息來(lái)判斷SOC模塊是否被授權(quán),并且將授權(quán)結(jié)果進(jìn)行存儲(chǔ),以供應(yīng)用程序模塊查詢(xún);當(dāng)應(yīng)用程序模塊運(yùn)行時(shí),發(fā)送檢測(cè)授權(quán)請(qǐng)求至授權(quán)服務(wù)模塊,授權(quán)服務(wù)模塊將授權(quán)結(jié)果返回至應(yīng)用程序模塊,應(yīng)用程序模塊根據(jù)授權(quán)結(jié)果確定是否退出運(yùn)行。

優(yōu)選地,異或解密算法的密鑰與異或加密算法的密鑰是相同的。

優(yōu)選地,AES解密算法的密鑰與AES加密算法的密鑰是相同的。

根據(jù)本發(fā)明的基于Android系統(tǒng)的應(yīng)用程序加密裝置包括:SOC模塊,其存儲(chǔ)有SOC特征信息;加密驅(qū)動(dòng)模塊,其讀取SOC模塊中的SOC特征信息,并且通過(guò)AES加密算法和異或加密算法對(duì)該SOC特征信息進(jìn)行二次加密,然后提供至授權(quán)服務(wù)模塊;授權(quán)服務(wù)模塊,其讀取來(lái)自加密驅(qū)動(dòng)模塊的加密信息,并利用AES解密算法和異或解密算法對(duì)加密信息進(jìn)行解密,根據(jù)解密的信息來(lái)判斷SOC模塊是否被授權(quán),并且將授權(quán)結(jié)果進(jìn)行存儲(chǔ),以供應(yīng)用程序模塊查詢(xún);應(yīng)用程序模塊,其與授權(quán)服務(wù)模塊進(jìn)行通信,發(fā)送檢測(cè)授權(quán)請(qǐng)求至授權(quán)服務(wù)模塊,根據(jù)返回的結(jié)果確定是否退出應(yīng)用程序。

優(yōu)選地,所述加密驅(qū)動(dòng)模塊包括:讀取SOC信息模塊,其用于從SOC模塊讀取區(qū)別于其它SOC模塊的SOC特征信息;AES加密算法模塊,其用于對(duì)讀取的SOC特征信息進(jìn)行AES加密;異或加密算法模塊,其用于對(duì)AES加密算法模塊加密后的信息進(jìn)行二次加密,從而得到加密的SOC特征信息。

優(yōu)選地,所述授權(quán)服務(wù)模塊包括:異或解密算法模塊,其用于對(duì)從加密驅(qū)動(dòng)模塊讀取的加密的SOC特征信息進(jìn)行解密;AES解密算法模塊,其用于將異或解密算法模塊解密后的信息再次利用AES算法進(jìn)行解密;應(yīng)用程序接口模塊,其用于定義多個(gè)與應(yīng)用程序模塊進(jìn)行交互的接口。

優(yōu)選地,所述應(yīng)用程序模塊包括:檢測(cè)模塊,其用于與授權(quán)服務(wù)模塊進(jìn)行通信,發(fā)送檢測(cè)請(qǐng)求至授權(quán)服務(wù)模塊;功能模塊,其用于實(shí)現(xiàn)應(yīng)用程序本身的功能,并且調(diào)用檢測(cè)模塊進(jìn)行檢測(cè)。

優(yōu)選地,所述SOC模塊、所述加密驅(qū)動(dòng)模塊和所述授權(quán)服務(wù)模塊包括型號(hào)為CR800的處理器。

本發(fā)明的基于Android系統(tǒng)的應(yīng)用程序加密方法和裝置的特點(diǎn):自主開(kāi)發(fā)的應(yīng)用程序模塊從授權(quán)服務(wù)模塊獲取相關(guān)SOC特征信息并校驗(yàn)處理,保證了應(yīng)用程序模塊的安全性;授權(quán)服務(wù)模塊提供多種檢測(cè)信息給應(yīng)用程序模塊使用,靈活性高;授權(quán)服務(wù)模塊的SOC特征信息從加密驅(qū)動(dòng)模塊讀取并解密得到,保密性高;加密驅(qū)動(dòng)模塊對(duì)SOC特征信息采用了AES加密算法和異或加密算法進(jìn)行二次加密,安全級(jí)別高;從SOC模塊獲取SOC特征信息,保證了SOC特征信息的唯一性。

因此,本發(fā)明的基于Android系統(tǒng)的應(yīng)用程序加密方法和裝置降低了開(kāi)發(fā)者額外操作的同時(shí),保證了原應(yīng)用功能可以正常運(yùn)行;防止了病毒或者惡意應(yīng)用利用本裝置隱藏自身代碼,逃避代碼檢測(cè);提升了應(yīng)用破解門(mén)檻,使得應(yīng)用能夠有效防止逆向工程導(dǎo)致的安全風(fēng)險(xiǎn);提供了靈活的保護(hù)方案組合,兼顧性能指標(biāo)與用戶(hù)體驗(yàn)。

附圖說(shuō)明

通過(guò)隨后結(jié)合附圖所呈現(xiàn)的具體描述,本發(fā)明的以上和其它目的、特征以及優(yōu)點(diǎn)將會(huì)更明顯,在這些附圖中:

圖1是根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Android系統(tǒng)的應(yīng)用程序加密裝置的結(jié)構(gòu)示意圖;

圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Android系統(tǒng)的應(yīng)用程序加密裝置中的加密驅(qū)動(dòng)模塊的結(jié)構(gòu)示意圖;

圖3是根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Android系統(tǒng)的應(yīng)用程序加密裝置中的授權(quán)服務(wù)模塊的結(jié)構(gòu)示意圖;

圖4是根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Android系統(tǒng)的應(yīng)用程序加密裝置中的應(yīng)用程序模塊的結(jié)構(gòu)示意圖;

圖5是基于根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Android系統(tǒng)的應(yīng)用程序加密裝置的工作流程圖。

具體實(shí)施方式

下面將參考所附附圖對(duì)本發(fā)明的示例性實(shí)施例進(jìn)行詳細(xì)的描述。

根據(jù)本發(fā)明的一個(gè)實(shí)施例的于Android系統(tǒng)的應(yīng)用程序加密裝置的結(jié)構(gòu)如圖1所示,其包括:SOC模塊1-1,加密驅(qū)動(dòng)模塊1-2,授權(quán)服務(wù)模塊1-3,應(yīng)用程序模塊1-4。

SOC(System on Chip,片上系統(tǒng))模塊是一種高性能微處理器,所述SOC模塊包括型號(hào)為上海云間半導(dǎo)體科技有限公司研發(fā)的一款高性能、高集成度、超低功耗的32位應(yīng)用處理器芯片CR800。每種SOC模塊里面含有區(qū)別于其它SOC的特征信息,這個(gè)信息作為區(qū)分其它硬件平臺(tái)的關(guān)鍵元素。

加密驅(qū)動(dòng)模塊是Android系統(tǒng)驅(qū)動(dòng)模塊,通過(guò)讀取SOC處理器的特征信息,經(jīng)過(guò)AES(Advanced Encryption Standard,高級(jí)加密標(biāo)準(zhǔn))加密算法和異或加密算法,二次加密后提供給授權(quán)服務(wù)模塊讀取。

授權(quán)服務(wù)模塊是一個(gè)后臺(tái)運(yùn)行守護(hù)進(jìn)程的模塊,它一方面從加密驅(qū)動(dòng)模塊讀取加密信息并利用解密算法解密出SOC相關(guān)信息;另一方面也作為服務(wù)端供應(yīng)用程序模塊查詢(xún)授權(quán)信息使用。

應(yīng)用程序模塊是指運(yùn)行在Android系統(tǒng)上的各種應(yīng)用,在每個(gè)應(yīng)用的關(guān)鍵代碼段中添加檢測(cè)代碼,它作為客戶(hù)端向授權(quán)服務(wù)模塊請(qǐng)求授權(quán),發(fā)送請(qǐng)求方式有多種,應(yīng)用程序模塊每運(yùn)行到關(guān)鍵地方,都會(huì)檢測(cè)授權(quán)信息,如果授權(quán)不通過(guò),則應(yīng)用程序模塊直接退出。通過(guò)在應(yīng)用代碼中多處添加檢測(cè)機(jī)制,并采用多種請(qǐng)求授權(quán)方式,可以增加apk被反編譯后分析的難度,保證安全性。

根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Android系統(tǒng)的應(yīng)用程序加密裝置中的加密驅(qū)動(dòng)模塊的結(jié)構(gòu)如圖2所示,所述加密驅(qū)動(dòng)模塊包括:讀取SOC信息模塊2-1、AES加密算法模塊2-2、異或加密算法模塊2-3。

讀取SOC信息模塊用于從SOC模塊中讀取區(qū)別于其它SOC模塊的關(guān)鍵硬件信息;AES加密算法模塊對(duì)讀取的SOC特征信息進(jìn)行AES加密,系統(tǒng)定義多組加密密鑰,每次隨機(jī)選擇其中一組密鑰進(jìn)行加密;異或加密算法模塊對(duì)AES加密后的信息進(jìn)行二次加密,進(jìn)一步提高信息的安全性。

根據(jù)本發(fā)明的一個(gè)實(shí)施例的應(yīng)用程序加密裝置中的授權(quán)服務(wù)模塊的結(jié)構(gòu)如圖3所示,所述授權(quán)服務(wù)模塊包括:異或解密算法模塊3-1、AES解密算法模塊3-2、應(yīng)用程序接口模塊3-3。

異或解密算法模塊用于從加密驅(qū)動(dòng)讀取的硬件信息進(jìn)行解密,異或解密算法的密鑰與異或加密算法的密鑰是相同的。AES解密算法模塊將異或解密算法模塊解密后的信息再次利用AES解密算法解密,AES解密算法的密鑰與AES加密算法的密鑰是相同的,先讀取密文中的相關(guān)信息獲取驅(qū)動(dòng)模塊是采用的哪一組AES加密算法,然后再選擇對(duì)應(yīng)的AES密鑰進(jìn)行解密成明文。應(yīng)用程序接口模塊用于定義多個(gè)與應(yīng)用程序進(jìn)行交互的接口,這樣應(yīng)用程序采用多種調(diào)用接口向授權(quán)服務(wù)模塊發(fā)送請(qǐng)求,從而保證安全性。

根據(jù)本發(fā)明的一個(gè)實(shí)施例的應(yīng)用程序加密裝置中的應(yīng)用程序模塊的如圖4所示,所述應(yīng)用程序模包括:檢測(cè)模塊4-1、功能模塊4-2。

檢測(cè)模塊是用于與授權(quán)服務(wù)模塊進(jìn)行通信的模塊,可以發(fā)送多種請(qǐng)求給授權(quán)服務(wù)模塊,根據(jù)返回的結(jié)果確定是否退出運(yùn)行,如果檢測(cè)通過(guò),則應(yīng)用程序繼續(xù)運(yùn)行,如果檢測(cè)不通過(guò),則應(yīng)用程序直接退出運(yùn)行。功能模塊是應(yīng)用程序本身的功能實(shí)現(xiàn),其會(huì)在程序代碼的多個(gè)關(guān)鍵地方調(diào)用檢測(cè)模塊進(jìn)行檢測(cè)。

根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Android系統(tǒng)的應(yīng)用程序加密裝置的工作流程如圖5所示:基于Android系統(tǒng)的硬件開(kāi)始啟動(dòng)時(shí),會(huì)啟動(dòng)授權(quán)服務(wù)模塊,授權(quán)服務(wù)模塊作為守護(hù)進(jìn)程在后臺(tái)運(yùn)行,授權(quán)服務(wù)模塊請(qǐng)求加密驅(qū)動(dòng)模塊去讀取SOC特征信息;加密驅(qū)動(dòng)模塊對(duì)讀取到的SOC特征信息通過(guò)AES加密算法和異或加密算法二次加密,然后將密文發(fā)送給授權(quán)服務(wù)模塊。授權(quán)服務(wù)模塊將獲取到的密文經(jīng)過(guò)異或解密算法和AES解密算法進(jìn)行二次解密得到明文,根據(jù)得到的明文信息來(lái)判斷是否是已授權(quán)的硬件平臺(tái),并將檢測(cè)結(jié)果進(jìn)行保存。當(dāng)應(yīng)用程序模塊運(yùn)行時(shí),會(huì)向授權(quán)服務(wù)模塊發(fā)送授權(quán)請(qǐng)求,授權(quán)服務(wù)模塊將授權(quán)結(jié)果返回給應(yīng)用程序模塊,應(yīng)用程序模塊根據(jù)授權(quán)結(jié)果確定是否退出運(yùn)行,如果已授權(quán),應(yīng)用程序模塊繼續(xù)運(yùn)行,如果未授權(quán),則退出運(yùn)行。

如上所述,盡管已經(jīng)參照示例性實(shí)施方案和附圖對(duì)本發(fā)明進(jìn)行了描述,但是本發(fā)明不限于此,而是,本發(fā)明所述領(lǐng)域的技術(shù)人員可以進(jìn)行各種修改和改變而不脫離所附權(quán)利要求書(shū)中所要求的本發(fā)明的精神和范圍。

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