亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于防止待經(jīng)由總線系統(tǒng)傳輸?shù)挠行?shù)據(jù)包被操縱的方法與流程

文檔序號:12486179閱讀:264來源:國知局
用于防止待經(jīng)由總線系統(tǒng)傳輸?shù)挠行?shù)據(jù)包被操縱的方法與流程

本發(fā)明涉及一種用于防止待經(jīng)由總線系統(tǒng)在至少兩個系統(tǒng)組件之間傳輸?shù)挠行?shù)據(jù)包被操縱的方法,其中所述系統(tǒng)組件分別包括簽名和簽名檢驗單元,借助所述簽名和簽名檢驗單元(Signierungs-und Signierungsprüfungseinheit)能夠生成和檢驗用于有效數(shù)據(jù)包(Nutzdatenpakete)的數(shù)據(jù)包。



背景技術:

一段時間以來有越來越多的黑客攻擊針對機動車的總線系統(tǒng),其中將任意的數(shù)據(jù)或數(shù)據(jù)包加載到機動車的總線系統(tǒng)、尤其CAN-總線系統(tǒng)上,這造成了或可能造成車輛性能異常。這種黑客攻擊可導致機動車的損壞或機動車組件的損壞。

因此在現(xiàn)有技術中已經(jīng)存在設計用于保護總線系統(tǒng)的系統(tǒng)組件之間的通信的若干途徑。例如,DE 10 2009 002 396 A1公開了一種用于防止傳感器和傳感器的傳感器數(shù)據(jù)被操縱的方法,其中在認證傳感器數(shù)據(jù)的框架中給傳感器發(fā)送來自控制器的隨機數(shù),其中為了識別傳感器數(shù)據(jù)的操縱,從傳感器到控制器的傳感器數(shù)據(jù)設有加密完整性保護。另外,為了防止重放攻擊,給傳感器數(shù)據(jù)增加額外的隨時間變化的參數(shù)。DE 10 2009 045 133 A1公開了很相似的方法。

DE 10 2004 036 810 A1另外公開了用于機動車總線系統(tǒng)的至少兩個系統(tǒng)組件的通信方法。在該通信方法中,這些系統(tǒng)組件分別提供預定的固定數(shù)目的僅它們知道的驗證碼?;趦蓚€系統(tǒng)組件都能訪問的隨時間變化的信號,在車輛啟動時由兩個系統(tǒng)組件通過在此設計為哈希函數(shù)的映射函數(shù)選出其中一個驗證碼并且用該驗證碼編碼待傳輸?shù)挠行?shù)據(jù)。另外在現(xiàn)有技術中存在多種多樣的用來為信息加密的方法和標準,其中作為其中一個實例要提及的是AUTOSAR標準。

然而,所有這些方法和標準都具有關于其安全性或關于其可操作性的缺 陷。因此,例如通過CAN-總線系統(tǒng)僅能傳輸有限的預定比特長度的數(shù)據(jù)包,該比特長度對于大多數(shù)前述和現(xiàn)有技術中已知的加密方法和加密標準都太低。另外,所述加密方法和系統(tǒng)通常關于其他方面也不是針對機動車中使用的總線系統(tǒng)設計的,提供的安全級別不夠或者需要大幅修改待傳輸?shù)南?。大多?shù)所述方法和標準都未考慮或未充分考慮尤其是混合總線系統(tǒng),如CAN-總線系統(tǒng)、CAN-FD-總線系統(tǒng)或者以太網(wǎng)。



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

現(xiàn)在本發(fā)明要解決的技術問題在于,提供一種用于防止待經(jīng)由總線系統(tǒng)在至少兩個系統(tǒng)組件之間傳輸?shù)挠行?shù)據(jù)包被操縱的方法,該方法相對于現(xiàn)有技術而言更好地適合于在機動車中使用的總線系統(tǒng)并且不受借助所述總線系統(tǒng)可傳輸?shù)臄?shù)據(jù)包的最大比特長度的約束。

提供了一種用于防止待經(jīng)由總線系統(tǒng)在至少兩個系統(tǒng)組件之間傳輸?shù)挠行?shù)據(jù)包被操縱的方法,其中,所述系統(tǒng)組件分別包括簽名和簽名檢驗單元,借助所述簽名和簽名檢驗單元能夠生成和檢驗數(shù)據(jù)包。在該方法的范圍內(nèi),所述系統(tǒng)組件中的第一系統(tǒng)組件為待經(jīng)由總線系統(tǒng)傳輸?shù)挠行?shù)據(jù)包生成獨立的、帶有保護信息的保護數(shù)據(jù)包,該保護數(shù)據(jù)包不取決于、但是仍然能夠明確地對應于該有效數(shù)據(jù)包。接下來將所生成的保護數(shù)據(jù)包與所關聯(lián)的有效數(shù)據(jù)包分離地通過總線系統(tǒng)發(fā)送給所述系統(tǒng)組件中的第二系統(tǒng)組件。另外還通過所述系統(tǒng)組件中的第二系統(tǒng)組件根據(jù)所發(fā)送的保護數(shù)據(jù)包對所傳輸?shù)挠行?shù)據(jù)包進行真實性驗證。

在這樣的方法中,除了要保護的信息外,即除了要保護的有效數(shù)據(jù)包外,還通過總線系統(tǒng)傳輸另外的含保護信息的信息、即保護數(shù)據(jù)包,保護數(shù)據(jù)包的保護信息是以加密方式生成的并且可以由進行接收的系統(tǒng)組件驗證。由此使得上述黑客攻擊不能實現(xiàn)。

優(yōu)選地,數(shù)據(jù)包包含至少一個關于至少一個比特的值的信息。

優(yōu)選地,在發(fā)送保護數(shù)據(jù)包后,將與保護數(shù)據(jù)包可對應的有效數(shù)據(jù)包從第一系統(tǒng)組件傳送給第二系統(tǒng)組件。進一步優(yōu)選地,同時發(fā)送有效數(shù)據(jù)包和可對應于該有效數(shù)據(jù)包的保護數(shù)據(jù)包。

在優(yōu)選實施方式中,向所述至少兩個系統(tǒng)組件的簽名和簽名檢驗單元中分別存入至少一個完全相同的密鑰,借助該密鑰加密和解密所發(fā)送的保護數(shù) 據(jù)包。在這樣的實施方式中,可以以簡單但是還安全的方式用同一密鑰加密和解密該保護數(shù)據(jù)包。

優(yōu)選地,每個有效數(shù)據(jù)包(為該有效數(shù)據(jù)包生成了保護數(shù)據(jù)包)還包括比特長度為N比特的計數(shù)器,該計數(shù)器在每次傳送相應的有效數(shù)據(jù)包時都增加。特別優(yōu)選地,有效數(shù)據(jù)包的計數(shù)器在每次傳送該有效數(shù)據(jù)包時都增加1。進一步優(yōu)選地,計數(shù)器在溢出時復位至初始值零。這有助于安全地防止所謂的重放攻擊并且能夠?qū)崿F(xiàn)將保護數(shù)據(jù)包簡單地對應于它們各自的有效數(shù)據(jù)包。另外優(yōu)選地,分別可對應于有效數(shù)據(jù)包的保護數(shù)據(jù)包還包括有效數(shù)據(jù)包所帶有的計數(shù)器。特別優(yōu)選地,該方法被設計用于發(fā)送所謂的有關ASIL的信息,也就是說用于那些對于所謂的汽車安全完整性等級(Automotive Safety Integrity Level)相關的有效數(shù)據(jù)包。更準確地說,所謂的分級ASIL數(shù)據(jù)包自身已然包含了計數(shù)器。通過在AUTOSAR中確定的方法來確保計數(shù)器在ASIL數(shù)據(jù)包中的實施。在所謂的AUTOSAR中,即在所謂的汽車開放系統(tǒng)架構(AUTomotive Open System ARchitecture)中,所涉及的是發(fā)源于機動車制造商、控制器制造商以及開發(fā)工具、控制器基礎軟件和微控制器制造商的開發(fā)伙伴關系的軟件架構。汽車安全完整性等級是由ISO 26262定義的風險分類方案。

優(yōu)選地,計數(shù)器具有4-比特的比特長度。尤其是當總線系統(tǒng)(根據(jù)本發(fā)明的方法,通過該總線系統(tǒng)發(fā)送有效數(shù)據(jù)包)是CAN-總線系統(tǒng)時,這樣的短的計數(shù)器是適合的或者采用這種計數(shù)器。

在優(yōu)選實施方式中,每個保護數(shù)據(jù)包和每個有效數(shù)據(jù)包分別具有決定各個數(shù)據(jù)包所對應的優(yōu)先級的消息標識符,其中保護數(shù)據(jù)包的消息標識符的值被選成與可對應于該保護數(shù)據(jù)包的有效數(shù)據(jù)包的消息標識符的值接近為使得有效數(shù)據(jù)包和可對應的保護數(shù)據(jù)包被對應給同一優(yōu)先級或者直接相鄰的優(yōu)先級。換言之,有效數(shù)據(jù)包和對應于該有效數(shù)據(jù)包的保護數(shù)據(jù)包二者在總線系統(tǒng)內(nèi)部都具有相同或緊挨著的優(yōu)先級。由此避免了例如在總線系統(tǒng)高負荷的情況下兩個數(shù)據(jù)包中的僅一個數(shù)據(jù)包到達各接收系統(tǒng)組件。

優(yōu)選地,不通過保護數(shù)據(jù)包驗證的有效數(shù)據(jù)包也經(jīng)由同一總線系統(tǒng)在至少兩個系統(tǒng)組件之間傳送,對于這些有效數(shù)據(jù)包而言不生成和發(fā)送保護數(shù)據(jù)包。由此可以避免總線系統(tǒng)的不必要的多次加載,因為所傳輸?shù)挠行?shù)據(jù)包的認證只有在這真的有必要的情況下才進行。優(yōu)選地,根據(jù)本發(fā)明的方法另 外包括劃分和確定待經(jīng)由總線系統(tǒng)傳送的有效數(shù)據(jù)包的步驟,在該步驟中所有可經(jīng)由總線系統(tǒng)傳送的有效數(shù)據(jù)包均根據(jù)功能判斷標準被劃分成功能群組,并且對于每個這樣得到的群組均確認,對于被計入該群組的有效數(shù)據(jù)包是否都生成并傳送了保護數(shù)據(jù)包。優(yōu)選地,在劃分和確認步驟中預先確定所述選擇和確定或者可由使用者個人實施。在該方法的這樣的實施方式中,總線系統(tǒng)的使用者可以決定,對于哪些有效數(shù)據(jù)包或?qū)τ谟行?shù)據(jù)包的哪些功能群組生成可對應的保護數(shù)據(jù)包。功能群組例如可以包括所有如下的有效數(shù)據(jù)包,所述有效數(shù)據(jù)包具有關于機動車在系統(tǒng)內(nèi)部存儲的路徑的信息或數(shù)據(jù)。

優(yōu)選地,至少兩個系統(tǒng)組件具有與一個共同的系統(tǒng)時間同步的時間單元。在根據(jù)本發(fā)明的方法的一個可能備選實施方式中,這能夠?qū)崿F(xiàn)以簡單的方式防止對總線系統(tǒng)的所謂的重放攻擊。

在優(yōu)選實施方式中,保護數(shù)據(jù)包通過系統(tǒng)時間并通過與保護數(shù)據(jù)包可對應的、待傳輸?shù)挠行?shù)據(jù)包的至少一部分有效數(shù)據(jù)來形成。在這樣的實施方式中,保護數(shù)據(jù)包包括通過經(jīng)同步的時間單元提供的時間信息,以使保護數(shù)據(jù)包的內(nèi)容可由進行接收的系統(tǒng)組件進行校準和驗證。優(yōu)選地,當前的系統(tǒng)時間相當于時間戳。

優(yōu)選地,根據(jù)本發(fā)明的方法確保有效數(shù)據(jù)包的計數(shù)器在特定時間戳生效期間不重復。否則就不會確保防止重放攻擊。另外優(yōu)選地,時間戳的增加頻率相應地被選成這樣與有效數(shù)據(jù)包的發(fā)送頻率相匹配,使得有效數(shù)據(jù)包的計數(shù)器在特定時間戳生效期間不重復。如果例如以100Hz發(fā)出信息并且計數(shù)器4比特長,即包含16個值,則計數(shù)器每160毫秒溢出一次:每10ms發(fā)送一個信息(參見100Hz的發(fā)送頻率),因此在計數(shù)器有16個不同值的情況下,在16個信息后、即每160ms發(fā)生一次溢出。如果這時即時間戳僅升高1Hz節(jié)拍(Takt),在信息計數(shù)器的該時間窗內(nèi)就會多次重復。出于該原因,時間戳的增加頻率如上建議地進行選擇。

優(yōu)選地,該方法還包括在至少兩個系統(tǒng)組件之間實施挑戰(zhàn)-應答式認證的步驟,其中,將至少兩個系統(tǒng)組件中的一個系統(tǒng)組件所生成的隨機數(shù)傳送給至少兩個系統(tǒng)組件中的另一個系統(tǒng)組件,并且將對此的應答用于認證。在這樣的實施方式中,保護數(shù)據(jù)包尤其通過所生成的隨機數(shù)、即通過所生成的挑戰(zhàn)形成并用于認證。保護數(shù)據(jù)包在這里用作對該挑戰(zhàn)的應答。進一步優(yōu)選 地,在實施挑戰(zhàn)-應答式認證的步驟中,將nonce、即只使用一次的數(shù)從所述至少兩個系統(tǒng)組件中的一個系統(tǒng)組件傳送給所述至少兩個系統(tǒng)組件中的另一個系統(tǒng)組件并且將對此的應答用于認證。進一步優(yōu)選地,在實施挑戰(zhàn)-應答式認證的步驟中,將任意挑戰(zhàn)從所述至少兩個系統(tǒng)組件中的一個系統(tǒng)組件傳送給所述至少兩個系統(tǒng)組件中的另一個系統(tǒng)組件并且將對此的應答用于認證。這樣的挑戰(zhàn)-應答式認證滿足了高的安全標準并且有利于總線系統(tǒng)的系統(tǒng)組件之間更安全的和良好防止黑客攻擊的通信。在這樣的實施方式中,隨機數(shù)可以取代時間戳來用于實現(xiàn)重放保護,從而能夠免去經(jīng)同步的時間單元。

優(yōu)選地,保護數(shù)據(jù)包通過生成的隨機數(shù)和通過與保護數(shù)據(jù)包可對應的、待傳輸?shù)挠行?shù)據(jù)包的至少一部分有效數(shù)據(jù)形成。另外優(yōu)選地,保護數(shù)據(jù)包通過nonce、即通過只使用一次的數(shù)并且通過與保護數(shù)據(jù)包可對應的待傳輸?shù)挠行?shù)據(jù)包的至少一部分有效數(shù)據(jù)形成。另外優(yōu)選地,保護數(shù)據(jù)包通過挑戰(zhàn)和通過與保護數(shù)據(jù)包可對應的待傳輸?shù)挠行?shù)據(jù)包的至少一部分有效數(shù)據(jù)形成。在根據(jù)本發(fā)明的方法的這些替代實施方案中,同樣保護總線系統(tǒng)免受重放攻擊,由此進一步提高了所保護的信息的安全性。

在優(yōu)選實施方式中,保護數(shù)據(jù)包另外通過計數(shù)器以及通過與保護數(shù)據(jù)包可對應的有效數(shù)據(jù)包的消息標識符形成。

另外優(yōu)選地,保護數(shù)據(jù)包另外通過計數(shù)器和通過保護數(shù)據(jù)包的消息標識符形成。在該方法的這種擴展方案中,不僅保護了所傳送的數(shù)據(jù)的安全,而且還驗證了傳輸通道。

優(yōu)選地,為待保護的有效數(shù)據(jù)包計算出消息認證碼,在該消息認證碼中傳輸可對應于有效數(shù)據(jù)包的保護數(shù)據(jù)包。消息認證碼是用同一密鑰計算出的并且逐字傳輸?shù)暮灻?。通過該計算這樣的MAC、即消息認證碼,能夠以有效和安全的方式保護數(shù)據(jù)的完整性。特別優(yōu)選地,在計算消息認證碼時,計算出EMAC或者OMAC、即所謂的加密的MAC(EMAC)或者單鑰(One-Key)MAC(OMAC)。

另外優(yōu)選地,在所述至少兩個系統(tǒng)組件的簽名和簽名檢驗單元中此外分別存入至少一個相同的密鑰,該密鑰用于計算消息認證碼。

優(yōu)選地,丟棄那些其真實性不能借助分別可對應于它們的保護數(shù)據(jù)包來驗證的有效數(shù)據(jù)包。以該方式僅允許和利用具有實際存在權限的有效數(shù)據(jù) 包,由此正好確保了防止黑客攻擊。

在優(yōu)選實施方式中,消息認證碼的比特長度為60比特。這形成了相對于現(xiàn)有技術的顯著區(qū)別。對于現(xiàn)有技術中存在的系統(tǒng),保護數(shù)據(jù)始終在相同的信息中傳送,在該信息中也輸送有效數(shù)據(jù)。為了能夠確保這一點,現(xiàn)有的格式必須要定期地適配,以在所述信息或有效數(shù)據(jù)包內(nèi)為額外的保護數(shù)據(jù)提供所需的空間。因此,在現(xiàn)有技術中通常需要強烈改變待傳輸?shù)男畔⒒蛴行?shù)據(jù)包,而根據(jù)本發(fā)明的方法使得已傳送或待傳送的信息或有效數(shù)據(jù)包能夠要么完全地保留要么至少在很大程度上未改動。例如,在前述實施例的情況下可以簡單地發(fā)送一個新消息、即保護數(shù)據(jù)包,而原始消息僅需要4比特的計數(shù)器。該原始消息具有這樣的4比特的計數(shù)器,只要涉及的是ASIL數(shù)據(jù)包,要么本來就這樣,要么該數(shù)據(jù)包僅用較少的努力就可被附加到該原始消息中。

優(yōu)選地,總線系統(tǒng)是CAN-總線系統(tǒng)。CAN-總線系統(tǒng)、即控制器局域網(wǎng)絡(Controller Area Network)-總線系統(tǒng)是成本低廉的、串行的總線系統(tǒng),該總線系統(tǒng)穩(wěn)健、易于構造且可擴展并且具有自動故障識別。

優(yōu)選地,經(jīng)簽名的數(shù)據(jù)也可通過額外的流密碼加密。在此,必須首先給這些數(shù)據(jù)簽名并隨后加密。另外,含N比特的時間戳的至少一部分或者含N-比特的隨機數(shù)/挑戰(zhàn)的一部分和含N-比特的消息認證碼(MAC)的至少一部分用作該流密碼的初始化向量,其中特別優(yōu)選地,該信息的56-比特時間戳和56-比特消息認證碼(MAC)用作該流密碼的初始化向量。

從另外的在從屬權利要求中提及的特征中得到本發(fā)明的其它優(yōu)選設計方式。

本申請中提及的本發(fā)明的不同實施方式有利地能夠相互組合,除非另外說明。

附圖說明

接下來根據(jù)附圖在實施例中闡述本發(fā)明。其中:

圖1示意性示出了根據(jù)本發(fā)明的方法的第一實施例,總線系統(tǒng)的兩個系統(tǒng)組件之間的有效數(shù)據(jù)包N的交換;

圖2是根據(jù)本發(fā)明的方法的第二實施例的流程圖;

圖3示意性示出了根據(jù)本發(fā)明的方法的第一或第二實施例中可生成和 可傳送的數(shù)據(jù)包的消息結構;和

圖4示出了針對本發(fā)明方法的兩個不同實施例的消息認證碼的兩種不同計算基礎。

具體實施方式

圖1示出了根據(jù)本發(fā)明的方法的第一實施例,在總線系統(tǒng)50的兩個系統(tǒng)組件1、2之間交換有效數(shù)據(jù)包N的示意圖。在該第一實施例中,針對總線系統(tǒng)50實施該方法,該總線系統(tǒng)50具有多個系統(tǒng)組件1、2,然而在圖1中僅展示出其中三個。總線系統(tǒng)50的其它系統(tǒng)組件在圖1中用三個點表示。在圖1中示出的總線系統(tǒng)50例如是機動車的CAN-總線系統(tǒng),其包括所謂的CAN高導線4和CAN低導線6,在它們的端部處分別通過所謂的終端電阻7封端,以避免在導線端部處的信號反射。在圖1中,數(shù)據(jù)包N,S示意性地作為文件標識示出,它們通過CAN導線4,6發(fā)出,這在圖1中通過在CAN導線4,6上的箭頭示出。

在該方法的第一實施例中,第一和第二系統(tǒng)組件1,2通過CAN-總線系統(tǒng)50相互通信,其中第一系統(tǒng)組件1將有效數(shù)據(jù)包N傳送給第二系統(tǒng)組件2。在該第一實施例中,第一系統(tǒng)組件1純粹示例性地為機動車控制器,而第二系統(tǒng)組件2是機動車內(nèi)的執(zhí)行器,該執(zhí)行器通過CAN-總線系統(tǒng)50與控制器導電連接。但是該方法也可以設計用于任意其它系統(tǒng)組件之間的通信,這些其它系統(tǒng)組件也可通過完全不同的其它總線系統(tǒng)50相互連接。通過總線系統(tǒng)50從控制器傳送給執(zhí)行器的有效數(shù)據(jù)包N在該第一實施例中純粹示例性地包括用于執(zhí)行器的運行數(shù)據(jù)作為有效數(shù)據(jù)。

第一和第二系統(tǒng)組件1,2二者分別都具有簽名和簽名檢驗單元10,借助簽名和簽名檢驗單元10能夠生成和檢驗數(shù)據(jù)包。任選地,第一和第二系統(tǒng)組件1,2都分別具有簽名單元和/或驗證單元。換言之,兩個系統(tǒng)組件1,2都提供加密功能和解密功能,借助所述加密功能和解密功能,數(shù)據(jù)包能夠被加密和解密或能夠被生成和檢驗。在根據(jù)本發(fā)明的方法的第一步驟中,從第一系統(tǒng)組件1,這里純粹示例性地從控制器,為待通過總線系統(tǒng)50傳輸?shù)挠行?shù)據(jù)包N生成帶有保護信息(也稱作所謂的簽名數(shù)據(jù))的獨立的保護數(shù)據(jù)包S,該保護數(shù)據(jù)包S不取決于該有效數(shù)據(jù)包N,然而仍然可明確地對應于該有效數(shù)據(jù)包N。換言之,第一系統(tǒng)組件1或控制器為待通過總線系 統(tǒng)50發(fā)送的有效數(shù)據(jù)包N生成簽名,即生成保護數(shù)據(jù)包S。

在該方法的接下來的步驟中,將所生成的保護數(shù)據(jù)包S與所關聯(lián)的有效數(shù)據(jù)包N分離地通過總線系統(tǒng)50發(fā)送給第二系統(tǒng)組件2,即在該第一實施例中純粹示例性地發(fā)送給執(zhí)行器。保護數(shù)據(jù)包S即不與有效數(shù)據(jù)包N相連,并且可以完全與其分開地發(fā)送和接收。第二系統(tǒng)組件2,即執(zhí)行器,接收到保護數(shù)據(jù)包S,隨后將保護數(shù)據(jù)包S所對應的有效數(shù)據(jù)包N從第一系統(tǒng)組件1傳送給第二系統(tǒng)組件2,并且在第三方法步驟中由第二系統(tǒng)組件2借助已發(fā)送的保護數(shù)據(jù)包S進行對所傳輸?shù)挠行?shù)據(jù)包N的真實性驗證。在該第一實施例中,向至少兩個系統(tǒng)組件1,2的簽名和簽名檢驗單元10中分別存入密鑰,使用該密鑰來加密和解密或者生成和檢驗所發(fā)送的、要保護的數(shù)據(jù)包。即,第二系統(tǒng)組件2使用與第一系統(tǒng)組件1加密數(shù)據(jù)包所用的密鑰同樣的密鑰來解密該數(shù)據(jù)包。換言之,第二系統(tǒng)組件2用密鑰來解密數(shù)據(jù)包,該密鑰對應于被第一系統(tǒng)組件1用以加密該數(shù)據(jù)包的密鑰。

在該方法的第一實施例中,每個針對有效數(shù)據(jù)包N生成并通過總線系統(tǒng)50發(fā)送的保護數(shù)據(jù)包S均可以明確地對應于相應的有效數(shù)據(jù)包N。這通過使每個有效數(shù)據(jù)包N(為該有效數(shù)據(jù)包N生成保護數(shù)據(jù)包S)均包括比特長度為N比特的計數(shù)器Z實現(xiàn),該計數(shù)器Z在每次傳送相應的有效數(shù)據(jù)包N時都增加。在本實施例中,保護數(shù)據(jù)包S純粹示例性地還包括含在所關聯(lián)的有效數(shù)據(jù)包N中的計數(shù)器Z,從而通過在兩個數(shù)據(jù)包中完全相同的計數(shù)器Z實現(xiàn)明確對應。在該第一實施例中,另外通常也稱作計數(shù)器(Counter)的計數(shù)器Z在每次通過總線系統(tǒng)50發(fā)送相應的有效數(shù)據(jù)包N或保護數(shù)據(jù)包S時都升高1。因為保護數(shù)據(jù)包S通過有效數(shù)據(jù)包N形成并且計數(shù)器Z也含在保護數(shù)據(jù)包S中,所以保護數(shù)據(jù)包S能夠通過計數(shù)器Z的狀態(tài)直接、明確地對應于有效數(shù)據(jù)包N。在該第一實施例中計數(shù)器Z純粹示例性地具有4比特的比特長度。然而也可使用具有其它比特長度的其它計數(shù)器。另外,根據(jù)本發(fā)明的方法可以這樣實施,其中計數(shù)器Z不是完全顯示在有效數(shù)據(jù)包N中,而是通過涉及的系統(tǒng)組件1,2分別計算出。另外,計數(shù)器Z的應用也有助于防止黑客攻擊的重放。在該第一實施例中,計數(shù)器Z純粹示例性地在溢出時復位至零。

另外,在根據(jù)本發(fā)明的方法中確保了,接收的系統(tǒng)組件1,2也接收保護數(shù)據(jù)包S以及相關聯(lián)的有效數(shù)據(jù)包N并且該通信因此通過總線系統(tǒng)50可 靠地運行。在根據(jù)本發(fā)明的方法的范圍中,這如下確保,即,每個保護數(shù)據(jù)包S和每個有效數(shù)據(jù)包N都分別具有決定相應的數(shù)據(jù)包S,N向優(yōu)先級 的對應的消息標識符IDS、IDN,其中保護數(shù)據(jù)包S的消息標識符IDS的值被選成這樣接近于其可對應的有效數(shù)據(jù)包N的消息標識符IDN的值,使得有效數(shù)據(jù)包N和可對應的保護數(shù)據(jù)包S被對應完全相同的或直接相鄰的優(yōu)先級。在該第一實施例中,通常也稱為對象識別碼的消息標識符IDS,IDN相當于所謂的簽名CAN-ID,即保護數(shù)據(jù)包S的CAN-ID或有效數(shù)據(jù)包N的CAN-ID。這些CAN-ID構成了通過CAN-總線系統(tǒng)50傳送的數(shù)據(jù)包S,N的消息標識符。這兩個較后提及的CAN-ID的值被選成這樣彼此接近,使得保護數(shù)據(jù)包S和有效數(shù)據(jù)包N對應于相同的優(yōu)先級或者替選地保護數(shù)據(jù)包S和有效數(shù)據(jù)包N對應于直接相鄰的、總線系統(tǒng)內(nèi)部的優(yōu)先級。

在該方法的第一實施例中,不是所有的待經(jīng)由總線系統(tǒng)50傳送或可由總線系統(tǒng)50傳送的有效數(shù)據(jù)包N都通過生成和發(fā)送保護數(shù)據(jù)包S來保護。在根據(jù)本發(fā)明的方法的范圍內(nèi),也可以經(jīng)由總線系統(tǒng)50發(fā)送這樣的有效數(shù)據(jù)包N,對于所述有效數(shù)據(jù)包N而言不生成和不發(fā)送保護數(shù)據(jù)包S并且對于所述有效數(shù)據(jù)包N而言不借助保護數(shù)據(jù)包S驗證其真實性。在此,通過有效數(shù)據(jù)包N的消息標識符IDN確定,是否為相應的有效數(shù)據(jù)包N生成了保護數(shù)據(jù)包S。因此,僅針對具有從有效數(shù)據(jù)包N到有效數(shù)據(jù)包N完全相同的特定消息標識符IDN的有效數(shù)據(jù)包N才生成保護數(shù)據(jù)包S。如果對于特定消息標識符IDN,例如對于計數(shù)器值為5的消息標識符IDN,生成了保護數(shù)據(jù)包S,則對于具有這樣的計數(shù)器值的所有有效數(shù)據(jù)包N總是生成保護數(shù)據(jù)包S。不過,對于具有其它的、例如不同于計數(shù)器值5的消息標識符IDN的有效數(shù)據(jù)包N可以確定,對于這些有效數(shù)據(jù)包N而言不生成保護數(shù)據(jù)包S。在此是指消息計數(shù)器。優(yōu)選地,在該方法的特定實施變型方案中,只有對于計數(shù)器Z為2,4,6等的消息也發(fā)送保護數(shù)據(jù)包。

在該第一實施例中,所有可由總線系統(tǒng)傳送的有效數(shù)據(jù)包N都根據(jù)功能判斷標準分成功能群組。對于每個這樣得到的功能群組都確定,是否為包含在其中的有效數(shù)據(jù)包N生成和傳送保護數(shù)據(jù)包S。在該第一實施例中,功能群組的確定是純粹示例性地預定的。但是在根據(jù)本發(fā)明的方法的其它實施例中這也可以設計成由使用者個人實施。在根據(jù)本發(fā)明的方法的這種實施方 式中,總線系統(tǒng)50的使用者可以事先決定,為哪些有效數(shù)據(jù)包N或者為有效數(shù)據(jù)包N的哪些功能群組生成可對應的保護數(shù)據(jù)包S。在本實施例中,一個功能群組純粹示例性地包括所有這樣的有效數(shù)據(jù)包N,這些有效數(shù)據(jù)包N包括關于存儲在系統(tǒng)內(nèi)部的路徑的信息或數(shù)據(jù)或者用于確定這樣的路徑的信息或數(shù)據(jù)。在本實施例中,另一功能群組純粹示例性地包括所有這樣的有效數(shù)據(jù)包N,這些有效數(shù)據(jù)包N包括用于機動車自動行駛的信息或數(shù)據(jù)。如果生成和發(fā)送來自這些先前提及的功能群組之一的有效數(shù)據(jù)包N,則總是也生成和發(fā)送可對應于這些有效數(shù)據(jù)包N的保護數(shù)據(jù)包S。這些數(shù)據(jù)的認證僅在這些功能群組內(nèi)部通過群組密鑰實現(xiàn)。另外,這些有效數(shù)據(jù)包N在根據(jù)本發(fā)明的方法的其它實施方式中也可以分成非功能群組,這些非功能群組根據(jù)與上述判斷標準不同的判斷標準而形成。

在根據(jù)本發(fā)明的方法的第一實施例中,系統(tǒng)組件1,2之間的通信被保護免受重放攻擊。一般而言,這在本發(fā)明方法的范圍內(nèi)尤其可通過所謂的全局時間戳或者通過實施挑戰(zhàn)-應答式方法來進行。在該方法的第一實施例中,兩個系統(tǒng)組件1,2分別具有與通用系統(tǒng)時間T同步的時間單元8。在本發(fā)明方法的第一實施例中,在形成保護數(shù)據(jù)包S時考慮全局系統(tǒng)時間T。對形成保護數(shù)據(jù)包S的更準確描述尤其可從還接下來的關于圖3和4的描述中獲得。

作為全局時間戳的替代,在根據(jù)本發(fā)明的方法的其它實施例的范圍內(nèi),正如已然提及的那樣也可以在至少兩個系統(tǒng)組件1,2之間進行挑戰(zhàn)-應答式認證。在該挑戰(zhàn)-應答式認證的范圍內(nèi),在兩個系統(tǒng)組件1,2之間交換生成的隨機數(shù)CH,使用對所述隨機數(shù)CH的答復來驗證真?zhèn)巍T撾S機數(shù)CH通常也被稱作挑戰(zhàn)、詢問或者nonce(只使用一次的數(shù))。

圖2示出了根據(jù)本發(fā)明的方法的第二實施例的流程圖。在本實施例中,該流程圖純粹示例性地包括總共三個始終執(zhí)行的方法步驟S1至S3,以及根據(jù)不同情況而實施的方法步驟S4或S5。

在此,該方法基本上與前述方法相同。再一次地,該方法用于防止待經(jīng)由總線系統(tǒng)50在至少兩個系統(tǒng)組件1,2之間傳輸?shù)挠行?shù)據(jù)包N被操縱,其中,系統(tǒng)組件1,2分別包括簽名和簽名檢驗單元10,借助它們可以生成和檢驗數(shù)據(jù)包(參見上文和圖1)。

在該第二實施例中,該方法的第一步驟S1中如前文已然描述的那樣, 第一系統(tǒng)組件1為待經(jīng)由總線系統(tǒng)50傳輸?shù)挠行?shù)據(jù)包N生成帶有保護信息的獨立的保護數(shù)據(jù)包S,該保護數(shù)據(jù)包S不取決于該有效數(shù)據(jù)包N,然而仍然可明確地對應于該有效數(shù)據(jù)包N。在該方法的第二步驟S2中,將所生成的保護數(shù)據(jù)包S與所關聯(lián)的有效數(shù)據(jù)包N分離地通過總線系統(tǒng)50發(fā)送給第二系統(tǒng)組件2。隨后將有效數(shù)據(jù)包N(保護數(shù)據(jù)包S可對應于所述有效數(shù)據(jù)包N)從第一系統(tǒng)組件1傳送給第二系統(tǒng)組件2。這可以要么在第二方法步驟S2的范圍內(nèi)要么作為該方法的獨立步驟(圖2中未示出)進行。在第三方法步驟S3中,由第二系統(tǒng)組件2借助已發(fā)送的保護數(shù)據(jù)包S對所傳輸?shù)挠行?shù)據(jù)包N進行真實性驗證。為此,使保護數(shù)據(jù)包S與同樣被第二系統(tǒng)組件2接收的有效數(shù)據(jù)包N相比較。

在該第二實施例中,關于該方法的這些階段,應視情況而定。如果在該方法的第三方法步驟S3中借助保護數(shù)據(jù)包S驗證有效數(shù)據(jù)包N的結果是可對應于保護數(shù)據(jù)包S的有效數(shù)據(jù)包N是真的,即確實是由有權限的第一系統(tǒng)組件1發(fā)送的,則第二系統(tǒng)組件2接收并(如果提供)運行有效數(shù)據(jù)包N。有效數(shù)據(jù)包N例如包含用于執(zhí)行器的控制數(shù)據(jù),因此所述控制數(shù)據(jù)在第四方法步驟S4中成功驗證后實施或運行。如果在該方法的第三方法步驟S3中借助保護數(shù)據(jù)包S驗證的結果相反,即,可對應于保護數(shù)據(jù)包S的有效數(shù)據(jù)包N不是真的,即不是由第一系統(tǒng)組件1發(fā)送的,則第二系統(tǒng)組件2丟棄該有效數(shù)據(jù)包N而不進一步考慮。尤其是——如果提供——不實施包含在當前的有效數(shù)據(jù)包N中的控制信息。

圖3示出了根據(jù)本發(fā)明的方法的第一或第二實施例中可生成和可傳送的數(shù)據(jù)包的消息結構。更準確地說,圖3中示出了數(shù)據(jù)包的三個不同的消息結構。特定數(shù)據(jù)包的特定消息結構的設計方式特別是取決于數(shù)據(jù)包所涉及的內(nèi)容或者取決于數(shù)據(jù)包所針對的意圖。一般來說,每個數(shù)據(jù)包均包含用于數(shù)據(jù)包之間的對應和用于重放保護的計數(shù)器Z。也稱作有效載荷(Payload)的有效數(shù)據(jù)Nd是待借助保護數(shù)據(jù)包S來保護和加密的數(shù)據(jù)。在之前描述的實施例中,保護數(shù)據(jù)包S的加密純粹示例性地通過計算消息認證碼MAC來進行。在該情況下,進一步在下文中示出(參見圖4)已然提及的數(shù)據(jù)或數(shù)據(jù)包組成部分中的哪些納入所述消息認證碼MAC的計算中。以上提及的密鑰被用來為第一系統(tǒng)組件1的數(shù)據(jù)包加密并且通過第二系統(tǒng)組件2解密,使用所述密鑰生成消息認證碼MAC。另外,為了加密還可以存儲其它的、單 獨的密鑰。

圖3中最上方示出的消息結構示出了通過總線系統(tǒng)50可傳輸?shù)挠行?shù)據(jù)包N的消息結構并且該消息結構由有效數(shù)據(jù)Nd、即有效載荷,和計數(shù)器Z1組成。根據(jù)本發(fā)明的方法,有效數(shù)據(jù)包N在本發(fā)明的范圍內(nèi)以有利的方式可以不變地或者僅僅以微小變化被第一系統(tǒng)組件1傳送給總線系統(tǒng)50的第二系統(tǒng)組件2。如果通過總線系統(tǒng)50傳送可對應于ASIL、即汽車安全完整性等級的有效數(shù)據(jù)包N,則有效數(shù)據(jù)包N的計數(shù)器Z1相當于所謂的ASIL-計數(shù)器,該ASIL-計數(shù)器始終設置在所謂的ASIL消息或ASIL消息包中。對于這樣的有效數(shù)據(jù)包N,該ASIL-計數(shù)器可以完全不變地傳送。如果執(zhí)行挑戰(zhàn)-應答式方法,則通過接收所述有效數(shù)據(jù)的系統(tǒng)組件2預定計數(shù)器Z1。對于其它待傳輸?shù)挠行?shù)據(jù)包N或消息,計數(shù)器Z1相當于比特長度為4比特的隨機數(shù)。有效數(shù)據(jù)Nd尤其可以占據(jù)60比特(例如對于CAN信息)至252比特(例如對于CAN-FD信息)的比特長度。但是原則上對于其它總線系統(tǒng)50,有效數(shù)據(jù)Nd也可以占據(jù)其它的、即更小或更大的比特長度。在本發(fā)明方法的該實施例中,計數(shù)器Z1始終具有4比特的比特長度。

圖3中部呈現(xiàn)的消息結構示出了配置有計數(shù)器Z2的隨機數(shù)CH的消息結構,該消息結構在根據(jù)本發(fā)明的方法的實施方式的范圍內(nèi)執(zhí)行的挑戰(zhàn)-應答式認證過程中由第一系統(tǒng)組件1發(fā)送給第二系統(tǒng)組件2。該消息結構也具有計數(shù)器Z2,該計數(shù)器Z2在該實施例中包含4比特和4個空比特(Null-比特s)。在本發(fā)明方法的該實施例中,隨機數(shù)CH本身可以純粹示例性地包含60比特。對于每個待傳輸?shù)挠行?shù)據(jù)包N均嶄新地、隨機地生成隨機數(shù)CH。

圖3左下方呈現(xiàn)的消息結構相當于同樣具有計數(shù)器Z3的保護數(shù)據(jù)包S的消息結構。保護數(shù)據(jù)包S的計數(shù)器Z3具有這樣的比特長度,該比特長度在該實施例中純粹示例性地對應于字節(jié)值,即可對應于保護數(shù)據(jù)包S的有效數(shù)據(jù)包N的可占據(jù)字節(jié)數(shù)。如果可對應于保護數(shù)據(jù)包S的有效數(shù)據(jù)包N例如具有64比特的比特長度,則該64比特正好等于8字節(jié),所以保護數(shù)據(jù)包S的計數(shù)器Z3具有8比特的比特長度,其中在該實施例中純粹示例性地,該8比特中的4比特設計為空比特,而余留的4個比特用作實際計數(shù)器。換言之,保護數(shù)據(jù)包S的計數(shù)器Z3具有X比特的比特長度,其中X等于可對應于保護數(shù)據(jù)包S的有效數(shù)據(jù)包N的字節(jié)數(shù),其中也考慮了有效 數(shù)據(jù)包N的計數(shù)器Z1。保護數(shù)據(jù)包S的主要對象是針對待保護的有效數(shù)據(jù)包N計算出的消息認證碼MAC,該消息認證碼MAC在該實施例中純粹示例性地包含56比特并且下面關于圖4來說明其計算基礎。換言之,計數(shù)器在該實施例中純粹示例性地同樣具有4比特的比特長度,該值被采納用于有效數(shù)據(jù)包N和保護數(shù)據(jù)包S的計數(shù)器。

圖4中針對根據(jù)本發(fā)明的方法的兩個不同實施例示出了消息認證碼MAC的兩個不同的計算基礎。換言之,圖4中示出的圖示涉及在根據(jù)本發(fā)明的方法的不同實施例的范圍內(nèi)用來形成保護數(shù)據(jù)包S的數(shù)據(jù)。在此,應區(qū)別開形成保護數(shù)據(jù)包S的不同可能性。更準確地說,尤其是根據(jù)是否為了重放保護而使用全局時間戳或者實施挑戰(zhàn)-應答方法(參見上文),存在兩個不同的計算基礎。

在根據(jù)本發(fā)明的方法的一些設計變型方案中,保護數(shù)據(jù)包S是通過系統(tǒng)時間T并通過待傳輸?shù)挠行?shù)據(jù)包N的至少一部分的有效數(shù)據(jù)Nd形成的,保護數(shù)據(jù)包S可對應給所述有效數(shù)據(jù)包N。這在將全局時間戳用于重放保護時成立。在根據(jù)本發(fā)明的方法的、其中通過實施挑戰(zhàn)-應答式驗證來實現(xiàn)防止重放攻擊的其它實施例中,保護數(shù)據(jù)包S是通過生成的隨機數(shù)CH和通過可對應于保護數(shù)據(jù)包S的待傳輸?shù)挠行?shù)據(jù)包N的至少一部分有效數(shù)據(jù)Nd形成的。不過,在前述變型方案中,另外通過其它的數(shù)據(jù)包組成部分來形成保護數(shù)據(jù)包S。在圖4的上圖中示出了所有那些數(shù)據(jù)包組成部分,通過所述數(shù)據(jù)包組成部分在根據(jù)本發(fā)明的方法的使用全局時間戳的變型中形成保護數(shù)據(jù)包S。這里,消息認證碼MAC純粹示例性地通過時間戳、即通過系統(tǒng)時間T,通過有效數(shù)據(jù)的比特長度INdI,通過對應于保護數(shù)據(jù)包S的消息標識符IDS,通過待保護的有效數(shù)據(jù)包N的消息標識符IDN以及通過待保護的有效數(shù)據(jù)包N的至少一部分有效數(shù)據(jù)Nd自身形成。在這種情況下,系統(tǒng)時間T采用7字節(jié)的比特長度,有效數(shù)據(jù)的比特長度INdI采用1字節(jié)的比特長度,兩個所謂的消息標識符IDS和IDN采用分別4字節(jié)的比特長度,所考慮的有效數(shù)據(jù)Nd采取最大32字節(jié)的比特長度,因此在本發(fā)明方法的該實施例中純粹示例性地從總共48字節(jié)的輸入數(shù)據(jù)中得到了消息認證碼MAC。然而,隨后作為保護數(shù)據(jù)包S發(fā)送的該計算的輸出數(shù)據(jù)短得多。例如,MAC計算的輸出數(shù)據(jù)可以是128比特的CMAC,其被縮短至56比特的比特長度,因此,所述CMAC與CAN信息中的計數(shù)器Z一起,符合 保護數(shù)據(jù)包S。

然而,根據(jù)本發(fā)明的方法也可以這樣實施,其中通過更少的數(shù)據(jù)包組成部分來形成保護數(shù)據(jù)包S。例如,根據(jù)本發(fā)明的方法可以這樣實施,其中保護數(shù)據(jù)包S純粹示例性地是僅通過系統(tǒng)時間T和通過可對應于保護數(shù)據(jù)包S的、待傳輸?shù)挠行?shù)據(jù)包N的一部分有效數(shù)據(jù)Nd形成的。然而也可以生成并發(fā)送與前述完全不同的保護數(shù)據(jù)包S。

圖4下方示出的用于消息認證碼MAC的計算基礎與圖4上方示出的基本相同。該計算基礎可以不同于前述變型方案地應用在根據(jù)本發(fā)明的方法的實施方式中,在這些實施方式中不采用全局時間戳,而是進行挑戰(zhàn)-應答式驗證。與之相應地,圖4下方示出的計算基礎與圖4上方示出的計算基礎的唯一區(qū)別在于,不是使用時間戳或系統(tǒng)時間T,而是使用在挑戰(zhàn)-應答式驗證的范圍內(nèi)生成的隨機數(shù)CH來計算消息認證碼MAC。在這種情況下,隨機數(shù)CH在該實施例中純粹示例性地也包括7字節(jié)的比特長度。其余的消息結構與前述的完全相同。用于MAC計算的密鑰的安全級別為128比特。因此,對該密鑰的暴力攻擊是不可能的。

對56比特MAC的暴力攻擊在理論上是可能的,然而在實踐中不可應用。因此,完全耗盡可能的MAC對于基本的CAN-FD-總線系統(tǒng),例如在20,000次嘗試/秒和例如在CAN-FD-總線系統(tǒng)的滿負荷~2M比特/s的情況下持續(xù)多于100,000年。即使1%的成功幾率就需要多于1000年。

根據(jù)本發(fā)明的方法還特別適合于在系統(tǒng)組件之間通過以太網(wǎng)進行的通信。這里,100M比特/s下的黑客攻擊就1%的成功幾率而言為成功操縱需要多于20年或者在1G比特/s的傳輸速率下就1%的成功幾率而言需要多于2年。另外,根據(jù)本發(fā)明的方法與CAN-總線系統(tǒng)或與CAN-FD-總線系統(tǒng)特別兼容。額外生成的隨機數(shù)CH和MAC消息符合于普通的CAN框架。MAC消息可以如上已經(jīng)介紹的那樣只是任選的,也就是說,簽名可以按需進行,以降低總線系統(tǒng)的工作負載。另外對已有的信息存在高的后兼容性 因為關聯(lián)的計數(shù)器Z已然存在(參見上文),所以根據(jù)本發(fā)明的方法可在不適配有效消息的情況下設計用于ASIL消息。其它的、非ASIL消息額外地僅需4比特用于計數(shù)器Z,并且無需高侵入性的介入到已有的消息中。另外,經(jīng)簽名的數(shù)據(jù)也可通過額外的流密碼(Stromchiffre)加密。含N比特的時間戳的至少一部分或者含N-比特的隨機數(shù)/挑戰(zhàn)的一部 分和含N-比特的消息認證碼(MAC)的至少一部分在該實施例中純粹示例性地用作該流密碼的初始化向量,其中具體地在該實施例中,該消息的56-比特時間戳和56-比特MAC用作流密碼的初始化向量。在該情況下,這些數(shù)據(jù)必須首先簽名并隨后加密。

另外,根據(jù)本發(fā)明的方法可以這樣實施,其中全局時間戳,即系統(tǒng)時間T不是一起傳輸?shù)模莾H僅隱含的。在這樣的實施方式中,總線系統(tǒng)50的主機按至少一個系統(tǒng)組件1,2的需求來傳輸為其功能群組認證過的時間。隨后系統(tǒng)組件1,2將其獨立地累加。另外,總線系統(tǒng)50的主機將未經(jīng)認證的時間戳置于CAN上。這僅用作所述系統(tǒng)組件的用于識別抖動(Jitter)的基準值。初始時間由總線系統(tǒng)的主機在Kl.30的情況下作為隨機數(shù)生成。作為時間戳遞增的頻率,例如可使用或者調(diào)整100ms。

附圖標記單

1 第一系統(tǒng)組件

2 第二系統(tǒng)組件

4 CAN高導線

6 CAN低導線

7 終端電阻

8 經(jīng)同步的時間單元

10 簽名和簽名檢驗單元

50 總線系統(tǒng)

CH 隨機數(shù)

N 有效數(shù)據(jù)包

Nd 有效數(shù)據(jù)

INdI 有效數(shù)據(jù)的長度

S 保護數(shù)據(jù)包

T 系統(tǒng)時間

Z 計數(shù)器

Z1 有效數(shù)據(jù)包的計數(shù)器

Z2 隨機數(shù)的計數(shù)器

Z3 保護數(shù)據(jù)包的計數(shù)器。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1