亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種版本校驗(yàn)方法、裝置及終端設(shè)備與流程

文檔序號(hào):11156208閱讀:1293來(lái)源:國(guó)知局
一種版本校驗(yàn)方法、裝置及終端設(shè)備與制造工藝

本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種版本校驗(yàn)方法、裝置及終端設(shè)備。



背景技術(shù):

系統(tǒng)安全是為了支持安全啟動(dòng)以及保證系統(tǒng)在可信環(huán)境中運(yùn)行的一整套軟硬件方案?;贏RM架構(gòu)的系統(tǒng)安全方案通常由Secure Boot和Trust Zone技術(shù)結(jié)合而成,Secure Boot是系統(tǒng)安全的基礎(chǔ),負(fù)責(zé)整個(gè)安全系統(tǒng)的初始化過(guò)程。根據(jù)可信的完整性理論,系統(tǒng)的安全啟動(dòng)是整個(gè)系統(tǒng)安全的可信根,只有保證了系統(tǒng)啟動(dòng)的安全,才能保證系統(tǒng)其他各部件的安全。

系統(tǒng)安全啟動(dòng)時(shí),系統(tǒng)采取逐級(jí)認(rèn)證簽名,認(rèn)證通過(guò)之后引導(dǎo)后續(xù)的過(guò)程。通常安全版本的摘要簽名和代碼存儲(chǔ)在片外(通常是Flash),系統(tǒng)首先由片內(nèi)Boot啟動(dòng),對(duì)片外啟動(dòng)代碼簽名認(rèn)證校驗(yàn)通過(guò)后,切換到片外啟動(dòng)代碼執(zhí)行,引導(dǎo)后續(xù)啟動(dòng)程序。

如果片外安全版本有安全漏洞,需要升級(jí),假設(shè)有安全漏洞的版本為VerX,升級(jí)版本為VerY,VerX存在安全漏洞,升級(jí)之后,攻擊者也可以將版本回退到VerX,利用其中的漏洞,進(jìn)行安全攻擊,因此存在系統(tǒng)安全風(fēng)險(xiǎn)。



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

本發(fā)明實(shí)施例提供了一種版本校驗(yàn)方法、裝置及終端設(shè)備,能夠防止攻擊者使用有安全漏洞的版本進(jìn)行安全攻擊,提高了系統(tǒng)安全。

本發(fā)明實(shí)施例適用于對(duì)軟件版本進(jìn)行安全校驗(yàn)的場(chǎng)景,該軟件可以是操作系統(tǒng)、也可以是在系統(tǒng)上的應(yīng)用程序。

第一方面,本發(fā)明實(shí)施例提供了一種版本校驗(yàn)方法,該方法包括:

在操作系統(tǒng)或應(yīng)用程序需要安全啟動(dòng)或升級(jí)的場(chǎng)景下,處理器獲取第一版本的版本信息,版本信息包括第一版本的版本號(hào),其中,版本號(hào)用于標(biāo)識(shí)所述第一版本;根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位;若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值,則確定第一版本被禁用,第一版本校驗(yàn)未通過(guò);若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則確定第一版本可用,第一版本校驗(yàn)通過(guò)。

可選的,第一版本為處理器待啟動(dòng)的系統(tǒng)或應(yīng)用程序的目標(biāo)版本,或第二版本為處理器待升級(jí)的系統(tǒng)或應(yīng)用程序的目標(biāo)版本。

本發(fā)明實(shí)施例中的每個(gè)版本的版本號(hào)有對(duì)應(yīng)的校驗(yàn)比特位,通過(guò)比特位指示版本的禁用和可用信息,在獲取到某個(gè)版本后,可以對(duì)該版本進(jìn)行安全校驗(yàn),沒(méi)有校驗(yàn)通過(guò)的版本無(wú)法使用,因此可以防止攻擊者使用有安全漏洞的版本進(jìn)行安全攻擊。

結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,該方法還包括:

當(dāng)確認(rèn)某個(gè)版本存在安全漏洞時(shí),處理器接收禁用第二版本的指示,禁用第二版本的指示中包括第二版本的版本號(hào);根據(jù)第二版本的版本號(hào)確定第二版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位;將第二版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位置為所述第一數(shù)值。

因此,校驗(yàn)比特位信息可根據(jù)版本的安全信息(bugList)進(jìn)行更新,及時(shí)將有安全漏洞的版本對(duì)應(yīng)的比特位設(shè)置為禁用,從而可以確保有安全漏洞的版本無(wú)法使用,防止攻擊者使用有安全漏洞的版本進(jìn)行安全攻擊。

結(jié)合第一方面,或第一方面的第一種可能的實(shí)現(xiàn)方式,在第一方面的第二種可能的實(shí)現(xiàn)方式中,版本號(hào)(包括第一版本號(hào)和第二版本號(hào))對(duì)應(yīng)的校驗(yàn)比特位存儲(chǔ)于電子熔斷金屬熔絲eFuse的第一字段中,第一字段中的每個(gè)比特位用于指示一個(gè)版本是否被禁用。

可選的,所述校驗(yàn)比特位的第一數(shù)值為1,所述第二校驗(yàn)比特位的第二數(shù)值為0。

可選的,所述第一字段可以為eFuse中的NV_BITMAP_E字段,當(dāng)該字段中某個(gè)比特為1時(shí),則表示該比特位對(duì)應(yīng)的版本號(hào)已被禁用,當(dāng)該字段中某個(gè)比特為0時(shí),則表示該比特位對(duì)應(yīng)的版本號(hào)為可用狀態(tài)。

如此,可以利用eFuse的一次性熔斷特點(diǎn),若某個(gè)版本存在安全漏洞,將該版本對(duì)應(yīng)的比特位熔斷置1后,將再也無(wú)法回退到該版本,從而保證了版本啟動(dòng)或升級(jí)時(shí)的安全性。

結(jié)合第一方面或第一方面的第一種可能的實(shí)現(xiàn)方式,在第一方面的第三種可能的實(shí)現(xiàn)方式中,版本號(hào)(包括第一版本號(hào)和第二版本號(hào))對(duì)應(yīng)的校驗(yàn)比特位存儲(chǔ)于閃存Flash的第二字段中,第二字段中的每個(gè)比特位用于指示一個(gè)版本是否被禁用。

可選的,一種可能的實(shí)施中,所述校驗(yàn)比特位的第一數(shù)值為1,所述第二校驗(yàn)比特位的第二數(shù)值為0。

可選的,在另一種可能的實(shí)施中,所述校驗(yàn)比特位的第一數(shù)值為0,所述第二校驗(yàn)比特位的第二數(shù)值為1。

若采用這種方式存儲(chǔ),則需要通過(guò)秘鑰保護(hù)存儲(chǔ)內(nèi)容,簽名認(rèn)證之后才允許更新校驗(yàn)比特位。

結(jié)合第一方面的任一種可能的實(shí)現(xiàn)方式,在第一方面的第四種可能的實(shí)現(xiàn)方式中,該方法還包括:對(duì)第一版本的版本信息進(jìn)行簽名認(rèn)證;當(dāng)簽名認(rèn)證通過(guò)時(shí),才執(zhí)行根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位的步驟。以防止版本被篡改,從而可以對(duì)啟動(dòng)或升級(jí)時(shí)的版本進(jìn)行安全校驗(yàn),提高安全性。

結(jié)合第一方面的任一種可能的實(shí)現(xiàn)方式,在第一方面的第五種可能的實(shí)現(xiàn)方式中,本發(fā)明實(shí)施例可以應(yīng)用于版本升級(jí)時(shí)對(duì)版本進(jìn)行校驗(yàn),校驗(yàn)時(shí),獲取第一版本的版本信息包括:接收第一版本升級(jí)指示,根據(jù)升級(jí)指示獲取第一版本的版本信息;該方法還包括:若校驗(yàn)不通過(guò),則不升級(jí)至第一版本;若校驗(yàn)通過(guò),則升級(jí)至第一版本。

可選的,接收第一版本升級(jí)指示可以為:接收升級(jí)操作系統(tǒng)版本的指示,或接收升級(jí)應(yīng)用程序版本的指示。

結(jié)合第一方面的任一種可能的實(shí)現(xiàn)方式,在第一方面的第六種可能的實(shí)現(xiàn)方式中,本發(fā)明實(shí)施例可以應(yīng)用于版本升級(jí)時(shí)對(duì)版本進(jìn)行校驗(yàn),校驗(yàn)時(shí),獲取第一版本的版本信息包括:接收啟動(dòng)第一版本的啟動(dòng)指示,根據(jù)啟動(dòng)指示獲取第一版本的版本信息;該方法還包括:當(dāng)?shù)谝话姹拘r?yàn)不通過(guò)時(shí),不啟動(dòng)第一版本;當(dāng)?shù)谝话姹拘r?yàn)通過(guò)時(shí),啟動(dòng)第一版本。

可選的,接收啟動(dòng)第一版本的啟動(dòng)指示可以為:接收啟動(dòng)某操作系統(tǒng)版本的指示,或接收啟動(dòng)某應(yīng)用程序版本的指示。

第二方面,本發(fā)明實(shí)施例提供了一種版本校驗(yàn)裝置,具體實(shí)現(xiàn)對(duì)應(yīng)于上述第一方面提供的版本校驗(yàn)方法的功能。所述功能可以通過(guò)硬件實(shí)現(xiàn),也可以通過(guò)硬件執(zhí)行相應(yīng)的軟件程序?qū)崿F(xiàn)。硬件和軟件包括一個(gè)或多個(gè)與上述功能相對(duì)應(yīng)的單元模塊,所述單元模塊可以是軟件和/或硬件。

一種可能的設(shè)計(jì)中,該裝置包括:

版本信息獲取模塊,用于獲取第一版本的版本信息,該版本信息包括第一版本的版本號(hào);版本校驗(yàn)?zāi)K,用于根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位,若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值,則確定第一版本被禁用,第一版本校驗(yàn)未通過(guò),若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則確定第一版本可用,第一版本校驗(yàn)通過(guò)。

結(jié)合第二方面,在第二方面的第一種可能的實(shí)現(xiàn)方式中,該裝置還包括:

接收模塊,用于接收禁用第二版本的指示,禁用第二版本的指示中包括第二版本的版本號(hào);校驗(yàn)位更新模塊,用于根據(jù)第二版本的版本號(hào)確定第二版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位,將第二版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位置為所述第一數(shù)值。

結(jié)合第二方面的任一種可能的實(shí)現(xiàn)方式,在第二方面的第二種可能的實(shí)現(xiàn)方式中,第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位存儲(chǔ)于電子熔斷金屬熔絲eFuse的第一字段中,第一字段中的每個(gè)比特位用于指示一個(gè)版本是否被禁用。

可選的,所述校驗(yàn)比特位的第一數(shù)值為1,所述第二校驗(yàn)比特位的第二數(shù)值為0。

結(jié)合第二方面的任一種可能的實(shí)現(xiàn)方式,在第二方面的第三種可能的實(shí)現(xiàn)方式中,第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位存儲(chǔ)于閃存Flash的第二字段中,第二字段中的每個(gè)比特位用于指示一個(gè)版本是否被禁用。

可選的,一種可能的實(shí)施中,所述校驗(yàn)比特位的第一數(shù)值為1,所述第二校驗(yàn)比特位的第二數(shù)值為0。

可選的,在另一種可能的實(shí)施中,所述校驗(yàn)比特位的第一數(shù)值為0,所述第二校驗(yàn)比特位的第二數(shù)值為1。

結(jié)合第二方面的任一種可能的實(shí)現(xiàn)方式,在第二方面的第四種可能的實(shí)現(xiàn)方式中,該裝置還包括:簽名認(rèn)證模塊,用于對(duì)第一版本的版本信息進(jìn)行簽名認(rèn)證,當(dāng)簽名認(rèn)證通過(guò)時(shí),則版本校驗(yàn)?zāi)K執(zhí)行根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位的步驟。

結(jié)合第二方面的任一種可能的實(shí)現(xiàn)方式,在第二方面的第五種可能的實(shí)現(xiàn)方式中,版本信息獲取模塊,具體用于接收升級(jí)指示,根據(jù)升級(jí)指示獲取第一版本的版本信息;該裝置還包括:升級(jí)模塊,用于當(dāng)校驗(yàn)不通過(guò)時(shí),不升級(jí)至第一版本;若校驗(yàn)通過(guò)時(shí),升級(jí)至第一版本。

結(jié)合第二方面的任一種可能的實(shí)現(xiàn)方式,在第二方面的第二種可能的實(shí)現(xiàn)方式中,版本信息獲取模塊,具體用于接收啟動(dòng)第一版本的啟動(dòng)指示,根據(jù)啟動(dòng)指示獲取第一版本的版本信息;該裝置還包括:安全啟動(dòng)模塊,用于當(dāng)?shù)谝话姹拘r?yàn)不通過(guò)時(shí),不啟動(dòng)第一版本,當(dāng)?shù)谝话姹拘r?yàn)通過(guò)時(shí),啟動(dòng)第一版本。

第三方面,本發(fā)明實(shí)施例還提供了一種芯片,該芯片用于執(zhí)行程序代碼,以執(zhí)行第一方面的版本校驗(yàn)方法的全部或部分步驟。

可選的,該芯片包括電子熔斷金屬熔絲eFuse,所述eFuse中存儲(chǔ)有版本校驗(yàn)比特位,每個(gè)比特位用于指示一個(gè)版本是否被禁用。

可選的,該芯片為系統(tǒng)級(jí)芯片SOC。

第四方面,本發(fā)明實(shí)施例還提供了一種終端設(shè)備,該終端設(shè)備包括:相互連接的收發(fā)器、處理器及存儲(chǔ)器;存儲(chǔ)器用于存儲(chǔ)程序代碼,處理器調(diào)用存儲(chǔ)器中的程序代碼,以執(zhí)行第一方面的全部或部分步驟:

獲取第一版本的版本信息,版本信息包括第一版本的版本號(hào);根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位;若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值,則確定第一版本被禁用,第一版本校驗(yàn)未通過(guò);若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則確定第一版本可用,第一版本校驗(yàn)通過(guò)。

第五方面,本發(fā)明實(shí)施例還提供了一種計(jì)算機(jī)存儲(chǔ)介質(zhì),該介質(zhì)存儲(chǔ)有應(yīng)用程序,該程序執(zhí)行時(shí)包括上述第一方面的版本校驗(yàn)方法中的部分或者全部步驟。

從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):

本發(fā)明實(shí)施例中,每個(gè)版本的版本號(hào)有對(duì)應(yīng)的校驗(yàn)比特位,通過(guò)比特位指示版本的禁用和可用信息,在獲得某個(gè)版本(第一版本)時(shí),先根據(jù)該版本的版本號(hào)確定該版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位,若該版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值,則確定該版本被禁用,校驗(yàn)未通過(guò),若該版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則確定該版本可用,校驗(yàn)通過(guò)。通過(guò)本發(fā)明實(shí)施例,在獲取到某個(gè)版本后,可以對(duì)該版本進(jìn)行安全校驗(yàn),沒(méi)有校驗(yàn)通過(guò)的版本無(wú)法使用,因此可以防止攻擊者使用有安全漏洞的版本進(jìn)行安全攻擊。

附圖說(shuō)明

圖1為本發(fā)明實(shí)施例中系統(tǒng)安全啟動(dòng)相關(guān)的簽名校驗(yàn)過(guò)程示意圖;

圖2為本發(fā)明實(shí)施例中版本校驗(yàn)方法流程圖;

圖3為本發(fā)明實(shí)施例中通過(guò)eFuse存儲(chǔ)版本校驗(yàn)信息進(jìn)行校驗(yàn)的示意圖;

圖4為本發(fā)明實(shí)施例中版本校驗(yàn)方法的另一種流程圖;

圖5為本發(fā)明實(shí)施例中的版本校驗(yàn)裝置功能模塊結(jié)構(gòu)圖;

圖6為本發(fā)明實(shí)施例中終端設(shè)備的硬件結(jié)構(gòu)示意圖。

具體實(shí)施方式

為了使本發(fā)明的技術(shù)方案及有益效果更加清楚,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

此外本發(fā)明實(shí)施例中的版本校驗(yàn)方法適用于各種帶有處理器(Central Processing Unit,簡(jiǎn)稱:CPU)及應(yīng)用程序的終端設(shè)備,包括計(jì)算設(shè)備、車載設(shè)備、可穿戴設(shè)備、以及各種形式的用戶設(shè)備(User Equipment,簡(jiǎn)稱UE),移動(dòng)臺(tái)(Mobile station,簡(jiǎn)稱MS),終端(terminal),終端設(shè)備(Terminal Equipment)等等。

本發(fā)明實(shí)施例適用于可以對(duì)軟件進(jìn)行升級(jí),存在多個(gè)軟件版本的上述終端設(shè)備中對(duì)軟件的版本進(jìn)行安全校驗(yàn)的場(chǎng)景,該軟件可以是操作系統(tǒng)、也可以是在系統(tǒng)上的應(yīng)用程序,例如:ARM架構(gòu)的系統(tǒng)安全啟動(dòng),某個(gè)應(yīng)用程序的安全啟動(dòng)等場(chǎng)景的版本校驗(yàn)。本發(fā)明實(shí)施例以系統(tǒng)安全啟動(dòng)為例進(jìn)行說(shuō)明。

結(jié)合圖1,對(duì)本發(fā)明實(shí)施例中的版本校驗(yàn)方法進(jìn)行說(shuō)明,該方法的執(zhí)行主體為處理器(CPU)。

101、獲取第一版本的版本信息,該版本信息包括第一版本的版本號(hào);

獲取版本的場(chǎng)景和方式有多種,包括在系統(tǒng)版本需要升級(jí)時(shí),需要獲取待升級(jí)的版本;在開(kāi)機(jī)啟動(dòng)系統(tǒng)時(shí),需要獲取需要啟動(dòng)的版本;在安裝新的版本時(shí),也會(huì)獲得待安裝的版本。

本發(fā)明實(shí)施例中的第一版本僅是特指某個(gè)版本,其中的“第一”是用于區(qū)別類似的對(duì)象,而不是用于描述特定的順序或先后次序。

在進(jìn)行版本升級(jí)時(shí),處理器接收升級(jí)指示,根據(jù)該升級(jí)指示獲取待升級(jí)的版本(第一版本)的版本信息。

或者,在開(kāi)機(jī)安全啟動(dòng),或者升級(jí)后安全啟動(dòng)某個(gè)版本(即第一版本)時(shí),處理器會(huì)接收到啟動(dòng)該版本的啟動(dòng)指示,之后根據(jù)該啟動(dòng)指示獲取待啟動(dòng)的該版本的版本信息,

其中版本信息包括版本號(hào)以及該版本的程序啟動(dòng)代碼等信息。

102、根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位;

在獲取到第一版本的版本信息后,對(duì)該版本進(jìn)行安全校驗(yàn),確定該版本是否是可用的版本。

每個(gè)版本的版本號(hào)有對(duì)應(yīng)的校驗(yàn)比特位,通過(guò)校驗(yàn)比特位指示版本的禁用和可用信息。

當(dāng)某個(gè)版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值時(shí),指示該版本號(hào)對(duì)應(yīng)的版本被禁用,當(dāng)某個(gè)版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值時(shí),指示該版本號(hào)對(duì)應(yīng)的版本可用。

該校驗(yàn)比特位可以存儲(chǔ)于電子熔斷金屬熔絲(eFuse)中,也可以存儲(chǔ)于片外存儲(chǔ)器(如:Flash)里,存儲(chǔ)在片外存儲(chǔ)器時(shí),需要通過(guò)秘鑰保護(hù),簽名認(rèn)證之后才允許更新。

1、存儲(chǔ)于eFuse中

在系統(tǒng)級(jí)芯片(System-on-a-Chip,簡(jiǎn)稱:SOC)中,eFuse是一種重要的非易失性存儲(chǔ)單元,由熔絲結(jié)構(gòu)構(gòu)成,通過(guò)熔絲可以在芯片上編程并存儲(chǔ)信息,eFuse模塊有一次性熔斷的特性:eFuse中默認(rèn)存儲(chǔ)的比特位都是0,可以通過(guò)編程將需要的比特位由0改為1,一旦置1,就不能再改為0。利用eFuse的一次性熔斷的特性,在SoC的eFuse中增加第一字段,該字段中對(duì)應(yīng)的每個(gè)比特位用于指示一個(gè)版本是否可用(也即是否被禁用)。

可選的,該第一字段可以為NV_BITMAP_E字段。

在eFuse中,所述校驗(yàn)比特位中的第一數(shù)值的取值為1,所述校驗(yàn)比特位中的第二數(shù)值的取值為0,即當(dāng)eFuse中的第一字段中某個(gè)比特位為1時(shí),表示該比特位對(duì)應(yīng)的版本已被禁用,當(dāng)某個(gè)比特位為0時(shí),表示該比特位對(duì)應(yīng)的版本可用。

如圖2所示,F(xiàn)lash中存儲(chǔ)有系統(tǒng)片外啟動(dòng)代碼版本的版本信息:版本0(Ver0)。CPU中存儲(chǔ)有片內(nèi)啟動(dòng)引導(dǎo)程序(Boot),還包括有eFuse模塊,eFuse模塊中NV_BITMAP_E字段中的版本0對(duì)應(yīng)的比特位Bit0為0,表示版本0可用。

假設(shè)有片外啟動(dòng)代碼有16個(gè)版本,NV_BITMAP_E字段中有32bit,則第0至第15bit分別用于指示版本0至版本15的是否可用,比特位和版本號(hào)之間的對(duì)應(yīng)關(guān)系可以如圖3所示。Bit 0為1,用于指示版本0(Ver0)被禁用;Bit 1為0,用于指示版本1(Ver1)可用;……Bit 16為0,用于指示版本16(Ver16)可用。

在進(jìn)行版本安全校驗(yàn)時(shí),根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位,根據(jù)該版本號(hào)對(duì)應(yīng)的比特位是0還是1來(lái)確定該版本號(hào)是否可用。

2、存儲(chǔ)于片外存儲(chǔ)器中

以片外存儲(chǔ)器為Flash進(jìn)行舉例,校驗(yàn)比特位存放在片外Flash里,在Flash中增加第二字段,該字段中的每個(gè)比特位用于指示一個(gè)版本是否可用(也即是否被禁用)。

可選的,在Flash中,所述校驗(yàn)比特位中的第一數(shù)值的取值為1,所述校驗(yàn)比特位中的第二數(shù)值的取值為0,即當(dāng)eFuse中的第一字段中某個(gè)比特位為1時(shí),表示該比特位對(duì)應(yīng)的版本已被禁用,當(dāng)某個(gè)比特位為0時(shí),表示該比特位對(duì)應(yīng)的版本可用。

可選的,在Flash中,也可以是第一數(shù)值的取值為0,表示該比特位對(duì)應(yīng)的版本已被禁用,第二數(shù)值的取值為1,表示該比特位對(duì)應(yīng)的版本可用。

進(jìn)一步,為了保證安全性,對(duì)該第二字段使用私鑰簽名,在安全啟動(dòng)進(jìn)行校驗(yàn)需要讀取Flash中的第二字段,或需要對(duì)Flash中的第二字段進(jìn)行更新時(shí),先使用公鑰認(rèn)證簽名,若簽名認(rèn)證通過(guò),才允許讀取或更新校驗(yàn)比特位。

Flash中的校驗(yàn)比特位與片外啟動(dòng)代碼的版本的版本號(hào)之間的映射關(guān)系與圖2相同,此處不做贅述。

103、若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值,則確定第一版本被禁用,第一版本校驗(yàn)未通過(guò);

根據(jù)第一版本的版本號(hào)從eFuse的第一字段或片外存儲(chǔ)器的第二字段中的校驗(yàn)比特位中確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值時(shí),則獲知該版本不可用,即被禁用,則該第一版本校驗(yàn)不通過(guò)。

若是在啟動(dòng)第一版本時(shí),對(duì)第一版本校驗(yàn)不通過(guò),則說(shuō)明該版本存在安全問(wèn)題,則不允許啟動(dòng)該版本。

若是在升級(jí)至第一版本時(shí),對(duì)第一版本校驗(yàn)不通過(guò),則說(shuō)明該版本存在安全問(wèn)題,則不允許升級(jí)至該版本。

104、若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則確定第一版本可用,第一版本校驗(yàn)通過(guò)。

根據(jù)第一版本的版本號(hào)從eFuse的第一字段或片外存儲(chǔ)器的第二字段中的校驗(yàn)比特位中確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則獲知該版本可用,則該第一版本校驗(yàn)通過(guò)。

若是在啟動(dòng)第一版本時(shí),對(duì)第一版本校驗(yàn)通過(guò),則說(shuō)明該版本不存在安全問(wèn)題,則允許啟動(dòng)該版本。

若是在升級(jí)至第一版本時(shí),對(duì)第一版本校驗(yàn)通過(guò),則說(shuō)明該版本不存在安全問(wèn)題,則允許升級(jí)至該版本。

下面對(duì)有安全問(wèn)題的版本進(jìn)行校驗(yàn)比特位置位的過(guò)程進(jìn)行說(shuō)明。

當(dāng)某個(gè)版本(第二版本)有安全漏洞時(shí),處理器接收到禁用第二版本的指示,該禁用指示中包括第二版本的版本號(hào),則處理器根據(jù)該版本號(hào)確定第二版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位是第幾個(gè)bit位,該比特位原本為第二數(shù)值,此時(shí),將該比特位置為第一數(shù)值,例如:當(dāng)?shù)诙?shù)值為0,第一數(shù)值為1時(shí),將該比特位由0置位為1。以表示第二版本不可用,即已被禁用,后續(xù)不允許再升級(jí)到該版本,或不允許啟動(dòng)該版本。

一種應(yīng)用場(chǎng)景為,發(fā)現(xiàn)某個(gè)版本有漏洞時(shí),升級(jí)到一個(gè)新的版本。此時(shí),在升級(jí)時(shí),既需要對(duì)有漏洞的版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位置為第一數(shù)值,又要對(duì)待升級(jí)的版本進(jìn)行圖1所示的實(shí)施例中的版本校驗(yàn)??蛇x的,也可以在升級(jí)時(shí)不進(jìn)行圖1所示的實(shí)施例中的版本校驗(yàn),待該版本升級(jí)完成后,在啟動(dòng)該版本時(shí),對(duì)該版本進(jìn)行圖1所示的實(shí)施例中的版本校驗(yàn)。

例如:Ver1版本有安全漏洞,Ver1升級(jí)到Ver2。若采用eFuse存儲(chǔ)校驗(yàn)比特位的方式,Ver2升級(jí)啟動(dòng)之后,更新NV_BITMAP_E,將不可使用的版本Ver1對(duì)應(yīng)的比特置位。然后有安全漏洞的版本Ver1再也無(wú)法通過(guò)版本校驗(yàn),其他無(wú)安全漏洞的版本Ver0,Ver2仍然可以通過(guò)版本校驗(yàn)。

本發(fā)明實(shí)施例中,每個(gè)版本的版本號(hào)有對(duì)應(yīng)的校驗(yàn)比特位,通過(guò)比特位指示版本的禁用和可用信息。在獲得某個(gè)版本時(shí),先根據(jù)該版本的版本號(hào)確定該版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位,若該版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值,則確定該版本被禁用,校驗(yàn)不通過(guò),則不允許該版本升級(jí)或啟動(dòng);若該版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則確定該版本可用,校驗(yàn)通過(guò),則允許該版本升級(jí)或啟動(dòng)。通過(guò)本發(fā)明實(shí)施例,在獲取到某個(gè)版本后,可以對(duì)該版本進(jìn)行安全校驗(yàn),沒(méi)有校驗(yàn)通過(guò)的版本無(wú)法使用,因此可以防止攻擊者使用有安全漏洞的版本進(jìn)行安全攻擊。

另外,校驗(yàn)比特位信息可根據(jù)版本的安全信息(bugList)進(jìn)行更新,及時(shí)將有安全漏洞的版本對(duì)應(yīng)的比特位設(shè)置為禁用,從而可以確保有安全漏洞的版本無(wú)法使用,防止攻擊者使用有安全漏洞的版本進(jìn)行安全攻擊。

另一方面,本發(fā)明實(shí)施例每個(gè)版本對(duì)應(yīng)一個(gè)校驗(yàn)比特位,在被禁用的版本之前的其他版本,如果沒(méi)有安全漏洞,還可以使用,若當(dāng)前版本因?yàn)橐恍┰驘o(wú)法啟動(dòng)的時(shí)候,還可以將之前的其他版本作為備份版本啟動(dòng)。因此能夠提高方案的完整性。

進(jìn)一步,在實(shí)際應(yīng)用中,在獲取到某個(gè)版本時(shí),需要先對(duì)該版本的版本信息進(jìn)行簽名認(rèn)證,當(dāng)簽名認(rèn)證通過(guò)時(shí),才執(zhí)行圖1所示的實(shí)施例中步驟102至步驟104。

結(jié)合圖4,下面對(duì)簽名認(rèn)證過(guò)程進(jìn)行介紹。

系統(tǒng)啟動(dòng)代碼(系統(tǒng)的某個(gè)版本對(duì)應(yīng)的啟動(dòng)代碼,System Code)在進(jìn)行啟動(dòng)時(shí),需要先進(jìn)行簽名安全校驗(yàn),以確保系統(tǒng)啟動(dòng)代碼沒(méi)有被篡改。圖1為系統(tǒng)安全啟動(dòng)相關(guān)的簽名校驗(yàn)過(guò)程示意圖,圖1所示的示意圖中采用eFuse模塊存儲(chǔ)密鑰等與安全相關(guān)的內(nèi)容。

簽名認(rèn)證的原理可以為:采用基于RSA非對(duì)稱加密算法,使用私鑰簽名,公鑰認(rèn)證的簽名認(rèn)證機(jī)制來(lái)構(gòu)建安全啟動(dòng)的信任鏈。

芯片商隨機(jī)生成非對(duì)稱性密鑰對(duì),并將公鑰Hash值和私鑰指數(shù)燒入Efuse,公鑰寫(xiě)到Flash指定位置,設(shè)備商使用一單向散列函數(shù):哈希(Hash)函數(shù)對(duì)系統(tǒng)啟動(dòng)代碼生成信息摘要,然后使用Efuse私鑰對(duì)信息摘要進(jìn)行加密,即數(shù)字簽名,簽名后的信息摘要與系統(tǒng)啟動(dòng)代碼放在一起,寫(xiě)到片外存儲(chǔ)器,片外存儲(chǔ)器通常是FLASH,例如,圖4中所示為非易失性隨機(jī)訪問(wèn)存儲(chǔ)器(Non-Volatile Random Access Memory,NVRAM),公私鑰對(duì)由芯片內(nèi)部產(chǎn)生,燒寫(xiě)與校驗(yàn)過(guò)程不可見(jiàn),且不備份。

安全啟動(dòng)時(shí),系統(tǒng)由片內(nèi)Boot啟動(dòng),片內(nèi)Boot ROM包含最小系統(tǒng)初始化和簽名認(rèn)證安全校驗(yàn)程序,先對(duì)Flash中的公鑰生成Hash值,與Efuse的可信公鑰根(Root Of Trust Public Key,ROTPK)比對(duì),所述可信公鑰根是安全啟動(dòng)使用的EK公鑰(N,e)的SHA256Hash值,以保證校驗(yàn)簽名使用的公鑰是唯一指定的。如果通過(guò)則對(duì)片外系統(tǒng)啟動(dòng)代碼生成Hash摘要值,再使用公鑰認(rèn)證簽名得到原始Hash摘要值,對(duì)這兩個(gè)信息摘要值進(jìn)行校驗(yàn),就知道系統(tǒng)啟動(dòng)代碼是否被篡改過(guò),是否是預(yù)期授權(quán)的代碼。片外系統(tǒng)啟動(dòng)代碼簽名認(rèn)證校驗(yàn)通過(guò)后,切換到片外系統(tǒng)啟動(dòng)代碼執(zhí)行,引導(dǎo)后續(xù)啟動(dòng)程序。

因此,在系統(tǒng)進(jìn)行安全啟動(dòng)時(shí),需要先對(duì)系統(tǒng)啟動(dòng)代碼進(jìn)行簽名認(rèn)證,簽名認(rèn)證通過(guò)后,確認(rèn)系統(tǒng)啟動(dòng)代碼沒(méi)有被篡改,再進(jìn)行圖1所示的實(shí)施例中的版本校驗(yàn),確定該版本的系統(tǒng)啟動(dòng)代碼是否是可用的版本,是可用的版本時(shí),才允許啟動(dòng)該版本。從而能夠從確保程序啟動(dòng)時(shí)的安全性。

以上是對(duì)本發(fā)明實(shí)施例中的版本校驗(yàn)方法進(jìn)行的介紹,下面對(duì)本發(fā)明實(shí)施例中的版本校驗(yàn)裝置進(jìn)行介紹。

結(jié)合圖5,本發(fā)明實(shí)施例中的版本校驗(yàn)裝置包括:

版本信息獲取模塊501,用于獲取第一版本的版本信息,該版本信息包括第一版本的版本號(hào);

版本校驗(yàn)?zāi)K502,用于根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位,若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第一數(shù)值,則確定第一版本被禁用,第一版本校驗(yàn)未通過(guò),若第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位為第二數(shù)值,則確定第一版本可用,第一版本校驗(yàn)通過(guò)。

在一些具體的實(shí)施中,該裝置還包括:

接收模塊503,用于接收禁用第二版本的指示,禁用第二版本的指示中包括第二版本的版本號(hào);校驗(yàn)位更新模塊504,用于根據(jù)第二版本的版本號(hào)確定第二版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位,將第二版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位置為第一數(shù)值。

在一些具體的實(shí)施中,所述版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位存儲(chǔ)于電子熔斷金屬熔絲eFuse的第一字段中,第一字段中的每個(gè)比特位用于指示一個(gè)版本是否被禁用。

在一些具體的實(shí)施中,所述版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位存儲(chǔ)于閃存Flash的第二字段中,第二字段中的每個(gè)比特位用于指示一個(gè)版本是否被禁用。

在一些具體的實(shí)施中,該裝置還包括:簽名認(rèn)證模塊505,用于對(duì)第一版本的版本信息進(jìn)行簽名認(rèn)證,當(dāng)簽名認(rèn)證通過(guò)時(shí),則版本校驗(yàn)?zāi)K502執(zhí)行根據(jù)第一版本的版本號(hào)確定第一版本的版本號(hào)對(duì)應(yīng)的校驗(yàn)比特位的步驟。

在一些具體的實(shí)施中,版本信息獲取模塊501,具體用于接收升級(jí)指示,根據(jù)升級(jí)指示獲取第一版本的版本信息;該裝置還包括:升級(jí)模塊506,用于當(dāng)校驗(yàn)不通過(guò)時(shí),不升級(jí)至第一版本;若校驗(yàn)通過(guò)時(shí),升級(jí)至第一版本。

在一些具體的實(shí)施中,版本信息獲取模塊501,具體用于接收啟動(dòng)第一版本的啟動(dòng)指示,根據(jù)啟動(dòng)指示獲取第一版本的版本信息;該裝置還包括:安全啟動(dòng)模塊507,用于當(dāng)?shù)谝话姹拘r?yàn)不通過(guò)時(shí),不啟動(dòng)第一版本,當(dāng)?shù)谝话姹拘r?yàn)通過(guò)時(shí),啟動(dòng)第一版本。

以上版本校驗(yàn)裝置中的各模塊之間的信息交互請(qǐng)參閱上述版本校驗(yàn)方法實(shí)施例(圖1至圖4所對(duì)應(yīng)的實(shí)施例)中的描述,此處不再贅述。

可選的,上述版本校驗(yàn)方法中實(shí)現(xiàn)的功能可以通過(guò)專用集成電路(英文:application-specific integrated circuit,簡(jiǎn)稱:ASIC)實(shí)現(xiàn),或可編程邏輯器件(英文:programmable logic device,簡(jiǎn)稱:PLD)實(shí)現(xiàn)。上述PLD可以是復(fù)雜可編程邏輯器件(英文:complex programmable logic device,簡(jiǎn)稱:CPLD),F(xiàn)PGA,通用陣列邏輯(英文:generic array logic,簡(jiǎn)稱:GAL)或其任意組合。

另外,本發(fā)明實(shí)施例還提供了一種芯片,該芯片用于執(zhí)行程序代碼,以執(zhí)行上述版本校驗(yàn)方法實(shí)施例的全部或部分步驟。

該芯片包括電子熔斷金屬熔絲eFuse,所述eFuse中存儲(chǔ)有版本校驗(yàn)比特位,每個(gè)比特位用于指示一個(gè)版本是否被禁用。

此外,本發(fā)明實(shí)施例還提供了一種終端設(shè)備,該終端設(shè)備可以以一個(gè)用戶設(shè)備(例如:手機(jī))的形式存在。該終端設(shè)備還可以包括手持設(shè)備、車載設(shè)備、可穿戴設(shè)備、計(jì)算設(shè)備,以及各種形式的用戶設(shè)備。手持設(shè)備可以為包括手機(jī)、平板電腦、PDA(Personal Digital Assistant,個(gè)人數(shù)字助理)、等任意終端設(shè)備。

下面以手機(jī)為例對(duì)本發(fā)明實(shí)施例中的終端設(shè)備進(jìn)行說(shuō)明。

圖6示出的是與本發(fā)明實(shí)施例提供的用戶設(shè)備相關(guān)的手機(jī)的部分結(jié)構(gòu)的框圖。參考圖6,手機(jī)包括:射頻(Radio Frequency,RF)電路610、存儲(chǔ)器620、輸入單元630、顯示單元640、傳感器650、音頻電路660、無(wú)線保真(wireless fidelity,WiFi)模塊670、處理器680、以及電源690等部件。其中,射頻電路610、WiFi模塊670為收發(fā)器。本領(lǐng)域技術(shù)人員可以理解,圖6中示出的手機(jī)結(jié)構(gòu)并不構(gòu)成對(duì)手機(jī)的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。

下面結(jié)合圖6對(duì)手機(jī)的各個(gè)構(gòu)成部件進(jìn)行具體的介紹:

存儲(chǔ)器620可用于存儲(chǔ)軟件程序以及模塊,處理器680通過(guò)運(yùn)行存儲(chǔ)在存儲(chǔ)器620的軟件程序以及模塊,從而執(zhí)行手機(jī)的各種功能應(yīng)用以及數(shù)據(jù)處理。存儲(chǔ)器620可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)手機(jī)的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲(chǔ)器620可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤(pán)存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。

具體的,存儲(chǔ)器620存儲(chǔ)的應(yīng)用程序?yàn)閳?zhí)行時(shí)包括上述圖1到圖4所對(duì)應(yīng)的方法中的部分或者全部步驟。存儲(chǔ)器620中存儲(chǔ)所述版本號(hào)信息、版本對(duì)應(yīng)的程序啟動(dòng)代碼等信息。

輸入單元630可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與手機(jī)的用戶設(shè)置以及功能控制有關(guān)的鍵信號(hào)輸入。具體地,輸入單元630可包括觸控面板631以及其他輸入設(shè)備632。觸控面板631,也稱為觸摸屏,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板631上或在觸控面板631附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動(dòng)相應(yīng)的連接裝置??蛇x的,觸控面板631可包括觸摸檢測(cè)裝置和觸摸控制器兩個(gè)部分。其中,觸摸檢測(cè)裝置檢測(cè)用戶的觸摸方位,并檢測(cè)觸摸操作帶來(lái)的信號(hào),將信號(hào)傳送給觸摸控制器;觸摸控制器從觸摸檢測(cè)裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器680,并能接收處理器680發(fā)來(lái)的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸控面板631。除了觸控面板631,輸入單元630還可以包括其他輸入設(shè)備632。具體地,其他輸入設(shè)備632可以包括但不限于物理鍵盤(pán)、功能鍵(比如音量控制按鍵、開(kāi)關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。

顯示單元640可用于顯示由用戶輸入的信息或提供給用戶的信息。顯示單元640可包括顯示面板641,可選的,可以采用液晶顯示器(Liquid Crystal Display,LCD)、有機(jī)發(fā)光二極管(Organic Light-Emitting Diode,OLED)等形式來(lái)配置顯示面板641。進(jìn)一步的,觸控面板631可覆蓋顯示面板641,當(dāng)觸控面板631檢測(cè)到在其上或附近的觸摸操作后,傳送給處理器680以確定觸摸事件的類型,隨后處理器680根據(jù)觸摸事件的類型在顯示面板641上提供相應(yīng)的視覺(jué)輸出。雖然在圖6中,觸控面板631與顯示面板641是作為兩個(gè)獨(dú)立的部件來(lái)實(shí)現(xiàn)手機(jī)的輸入和輸入功能,但是在某些實(shí)施例中,可以將觸控面板631與顯示面板641集成而實(shí)現(xiàn)手機(jī)的輸入和輸出功能。

處理器680是手機(jī)的控制中心,利用各種接口和線路連接整個(gè)手機(jī)的各個(gè)部分,通過(guò)運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)器620內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)器620內(nèi)的數(shù)據(jù),執(zhí)行手機(jī)的各種功能和處理數(shù)據(jù),從而對(duì)手機(jī)進(jìn)行整體監(jiān)控??蛇x的,處理器680可包括一個(gè)或多個(gè)處理單元;優(yōu)選的,處理器680可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無(wú)線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器680中。

具體的,本發(fā)明實(shí)施例中的處理器680用于執(zhí)行存儲(chǔ)器620中的應(yīng)用程序,以執(zhí)行圖1到圖4中的實(shí)施例中的處理器所執(zhí)行的部分或者全部步驟。

手機(jī)還可包括至少一種傳感器650、電源690,盡管未示出,手機(jī)還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。

另外,本發(fā)明實(shí)施例還提供了一種計(jì)算機(jī)存儲(chǔ)介質(zhì),該介質(zhì)存儲(chǔ)有應(yīng)用程序,該程序執(zhí)行時(shí)包括上述版本校驗(yàn)方法中的部分或者全部步驟。

所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng),裝置和單元的具體工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。

在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過(guò)一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。

所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。

另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。

所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:U盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。

以上所述,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。

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