欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種移動(dòng)終端的版本升級(jí)方法及裝置與流程

文檔序號(hào):11285899閱讀:189來(lái)源:國(guó)知局
一種移動(dòng)終端的版本升級(jí)方法及裝置與流程

本申請(qǐng)是2014年6月27日提出的發(fā)明名稱為“一種移動(dòng)終端的版本升級(jí)方法及裝置”的中國(guó)發(fā)明專利申請(qǐng)201410299466.6的分案申請(qǐng)。

本發(fā)明涉及移動(dòng)終端的在線升級(jí)領(lǐng)域,尤其涉及一種移動(dòng)終端的版本升級(jí)方法及裝置。



背景技術(shù):

移動(dòng)終端上市后,在用戶的使用過(guò)程中可能會(huì)發(fā)現(xiàn)一些系統(tǒng)問(wèn)題,移動(dòng)終端為解決上市后出現(xiàn)的一系列系統(tǒng)問(wèn)題,完善系統(tǒng)功能,后期會(huì)發(fā)布一系列針對(duì)此移動(dòng)終端的系統(tǒng)升級(jí)版本。為了方便用戶自行解決系統(tǒng)升級(jí)問(wèn)題,移動(dòng)終端廠商會(huì)將問(wèn)題修復(fù)后的系統(tǒng)升級(jí)版本壓縮為空中下載(overtheair,ota)升級(jí)包放到服務(wù)器上,方便用戶通過(guò)移動(dòng)終端的在線升級(jí)功能,升級(jí)到最新的版本。

目前,移動(dòng)終端在系統(tǒng)升級(jí)時(shí),只能下載該移動(dòng)終端的生產(chǎn)廠家的升級(jí)包,具體為:移動(dòng)終端通過(guò)key簽名對(duì)升級(jí)包進(jìn)行校驗(yàn),只有通過(guò)key簽名認(rèn)證的升級(jí)包才可以作為可信任的升級(jí)包進(jìn)行移動(dòng)終端系統(tǒng)升級(jí),從而避免了被惡意軟件利用導(dǎo)致系統(tǒng)安全性能的問(wèn)題。出于第三方測(cè)試要求以及安全方面的考慮,通常移動(dòng)終端在系統(tǒng)升級(jí)時(shí)需要根據(jù)key簽名對(duì)ota升級(jí)包進(jìn)行校驗(yàn),即從移動(dòng)終端的recovery鏡像根文件系統(tǒng)中的/res/keys加載公鑰源文件,然后加載嵌在ota升級(jí)包中的rsa簽名信息,并與/res/keys中保存的公鑰源文件進(jìn)行匹配,若匹配成功,則根據(jù)ota升級(jí)包進(jìn)行系統(tǒng)升級(jí),否則,校驗(yàn)失敗,退出ota升級(jí)。

然而,如當(dāng)前移動(dòng)終端使用的key簽名被破解不得不更換簽名,或者開(kāi)發(fā)人員在編譯新版本升級(jí)包時(shí),將生成t卡版本與生成ota升級(jí)包的順序調(diào)換,或在mk文件中使用了testkey,導(dǎo)致升級(jí)包與移動(dòng)終端的簽名信息不一致等,則根據(jù)key簽名對(duì)ota升級(jí)包的校驗(yàn)將校驗(yàn)失敗,導(dǎo)致移動(dòng)終端無(wú)法完成系統(tǒng)升級(jí)。



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

本發(fā)明實(shí)施例為解決現(xiàn)有技術(shù)中存在的由于升級(jí)包簽名校驗(yàn)失敗導(dǎo)致的無(wú)法完成系統(tǒng)升級(jí)的技術(shù)問(wèn)題,提供一種移動(dòng)終端的版本升級(jí)方法及裝置,既可避免由于升級(jí)包簽名校驗(yàn)失敗導(dǎo)致的無(wú)法完成系統(tǒng)升級(jí),同時(shí)又能保證升級(jí)包的安全性。

本發(fā)明實(shí)施例提供的具體技術(shù)方案如下:

一種移動(dòng)終端的版本升級(jí)方法,包括:

獲取系統(tǒng)升級(jí)文件,所述系統(tǒng)升級(jí)文件中攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,所述中間版本升級(jí)文件為所述目標(biāo)版本升級(jí)文件的在先版本,所述中間版本升級(jí)文件的簽名信息與移動(dòng)終端的公鑰文件相對(duì)應(yīng),且所述中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),所述目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù);

獲取移動(dòng)終端的公鑰文件,并根據(jù)所述公鑰文件和所述中間版本升級(jí)文件的簽名信息,將所述移動(dòng)終端的系統(tǒng)由當(dāng)前版本升級(jí)為中間版本;

在確認(rèn)升級(jí)成功后,繼續(xù)根據(jù)所述目標(biāo)版本升級(jí)文件,將所述移動(dòng)終端的系統(tǒng)由所述中間版本升級(jí)為目標(biāo)版本。

采用這種方法,通過(guò)將移動(dòng)終端首先升級(jí)到中間版本再升級(jí)到目標(biāo)版本,其中,在中間版本升級(jí)到目標(biāo)版本時(shí),不需要對(duì)移動(dòng)終端的公鑰文件與目標(biāo)版本的簽名信息進(jìn)行校驗(yàn),從而避免了目標(biāo)版本與移動(dòng)終端的key簽名不一致導(dǎo)致的校驗(yàn)失敗,無(wú)法完成系統(tǒng)升級(jí)的問(wèn)題。

較佳地,所述中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包。

較佳地,所述中間版本升級(jí)文件為升級(jí)全包。

較佳地,獲取系統(tǒng)升級(jí)文件,包括:

按照預(yù)設(shè)的系統(tǒng)升級(jí)文件的優(yōu)先級(jí),獲取所述中間版本升級(jí)文件后,再獲取所述目標(biāo)版本升級(jí)文件。

采用這種方法,可以先獲取中間版本升級(jí)文件后再獲取目標(biāo)版本升級(jí)文件。

較佳地,進(jìn)一步包括:

若將所述移動(dòng)終端的系統(tǒng)由所述中間版本升級(jí)為目標(biāo)版本失敗,則將所述移動(dòng)終端的系統(tǒng)回退至所述中間版本,并刪除所述系統(tǒng)升級(jí)文件中的目標(biāo)版本升級(jí)文件。

采用這種方法,在移動(dòng)終端的系統(tǒng)升級(jí)至目標(biāo)版本失敗時(shí),系統(tǒng)仍然升級(jí)到了中間版本,保證系統(tǒng)的更新升級(jí)。

一種移動(dòng)終端的版本升級(jí)方法,包括:

接收移動(dòng)終端的系統(tǒng)升級(jí)請(qǐng)求;

根據(jù)所述系統(tǒng)升級(jí)請(qǐng)求確定系統(tǒng)升級(jí)文件,并將所述系統(tǒng)升級(jí)文件發(fā)送至所述移動(dòng)終端,所述系統(tǒng)升級(jí)文件中攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,所述中間版本升級(jí)文件為所述目標(biāo)版本升級(jí)文件的在先版本,所述中間版本升級(jí)文件的簽名與所述移動(dòng)終端的公鑰文件相對(duì)應(yīng),且所述中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),所述目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù)。

采用這種方法,將中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件發(fā)送值移動(dòng)終端,保證了移動(dòng)終端首先升級(jí)到中間版本后再升級(jí)到目標(biāo)版本,其中,在中間版本升級(jí)到目標(biāo)版本時(shí),不需要對(duì)移動(dòng)終端的公鑰文件與目標(biāo)版本的簽名信息進(jìn)行校驗(yàn),從而避免了目標(biāo)版本與移動(dòng)終端的key簽名不一致導(dǎo)致的校驗(yàn)失敗,無(wú)法完成系統(tǒng)升級(jí)的問(wèn)題。

較佳地所述中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包。

較佳地,所述中間版本升級(jí)文件為升級(jí)全包。

一種移動(dòng)終端的版本升級(jí)裝置,包括:

獲取單元,用于獲取系統(tǒng)升級(jí)文件,所述系統(tǒng)升級(jí)文件中攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,所述中間版本升級(jí)文件為所述目標(biāo)版本升級(jí)文件的在先版本,所述中間版本升級(jí)文件的簽名信息與移動(dòng)終端的公鑰文件相對(duì)應(yīng),且所述中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),所述目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù);

第一升級(jí)單元,用于獲取移動(dòng)終端的公鑰文件,并根據(jù)所述公鑰文件和所述中間版本升級(jí)文件的簽名信息,將所述移動(dòng)終端的系統(tǒng)由當(dāng)前版本升級(jí)為中間版本;

第二升級(jí)單元,用于在確認(rèn)升級(jí)成功后,繼續(xù)根據(jù)所述目標(biāo)版本升級(jí)文件,將所述移動(dòng)終端的系統(tǒng)由所述中間版本升級(jí)為目標(biāo)版本。

這樣,通過(guò)將移動(dòng)終端首先升級(jí)到中間版本再升級(jí)到目標(biāo)版本,其中,在中間版本升級(jí)到目標(biāo)版本時(shí),不需要對(duì)移動(dòng)終端的公鑰文件與目標(biāo)版本的簽名信息進(jìn)行校驗(yàn),從而避免了目標(biāo)版本與移動(dòng)終端的key簽名不一致導(dǎo)致的校驗(yàn)失敗,無(wú)法完成系統(tǒng)升級(jí)的問(wèn)題。

較佳地,所述中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包。

較佳地,所述中間版本升級(jí)文件為升級(jí)全包。

較佳地,所述獲取單元獲取系統(tǒng)升級(jí)文件,包括:

按照預(yù)設(shè)的系統(tǒng)升級(jí)文件的優(yōu)先級(jí),獲取所述中間版本升級(jí)文件后,再獲取所述目標(biāo)版本升級(jí)文件。

這樣,獲取單元可以先獲取中間版本升級(jí)文件后再獲取目標(biāo)版本升級(jí)文件。

較佳地,所述第二升級(jí)單元,進(jìn)一步用于:

若將所述移動(dòng)終端的系統(tǒng)由所述中間版本升級(jí)為目標(biāo)版本失敗,則將所述移動(dòng)終端的系統(tǒng)回退至所述中間版本,并刪除所述系統(tǒng)升級(jí)文件中的目標(biāo)版本升級(jí)文件。

這樣,第二升級(jí)單元可以在移動(dòng)終端的系統(tǒng)升級(jí)至目標(biāo)版本失敗時(shí),系統(tǒng)仍然升級(jí)到了中間版本,保證系統(tǒng)的更新升級(jí)。

一種移動(dòng)終端的版本升級(jí)裝置,包括:

接收單元,用于接收移動(dòng)終端的系統(tǒng)升級(jí)請(qǐng)求;

發(fā)送單元,用于根據(jù)所述系統(tǒng)升級(jí)請(qǐng)求確定系統(tǒng)升級(jí)文件,并將所述系統(tǒng)升級(jí)文件發(fā)送至所述移動(dòng)終端,所述系統(tǒng)升級(jí)文件中攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,所述中間版本升級(jí)文件為所述目標(biāo)版本升級(jí)文件的在先版本,所述中間版本升級(jí)文件的簽名與所述移動(dòng)終端的公鑰文件相對(duì)應(yīng),且所述中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),所述目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù)。

這樣,服務(wù)器將中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件發(fā)送值移動(dòng)終端,保證了移動(dòng)終端首先升級(jí)到中間版本后再升級(jí)到目標(biāo)版本,其中,在中間版本升級(jí)到目標(biāo)版本時(shí),不需要對(duì)移動(dòng)終端的公鑰文件與目標(biāo)版本的簽名信息進(jìn)行校驗(yàn),從而避免了目標(biāo)版本與移動(dòng)終端的key簽名不一致導(dǎo)致的校驗(yàn)失敗,無(wú)法完成系統(tǒng)升級(jí)的問(wèn)題。

較佳地,所述中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包。

較佳地,所述中間版本升級(jí)文件為升級(jí)全包。

采用本發(fā)明技術(shù)方案,移動(dòng)終端由當(dāng)前版本升級(jí)到中間版本過(guò)程中,由于當(dāng)前版本與中間版本的簽名一致,因此可以通過(guò)校驗(yàn)并升級(jí)到中間版本。在由中級(jí)版本升級(jí)到目標(biāo)版本的過(guò)程中,因?yàn)橹虚g版本中的recovery是不帶key校驗(yàn)功能,這樣,可以保證移動(dòng)終端在與升級(jí)包簽名不一致的情況下仍可以完成系統(tǒng)升級(jí),且升級(jí)到最終版本中recovery中是帶有key校驗(yàn)功能的,這樣可以保證升級(jí)包的安全性,使系統(tǒng)在后續(xù)過(guò)程中仍然可以正常升級(jí)。

附圖說(shuō)明

圖1為本發(fā)明實(shí)施例提供的移動(dòng)終端側(cè)的一種移動(dòng)終端的版本升級(jí)方法的具體流程圖;

圖2為本發(fā)明實(shí)施例提供的服務(wù)器側(cè)的一種移動(dòng)終端的版本升級(jí)方法的具體流程圖;

圖3為本發(fā)明實(shí)施例提供的移動(dòng)終端側(cè)的一種移動(dòng)終端的版本升級(jí)裝置的結(jié)構(gòu)示意圖;

圖4為本發(fā)明實(shí)施例提供的服務(wù)器側(cè)的一種移動(dòng)終端的版本升級(jí)裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

采用本發(fā)明技術(shù)方案,能夠有效地避免現(xiàn)有技術(shù)中存在的由于key簽名校驗(yàn)失敗導(dǎo)致的無(wú)法完成系統(tǒng)升級(jí),進(jìn)而導(dǎo)致移動(dòng)終端中系統(tǒng)存在的缺陷無(wú)法解決的問(wèn)題。

本發(fā)明實(shí)施例提供了一種移動(dòng)終端的版本升級(jí)方法,應(yīng)用于各類智能移動(dòng)終端,如智能手機(jī),智能電視等終端設(shè)備,下面結(jié)合附圖對(duì)本發(fā)明優(yōu)選的實(shí)施方式進(jìn)行詳細(xì)說(shuō)明。

參閱圖1所示,本發(fā)明實(shí)施例提供的移動(dòng)終端側(cè)的一種移動(dòng)終端的版本升級(jí)方法的具體處理流程包括:

步驟101:獲取系統(tǒng)升級(jí)文件,該系統(tǒng)升級(jí)文件中至少攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,該中間版本升級(jí)文件為目標(biāo)版本升級(jí)文件的在先版本,中間版本升級(jí)文件的簽名信息與移動(dòng)終端的公鑰文件相對(duì)應(yīng),且中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù)。

在實(shí)際應(yīng)用中,移動(dòng)終端廠商會(huì)定期不斷的將移動(dòng)終端的完善后的系統(tǒng)升級(jí)文件上傳至服務(wù)器,通常系統(tǒng)升級(jí)文件以ota升級(jí)包的形式上傳至服務(wù)器。

移動(dòng)終端與對(duì)應(yīng)的服務(wù)器建立連接后,通過(guò)本地的在線升級(jí)功能獲取系統(tǒng)升級(jí)文件,即ota升級(jí)包。

其中,ota升級(jí)包通常為兩種類型,一種為ota全包,即包含整個(gè)系統(tǒng)所有應(yīng)用的系統(tǒng)升級(jí)文件,另一種為ota差分包,即只包含需要升級(jí)的(發(fā)生變化的)若干個(gè)應(yīng)用的系統(tǒng)升級(jí)文件。ota差分包相對(duì)于ota全包,通常較小。

移動(dòng)終端獲取的中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包(即ota差分包),或者為升級(jí)全包(即ota全包)。

例如,版本a與版本b之間的差分,版本b相對(duì)于版本a有部分應(yīng)用需要改進(jìn),則ota差分包只包含了需要改進(jìn)的這些部分應(yīng)用的升級(jí)文件,若移動(dòng)終端當(dāng)前的系統(tǒng)為版本a,需要升級(jí)到版本b時(shí),在移動(dòng)終端確定在線升級(jí)后,系統(tǒng)會(huì)下載版本a與版本b的ota差分包,系統(tǒng)安裝完成后,就會(huì)直接升級(jí)到版本b,另外,移動(dòng)終端還可以下載版本b的ota全包進(jìn)行升級(jí)。

當(dāng)移動(dòng)終端獲取系統(tǒng)升級(jí)文件時(shí),會(huì)獲取目標(biāo)版本升級(jí)文件(即最新版本的ota全包),以及中間版本升級(jí)文件(ota全包或ota差分包),其中,該中間版本升級(jí)文件為目標(biāo)版本升級(jí)文件的在先版本。

中間版本升級(jí)文件中的中的簽名信息應(yīng)該與移動(dòng)終端的簽名信息一致,即在編譯中間版本升級(jí)文件時(shí),設(shè)定其簽名信息與移動(dòng)終端的簽名信息或公鑰文件保持對(duì)應(yīng)。

其中,中間版本升級(jí)文件中的升級(jí)程序——recovery文件中,是不帶校驗(yàn)數(shù)據(jù)的,且目標(biāo)版本升級(jí)文件中的recovery文件中帶有校驗(yàn)數(shù)據(jù)。這樣,可以保證移動(dòng)終端升級(jí)到中間版本后,由于中間版本升級(jí)文件中的升級(jí)程序不帶校驗(yàn)數(shù)據(jù),不用在進(jìn)行簽名信息驗(yàn)證就可以直接升級(jí)至目標(biāo)版本,而升級(jí)到目標(biāo)版本后,在后續(xù)升級(jí)時(shí)可以繼續(xù)進(jìn)行檢驗(yàn),保證了移動(dòng)終端系統(tǒng)的安全性。

獲取系統(tǒng)升級(jí)文件時(shí),按照預(yù)設(shè)的系統(tǒng)升級(jí)文件的優(yōu)先級(jí),獲取中間版本升級(jí)文件后,再獲取目標(biāo)版本升級(jí)文件。

優(yōu)選的,可以根據(jù)移動(dòng)終端發(fā)送的系統(tǒng)升級(jí)請(qǐng)求,設(shè)置中間版本升級(jí)文件的優(yōu)先級(jí)高于目標(biāo)版本升級(jí)文件,這樣,可以優(yōu)先下載中間版本升級(jí)文件,確定下載完成后繼續(xù)下載目標(biāo)版本升級(jí)文件。

步驟102:獲取移動(dòng)終端的公鑰文件,并根據(jù)該公鑰文件和中間版本升級(jí)文件的簽名信息,將移動(dòng)終端的系統(tǒng)由當(dāng)前版本升級(jí)為中間版本。

優(yōu)選的,執(zhí)行步驟102時(shí),具體包括以下步驟:

針對(duì)公鑰文件和系統(tǒng)升級(jí)文件中中間版本升級(jí)文件中的簽名信息進(jìn)行校驗(yàn),當(dāng)判定該中間版本升級(jí)文件中的簽名信息與該公鑰文件相對(duì)應(yīng)時(shí),根據(jù)該中間版本升級(jí)文件,將移動(dòng)終端的系統(tǒng)由當(dāng)前版本升級(jí)為中間版本。

具體的,獲取移動(dòng)終端的公鑰文件時(shí),包括,從移動(dòng)終端當(dāng)前系統(tǒng)的版本中的recovery鏡像根文件系統(tǒng)的/res/keys加載公鑰文件。

針對(duì)公鑰文件和系統(tǒng)升級(jí)文件中中間版本升級(jí)文件中的簽名信息進(jìn)行校驗(yàn)時(shí),首先加載嵌在中間版本升級(jí)文件(即ota升級(jí)包)中的rsa簽名信息,然后將該rsa簽名信息與/res/keys中保存的公鑰文件進(jìn)行匹配,若校驗(yàn)通過(guò),移動(dòng)終端的系統(tǒng)可以由當(dāng)前版本升級(jí)到中間版本。

步驟103:在確認(rèn)升級(jí)成功后,繼續(xù)根據(jù)目標(biāo)版本升級(jí)文件,將移動(dòng)終端的系統(tǒng)由中間版本升級(jí)為目標(biāo)版本。

其中,根據(jù)系統(tǒng)升級(jí)文件中攜帶的目標(biāo)版本升級(jí)文件,將移動(dòng)終端的系統(tǒng)由中間版本升級(jí)為目標(biāo)版本,包括:

基于中間版本中的升級(jí)程序,根據(jù)系統(tǒng)升級(jí)文件中攜帶的目標(biāo)版本升級(jí)文件將移動(dòng)終端的系統(tǒng)由中間版本升級(jí)為目標(biāo)版本。

具體的,在根據(jù)目標(biāo)版本升級(jí)文件升級(jí)移動(dòng)終端的系統(tǒng)時(shí),由于中間版本升級(jí)程序中的recovery文件中是不帶校驗(yàn)功能的,因此不需要針對(duì)移動(dòng)終端的公鑰文件和該目標(biāo)版本升級(jí)文件中的簽名信息進(jìn)行校驗(yàn),而是通過(guò)該目標(biāo)版本升級(jí)文件直接將移動(dòng)終端的系統(tǒng)進(jìn)行升級(jí)。這樣,避免了目標(biāo)版本升級(jí)文件與移動(dòng)終端的公鑰文件之間因?yàn)閗ey簽名不一致導(dǎo)致校驗(yàn)失敗,進(jìn)而導(dǎo)致的無(wú)法完成系統(tǒng)升級(jí)的現(xiàn)象。

進(jìn)一步的,若將移動(dòng)終端的系統(tǒng)由中間版本升級(jí)為目標(biāo)版本失敗,則將移動(dòng)終端的系統(tǒng)回退至中間版本,并刪除升級(jí)文件中的目標(biāo)版本升級(jí)文件。

這樣,在移動(dòng)終端在升級(jí)到目標(biāo)版本時(shí)失敗的情況下,移動(dòng)終端的系統(tǒng)仍然升級(jí)到了中間版本,相對(duì)于之前的版本,系統(tǒng)仍然進(jìn)行了升級(jí)和改進(jìn)。

例如,當(dāng)前移動(dòng)終端的系統(tǒng)為版本b(簽名為key2),升級(jí)的目標(biāo)版本為版本c(簽名為key1),以前發(fā)布的版本為a(簽名為key1),移動(dòng)終端若將系統(tǒng)從版本b直接升級(jí)到版本c,升級(jí)時(shí),由于版本b和版本c中的簽名不一致,因此無(wú)法通過(guò)簽名校驗(yàn),升級(jí)失敗。因此,設(shè)置一個(gè)中間版本——版本c0,但是版本c0中的recovery中不包含key簽名校驗(yàn)功能。然后還需要做一個(gè)版本b到版本c0的ota差分包——版本b-版本c0(即中間版本升級(jí)文件,簽名為key2),由于版本b與版本b-版本c0的簽名均為key2,因此,在升級(jí)過(guò)程中簽名校驗(yàn)可以通過(guò),移動(dòng)終端可以升級(jí)到版本c0,當(dāng)移動(dòng)終端升級(jí)到c0后,系統(tǒng)再檢測(cè)目標(biāo)版本c的ota全包,雖然版本c用的key1簽名,但是由于升級(jí)時(shí),版本c0的recovery中不包含key簽名校驗(yàn)功能,因此可以不經(jīng)過(guò)簽名校驗(yàn),直接升級(jí),最終升級(jí)到目標(biāo)版本。其中,版本b-版本c0的生成過(guò)程為:需要針對(duì)以前發(fā)布的版本a對(duì)應(yīng)的中間文件src.zip,通過(guò)命令“java-xmx2048m-jarsignapk.jar-wkey2/releasekey.x509.pemkey2/releasekey.pk8src.ziptarget.zip”重新用key2進(jìn)行簽名并形成target.zip,然后再用之前編譯生成的用key2簽過(guò)名的中間文件與target.zip結(jié)合,形成最終的中間版本升級(jí)文件版本b-版本c0。

又例如,當(dāng)前移動(dòng)終端的系統(tǒng)為版本d(簽名為key_old),升級(jí)的目標(biāo)版本為版本f(簽名為key_new),移動(dòng)終端若將系統(tǒng)從版本d直接升級(jí)到版本f,升級(jí)時(shí),由于版本d和版本f中的簽名不一致,因此無(wú)法通過(guò)簽名校驗(yàn),升級(jí)失敗。因此,設(shè)置一個(gè)中間版本——版本e,其中,版本e為ota全包,簽名為key_old,且版本e中的recovery中不包含key簽名校驗(yàn)功能。然后移動(dòng)終端下載版本e的ota全包后,由于版本d與版本e的簽名均為key_old,因此,在升級(jí)過(guò)程中簽名校驗(yàn)可以通過(guò),移動(dòng)終端可以升級(jí)到版本e,當(dāng)移動(dòng)終端升級(jí)到e后,系統(tǒng)再檢測(cè)目標(biāo)版本f的ota全包,雖然版本f用的key_new簽名,但是由于升級(jí)時(shí),版本e的recovery中不包含key簽名校驗(yàn)功能,因此可以不經(jīng)過(guò)簽名校驗(yàn),直接升級(jí),最終升級(jí)到目標(biāo)版本f。

目標(biāo)版本升級(jí)文件必須為升級(jí)全包,因?yàn)槟繕?biāo)版本和中間版本簽名信息不一致,若仍選擇升級(jí)差分包進(jìn)行升級(jí),升級(jí)完后未升級(jí)的應(yīng)用的簽名跟中間版本一致,而升級(jí)后的應(yīng)用的簽名跟目標(biāo)版本一致,會(huì)導(dǎo)致升級(jí)后的應(yīng)用會(huì)出現(xiàn)運(yùn)行異常。

通過(guò)本發(fā)明實(shí)施例中在移動(dòng)終端由當(dāng)前版本升級(jí)到中間版本過(guò)程中需要通過(guò)key簽名校驗(yàn),且該中間版本中的recovery是不帶key校驗(yàn)功能,這樣,可以保證移動(dòng)終端在與升級(jí)包簽名不一致的情況下仍可以完成系統(tǒng)升級(jí),且升級(jí)到最終版本中recovery中是帶有key校驗(yàn)功能的,這樣可以保證升級(jí)包的安全性,使系統(tǒng)在后續(xù)過(guò)程中仍然可以正常升級(jí)。

基于上述實(shí)施例,參閱圖2所示,本發(fā)明實(shí)施例還提供了服務(wù)器側(cè)一種移動(dòng)終端的版本升級(jí)方法,該方法的具體處理流程包括:

步驟201:接收移動(dòng)終端的系統(tǒng)升級(jí)請(qǐng)求。

步驟202:根據(jù)系統(tǒng)升級(jí)請(qǐng)求確定系統(tǒng)升級(jí)文件,并將系統(tǒng)升級(jí)文件發(fā)送至移動(dòng)終端,系統(tǒng)升級(jí)文件中攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,中間版本升級(jí)文件為目標(biāo)版本升級(jí)文件的在先版本,中間版本升級(jí)文件的簽名與移動(dòng)終端的公鑰文件相對(duì)應(yīng),且中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù)。

中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包,或升級(jí)全包。

基于上述實(shí)施例,參閱圖3所示,本發(fā)明實(shí)施例還提供了移動(dòng)終端側(cè)的一種移動(dòng)終端的版本升級(jí)裝置,該裝置包括:獲取單元301、第一升級(jí)單元302以及第二升級(jí)單元303,其中,

獲取單元301,用于獲取系統(tǒng)升級(jí)文件,系統(tǒng)升級(jí)文件中攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,中間版本升級(jí)文件為目標(biāo)版本升級(jí)文件的在先版本,中間版本升級(jí)文件的簽名信息與移動(dòng)終端的公鑰文件相對(duì)應(yīng),且中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù);

第一升級(jí)單元302,用于獲取移動(dòng)終端的公鑰文件,并根據(jù)公鑰文件和中間版本升級(jí)文件的簽名信息,將移動(dòng)終端的系統(tǒng)由當(dāng)前版本升級(jí)為中間版本;

第二升級(jí)單元303,用于在確認(rèn)升級(jí)成功后,繼續(xù)根據(jù)目標(biāo)版本升級(jí)文件,將移動(dòng)終端的系統(tǒng)由中間版本升級(jí)為目標(biāo)版本。

中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包。

中間版本升級(jí)文件為升級(jí)全包。

獲取單元301獲取系統(tǒng)升級(jí)文件,包括:

按照預(yù)設(shè)的系統(tǒng)升級(jí)文件的優(yōu)先級(jí),獲取中間版本升級(jí)文件后,再獲取目標(biāo)版本升級(jí)文件。

第二升級(jí)單元303,進(jìn)一步用于:

若將移動(dòng)終端的系統(tǒng)由中間版本升級(jí)為目標(biāo)版本失敗,則將移動(dòng)終端的系統(tǒng)回退至中間版本,并刪除系統(tǒng)升級(jí)文件中的目標(biāo)版本升級(jí)文件。

基于上述實(shí)施例,參閱圖4所示,本發(fā)明實(shí)施例還提供了服務(wù)器側(cè)的一種移動(dòng)終端的版本升級(jí)裝置,該裝置包括:接收單元401和發(fā)送單元402,其中,

接收單元401,用于接收移動(dòng)終端的系統(tǒng)升級(jí)請(qǐng)求;

發(fā)送單元402,用于根據(jù)系統(tǒng)升級(jí)請(qǐng)求確定系統(tǒng)升級(jí)文件,并將系統(tǒng)升級(jí)文件發(fā)送至移動(dòng)終端,系統(tǒng)升級(jí)文件中攜帶中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,其中,中間版本升級(jí)文件為目標(biāo)版本升級(jí)文件的在先版本,中間版本升級(jí)文件的簽名與移動(dòng)終端的公鑰文件相對(duì)應(yīng),且中間版本升級(jí)文件中的升級(jí)程序不攜帶校驗(yàn)數(shù)據(jù),目標(biāo)版本升級(jí)文件中的升級(jí)程序攜帶校驗(yàn)數(shù)據(jù)。

中間版本升級(jí)文件為相對(duì)于移動(dòng)終端當(dāng)前版本的升級(jí)差分包。

中間版本升級(jí)文件為升級(jí)全包。

綜上所述,通過(guò)本發(fā)明實(shí)施例中提供的一種移動(dòng)終端的版本升級(jí)方法和裝置,該方法通過(guò)獲取包含中間版本升級(jí)文件和目標(biāo)版本升級(jí)文件,將移動(dòng)終端的系統(tǒng)由當(dāng)前版本升級(jí)到中間版本,最終實(shí)現(xiàn)將移動(dòng)終端升級(jí)到目標(biāo)版本,這樣,通過(guò)將移動(dòng)終端首先升級(jí)到中間版本再升級(jí)到目標(biāo)版本,其中,在中間版本升級(jí)到目標(biāo)版本時(shí),不需要對(duì)移動(dòng)終端的公鑰文件與目標(biāo)版本的簽名信息進(jìn)行校驗(yàn),從而避免了由于升級(jí)包簽名校驗(yàn)失敗導(dǎo)致的無(wú)法完成系統(tǒng)升級(jí),同時(shí)又能保證升級(jí)包的安全性。

盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。

顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明實(shí)施例進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明實(shí)施例的精神和范圍。這樣,倘若本發(fā)明實(shí)施例的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
容城县| 方山县| 博客| 江城| 云和县| 荣成市| 荣成市| 永春县| 双柏县| 于田县| 延庆县| 铁岭县| 收藏| 平塘县| 会昌县| 宣武区| 陆川县| 锡林郭勒盟| 枣强县| 社旗县| 两当县| 大城县| 平顶山市| 白沙| 高安市| 西城区| 邯郸县| 鸡西市| 探索| 志丹县| 镇平县| 万安县| 台前县| 建昌县| 华宁县| 宁城县| 阿鲁科尔沁旗| 宁南县| 江源县| 闵行区| 龙海市|