午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

使用分離數(shù)字簽名認(rèn)證多個(gè)文件的系統(tǒng)和方法

文檔序號:7860726閱讀:302來源:國知局
專利名稱:使用分離數(shù)字簽名認(rèn)證多個(gè)文件的系統(tǒng)和方法
使用分離數(shù)字簽名認(rèn)證多個(gè)文件的系統(tǒng)和方法技術(shù)領(lǐng)域
本發(fā)明的示例性實(shí)施例涉及認(rèn)證數(shù)據(jù)文件的方法,具體涉及認(rèn)證數(shù)據(jù)文件的方法,其中多個(gè)軟件部分文件各用獨(dú)特的分離數(shù)字簽名來數(shù)字地簽名。
背景技術(shù)
駕駛員具有很多根據(jù)其偏好個(gè)性化其車輛的機(jī)會。例如,用戶可從互聯(lián)網(wǎng)或計(jì)算機(jī)下載文件,然后將文件存儲到車輛控制模塊中。具體地,用戶可下載文件(例如音樂文件或?qū)Ш轿募?,然后將文件存儲到他或她的車輛的信息娛樂控制模塊中。然而,有時(shí)這些文件可能并不總是從可信的來源下載的,并可能具有完整性和認(rèn)證的問題。
另一個(gè)可能發(fā)生在車輛電子領(lǐng)域的挑戰(zhàn)是多個(gè)文件的問題,所述多個(gè)文件由不同的提供者和來源編程,并集成到單個(gè)車輛控制模塊或多個(gè)車輛控制模塊中。具體地,車輛控制模塊可包括由不同來源創(chuàng)建的各種文件,其中所述文件可作為軟件包的一部分的緊密聯(lián)接的文件鏈接到一起。例如,作為軟件包的一部分的緊密聯(lián)接的文件可包括第一文件和第二文件,所述第一文件包括用于氣囊控制模塊的算法,所述第二文件包括限定與氣囊控制模塊相關(guān)聯(lián)的氣囊何時(shí)將展開的校準(zhǔn)信息。在另一個(gè)示例中,對應(yīng)于車輛控制模塊的單個(gè)整體圖像可能太大,因此需要分為分散獨(dú)立的文件。然而,軟件包包括的各文件需要被評估認(rèn)證性和完整性。還應(yīng)該注意,以后也可對一些文件做出更新、新特征或其他類型的改變。
現(xiàn)在存在用于評估作為軟件包的一部分的各文件的一些方法。例如,與一組緊密聯(lián)接的文件相關(guān)聯(lián)的數(shù)字簽名可用于認(rèn)證文件。然而,如果文件包括在另一個(gè)應(yīng)用中(例如不同的車輛產(chǎn)線),或用于世界不同區(qū)域的應(yīng)用中,文件需要用另一個(gè)數(shù)字簽名來重新簽名。因此,希望提供使用可重復(fù)使用并可與多個(gè)車輛控制系統(tǒng)集成的方法來認(rèn)證多個(gè)文件的系統(tǒng)。發(fā)明內(nèi)容
在本發(fā)明的一個(gè)示例性實(shí)施例中,提供認(rèn)證數(shù)據(jù)文件的系統(tǒng)和方法。所述方法包括提供多個(gè)軟件部分文件和與軟件部分文件相關(guān)聯(lián)的清單文件。清單文件標(biāo)識多個(gè)軟件部分文件中的每一個(gè)。所述方法包括將清單文件與清單分離數(shù)字簽名相關(guān)聯(lián)。所述方法還包括用清單分離數(shù)字簽名數(shù)字地簽名清單文件。另外,清單文件包括各軟件部分文件的哈希值。清單分離數(shù)字簽名認(rèn)證清單文件。所述方法包括將多個(gè)軟件部分文件中的每一個(gè)與多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)相關(guān)聯(lián)。所述方法包括用多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)數(shù)字地簽名多個(gè)軟件部分文件中的每一個(gè)。多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)認(rèn)證多個(gè)軟件部分文件中的一個(gè)。
此外,本發(fā)明還涉及以下技術(shù)方案。
1.一種用于認(rèn)證數(shù)據(jù)文件的方法,包括: 提供多個(gè)軟件部分文件和與所述軟件部分文件相關(guān)聯(lián)的清單文件,所述清單文件標(biāo)識所述多個(gè)軟件部分文件中的每一個(gè); 將所述清單文件與清單分離數(shù)字簽名相關(guān)聯(lián); 用所述清單分離數(shù)字簽名來數(shù)字地簽名所述清單文件,其中,所述清單分離數(shù)字簽名認(rèn)證所述清單文件; 將所述多個(gè)軟件部分文件中的每一個(gè)與多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)相關(guān)聯(lián);以及 用所述多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)數(shù)字地簽名所述多個(gè)軟件部分文件中的每一個(gè),其中,所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)認(rèn)證所述多個(gè)軟件部分文件中的一個(gè)。
2.如技術(shù)方案I所述的方法,其特征在于,包括提供分離數(shù)字簽名文件,所述分離數(shù)字簽名文件包括所述多個(gè)獨(dú)特的分離數(shù)字簽名和所述清單分離數(shù)字簽名。
3.如技術(shù)方案I所述的方法,其特征在于,包括計(jì)算所述清單文件的清單文件哈希值并從所述清單分離數(shù)字簽名中提取清單數(shù)字簽名哈希值。
4.如技術(shù)方案3所述的方法,其特征在于,使用哈希函數(shù)來計(jì)算所述清單文件哈希值和所述清單數(shù)字簽名哈希值。
5.如技術(shù)方案3所述的方法,其特征在于,包括將所述清單文件哈希值和所述清單數(shù)字簽名哈希值進(jìn)行比較以確定所述清單文件哈希值和所述清單數(shù)字簽名哈希值是否相互匹配。
6.如技術(shù)方案5所述的方法,其特征在于,包括如果所述清單文件哈希值和所述清單數(shù)字簽名哈希值相互匹配,則從所述清單文件中提取代表所述多個(gè)軟件部分文件的部件編號列表。
7.如技術(shù)方案6所述的方法,其特征在于,包括計(jì)算所述多個(gè)軟件部分文件中的每一個(gè)的軟件部分文件哈希值并將所述軟件部分文件哈希值與存在于所述清單文件中的相應(yīng)的哈希值進(jìn)行比較,并且其中,如果所述軟件部分文件哈希值與所述清單文件的所述相應(yīng)的哈希值匹配,則從所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)提取相應(yīng)的分離數(shù)字簽名哈希值。
8.如技術(shù)方案7所述的方法,其特征在于,如果每個(gè)軟件部分文件哈希值和從所述多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)提取的相應(yīng)的分離數(shù)字簽名哈希值相互匹配,則確認(rèn)所述多個(gè)軟件部分文件和所述清單文件的完整性。
9.如技術(shù)方案7所述的方法,其特征在于,使用哈希函數(shù)來計(jì)算所述軟件部分文件哈希值和所述分離數(shù)字簽名哈希值。
10.如技術(shù)方案I所述的方法,其特征在于,包括提供證書文件,其中,所述證書文件包括證書簽名,并且其中,所述清單文件包括證書標(biāo)志,所述證書標(biāo)志是下載所述軟件部分文件需要證書的指示。
11.如技術(shù)方案I所述的方法,其特征在于,包括提供所述多個(gè)軟件部分文件和所述清單文件作為一組緊密聯(lián)接的文件的一部分。
12.如技術(shù)方案I所述的方法,其特征在于,所述至少一個(gè)控制模塊是信息娛樂模塊、無線電控制模塊、人機(jī)接口(“HMI”)模塊、氣囊控制模塊和導(dǎo)航控制模塊中的至少一個(gè)。
13.一種用于認(rèn)證數(shù)據(jù)文件的系統(tǒng),包括: 具有存儲器的存儲裝置,所述存儲器用于存儲多個(gè)軟件部分文件、與所述多個(gè)軟件部分文件相關(guān)聯(lián)的清單文件、多個(gè)獨(dú)特的分離數(shù)字簽名、和清單分離數(shù)字簽名,所述清單文件標(biāo)識所述多個(gè)軟件部分文件中的每一個(gè),其中,所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)認(rèn)證所述多個(gè)軟件部分文件中相應(yīng)的一個(gè),并且其中,所述清單分離數(shù)字簽名認(rèn)證所述清單文件;以及 至少一個(gè)連接到所述存儲裝置的控制模塊,用于發(fā)送和接收來自所述存儲裝置的數(shù)據(jù),所述至少一個(gè)控制模塊包括: 用于監(jiān)測所述存儲裝置以便監(jiān)測所述多個(gè)軟件部分文件、所述清單文件、所述多個(gè)軟件部分文件、所述多個(gè)獨(dú)特的分離數(shù)字簽名和所述清單分離數(shù)字簽名的控制邏輯; 用于計(jì)算表示包括在所述清單文件中的數(shù)據(jù)的清單文件哈希值的控制邏輯; 用于從所述清單分離數(shù)字簽名中提取清單數(shù)字簽名哈希值的控制邏輯; 用于將所述清單文件哈希值和所述清單數(shù)字簽名哈希值進(jìn)行比較以及如果所述清單文件哈希值和所述清單數(shù)字簽名哈希值匹配時(shí)認(rèn)證所述清單文件的控制邏輯; 用于計(jì)算所述多個(gè)軟件部分文件中的每一個(gè)的獨(dú)特的軟件部分文件哈希值以及將所述軟件部分文件哈希值和存在于所述清單文件中的相應(yīng)的哈希值進(jìn)行比較的控制邏輯;如果所述軟件部分文件哈希值與所述清單文件的相應(yīng)的哈希值匹配則從所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)提取分離數(shù)字簽名哈希值的控制邏輯; 用于將所述多個(gè)軟件部分文件中的每一個(gè)的所述獨(dú)特的軟件部分文件哈希值和來自所述多個(gè)獨(dú)特的分離數(shù)字簽名中相應(yīng)的一個(gè)的所述分離數(shù)字簽名哈希值進(jìn)行比較的控制邏輯;以及 如果所述多個(gè)軟件部分文件中的每一個(gè)的所述獨(dú)特的軟件部分文件哈希值與來自所述多個(gè)獨(dú)特的分離數(shù)字簽名中相應(yīng)的一個(gè)的分離數(shù)字簽名哈希值匹配則認(rèn)證所述多個(gè)軟件部分文件和所述清單文件的控制邏輯。
14.如技術(shù)方案13所述的系統(tǒng),其特征在于,包括通信接口,所述存儲裝置通過所述通信接口與所述至少一個(gè)控制模塊通信。
15.如技術(shù)方案14所述的系統(tǒng),其特征在于,所述通信接口是通用串行總線(“USB”)接口、無線連接、和8針連接器中的一個(gè)。
16.如技術(shù)方案13所述的系統(tǒng),其特征在于,所述至少一個(gè)控制模塊是信息娛樂模塊、無線電控制模塊、人機(jī)接口(“HMI”)模塊、氣囊控制模塊和導(dǎo)航控制模塊中的至少一個(gè)。
17.如技術(shù)方案13所述的系統(tǒng),其特征在于,使用哈希函數(shù)來計(jì)算所述清單文件哈希值和所述清單數(shù)字簽名哈希值。
18.如技術(shù)方案13所述的系統(tǒng),其特征在于,使用哈希函數(shù)來計(jì)算所述軟件部分文件哈希值和所述分離數(shù)字簽名哈希值。
19.如技術(shù)方案13所述的系統(tǒng),其特征在于,包括證書文件,所述證書文件包括證書簽名,其中,所述清單文件包括證書標(biāo)志,所述證書標(biāo)志是下載所述軟件部分文件需要證書的指示。
20.如技術(shù)方案19所述的系統(tǒng),其特征在于,所述證書簽名基于車輛識別碼(“VIN”)和所述清單文件。
上述特征和優(yōu)點(diǎn)以及本發(fā)明其它的特征和優(yōu)點(diǎn)將根據(jù)以下結(jié)合附圖對本發(fā)明進(jìn)行的詳細(xì)說明而變得清楚。


在以下參照附圖僅通過示例給出的實(shí)施例的詳細(xì)說明中,其它特征、優(yōu)點(diǎn)和細(xì)節(jié)得以顯現(xiàn),附圖中: 圖1是用于認(rèn)證數(shù)據(jù)文件的示例性系統(tǒng)的示意圖,所述系統(tǒng)包括存儲裝置和至少一個(gè)車輛控制模塊; 圖2是圖1中說明的系統(tǒng)的框圖,其中存儲有多個(gè)數(shù)據(jù)文件;以及 圖3是顯示操作圖1中所顯示的系統(tǒng)的方法的過程流圖。
具體實(shí)施方式
以下說明內(nèi)容在本質(zhì)上僅僅是示例性的,而并不是為了限制本發(fā)明、其應(yīng)用或用途。應(yīng)當(dāng)明白在所有附圖中,相應(yīng)的附圖標(biāo)記指示類似的或者相應(yīng)的部件和特征。如在本文中所使用的術(shù)語模塊和子模塊是指專用集成電路(ASIC),電子電路、處理器(共享,專用或成組的)和存儲器,其執(zhí)行一個(gè)或多個(gè)軟件或固件程序、組合邏輯電路和/或提供所述功能的其它適當(dāng)組件。
根據(jù)本發(fā)明的示例性實(shí)施例,圖1是數(shù)據(jù)文件認(rèn)證系統(tǒng)10的示意圖。數(shù)據(jù)文件認(rèn)證系統(tǒng)10包括存儲裝置20、通信接口 22和至少一個(gè)控制模塊24。在所示的示例性實(shí)施例中,數(shù)據(jù)文件認(rèn)證系統(tǒng)10在車輛30中使用,其中控制模塊24是車輛控制模塊。例如,控制模塊24可為信息娛樂模塊、無線電控制模塊、人機(jī)接口(“HMI”)模塊、氣囊控制模塊或?qū)Ш娇刂颇K。然而,應(yīng)當(dāng)明白,數(shù)據(jù)文件認(rèn)證系統(tǒng)10也可用在其他應(yīng)用中。
存儲裝置20典型地是具有在其上存儲數(shù)據(jù)文件的存儲器的任何類型的計(jì)算裝置,并可具有車載文件存儲容量。例如,在一個(gè)實(shí)施例中,存儲裝置20是通用串行總線(“USB”)閃存驅(qū)動器。在另一個(gè)實(shí)施例中,存儲裝置20是位于經(jīng)銷商的服務(wù)中心診斷工具的一部分,其中服務(wù)中心診斷工具包括用于存儲各種文件的存儲器。在另一個(gè)實(shí)施例中,存儲裝置20是位于制造廠的閃存編程工具的一部分。存儲裝置20通過通信接口 22與一個(gè)或多個(gè)控制模塊24通信。在一個(gè)實(shí)施例中,通信接口 22是USB接口,然而應(yīng)當(dāng)明白,也可使用其他的數(shù)據(jù)接口方法。例如,在可選的實(shí)施例中,也可使用8針連接器或無線連接。
現(xiàn)在轉(zhuǎn)到圖2,顯示了存儲裝置20、通信接口 22和控制模塊24的框圖。存儲裝置20包括多個(gè)軟件部分文件40和清單文件42。在顯示的實(shí)施例中,顯示了三個(gè)軟件部分文件40。軟件部分文件40可為例如,軟件文件、校準(zhǔn)文件、參考數(shù)據(jù)文件、圖像文件或語言文件。每個(gè)軟件部分文件40可包括獨(dú)特的標(biāo)識符,例如由制造商分配的部件編號。也就是說,每個(gè)軟件部分文件40具有相應(yīng)的標(biāo)識符,例如,相應(yīng)的部件編號。清單文件42用軟件部分文件的獨(dú)特的標(biāo)識符來標(biāo)識每個(gè)軟件部分文件40。具體地,在一個(gè)示例中,清單文件42用相應(yīng)的部件編號標(biāo)識每個(gè)軟件部分文件40。軟件部分文件40是一組相關(guān)聯(lián)的文件。也就是說,軟件部分文件40可能是互相依賴的。在一個(gè)實(shí)施例中,例如,軟件文件是一組緊密聯(lián)接的文件。例如,軟件部分文件40可以是軟件包的一部分,該軟件包包括第一文件和第二文件,所述第一文件包括用于氣囊控制模塊的算法,所述第二文件包括限定與氣囊控制模塊相關(guān)聯(lián)的氣囊何時(shí)將展開的校準(zhǔn)信息?;蛘?,在另一個(gè)實(shí)施例中,軟件部分文件40可包括第一文件和第二文件,所述第一文件更新HMI模塊的用戶接口,所述第二文件包括處理無線電控制模塊的特殊用戶需求的算法。
每個(gè)軟件部分文件40具有相應(yīng)的獨(dú)特的分離數(shù)字簽名46。具體地,分離數(shù)字簽名46是用于認(rèn)證軟件部分文件40的分開存儲的數(shù)字簽名。分離數(shù)字簽名46指示軟件部分文件40是否源自可信的來源。分離數(shù)字簽名46還可指示軟件部分文件40是否已被篡改。清單文件42還包括相應(yīng)的清單分離數(shù)字簽名50。與分離數(shù)字簽名46類似,清單分離數(shù)字簽名50指示清單文件42是否源自可信的來源,以及清單文件42是否已被篡改。在如圖2中顯示的示例性實(shí)施例中,獨(dú)特的分離數(shù)字簽名46和清單分離數(shù)字簽名50是單個(gè)分離數(shù)字簽名文件52的一部分。每個(gè)軟件部分文件40由分離數(shù)字簽名46中的一個(gè)數(shù)字地簽名,清單文件42由清單分離數(shù)字簽名50簽名。
在一個(gè)實(shí)施例中,存儲裝置20還可包括證書文件62。證書文件62通常用于防止軟件文件40的非認(rèn)證使用。證書文件62包括數(shù)字簽名64,其中數(shù)字簽名64認(rèn)證或確認(rèn)證書文件62。在一個(gè)實(shí)施例中,如果數(shù)據(jù)文件認(rèn)證系統(tǒng)10是在車輛30中,則證書文件62可包括車輛識別碼(“VIN”),并且數(shù)字簽名64可基于VIN和清單文件42。
在一個(gè)實(shí)施例中,軟件部分文件40和清單文件42通過使用消息摘要數(shù)字地簽名,所述消息摘要還被稱為哈希值。哈希值表示已被轉(zhuǎn)換到具有固定長度的一串?dāng)?shù)據(jù)的具有可變長度的一串?dāng)?shù)據(jù)。哈希值可被分配給電子數(shù)據(jù)文件或變化長度的一串?dāng)?shù)據(jù),并用于檢驗(yàn)電子數(shù)據(jù)沒有被未認(rèn)證用戶改變。哈希值可由哈希函數(shù)計(jì)算。哈希算法或類似的函數(shù)可以是用于將可變串計(jì)算為固定串的任何類型的方法。哈希函數(shù)的一些示例包括但不以限于,MD5、SHAU SHA-256、SHA-384和SHA-512。分離數(shù)字簽名46和清單分離數(shù)字簽名50各包括加密哈希值。
繼續(xù)參考圖2,一個(gè)或多個(gè)控制模塊24包括用于監(jiān)測存儲裝置20以便監(jiān)測包括分離數(shù)字簽名46和清單分離數(shù)字簽名50的加密哈希值的數(shù)據(jù)信號的控制邏輯??刂颇K24還包括用于從分離數(shù)字簽名46和清單分離數(shù)字簽名50中提取加密哈希值的控制邏輯??刂颇K24包括用于監(jiān)測存儲裝置20以便監(jiān)測包括軟件部分文件40和清單文件42的數(shù)據(jù)的控制邏輯。控制模塊24還包括用于計(jì)算哈希值的控制邏輯,所述哈希值表示在每個(gè)軟件部分文件40和清單文件42中包括的數(shù)據(jù)。具體地,控制模塊24使用哈希函數(shù)來產(chǎn)生對應(yīng)于每個(gè)軟件部分文件40的哈希值和表示清單文件42中包括的數(shù)據(jù)的另一個(gè)哈希值。
控制模塊24還包括用于將清單文件42的哈希值與清單分離數(shù)字簽名50的哈希值進(jìn)行比較的控制邏輯。如果清單文件42與清單分離數(shù)字簽名50的哈希值都匹配,清單文件42的完整性被確認(rèn)。如果清單文件42的完整性被確認(rèn),控制模塊24包括用于計(jì)算每個(gè)軟件部分文件40中包括的數(shù)據(jù)的哈希值和將產(chǎn)生的哈希值與清單文件42中存在的相應(yīng)的哈希值進(jìn)行比較的控制邏輯??刂颇K24還包括用于將計(jì)算的軟件部分文件40的哈希值與從相應(yīng)的分離數(shù)字簽名46中提取的哈希值進(jìn)行比較的控制邏輯。如果軟件部分文件40的哈希值和從相應(yīng)的分離數(shù)字簽名46中提取的哈希值都匹配,這指示軟件部分文件40的認(rèn)證是有效的。另外,匹配哈希值還檢驗(yàn)了軟件部分文件40的完整性。這樣,軟件部分文件40和清單文件42可存儲在一個(gè)或多個(gè)控制模塊24的存儲器上。如果清單文件42、任何軟件部分文件40或整個(gè)軟件包的完整性是未檢驗(yàn)的,那么軟件部分文件40和清單文件42不存儲在控制模塊24的存儲器上。
在一個(gè)實(shí)施例中,如果下載軟件部分文件40需要證書文件(例如證書文件62),那么清單文件42存儲證書標(biāo)志。該證書標(biāo)志發(fā)送到一個(gè)或多個(gè)控制模塊24。證書標(biāo)志是下載軟件部分文件40需要證書的指示??刂颇K24包括用于從存儲裝置20請求證書文件的控制邏輯。如果由于在證書文件62中的VIN與車輛30的VIN不同而使證書文件62被省略、缺失、無效,或由于簽名64是無效的而無效,那么軟件部分文件40和清單文件42將不存儲在控制模塊24的存儲器上。這樣,采用證書文件62確保軟件部分文件40沒有被竊取或是從未認(rèn)證的來源得到。
現(xiàn)在將解釋操作數(shù)據(jù)文件認(rèn)證系統(tǒng)10的一個(gè)方法。參考圖3并繼續(xù)參考圖1-2,顯示了操作數(shù)據(jù)文件認(rèn)證系統(tǒng)10的示例性過程的示例性過程流圖總體地由標(biāo)號100指示。方法100從步驟102開始,在步驟102,一個(gè)或多個(gè)控制模塊24包括用于監(jiān)測存儲裝置20以便監(jiān)測包括清單分離數(shù)字簽名50的哈希值的數(shù)據(jù)信號和包括清單文件42的數(shù)據(jù)的控制邏輯,如在圖2中顯示的。然后,方法100可進(jìn)行到步驟104。
在步驟104中,控制模塊24包括用于計(jì)算包括在清單文件42中的數(shù)據(jù)的哈希值的控制邏輯。具體地,在一個(gè)實(shí)施例中,控制模塊24使用哈希函數(shù)來產(chǎn)生包括在清單文件42中的數(shù)據(jù)的哈希值??刂颇K24還包括用于從清單分離數(shù)字簽名50中提取加密哈希值的控制邏輯。然后,方法100可進(jìn)行到步驟106。
在步驟106,控制模塊24包括用于將清單文件42的哈希值與清單分離數(shù)字簽名50的哈希值進(jìn)行比較的控制邏輯。如果清單文件42與清單分離數(shù)字簽名50的哈希值不匹配,這是清單文件42可能已經(jīng)被篡改或改變的指示。因此,方法100將結(jié)束。如果清單文件42與清單分離數(shù)字簽名的哈希值匹配,這認(rèn)證了清單文件42。一旦清單文件42已被認(rèn)證,則方法100可進(jìn)行到步驟108。
在步驟108中,控制模塊24包括用于監(jiān)測存儲裝置20和從清單文件42中提取表示軟件部分文件40的部件編號列表的控制邏輯。然后,方法100可進(jìn)行到步驟110。
在步驟110中,控制模塊24包括用于計(jì)算包括在每個(gè)軟件數(shù)據(jù)文件40中的數(shù)據(jù)的哈希值的控制邏輯。該控制邏輯將計(jì)算的軟件數(shù)據(jù)文件40的哈希值與存在于清單文件42中的相應(yīng)的哈希值進(jìn)行比較以檢驗(yàn)整個(gè)軟件包的完整性。如果未確認(rèn)完整性,則方法100將結(jié)束??刂颇K24還包括用于從每個(gè)分離數(shù)字簽名46中提取加密哈希值的控制邏輯。然后,方法100可進(jìn)行到步驟112。
在步驟112,控制模塊24包括用于將軟件部分文件40的哈希值與分離數(shù)字簽名46的哈希值進(jìn)行比較的控制邏輯。如果軟件數(shù)據(jù)文件40與相應(yīng)的分離數(shù)字簽名46的各個(gè)哈希值不匹配,這是軟件數(shù)據(jù)文件40可能已經(jīng)被篡改或改變的指示。因此,方法100將結(jié)束。如果軟件數(shù)據(jù)文件40與相應(yīng)的分離數(shù)字簽名46的哈希值匹配,這認(rèn)證了所有的軟件部分文件40,則方法100可進(jìn)行到步驟114。
在步驟114中,控制模塊24包括用于在控制模塊24的存儲器上存儲軟件部分文件40和清單文件42的控制邏輯,因?yàn)榍鍐挝募?2和每個(gè)軟件部分文件40的完整性已被檢驗(yàn)。然后方法100可結(jié)束。
盡管已參照示例性實(shí)施例對本發(fā)明進(jìn)行了描述,但本領(lǐng)域技術(shù)人員理解的是,在不脫離本發(fā)明的范圍的情況下,還可做出各種改變和將上述實(shí)施例中的各個(gè)元件用等同物進(jìn)行替換。另外,在本發(fā)明的教導(dǎo)下,可做許多變形以適應(yīng)特殊情況或材料,這些都不會脫離本發(fā)明的實(shí)質(zhì)范圍。因此,本發(fā)明不受限于所公開的具體實(shí)施例,而是本發(fā)明將包括落入到本申請范圍內(nèi)的所有實(shí)施例。
權(quán)利要求
1.一種用于認(rèn)證數(shù)據(jù)文件的方法,包括: 提供多個(gè)軟件部分文件和與所述軟件部分文件相關(guān)聯(lián)的清單文件,所述清單文件標(biāo)識所述多個(gè)軟件部分文件中的每一個(gè); 將所述清單文件與清單分離數(shù)字簽名相關(guān)聯(lián); 用所述清單分離數(shù)字簽名來數(shù)字地簽名所述清單文件,其中,所述清單分離數(shù)字簽名認(rèn)證所述清單文件; 將所述多個(gè)軟件部分文件中的每一個(gè)與多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)相關(guān)聯(lián);以及 用所述多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)數(shù)字地簽名所述多個(gè)軟件部分文件中的每一個(gè),其中,所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)認(rèn)證所述多個(gè)軟件部分文件中的一個(gè)。
2.如權(quán)利要求1所述的方法,其特征在于,包括提供分離數(shù)字簽名文件,所述分離數(shù)字簽名文件包括所述多個(gè)獨(dú)特的分離數(shù)字簽名和所述清單分離數(shù)字簽名。
3.如權(quán)利要求1所述的方法,其特征在于,包括計(jì)算所述清單文件的清單文件哈希值并從所述清單分離數(shù)字簽名中提取清單數(shù)字簽名哈希值。
4.如權(quán)利要求3所述的方法,其特征在于,使用哈希函數(shù)來計(jì)算所述清單文件哈希值和所述清單數(shù)字簽名哈希值。
5.如權(quán)利要 求3所述的方法,其特征在于,包括將所述清單文件哈希值和所述清單數(shù)字簽名哈希值進(jìn)行比較以確定所述清單文件哈希值和所述清單數(shù)字簽名哈希值是否相互匹配。
6.如權(quán)利要求5所述的方法,其特征在于,包括如果所述清單文件哈希值和所述清單數(shù)字簽名哈希值相互匹配,則從所述清單文件中提取代表所述多個(gè)軟件部分文件的部件編號列表。
7.如權(quán)利要求6所述的方法,其特征在于,包括計(jì)算所述多個(gè)軟件部分文件中的每一個(gè)的軟件部分文件哈希值并將所述軟件部分文件哈希值與存在于所述清單文件中的相應(yīng)的哈希值進(jìn)行比較,并且其中,如果所述軟件部分文件哈希值與所述清單文件的所述相應(yīng)的哈希值匹配,則從所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)提取相應(yīng)的分離數(shù)字簽名哈希值。
8.如權(quán)利要求7所述的方法,其特征在于,如果每個(gè)軟件部分文件哈希值和從所述多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)提取的相應(yīng)的分離數(shù)字簽名哈希值相互匹配,則確認(rèn)所述多個(gè)軟件部分文件和所述清單文件的完整性。
9.如權(quán)利要求7所述的方法,其特征在于,使用哈希函數(shù)來計(jì)算所述軟件部分文件哈希值和所述分離數(shù)字簽名哈希值。
10.一種用于認(rèn)證數(shù)據(jù)文件的系統(tǒng),包括: 具有存儲器的存儲裝置,所述存儲器用于存儲多個(gè)軟件部分文件、與所述多個(gè)軟件部分文件相關(guān)聯(lián)的清單文件、多個(gè)獨(dú)特的分離數(shù)字簽名、和清單分離數(shù)字簽名,所述清單文件標(biāo)識所述多個(gè)軟件部分文件中的每一個(gè),其中,所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)認(rèn)證所述多個(gè)軟件部分文件中相應(yīng)的一個(gè),并且其中,所述清單分離數(shù)字簽名認(rèn)證所述清單文件;以及至少一個(gè)連接到所述存儲裝置的控制模塊,用于發(fā)送和接收來自所述存儲裝置的數(shù)據(jù),所述至少一個(gè)控制模塊包括: 用于監(jiān)測所述存儲裝置以便監(jiān)測所述多個(gè)軟件部分文件、所述清單文件、所述多個(gè)軟件部分文件、所述多個(gè)獨(dú)特的分離數(shù)字簽名和所述清單分離數(shù)字簽名的控制邏輯; 用于計(jì)算表示包括在所述清單文件中的數(shù)據(jù)的清單文件哈希值的控制邏輯; 用于從所述清單分離數(shù)字簽名中提取清單數(shù)字簽名哈希值的控制邏輯; 用于將所述清單文件哈希值和所述清單數(shù)字簽名哈希值進(jìn)行比較以及如果所述清單文件哈希值和所述清單數(shù)字簽名哈希值匹配時(shí)認(rèn)證所述清單文件的控制邏輯; 用于計(jì)算所述多個(gè)軟件部分文件中的每一個(gè)的獨(dú)特的軟件部分文件哈希值以及將所述軟件部分文件哈希值和存在于所述清單文件中的相應(yīng)的哈希值進(jìn)行比較的控制邏輯;如果所述軟件部分文件哈希值與所述清單文件的相應(yīng)的哈希值匹配則從所述多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)提取分離數(shù)字簽名哈希值的控制邏輯; 用于將所述多個(gè)軟件部分文件中的每一個(gè)的所述獨(dú)特的軟件部分文件哈希值和來自所述多個(gè)獨(dú)特的分離數(shù)字簽名中相應(yīng)的一個(gè)的所述分離數(shù)字簽名哈希值進(jìn)行比較的控制邏輯;以及 如果所述多個(gè)軟件部分文件中的每一個(gè)的所述獨(dú)特的軟件部分文件哈希值與來自所述多個(gè)獨(dú)特的分離數(shù)字簽名中相應(yīng)的一個(gè)的分離數(shù)字簽名哈希值匹配則認(rèn)證所述多個(gè)軟件部分文件和所述清 單文件的控制邏輯。
全文摘要
本發(fā)明提供一種認(rèn)證數(shù)據(jù)文件的系統(tǒng)和方法。方法包括提供多個(gè)軟件部分文件和與軟件部分文件相關(guān)聯(lián)的清單文件。清單文件標(biāo)識多個(gè)軟件部分文件中的每一個(gè)。方法包括將清單文件與清單分離數(shù)字簽名相關(guān)聯(lián)。方法還包括用清單分離數(shù)字簽名數(shù)字地簽名清單文件。清單分離數(shù)字簽名認(rèn)證清單文件。方法包括將多個(gè)軟件部分文件中的每一個(gè)與多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)相關(guān)聯(lián)。方法包括用多個(gè)獨(dú)特的分離數(shù)字簽名中的一個(gè)數(shù)字地簽名多個(gè)軟件部分文件中的每一個(gè)。多個(gè)獨(dú)特的分離數(shù)字簽名中的每一個(gè)認(rèn)證軟件部分文件中的一個(gè)。
文檔編號H04L29/08GK103200163SQ20121034864
公開日2013年7月10日 申請日期2012年9月19日 優(yōu)先權(quán)日2011年9月19日
發(fā)明者S.P.薩卡, A.I.阿爾拉巴迪, T.M.P.卡特斯伯格 申請人:通用汽車環(huán)球科技運(yùn)作有限責(zé)任公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1