專(zhuān)利名稱(chēng):一種防止移動(dòng)終端升級(jí)到非法固件版本的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動(dòng)終端固件升級(jí)領(lǐng)域,特別涉及防止非法固件升級(jí)技術(shù)。
背景技術(shù):
移動(dòng)終端,亦稱(chēng)移動(dòng)通信終端,是指便攜的移動(dòng)計(jì)算機(jī)設(shè)備,廣義的講,包括手機(jī)、數(shù)據(jù)卡、平板電腦等。固件是指擔(dān)任著一個(gè)數(shù)碼產(chǎn)品最基礎(chǔ)、最底層工作的軟件,一般存儲(chǔ)于設(shè)備中的EEPROM或FLASH芯片中,可由用戶(hù)通過(guò)特定的固件升級(jí)工具進(jìn)行升級(jí)。固件升級(jí)工具是指用于升級(jí)移動(dòng)終端上的固件版本的輔助軟件。由于固件版本和終端硬件緊密相關(guān),早期的移動(dòng)終端的固件一般只能由生產(chǎn)廠商提供。廠商在發(fā)布固件版本前會(huì)經(jīng)過(guò)詳細(xì)的測(cè)試和驗(yàn)證,從而保證固件版本與移動(dòng)終端能夠良好匹配,且其功能滿(mǎn)足用戶(hù)及運(yùn)營(yíng)商的要求。隨著智能移動(dòng)終端及其操作系統(tǒng)的發(fā)展,尤其是開(kāi)源的Android操作系統(tǒng)的發(fā)展,除終端廠商外,大量的個(gè)人或第三方公司也開(kāi)始開(kāi)發(fā)并提供移動(dòng)終端固件。這類(lèi)非終端廠商提供的固件版本,可能存在以下問(wèn)題I、由于這類(lèi)版本往往是較通用版本,并沒(méi)有針對(duì)特定硬件配置進(jìn)行專(zhuān)門(mén)的測(cè)試和驗(yàn)證,不能保證與終端設(shè)備良好匹配;2、固件版本中可能含有惡意潛藏程序、病毒等破壞性程序,安全性無(wú)法保證;3、不能滿(mǎn)足運(yùn)營(yíng)商定制要求,定制移動(dòng)終端通常對(duì)固件版本有特殊的定制要求,如要求內(nèi)置特定應(yīng)用、只能接入特定運(yùn)營(yíng)商的移動(dòng)網(wǎng)絡(luò)等。這種情況下,運(yùn)營(yíng)商通常不允許用戶(hù)隨意升級(jí)終端固件。目前常見(jiàn)的固件升級(jí)方法通常是PC側(cè)升級(jí)工具與移動(dòng)終端建立數(shù)據(jù)傳輸通道(USB、虛擬串口、網(wǎng)口等);并將預(yù)先存儲(chǔ)在PC側(cè)存儲(chǔ)介質(zhì)中的固件版本文件依次傳送給移動(dòng)終端數(shù)據(jù)接收模塊,數(shù)據(jù)接收模塊再將接收到的數(shù)據(jù)轉(zhuǎn)存到移動(dòng)終端的存儲(chǔ)介質(zhì)中。該過(guò)程并未對(duì)所用升級(jí)工具的合法性進(jìn)行驗(yàn)證,也未對(duì)固件版本的合法性進(jìn)行驗(yàn)證,且移動(dòng)終端上也沒(méi)有固件合法性驗(yàn)證機(jī)制。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種防止移動(dòng)終端升級(jí)到非法固件版本的方法及系統(tǒng),能夠克服現(xiàn)有固件升級(jí)技術(shù)中存在的不能檢驗(yàn)固件版本合法性,進(jìn)而導(dǎo)致無(wú)法保證待升級(jí)固件版本與待升級(jí)移動(dòng)終端匹配的問(wèn)題和缺陷。根據(jù)本發(fā)明的一個(gè)方面,提供了一種防止移動(dòng)終端升級(jí)到非法固件版本的方法,包括升級(jí)工具對(duì)待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,將握手認(rèn)證信息發(fā)送至移動(dòng)終端;移動(dòng)終端利用所述握手認(rèn)證信息,對(duì)所述升級(jí)工具進(jìn)行握手校驗(yàn)處理,并根據(jù)握手校驗(yàn)結(jié)果,接收升級(jí)工具下發(fā)的待升級(jí)固件版本;移動(dòng)終端對(duì)收到的所述待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,進(jìn)行固件版本升級(jí)。優(yōu)選地,所述待升級(jí)固件版本的每個(gè)版本文件均具有數(shù)字簽名,升級(jí)工具利用其預(yù)存的簽名密鑰,對(duì)每個(gè)版本文件的數(shù)字簽名進(jìn)行校驗(yàn),若所述待升級(jí)固件版本的每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本。優(yōu)選地,當(dāng)升級(jí)工具確定所述待升級(jí)固件版本是合法固件版本時(shí),生成包含握手認(rèn)證指令和握手認(rèn)證數(shù)據(jù)的握手認(rèn)證信息,并發(fā)送至移動(dòng)終端。優(yōu)選地,移動(dòng)終端收到所述握手認(rèn)證信息后,利用其預(yù)存的握手密鑰對(duì)所述握手認(rèn)證數(shù)據(jù)中的密文數(shù)據(jù)進(jìn)行解密處理,并將得到明文數(shù)據(jù)與所述握手認(rèn)證數(shù)據(jù)中的明文數(shù)據(jù)進(jìn)行匹配,以便確定移動(dòng)終端與升級(jí)工具成功握手。優(yōu)選地,還包括移動(dòng)終端確定其與升級(jí)工具握手成功后,根據(jù)來(lái)自升級(jí)工具的模式切換信息切換到升級(jí)模式,以便接收升級(jí)工具下發(fā)的固件版本。優(yōu)選地,移動(dòng)終端利用其預(yù)存的簽名密鑰,對(duì)收到的待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本。優(yōu)選地,還包括移動(dòng)終端使用所述待升級(jí)固件版本替換當(dāng)前固件版本,并在利用所述待升級(jí)固件版本重啟期間,對(duì)所述待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理。。根據(jù)本發(fā)明的另一方面,提供了一種防止移動(dòng)終端升級(jí)到非法固件版本的系統(tǒng),包括升級(jí)工具,用于對(duì)待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,將握手認(rèn)證信息發(fā)送至移動(dòng)終端;移動(dòng)終端,用于利用所述握手認(rèn)證信息,對(duì)所述升級(jí)工具進(jìn)行握手校驗(yàn)處理,根據(jù)握手校驗(yàn)結(jié)果,接收升級(jí)工具下發(fā)的待升級(jí)固件版本,并對(duì)所收到的待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,根據(jù)版本合法性校驗(yàn)結(jié)果,進(jìn)行固件版本升級(jí)。優(yōu)選地,所述升級(jí)工具包括簽名校驗(yàn)?zāi)K,用于利用其預(yù)存的簽名密鑰,對(duì)待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若所述每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本;握手驗(yàn)證模塊,用于當(dāng)確定所述待升級(jí)固件版本是合法固件版本時(shí),生成包含握手認(rèn)證指令和握手認(rèn)證數(shù)據(jù)的握手認(rèn)證信息,并發(fā)送至移動(dòng)終端。優(yōu)選地,所述移動(dòng)終端包括握手認(rèn)證模塊,用于在收到所述握手認(rèn)證信息后,利用其預(yù)存的握手密鑰對(duì)所述握手認(rèn)證數(shù)據(jù)中的密文數(shù)據(jù)進(jìn)行解密處理,并將得到明文數(shù)據(jù)與所述握手認(rèn)證數(shù)據(jù)中的明文數(shù)據(jù)進(jìn)行匹配,以便確定移動(dòng)終端與升級(jí)工具成功握手;簽名校驗(yàn)?zāi)K,用于利用其預(yù)存的簽名密鑰,對(duì)收到的待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本。與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于本發(fā)明能夠防止將移動(dòng)終端升級(jí)到非法固件版本,提高了移動(dòng)終端升級(jí)過(guò)程的安全性,有效保證了終端用戶(hù)及運(yùn)營(yíng)商的利益不受非法固件的侵害。
圖I是本發(fā)明實(shí)施例提供的防止移動(dòng)終端升級(jí)到非法固件版本的方法框圖;圖2是本發(fā)明實(shí)施例提供的防止移動(dòng)終端升級(jí)到非法固件版本的流程圖;圖3是本發(fā)明實(shí)施例提供的移動(dòng)終端的組成結(jié)構(gòu)圖;圖4是本發(fā)明實(shí)施例提供的升級(jí)工具的組成結(jié)構(gòu)圖;圖5是本發(fā)明實(shí)施例提供的版本文件后的數(shù)字簽名組成結(jié)構(gòu)圖。
具體實(shí)施例方式以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說(shuō)明,應(yīng)當(dāng)理解,以下所說(shuō)明的優(yōu)選實(shí)施例僅用于說(shuō)明和解釋本發(fā)明,并不用于限定本發(fā)明。針對(duì)以上這些情況,本發(fā)明提出了一種基于加密技術(shù)和數(shù)字簽名技術(shù)的、防止將移動(dòng)終端升級(jí)到非法固件版本的方法和系統(tǒng)。該方法圖I是本發(fā)明實(shí)施例提供的防止移動(dòng)終端升級(jí)到非法固件版本的方法框圖,如圖I所示,步驟包括步驟101 :升級(jí)工具驗(yàn)證主控設(shè)備上存儲(chǔ)的待升級(jí)固件版本的合法性。所述待升級(jí)固件版本具有多個(gè)版本文件,其每個(gè)具有數(shù)字簽名,升級(jí)工具利用其預(yù)存的簽名密鑰,對(duì)每個(gè)版本文件的數(shù)字簽名進(jìn)行校驗(yàn)。當(dāng)所述待升級(jí)固件版本的每個(gè)版本文件均校驗(yàn)成功時(shí),升級(jí)工具確定所述待升級(jí)固件版本是合法固件版本。步驟102 :升級(jí)工具與移動(dòng)終端通過(guò)握手相互認(rèn)證。首先,升級(jí)工具確定主控設(shè)備上存儲(chǔ)的待升級(jí)固件版本是合法固件版本后,向移動(dòng)終端下發(fā)包含握手認(rèn)證指令和握手認(rèn)證數(shù)據(jù)的握手認(rèn)證信息。其次,移動(dòng)終端收到所述握手認(rèn)證信息后,校驗(yàn)其中的握手認(rèn)證數(shù)據(jù),并將握手校驗(yàn)結(jié)果反饋至所述升級(jí)工具。當(dāng)握手校驗(yàn)成功時(shí),移動(dòng)終端確定所述升級(jí)工具為合法升級(jí)工具,否則將所述升級(jí)工具確定為非法升級(jí)工具。然后,升級(jí)工具接收來(lái)自移動(dòng)終端的握手認(rèn)證結(jié)果,若成功,則向移動(dòng)終端發(fā)送模式切換信息,以便通知移動(dòng)終端切換到升級(jí)模式。最后,移動(dòng)終端收到所述模式切換信息后,檢查握手認(rèn)證是否成功,若成功,則切入到升級(jí)模式。步驟103 :升級(jí)工具向移動(dòng)終端傳輸待升級(jí)固件版本。所述待升級(jí)固件版本具有多個(gè)版本文件,升級(jí)工具將所述多個(gè)版本文件依次下發(fā)至移動(dòng)終端。步驟104 :移動(dòng)終端依次接收所述多個(gè)版本文件,并對(duì)收到的版本文件進(jìn)行校驗(yàn)。移動(dòng)終端利用其預(yù)存的簽名密鑰,對(duì)收到的待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本。
步驟105 :移動(dòng)終端使用收到的待升級(jí)固件版本替換舊版本。升級(jí)工具通知移動(dòng)終端所有版本文件下發(fā)完成,要求移動(dòng)終端替換舊版本。此時(shí),移動(dòng)終端用存儲(chǔ)在備用存儲(chǔ)區(qū)中的待升級(jí)固件版本替換當(dāng)前版本。步驟106 :移動(dòng)終端重啟,完成升級(jí)過(guò)程。升級(jí)工具通知移動(dòng)終端退出升級(jí)模式并重啟。此時(shí),移動(dòng)終端采用新固件版本重啟,啟動(dòng)過(guò)程中仍會(huì)對(duì)固件版本的各版本文件進(jìn)行數(shù)字簽名驗(yàn)證,升級(jí)過(guò)程完成。通過(guò)步驟101至步驟106可知,本發(fā)明通過(guò)如下四個(gè)技術(shù)手段實(shí)現(xiàn)防止非法固件升級(jí)的目標(biāo)I、所述升級(jí)工具對(duì)所述固件版本的各版本文件進(jìn)行簽名校驗(yàn)。運(yùn)行在主控設(shè)備上的升級(jí)工具在執(zhí)行升級(jí)操作前會(huì)先對(duì)保存在主控設(shè)備上的固件版本的各版本文件進(jìn)行簽名校驗(yàn),若不存在簽名信息或簽名信息校驗(yàn)失敗,則不允許移動(dòng)終端升級(jí)。因此,在升級(jí)工具層面能夠有效防止來(lái)源不明的非法固件版本升級(jí)。2、所述升級(jí)工具與所述移動(dòng)終端之間的相互認(rèn)證。移動(dòng)終端正常啟動(dòng)時(shí)處于禁止升級(jí)狀態(tài),升級(jí)工具在下發(fā)固件版本給移動(dòng)終端前,會(huì)發(fā)送握手認(rèn)證信息,移動(dòng)終端收到握手認(rèn)證信息后進(jìn)行校驗(yàn)。如果校驗(yàn)失敗,則認(rèn)為該升級(jí)工具是非法升級(jí)工具,移動(dòng)終端保持禁止升級(jí)的狀態(tài),不允許執(zhí)行后續(xù)的升級(jí)動(dòng)作。因此,可防止用戶(hù)采用非法升級(jí)工具繞過(guò)對(duì)版本文件的簽名校驗(yàn)過(guò)程。3、所述移動(dòng)終端對(duì)所述固件版本的各版本文件的校驗(yàn)。升級(jí)過(guò)程中,移動(dòng)終端每收到一個(gè)版本文件,就會(huì)對(duì)該版本文件的數(shù)字簽名進(jìn)行校驗(yàn),若失敗則停止升級(jí)過(guò)程。因此,可防止非法工具繞過(guò)移動(dòng)終端認(rèn)證機(jī)制對(duì)其進(jìn)行固件升級(jí)。4、所述移動(dòng)終端啟動(dòng)過(guò)程中對(duì)固件版本的各版本文件的校驗(yàn)。移動(dòng)終端啟動(dòng)過(guò)程中會(huì)對(duì)版本文件的數(shù)字簽名進(jìn)行驗(yàn)證,若無(wú)數(shù)字簽名信息或數(shù)字簽名驗(yàn)證失敗,則給出用戶(hù)提示并進(jìn)入升級(jí)模式,直到升級(jí)至合法的數(shù)字簽名版本。因此,可防止通過(guò)直接燒錄存儲(chǔ)介質(zhì)的方式將移動(dòng)終端升級(jí)到非法固件版本。圖2是本發(fā)明實(shí)施例提供的防止移動(dòng)終端升級(jí)到非法固件版本的實(shí)現(xiàn)流程圖,如圖2所示,步驟包括步驟I :升級(jí)工具利用與移動(dòng)終端廠商的數(shù)字簽名所用密鑰配對(duì)的簽名密鑰及對(duì)應(yīng)的摘要算法對(duì)主控設(shè)備上存儲(chǔ)的固件版本的各版本文件逐一進(jìn)行合法性校驗(yàn)。步驟2 :若所有固件版本的各版本文件均合法,則升級(jí)工具向移動(dòng)終端下發(fā)握手認(rèn)證指令和握手認(rèn)證數(shù)據(jù)的握手認(rèn)證信息,其中,所述握手認(rèn)證數(shù)據(jù)包括加密前的明文和加密后的密文。步驟3 :移動(dòng)終端收到握手認(rèn)證指令后,采用自身存儲(chǔ)的握手密鑰對(duì)所述密文數(shù)據(jù)解密,并校驗(yàn)解密得到的數(shù)據(jù)與接收到的明文數(shù)據(jù)是否一致。若一致,則將內(nèi)部的握手成功標(biāo)志置為真,并反饋握手成功的信息給升級(jí)工具。步驟4 :升級(jí)工具收到握手校驗(yàn)結(jié)果后,檢驗(yàn)握手是否成功。若成功,則向移動(dòng)終端發(fā)送模式切換信息,通知移動(dòng)終端切換到升級(jí)模式。步驟5 :移動(dòng)終端接收到模式切換信息后,檢查握手成功標(biāo)志位是否為真。步驟6 :若為真則切換到升級(jí)模式,并將模式切換成功的信息反饋給升級(jí)工具。
步驟7 :升級(jí)工具接收并檢測(cè)模式切換信息的反饋信息。若切換成功,則下發(fā)固件版本的第一個(gè)版本文件給移動(dòng)終端。步驟8 :移動(dòng)終端接收該版本文件,暫存在備用存儲(chǔ)區(qū),并對(duì)版本文件的數(shù)字簽名進(jìn)行校驗(yàn)。若合法,則向升級(jí)工具反饋版本文件接收成功的消息。步驟9 :逐一下發(fā)固件版本中的各個(gè)版本文件,直至全部下發(fā)完畢后,升級(jí)工具通知移動(dòng)終端所有版本文件下發(fā)完成,要求移動(dòng)終端替換IH版本。步驟10 :移動(dòng)終端用存儲(chǔ)在備用存儲(chǔ)區(qū)中的固件版本替換當(dāng)前版本,并向升級(jí)工具反饋版本替換結(jié)果。步驟11 :升級(jí)工具檢查版本替換信息,若替換成功,則通知移動(dòng)終端退出升級(jí)模式并重啟。步驟12 :移動(dòng)終端采用新固件版本重啟,重啟過(guò)程中,依次檢測(cè)各個(gè)版本文件的數(shù)字簽名是否合法。若均合法,則正常啟動(dòng),升級(jí)過(guò)程完成。步驟13 :若移動(dòng)終端重啟過(guò)程中,檢測(cè)到版本文件異常,則提示用戶(hù),并自動(dòng)進(jìn)入升級(jí)模式。直到終端被升級(jí)到合法固件版本。在上述過(guò)程中,有關(guān)防止非法固件升級(jí)的步驟說(shuō)明如下I、步驟I中,升級(jí)工具會(huì)對(duì)固件版本的各版本文件的合法性進(jìn)行校驗(yàn),校驗(yàn)失敗則中止升級(jí)過(guò)程,從而防止對(duì)未經(jīng)簽名的非法固件升級(jí)。2、步驟2 — 5中,升級(jí)工具會(huì)與移動(dòng)終端進(jìn)行握手,從而防止未經(jīng)認(rèn)證的非法升級(jí)工具對(duì)移動(dòng)終端進(jìn)行升級(jí)。3、步驟8中,移動(dòng)終端會(huì)對(duì)接收到的版本文件進(jìn)行合法性校驗(yàn),從而確保接收的版本文件是合法的。4.步驟13中,當(dāng)升級(jí)完成后移動(dòng)終端弟一次重啟時(shí),會(huì)利用固化在移動(dòng)終端ROM中的簽名校驗(yàn)?zāi)K對(duì)加載的每一個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若不成功則自動(dòng)切入升級(jí)模式,等待握手認(rèn)證,直到升級(jí)到合法版本。本發(fā)明還提供了一種防止移動(dòng)終端升級(jí)到非法固件版本的系統(tǒng),包括移動(dòng)終端和運(yùn)行于主控設(shè)備(如PC)上的升級(jí)工具,通過(guò)移動(dòng)終端和升級(jí)工具的相互驗(yàn)證,以及兩者對(duì)待升級(jí)固件版本的每個(gè)版本文件的驗(yàn)證,實(shí)現(xiàn)了阻止將設(shè)備升級(jí)到非法固件版本的功能。所述移動(dòng)終端,用于利用所述握手認(rèn)證信息,對(duì)所述升級(jí)工具進(jìn)行握手校驗(yàn)處理,根據(jù)握手校驗(yàn)結(jié)果,接收升級(jí)工具下發(fā)的待升級(jí)固件版本,并對(duì)所收到的待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,根據(jù)版本合法性校驗(yàn)結(jié)果,進(jìn)行固件版本升級(jí)。圖3是本發(fā)明實(shí)施例提供的移動(dòng)終端的組成結(jié)構(gòu)圖,如圖3所示,包括握手認(rèn)證模塊,用于在收到所述握手認(rèn)證信息后,利用其預(yù)存的握手密鑰對(duì)所述握手認(rèn)證數(shù)據(jù)中的密文數(shù)據(jù)進(jìn)行解密處理,并將得到明文數(shù)據(jù)與所述握手認(rèn)證數(shù)據(jù)中的明文數(shù)據(jù)進(jìn)行匹配,以便確定移動(dòng)終端與升級(jí)工具成功握手;簽名校驗(yàn)?zāi)K,用于利用其預(yù)存的簽名密鑰,對(duì)收到的待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本;升級(jí)代理模塊,用于與升級(jí)工具進(jìn)行交互;其它業(yè)務(wù)功能模塊,用于實(shí)現(xiàn)短消息業(yè)務(wù)和通話(huà)業(yè)務(wù)等其它業(yè)務(wù)功能。
所述升級(jí)工具用于對(duì)待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,將握手認(rèn)證信息發(fā)送至移動(dòng)終端。圖4是本發(fā)明實(shí)施例提供的升級(jí)工具的組成結(jié)構(gòu)圖,如圖4所示,包括簽名校驗(yàn)?zāi)K,用于利用其預(yù)存的簽名密鑰,對(duì)待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若所述每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本;握手驗(yàn)證模塊,用于當(dāng)確定所述待升級(jí)固件版本是合法固件版本時(shí),生成包含握手認(rèn)證指令和握手認(rèn)證數(shù)據(jù)的握手認(rèn)證信息,并發(fā)送至移動(dòng)終端;數(shù)據(jù)傳輸模塊,用于將待升級(jí)固件版本發(fā)送至移動(dòng)終端;指令收發(fā)模塊,用于接收來(lái)自移動(dòng)終端的指令或向移動(dòng)終端發(fā)送指令。主控設(shè)備負(fù)責(zé)提供升級(jí)工具的運(yùn)行環(huán)境,并提供數(shù)據(jù)通道與移動(dòng)終端進(jìn)行數(shù)據(jù)交互。升級(jí)工具運(yùn)行在主控設(shè)備上,負(fù)責(zé)對(duì)固件版本文件進(jìn)行合法性校驗(yàn),與終端進(jìn)行握手驗(yàn)證,將存儲(chǔ)在主控設(shè)備上的版本文件下發(fā)給移動(dòng)終端。移動(dòng)終端負(fù)責(zé)與升級(jí)工具握手,接收升級(jí)工具下發(fā)的版本文件,對(duì)收到的版本文件進(jìn)行合法性校驗(yàn),并將合法的版本文件寫(xiě)入移動(dòng)終端的存儲(chǔ)介質(zhì)。固件版本可由多個(gè)版本文件組成,分為合法版本和非法版本。圖5是本發(fā)明實(shí)施例提供的版本文件中的數(shù)字簽名組成結(jié)構(gòu)圖,合法版本的每個(gè)版本文件都包含終端廠商的數(shù)字簽名信息,非法版本不包含。綜上所述,本發(fā)明具有以下技術(shù)效果本發(fā)明可以防止用戶(hù)將移動(dòng)終端設(shè)備升級(jí)到來(lái)源不明的、可能會(huì)影響移動(dòng)終端使用的非法固件版本,從而有效保障了移動(dòng)終端的正常工作和使用,也保護(hù)了用戶(hù)和運(yùn)營(yíng)商利益。盡管上文對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,但是本發(fā)明不限于此,本技術(shù)領(lǐng)域技術(shù)人員可以根據(jù)本發(fā)明的原理進(jìn)行各種修改。因此,凡按照本發(fā)明原理所作的修改,都應(yīng)當(dāng)理解為落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種防止移動(dòng)終端升級(jí)到非法固件版本的方法,其特征在于,包括升級(jí)工具對(duì)待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果, 將握手認(rèn)證信息發(fā)送至移動(dòng)終端;移動(dòng)終端利用所述握手認(rèn)證信息,對(duì)所述升級(jí)工具進(jìn)行握手校驗(yàn)處理,并根據(jù)握手校驗(yàn)結(jié)果,接收升級(jí)工具下發(fā)的待升級(jí)固件版本;移動(dòng)終端對(duì)收到的所述待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,進(jìn)行固件版本升級(jí)。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述待升級(jí)固件版本的每個(gè)版本文件均具有數(shù)字簽名,升級(jí)工具利用其預(yù)存的簽名密鑰,對(duì)每個(gè)版本文件的數(shù)字簽名進(jìn)行校驗(yàn),若所述待升級(jí)固件版本的每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,當(dāng)升級(jí)工具確定所述待升級(jí)固件版本是合法固件版本時(shí),生成包含握手認(rèn)證指令和握手認(rèn)證數(shù)據(jù)的握手認(rèn)證信息,并發(fā)送至移動(dòng)終端。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,移動(dòng)終端收到所述握手認(rèn)證信息后,利用其預(yù)存的握手密鑰對(duì)所述握手認(rèn)證數(shù)據(jù)中的密文數(shù)據(jù)進(jìn)行解密處理,并將得到明文數(shù)據(jù)與所述握手認(rèn)證數(shù)據(jù)中的明文數(shù)據(jù)進(jìn)行匹配,以便確定移動(dòng)終端與升級(jí)工具成功握手。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,還包括移動(dòng)終端確定其與升級(jí)工具握手成功后,根據(jù)來(lái)自升級(jí)工具的模式切換信息切換到升級(jí)模式,以便接收升級(jí)工具下發(fā)的固件版本。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,移動(dòng)終端利用其預(yù)存的簽名密鑰,對(duì)收到的待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本。
7.根據(jù)權(quán)利要求1-6任意一項(xiàng)所述的方法,其特征在于,還包括移動(dòng)終端使用所述待升級(jí)固件版本替換當(dāng)前固件版本,并在利用所述待升級(jí)固件版本重啟期間,對(duì)所述待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理。
8.一種防止移動(dòng)終端升級(jí)到非法固件版本的系統(tǒng),其特征在于,包括升級(jí)工具,用于對(duì)待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,將握手認(rèn)證信息發(fā)送至移動(dòng)終端;移動(dòng)終端,用于利用所述握手認(rèn)證信息,對(duì)所述升級(jí)工具進(jìn)行握手校驗(yàn)處理,根據(jù)握手校驗(yàn)結(jié)果,接收升級(jí)工具下發(fā)的待升級(jí)固件版本,并對(duì)所收到的待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,根據(jù)版本合法性校驗(yàn)結(jié)果,進(jìn)行固件版本升級(jí)。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述升級(jí)工具包括簽名校驗(yàn)?zāi)K,用于利用其預(yù)存的簽名密鑰,對(duì)待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若所述每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本;握手驗(yàn)證模塊,用于當(dāng)確定所述待升級(jí)固件版本是合法固件版本時(shí),生成包含握手認(rèn)證指令和握手認(rèn)證數(shù)據(jù)的握手認(rèn)證信息,并發(fā)送至移動(dòng)終端。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述移動(dòng)終端包括握手認(rèn)證模塊,用于在收到所述握手認(rèn)證信息后,利用其預(yù)存的握手密鑰對(duì)所述握手認(rèn)證數(shù)據(jù)中的密文數(shù)據(jù)進(jìn)行解密處理,并將得到明文數(shù)據(jù)與所述握手認(rèn)證數(shù)據(jù)中的明文數(shù)據(jù)進(jìn)行匹配,以便確定移動(dòng)終端與升級(jí)工具成功握手;簽名校驗(yàn)?zāi)K,用于利用其預(yù)存的簽名密鑰,對(duì)收到的待升級(jí)固件版本的每個(gè)版本文件進(jìn)行數(shù)字簽名校驗(yàn),若每個(gè)版本文件均校驗(yàn)成功,則確定所述待升級(jí)固件版本是合法固件版本。
全文摘要
本發(fā)明公開(kāi)了一種防止移動(dòng)終端升級(jí)到非法固件版本的方法及系統(tǒng),涉及移動(dòng)終端固件升級(jí)領(lǐng)域,所述方法包括升級(jí)工具對(duì)待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,將握手認(rèn)證信息發(fā)送至移動(dòng)終端;移動(dòng)終端利用所述握手認(rèn)證信息,對(duì)所述升級(jí)工具進(jìn)行握手校驗(yàn)處理,并根據(jù)握手校驗(yàn)結(jié)果,接收升級(jí)工具下發(fā)的待升級(jí)固件版本;移動(dòng)終端對(duì)收到的所述待升級(jí)固件版本進(jìn)行版本合法性校驗(yàn)處理,并根據(jù)版本合法性校驗(yàn)結(jié)果,進(jìn)行固件版本升級(jí)。本發(fā)明可以防止用戶(hù)將移動(dòng)終端升級(jí)到來(lái)源不明的、可能會(huì)影響移動(dòng)終端使用的非法固件版本,從而有效保證了移動(dòng)終端的正常工作和使用,也保障了用戶(hù)和運(yùn)營(yíng)商利益。
文檔編號(hào)G06F21/51GK102981881SQ201210527778
公開(kāi)日2013年3月20日 申請(qǐng)日期2012年12月10日 優(yōu)先權(quán)日2012年12月10日
發(fā)明者劉明輝 申請(qǐng)人:中興通訊股份有限公司