• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    應(yīng)用處理方法、裝置、終端和存儲(chǔ)介質(zhì)制造方法及圖紙

    技術(shù)編號(hào):34970925 閱讀:39 留言:0更新日期:2022-09-21 14:10
    本申請(qǐng)實(shí)施例提供一種應(yīng)用處理方法、裝置、終端和存儲(chǔ)介質(zhì),涉及軟件技術(shù)領(lǐng)域,通過(guò)在內(nèi)存中實(shí)現(xiàn)原始應(yīng)用的解密和加載,可以降低應(yīng)用內(nèi)容被截取的概率,提高了安全性。該應(yīng)用處理方法包括:?jiǎn)?dòng)殼應(yīng)用;在內(nèi)存中通過(guò)所述殼應(yīng)用對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件基于多個(gè)密鑰進(jìn)行解密;在內(nèi)存中基于解密后的每個(gè)所述字節(jié)流文件得到原始應(yīng)用,并將所述殼應(yīng)用替換為所述原始應(yīng)用。所述原始應(yīng)用。所述原始應(yīng)用。

    【技術(shù)實(shí)現(xiàn)步驟摘要】
    應(yīng)用處理方法、裝置、終端和存儲(chǔ)介質(zhì)


    [0001]本申請(qǐng)涉及軟件
    ,特別涉及一種應(yīng)用處理方法、裝置、終端和存儲(chǔ)介質(zhì)。

    技術(shù)介紹

    [0002]目前的安卓Android應(yīng)用Application通常使用動(dòng)態(tài)加載技術(shù)來(lái)實(shí)現(xiàn),其中,對(duì)于編譯好的原始應(yīng)用程序,按照加載模塊和核心邏輯模塊兩部分分別打包,在應(yīng)用啟動(dòng)的過(guò)程中,先啟動(dòng)加載模塊,由加載模塊從文件系統(tǒng)中釋放出核心邏輯模塊,并使用java的動(dòng)態(tài)加載技術(shù)進(jìn)行加載。在上述應(yīng)用動(dòng)態(tài)加載的過(guò)程中,攻擊者容易通過(guò)對(duì)文件系統(tǒng)的讀寫(xiě)截取到核心邏輯模塊的字節(jié)流內(nèi)容,因此安全性較低。

    技術(shù)實(shí)現(xiàn)思路

    [0003]本申請(qǐng)技術(shù)方案提供了一種應(yīng)用處理方法、裝置、終端和存儲(chǔ)介質(zhì),通過(guò)在內(nèi)存中實(shí)現(xiàn)原始應(yīng)用的解密和加載,可以降低應(yīng)用內(nèi)容被截取的概率,提高了安全性。
    [0004]第一方面,本申請(qǐng)實(shí)施例提供一種應(yīng)用處理方法,包括:
    [0005]啟動(dòng)殼應(yīng)用;
    [0006]在內(nèi)存中通過(guò)所述殼應(yīng)用對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件基于多個(gè)密鑰進(jìn)行解密;
    [0007]在內(nèi)存中基于解密后的每個(gè)所述字節(jié)流文件得到原始應(yīng)用,并將所述殼應(yīng)用替換為所述原始應(yīng)用。
    [0008]在一種可能的實(shí)施方式中,所述在內(nèi)存中通過(guò)所述殼應(yīng)用對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件基于多個(gè)密鑰進(jìn)行解密的過(guò)程中,依次對(duì)每個(gè)所述字節(jié)流文件進(jìn)行解密,對(duì)每個(gè)所述字節(jié)流文件進(jìn)行解密包括:
    [0009]根據(jù)當(dāng)前字節(jié)流文件頭部得到第一密鑰;
    [0010]根據(jù)當(dāng)前字節(jié)流文件的文件名通過(guò)原生native方法調(diào)用獲取第二密鑰;
    [0011]獲取第三密鑰,對(duì)于第一個(gè)字節(jié)流文件,將空作為第三密鑰,對(duì)于第一個(gè)字節(jié)流文件之外的其他字節(jié)流文件,將上一個(gè)字節(jié)流文件的消息摘要算法MD5摘要作為第三密鑰;
    [0012]根據(jù)所述第一密鑰、所述第二密鑰和所述第三密鑰對(duì)當(dāng)前字節(jié)流文件得到頭部偏移后的字節(jié)流內(nèi)容進(jìn)行解密。
    [0013]在一種可能的實(shí)施方式中,在所述啟動(dòng)殼應(yīng)用之后,將所述殼應(yīng)用替換為所述原始應(yīng)用之前,通過(guò)Hook系統(tǒng)讀寫(xiě)接口的方式阻止其他程序讀取所述字節(jié)流文件。
    [0014]在一種可能的實(shí)施方式中,所述將所述殼應(yīng)用替換為所述原始應(yīng)用包括:
    [0015]通過(guò)java反射機(jī)制將所述殼應(yīng)用替換為所述原始應(yīng)用。
    [0016]在一種可能的實(shí)施方式中,在所述啟動(dòng)殼應(yīng)用之前,還包括:
    [0017]加載應(yīng)用啟動(dòng)器;
    [0018]在將所述殼應(yīng)用替換為所述原始應(yīng)用之后,還包括:
    [0019]加載所述原始應(yīng)用之外的其他組件和服務(wù)。
    [0020]在一種可能的實(shí)施方式中,在所述啟動(dòng)殼應(yīng)用之前,還包括:
    [0021]獲取原始應(yīng)用的所有待加密字節(jié)流文件;
    [0022]對(duì)每個(gè)所述待加密字節(jié)流文件進(jìn)行聯(lián)合加密得到加密后的字節(jié)流文件;
    [0023]將殼應(yīng)用的字節(jié)流文件和所有加密后的字節(jié)流文件打包生成加固后的應(yīng)用文件。
    [0024]第二方面,本申請(qǐng)實(shí)施例提供一種應(yīng)用處理裝置,包括:
    [0025]啟動(dòng)模塊,用于啟動(dòng)殼應(yīng)用;
    [0026]解密模塊,用于在內(nèi)存中通過(guò)所述殼應(yīng)用對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件基于多個(gè)密鑰進(jìn)行解密;
    [0027]替換模塊,用于在內(nèi)存中基于解密后的每個(gè)所述字節(jié)流文件得到原始應(yīng)用,并將所述殼應(yīng)用替換為所述原始應(yīng)用。
    [0028]第三方面,本申請(qǐng)實(shí)施例提供一種應(yīng)用處理裝置,包括:
    [0029]處理器和存儲(chǔ)器,所述存儲(chǔ)器用于存儲(chǔ)至少一條指令,所述指令由所述處理器加載并執(zhí)行時(shí)以實(shí)現(xiàn)上述的應(yīng)用處理方法。
    [0030]第四方面,本申請(qǐng)實(shí)施例提供一種終端,包括:第二方面或第三方面的應(yīng)用處理裝置。
    [0031]第五方面,本申請(qǐng)實(shí)施例提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)程序,當(dāng)其在計(jì)算機(jī)上運(yùn)行時(shí),使得計(jì)算機(jī)執(zhí)行上述的應(yīng)用處理方法。
    [0032]本申請(qǐng)實(shí)施例中的應(yīng)用處理方法、裝置、終端和存儲(chǔ)介質(zhì),一方面,在內(nèi)從中對(duì)原始應(yīng)用的字節(jié)流文件進(jìn)行解密和加載,整個(gè)解密和加載的過(guò)程均在內(nèi)存中進(jìn)行,而非從文件系統(tǒng)中加載,從而避免了由于字節(jié)流文件從文件系統(tǒng)中加載而容易受到攻擊者截取的問(wèn)題,降低了原始應(yīng)用內(nèi)容被截取的概率,從而提高了安全性;另一方面,通過(guò)對(duì)原始應(yīng)用的字節(jié)流文件進(jìn)行多個(gè)密鑰的加密,降低了原始應(yīng)用內(nèi)容被破解的可能性,進(jìn)一步提高了安全性;另外,原始應(yīng)用在內(nèi)存中被加載,無(wú)需從文件系統(tǒng)中釋放,提高了應(yīng)用加載速度。
    附圖說(shuō)明
    [0033]圖1為本申請(qǐng)實(shí)施例中一種應(yīng)用處理方法的流程示意圖;
    [0034]圖2為圖1中步驟102的一種細(xì)化流程示意圖;
    [0035]圖3為本申請(qǐng)實(shí)施例中另一種應(yīng)用處理方法的流程示意圖;
    [0036]圖4為本申請(qǐng)實(shí)施例中又一種應(yīng)用處理方法的流程示意圖;
    [0037]圖5為本申請(qǐng)實(shí)施例中一種應(yīng)用處理裝置的結(jié)構(gòu)框圖;
    [0038]圖6為本申請(qǐng)實(shí)施例中另一種應(yīng)用處理裝置的結(jié)構(gòu)框圖;
    [0039]圖7為本申請(qǐng)實(shí)施例中又一種應(yīng)用處理裝置的結(jié)構(gòu)框圖。
    具體實(shí)施方式
    [0040]本申請(qǐng)的實(shí)施方式部分使用的術(shù)語(yǔ)僅用于對(duì)本申請(qǐng)的具體實(shí)施例進(jìn)行解釋?zhuān)侵荚谙薅ū旧暾?qǐng)。
    [0041]如圖1所示,本申請(qǐng)實(shí)施例提供了一種應(yīng)用處理方法,該應(yīng)用處理方法可以應(yīng)用于手機(jī)等終端,即該應(yīng)用處理方法的執(zhí)行主體可以為終端,主要涉及在終端系統(tǒng)中系統(tǒng)加載應(yīng)用的流程,本申請(qǐng)實(shí)施例以Android系統(tǒng)中的應(yīng)用處理方法為例進(jìn)行說(shuō)明,該應(yīng)用處理方法包括:
    [0042]步驟101、啟動(dòng)殼應(yīng)用;
    [0043]其中,例如,對(duì)于待加載的應(yīng)用,該應(yīng)用的文件為加固后的文件,加固后的文件可以包括殼應(yīng)用字節(jié)流文件和原始應(yīng)用的字節(jié)流文件,字節(jié)流文件可以為dex格式文件,dex格式文件為Android底層虛擬機(jī)Dalvik能夠解析的字節(jié)碼文件,基于殼應(yīng)用字節(jié)流文件可以啟動(dòng)殼應(yīng)用;
    [0044]步驟102、在內(nèi)存中通過(guò)殼應(yīng)用對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件基于多個(gè)密鑰進(jìn)行解密;
    [0045]其中,在加固后的文件中,原始應(yīng)用的字節(jié)流文件為基于多個(gè)密鑰聯(lián)合加密后的文件,原始應(yīng)用的字節(jié)流文件中具有核心邏輯,而殼應(yīng)用僅在應(yīng)用加載過(guò)程中使用,在該步驟中,通過(guò)殼應(yīng)用可以對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件進(jìn)行解密,以便于后續(xù)基于解密后的字節(jié)流文件內(nèi)容實(shí)現(xiàn)核心邏輯的加載;
    [0046]步驟103、在內(nèi)存中基于解密后的每個(gè)字節(jié)流文件得到原始應(yīng)用,并將殼應(yīng)用替換為原始應(yīng)用。
    [0047]其中,殼應(yīng)用主要的作用是解密,因此,在解密完成之后,即可以基于解密后得到的原始應(yīng)用將殼應(yīng)用替換,以實(shí)現(xiàn)原始應(yīng)用的加載。
    [0048]本申請(qǐng)實(shí)施例中的應(yīng)用處理方法,一方面,在內(nèi)從中對(duì)原始應(yīng)用的字節(jié)流文件進(jìn)行解密和加載,整個(gè)解密和加載的過(guò)程均在內(nèi)存中進(jìn)行,而非從文件系統(tǒng)中加載,從而避免了由于字節(jié)流文件從文件系統(tǒng)中加載而容易受到攻擊者截取的問(wèn)題,降低了原始應(yīng)用內(nèi)容被截取的概本文檔來(lái)自技高網(wǎng)
    ...

    【技術(shù)保護(hù)點(diǎn)】

    【技術(shù)特征摘要】
    1.一種應(yīng)用處理方法,其特征在于,包括:?jiǎn)?dòng)殼應(yīng)用;在內(nèi)存中通過(guò)所述殼應(yīng)用對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件基于多個(gè)密鑰進(jìn)行解密;在內(nèi)存中基于解密后的每個(gè)所述字節(jié)流文件得到原始應(yīng)用,并將所述殼應(yīng)用替換為所述原始應(yīng)用。2.根據(jù)權(quán)利要求1所述的應(yīng)用處理方法,其特征在于,所述在內(nèi)存中通過(guò)所述殼應(yīng)用對(duì)原始應(yīng)用的每個(gè)字節(jié)流文件基于多個(gè)密鑰進(jìn)行解密的過(guò)程中,依次對(duì)每個(gè)所述字節(jié)流文件進(jìn)行解密,對(duì)每個(gè)所述字節(jié)流文件進(jìn)行解密包括:根據(jù)當(dāng)前字節(jié)流文件頭部得到第一密鑰;根據(jù)當(dāng)前字節(jié)流文件的文件名通過(guò)原生native方法調(diào)用獲取第二密鑰;獲取第三密鑰,對(duì)于第一個(gè)字節(jié)流文件,將空作為第三密鑰,對(duì)于第一個(gè)字節(jié)流文件之外的其他字節(jié)流文件,將上一個(gè)字節(jié)流文件的消息摘要算法MD5摘要作為第三密鑰;根據(jù)所述第一密鑰、所述第二密鑰和所述第三密鑰對(duì)當(dāng)前字節(jié)流文件得到頭部偏移后的字節(jié)流內(nèi)容進(jìn)行解密。3.根據(jù)權(quán)利要求1所述的應(yīng)用處理方法,其特征在于,在所述啟動(dòng)殼應(yīng)用之后,將所述殼應(yīng)用替換為所述原始應(yīng)用之前,通過(guò)Hook系統(tǒng)讀寫(xiě)接口的方式阻止其他程序讀取所述字節(jié)流文件。4.根據(jù)權(quán)利要求1所述的應(yīng)用處理方法,其特征在于,所述將所述殼應(yīng)用替換為所述原始應(yīng)用包括:通過(guò)java反射機(jī)制將所述殼應(yīng)用替換為所述原始應(yīng)用。5.根據(jù)權(quán)利要求1所...

    【專(zhuān)利技術(shù)屬性】
    技術(shù)研發(fā)人員:湯文
    申請(qǐng)(專(zhuān)利權(quán))人:北京智明星通科技股份有限公司
    類(lèi)型:發(fā)明
    國(guó)別省市:

    網(wǎng)友詢(xún)問(wèn)留言 已有0條評(píng)論
    • 還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。

    1
    主站蜘蛛池模板: 东京热加勒比无码视频| 国产成人无码精品久久久免费| 无码少妇一区二区| 精品久久亚洲中文无码| 精品人妻系列无码人妻漫画| julia无码人妻中文字幕在线 | 无码人妻AV一二区二区三区| 亚洲中文字幕无码mv| 亚洲熟妇少妇任你躁在线观看无码| 亚洲AV日韩AV高潮无码专区| 亚洲国产精品成人AV无码久久综合影院 | 在线看无码的免费网站| 成人无码午夜在线观看| 国产久热精品无码激情| 人妻丰满AV无码久久不卡| 亚洲AV无码乱码在线观看性色扶 | 久久久久亚洲精品无码网址色欲| 成人A片产无码免费视频在线观看| 无码中文在线二区免费| 久久国产亚洲精品无码| 国产激情无码一区二区| 中文无码AV一区二区三区| 午夜无码中文字幕在线播放| 特级毛片内射www无码| 亚洲国产成人无码av在线播放| 国产V亚洲V天堂A无码| HEYZO无码综合国产精品| 无码AV波多野结衣久久| 无码人妻少妇久久中文字幕蜜桃| 波多野结衣AV无码| HEYZO无码综合国产精品227| 无码人妻精品一区二区三区99不卡 | 无码专区—VA亚洲V天堂| 亚洲AV无码久久精品成人| 东京热av人妻无码专区| 亚洲欧洲无码AV电影在线观看 | 亚洲精品无码久久久影院相关影片| 亚欧无码精品无码有性视频| 国产精品成人99一区无码| 人妻无码久久精品| 东京热av人妻无码专区|