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

安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法及裝置與流程

文檔序號(hào):12670212閱讀:562來(lái)源:國(guó)知局
安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法及裝置與流程

本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,主要涉及了一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法及裝置。



背景技術(shù):

近年來(lái),隨著汽車(chē)工業(yè)的普及,私家車(chē)擁有量的激增,道路擁塞的日益嚴(yán)重,交通事故的頻發(fā),以及各式各樣車(chē)載設(shè)備的不斷涌現(xiàn),創(chuàng)建高性能、高擴(kuò)展性、安全的車(chē)用自組織網(wǎng)絡(luò)給無(wú)線研究者們提出了新的挑戰(zhàn)。作為V2X(vehicle to X,車(chē)輛對(duì)外界通信)的熱門(mén)技術(shù)之一的WAVE(Wireless Access in Vehicular Environments,車(chē)載通信無(wú)線接入)協(xié)議棧由IEEE制定,基于802.11的無(wú)線通信協(xié)議棧,具有部署容易、成本較低等優(yōu)點(diǎn)。

根據(jù)WAVE 1609.2標(biāo)準(zhǔn),為提升車(chē)聯(lián)網(wǎng)的安全性,車(chē)聯(lián)網(wǎng)設(shè)備(例如,汽車(chē)、路邊單元等接入車(chē)聯(lián)網(wǎng)的設(shè)備)中必須有SSME(Secure Service Management Entity,安全服務(wù)管理實(shí)體)模塊,用于存儲(chǔ)數(shù)字證書(shū)及相關(guān)信息,并向設(shè)備內(nèi)其他模塊提供正確的數(shù)字證書(shū)相關(guān)信息。在該標(biāo)準(zhǔn)中,假定SSME模塊所提供的所有信息都是可信的。

由于SSME模塊是軟件模塊,也就是說(shuō)SSME模塊可以被惡意軟件感染和/或控制,進(jìn)而成為攻破車(chē)聯(lián)網(wǎng)安全系統(tǒng)。因此SSME模塊成為整個(gè)WAVE車(chē)聯(lián)網(wǎng)安全的薄弱環(huán)節(jié)。



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

基于此,為解決安全服務(wù)管理實(shí)體SSME模塊在被惡意軟件感染和/或控制后,提供錯(cuò)誤的數(shù)字證書(shū)和相關(guān)信息導(dǎo)致車(chē)聯(lián)網(wǎng)設(shè)備出現(xiàn)安全問(wèn)題,特提出了一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法。

一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法,包括:

確定待校驗(yàn)的SSME子模塊作為目標(biāo)模塊,通過(guò)哈希函數(shù)生成所述目標(biāo)模塊的目標(biāo)校驗(yàn)值;

根據(jù)已存儲(chǔ)的Merkle樹(shù)中獲取根節(jié)點(diǎn)的值和所述目標(biāo)模塊在所述Merkle樹(shù)中對(duì)應(yīng)的驗(yàn)證路徑,所述驗(yàn)證路徑為所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)到所述根節(jié)點(diǎn)所經(jīng)過(guò)的子節(jié)點(diǎn)的序列;

將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值;

當(dāng)所述校驗(yàn)根值與所述根節(jié)點(diǎn)的值匹配時(shí),確定所述目標(biāo)模塊校驗(yàn)通過(guò)。

在其中一個(gè)實(shí)施例中,所述將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值還包括:將所述目標(biāo)校驗(yàn)值作為第一哈希值;獲取所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn),迭代執(zhí)行:將和所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)組成目標(biāo)組合的子節(jié)點(diǎn)作為驗(yàn)證節(jié)點(diǎn),確定所述驗(yàn)證節(jié)點(diǎn)的值作為第二哈希值;將所述第一哈希值和所述第二哈希值兩兩哈希得到所述目標(biāo)父節(jié)點(diǎn)的值作為第一哈希值,將所述目標(biāo)父節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn);在所述目標(biāo)父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;將所述根節(jié)點(diǎn)的值作為所述校驗(yàn)根值。

在其中一個(gè)實(shí)施例中,計(jì)算SSME模塊中各個(gè)SSME子模塊的哈希值作為所述Merkle樹(shù)的葉節(jié)點(diǎn)的值;將所述葉節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn),迭代執(zhí)行:將所述目標(biāo)節(jié)點(diǎn)不重復(fù)兩兩組合,遍歷得到的組合,對(duì)于遍歷到的目標(biāo)組合,計(jì)算目標(biāo)組合的哈希值作為所述目標(biāo)組合中的節(jié)點(diǎn)的父節(jié)點(diǎn)的值;在遍歷結(jié)束后,將所述父節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn);在所述父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;存儲(chǔ)所述Merkle樹(shù)。

在其中一個(gè)實(shí)施例中,當(dāng)所述SSME模塊安裝完成或所述SSME模塊升級(jí)完成后,執(zhí)行所述計(jì)算SSME模塊中各個(gè)SSME子模塊的哈希值作為所述Merkle樹(shù)的葉節(jié)點(diǎn)的值的步驟。

在其中一個(gè)實(shí)施例中,所述計(jì)算SSME模塊中各個(gè)SSME子模塊的哈希值作為所述Merkle樹(shù)的葉節(jié)點(diǎn)的值之前還包括:將所述SSME模塊劃分為2N個(gè)SSME子模塊,其中N為正整數(shù)。

此外,為解決安全服務(wù)管理實(shí)體SSME模塊在被惡意軟件感染和控制后,提供錯(cuò)誤的數(shù)字證書(shū)和相關(guān)信息導(dǎo)致車(chē)聯(lián)網(wǎng)設(shè)備出現(xiàn)安全問(wèn)題,特提出了一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)裝置。

一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)裝置,包括:

校驗(yàn)值確定模塊,用于確定待校驗(yàn)的SSME子模塊作為目標(biāo)模塊,通過(guò)哈希函數(shù)生成所述目標(biāo)模塊的校驗(yàn)值;

參數(shù)獲取模塊,用于根據(jù)已存儲(chǔ)的Merkle樹(shù)中獲取根節(jié)點(diǎn)的值和所述目標(biāo)模塊在所述Merkle樹(shù)中對(duì)應(yīng)的驗(yàn)證路徑,所述驗(yàn)證路徑為所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)到所述根節(jié)點(diǎn)所經(jīng)過(guò)的子節(jié)點(diǎn)的序列;

校驗(yàn)根值確定模塊,用于將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值;

校驗(yàn)結(jié)果處理模塊,用于當(dāng)所述校驗(yàn)根值與所述根節(jié)點(diǎn)的值匹配時(shí),確定所述目標(biāo)模塊校驗(yàn)通過(guò)。

在其中一個(gè)實(shí)施例中,所述校驗(yàn)根值確定模塊還用于將所述目標(biāo)校驗(yàn)值作為第一哈希值;獲取所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn),迭代執(zhí)行:將和所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)組成目標(biāo)組合的子節(jié)點(diǎn)作為驗(yàn)證節(jié)點(diǎn),確定所述驗(yàn)證節(jié)點(diǎn)的值作為第二哈希值;將所述第一哈希值和所述第二哈希值兩兩哈希得到所述目標(biāo)父節(jié)點(diǎn)的值作為第一哈希值,將所述目標(biāo)父節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn);在所述目標(biāo)父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;將所述根節(jié)點(diǎn)的值作為所述校驗(yàn)根值。

在其中一個(gè)實(shí)施例中,所述裝置還包括存儲(chǔ)模塊,用于計(jì)算SSME模塊中各個(gè)SSME子模塊的哈希值作為所述Merkle樹(shù)的葉節(jié)點(diǎn)的值;將所述葉節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn),迭代執(zhí)行:將所述目標(biāo)節(jié)點(diǎn)不重復(fù)兩兩組合,遍歷得到的組合,對(duì)于遍歷到的目標(biāo)組合,計(jì)算目標(biāo)組合的哈希值作為所述目標(biāo)組合中的節(jié)點(diǎn)的父節(jié)點(diǎn)的值;在遍歷結(jié)束后,將所述父節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn);在所述父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;存儲(chǔ)所述Merkle樹(shù)。

在其中一個(gè)實(shí)施例中,所述裝置還包括檢測(cè)執(zhí)行模塊,用于當(dāng)所述SSME模塊安裝完成或所述SSME模塊升級(jí)完成后,調(diào)用所述存儲(chǔ)模塊。

在其中一個(gè)實(shí)施例中,所述存儲(chǔ)模塊還用于將所述SSME模塊劃分為2N個(gè)SSME子模塊,其中N為正整數(shù)。

實(shí)施本發(fā)明實(shí)施例,將具有如下有益效果:

采用了上述的安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法及裝置之后,當(dāng)確定待校驗(yàn)的SSME子模塊為目標(biāo)模塊之后,通過(guò)哈希函數(shù)生成目標(biāo)模塊對(duì)應(yīng)的校驗(yàn)值,根據(jù)已存儲(chǔ)的Merkle樹(shù)獲取根節(jié)點(diǎn)的值和目標(biāo)模塊在所述Merkle樹(shù)中對(duì)應(yīng)的葉節(jié)點(diǎn)的驗(yàn)證路徑,然后將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值,判斷校驗(yàn)根值是否與根節(jié)點(diǎn)的值匹配,若是,則目標(biāo)模塊校驗(yàn)通過(guò)。由于存儲(chǔ)的Merkle樹(shù)的根節(jié)點(diǎn)的值是在安裝或升級(jí)SSME模塊后,根據(jù)SSME子模塊對(duì)應(yīng)的葉節(jié)點(diǎn)生成的,因此通過(guò)對(duì)比校驗(yàn)根值和根節(jié)點(diǎn)的值則能驗(yàn)證SSME子模塊的完整性,從而提高車(chē)聯(lián)網(wǎng)設(shè)備的可靠性和安全性。

附圖說(shuō)明

為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

其中:

圖1為本發(fā)明實(shí)施例提供的一種SSME模塊的校驗(yàn)方法流程圖;

圖2為本發(fā)明實(shí)施例提供的一種Merkle樹(shù)的示意圖;

圖3為本發(fā)明實(shí)施例提供的一種驗(yàn)證目標(biāo)模塊的示意圖;

圖4為本發(fā)明實(shí)施例提供的一種SSME模塊的校驗(yàn)裝置結(jié)構(gòu)圖;

圖5為一個(gè)實(shí)施例中運(yùn)行SSME模塊的校驗(yàn)方法的計(jì)算機(jī)設(shè)備的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

為解決安全服務(wù)管理實(shí)體SSME模塊在被惡意軟件感染和控制后,提供錯(cuò)誤的數(shù)字證書(shū)和相關(guān)信息導(dǎo)致車(chē)聯(lián)網(wǎng)設(shè)備出現(xiàn)安全問(wèn)題,在一個(gè)實(shí)施例中,特提出了一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法。該方法的實(shí)現(xiàn)可依賴(lài)于計(jì)算機(jī)程序,該計(jì)算機(jī)程序可運(yùn)行于基于馮諾依曼體系的計(jì)算機(jī)系統(tǒng)之上,該計(jì)算機(jī)程序可以是車(chē)聯(lián)網(wǎng)設(shè)備中針對(duì)SSME模塊的安全驗(yàn)證軟件中的一個(gè)獨(dú)立的應(yīng)用,或者基于安全驗(yàn)證軟件應(yīng)用開(kāi)發(fā)的功能選項(xiàng)或應(yīng)用插件,該車(chē)聯(lián)網(wǎng)設(shè)備可以是汽車(chē),也可以是路邊單元等接入車(chē)聯(lián)網(wǎng)的設(shè)備,該SSME模塊基于WAVE 1609.2標(biāo)準(zhǔn)安裝與車(chē)聯(lián)網(wǎng)設(shè)備中,用于存儲(chǔ)數(shù)字證書(shū)及相關(guān)信息,并向車(chē)聯(lián)網(wǎng)設(shè)備內(nèi)其他模塊提供正確的數(shù)字證書(shū)相關(guān)信息。

該方法執(zhí)行后,在車(chē)聯(lián)網(wǎng)設(shè)備安裝SSME模塊時(shí),應(yīng)當(dāng)獲取每個(gè)SSME子模塊的哈希值,根據(jù)這些哈希值兩兩組合,繼續(xù)哈希,以此類(lèi)推,直至計(jì)算出Merkle樹(shù)的根節(jié)點(diǎn)的哈希值,并存儲(chǔ)Merkle樹(shù)。每當(dāng)需要調(diào)用一個(gè)SSME子模塊時(shí),需通過(guò)該SSME子模塊的哈希值校驗(yàn)該SSME子模塊的完整性,從而提高了車(chē)聯(lián)網(wǎng)設(shè)備的可靠性和安全性。

需要注意的是,當(dāng)SSME模塊進(jìn)行升級(jí)時(shí),應(yīng)當(dāng)同步更新所存儲(chǔ)的Merkle樹(shù)中包含的校驗(yàn)信息,包括重新計(jì)算哈希值、重新計(jì)算Merkle樹(shù),以及將重新計(jì)算結(jié)果更新所存儲(chǔ)的信息。

具體的,如圖1所示,一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法,包括:

步驟S102:確定待校驗(yàn)的SSME子模塊作為目標(biāo)模塊,通過(guò)哈希函數(shù)生成所述目標(biāo)模塊的校驗(yàn)值。

將運(yùn)行中需要調(diào)用的SSME子模塊作為待校驗(yàn)的SSME子模塊,將待校驗(yàn)的SSME子模塊作為目標(biāo)模塊。其中,待校驗(yàn)的SSME子模塊至少為一個(gè)。僅針對(duì)待校驗(yàn)的SSME子模塊進(jìn)行驗(yàn)證,而不是整個(gè)SSME模塊,可確定SSME子模塊是否可信,且提高了校驗(yàn)的查找效率。

本發(fā)明實(shí)施例中,獲取目標(biāo)模塊的校驗(yàn)信息,通過(guò)哈希函數(shù)生成校驗(yàn)信息對(duì)應(yīng)的校驗(yàn)值。目標(biāo)模塊的校驗(yàn)信息可為該目標(biāo)模塊的身份標(biāo)識(shí),該身份標(biāo)識(shí)可以是一串字符或數(shù)字,且能夠唯一標(biāo)識(shí)該SSME子模塊,即每一個(gè)SSME子模塊的身份標(biāo)識(shí)都是唯一的,如使用該SSME子模塊的用戶(hù)的昵稱(chēng)或用戶(hù)的聯(lián)系方式、MAC地址、設(shè)備ID等,本發(fā)明實(shí)施例不作限定。

本發(fā)明實(shí)施例中,哈希函數(shù)的構(gòu)造方法可為直接定址法、數(shù)字分析法、平均取中法、折疊法、除留余數(shù)法和隨機(jī)數(shù)法等中的一種或多種構(gòu)造方法的結(jié)合,本發(fā)明實(shí)施例不作限定。

步驟S104:根據(jù)已存儲(chǔ)的Merkle樹(shù)中獲取根節(jié)點(diǎn)的值和所述目標(biāo)模塊在所述Merkle樹(shù)中對(duì)應(yīng)的驗(yàn)證路徑,所述驗(yàn)證路徑為所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)到所述根節(jié)點(diǎn)所經(jīng)過(guò)的子節(jié)點(diǎn)的序列。

Merkle樹(shù),用來(lái)同步數(shù)據(jù)一致性的算法,也稱(chēng)為Merkle哈希樹(shù),這是因?yàn)樗鶚?gòu)造的Merkle樹(shù)的所有節(jié)點(diǎn)都是哈希值。Merkle樹(shù)具有以下特點(diǎn):

1)它是一種樹(shù),可以是二叉樹(shù),也可以多叉樹(shù),無(wú)論是幾叉樹(shù),它都具有樹(shù)結(jié)構(gòu)的所有特點(diǎn);

2)Merkle樹(shù)的葉節(jié)點(diǎn)的值由設(shè)計(jì)你指定,如Merkle樹(shù)將數(shù)據(jù)的哈希值作為葉節(jié)點(diǎn)的值;

3)非葉節(jié)點(diǎn)的值是根據(jù)它下面所有的葉節(jié)點(diǎn)值,然后按照一定的算法計(jì)算而得出的。如Merkle樹(shù)的非葉節(jié)點(diǎn)的值的計(jì)算方法是將該節(jié)點(diǎn)的所有子節(jié)點(diǎn)進(jìn)行組合,然后對(duì)組合結(jié)果進(jìn)行哈希計(jì)算所得出的哈希值。

本發(fā)明實(shí)施例中,在車(chē)聯(lián)網(wǎng)設(shè)備安裝SSME模塊時(shí),應(yīng)當(dāng)獲取每個(gè)SSME子模塊的哈希值,根據(jù)這些哈希值兩兩組合,繼續(xù)哈希,以此類(lèi)推,直至計(jì)算出Merkle樹(shù)的根節(jié)點(diǎn)的哈希值,并存儲(chǔ)Merkle樹(shù)。也就是說(shuō),通過(guò)存儲(chǔ)的Merkle樹(shù)可獲得根節(jié)點(diǎn)的值和對(duì)應(yīng)的SSME子模塊的驗(yàn)證路徑,對(duì)SSME子模塊的校驗(yàn)信息進(jìn)行存儲(chǔ),若該SSME子模塊被篡改則對(duì)應(yīng)的校驗(yàn)信息與存儲(chǔ)的校驗(yàn)信息必然不匹配,從而對(duì)SSME子模塊進(jìn)行校驗(yàn)。

具體的:計(jì)算SSME模塊中各個(gè)SSME子模塊的哈希值作為所述Merkle樹(shù)的葉節(jié)點(diǎn)的值;將所述葉節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn),迭代執(zhí)行:將所述目標(biāo)節(jié)點(diǎn)不重復(fù)兩兩組合,遍歷得到的組合,對(duì)于遍歷到的目標(biāo)組合,計(jì)算目標(biāo)組合的哈希值作為所述目標(biāo)組合中的節(jié)點(diǎn)的父節(jié)點(diǎn)的值;在遍歷結(jié)束后,將所述父節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn);在所述父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;存儲(chǔ)所述Merkle樹(shù)。

如圖2所示的Merkle樹(shù),每個(gè)SSME子模塊對(duì)應(yīng)一個(gè)葉節(jié)點(diǎn),如葉節(jié)點(diǎn)1對(duì)應(yīng)于子模塊1,葉節(jié)點(diǎn)2對(duì)應(yīng)于子模塊2,葉節(jié)點(diǎn)n對(duì)應(yīng)于子模塊n。通過(guò)計(jì)算哈希函數(shù)得到葉節(jié)點(diǎn)的值,這些葉節(jié)點(diǎn)兩兩組合得到該葉節(jié)點(diǎn)的父節(jié)點(diǎn),繼續(xù)執(zhí)行哈希,如葉節(jié)點(diǎn)1和葉節(jié)點(diǎn)2組合構(gòu)造父節(jié)點(diǎn)11,父節(jié)點(diǎn)11的值為葉節(jié)點(diǎn)1和葉節(jié)點(diǎn)2哈希計(jì)算得到的哈希值;葉節(jié)點(diǎn)3和葉節(jié)點(diǎn)4組合構(gòu)造父節(jié)點(diǎn)33,父節(jié)點(diǎn)33的值為葉節(jié)點(diǎn)3和葉節(jié)點(diǎn)4哈希計(jì)算得到的哈希值。將父節(jié)點(diǎn)2作為目標(biāo)節(jié)點(diǎn),與父節(jié)點(diǎn)4構(gòu)造父節(jié)點(diǎn)111,則父節(jié)點(diǎn)111的值為父節(jié)點(diǎn)2和父節(jié)點(diǎn)4哈希計(jì)算得到的哈希值,再將父節(jié)點(diǎn)111作為目標(biāo)節(jié)點(diǎn),以此類(lèi)推,直至構(gòu)造Merkle樹(shù)的根節(jié)點(diǎn),獲取該根節(jié)點(diǎn)的值和對(duì)應(yīng)的葉節(jié)點(diǎn)的驗(yàn)證路徑。

驗(yàn)證路徑為所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)到所述根節(jié)點(diǎn)所經(jīng)過(guò)的子節(jié)點(diǎn)的序列。如圖2所示的Merkle樹(shù)中,假設(shè)子模塊1為目標(biāo)模塊,則子模塊1在Merkle樹(shù)中對(duì)應(yīng)的驗(yàn)證路徑為父節(jié)點(diǎn)11、父節(jié)點(diǎn)111、……、父節(jié)點(diǎn)1…1。

需要說(shuō)明的是,該SSME模塊的SSME子模塊的數(shù)量應(yīng)該是雙數(shù),則將所述SSME模塊劃分為2N個(gè)SSME子模塊,其中N為正整數(shù)。

為了確保存儲(chǔ)的位置是安全可靠的,將Merkle樹(shù)存儲(chǔ)于可信存儲(chǔ)區(qū)域,可以是安全芯片這種固定的硬件設(shè)備,也可以是可信執(zhí)行環(huán)境(Trusted Execution Environment,TEE)這種軟件環(huán)境。

步驟S106:將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值。

根據(jù)目標(biāo)校驗(yàn)值和驗(yàn)證路徑上的子節(jié)點(diǎn)值獲取校驗(yàn)根值,具體的:將所述目標(biāo)校驗(yàn)值作為第一哈希值;獲取所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn),迭代執(zhí)行:將和所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)組成目標(biāo)組合的子節(jié)點(diǎn)作為驗(yàn)證節(jié)點(diǎn),確定所述驗(yàn)證節(jié)點(diǎn)的值作為第二哈希值;將所述第一哈希值和所述第二哈希值兩兩哈希得到所述目標(biāo)父節(jié)點(diǎn)的值作為第一哈希值,將所述目標(biāo)父節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn);在所述目標(biāo)父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;將所述根節(jié)點(diǎn)的值作為所述校驗(yàn)根值。

舉例來(lái)說(shuō),結(jié)合一個(gè)具體的實(shí)施例。如圖3所示,目標(biāo)模塊為子模塊3,子模塊3的驗(yàn)證路徑為父節(jié)點(diǎn)22,通過(guò)步驟S104獲取的校驗(yàn)值為121,則第一哈希值為121,將子模塊3對(duì)應(yīng)的葉節(jié)點(diǎn)3的父節(jié)點(diǎn)22作為目標(biāo)父節(jié)點(diǎn),驗(yàn)證節(jié)點(diǎn)為葉節(jié)點(diǎn)4,則第二哈希值為葉節(jié)點(diǎn)4的值122。通過(guò)第一哈希值121和第二哈希值122哈希得到目標(biāo)父節(jié)點(diǎn)的值為13;將父節(jié)點(diǎn)22的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn),即此時(shí)的目標(biāo)父節(jié)點(diǎn)為根節(jié)點(diǎn),第一哈希值為13,驗(yàn)證節(jié)點(diǎn)為父節(jié)點(diǎn)11,則第二哈希值為父節(jié)點(diǎn)11的值12,通過(guò)第一哈希值13和第二哈希值12哈希得到目標(biāo)父節(jié)點(diǎn)的值為1。由于目標(biāo)父節(jié)點(diǎn)為根節(jié)點(diǎn),則校驗(yàn)根值為1。

需要注意的是,SSME模塊升級(jí)是必不可少的,當(dāng)SSME模塊升級(jí)完成后,應(yīng)當(dāng)同步更新所存儲(chǔ)的校驗(yàn)信息,包括重新計(jì)算哈希值、重新計(jì)算Merkle樹(shù),以及將重新計(jì)算結(jié)果更新所存儲(chǔ)的信息。

步驟S108:當(dāng)所述校驗(yàn)根值與所述根節(jié)點(diǎn)的值匹配時(shí),確定所述目標(biāo)模塊校驗(yàn)通過(guò)。

當(dāng)校驗(yàn)根值與根節(jié)點(diǎn)的值匹配時(shí),說(shuō)明目標(biāo)模塊所構(gòu)造的Merkle樹(shù)的校驗(yàn)根值與存儲(chǔ)的Merkle樹(shù)的根節(jié)點(diǎn)的值一致,表示該目標(biāo)模塊沒(méi)有被修改,從而驗(yàn)證SSME子模塊的完整性,提高了車(chē)聯(lián)網(wǎng)設(shè)備的可靠性和安全性。

舉例來(lái)說(shuō),如圖3所示,假設(shè)目標(biāo)模塊為子模塊3,已存儲(chǔ)的Merkle樹(shù)的根節(jié)點(diǎn)的值為1,通過(guò)步驟S106獲取校驗(yàn)根值為1,則校驗(yàn)根值與根節(jié)點(diǎn)的值匹配,子模塊3校驗(yàn)通過(guò),則子模塊3可以為車(chē)聯(lián)網(wǎng)設(shè)備內(nèi)其他模塊提供正確的數(shù)字證書(shū)相關(guān)信息。

為解決安全服務(wù)管理實(shí)體SSME模塊在被惡意軟件感染和控制后,提供錯(cuò)誤的數(shù)字證書(shū)和相關(guān)信息導(dǎo)致車(chē)聯(lián)網(wǎng)設(shè)備出現(xiàn)安全問(wèn)題,在一個(gè)實(shí)施例中,特提出了一種安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)裝置。如圖4所示,上述安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)裝置包括校驗(yàn)值確定模塊102、參數(shù)獲取模塊104、校驗(yàn)根值確定模塊106以及校驗(yàn)結(jié)果處理模塊108,其中:

校驗(yàn)值確定模塊102,用于確定待校驗(yàn)的SSME子模塊作為目標(biāo)模塊,通過(guò)哈希函數(shù)生成所述目標(biāo)模塊的校驗(yàn)值;

參數(shù)獲取模塊104,用于根據(jù)已存儲(chǔ)的Merkle樹(shù)中獲取根節(jié)點(diǎn)的值和所述目標(biāo)模塊在所述Merkle樹(shù)中對(duì)應(yīng)的驗(yàn)證路徑,所述驗(yàn)證路徑為所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)到所述根節(jié)點(diǎn)所經(jīng)過(guò)的子節(jié)點(diǎn)的序列;

校驗(yàn)根值確定模塊106,用于將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值;

校驗(yàn)結(jié)果處理模塊108,用于當(dāng)所述校驗(yàn)根值與所述根節(jié)點(diǎn)的值匹配時(shí),確定所述目標(biāo)模塊校驗(yàn)通過(guò)。

在其中一個(gè)實(shí)施例中,所述校驗(yàn)根值確定模塊106還用于將所述目標(biāo)校驗(yàn)值作為第一哈希值;獲取所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn),迭代執(zhí)行:將和所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)組成目標(biāo)組合的子節(jié)點(diǎn)作為驗(yàn)證節(jié)點(diǎn),確定所述驗(yàn)證節(jié)點(diǎn)的值作為第二哈希值;將所述第一哈希值和所述第二哈希值兩兩哈希得到所述目標(biāo)父節(jié)點(diǎn)的值作為第一哈希值,將所述目標(biāo)父節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn);在所述目標(biāo)父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;將所述根節(jié)點(diǎn)的值作為所述校驗(yàn)根值。

在其中一個(gè)實(shí)施例中,所述裝置還包括存儲(chǔ)模塊110,用于計(jì)算SSME模塊中各個(gè)SSME子模塊的哈希值作為所述Merkle樹(shù)的葉節(jié)點(diǎn)的值;將所述葉節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn),迭代執(zhí)行:將所述目標(biāo)節(jié)點(diǎn)不重復(fù)兩兩組合,遍歷得到的組合,對(duì)于遍歷到的目標(biāo)組合,計(jì)算目標(biāo)組合的哈希值作為所述目標(biāo)組合中的節(jié)點(diǎn)的父節(jié)點(diǎn)的值;在遍歷結(jié)束后,將所述父節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn);在所述父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;存儲(chǔ)所述Merkle樹(shù)。

在其中一個(gè)實(shí)施例中,所述裝置還包括檢測(cè)執(zhí)行模塊1102,用于當(dāng)所述SSME模塊安裝完成或所述SSME模塊升級(jí)完成后,調(diào)用所述存儲(chǔ)模塊。

在其中一個(gè)實(shí)施例中,所述存儲(chǔ)模塊110還用于將所述SSME模塊劃分為2N個(gè)SSME子模塊,其中N為正整數(shù)。

實(shí)施本發(fā)明實(shí)施例,將具有如下有益效果:

采用了上述的安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法及裝置之后,當(dāng)確定待校驗(yàn)的SSME子模塊為目標(biāo)模塊之后,通過(guò)哈希函數(shù)生成目標(biāo)模塊對(duì)應(yīng)的校驗(yàn)值,根據(jù)已存儲(chǔ)的Merkle樹(shù)獲取根節(jié)點(diǎn)的值和目標(biāo)模塊在所述Merkle樹(shù)中對(duì)應(yīng)的葉節(jié)點(diǎn)的驗(yàn)證路徑,然后將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值,判斷校驗(yàn)根值是否與根節(jié)點(diǎn)的值匹配,若是,則目標(biāo)模塊校驗(yàn)通過(guò)。由于存儲(chǔ)的Merkle樹(shù)的根節(jié)點(diǎn)的值是在安裝或升級(jí)SSME模塊后,根據(jù)SSME子模塊對(duì)應(yīng)的葉節(jié)點(diǎn)生成的,因此通過(guò)對(duì)比校驗(yàn)根值和根節(jié)點(diǎn)的值則能驗(yàn)證SSME子模塊的完整性,從而提高車(chē)聯(lián)網(wǎng)設(shè)備的可靠性和安全性。

在一個(gè)實(shí)施例中,如圖5所示,圖5展示了一種運(yùn)行安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法的基于馮諾依曼體系的計(jì)算機(jī)系統(tǒng)的終端。該計(jì)算機(jī)系統(tǒng)可以是汽車(chē)等車(chē)聯(lián)網(wǎng)設(shè)備,也可以是路邊單元等接入車(chē)聯(lián)網(wǎng)的設(shè)備。具體的,可包括通過(guò)系統(tǒng)總線連接的外部輸入接口1001、處理器1002、存儲(chǔ)器1003和輸出接口1004。其中,外部輸入接口1001可選的可至少包括網(wǎng)絡(luò)接口10012。存儲(chǔ)器1003可包括外存儲(chǔ)器10032(例如硬盤(pán)、光盤(pán)或軟盤(pán)等)和內(nèi)存儲(chǔ)器10034。輸出接口1004可至少包括顯示屏10042等設(shè)備。

在本實(shí)施例中,本方法的運(yùn)行基于計(jì)算機(jī)程序,該計(jì)算機(jī)程序的程序文件存儲(chǔ)于前述基于馮諾依曼體系的計(jì)算機(jī)系統(tǒng)的外存儲(chǔ)器10032中,在運(yùn)行時(shí)被加載到內(nèi)存儲(chǔ)器10034中,然后被編譯為機(jī)器碼之后傳遞至處理器1002中執(zhí)行,從而使得基于馮諾依曼體系的計(jì)算機(jī)系統(tǒng)中形成邏輯上的校驗(yàn)值確定模塊102、參數(shù)獲取模塊104、校驗(yàn)根值確定模塊106、校驗(yàn)結(jié)果處理模塊108、存儲(chǔ)模塊110以及檢測(cè)執(zhí)行模塊1102。且在上述安全服務(wù)管理實(shí)體SSME模塊的校驗(yàn)方法執(zhí)行過(guò)程中,輸入的參數(shù)均通過(guò)外部輸入接口1001接收,并傳遞至存儲(chǔ)器1003中緩存,然后輸入到處理器1002中進(jìn)行處理,處理的結(jié)果數(shù)據(jù)或緩存于存儲(chǔ)器1003中進(jìn)行后續(xù)地處理,或被傳遞至輸出接口1004進(jìn)行輸出。

具體的,上述處理器1002用于確定待校驗(yàn)的SSME子模塊作為目標(biāo)模塊,通過(guò)哈希函數(shù)生成所述目標(biāo)模塊的校驗(yàn)值;根據(jù)已存儲(chǔ)的Merkle樹(shù)中獲取根節(jié)點(diǎn)的值和所述目標(biāo)模塊在所述Merkle樹(shù)中對(duì)應(yīng)的驗(yàn)證路徑,所述驗(yàn)證路徑為所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)到所述根節(jié)點(diǎn)所經(jīng)過(guò)的子節(jié)點(diǎn)的序列;將所述目標(biāo)校驗(yàn)值迭代地與所述驗(yàn)證路徑上的子節(jié)點(diǎn)值進(jìn)行哈希得到校驗(yàn)根值;當(dāng)所述校驗(yàn)根值與所述根節(jié)點(diǎn)的值匹配時(shí),確定所述目標(biāo)模塊校驗(yàn)通過(guò)。

在可選實(shí)施例中,在上述處理器1002還用于將所述目標(biāo)校驗(yàn)值作為第一哈希值;獲取所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn),迭代執(zhí)行:將和所述目標(biāo)模塊對(duì)應(yīng)的葉節(jié)點(diǎn)組成目標(biāo)組合的子節(jié)點(diǎn)作為驗(yàn)證節(jié)點(diǎn),確定所述驗(yàn)證節(jié)點(diǎn)的值作為第二哈希值;將所述第一哈希值和所述第二哈希值兩兩哈希得到所述目標(biāo)父節(jié)點(diǎn)的值作為第一哈希值,將所述目標(biāo)父節(jié)點(diǎn)的父節(jié)點(diǎn)作為目標(biāo)父節(jié)點(diǎn);在所述目標(biāo)父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;將所述根節(jié)點(diǎn)的值作為所述校驗(yàn)根值。

在可選實(shí)施例中,在上述存儲(chǔ)器1003用于計(jì)算SSME模塊中各個(gè)SSME子模塊的哈希值作為所述Merkle樹(shù)的葉節(jié)點(diǎn)的值;將所述葉節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn),迭代執(zhí)行:將所述目標(biāo)節(jié)點(diǎn)不重復(fù)兩兩組合,遍歷得到的組合,對(duì)于遍歷到的目標(biāo)組合,計(jì)算目標(biāo)組合的哈希值作為所述目標(biāo)組合中的節(jié)點(diǎn)的父節(jié)點(diǎn)的值;在遍歷結(jié)束后,將所述父節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn);在所述父節(jié)點(diǎn)為根節(jié)點(diǎn)時(shí),結(jié)束迭代;存儲(chǔ)所述Merkle樹(shù)。

在可選實(shí)施例中,在上述處理器1002還用于當(dāng)所述SSME模塊安裝完成或所述SSME模塊升級(jí)完成后,調(diào)用所述存儲(chǔ)模塊。

在可選實(shí)施例中,在上述存儲(chǔ)器1003還用于將所述SSME模塊劃分為2N個(gè)SSME子模塊,其中N為正整數(shù)。

以上所揭露的僅為本發(fā)明較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。

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