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

應(yīng)用安裝包的簽名、驗(yàn)證方法、裝置及存儲(chǔ)介質(zhì)與流程

文檔序號(hào):11217587閱讀:674來(lái)源:國(guó)知局
應(yīng)用安裝包的簽名、驗(yàn)證方法、裝置及存儲(chǔ)介質(zhì)與流程

本公開(kāi)涉及應(yīng)用安全領(lǐng)域,尤其涉及一種應(yīng)用的簽名、驗(yàn)證方法、裝置及存儲(chǔ)介質(zhì)。



背景技術(shù):

隨著智能手機(jī)、平板電腦等終端的普及,針對(duì)終端的黑客也越來(lái)越多,導(dǎo)致用戶在網(wǎng)上下載的應(yīng)用安裝包存在被第三方用戶篡改的可能,這種被篡改的應(yīng)用安裝包將存在潛在危險(xiǎn)。為了便于檢測(cè)應(yīng)用安裝包是否被篡改,在應(yīng)用安裝包被開(kāi)發(fā)之后通常需要對(duì)應(yīng)用安裝包進(jìn)行簽名,并通過(guò)驗(yàn)證該應(yīng)用安裝包的簽名檢測(cè)該應(yīng)用安裝包是否被篡改。

相關(guān)技術(shù)中提供了一種應(yīng)用安裝包的簽名方法和驗(yàn)證方法,包括:在應(yīng)用安裝包開(kāi)發(fā)完成之后,首先使用應(yīng)用開(kāi)發(fā)者設(shè)置的私鑰對(duì)應(yīng)用安裝包進(jìn)行簽名,得到該應(yīng)用安裝包的簽名信息,然后生成用于驗(yàn)證該簽名信息的第一公鑰,并將該簽名信息和第一公鑰添加至該應(yīng)用安裝包,最后將該應(yīng)用安裝包上傳至應(yīng)用商店等應(yīng)用下載平臺(tái)。當(dāng)應(yīng)用下載平臺(tái)接收到終端對(duì)該應(yīng)用安裝包的下載請(qǐng)求時(shí),將該應(yīng)用安裝包發(fā)送給該終端。終端接收到該應(yīng)用安裝包之后,將獲取該應(yīng)用安裝包包括的簽名信息和第一公鑰,并基于該第一公鑰對(duì)該簽名信息進(jìn)行驗(yàn)證,當(dāng)該簽名信息驗(yàn)證成功時(shí),即可確定該應(yīng)用安裝包未被篡改。



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

為克服相關(guān)技術(shù)中存在的問(wèn)題,本公開(kāi)提供了一種應(yīng)用安裝包的簽名、驗(yàn)證方法、裝置及存儲(chǔ)介質(zhì)。

根據(jù)本公開(kāi)實(shí)施例的第一方面,提供了一種應(yīng)用安裝包的簽名方法,所述方法包括:

獲取應(yīng)用安裝包,所述應(yīng)用安裝包包括安裝文件、第一簽名信息和第一公鑰,所述第一簽名信息為所述應(yīng)用安裝包的簽名信息,所述第一公鑰用于驗(yàn)證所述第一簽名信息;

使用第一私鑰對(duì)所述第一公鑰進(jìn)行簽名,得到第二簽名信息,并將所述第二簽名信息和第二公鑰添加至所述應(yīng)用安裝包,以實(shí)現(xiàn)所述應(yīng)用安裝包的簽名,所述第二公鑰用于驗(yàn)證所述第二簽名信息。

可選地,所述使用第一私鑰對(duì)所述第一公鑰進(jìn)行簽名,得到第二簽名信息,包括:

當(dāng)所述應(yīng)用安裝包還包括應(yīng)用標(biāo)識(shí)時(shí),使用所述第一私鑰對(duì)所述應(yīng)用標(biāo)識(shí)和所述第一公鑰進(jìn)行簽名,并將簽名后得到的簽名信息確定為所述第二簽名信息。

可選地,所述使用第一私鑰對(duì)所述第一公鑰進(jìn)行簽名,得到第二簽名信息,并將第二公鑰添加至所述應(yīng)用安裝包,包括:

當(dāng)所述應(yīng)用安裝包包括多個(gè)子安裝包,且每個(gè)子安裝包包括至少一個(gè)安裝文件和每個(gè)安裝文件的簽名信息時(shí),對(duì)于所述多個(gè)子安裝包中的每個(gè)子安裝包,使用所述第一私鑰對(duì)所述子安裝包進(jìn)行簽名,并將所述子安裝包的簽名信息和所述第二公鑰添加至對(duì)應(yīng)的子安裝包,所述第二公鑰用于驗(yàn)證所述子安裝包的簽名信息。

可選地,所述獲取應(yīng)用安裝包之后,還包括:

當(dāng)所述應(yīng)用安裝包還包括所述應(yīng)用的權(quán)限列表時(shí),使用第二私鑰對(duì)所述權(quán)限列表進(jìn)行簽名,得到第三簽名信息;

將所述第三簽名信息和第三公鑰添加至所述應(yīng)用安裝包,所述第三公鑰用于驗(yàn)證所述第三簽名信息。

根據(jù)本公開(kāi)實(shí)施例的第二方面,提供了一種應(yīng)用安裝包的驗(yàn)證方法,所述方法包括:

從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包,所述應(yīng)用安裝包包括安裝文件、第一簽名信息、第一公鑰、第二簽名信息和第二公鑰;

其中,所述第一簽名信息為所述應(yīng)用安裝包的簽名信息,所述第一公鑰用于驗(yàn)證所述第一簽名信息,所述第二簽名信息為所述應(yīng)用下載平臺(tái)使用第一私鑰對(duì)所述第一公鑰進(jìn)行簽名得到,所述第二公鑰用于驗(yàn)證所述第二簽名信息;

基于所述第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)所述應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷所述應(yīng)用安裝包是否被篡改。

可選地,所述基于所述第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)所述應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷所述應(yīng)用安裝包是否被篡改,包括:

基于所述第二公鑰對(duì)所述第二簽名信息進(jìn)行驗(yàn)證;

當(dāng)所述第二簽名信息驗(yàn)證失敗時(shí),確定所述應(yīng)用安裝包被篡改;

當(dāng)所述第二簽名信息驗(yàn)證成功時(shí),基于所述第一公鑰對(duì)所述第一簽名信息進(jìn)行驗(yàn)證;

當(dāng)所述第一簽名信息驗(yàn)證失敗時(shí),確定所述應(yīng)用安裝包被篡改;

當(dāng)所述第一簽名信息驗(yàn)證成功時(shí),確定所述應(yīng)用安裝包未被篡改。

可選地,所述從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包,包括:

從所述應(yīng)用下載平臺(tái)中下載所述應(yīng)用安裝包包括的多個(gè)子安裝包中的至少一個(gè)子安裝包;

其中,對(duì)于所述至少一個(gè)子安裝包中的每個(gè)子安裝包,所述子安裝包包括至少一個(gè)安裝文件、所述至少一個(gè)安裝文件的簽名信息、所述第一公鑰、所述子安裝包的簽名信息和所述第二公鑰,所述子安裝包的簽名信息為所述應(yīng)用下載平臺(tái)使用所述第一私鑰對(duì)所述子安裝包進(jìn)行簽名得到。

可選地,所述基于所述第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)所述應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷所述應(yīng)用安裝包是否被篡改,包括:

對(duì)于所述至少一個(gè)子安裝包中的每個(gè)子安裝包,基于所述第二公鑰對(duì)所述子安裝包的簽名信息進(jìn)行驗(yàn)證;

當(dāng)所述子安裝包的簽名信息驗(yàn)證失敗時(shí),確定所述子安裝包被篡改;

當(dāng)所述子安裝包的簽名信息驗(yàn)證成功時(shí),基于所述第一公鑰,對(duì)所述至少一個(gè)安裝文件的簽名信息進(jìn)行驗(yàn)證;

當(dāng)所述至少一個(gè)安裝文件的簽名信息驗(yàn)證失敗時(shí),確定所述子安裝包被篡改;

當(dāng)所述少一個(gè)安裝文件的簽名信息驗(yàn)證成功時(shí),確定所述子安裝包未被篡改。

可選地,所述方法還包括:

當(dāng)所述應(yīng)用安裝包還包括權(quán)限列表、第三簽名信息和第三公鑰時(shí),基于所述第三公鑰對(duì)所述第三簽名信息進(jìn)行驗(yàn)證;

其中,所述第三簽名信息為所述應(yīng)用下載平臺(tái)使用第二私鑰對(duì)所述權(quán)限列表進(jìn)行簽名得到,所述第三公鑰用于驗(yàn)證所述第三簽名信息;

基于所述第三簽名信息的驗(yàn)證結(jié)果,判斷所述權(quán)限列表是否被篡改。

根據(jù)本公開(kāi)實(shí)施例的第三方面,提供了一種應(yīng)用安裝包的簽名裝置,所述裝置包括:

獲取模塊,用于獲取應(yīng)用安裝包,所述應(yīng)用安裝包包括安裝文件、第一簽名信息和第一公鑰,所述第一簽名信息為所述應(yīng)用安裝包的簽名信息,所述第一公鑰用于驗(yàn)證所述第一簽名信息;

第一簽名模塊,用于使用第一私鑰對(duì)所述第一公鑰進(jìn)行簽名,得到第二簽名信息,并將所述第二簽名信息和第二公鑰添加至所述應(yīng)用安裝包,以實(shí)現(xiàn)所述應(yīng)用安裝包的簽名,所述第二公鑰用于驗(yàn)證所述第二簽名信息。

可選地,所述第一簽名模塊用于:

當(dāng)所述應(yīng)用安裝包還包括應(yīng)用標(biāo)識(shí)時(shí),使用所述第一私鑰對(duì)所述應(yīng)用標(biāo)識(shí)和所述第一公鑰進(jìn)行簽名,并將簽名后得到的簽名信息確定為所述第二簽名信息。

可選地,所述第一簽名模塊用于:

當(dāng)所述應(yīng)用安裝包包括多個(gè)子安裝包,且每個(gè)子安裝包包括至少一個(gè)安裝文件和每個(gè)安裝文件的簽名信息時(shí),對(duì)于所述多個(gè)子安裝包中的每個(gè)子安裝包,使用所述第一私鑰對(duì)所述子安裝包進(jìn)行簽名,并將所述子安裝包的簽名信息和所述第二公鑰添加至對(duì)應(yīng)的子安裝包,所述第二公鑰用于驗(yàn)證所述子安裝包的簽名信息。

可選地,所述裝置還包括:

第二簽名模塊,用于當(dāng)所述應(yīng)用安裝包還包括所述應(yīng)用的權(quán)限列表時(shí),使用第二私鑰對(duì)所述權(quán)限列表進(jìn)行簽名,得到第三簽名信息;

添加模塊,用于將所述第三簽名信息和第三公鑰添加至所述應(yīng)用安裝包,所述第三公鑰用于驗(yàn)證所述第三簽名信息。

根據(jù)本公開(kāi)實(shí)施例的第四方面,提供了一種應(yīng)用安裝包的驗(yàn)證裝置,所述裝置包括:

下載模塊,用于從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包,所述應(yīng)用安裝包包括安裝文件、第一簽名信息、第一公鑰、第二簽名信息和第二公鑰;

其中,所述第一簽名信息為所述應(yīng)用安裝包的簽名信息,所述第一公鑰用于驗(yàn)證所述第一簽名信息,所述第二簽名信息為所述應(yīng)用下載平臺(tái)使用第一私鑰對(duì)所述第一公鑰進(jìn)行簽名得到,所述第二公鑰用于驗(yàn)證所述第二簽名信息;

第一驗(yàn)證模塊,用于基于所述第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)所述應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷所述應(yīng)用安裝包是否被篡改。

可選地,所述第一驗(yàn)證模塊包括:

第一驗(yàn)證子模塊,用于基于所述第二公鑰對(duì)所述第二簽名信息進(jìn)行驗(yàn)證;

第一確定子模塊,用于當(dāng)所述第二簽名信息驗(yàn)證失敗時(shí),確定所述應(yīng)用安裝包被篡改;

第二驗(yàn)證子模塊,用于當(dāng)所述第二簽名信息驗(yàn)證成功時(shí),基于所述第一公鑰對(duì)所述第一簽名信息進(jìn)行驗(yàn)證;

第二確定子模塊,用于當(dāng)所述第一簽名信息驗(yàn)證失敗時(shí),確定所述應(yīng)用安裝包被篡改;

第三確定子模塊,用于當(dāng)所述第一簽名信息驗(yàn)證成功時(shí),確定所述應(yīng)用安裝包未被篡改。

可選地,所述下載模塊用于:

從所述應(yīng)用下載平臺(tái)中下載所述應(yīng)用安裝包包括的多個(gè)子安裝包中的至少一個(gè)子安裝包;

其中,對(duì)于所述至少一個(gè)子安裝包中的每個(gè)子安裝包,所述子安裝包包括至少一個(gè)安裝文件、所述至少一個(gè)安裝文件的簽名信息、所述第一公鑰、所述子安裝包的簽名信息和所述第二公鑰,所述子安裝包的簽名信息為所述應(yīng)用下載平臺(tái)使用所述第一私鑰對(duì)所述子安裝包進(jìn)行簽名得到。

可選地,所述第一驗(yàn)證模塊包括:

第三驗(yàn)證模塊,用于對(duì)于所述至少一個(gè)子安裝包中的每個(gè)子安裝包,基于所述第二公鑰對(duì)所述子安裝包的簽名信息進(jìn)行驗(yàn)證;

第四確定模塊,用于當(dāng)所述子安裝包的簽名信息驗(yàn)證失敗時(shí),確定所述子安裝包被篡改;

第四驗(yàn)證模塊,用于當(dāng)所述子安裝包的簽名信息驗(yàn)證成功時(shí),基于所述第一公鑰,對(duì)所述至少一個(gè)安裝文件的簽名信息進(jìn)行驗(yàn)證;

第五確定模塊,用于當(dāng)所述至少一個(gè)安裝文件的簽名信息驗(yàn)證失敗時(shí),確定所述子安裝包被篡改;

第六確定模塊,用于當(dāng)所述少一個(gè)安裝文件的簽名信息驗(yàn)證成功時(shí),確定所述子安裝包未被篡改。

可選地,所述裝置還包括:

第二驗(yàn)證模塊,用于當(dāng)所述應(yīng)用安裝包還包括權(quán)限列表、第三簽名信息和第三公鑰時(shí),基于所述第三公鑰對(duì)所述第三簽名信息進(jìn)行驗(yàn)證;

其中,所述第三簽名信息為所述應(yīng)用下載平臺(tái)使用第二私鑰對(duì)所述權(quán)限列表進(jìn)行簽名得到,所述第三公鑰用于驗(yàn)證所述第三簽名信息;

判斷模塊,用于基于所述第三簽名信息的驗(yàn)證結(jié)果,判斷所述權(quán)限列表是否被篡改。

根據(jù)本公開(kāi)實(shí)施例的第五方面,提供了一種應(yīng)用安裝包的簽名裝置,所述裝置包括:

處理器;

用于存儲(chǔ)處理器可執(zhí)行指令的存儲(chǔ)器;

其中,所述處理器被配置為執(zhí)行上述第一方面所述的任一種應(yīng)用安裝包的簽名方法的步驟。

根據(jù)本公開(kāi)實(shí)施例的第六方面,提供了一種應(yīng)用安裝包的驗(yàn)證裝置,所述裝置包括:

處理器;

用于存儲(chǔ)處理器可執(zhí)行指令的存儲(chǔ)器;

其中,所述處理器被配置為執(zhí)行上述第二方面所述的任一種應(yīng)用安裝包的驗(yàn)證方法的步驟。

根據(jù)本公開(kāi)實(shí)施例的第七方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有指令,其特征在于,所述指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述第一方面所述的任一種應(yīng)用安裝包的簽名方法的步驟。

根據(jù)本公開(kāi)實(shí)施例的第八方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有指令,其特征在于,所述指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述第二方面所述的任一種應(yīng)用安裝包的驗(yàn)證方法的步驟。

本公開(kāi)的實(shí)施例提供的技術(shù)方案可以包括以下有益效果:

本公開(kāi)實(shí)施例中,可以獲取應(yīng)用安裝包,該應(yīng)用安裝包包括應(yīng)用安裝包的簽名信息和用于驗(yàn)證該簽名信息的第一公鑰,然后使用第一私鑰對(duì)第一公鑰進(jìn)行簽名,得到第二簽名信息,并將第二簽名信息和用于驗(yàn)證該第二簽名信息的第二公鑰添加至應(yīng)用安裝包。由于第三方用戶若采用篡改后再重新簽名的方法對(duì)該應(yīng)用安裝包進(jìn)行篡改,必定會(huì)替換該應(yīng)用安裝包中的第一公鑰,本公開(kāi)通過(guò)對(duì)第一公鑰進(jìn)行簽名可以驗(yàn)證該第一公鑰是否被替換,從而能夠更為精確地檢測(cè)出應(yīng)用安裝包是否被篡改,提高了安全性和準(zhǔn)確性。

應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本公開(kāi)。

附圖說(shuō)明

此處的附圖被并入說(shuō)明書(shū)中并構(gòu)成本說(shuō)明書(shū)的一部分,示出了符合本發(fā)明的實(shí)施例,并與說(shuō)明書(shū)一起用于解釋本發(fā)明的原理。

圖1是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的簽名方法的流程圖;

圖2是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的驗(yàn)證方法的流程圖;

圖3是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的簽名和驗(yàn)證方法的流程圖;

圖4a是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的簽名裝置的框圖;

圖4b是根據(jù)另一示例性實(shí)施例示出的一種應(yīng)用安裝包的簽名裝置的框圖;

圖5a是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的驗(yàn)證裝置的框圖;

圖5b是根據(jù)另一示例性實(shí)施例示出的一種應(yīng)用安裝包的驗(yàn)證裝置的框圖;

圖6是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用下載平臺(tái)600的結(jié)構(gòu)示意圖;

圖7是根據(jù)一示例性實(shí)施例示出的一種終端700的結(jié)構(gòu)示意圖。

具體實(shí)施方式

這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說(shuō)明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本發(fā)明相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書(shū)中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。

在對(duì)本公開(kāi)實(shí)施例進(jìn)行詳細(xì)地解釋說(shuō)明之前,先對(duì)本公開(kāi)實(shí)施例的應(yīng)用場(chǎng)景予以說(shuō)明。

本公開(kāi)實(shí)施例應(yīng)用于通過(guò)對(duì)應(yīng)用安裝包進(jìn)行簽名和驗(yàn)證,來(lái)檢測(cè)應(yīng)用安裝包是否被篡改的場(chǎng)景中。相關(guān)技術(shù)中提供的簽名和驗(yàn)證方法,如果第三方用戶在對(duì)該應(yīng)用安裝包進(jìn)行篡改之后,重新對(duì)該應(yīng)用安裝包進(jìn)行簽名,也即是,第三方用戶使用自己設(shè)置的私鑰對(duì)被篡改的應(yīng)用安裝包重新進(jìn)行簽名,并生成用于驗(yàn)證該簽名信息的第一公鑰來(lái)替換原有的第一公鑰,這種情況下終端將使用替換后的第一公鑰對(duì)篡改后的應(yīng)用安裝包的簽名信息進(jìn)行驗(yàn)證,且得到的驗(yàn)證結(jié)果將會(huì)是驗(yàn)證成功。因此,針對(duì)這種篡改方式,上述簽名和驗(yàn)證方法將無(wú)法正確檢測(cè)出應(yīng)用安裝包是否被篡改,安全性和準(zhǔn)確性較低。

為了能夠更為準(zhǔn)確地檢測(cè)出應(yīng)用安裝包是否被篡改,提高終端的安全性,本公開(kāi)實(shí)施例提供了一種應(yīng)用安裝包進(jìn)行簽名方法和驗(yàn)證方法,詳述如下:

圖1是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的簽名方法的流程圖,該方法可以應(yīng)用于應(yīng)用商店等應(yīng)用下載平臺(tái)。如圖1所示,該方法包括以下步驟:

在步驟101中,獲取應(yīng)用安裝包,該應(yīng)用安裝包包括安裝文件、第一簽名信息和第一公鑰,該第一簽名信息為該應(yīng)用安裝包的簽名信息,該第一公鑰用于驗(yàn)證該第一簽名信息。

在步驟102中,使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,并將該第二簽名信息和第二公鑰添加至該應(yīng)用安裝包,以實(shí)現(xiàn)該應(yīng)用安裝包的簽名,所述第二公鑰用于驗(yàn)證所述第二簽名信息。

本公開(kāi)實(shí)施例中,可以獲取應(yīng)用安裝包,該應(yīng)用安裝包包括應(yīng)用安裝包的簽名信息和用于驗(yàn)證該簽名信息的第一公鑰,然后使用第一私鑰對(duì)第一公鑰進(jìn)行簽名,得到第二簽名信息,并將第二簽名信息和用于驗(yàn)證該第二簽名信息的第二公鑰添加至應(yīng)用安裝包。由于第三方用戶若采用篡改后再重新簽名的方法對(duì)該應(yīng)用安裝包進(jìn)行篡改,必定會(huì)替換該應(yīng)用安裝包中的第一公鑰,本公開(kāi)通過(guò)對(duì)第一公鑰進(jìn)行簽名可以驗(yàn)證該第一公鑰是否被替換,從而能夠更為精確地檢測(cè)出應(yīng)用安裝包是否被篡改,提高了安全性和準(zhǔn)確性。

可選地,該使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,包括:

當(dāng)該應(yīng)用安裝包還包括應(yīng)用標(biāo)識(shí)時(shí),使用該第一私鑰對(duì)該應(yīng)用標(biāo)識(shí)和該第一公鑰進(jìn)行簽名,并將簽名后得到的簽名信息確定為該第二簽名信息。

可選地,該使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,并將該第二簽名信息和第二公鑰添加至該應(yīng)用安裝包,包括:

當(dāng)該應(yīng)用安裝包包括多個(gè)子安裝包,且每個(gè)子安裝包包括至少一個(gè)安裝文件和每個(gè)安裝文件的簽名信息時(shí),對(duì)于該多個(gè)子安裝包中的每個(gè)子安裝包,使用該第一私鑰對(duì)該子安裝包進(jìn)行簽名,并將該子安裝包的簽名信息和該第二公鑰添加至對(duì)應(yīng)的子安裝包,該第二公鑰用于驗(yàn)證所述子安裝包的簽名信息。

可選地,該獲取應(yīng)用安裝包之后,還包括:

當(dāng)該應(yīng)用安裝包還包括該應(yīng)用的權(quán)限列表時(shí),使用第二私鑰對(duì)該權(quán)限列表進(jìn)行簽名,得到第三簽名信息;

將該第三簽名信息和第三公鑰添加至該應(yīng)用安裝包,該第三公鑰用于驗(yàn)證該第三簽名信息。

上述所有可選技術(shù)方案,均可按照任意結(jié)合形成本公開(kāi)的可選實(shí)施例,本公開(kāi)實(shí)施例對(duì)此不再一一贅述。

圖2是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的驗(yàn)證方法的流程圖,該方法應(yīng)用于終端中。如圖2所示,該方法包括以下步驟。

在步驟201中,從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包,該應(yīng)用安裝包包括安裝文件、第一簽名信息、第一公鑰、第二簽名信息和第二公鑰。

其中,該第一簽名信息為該應(yīng)用安裝包的簽名信息,該第一公鑰用于驗(yàn)證該第一簽名信息,該第二簽名信息為該應(yīng)用下載平臺(tái)使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名得到,該第二公鑰用于驗(yàn)證該第二簽名信息。

在步驟202中,基于該第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改。

本公開(kāi)實(shí)施例中,可以基于第一簽名信息、第一公鑰、第二簽名信息和第二公鑰對(duì)應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改,由于第三方用戶若采用篡改后再重新簽名的方法對(duì)該應(yīng)用安裝包進(jìn)行篡改,必定會(huì)替換該應(yīng)用安裝包中的第一公鑰,因此通過(guò)基于第一簽名信息、第一公鑰、第二簽名信息和第二公鑰對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,即可驗(yàn)證該第一公鑰是否被替換,從而能夠更為精確地檢測(cè)出應(yīng)用安裝包被篡改,提高了安全性和準(zhǔn)確性。

可選地,該基于該第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改,包括:

基于該第二公鑰對(duì)該第二簽名信息進(jìn)行驗(yàn)證;

當(dāng)該第二簽名信息驗(yàn)證失敗時(shí),確定該應(yīng)用安裝包被篡改;

當(dāng)該第二簽名信息驗(yàn)證成功時(shí),基于該第一公鑰對(duì)該第一簽名信息進(jìn)行驗(yàn)證;

當(dāng)該第一簽名信息驗(yàn)證失敗時(shí),確定該應(yīng)用安裝包被篡改;

當(dāng)該第一簽名信息驗(yàn)證成功時(shí),確定該應(yīng)用安裝包未被篡改。

可選地,該從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包,包括:

從該應(yīng)用下載平臺(tái)中下載該應(yīng)用安裝包包括的多個(gè)子安裝包中的至少一個(gè)子安裝包;

其中,對(duì)于該至少一個(gè)子安裝包中的每個(gè)子安裝包,該子安裝包包括至少一個(gè)安裝文件、該至少一個(gè)安裝文件的簽名信息、該第一公鑰、該子安裝包的簽名信息和該第二公鑰,該子安裝包的簽名信息為該應(yīng)用下載平臺(tái)使用該第一私鑰對(duì)該子安裝包進(jìn)行簽名得到。

可選地,該基于該第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改,包括:

對(duì)于該至少一個(gè)子安裝包中的每個(gè)子安裝包,基于該第二公鑰對(duì)該子安裝包的簽名信息進(jìn)行驗(yàn)證;

當(dāng)該子安裝包的簽名信息驗(yàn)證失敗時(shí),確定該子安裝包被篡改;

當(dāng)該子安裝包的簽名信息驗(yàn)證成功時(shí),基于該第一公鑰,對(duì)該至少一個(gè)安裝文件的簽名信息進(jìn)行驗(yàn)證;

當(dāng)該至少一個(gè)安裝文件的簽名信息驗(yàn)證失敗時(shí),確定該子安裝包被篡改;

當(dāng)該少一個(gè)安裝文件的簽名信息驗(yàn)證成功時(shí),確定該子安裝包未被篡改。

可選地,該方法還包括:

當(dāng)該應(yīng)用安裝包還包括權(quán)限列表、第三簽名信息和第三公鑰時(shí),基于該第三公鑰對(duì)該第三簽名信息進(jìn)行驗(yàn)證;

其中,該第三簽名信息為該應(yīng)用下載平臺(tái)使用第二私鑰對(duì)該權(quán)限列表進(jìn)行簽名得到,該第三公鑰用于驗(yàn)證該第三簽名信息;

基于該第三簽名信息的驗(yàn)證結(jié)果,判斷該權(quán)限列表是否被篡改。

上述所有可選技術(shù)方案,均可按照任意結(jié)合形成本公開(kāi)的可選實(shí)施例,本公開(kāi)實(shí)施例對(duì)此不再一一贅述。

圖3是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的簽名和驗(yàn)證方法的流程圖,該方法的交互主體為應(yīng)用下載平臺(tái)和終端。如圖3所示,該方法包括以下步驟:

在步驟301中,應(yīng)用下載平臺(tái)獲取應(yīng)用安裝包,該應(yīng)用安裝包包括安裝文件、第一簽名信息和第一公鑰,該第一簽名信息為該應(yīng)用安裝包的簽名信息,該第一公鑰用于驗(yàn)證該第一簽名信息。

其中,該應(yīng)用下載平臺(tái)可以接收應(yīng)用開(kāi)發(fā)者上傳的應(yīng)用安裝包,或者獲取已存儲(chǔ)的應(yīng)用安裝包。

其中,該第一簽名信息為應(yīng)用開(kāi)發(fā)者使用設(shè)置的私鑰對(duì)該應(yīng)用安裝包進(jìn)行簽名得到。例如,在應(yīng)用開(kāi)發(fā)者上傳應(yīng)用安裝包之前,應(yīng)用開(kāi)發(fā)者可以利用終端使用設(shè)置的私鑰對(duì)開(kāi)發(fā)出來(lái)的應(yīng)用安裝包進(jìn)行簽名,得到第一簽名信息,然后生成用于驗(yàn)證該簽名信息的第一公鑰,并將該第一簽名信息和第一公鑰添加至該應(yīng)用安裝包。

其中,使用私鑰對(duì)開(kāi)發(fā)出來(lái)的應(yīng)用安裝包進(jìn)行簽名可以包括:使用預(yù)設(shè)哈希算法對(duì)該應(yīng)用安裝包進(jìn)行計(jì)算,得到該應(yīng)用安裝包的哈希值,然后使用私鑰對(duì)該哈希值進(jìn)行加密,得到第一簽名信息。該第一公鑰是與簽名時(shí)所使用的私鑰對(duì)應(yīng)的公鑰,即該第一私鑰與簽名時(shí)所使用的私鑰是一個(gè)密鑰對(duì),用于驗(yàn)證該應(yīng)用安裝包的簽名信息,且該第一公鑰可以為數(shù)字證書(shū)或者其他承載公鑰的形式。

進(jìn)一步地,該應(yīng)用安裝包還可以包括應(yīng)用標(biāo)識(shí),該應(yīng)用標(biāo)識(shí)可以為該應(yīng)用安裝包對(duì)應(yīng)的應(yīng)用的名稱或者id(identification,身份標(biāo)識(shí)號(hào))等,比如,該應(yīng)用標(biāo)識(shí)可以為appid。

在步驟302中,應(yīng)用下載平臺(tái)使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,并將該第二簽名信息和第二公鑰添加至該應(yīng)用安裝包,以實(shí)現(xiàn)該應(yīng)用安裝包的簽名,該第二公鑰用于驗(yàn)證該第二簽名信息。

為了防止應(yīng)用安裝包被篡改,在獲取應(yīng)用安裝包之后,應(yīng)用下載平臺(tái)可以從應(yīng)用安裝包中獲取第一公鑰,然后使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名。該第一私鑰和該第二公鑰為該應(yīng)用下載平臺(tái)預(yù)先設(shè)置的密鑰對(duì),即該第二公鑰與該第一私鑰對(duì)應(yīng),且該第二公鑰也可以為數(shù)字證書(shū)或者其他承載公鑰形式。

實(shí)際應(yīng)用中,該應(yīng)用下載平臺(tái)可以在接收到應(yīng)用安裝包的上傳終端發(fā)送的簽名請(qǐng)求時(shí),對(duì)該第一公鑰進(jìn)行簽名;或者,也可以在獲取到該應(yīng)用安裝包時(shí)主動(dòng)對(duì)該第一公鑰進(jìn)行簽名;或者,也可以在獲取到該應(yīng)用安裝包之后,根據(jù)該應(yīng)用下載平臺(tái)的設(shè)置觸發(fā)對(duì)第一公鑰的簽名。比如,該應(yīng)用下載平臺(tái)可以在獲取到該應(yīng)用安裝包之后的預(yù)設(shè)時(shí)間間隔對(duì)該第一公鑰進(jìn)行簽名,或者,在接收到終端對(duì)該應(yīng)用安裝包的下載請(qǐng)求時(shí),先對(duì)該第一公鑰進(jìn)行簽名,然后將應(yīng)用安裝包發(fā)送給終端。本公開(kāi)實(shí)施例對(duì)該應(yīng)用下載平臺(tái)對(duì)第一公鑰進(jìn)行簽名的時(shí)機(jī)不做限定。

其中,使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,并將該第二簽名信息和該第一私鑰對(duì)應(yīng)的第二公鑰添加至該應(yīng)用安裝包,可以包括以下兩種實(shí)現(xiàn)方式:

第一種實(shí)現(xiàn)方式:使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,并將該第二簽名信息和第二公鑰添加至該應(yīng)用安裝包。

其中,使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名是指使用第一私鑰對(duì)該第一公鑰進(jìn)行加密,或者先使用預(yù)設(shè)哈希算法對(duì)該第一公鑰進(jìn)行計(jì)算得到哈希值,然后使用該第一私鑰對(duì)該哈希值進(jìn)行加密。該第二公鑰可以對(duì)該第二簽名信息進(jìn)行驗(yàn)證,也即是,可以對(duì)該第二簽名信息進(jìn)行解密,得到該第一公鑰或者該第一公鑰的哈希值。

進(jìn)一步地,當(dāng)該應(yīng)用安裝包還包括應(yīng)用標(biāo)識(shí)時(shí),還可以使用該第一私鑰對(duì)該應(yīng)用標(biāo)識(shí)和該第一公鑰進(jìn)行簽名,并將簽名后得到的簽名信息確定為該第二簽名信息。

其中,可以使用該第一私鑰對(duì)該應(yīng)用標(biāo)識(shí)和該第一公鑰分別進(jìn)行簽名,該第二簽名信息包括應(yīng)用標(biāo)識(shí)的簽名信息和該第一公鑰的簽名信息,或者,也可以對(duì)該應(yīng)用標(biāo)識(shí)和該第一公鑰一起進(jìn)行簽名,比如對(duì)該應(yīng)用標(biāo)識(shí)和該第一公鑰組成的列表進(jìn)行簽名,本公開(kāi)實(shí)施例對(duì)此不做限定。

第二種實(shí)現(xiàn)方式:當(dāng)該應(yīng)用安裝包包括多個(gè)子安裝包,且每個(gè)子安裝包包括至少一個(gè)安裝文件和每個(gè)安裝文件的簽名信息時(shí),對(duì)于該多個(gè)子安裝包中的每個(gè)子安裝包,使用該第一私鑰對(duì)該子安裝包進(jìn)行簽名,并將該子安裝包的簽名信息和該第二公鑰添加至對(duì)應(yīng)的子安裝包,該第二公鑰用于驗(yàn)證該子安裝包的簽名信息。

其中,該子安裝包的簽名信息即為上述第二簽名信息,對(duì)于該多個(gè)子安裝包中的每個(gè)子安裝包,可以使用該第一私鑰對(duì)該子安裝包進(jìn)行簽名,得到第二簽名信息,然后將該第二簽名信息和該第二公鑰添加至對(duì)應(yīng)的子安裝包。

本公開(kāi)實(shí)施例支持對(duì)應(yīng)用安裝包進(jìn)行拆包,也即是,可以將包括多個(gè)安裝文件的原始安裝包拆解成多個(gè)子安裝包,每個(gè)子安裝包包括至少一個(gè)安裝文件。而且拆包之前,還可以對(duì)每個(gè)安裝文件進(jìn)行簽名,得到每個(gè)安裝文件的簽名信息,則拆解得到的每個(gè)子安裝包可以包括至少一個(gè)安裝文件和該至少一個(gè)安裝文件的簽名信息。

例如,假設(shè)原始安裝包中包含4個(gè)安裝文件a、b、c、d,可以先對(duì)這4個(gè)安裝文件分別進(jìn)行簽名,得到這4個(gè)安裝文件各自的簽名信息,拆包時(shí)可以將這4個(gè)安裝文件拆解子安裝包1和子安裝包2,子安裝包1包含a、b以及a、b的簽名信息,子安裝包2包含c、d以及c、d的簽名信息。

進(jìn)一步地,可以按照預(yù)設(shè)策略將應(yīng)用安裝包拆分成多個(gè)子安裝包,該多個(gè)子安裝包中的每個(gè)子安裝包可以用于實(shí)現(xiàn)該應(yīng)用的部分功能。例如,可以按照應(yīng)用界面進(jìn)行拆分,每個(gè)子安裝包用于顯示該應(yīng)用的一個(gè)或多個(gè)應(yīng)用界面,或者多個(gè)子安裝包用于顯示該應(yīng)用的一個(gè)應(yīng)用界面。

通過(guò)將應(yīng)用安裝包拆分成多個(gè)子安裝包,可以便于終端在未安裝該應(yīng)用安裝包的前提下,當(dāng)需要使用該應(yīng)用的某個(gè)功能時(shí),僅需下載該應(yīng)用安裝包中用于實(shí)現(xiàn)該功能的部分子安裝包,并運(yùn)行該部分子安裝包即可使用該功能,而無(wú)需下載和安裝整個(gè)子安裝包,從而可以節(jié)省應(yīng)用安裝包的下載和安裝時(shí)間,提高應(yīng)用的使用效率。

實(shí)際應(yīng)用中,可以由應(yīng)用開(kāi)發(fā)者進(jìn)行拆包,也可以由應(yīng)用下載平臺(tái)進(jìn)行拆包,本公開(kāi)實(shí)施例對(duì)此不做限定。也即是,該應(yīng)用安裝包包括的多個(gè)子安裝包可以由該應(yīng)用開(kāi)發(fā)者或者該應(yīng)用下載平臺(tái)對(duì)包括多個(gè)子安裝包的原始安裝包進(jìn)行拆包得到,每個(gè)安裝文件的簽名信息也可以由該應(yīng)用開(kāi)發(fā)者或者該應(yīng)用下載平臺(tái)對(duì)每個(gè)安裝文件進(jìn)行簽名得到。

其中,使用第一私鑰對(duì)該子安裝包進(jìn)行簽名可以包括:先使用預(yù)設(shè)哈希算法對(duì)該子安裝包進(jìn)行計(jì)算得到哈希值,然后使用該第一私鑰對(duì)該哈希值進(jìn)行加密。該第二公鑰用于驗(yàn)證該子安裝包的簽名信息,也即是,該第二公鑰可以用于對(duì)該子安裝包的簽名信息進(jìn)行解密,得到該子安裝包的哈希值。

其中,對(duì)于該多個(gè)子安裝包中的每個(gè)子安裝包,該子安裝包還包括第一公鑰,該第一公鑰用于對(duì)該子安裝包中的每個(gè)安裝文件的簽名信息進(jìn)行驗(yàn)證。當(dāng)然,在另一實(shí)施例中,該子安裝包也可以包括至少一個(gè)第一公鑰,該至少一個(gè)第一公鑰與該子安安裝包包括的至少一個(gè)安裝文件的簽名信息一一對(duì)應(yīng),用于驗(yàn)證對(duì)應(yīng)安裝文件的簽名信息。

進(jìn)一步地,該獲取應(yīng)用安裝包之后還可以包括:當(dāng)該應(yīng)用安裝包還包括該應(yīng)用的權(quán)限列表時(shí),使用第二私鑰對(duì)該權(quán)限列表進(jìn)行簽名,得到第三簽名信息;將該第三簽名信息和第三公鑰添加至該應(yīng)用安裝包,該第三公鑰用于驗(yàn)證該第三簽名信息。

其中,該第三公鑰與該第二私鑰對(duì)應(yīng),也即是,該第三公鑰與該第二私鑰是一個(gè)密鑰對(duì),因此可以驗(yàn)證該第三簽名信息。且該第三公鑰也可以為數(shù)字證書(shū)或者其他承載公鑰的形式。

其中,該權(quán)限列表包括該應(yīng)用安裝包對(duì)應(yīng)的應(yīng)用在運(yùn)行過(guò)程中具有的多個(gè)權(quán)限,該多個(gè)權(quán)限可以為獲取終端位置的權(quán)限、獲取終端通信錄的權(quán)限以及root(根)權(quán)限等。其中,root權(quán)限為應(yīng)用的最高權(quán)限,利用root權(quán)限可以對(duì)終端系統(tǒng)進(jìn)行更改,比如刪除系統(tǒng)文件等。

其中,該第二私鑰可以為與該第一私鑰相同,也可以為與該第一私鑰不同鑰,本公開(kāi)實(shí)施例對(duì)此不做限定。

進(jìn)一步地,當(dāng)該應(yīng)用安裝包還包括簽名的用途信息或者允許安裝該應(yīng)用的設(shè)備標(biāo)識(shí)等信息時(shí),該應(yīng)用下載平臺(tái)還可以使用私鑰對(duì)該簽名的用途信息或者允許安裝該應(yīng)用的設(shè)備標(biāo)識(shí)等信息進(jìn)行簽名,并將簽名得到的信息和所述使用的私鑰對(duì)應(yīng)的公鑰添加至該應(yīng)用安裝包,以便后續(xù)通過(guò)對(duì)應(yīng)的公鑰驗(yàn)證對(duì)應(yīng)的信息,判斷對(duì)應(yīng)的信息是否被篡改,從而進(jìn)一步保護(hù)終端安裝。其中,所使用的私鑰可以與上述第二私鑰或者第一私鑰相同,也可以不同。且所使用的私鑰對(duì)應(yīng)的公鑰也可以為數(shù)字證書(shū)或者其他承載公鑰的形式。

應(yīng)用下載平臺(tái)使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,并將該第二簽名信息和第二公鑰添加至該應(yīng)用安裝包之后,所得到的應(yīng)用安裝包可以存儲(chǔ)在該應(yīng)用下載平臺(tái)中,以供終端進(jìn)行加載。

在步驟303中,終端從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包,該應(yīng)用安裝包包括安裝文件、第一簽名信息、第一公鑰、第二簽名信息和第二公鑰。

實(shí)際應(yīng)用中,終端可以根據(jù)用戶的下載操作,向應(yīng)用下載平臺(tái)發(fā)送對(duì)應(yīng)用安裝包的下載請(qǐng)求,當(dāng)應(yīng)用下載平臺(tái)接收到該下載請(qǐng)求時(shí),即可將該應(yīng)用安裝包發(fā)送給該終端。

其中,終端從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包可以包括以下兩種實(shí)現(xiàn)方式:

第一種實(shí)現(xiàn)方式:終端從應(yīng)用下載平臺(tái)中下載整個(gè)應(yīng)用安裝包,該應(yīng)用安裝包包括該應(yīng)用的所有安裝文件、第一簽名信息、第一公鑰、第二簽名信息和第二公鑰。

其中,該第一簽名信息為該應(yīng)用安裝包的簽名信息,該第一公鑰用于驗(yàn)證該第一簽名信息,該第二簽名信息為該應(yīng)用下載平臺(tái)使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名得到,該第二公鑰與該第一私鑰對(duì)應(yīng)。

第二種實(shí)現(xiàn)方式:終端從該應(yīng)用下載平臺(tái)中下載該應(yīng)用安裝包包括的多個(gè)子安裝包中的至少一個(gè)子安裝包。

其中,終端可以在未下載該應(yīng)用安裝包的前提下,當(dāng)需要使用該應(yīng)用的某個(gè)功能時(shí),從該應(yīng)用下載平臺(tái)中下載該至少一個(gè)子安裝包,該至少一個(gè)子安裝包用于實(shí)現(xiàn)該功能。例如,該終端可以在需要顯示未安裝的應(yīng)用的任一應(yīng)用界面時(shí),從該多個(gè)子安裝包中下載用于顯示該應(yīng)用界面時(shí)所需的至少一個(gè)子安裝包,然后運(yùn)行這至少一個(gè)子安裝包,即可顯示該應(yīng)用界面。

其中,對(duì)于該至少一個(gè)子安裝包中的每個(gè)子安裝包,該子安裝包包括至少一個(gè)安裝文件、該至少一個(gè)安裝文件的簽名信息、該第一公鑰、該子安裝包的簽名信息和該第二公鑰,該子安裝包的簽名信息為該應(yīng)用下載平臺(tái)使用該第一私鑰對(duì)該子安裝包進(jìn)行簽名得到。

其中,該第一公鑰用于驗(yàn)證該至少一個(gè)安裝文件的簽名信息中的每個(gè)簽名信息。當(dāng)然,在另一實(shí)施例中,該子安裝包還可以包括至少一個(gè)第一公鑰,該至少一個(gè)第一公鑰與該子安安裝包包括的至少一個(gè)安裝文件的簽名信息一一對(duì)應(yīng),用于驗(yàn)證對(duì)應(yīng)安裝文件的簽名信息。該第二公鑰用于驗(yàn)證該子安裝包的簽名信息。

在步驟304中,終端基于該第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改。

也即是,該終端可以基于該第二公鑰對(duì)該第二簽名信息進(jìn)行驗(yàn)證,并基于該第二簽名信息的驗(yàn)證結(jié)果,判斷該應(yīng)用安裝包是否被篡改。

針對(duì)上述步驟303中的第一種實(shí)現(xiàn)方式,基于該第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改可以包括如下步驟1)-5):

1)基于該第二公鑰對(duì)該第二簽名信息進(jìn)行驗(yàn)證。

由于該第二簽名信息為使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名得到,且該第二公鑰為與該第一私鑰對(duì)應(yīng)的密鑰對(duì),因此,基于該第二公鑰即可對(duì)該第二簽名信息進(jìn)行驗(yàn)證。

若該第二簽名信息為該應(yīng)用下載平臺(tái)使用第一私鑰對(duì)該第一公鑰進(jìn)行加密得到,則基于該第二公鑰對(duì)該第二簽名信息進(jìn)行驗(yàn)證可以包括:使用第二公鑰對(duì)該第二簽名信息進(jìn)行解密得到該第一公鑰,將該解密得到第一公鑰與該應(yīng)用安裝包中包括的第一公鑰進(jìn)行比較,若兩者相同,則確定該第二簽名信息驗(yàn)證成功,若兩者不同,則確定該第二簽名信息驗(yàn)證失敗。

若該第二簽名信息為該應(yīng)用下載平臺(tái)先使用預(yù)設(shè)哈希算法對(duì)該第一公鑰進(jìn)行計(jì)算,得到該第一公鑰的哈希值,再使用第一私鑰對(duì)該哈希值進(jìn)行加密得到,則基于該第二公鑰對(duì)該第二簽名信息進(jìn)行驗(yàn)證可以包括:先使用預(yù)設(shè)哈希算法對(duì)該第一公鑰進(jìn)行計(jì)算,得到該第一公鑰的哈希值,然后使用第二公鑰對(duì)該第二簽名信息進(jìn)行解密得到解密信息,之后將該計(jì)算得到的哈希值和該解密信息進(jìn)行比較,若兩者相同,則確定該第二簽名信息驗(yàn)證成功,若兩者不同,則確定該第二簽名信息驗(yàn)證失敗。

2)當(dāng)該第二簽名信息驗(yàn)證失敗時(shí),確定該應(yīng)用安裝包被篡改。

當(dāng)該第二簽名信息驗(yàn)證失敗時(shí),說(shuō)明該應(yīng)用安裝包中的第一公鑰已被篡改,由于第三方用戶若采用篡改后再重新簽名的方法對(duì)該應(yīng)用安裝包進(jìn)行篡改,必定會(huì)替換該應(yīng)用安裝包中的第一公鑰,因此,當(dāng)確定到該應(yīng)用安裝包中的第一公鑰被篡改時(shí),則即可確定該應(yīng)用安裝包被篡改。

3)當(dāng)該第二簽名信息驗(yàn)證成功時(shí),基于該第一公鑰對(duì)該第一簽名信息進(jìn)行驗(yàn)證。

當(dāng)該第二簽名信息驗(yàn)證成功時(shí),即可確定該第一公鑰未被篡改,并可以基于該第一公鑰對(duì)該第一簽名信息進(jìn)行驗(yàn)證。

其中,基于該第一公鑰對(duì)該第一簽名信息進(jìn)行驗(yàn)證可以包括:先使用預(yù)設(shè)哈希算法對(duì)該第一簽名信息進(jìn)行計(jì)算,得到該應(yīng)用安裝包的哈希值,然后使用該第一公鑰對(duì)該第一簽名信息進(jìn)行解密,得到解密信息,之后將計(jì)算得到的該應(yīng)用安裝包的哈希值和該解密信息進(jìn)行比較,若兩者相同,即可確定該第一簽名信息驗(yàn)證成功,若兩者不同,即可確定該第一簽名信息驗(yàn)證失敗。

4)當(dāng)該第一簽名信息驗(yàn)證失敗時(shí),確定該應(yīng)用安裝包被篡改。

5)當(dāng)該第一簽名信息驗(yàn)證成功時(shí),確定該應(yīng)用安裝包未被篡改。

針對(duì)上述步驟303中的第二種實(shí)現(xiàn)方式,基于該第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改可以包括如下步驟1)-5):

1)對(duì)于該至少一個(gè)子安裝包中的每個(gè)子安裝包,基于該第二公鑰對(duì)該子安裝包的簽名信息進(jìn)行驗(yàn)證。

其中,基于該第二公鑰對(duì)該子安裝包的簽名信息進(jìn)行驗(yàn)證的方式與上述基于該第一公鑰對(duì)該第一簽名信息進(jìn)行驗(yàn)證的方式原理相同,具體過(guò)程可以同理推出,此處不再贅述。

2)當(dāng)該子安裝包的簽名信息驗(yàn)證失敗時(shí),確定該子安裝包被篡改。

3)當(dāng)該子安裝包的簽名信息驗(yàn)證成功時(shí),基于該第一公鑰對(duì)該至少一個(gè)安裝文件的簽名信息進(jìn)行驗(yàn)證。

其中,基于該第一公鑰對(duì)該至少一個(gè)安裝文件的簽名信息進(jìn)行驗(yàn)證的方式與上述基于該第一公鑰對(duì)該第一簽名信息進(jìn)行驗(yàn)證的方式原理相同,具體過(guò)程可以同理推出,此處不再贅述。

4)當(dāng)該至少一個(gè)安裝文件的簽名信息驗(yàn)證失敗時(shí),確定該子安裝包被篡改。

5)當(dāng)該少一個(gè)安裝文件的簽名信息驗(yàn)證成功時(shí),確定該子安裝包未被篡改。

需要說(shuō)明的是,該終端可以在需要安裝該應(yīng)用安裝包時(shí)對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,當(dāng)確定該應(yīng)用安裝包未被篡改時(shí),說(shuō)明該應(yīng)用安裝包是可信的,因此可以正常安裝該應(yīng)用安裝包,當(dāng)確定該應(yīng)用安裝包被篡改時(shí),說(shuō)明該應(yīng)用安裝包中有可能被植入了惡意代碼,因此可以結(jié)束安裝該應(yīng)用安裝包。當(dāng)然,該終端也可以在該應(yīng)用安裝包安裝完成之后,在該應(yīng)用運(yùn)行時(shí)對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,當(dāng)確定該應(yīng)用安裝包未被篡改時(shí)運(yùn)行該應(yīng)用,當(dāng)確定該應(yīng)用安裝包被篡改時(shí)則結(jié)束運(yùn)行該應(yīng)用,本公開(kāi)實(shí)施例對(duì)步驟304的執(zhí)行時(shí)機(jī)不做限定。

進(jìn)一步地,在該應(yīng)用運(yùn)行時(shí),當(dāng)該應(yīng)用安裝包還包括權(quán)限列表、第三簽名信息和第三公鑰時(shí),終端還可以基于該第三公鑰對(duì)該第三簽名信息進(jìn)行驗(yàn)證,并基于該第三簽名信息的驗(yàn)證結(jié)果,判斷該權(quán)限列表是否被篡改。

其中,該第三簽名信息為該應(yīng)用下載平臺(tái)使用第二私鑰對(duì)該權(quán)限列表進(jìn)行簽名得到,該第三公鑰為與該第二私鑰對(duì)應(yīng)的公鑰,用于驗(yàn)證該第三簽名信息。

其中,基于該第三公鑰對(duì)該第三簽名信息進(jìn)行驗(yàn)證的方式與上述基于該第二公鑰對(duì)該第二簽名信息進(jìn)行驗(yàn)證的方式原理相同,具體過(guò)程可以同理推出,此處不再贅述。當(dāng)該第三簽名信息的驗(yàn)證成功時(shí),可以確定該權(quán)限列表未被篡改,當(dāng)該第三簽名信息驗(yàn)證失敗時(shí),可確定該權(quán)限列表被篡改。

實(shí)際應(yīng)用中,應(yīng)用開(kāi)發(fā)者或者第三方用戶通常會(huì)通過(guò)篡改權(quán)限列表中的權(quán)限,來(lái)獲取終端的隱私信息或者對(duì)終端系統(tǒng)進(jìn)行更改,從而危害終端安全。比如,在該應(yīng)用運(yùn)行過(guò)程中,當(dāng)該應(yīng)用的權(quán)限列表中沒(méi)有root權(quán)限時(shí),第三方用戶可以通過(guò)將該權(quán)限列表中的某一權(quán)限更改為root權(quán)限來(lái)入侵終端系統(tǒng)。因此,當(dāng)權(quán)限列表中的權(quán)限被篡改時(shí),說(shuō)明該終端的安全可能會(huì)遭受危害。

進(jìn)一步地,為了保障終端的安全,當(dāng)確定該權(quán)限列表被篡改時(shí),該終端還可以顯示提醒信息,以提醒用戶該應(yīng)用的權(quán)限被篡改。通過(guò)對(duì)權(quán)限列表進(jìn)行簽名和驗(yàn)證,并在權(quán)限列表被篡改提醒用戶,可以防止該應(yīng)用的權(quán)限被應(yīng)用開(kāi)發(fā)者或者第三方用戶隨意篡改,從保護(hù)終端的安全。

本公開(kāi)實(shí)施例中,可以獲取應(yīng)用安裝包,該應(yīng)用安裝包包括應(yīng)用安裝包的簽名信息和用于驗(yàn)證該簽名信息的第一公鑰,然后使用第一私鑰對(duì)第一公鑰進(jìn)行簽名,得到第二簽名信息,并將第二簽名信息和用于驗(yàn)證該第二簽名信息的第二公鑰添加至應(yīng)用安裝包。由于第三方用戶若采用篡改后再重新簽名的方法對(duì)該應(yīng)用安裝包進(jìn)行篡改,必定會(huì)替換該應(yīng)用安裝包中的第一公鑰,本公開(kāi)通過(guò)對(duì)第一公鑰進(jìn)行簽名可以驗(yàn)證該第一公鑰是否被替換,從而能夠更為精確地檢測(cè)出應(yīng)用安裝包是否被篡改,提高了安全性和準(zhǔn)確性。

圖4a是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的簽名裝置的框圖。參照?qǐng)D4a,該裝置包括獲取模塊401和第一簽名模塊402。

獲取模塊401,用于獲取應(yīng)用安裝包,該應(yīng)用安裝包包括安裝文件、第一簽名信息和第一公鑰,該第一簽名信息為該應(yīng)用安裝包的簽名信息,該第一公鑰用于驗(yàn)證該第一簽名信息;

第一簽名模塊402,用于使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名,得到第二簽名信息,并將該第二簽名信息和第二公鑰添加至該應(yīng)用安裝包,以實(shí)現(xiàn)該應(yīng)用安裝包的簽名,該第二公鑰用于驗(yàn)證該第二簽名信息。

可選地,該第一簽名模塊402用于:

當(dāng)該應(yīng)用安裝包還包括應(yīng)用標(biāo)識(shí)時(shí),使用該第一私鑰對(duì)該應(yīng)用標(biāo)識(shí)和該第一公鑰進(jìn)行簽名,并將簽名后得到的簽名信息確定為該第二簽名信息。

可選地,該第一簽名模塊402用于:

當(dāng)該應(yīng)用安裝包包括多個(gè)子安裝包,且每個(gè)子安裝包包括至少一個(gè)安裝文件和每個(gè)安裝文件的簽名信息時(shí),對(duì)于該多個(gè)子安裝包中的每個(gè)子安裝包,使用該第一私鑰對(duì)該子安裝包進(jìn)行簽名,并將該子安裝包的簽名信息和該第二公鑰添加至對(duì)應(yīng)的子安裝包,該第二公鑰用于驗(yàn)證該子安裝包的簽名信息。

可選地,參見(jiàn)圖4b,該裝置還包括:

第二簽名模塊403,用于當(dāng)該應(yīng)用安裝包還包括該應(yīng)用的權(quán)限列表時(shí),使用第二私鑰對(duì)該權(quán)限列表進(jìn)行簽名,得到第三簽名信息;

添加模塊404,用于將該第三簽名信息和第三公鑰添加至該應(yīng)用安裝包,該第三公鑰用于驗(yàn)證該第三簽名信息。

關(guān)于上述實(shí)施例中的裝置,其中各個(gè)模塊執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實(shí)施例中進(jìn)行了詳細(xì)描述,此處將不做詳細(xì)闡述說(shuō)明。

圖5a是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用安裝包的驗(yàn)證裝置的框圖。參照?qǐng)D5a,該裝置包括下載模塊501和第一驗(yàn)證模塊502。

下載模塊501,用于從應(yīng)用下載平臺(tái)中下載應(yīng)用安裝包,該應(yīng)用安裝包包括安裝文件、第一簽名信息、第一公鑰、第二簽名信息和第二公鑰;

其中,該第一簽名信息為該應(yīng)用安裝包的簽名信息,該第一公鑰用于驗(yàn)證該第一簽名信息,該第二簽名信息為該應(yīng)用下載平臺(tái)使用第一私鑰對(duì)該第一公鑰進(jìn)行簽名得到,該第二公鑰用于驗(yàn)證該第二簽名信息;

第一驗(yàn)證模塊502,用于基于該第一簽名信息、第一公鑰、第二簽名信息和第二公鑰,對(duì)該應(yīng)用安裝包進(jìn)行驗(yàn)證,以判斷該應(yīng)用安裝包是否被篡改。

可選地,該第一驗(yàn)證模塊502包括:

第一驗(yàn)證子模塊,用于基于該第二公鑰對(duì)該第二簽名信息進(jìn)行驗(yàn)證;

第一確定子模塊,用于當(dāng)該第二簽名信息驗(yàn)證失敗時(shí),確定該應(yīng)用安裝包被篡改;

第二驗(yàn)證子模塊,用于當(dāng)該第二簽名信息驗(yàn)證成功時(shí),基于該第一公鑰對(duì)該第一簽名信息進(jìn)行驗(yàn)證;

第二確定子模塊,用于當(dāng)該第一簽名信息驗(yàn)證失敗時(shí),確定該應(yīng)用安裝包被篡改;

第三確定子模塊,用于當(dāng)該第一簽名信息驗(yàn)證成功時(shí),確定該應(yīng)用安裝包未被篡改。

可選地,該下載模塊501用于:

從該應(yīng)用下載平臺(tái)中下載該應(yīng)用安裝包包括的多個(gè)子安裝包中的至少一個(gè)子安裝包;

其中,對(duì)于該至少一個(gè)子安裝包中的每個(gè)子安裝包,該子安裝包包括至少一個(gè)安裝文件、該至少一個(gè)安裝文件的簽名信息、該第一公鑰、該子安裝包的簽名信息和該第二公鑰,該子安裝包的簽名信息為該應(yīng)用下載平臺(tái)使用該第一私鑰對(duì)該子安裝包進(jìn)行簽名得到。

可選地,該第一驗(yàn)證模塊502包括:

第三驗(yàn)證模塊,用于對(duì)于該至少一個(gè)子安裝包中的每個(gè)子安裝包,基于該第二公鑰對(duì)該子安裝包的簽名信息進(jìn)行驗(yàn)證;

第四確定模塊,用于當(dāng)該子安裝包的簽名信息驗(yàn)證失敗時(shí),確定該子安裝包被篡改;

第四驗(yàn)證模塊,用于當(dāng)該子安裝包的簽名信息驗(yàn)證成功時(shí),基于該第一公鑰,對(duì)該至少一個(gè)安裝文件的簽名信息進(jìn)行驗(yàn)證;

第五確定模塊,用于當(dāng)該至少一個(gè)安裝文件的簽名信息驗(yàn)證失敗時(shí),確定該子安裝包被篡改;

第六確定模塊,用于當(dāng)該少一個(gè)安裝文件的簽名信息驗(yàn)證成功時(shí),確定該子安裝包未被篡改。

可選地,參見(jiàn)圖5b,該裝置還包括:

第二驗(yàn)證模塊503,用于當(dāng)該應(yīng)用安裝包還包括權(quán)限列表、第三簽名信息和第三公鑰時(shí),基于該第三公鑰對(duì)該第三簽名信息進(jìn)行驗(yàn)證;

其中,該第三簽名信息為該應(yīng)用下載平臺(tái)使用第二私鑰對(duì)該權(quán)限列表進(jìn)行簽名得到,該第三公鑰用于驗(yàn)證該第三簽名信息;

判斷模塊504,用于基于該第三簽名信息的驗(yàn)證結(jié)果,判斷該權(quán)限列表是否被篡改。

關(guān)于上述實(shí)施例中的裝置,其中各個(gè)模塊執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實(shí)施例中進(jìn)行了詳細(xì)描述,此處將不做詳細(xì)闡述說(shuō)明。

圖6是根據(jù)一示例性實(shí)施例示出的一種應(yīng)用下載平臺(tái)600的結(jié)構(gòu)示意圖。例如,應(yīng)用下載平臺(tái)600可以被提供為一服務(wù)器。參照?qǐng)D6,應(yīng)用下載平臺(tái)600包括處理組件622,其進(jìn)一步包括一個(gè)或多個(gè)處理器,以及由存儲(chǔ)器632所代表的存儲(chǔ)器資源,用于存儲(chǔ)可由處理組件622的執(zhí)行的指令,例如應(yīng)用程序。存儲(chǔ)器632中存儲(chǔ)的應(yīng)用程序可以包括一個(gè)或一個(gè)以上的每一個(gè)對(duì)應(yīng)于一組指令的模塊。此外,處理組件622被配置為執(zhí)行指令,以執(zhí)行上述圖1、圖2或者圖3實(shí)施例提供的方法。

應(yīng)用下載平臺(tái)600還可以包括一個(gè)電源組件626被配置為執(zhí)行應(yīng)用下載平臺(tái)600的電源管理,一個(gè)有線或無(wú)線網(wǎng)絡(luò)接口650被配置為將應(yīng)用下載平臺(tái)600連接到網(wǎng)絡(luò),和一個(gè)輸入輸出(i/o)接口658。應(yīng)用下載平臺(tái)600可以操作基于存儲(chǔ)在存儲(chǔ)器632的操作系統(tǒng),例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或類似。

一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)所述存儲(chǔ)介質(zhì)中的指令由服務(wù)器的處理器執(zhí)行時(shí),使得服務(wù)器能夠執(zhí)行上述圖1、圖2或者圖3實(shí)施例提供的方法。。

圖7是根據(jù)一示例性實(shí)施例示出的一種終端700的結(jié)構(gòu)示意圖。例如,終端700可以是移動(dòng)電話,計(jì)算機(jī),數(shù)字廣播終端,消息收發(fā)設(shè)備,游戲控制臺(tái),平板設(shè)備,醫(yī)療設(shè)備,健身設(shè)備,個(gè)人數(shù)字助理等。

參照?qǐng)D7,終端700可以包括以下一個(gè)或多個(gè)組件:處理組件702,存儲(chǔ)器704,電源組件706,多媒體組件708,音頻組件710,輸入/輸出(i/o)的接口712,傳感器組件714,以及通信組件716。

處理組件702通??刂平K端700的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機(jī)操作和記錄操作相關(guān)聯(lián)的操作。處理組件702可以包括一個(gè)或多個(gè)處理器720來(lái)執(zhí)行指令,以完成上述的方法的全部或部分步驟。此外,處理組件702可以包括一個(gè)或多個(gè)模塊,便于處理組件702和其他組件之間的交互。例如,處理組件702可以包括多媒體模塊,以方便多媒體組件708和處理組件702之間的交互。

存儲(chǔ)器704被配置為存儲(chǔ)各種類型的數(shù)據(jù)以支持在終端700的操作。這些數(shù)據(jù)的示例包括用于在終端700上操作的任何應(yīng)用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲(chǔ)器704可以由任何類型的易失性或非易失性存儲(chǔ)設(shè)備或者它們的組合實(shí)現(xiàn),如靜態(tài)隨機(jī)存取存儲(chǔ)器(sram),電可擦除可編程只讀存儲(chǔ)器(eeprom),可擦除可編程只讀存儲(chǔ)器(eprom),可編程只讀存儲(chǔ)器(prom),只讀存儲(chǔ)器(rom),磁存儲(chǔ)器,快閃存儲(chǔ)器,磁盤(pán)或光盤(pán)。

電源組件706為終端700的各種組件提供電源。電源組件706可以包括電源管理系統(tǒng),一個(gè)或多個(gè)電源,及其他與為終端700生成、管理和分配電源相關(guān)聯(lián)的組件。

多媒體組件708包括在所述終端700和用戶之間的提供一個(gè)輸出接口的屏幕。在一些實(shí)施例中,屏幕可以包括液晶顯示器(lcd)和觸摸面板(tp)。如果屏幕包括觸摸面板,屏幕可以被實(shí)現(xiàn)為觸摸屏,以接收來(lái)自用戶的輸入信號(hào)。觸摸面板包括一個(gè)或多個(gè)觸摸傳感器以感測(cè)觸摸、滑動(dòng)和觸摸面板上的手勢(shì)。所述觸摸傳感器可以不僅感測(cè)觸摸或滑動(dòng)動(dòng)作的邊界,而且還檢測(cè)與所述觸摸或滑動(dòng)操作相關(guān)的持續(xù)時(shí)間和壓力。在一些實(shí)施例中,多媒體組件708包括一個(gè)前置攝像頭和/或后置攝像頭。當(dāng)終端700處于操作模式,如拍攝模式或視頻模式時(shí),前置攝像頭和/或后置攝像頭可以接收外部的多媒體數(shù)據(jù)。每個(gè)前置攝像頭和后置攝像頭可以是一個(gè)固定的光學(xué)透鏡系統(tǒng)或具有焦距和光學(xué)變焦能力。

音頻組件710被配置為輸出和/或輸入音頻信號(hào)。例如,音頻組件710包括一個(gè)麥克風(fēng)(mic),當(dāng)終端700處于操作模式,如呼叫模式、記錄模式和語(yǔ)音識(shí)別模式時(shí),麥克風(fēng)被配置為接收外部音頻信號(hào)。所接收的音頻信號(hào)可以被進(jìn)一步存儲(chǔ)在存儲(chǔ)器704或經(jīng)由通信組件716發(fā)送。在一些實(shí)施例中,音頻組件710還包括一個(gè)揚(yáng)聲器,用于輸出音頻信號(hào)。

i/o接口712為處理組件702和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤(pán),點(diǎn)擊輪,按鈕等。這些按鈕可包括但不限于:主頁(yè)按鈕、音量按鈕、啟動(dòng)按鈕和鎖定按鈕。

傳感器組件714包括一個(gè)或多個(gè)傳感器,用于為終端700提供各個(gè)方面的狀態(tài)評(píng)估。例如,傳感器組件714可以檢測(cè)到終端700的打開(kāi)/關(guān)閉狀態(tài),組件的相對(duì)定位,例如所述組件為終端700的顯示器和小鍵盤(pán),傳感器組件714還可以檢測(cè)終端700或終端700一個(gè)組件的位置改變,用戶與終端700接觸的存在或不存在,終端700方位或加速/減速和終端700的溫度變化。傳感器組件714可以包括接近傳感器,被配置用來(lái)在沒(méi)有任何的物理接觸時(shí)檢測(cè)附近物體的存在。傳感器組件714還可以包括光傳感器,如cmos或ccd圖像傳感器,用于在成像應(yīng)用中使用。在一些實(shí)施例中,該傳感器組件714還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。

通信組件716被配置為便于終端700和其他設(shè)備之間有線或無(wú)線方式的通信。終端700可以接入基于通信標(biāo)準(zhǔn)的無(wú)線網(wǎng)絡(luò),如wifi,2g或3g,或它們的組合。在一個(gè)示例性實(shí)施例中,通信組件716經(jīng)由廣播信道接收來(lái)自外部廣播管理系統(tǒng)的廣播信號(hào)或廣播相關(guān)信息。在一個(gè)示例性實(shí)施例中,所述通信組件716還包括近場(chǎng)通信(nfc)模塊,以促進(jìn)短程通信。例如,在nfc模塊可基于射頻識(shí)別(rfid)技術(shù),紅外數(shù)據(jù)協(xié)會(huì)(irda)技術(shù),超寬帶(uwb)技術(shù),藍(lán)牙(bt)技術(shù)和其他技術(shù)來(lái)實(shí)現(xiàn)。

在示例性實(shí)施例中,終端700可以被一個(gè)或多個(gè)應(yīng)用專用集成電路(asic)、數(shù)字信號(hào)處理器(dsp)、數(shù)字信號(hào)處理設(shè)備(dspd)、可編程邏輯器件(pld)、現(xiàn)場(chǎng)可編程門(mén)陣列(fpga)、控制器、微控制器、微處理器或其他電子元件實(shí)現(xiàn),用于執(zhí)行上述圖圖1、圖2或者圖3提供的方法。

在示例性實(shí)施例中,還提供了一種包括指令的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),例如包括指令的存儲(chǔ)器704,上述指令可由終端700的處理器720執(zhí)行以完成上述方法。例如,所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是rom、隨機(jī)存取存儲(chǔ)器(ram)、cd-rom、磁帶、軟盤(pán)和光數(shù)據(jù)存儲(chǔ)設(shè)備等。

一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)所述存儲(chǔ)介質(zhì)中的指令由終端的處理器執(zhí)行時(shí),使得終端能夠執(zhí)行上述圖1、圖2或者圖3實(shí)施例提供的方法。

本領(lǐng)域技術(shù)人員在考慮說(shuō)明書(shū)及實(shí)踐這里公開(kāi)的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請(qǐng)旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本公開(kāi)未公開(kāi)的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說(shuō)明書(shū)和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。

應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來(lái)限制。

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