IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ バテル メモリアル インスティチュートの特許一覧

特表2022-542251ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出
<>
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図1
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図2
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図3
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図4
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図5
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図6
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図7
  • 特表-ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-09-30
(54)【発明の名称】ブロードキャストネットワークをセキュアにするための多状態メッセージング異常検出
(51)【国際特許分類】
   G06F 21/55 20130101AFI20220922BHJP
   B60R 16/023 20060101ALI20220922BHJP
【FI】
G06F21/55
B60R16/023 Z
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022504152
(86)(22)【出願日】2020-07-22
(85)【翻訳文提出日】2022-03-15
(86)【国際出願番号】 US2020042963
(87)【国際公開番号】W WO2021016290
(87)【国際公開日】2021-01-28
(31)【優先権主張番号】62/878,432
(32)【優先日】2019-07-25
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】591072086
【氏名又は名称】バテル メモリアル インスティチュート
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(72)【発明者】
【氏名】マッカンティ, アーロン
(72)【発明者】
【氏名】グッドマン, ジェイソン
(72)【発明者】
【氏名】ソーントン, ダグラス エー.
(57)【要約】
CANバスまたは他のブロードキャストネットワークと接続可能である、電子デバイスが、開示される。電子デバイスは、異なるメッセージヘッダに関するメッセージの履歴蓄積に関する予期される周期および周期変動性メトリックを算出し、周期変動性メトリックに基づいて、周期的メッセージヘッダを識別するようにプログラムされ、さらに、周期的メッセージヘッダに関する予期される周期からの周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットの周期の逸脱として時間異常を検出し、検出された時間異常を示すアラートを発生させるようにプログラムされる。電子デバイスはさらに、CANバスを含む車両(または他のプラットフォーム)に関する状態マシンを維持し、状態認識異常検出を実施するようにプログラムされ得る。
【選択図】図1
【特許請求の範囲】
【請求項1】
プラットフォームのネットワークと接続可能な電子デバイスであって、前記ネットワーク上のトラフィックは、前記ネットワーク上の全ての電子デバイスによって受信され、前記ネットワークは、メッセージ認証を提供せず、前記伝送されるメッセージは、ペイロードと、前記ペイロードを識別するメッセージヘッダとを備え、前記電子デバイスは、
前記ネットワーク上のメッセージおよび/または前記プラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、前記プラットフォームに関する状態マシンを維持することと、
異なるメッセージヘッダに関するメッセージの履歴蓄積に関する予期される周期および周期変動性メトリックを算出し、前記周期変動性メトリックに基づいて、周期的メッセージヘッダを識別することと、
前記周期的メッセージヘッダに関する前記予期される周期からの周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットの周期の逸脱として時間異常を検出することと、
前記検出された時間異常を示すアラートを発生させることと、
前記状態マシンの現在の状態から新しい状態への遷移に応答して、
前記現在の状態に関する前記異なるメッセージヘッダに関するメッセージの前記履歴蓄積を記憶することと、
前記新しい状態に関する前記異なるメッセージヘッダに関するメッセージの履歴蓄積をメモリからロードすることと
を行うようにプログラムされる、電子デバイス。
【請求項2】
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う直近の2つのメッセージから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記直近の2つのメッセージの時間分離の逸脱として検出される、請求項1に記載の電子デバイス。
【請求項3】
前記アラートは、前記周期的メッセージヘッダを伴う前記直近のメッセージの表現を含む、請求項2に記載の電子デバイス。
【請求項4】
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う3つ以上の直近のメッセージのセットから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記3つ以上の直近のメッセージのセットに関する測定された周期の逸脱として検出される、請求項1に記載の電子デバイス。
【請求項5】
前記電子デバイスはさらに、
前記ネットワークを介して受信されたメッセージに基づいて、前記電子デバイスによって実施されるタスクを制御することと、
前記時間異常の検出に応じて、前記タスクを制御する際の使用のための前記2つ以上のメッセージの直近のセットの1つ以上のメッセージを除斥することと
を行うようにプログラムされる、請求項1-4のいずれか1項に記載の電子デバイス。
【請求項6】
前記電子デバイスはさらに、
前記状態マシンの新しい状態への遷移に応答して、
(i)前記新しい状態に関するパラメータ値に、前記周期的変動性メトリックに基づく周期的メッセージヘッダの識別のパラメータ、および/または、
(ii)前記新しい状態に関するパラメータ値に、時間異常として検出される前記逸脱を定義するパラメータ、
のうちの少なくとも1つのパラメータを調整するようにプログラムされる、請求項1-5のいずれか1項に記載の電子デバイス。
【請求項7】
前記電子デバイスはさらに、
前記状態マシンの現在の状態から新しい状態への遷移を検出することと、
前記検出された遷移が、前記状態マシンの許可された遷移ではないことに応答して、アラートを発生させることと
を行うようにプログラムされる、請求項1-6のいずれか1項に記載の電子デバイス。
【請求項8】
前記ネットワークは、コントローラエリアネットワーク(CAN)バスを備え、前記メッセージヘッダは、ARB IDヘッダを備える、請求項1-7のいずれか1項に記載の電子デバイス。
【請求項9】
プラットフォームのネットワークと接続可能な電子デバイスであって、前記ネットワーク上のトラフィックは、前記ネットワーク上の全ての電子デバイスによって受信され、前記ネットワークは、メッセージ認証を提供せず、前記伝送されるメッセージは、ペイロードと、前記ペイロードを識別するメッセージヘッダとを備え、前記電子デバイスは、
電子プロセッサと、
時間異常検出方法を実施するために前記電子プロセッサによって可読かつ実行可能である時間異常検出命令を記憶する、非一過性記憶媒体と
を含み、
前記時間異常検出命令は、
異なるメッセージヘッダに関するメッセージの履歴蓄積に関する予期される周期および周期変動性メトリックを算出し、前記周期変動性メトリックに基づいて、周期的メッセージヘッダを識別するために前記電子プロセッサによって可読かつ実行可能な命令と、
前記周期的メッセージヘッダに関する前記予期される周期からの周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットの周期の逸脱として時間異常を検出し、前記検出された時間異常を示すアラートを発生させるために前記電子プロセッサによって可読かつ実行可能な命令と、
前記ネットワーク上のメッセージおよび/または前記プラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、前記プラットフォームに関する状態マシンを維持するために前記電子プロセッサによって可読かつ実行可能な状態マシン命令と
を含み、
前記時間異常検出命令はさらに、前記状態マシンの現在の状態から新しい状態への遷移に応答して、
前記現在の状態に関する前記異なるメッセージヘッダに関するメッセージの前記履歴蓄積を記憶することと、
前記新しい状態に関する前記異なるメッセージヘッダに関するメッセージの履歴蓄積をメモリからロードすることと
を行うために前記電子プロセッサによって可読かつ実行可能な命令を含む、電子デバイス。
【請求項10】
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う直近の2つのメッセージから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記直近の2つのメッセージの時間分離の逸脱として検出される、請求項9に記載の電子デバイス。
【請求項11】
前記アラートは、前記周期的メッセージヘッダを伴う前記直近のメッセージの表現を含む、請求項10に記載の電子デバイス。
【請求項12】
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う3つ以上の直近のメッセージのセットから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記3つ以上の直近のメッセージのセットに関する測定された周期の逸脱として検出される、請求項9に記載の電子デバイス。
【請求項13】
前記非一過性記憶媒体はさらに、
前記ネットワークを介して受信されたメッセージに基づいて、前記電子デバイスを制御するために前記電子プロセッサによって可読かつ実行可能な制御命令と、
前記制御命令が前記2つ以上のメッセージの直近のセットの1つ以上のメッセージを処理しないように防止するために前記電子プロセッサによって可読かつ実行可能なメッセージ除斥命令と
を記憶する、請求項9-12のいずれか1項に記載の電子デバイス。
【請求項14】
前記時間異常検出命令はさらに、前記状態マシンの新しい状態への遷移に応答して、前記時間異常検出方法の少なくとも1つのパラメータを前記新しい状態のパラメータ値に更新するために前記電子プロセッサによって可読かつ実行可能な命令を含む、請求項9-12のいずれか1項に記載の電子デバイス。
【請求項15】
前記非一過性記憶媒体はさらに、前記状態マシンの現在の状態から新しい状態への遷移を検出することと、前記検出された遷移が、前記状態マシンの許可された遷移ではないことに応答して、アラートを発生させることとのために前記電子プロセッサによって可読かつ実行可能な命令を記憶する、請求項9-14のいずれか1項に記載の電子デバイス。
【請求項16】
前記ネットワークは、コントローラエリアネットワーク(CAN)バスを備え、前記メッセージヘッダは、ARB IDヘッダを備える、請求項9-15のいずれか1項に記載の電子デバイス。
【請求項17】
電子プロセッサは、前記周期的メッセージヘッダに関する前記予期される周期からの前記周期的メッセージヘッダよりも、2つ以上のメッセージの前記直近のセットの短い周期として前記時間異常を検出するようにプログラムされ、
前記電子プロセッサは、前記周期的メッセージヘッダに関する前記予期される周期からの前記周期的メッセージヘッダよりも、2つ以上のメッセージの前記直近のセットの長い周期として前記時間異常を検出するようにプログラムされない、請求項1-8のいずれか1項に記載の電子デバイス。
【請求項18】
前記時間異常を検出するために前記電子プロセッサによって可読かつ実行可能な命令は、
前記周期的メッセージヘッダに関する前記予期される周期からの前記周期的メッセージヘッダよりも、2つ以上のメッセージの前記直近のセットの短い周期として前記時間異常を検出するために前記電子プロセッサによって可読かつ実行可能な命令を含み、
前記周期的メッセージヘッダに関する前記予期される周期からの前記周期的メッセージヘッダよりも、2つ以上のメッセージの前記直近のセットの長い周期として前記時間異常を検出するために前記電子プロセッサによって可読かつ実行可能な命令を含まない、請求項1-8のいずれか1項に記載の電子デバイス。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、参照することによってその全体として本明細書に組み込まれる、2019年7月25日に出願され、「MULTI-STATE MESSENGING ANOMALY DETECTION FOR SECURING A BROADCAST NETWORK」と題された、米国仮特許出願第62/878,432号の利益を主張する。
【0002】
以下は、ブロードキャストネットワークセキュリティ技術、コントローラエリアネットワーク(CAN)バスセキュリティ代替技術、電子制御ユニット(ECU)セキュリティ技術、地上車両電子セキュリティ技術、水上車両電子セキュリティ技術、宇宙車両電子セキュリティ技術、ECU信頼/保証技術、産業制御システムネットワーク、および同等物に関する。
【背景技術】
【0003】
(背景)
現代の車両は、アンチブレーキシステム(ABS)モジュール、機関制御モジュール、および操向、スロットル、走行制御、気候制御システム、ならびに種々の他の車両機能を制御するためのモジュール等のモジュール化された電子コンポーネントを採用する。これらのモジュールは、CANバスを用いて相互通信する。車両エンターテインメントシステム、ナビゲーションシステム等の補助システムもまた、時として、CANバスに接続されるECUを含む。上記の実施例は、地上車両であるが、しかしながら、水上車両、宇宙車両、例えば、衛星、および産業制御システムは全て、そのようなモジュール化を採用し、CANバスアーキテクチャを頻繁に利用する。CANバスは、あるタイプのブロードキャストネットワーク、すなわち、CANバス上で送信される全てのメッセージが、CANバス上の全てのECUによって受信されるネットワークである。より一般的に、ブロードキャストネットワークは、ネットワーク上のトラフィックが、ネットワーク上の全ての電子デバイスによって受信されるネットワークである。ある実施形態では、ブロードキャストネットワークは、それによって受信デバイスが、メッセージのソースを検証し得る認証、またはそれによって送信者が、メッセージを解釈し得る受信者を制御し得る機密性を含まない。CANバストラフィックは、本質的に、メッセージ認証または機密性を含まず、そのような能力を追加することは、多くの場合、ネットワークデータ消費、信頼性、および効率に関して実践的ではない。
【0004】
アプリケーション層におけるCANバスを経由する通信は、アービトレーション識別子(ARB ID)と、最大8のデータバイトとから成る。ARB IDは、メッセージ内に含有されるデータの意味を示す。例えば、車輪速度は、4つの車輪毎の回転速度を表す2バイトのデータを伴うARB ID 0x354上に含有され得る。車輪速度を把握する必要性を有する車両上の全てのECUは、ARB ID 0x354を車輪速度と関連付けるようにプログラムされる。さらに、ARB IDは、衝突、すなわち、2つのECUが同時にCANバス上でメッセージを伝送することを試みる状況を解決するための便宜的な方法を提供する。そのような状況では、メッセージのARB IDは、メッセージの優先度を定義し、より高い優先度のメッセージが、伝送され、より低い優先度のメッセージを伝送することを試みるECUは、所定の時間遅延後に自動的に再伝送する。CANバスネットワークのブロードキャスト性質は、有利なこととして、新しい電子コンポーネントのアドホック追加を可能にする。これは、異なる特徴を伴う様々なモデルにおける車両を販売する自動車製造業者にとって理想的であり、加えて、(例えば)アフターマーケット音響システムを供給するアフターマーケット製造業者にとっても理想的である。
【0005】
しかしながら、CANバスのブロードキャスト性質はまた、セキュリティ課題を導入する。任意のECU(またはより一般的に、CANバス上の任意の電子デバイス)が、CANバスと接続され得(もしくはCANバスとすでに接続されているECUが、セキュリティ侵害され得)、次いで、CANバス上でメッセージを伝送し得、これらのメッセージは、CANバスネットワーク上で全てのECUまたは他の電子デバイスによって受信される。メッセージは、セキュアな様式で送信者を識別するための認証を含まない。したがって、デバイスが、正当な伝送において使用されるものと同一のARB IDヘッダおよびペイロードフォーマットを採用することによって、正当な伝送を模倣するようにプログラムされるネットワーク(またはそのようにプログラムされるようにセキュリティ侵害される既存のデバイス)に追加され、それによって、CANバスを介して、不正な、潜在的に悪意のある活動を実施することに対して、いかなる障壁も、存在しない。そのような悪意のある活動は、データの不正な収集から、危険なスロットルまたは制動アクションを誘発すること等の潜在的に生命を危うくするアクションに及び得る。
【0006】
2017年10月17日に発行され、「Anomaly Detection for Vehicular Networks for Intrusion and Malfunction Detection」と題された、Harris et al.の米国特許第9,792,435号が、参照することによってその全体として本明細書に組み込まれる。2018年9月25日に発行され、「Temporal Anomaly Detection on Automotive Networks」と題された、Sonalker et al.の米国特許第10,083,071号が、参照することによってその全体として本明細書に組み込まれる。これらの特許は、CANバス上で異常なメッセージングを検出し、それによって、CANバス上の潜在的に悪意のある活動のアラートを提供するためのいくつかのアプローチを説明している。
【0007】
故に、CANアーキテクチャのセキュリティおよび応答性に対するある改良が、本明細書に提供される。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】米国特許第9,792,435号公報
【特許文献2】米国特許第10,083,071号公報
【発明の概要】
【課題を解決するための手段】
【0009】
(簡単な要約)
本明細書に開示されるいくつかの例証的実施形態によると、ネットワークと接続可能である、電子デバイスが、開示される。ネットワーク上のトラフィックは、ネットワーク上の全ての電子デバイスによって受信され、ネットワークは、メッセージ認証を提供しない。伝送されるメッセージは、ペイロードと、ペイロードを識別するメッセージヘッダとを備える。電子デバイスは、異なるメッセージヘッダに関するメッセージの履歴蓄積に関する予期される周期および周期変動性メトリックを算出し、周期変動性メトリックに基づいて、周期的メッセージヘッダを識別するようにプログラムされ、さらに、周期的メッセージヘッダに関する予期される周期からの周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットの周期の逸脱として時間異常を検出し、検出された時間異常を示すアラートを発生させるようにプログラムされる。
【0010】
本明細書に開示されるいくつかの例証的実施形態によると、ネットワークと接続可能である、電子デバイスが、開示され、ネットワーク上のトラフィックは、ネットワーク上の全ての電子デバイスによって受信され、ネットワークは、メッセージ認証を提供しない。伝送されるメッセージは、ペイロードと、ペイロードを識別するメッセージヘッダとを備える。電子デバイスは、電子プロセッサと、時間異常検出方法を実施するために電子プロセッサによって可読かつ実行可能である、時間異常検出命令を記憶する、非一過性記憶媒体とを含む。時間異常検出命令は、異なるメッセージヘッダに関するメッセージの履歴蓄積に関する予期される周期および周期変動性メトリックを算出し、周期変動性メトリックに基づいて、周期的メッセージヘッダを識別するために電子プロセッサによって可読かつ実行可能な命令と、周期的メッセージヘッダに関する予期される周期からの周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットの周期の逸脱として時間異常を検出するために電子プロセッサによって可読かつ実行可能な命令と、検出された時間異常を示すアラートを発生させるために電子プロセッサによって可読かつ実行可能な命令とを含む。
【0011】
本明細書に開示されるいくつかの例証的実施形態によると、ネットワークと接続可能である、電子デバイスが、開示され、ネットワーク上のトラフィックは、ネットワーク上の全ての電子デバイスによって受信され、ネットワークは、メッセージ認証を提供しない。電子デバイスは、ネットワーク上のメッセージおよび/またはプラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、車両に関する状態マシンを維持し、異常を検出することに応答して、アラートを発生させることを含む、状態マシンの現在の状態に関する少なくとも1つのパラメータ値を使用して、ネットワーク上のメッセージに対して異常検出を実施し、状態マシンの現在の状態から新しい状態への遷移に応答して、新しい状態に関する少なくとも1つのパラメータ値を更新するようにプログラムされる。
【図面の簡単な説明】
【0012】
図面に示される任意の定量的寸法は、非限定的な例証的実施例として理解されるものである。別様に示されない限り、図面は、縮尺通りではなく、図面の任意の側面が、縮尺通りであるとして示される場合、図示される縮尺は、非限定的な例証的実施例として理解されるものである。
【0013】
図1図1は、CANバスを有する車両の図式的表現および本明細書に開示されるような時間異常検出の実施形態を実装する、CANバス上の1つのECUの機能図を提示する。
【0014】
図2図2および3は、図1の時間異常検出の2つの例証的実施形態の図式的表現を提示する。
図3図2および3は、図1の時間異常検出の2つの例証的実施形態の図式的表現を提示する。
【0015】
図4図4は、図1の状態マシンの一部の一例証的実施形態の図式的表現を提示する。
【0016】
図5図5は、訓練CANバスデータから図1の状態マシンを自動的に学習するための好適な方法の図式的表現を提示する。
【0017】
図6図6は、図2または図3の時間異常検出に関する状態認識を提供するために状態マシンを利用するための例証的アプローチの図式的表現を提示する。
【0018】
図7図7および8は、図6の状態遷移検出ブロックの2つの例証的実施形態の図式的表現を提示する。
図8図7および8は、図6の状態遷移検出ブロックの2つの例証的実施形態の図式的表現を提示する。
【発明を実施するための形態】
【0019】
(詳細な説明)
前述のように、CANバス上のメッセージのARB IDは、メッセージ内に含有されるデータの意味を示し、例えば、車輪速度は、4つの車輪のそれぞれの回転速度を表す2バイトのデータを伴うARB ID 0x354上に含有され得る。車輪速度を把握する必要性を有する車両上の全ての制御モジュールは、ARB ID 0x354を車輪速度と関連付けるようにプログラムされる。典型的には、アンチブレーキシステム(ABS)モジュール等の1つのモジュールは、単に、これらのメッセージを伝送することに関与するであろう。
【0020】
CANバスは、一般的に、リアルタイムシステム上で使用され、メッセージは、2つのタイプ、すなわち、周期的および非周期的に分割されることができる。周期的メッセージは、他のモジュールがそれらのリアルタイム制御タスクにおいて利用する情報を共有するために、リアルタイムタスクスケジューラを介して伝送される、所与のARB IDのメッセージである。一実施例は、機関制御モジュールによるトルクの変更を要求する、安定性制御モジュールから発せられるトルク要求である。周期的メッセージは、ほぼ固定された時間間隔において伝送される。時間間隔は、CAN自体が、例えば、より低い優先度のメッセージが遅延される衝突状況において決定論的あることが保証されることができないため、完全には決定論的ではない。機関が、トルク修正に関するいかなる要求も伴わずに起動しているとき、連続するメッセージのペイロードは、同一であり、ペイロードは、車両安定性を維持するため等、トルク修正が要求されるときに変化する。第2のタイプのメッセージは、非周期的である。これらのメッセージは、典型的には、ボタン押しまたはドア解錠等のユーザアクションに反応して伝送される。
【0021】
本明細書に開示されるものは、周期的メッセージストリームにおけるメッセージのタイミングの異常を検出する、時間異常検出の実施形態である。開示される時間異常検出は、有利なこととして、訓練データのセットに対する訓練を要求せず、平均メッセージ伝送頻度の変化に適応的である。加えて、時間異常検出の機能は、メッセージデータへのアクセスを要求しないため、本機能は、CANバスメッセージが、アプリケーション層において暗号化されているときに機能する。
【0022】
本明細書に開示されるものは、ホストプラットフォーム(例えば、地上車両、水上車両、宇宙車両、産業自動化およびプロセス制御システム等)に関する状態マシンが、維持される、状態認識異常検出の実施形態である。これらの実施形態は、所与のARB IDのメッセージのパターンが、プラットフォームの状態に依存し得るという本明細書の認識を活用する。例えば、ABSモジュールは、通常の車両動作の間、周期的に車輪速度をブロードキャストするメッセージを伝送し得る。しかしながら、走行制御が、プラットフォーム上で使用中である(それによって、プラットフォーム状態を変化させる)場合、ABSモジュールによって伝送される車輪速度メッセージの頻度は、本情報をより高い時間分解能において動作する走行制御モジュールに提供するように、増加し得る。別の実施例として、ABSシステムは、ABSシステムが緊急制動事象の間に動作しているとき、ABS変調ブレーキパルス率を提供するメッセージを伝送し得るが、そうでなければ、これらのメッセージを伝送し得ない。状態マシンを用いてプラットフォームの状態を認識することによって、メッセージング異常検出は、プラットフォームの現在の状態に関して調整されることができる。本状態認識は、異常を識別する際に改良された正確度を提供することができる。また、状態マシン自体が、異常検出のために使用されることができ、例えば、状態マシンが、状態マシンの許可された状態遷移ではない状態遷移を検出する場合、本違反は、フラグ付けされることができる。
【0023】
開示される時間異常検出および開示される状態認識異常検出が、有用に組み合わせられ得ることを理解されたい。例えば、状態認識の不在下では、プラットフォーム状態が変化するとき(例えば、走行制御が使用中であるとき)の特定のARB IDのメッセージの頻度の適切な変化が、誤って異常としてフラグ付けされ得る。本明細書に開示される組み合わせられた実施形態では、状態認識は、そのようなエラーが生じないことを確実にする。加えて、本明細書に開示されるような適応的時間異常検出では、所与のARB IDに関する時間異常検出を適応的に調整する際に使用されるそのARB IDに関するメッセージの履歴蓄積は、プラットフォームが、現在の(第1の)状態から新しい状態に変化するとき、メモリ内に記憶されることができ、次いで、プラットフォームが、第1の状態に戻る場合、第1の状態に関するメッセージの記憶された履歴蓄積は、読み出され、使用される。(そのような記憶/読出の不在下では、プラットフォームが、第1の状態に戻るとき、ARB IDのメッセージの十分な履歴蓄積が生じる間、ある程度の不動作時間が、存在し、本不動作時間の間にそのARB IDに関与するいかなる異常も、検出されないであろう。)
【0024】
開示される時間異常検出および開示される状態認識異常検出は、上記のように有用に組み合わせられることができるが、開示される時間異常検出が、加えて、または代替として、Harris et al.の米国特許第9,792,435号に説明されるメッセージ毎SVM分類子ベースの異常検出器等の他のタイプの異常検出と併せて使用され得ることをさらに理解されたい。本実施例では、SVM超平面曲率パラメータγの異なる値が、車両の異なる状態に関して訓練され、状態マシンによって示されるようなプラットフォームの現在の状態に関して訓練されたパラメータγの値が、使用される。これは、SVM分類子が、状態認識ではない訓練と比較して、プラットフォームの現在の状態に存在するCANバスメッセージトラフィックの特定のパターンに関してより精密に調整されることを可能にする。
【0025】
図1を参照すると、プラットフォーム10が、それにいくつかの電子制御ユニット(ECU)14が接続される、コントローラエリアネットワーク(CAN)バス12を含む。例証的プラットフォーム10は、自動車である。より一般的に、車両10は、地上車両(例えば、図示されるような自動車10、またはトラック、オフロード車両、オートバイ、バス、もしくは同等物)、水上車両(例えば、外航船、潜水艦、または同等物)、もしくは宇宙車両(例えば、軌道衛星、惑星間探測器、または同等物)であってもよい、または産業制御システム、例えば、CANバスもしくは他のブロードキャストネットワークを採用する、産業自動化および/または産業プロセス制御システムであってもよい。より一般的に、ECUは、(典型的な車両の場合では)機関制御モジュール、ABSモジュール、動力操向モジュール、および/または他の車両動作関連電子デバイス、カーステレオもしくは他の車両内エンターテインメントシステム、車両外通信のために使用される無線送受信機(例えば、通信衛星送受信機)、車両気候制御モジュール等のプラットフォーム(例えば、車両、産業制御システム等)のCANバスまたは他のネットワーク12と接続される、任意の電子デバイスであり得る。産業制御システムの場合では、ECUは、例えば、炉制御モジュール、ガス流動コントローラECU、ロボットコントローラ等を含んでもよい。より一般的に、CANバス12は、任意のブロードキャストネットワーク、すなわち、ネットワーク上のトラフィックが、ネットワーク上の全ての電子デバイスによって受信され、ネットワーク上のトラフィックが、メッセージ認証を含まない、任意のネットワークであり得る。本文脈におけるメッセージ認証は、それによって受信デバイスが、メッセージのソースを検証し得る、メッセージ内またはネットワークのアーキテクチャ内に含有される情報である。CANバスは、ネイティブにメッセージ認証を提供しない。ネットワークが、メッセージ認証を提供しないが、ネットワーク上の2つ以上のECU14の所与のセットが、それらのECUの間で送信されるメッセージの中に認証を組み込み得ることに留意されたい。例えば、2つのECUが、CANバスを介して、またはある他の通信経路によって、公開キーを交換することによって公開キー暗号法を採用し得、その後、これらのECUの間の暗号化メッセージが、公開キー暗号化を用いて認証されるであろう。しかしながら、ネットワークは、そのメッセージ認証を提供していない。
【0026】
ブロードキャストネットワーク上のメッセージは、ペイロードと、ペイロードを識別するメッセージヘッダとを備えてもよい。CANバスの場合では、ペイロードを識別するメッセージヘッダは、ARB IDヘッダである。この点で、所与のプラットフォームでは、単一のECUが、単に、具体的ARB IDヘッダを伴うメッセージを伝送し得るが、これは、本具体的ARB IDヘッダが、それによって受信デバイスがメッセージのソースを検証し得るメッセージ認証としての役割を果たすことを意味しない。これは、ネットワーク上の任意のECUが、そのARB IDを伴うメッセージを伝送するようにセキュリティ侵害され得(または代替として、悪意のある新しいデバイスが、CANバスと接続され、そのARB IDを伴うメッセージを伝送し得)、受信デバイスが、メッセージが、そのARB IDを伴うメッセージを伝送するはずであるECUからではなく、セキュリティ侵害されたデバイスまたは悪意のある新しいデバイスから発せられたことを把握するいかなる方法も有していないであろうためである。より一般的に、開示されるアプローチは、ネットワーク上のトラフィックが、ネットワーク(すなわち、ブロードキャストネットワーク)上の全ての電子デバイスによって受信され、ネットワーク上のトラフィックが、メッセージ認証を含まず、伝送されるメッセージが、ペイロードと、ペイロードを識別するメッセージヘッダとを備える、任意のネットワーク上で使用されてもよい。例証的実施形態は、ネットワークとしてCANバスを採用し、ヘッダは、完全なARB IDであり、SAE J-1939規格におけるようなパラメータグループ番号(PGN)等のARB IDのサブセットまたはある他の識別子等は、一貫して同一のデータコンテンツを表す。
【0027】
継続して図1を参照すると、少なくとも1つの保護ECU14prot(またはより一般的に、ネットワーク12上の電子デバイス14prot)は、図1に図式的に表されるような異常検出能力を含む。保護ECU14protは、電子プロセッサ20と、電子プロセッサ20によって可読かつ実行可能である命令24を記憶する、非一過性記憶媒体22とを含む。ハードウェアコンポーネント20、22は、多様に実装されてもよい。例えば、いくつかの実施形態では、電子プロセッサ20および非一過性記憶媒体22は、印刷回路基板(PCB、図示せず)上に配置される、別個の集積回路(IC)チップであり、PCBの伝導性トレースが、プロセッサ20および記憶媒体22を動作的に接続してもよい。いくつかの実施例として、電子プロセッサ20は、マイクロプロセッサまたはマイクロコントローラICチップを備えてもよく、非一過性記憶媒体22は、フラッシュメモリチップ、読取専用メモリ(ROM)ICチップ、電子的プログラマブル読取専用メモリ(EPROM)ICチップ等のメモリICチップを備えてもよい。他の実施形態では、電子プロセッサ20および非一過性記憶媒体22は、単一のICチップとしてモノリシックに統合されてもよい。いくつかの実施例として、ECU14protは、特定用途向け集積回路(ASIC)チップまたはフィールドプログラマブルゲートアレイ(FPGA)チップとして実装され、記憶装置およびデジタルプロセッサの両方は、単一のASICもしくはFPGA上にモノリシックに加工される。既述のように、ECU14protは、CANバス12からCANトラフィック26を受信する。
【0028】
継続して図1を参照すると、命令24は、時間異常検出を実装する時間異常検出方法を実施するために電子プロセッサ20によって可読かつ実行可能である、時間異常検出命令30と、CANバスまたは他のネットワーク12上のメッセージおよび/または慣性センサ等のプラットフォーム12を監視する1つ以上のセンサから受信されたセンサデータに基づいて、プラットフォーム10に関する状態マシンを維持するために電子プロセッサ20によって可読かつ実行可能である、状態マシン命令32とを含む。例えば、ECU14protが、加速度計33からセンサデータを受信するように接続される場合、加速度計33からの加速度データは、プラットフォーム状態(例証的車両プラットフォーム10の加速度の率、機関誘発車両振動に基づく機関がオンまたはオフであるかどうかの検出等)を測定するために使用され得る。他のタイプの慣性センサも、例証的加速度計33に加えて、またはその代わりに使用されてもよい(例えば、ジャイロスコープ、磁気計)。別の例証的実施例として、産業制御システムの場合では、好適なセンサは、温度センサ、圧力センサ、ガスセンサ、および/または他のタイプの産業プロセスセンサを含んでもよい。プラットフォーム12を監視するセンサが、ECU14protに物理的に統合され得る、または(例証的な図1におけるように)配線、ケーブリング、無線通信インターフェース、もしくは同等物によってECU14protと接続され得ることに留意されたい。接続が、別の可能性として考えられるアプローチである、CANバス12を用いたものである場合、センサデータは、CANバスネットワーク上のメッセージの形態であろう。いくつかの実施形態では、ECU14protは、異常検出のみを実施する、専用電子デバイスである。他の実施形態では、ECU14protは、ある他の機能を実施する、ECUである(例えば、ECU14protは、アンチロック制動を制御するABSモジュール、走行制御モジュール等であり得る)。これらの後者の実施形態では、命令24はさらに、電子デバイス14protを制御するために(例えば、ABSを実装するために、または走行制御を実装するために等)電子プロセッサ20によって可読かつ実行可能である、制御命令34を含む。制御命令34を含む実施形態では、命令24はさらに、随意に、制御命令34が時間異常検出方法によって異常として検出されるメッセージを処理しないように防止するために電子プロセッサ20によって可読かつ実行可能である、メッセージ除斥命令36を含んでもよい。命令24を実行するECU14protは、それによって、(時間異常検出命令30の実行を介して)時間異常検出40を実装し、(状態マシン命令32の実行を介して)CANバスまたは他のネットワーク12上のメッセージおよび/またはプラットフォームを監視する1つ以上のセンサ33から受信されたセンサデータに基づいて、車両10に関する状態マシン42を維持し、いくつかの実施形態では、また、随意に、メッセージ除斥命令36の実行を介したメッセージ除斥フィルタ46を含む、制御命令34の実行を介してECUタスク処理44を実施する。
【0029】
ECUタスク処理44は、随意であり、ECU14protが、開示されるネットワーク保護異常検出サービスを提供する以外に、プラットフォーム10上で機能を実施する場合に含まれる。例えば、プラットフォーム10が、地上車両であり、ECU14protが、アンチブレーキシステム(ABS)モジュールである場合、ECUタスク処理44は、車輪速度を監視すること、ブレーキペダルからの信号を監視すること、およびこれが制動事象の間に道路に係合することができないと検出される場合、車輪に適用されるブレーキを変調する(例えば、パルス化する)こと等、アンチロック制動に関連する機能を好適に実施する。別の実施例として、プラットフォーム10が、産業制御システムであり、ECU14protが、炉制御モジュールである場合、ECUタスク処理44は、1つ以上の炉区域の温度を監視することと、(電気炉に関して)炉加熱器コイルへの電流を調節することまたは(可燃燃料炉に関して)炉バーナへの燃料流動を調節することとを含んでもよい。他方では、代替として、ECU14protが、開示されるネットワーク保護異常検出サービス(のみ)を提供するための専用デバイスであり、その場合では、ECUタスク処理44は、省略されることが想定される。
【0030】
本明細書にさらに説明されるであろうように、時間異常検出40は、異常に関して監視されている各ARB IDのメッセージの履歴蓄積50を維持することを含み、随意に、異常検出が、状態マシン42の現在の状態54に関して調整される、状態特有調整52を含む。図1に図式的に示されるように、時間異常検出40は、CANバストラフィック26を受信および処理し、同様に、車両10に関する状態マシン42は、CANバストラフィック26上のメッセージに基づいて維持される。ECUタスク処理44(実施される場合)はまた、時間異常検出40によって検出される異常メッセージが、随意のメッセージ除斥フィルタ46によって除斥され得る範囲を除いて、CANバストラフィック26を受信する。実施されているタスクに応じて、ECUタスク処理44はまた、メッセージを伝送してもよく、すなわち、ECUタスク処理44はまた、メッセージをCANバストラフィック26の中に投入してもよい。これらの発信メッセージは、典型的には、時間異常検出40によって処理されない(但し、代替として、時間異常検出40によって発信メッセージを処理することもまた、想定される)が、その上で状態マシン42が維持されるCANトラフィック内に含まれてもよい。例えば、ECU14protが、車両10の走行制御モジュールである場合、ECUタスク処理44は、走行制御が使用中であることを示すメッセージを送信することを含んでもよく、これは、状態マシン42における状態遷移を引き起こし得る。
【0031】
例証的実施例では、CANバス12上の単一のECU14protが、状態認識異常検出40、42を実施する。これは、ネットワーク上のトラフィックが、ネットワーク上の全ての電子デバイスによって受信され、CANバス12に接続される単一の電子デバイスが、全てのCANバストラフィックを監視することができることになるため、十分であり得る。しかしながら、ECU14のうちの1つを上回るもの、またはさらには全てが、状態認識異常検出40、42を提供されることが想定される。例えば、メッセージ除斥フィルタ46が所望される任意のデバイスが、有利なこととして、状態認識異常検出40、42を含むであろう。
【0032】
さらに、状態マシン42を伴わずに時間異常検出40を実装することが、想定され、その場合では、いかなる状態特有調整52も、存在せず、履歴蓄積50は、状態特有ではないであろう。逆に、例証的時間異常検出40以外の(またはそれに加えて)異常検出と併せて状態マシン42を実装することが、想定される。例えば、前述で議論されるように、Harris et al.の米国特許第9,792,435号に説明されるメッセージ毎SVM分類子ベースの異常検出器は、状態認識から利益を享受し得る。
【0033】
ここで図2を参照すると、時間異常検出40の例証的実施形態が、説明される。CANバストラフィック26内のメッセージヘッダ60毎に、履歴蓄積50が、維持される。メッセージヘッダ60は、例証として、完全なARB IDまたはSAE J-1939規格におけるようなパラメータグループ番号(PGN)等の完全なARB IDのサブセット等であってもよい。図面に明示的に示されないが、各メッセージが、メッセージが図1に説明される電子デバイス14protにおいて受信されたときを示すタイムスタンプを割り当てられることを理解されたい。したがって、履歴蓄積50内に記録されるメッセージは、タイムスタンピングされる。タイムスタンプを発生させるクロックは、電子デバイスにローカルであり得、ネットワークを横断して同期される必要はない。予期される周期および周期変動性メトリックを含む履歴蓄積に関する統計値62が、メッセージの履歴蓄積50に関して算出される。1つのアプローチでは、サブジェクトメッセージヘッダを伴う各メッセージは、これが受信された時間と関連付けられる(すなわち、タイムスタインピングされる)。本時間は、メッセージが受信された直近の以前の時間と比較され、履歴蓄積50に追加されるメッセージ周期の測度をもたらす。いったん履歴蓄積50が、ある指定された最小数のサンプル(状態特有調整52の調整可能パラメータ、またはいかなる状態認識も存在しない場合、調整可能グローバルパラメータであり得る)を含むと、平均または代表的メッセージ周期を含む統計値62が、標準偏差、分散、または他の選定された変動性メトリックとともに判定される。変動性メトリックは、メッセージヘッダのメッセージの決定性の測度である。例えば、小さい標準偏差または分散は、メッセージヘッダのメッセージの高度に周期的な発生を示す一方、標準偏差または分散に関する大きい値は、広い範囲の異なるメッセージ周期および低周期性を示す。決定64において、サブジェクトメッセージヘッダのメッセージが、決定論的と見なされるほど十分に周期的であるかどうかが判定される。例えば、決定64は、標準偏差(または代替として、分散)に対する閾値を採用してもよく、それによって、標準偏差(もしくは分散)が、閾値を下回る場合、メッセージヘッダは、周期的であると見なされ、そうでなければ、メッセージヘッダは、非周期的であると見なされる。メッセージヘッダが、非周期的である場合、66において、メッセージヘッダは、その後、無視される。これは、メッセージヘッダが、その後、蓄積される、またはさらに処理されるべきではないことを示す、フィードバック矢印68によって図2に図式的に示される。CANバス上で生じるメッセージヘッダ毎に別個の履歴蓄積50および別個の統計値62が、存在することに留意されたい。
【0034】
指定された最小数のサンプルが蓄積されるまで、統計値62を算出しない(または代替として、無視する)ことに加えて、いくつかの実施形態では、統計値62は、所与のメッセージヘッダに対する無活動の周期後にリセットされる。本リセット機能はまた、状態特有調整52の調整可能パラメータ、またはいかなる状態認識も存在しない場合、調整可能グローバルパラメータであり得る。非限定的な例証的実施例では、統計値62のリセットは、サブジェクトメッセージヘッダを伴ういかなるメッセージも伴わずに、30秒後に適用される。本機構は、統計値62が、欠如するメッセージを無視することによってプラットフォームの動作を反映することを可能にする。欠如するメッセージは、誤動作または単純にユーザが本システムの一部を実行していない(例えば、走行制御を使用していない)ことの表れであり得、悪意のある攻撃の兆候である可能性は低い。また、平均および分散または標準偏差を算出するために高速フーリエ変換(FFT)を適用すること等、予期される値および分散メトリックを含む、統計値62を算出するための他のアプローチを採用することが、想定されることに留意されたい。
【0035】
継続して図2を参照すると、周期的メッセージヘッダとともに送信される非周期的メッセージ(すなわち、決定64において示されるように周期的であるメッセージヘッダを伴うメッセージ)の検出が、以下のように行われる。周期的メッセージヘッダ(すなわち、CANバスの場合では、サブジェクトメッセージヘッダ)を伴う直近の2つのメッセージの周期70が、直近の2つのメッセージの時間分離として算出される。決定72において、異常が、(履歴統計値62からの)周期的メッセージヘッダに関する予期される周期からの直近の2つのメッセージの時間分離70の逸脱が、ある閾値Xを超える場合、検出され、これは、再び、状態特有調整52の調整可能パラメータ、またはいかなる状態認識も存在しない場合、調整可能グローバルパラメータであってもよい。いくつかの実施形態では、閾値Xは、メッセージヘッダに関する予期される周期からの規定されたパーセンテージ逸脱である。異常が、検出される場合、動作74において、サブジェクトメッセージヘッダを伴う直近のメッセージは、異常としてフラグ付けされる。例えば、図1のメッセージ除斥フィルタ46が、採用される場合、異常フラグ付け動作74はまた、フィルタ46をトリガし、直近のメッセージがECUタスク処理44によって処理されないように妨げてもよい。加えて、または代替として、異常フラグ付け動作74は、警告を車両10のオンボードコンピュータディスプレイに送信してもよい、ならびに/もしくは警告は、一元化された場所(例えば、ファームウェアアップグレードを監視するために情報を使用する、自動車製造業者の監視センター)に無線で伝送されてもよいこと等が考えられる。
【0036】
図2を参照して説明される時間異常検出アプローチに伴う1つの潜在的な困難点は、CANバスの非決定論的性質(例えば、衝突に起因するメッセージ伝送遅延の可能性)が、閾値Xが誤検出を限定するためにかなり高い値に設定される必要があり得、これが、感度を低減させ得ることを意味することである。これは、時間異常が、周期的メッセージヘッダを伴う2つのみのメッセージの直近のセットの周期の周期的メッセージヘッダに関する(統計値50からの)予期される周期からの逸脱として検出されることに起因する。
【0037】
図3を参照すると、時間異常検出40の別の例証的実施形態が、説明され、これは、履歴代表値50とともに、スライディングウィンドウ80の統計値を使用する。スライディングウィンドウ80の使用によって、時間異常が、周期的メッセージヘッダを伴う2つを上回るメッセージの直近のセットの周期の予期される周期からの逸脱として検出される。スライディングウィンドウのウィンドウサイズWは、状態特有調整52の調整可能パラメータ、またはいかなる状態認識も存在しない場合、調整可能グローバルパラメータであってもよい。図3に示されるように、処理62、64、66、68は、サブジェクトメッセージヘッダが、時間異常分析を実施するために十分に周期的であることを判定するために、図2を参照してすでに説明されるように好適に実施される。このように判定されるような周期的メッセージヘッダ毎に、スライディングウィンドウ蓄積80が、決定82において、ウィンドウがW個のサンプルを用いて充填されていることが検出されるまで、実施される。いったんウィンドウが、充填されると、動作84において、周期的メッセージヘッダを伴うW個のメッセージの直近のセットの周期が、算出される。これは、例えば、以下のように算出されることができる。
【数1】
式中、TSは、指数iによってインデックス化されるサンプルのタイムスタンプであり、Tは、W個のメッセージの直近のセットの算出された周期を表す。決定86において、異常が、(履歴統計値62からの)周期的メッセージヘッダに関する予期される周期からの動作84において算出された周期の逸脱が、ある閾値Xを超える場合、検出され、これは、再び、状態特有調整52の調整可能パラメータ、またはいかなる状態認識も存在しない場合、調整可能グローバルパラメータであってもよい。いくつかの実施形態では、閾値Xは、メッセージヘッダに関する予期される周期からの規定されたパーセンテージ逸脱である。異常が、検出される場合、動作74において、サブジェクトメッセージヘッダを伴う直近のメッセージは、図2を参照してすでに説明されるように、異常としてフラグ付けされる。決定86が、スライディングウィンドウ80のコンテンツが、少なくとも1つの異常なメッセージ、すなわち、サブジェクトメッセージヘッダを伴うメッセージの別様に周期的なストリームの中に投入された少なくとも1つのメッセージを含有する可能性が高いことを識別することに留意されたい。これは、ウィンドウ80が、W個のサンプルを含有するため、悪意を持って挿入されている場合がある具体的メッセージに関してある程度の不確実性を提示する。したがって、さらなる随意の動作88において、投入される可能性が高いメッセージは、対毎のメッセージ間隔に基づいて、(少なくとも暫定的に)識別されることができる。言い換えると、随意の動作88において、スライディングウィンドウ80内のメッセージi=2,...,W毎の時間間隔(TS-TSi-1)が、算出され、本時間間隔が、ある閾値を上回って(統計値62からの)予期される周期から逸脱する場合、指数iによってインデックス化されるメッセージは、投入される可能性が高いメッセージとしてフラグ付けされる。
【0038】
スライディングウィンドウ80のウィンドウサイズWは、誤検出攻撃フラグの尤度と、これが攻撃をフラグ付けするまでにかかる時間との間のトレードオフを提示する。車両上のリアルタイム制御通信が、20Hzを上回る周波数において動作する場合、攻撃が、検出され、20個のサンプルのウィンドウサイズWを使用することによって、1秒またはそれを下回る秒以内でアラートされてもよい。
【0039】
有利なこととして、図2を参照して説明される時間異常検出アプローチおよび図3を参照して説明される時間異常検出アプローチの両方は、任意の機械学習(ML)コンポーネントの訓練を実施することを要求しない。また、履歴蓄積50が、前述で説明されるようにリセットされる場合、アプローチは、適応的であり得る。改良されたリアルタイム適応性が、履歴蓄積50が、サンプルサイズBの先入れ先出し(FIFO)バッファとして実装される場合、達成されることができる。例えば、Bが、5,000個のサンプルに設定され、サブジェクトメッセージヘッダの周期性が、500Hzである場合、約10秒の経時的な予期される周期の緩慢な変化が、バッファが、最も古いサンプルを破棄するため、適応されることができる。
【0040】
別の変形として、悪意のある行為者は、典型的には、付加的メッセージを投入するため、攻撃が、周期の減少と関連付けられる可能性が高いであろうことが予期される。したがって、いくつかの実施形態では、異常としてフラグ付けされる2つ(図2)またはそれを上回る(図3)メッセージの直近のセットのサブジェクトメッセージヘッダに関する予期される周期からの逸脱は、これが、メッセージが投入されたことを示唆するため、メッセージの直近のセットの周期が、予期される周期よりも小さい、それらの逸脱のみである。対照的に、メッセージの直近のセットの周期が、予期される周期よりも長い逸脱は、悪意のある攻撃を示す可能性がより低く、異常としてフラグ付けされない。
【0041】
図2および3の時間異常検出アプローチに伴う1つの潜在的問題は、車両10が、その状態を変化させる場合、これが、いくつかの周期的メッセージヘッダの周期の変化をもたらし得ることである。前述の実施例では、ABSモジュールは、ARB ID 0x354を伴う車輪速度をブロードキャストするメッセージを伝送する。これらのメッセージは、走行制御が使用中ではないとき、より低い頻度で伝送され、走行制御が使用中であるとき、より高い頻度で伝送される。そのような場合では、走行制御が、使用中であるとき、ARB ID 0x354を伴うメッセージの頻度は、急激に増加し、これは、時間異常として誤って検出され得る。
【0042】
本問題に対処するために、再び図1を参照すると、現在の状態54の識別を維持することを含む、CANバスまたは他のネットワーク12上のメッセージおよび/またはプラットフォーム12を監視する1つ以上のセンサ33から受信されたセンサデータに基づいて、車両10に関する状態マシン42を維持することが、本明細書にさらに開示される。車輪速度実施例では、状態マシン42によって検出される状態遷移は、異常検出器の(およびより具体的には、履歴蓄積50ならびに関連付けられる統計値62の)リセットを誘発することができる。したがって、ARB ID 0x354におけるメッセージに関する頻度の急激な増加は、(誤った)異常として検出されないであろう。
【0043】
簡潔に図4を参照すると、状態「機関オフ」、「機関オン」、「車両方向転換中」、「ブレーキシステム使用中」、および「走行制御使用中」を含む、車両10に関する可能性として考えられる状態マシンの例証的部分が、示される。図4の指向される矢印は、許可される状態遷移を表す。車両10は、任意の所与の時間において1つのみの状態、例えば、図4の状態「走行制御使用中」にある。従来の状態マシン略図表現によると、図4では、状態マシンの可能性として考えられる状態は、ノード(図4に長円形として示される)によって表され、初期状態から次の状態への各可能にされる状態遷移は、初期状態を次の状態に接続することから延びる指向性の弧として示される。状態マシンが、特定のプラットフォームに特有であろうことを理解されたい。図4は、例証的車両10に関する可能性として考えられる状態マシンの一部を示す。別の実施例(図示せず)として、産業プロセスは、適切な対応する状態遷移の弧(例えば、「コンベヤベルト輸送」→「炉の立ち上げ」、「炉の立ち上げ」→「炉の滞留」、「炉の滞留」→「炉の立ち下がり」、「炉の立ち下がり」→「コンベヤベルト輸送」、「コンベヤベルト輸送」→「クエンチ」等)とともに、「コンベヤベルト輸送」、「炉の立ち上げ」、「炉の滞留」、「炉の立ち下がり」、「クエンチ」等の状態を有し得る。
【0044】
車両10の状態の判定は、人間観察者が判定を使用するために必要とし得る任意の必要な先験的情報を除去するために、機械学習(ML)を使用して達成されることができる。MLアルゴリズムは、車両に関する異なる状態を学習するために使用され、状態特有調整パラメータ52は、周期的メッセージの追跡を調節する、またはさらには時間的に追跡されているメッセージを調節するために使用されることができる。例えば、車輪速度をブロードキャストするメッセージが、通常の動作の間に周期的に送信され得る。いったん走行制御が、車両上で使用中になると、本周期性は、増加し得る。MLは、人間が手動でパラメータを設定することなく、「走行制御使用中」状態を車輪速度ブロードキャストメッセージに関するより速い周期性と相関させる。別の実施例は、状態遷移の間に車両の物理的状態を検証し得る。機関始動の間の車両の電力引き込みは、訓練された自動車エンジニアが容易に検出し得る周知のパターンである。MLアルゴリズムは、CANメッセージ内に含有されるデータから物理的特性を抽出し、訓練されたエンジニアが全ての既知の車両特性を策定する必要性を除去し、人間が自身では識別することができないパターンを識別することができる。
【0045】
状態を判定することに対する機械学習アプローチは、追跡される状態毎の異常検出のために使用されるべき一意のモデルの作成を伴う。状態マシン42は、次いで、状態変化トリガに関して着信するメッセージおよび/またはプラットフォームを監視する1つ以上のセンサから受信されたセンサデータを監視する。いったんトリガが、観察されると、状態判定アルゴリズムは、異常を検出するために現在使用されているモデルを切り替えることができる。訓練の間、スライディングウィンドウが、調査のためにCANメッセージを収集するために使用されることができる。本スライディングウィンドウは、直近のX個のメッセージを追跡し、Xは、調整可能パラメータである。機械学習アルゴリズムは、次いで、一意のメッセージ、メッセージの発生回数/周期性、または本スライディングウィンドウ内に含有されるまだ判定されていない他の特性を検証することによって、プラットフォーム状態を判定することができる。
【0046】
追跡される状態の数もまた、動作必要性を満たすために調節されることができる。例えば、広い範囲の状態判定は、移動時の車両およびアイドリングしている車両等の2つの一意の状態のみを追跡し得る。より精密な状態判定は、N個の一意の状態を追跡することができ、Nは、調節可能パラメータである。これらの状態は、車両駐車中、車両走行制御中、車両方向転換中、車両加速/制動中等を含み得る。
【0047】
各状態は、状態と関連付けられる一意のモデルを有してもよい。検出されている具体的メッセージを通してか、または最近のメッセージのバッファを分析することを通してかにかかわらず、状態遷移が、検出されると、新しい状態に関するモデルは、切り替えられ、異常検出能力を精緻化する。
【0048】
状態認識異常検出アルゴリズムもまた、時間異常検出を強化するために使用されることができる。周期的CANメッセージが、通常の動作の間にプラットフォームネットワーク上でほぼ決定論的に(CAN自体が、決定論的であることが保証されることができないため、完全には決定論的ではない)伝送される。周期的メッセージは、2つのカテゴリ、すなわち、真の周期的メッセージおよび事象周期的メッセージに分割されることができる。真の周期的メッセージは、機関が、起動しているとき、ほぼ決定論的な率を有する。事象周期的メッセージは、現代の車両上で走行制御を可能にする等、プラットフォームを一意の状態に置く事象が、起こるとき、ほぼ決定論的な周期性または有意に異なる周期性を有する。プラットフォームが、本新しい状態に入ると、プラットフォームが本状態に留まる時間の持続時間にわたってほぼ決定論的に送信される、一意の事象周期的メッセージが、存在し得る。本新しいアルゴリズムが追跡する状態毎に一意のモデルを使用することは、時間アルゴリズムが調節されることを可能にし、本デバイスが時間異常に関してより効果的に監視することを可能にするであろう。
【0049】
いったん状態認識が、取得されると、状態は、他のセキュリティ査定または条件査定のために使用され、条件ベースの保守もしくは不適切な時点における診断の検出を可能にすることができる。故に、車両10が、適切な状態にあるときのみ、あるメッセージが、サイバー物理ネットワーク、すなわち、CANネットワーク12上で適切であり得ることを理解されたい。例えば、機関コントローラ(例えば、ECU14)への診断再プログラミングメッセージは、機関が、オフであり、車両10が、移動しておらず、したがって、「点火オン、機関オフ」状態にあるときのみ生じるべきである。同様に、車両10が、具体的状態にないが、任意の他の状態において許容可能である場合にのみ生じるべきメッセージが、存在し、例えば、ドア解錠メッセージは、「機関オン、車両移動中」以外の全ての状態において適切であろう。最後に、メッセージが、2つ以上の状態において適切であり、残りのものにおいて不適切であり得、例えば、無線を再プログラムするための診断メッセージは、「点火オン、機関オフ」および「機関オン、移動なし」状態の両方において許容可能であるが、「移動状態」または「点火オフ」状態において許容可能ではない。その存在または可能にされない状態にある具体的コンテンツのいずれかによって、メッセージが観察されるときは常に、そのメッセージは、異常であり、報告されるべきである。
【0050】
状態不適合異常メッセージの検出は、以下の例示的実施形態に従って、ECU14によって実施されてもよい。最初に、メッセージが、ネットワーク12から取り込まれ、メッセージレベルにおいて処理されるか、信号にセグメント化されるかのいずれかである。本例示的実施形態に関して、用語「メッセージ」および「信号」は、同義的に使用される。ECU14または他の好適なコンポーネントは、次いで、信号を、例えば、非一過性記憶媒体22上に記憶される、テーブル/データベース内のその対応するデータと関連付ける。種々の実施形態では、データは、DBCファイル内に記憶されてもよいが、しかしながら、データが、信号が、テーブル内でルックアップされ、その信号についてのさらなるパラメータが、利用可能である、任意の表現であり得ることを理解されたい。その信号のパラメータは、単純な形態では、利用可能な状態の列挙であり得、その信号を表すバイナリ値が、その状態の間に可能にされる(1)、または可能にされない(0)。
【0051】
例示的ルックアップテーブルは、対応するシステムが、0~3に列挙される状態を有するという条件で、状態(0)において可能にされず、状態1、2、および3において可能にされる信号に関するパラメータ値(0,0;1,1;2,1;3,1)を含有してもよい。強化された実施形態では、テーブルは、信号が異常であった原因を与える、および/またはとるべき是正措置を表すために拡張されてもよい。例えば、(0,0,9;1,1,0;2,1,0;3,1,0)であり、9は、とられるべき是正措置または信号が異常であった理由のうちの一方または両方を示す、テーブル内の列挙を表すであろう。テーブルはまた、テーブル内のテキストとして理由に関する情報を記憶してもよい。
【0052】
より複雑な形態によると、テーブルは、信号、すなわち、メッセージ内の要素およびそれらの個別の状態を表すために実装されてもよい。一実装によると、可能にされる/可能にされない状態への信号コンテンツの合致のために、ビットフィールドを介する。本アプローチが、信号が、少数のビットに制約される場合、最も適用可能であり得ることを理解されたい。例えば、フィールドのセット(State;SetまたはClear;Bit Field)であり、Stateは、フィールドがアクティブである状態を表し、SetまたはClearは、ビットフィールドがトリガリングが行われるために設定(1)またはクリア(0)されなければならないビットを表すかどうかを表し、Bit Fieldは、信号内の検証するべきビットを表す。いくつかのビットが、正であり、いくつかが、負でなければならない場合、これらのセグメントのうちの2つは、「and」組み合わせを通して組み合わせられてもよい。非限定的実施例は、異常が、(3)として列挙される状態において報告されるべきであり、第3のビットが、(バイナリ表記法において表される8ビット数を仮定して)Setである場合、テーブルエントリは、(3,1,’0000 0001’)であろうことである。同一の情報を表す第2の実装は、当業者によって理解されるであろうように、データ要素の特徴を抽出および比較することに適している、典型的なデータベース表記法および単純なクエリ言語(SQL)方法の使用を含む。当業者は、そのような実装が、必然的に、本システムのオーバーヘッド、例えば、リソース使用および同等物を増加させるであろうことを理解するであろう。故に、車両10状態は、信号/メッセージが、車両状態に基づくメッセージのブラックリストを介して異常であるかどうかを判定するために使用されてもよく、例えば、車両10が、移動している場合、診断性質のいかなるメッセージも、禁止され得る。したがって、現在の状態に関して関連付けられるパラメータ値は、現在の状態から新しい状態への遷移に応答して、変化してもよい。上記に示されるように、信号(メッセージ)が、状態に基づいて、異常であると判定される場合では、上記および下記に開示されるようなさらなる処理が、適用されてもよい。
【0053】
ここで図5を参照すると、状態マシン42を訓練するための1つの例証的アプローチが、説明される。訓練は、訓練CANトラフィックデータ100(および随意に、訓練CANトラフィックデータ100の入手と並行して加速度計33によって入手されるもの等の訓練センサデータ)を利用する。教師ありまたは半教師あり学習に関して、訓練CANトラフィックデータ100は、状態注釈を用いて好適に標識化され、例えば、CANデータ100の収集を実施するエンジニアによって注釈を付けられる。一実施例では、エンジニアは、異なる状態(機関オフ、機関オン/アイドル、運転、方向転換、走行制御使用中、走行制御解除等)において車両を動作させ、各状態変化が起こる時間を識別する(これは、CANデータを精査し、エンジニアが種々の状態変化プラットフォーム動作を開始したときを精密に示すメッセージを識別することを含んでもよい)。状態変化事象の間のデータのブロックが、次いで、それらの正しい状態に関して標識化され、例えば、機関が、時間tにおいてアイドルから運転に駆動され、次いで、走行制御が、後の時間tにおいて使用中にされ、さらに後の時間tにおいて解除される場合、時間間隔[t,t]にわたって入手されたCANデータは、プラットフォーム状態「運転」として標識化され、時間間隔[t,t]にわたて入手されたCANデータは、プラットフォーム状態「走行制御使用中」として標識化される。
【0054】
動作102において、CANデータ100は、時間間隔またはウィンドウにセグメント化される。これらは、随意に、部分的に、時間において重複してもよい。動作104において、ウィンドウは、k平均クラスタリング等のクラスタリング技法を使用して、N個のクラスタにクラスタリングされる。各クラスタは、状態マシンの状態に対応する。クラスタリングアルゴリズムの選定に応じて、クラスの数(N)は、固定されてもよい、またはクラスタリング動作104の適したパラメータであってもよい。クラスタの数が、固定される場合、クラスタリングは、Nに関する異なる値を用いて数回再実行され、最も判別可能なクラスタをもたらすNの値を選択することによって、クラスタの数を最適化することができる(判別性メトリックは、随意に、妥当な数の状態を伴う状態マシンに偏るように、Nのより高い値に関するペナルティを組み込む)。動作106において、クラスタは、CANデータ100の状態注釈に基づいて、状態標識を用いて標識化される。例えば、各クラスタは、そのクラスタに該当する殆どのCANデータが標識化される、状態標識を用いて標識化されてもよい。変形実施形態では、状態標識化動作106は、省略され、その場合では、状態は、容易に人間が識別可能な状態と明示的に関連付けられない。
【0055】
動作108において、許可される状態遷移が、識別される。これは、セグメント化動作102において定義された各ウィンドウを、それにこれが最良適合する状態(および動作106が、実施される場合、状態標識)を用いて標識化することによって行われることができる。これは、状態のシーケンス、したがって、訓練CANデータセット100において起こる状態遷移のセットを生成する。これらは、可能にされる状態遷移である。対照的に、訓練データ100において起こらないいかなる状態遷移も、可能にされる状態ではない。可能にされる状態遷移の識別、すなわち、動作108はまた、随意である。可能にされる状態遷移(図4の実施例における弧に対応する)が、判定されない場合、いかなる状態遷移も、許容可能であると見なされる。
【0056】
さらに、動作110において、状態特有調整52が、状態毎に判定される。状態毎に、その状態に割り当てられる(セグメント化102からの)ウィンドウに属するCANバス訓練データ100の部分は、その特定の状態に関する時間異常検出40の調整パラメータを最適化する際の使用のための訓練CANバスデータの(サブ)セットを形成する。
【0057】
図5のアプローチは、単に、状態マシン42の構築の一例証的実施例である。他の実施形態では、状態マシン42は、手動で作成されてもよい。例えば、状態は、例えば、(限定ではないが)図4において標識化される状態を含む、車両10の既知の動作モダリティに基づいて定義されることができる。状態遷移は、具体的CANバスメッセージによって識別されることができる。例えば、設計エンジニアは、走行制御が最初に使用中であるとき、あるメッセージまたはメッセージのセットがCANバス上で伝えられること、および同様に、走行制御が解除されるとき、方向転換が実施されるとき等を把握し得る。本アプローチでは、状態注釈付きCANバスデータ100は、状態特有調整を実施するためにのみ使用され、例えば、ウィンドウセグメント化102が、好適に実施され、各ウィンドウは、データ100の状態標識注釈に基づいて状態を割り当てられ、種々の状態に割り当てられたデータのサブセットは、次いで、動作110において使用される。
【0058】
ここで図6を参照すると、時間異常検出40における状態認識の実装のための好適なアプローチが、説明される。状態マシン42は、自動的または半自動的に構築されており、状態特有調整パラメータ52は、状態毎に導出されていると仮定される。車両動作の間、CANバストラフィック26は、時間異常検出40に入力され、図2を参照して、または図3を参照して説明されるように処理される。並行して、CANバストラフィック26(および随意に、利用可能なセンサ33からのセンサデータ)は、例えば、メッセージ(またはメッセージのセット)および/または状態遷移を示すセンサデータを検出することによって(図7参照)、または図5の動作104において発生されたクラスタにCANデータのウィンドウをフィットすることによって(図8参照、これは、状態マシン42がクラスタリングアルゴリズムによって作成されたと仮定する)、状態遷移を検出する状態遷移検出ブロック120に入力される。状態遷移検出ブロック120が、状態遷移を検出すると、状態マシン42の現在の状態54は、動作122において、それに応じて更新される。加えて、周期的メッセージヘッダ毎に、時間異常検出40の状態特有調整52は、動作124において、新しい状態に関する値に更新される。
【0059】
いくつかの実施形態では、状態遷移はまた、既存のデータが、以前の状態に関するものであり、新しい状態を表さない場合があるため、履歴蓄積50のリセットをトリガする。しかしながら、これは、新しい状態に関する履歴蓄積が生じる際、ある程度の不動作時間をもたらすであろう。
【0060】
したがって、図6に示される別のアプローチでは、状態認識は、可能である場合、本不動作時間を回避するために活用される。このために、動作126において、以前の状態に関する履歴蓄積が、記憶され、新しい状態に関する履歴蓄積は、これが存在する場合、読み出される。さらに例証するために、以下の実施例を検討する。運転者は、最初に、走行制御を伴わずに運転し、その間、時間履歴蓄積50が、「走行制御解除」状態に関して生じる。運転者は、次いで、走行制御を使用中にする(状態遷移)。応答して、動作126は、「走行制御解除」状態に関する履歴蓄積を記憶し、いかなる履歴蓄積も、「走行制御使用中」状態に関してまだ利用可能ではないと仮定して、新しい「走行制御使用中」状態に関する履歴蓄積50をリセットする。ここで、時間異常検出が開始され得る前に、新しい状態に関する十分な履歴蓄積が生じる際、ある程度の不動作時間が、存在するであろう。その後、運転者は、ある程度の時間にわたって走行して運転し、その間、「走行制御使用中」状態に関する履歴蓄積50は、生じ続ける。運転者は、次いで、より混雑した交通状況に入り、走行制御を解除する(別の状態遷移)。応答して、動作126は、「走行制御使用中」状態に関する履歴蓄積を記憶し、「走行制御解除」状態に関する以前に記憶された履歴蓄積を読み出す。故に、時間異常検出が、「走行制御解除」状態に関して動作し得る前に、いかなる不動作時間も、存在しない。運転者が、次いで、より少ない交通状況に入り、走行制御を再使用中にする場合、動作126は、「走行制御解除」状態に関する履歴蓄積を記憶し、「走行制御使用中」状態に関する以前に記憶された履歴蓄積を読み出し、再び、時間異常検出が、不動作時間を伴わずに進行することを可能にする。以下同様である。
【0061】
図6では、検出された状態遷移は、例証的時間異常検出40の状態特有調整52を更新するために使用される。しかしながら、他のタイプの異常検出も、状態特有調整を用いて同様に更新され得ることを理解されたい。例えば、Harris et al.の米国特許第9,792,435号に説明されるもの等のメッセージ毎SVM分類子ベースの異常検出が、状態特有値を用いて更新されるハイパーパラメータγを有することができる。
【0062】
状態マシン42が、(例えば、図5の訓練プロセスの動作108において判定されるような、または車両10の既知の動作に基づいて設計エンジニアによって手動で作成されるような)許可される状態遷移に関する情報を含む場合、本情報はまた、異常検出に関する独立した機構を提供することができる。例えば、決定130において、状態遷移が、許可される遷移であるかどうかが判定され、該当しない場合、132において、異常状態遷移が、フラグ付けされる。同様に、決定134において、状態遷移の頻度または他のパターンが、(例えば、図5の動作108において観察される状態遷移のパターンに基づいて)不規則であるかどうかが判定され、状態遷移の異常なパターンが、同様にフラグ付けされてもよい。
【0063】
ここで図7および8を参照すると、図6の状態遷移検出ブロック120の2つの例証的実施形態が、説明される。図7は、状態マシン42が、図5を参照して説明されるようなCANバスデータウィンドウクラスタリングによって発生される場合に関して好適に採用される実施形態を示す。スライディングウィンドウ140が、決定ブロック142において、ウィンドウが充填されていると判定されるまで、CANバストラフィック26からメッセージを生じさせる。図5の状態マシン学習の動作102、104によって発生されるクラスタとの比較を促進するために、決定ブロック142は、好ましくは、これがセグメント化動作102によって生成されるウィンドウと同一の数のメッセージを有するとき、ウィンドウが充填されていることを示す。ウィンドウが、充填されているとき、これは、メッセージウィンドウに最近接するクラスタ/状態を識別するために、図5の状態マシン学習の動作102、104によって発生されるクラスタ/状態と比較される。決定146において、本最近接するクラスタ/状態が、現在の状態54と同一であるかどうかが判定される。最近接するクラスタ/状態が、現在の状態54と同一である場合、いかなる状態遷移も、起こっていない。他方では、最近接するクラスタ/状態が、現在の状態54と異なる場合、状態遷移、すなわち、現在の状態54から、メッセージウィンドウに最近接するクラスタ/状態である新しい状態への状態遷移が、検出されている(148)。随意に、決定146は、ロバスト性を改良するために、いくつかの統計値を採用してもよく、例えば、検出148は、スライディングウィンドウ140が、ある数M個のメッセージを生じさせる際、同一の最近接するクラスタ/状態が、検出され続ける場合にのみ行われてもよい。
【0064】
図8を参照すると、状態マシン42が、状態遷移を示す具体的メッセージまたはメッセージのセットの識別を含む実施形態において好適に使用される、状態遷移検出ブロック120の実施形態が、説明される。例えば、状態マシン42が、手動で作成される場合、設計者は、その状態遷移の一部として生じるメッセージまたはメッセージのセットを用いて各状態遷移を標識化してもよい。本実施形態では、バッファ150が、CANバストラフィック26から受信された直近のN個のメッセージを記憶する。バッファサイズNは、それにわたって状態遷移を示すメッセージの任意のセットが生じることが予期される、最大の予期される時間間隔を包含するために十分に大きくあるべきである。ブロック152は、現在の状態からの各可能性として考えられる状態遷移を繰り返し、決定ブロック152は、CANバストラフィック26を監視し、各そのような状態遷移を示すメッセージまたはメッセージのセットが生じたかどうかを検出し、該当する場合、次いで、状態遷移が、検出される(156)。処理152、154は、新しいメッセージが、バッファ150に入る度に、全ての可能性として考えられる状態遷移に関して繰り返される。(代替アプローチでは、バッファ処理152、154は、バッファサイズNが、状態遷移を示すメッセージのセットを見逃す可能性を防止するために十分に大きい限り、より低い頻度で繰り返されてもよい)。
【0065】
好ましい実施形態が、例証および説明された。明白なこととして、修正および改変が、先述の詳細な説明を熟読し、理解することに応じて、他者に想起されるであろう。本発明が、それらが、添付される請求項またはその均等物の範囲内に該当する限り、全てのそのような修正および改変を含むものとして解釈されることを意図している。
【0066】
上記に開示される、および他の特徴ならびに機能の変形またはそれらの代替が、多くの他の異なるシステムもしくはアプリケーションに組み合わせられ得ることを理解されたい。種々の現在予見されていない、または予想されていない代替、修正、変形例、もしくはそれにおける改良が、当業者によって続けて行われ得、これもまた、以下の請求項によって包含されることを意図している。
【0067】
特許庁および本願ならびに任意の結果として生じる特許の任意の読者が、本明細書に添付される請求項を解釈することを支援するために、出願人らは、単語「~のための手段」または「~のためのステップ」が、特定の請求項において明示的に使用されない限り、添付される請求項もしくは請求項要素のうちのいずれかが、35 U.S.C. § 112(f)を行使することを意図していない。
【0068】
(項目1)
ネットワークと接続可能な電子デバイスであって、前記ネットワーク上のトラフィックは、前記ネットワーク上の全ての電子デバイスによって受信され、前記ネットワークは、メッセージ認証を提供せず、前記伝送されるメッセージは、ペイロードと、前記ペイロードを識別するメッセージヘッダとを備え、前記電子デバイスは、
異なるメッセージヘッダに関するメッセージの履歴蓄積に関する予期される周期および周期変動性メトリックを算出し、前記周期変動性メトリックに基づいて、周期的メッセージヘッダを識別することと、
前記周期的メッセージヘッダに関する前記予期される周期からの周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットの周期の逸脱として時間異常を検出することと、
前記検出された時間異常を示すアラートを発生させることと
を行うようにプログラムされる、電子デバイス。
(項目2)
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う直近の2つのメッセージから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記直近の2つのメッセージの時間分離の逸脱として検出される、項目1に記載の電子デバイス。
(項目3)
前記アラートは、前記周期的メッセージヘッダを伴う前記直近のメッセージの表現を含む、項目2に記載の電子デバイス。
(項目4)
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う3つ以上の直近のメッセージのセットから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記3つ以上の直近のメッセージのセットに関する測定された周期の逸脱として検出される、項目1に記載の電子デバイス。
(項目5)
前記電子デバイスはさらに、
前記ネットワークを介して受信されたメッセージに基づいて、前記電子デバイスによって実施されるタスクを制御することと、
前記時間異常の検出に応じて、前記タスクを制御する際の使用のための前記2つ以上のメッセージの直近のセットの1つ以上のメッセージを除斥することと
を行うようにプログラムされる、項目1-4のいずれか1項に記載の電子デバイス。
(項目6)
前記ネットワークは、プラットフォームのネットワークであり、前記電子デバイスはさらに、
前記ネットワーク上のメッセージおよび/または前記プラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、前記プラットフォームに関する状態マシンを維持することと、
前記状態マシンの新しい状態への遷移に応答して、
(i)前記新しい状態に関するパラメータ値に、前記周期的変動性メトリックに基づく周期的メッセージヘッダの識別のパラメータ、および/または、
(ii)前記新しい状態に関するパラメータ値に、時間異常として検出される前記逸脱を定義するパラメータ、
のうちの少なくとも1つのパラメータを調整することと
を行うようにプログラムされる、項目1-5のいずれか1項に記載の電子デバイス。
(項目7)
前記ネットワークは、プラットフォームのネットワークであり、前記電子デバイスはさらに、
前記ネットワーク上のメッセージおよび/または前記プラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、前記プラットフォームに関する状態マシンを維持することと、
前記状態マシンの現在の状態から新しい状態への遷移に応答して、
前記現在の状態に関する前記異なるメッセージヘッダに関するメッセージの前記履歴蓄積を記憶することと、
前記新しい状態に関する前記異なるメッセージヘッダに関するメッセージの履歴蓄積をメモリからロードすることと
を行うようにプログラムされる、項目1-6のいずれか1項に記載の電子デバイス。
(項目8)
前記ネットワークは、コントローラエリアネットワーク(CAN)バスを備え、前記メッセージヘッダは、ARB IDヘッダを備える、項目1-7のいずれか1項に記載の電子デバイス。
(項目9)
ネットワークと接続可能な電子デバイスであって、前記ネットワーク上のトラフィックは、前記ネットワーク上の全ての電子デバイスによって受信され、前記ネットワークは、メッセージ認証を提供せず、前記伝送されるメッセージは、ペイロードと、前記ペイロードを識別するメッセージヘッダとを備え、前記電子デバイスは、
電子プロセッサと、
時間異常検出方法を実施するために前記電子プロセッサによって可読かつ実行可能である時間異常検出命令を記憶する、非一過性記憶媒体と
を含み、
前記時間異常検出命令は、
異なるメッセージヘッダに関するメッセージの履歴蓄積に関する予期される周期および周期変動性メトリックを算出し、前記周期変動性メトリックに基づいて、周期的メッセージヘッダを識別するために前記電子プロセッサによって可読かつ実行可能な命令と、
前記周期的メッセージヘッダに関する前記予期される周期からの周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットの周期の逸脱として時間異常を検出するために前記電子プロセッサによって可読かつ実行可能な命令と、
前記検出された時間異常を示すアラートを発生させるために前記電子プロセッサによって可読かつ実行可能な命令と
を含む、電子デバイス。
(項目10)
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う直近の2つのメッセージから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記直近の2つのメッセージの時間分離の逸脱として検出される、項目9に記載の電子デバイス。
(項目11)
前記アラートは、前記周期的メッセージヘッダを伴う前記直近のメッセージの表現を含む、項目10に記載の電子デバイス。
(項目12)
前記周期的メッセージヘッダを伴う2つ以上のメッセージの直近のセットは、前記周期的メッセージヘッダを伴う3つ以上の直近のメッセージのセットから成り、前記時間異常は、前記周期的メッセージヘッダに関する前記予期される周期からの前記3つ以上の直近のメッセージのセットに関する測定された周期の逸脱として検出される、項目9に記載の電子デバイス。
(項目13)
前記非一過性記憶媒体はさらに、
前記ネットワークを介して受信されたメッセージに基づいて、前記電子デバイスを制御するために前記電子プロセッサによって可読かつ実行可能な制御命令と、
前記制御命令が前記2つ以上のメッセージの直近のセットの1つ以上のメッセージを処理しないように防止するために前記電子プロセッサによって可読かつ実行可能なメッセージ除斥命令と
を記憶する、項目9-12のいずれか1項に記載の電子デバイス。
(項目14)
前記ネットワークは、プラットフォームのネットワークであり、前記非一過性記憶媒体はさらに、前記ネットワーク上のメッセージおよび/または前記プラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、前記プラットフォームに関する状態マシンを維持するために前記電子プロセッサによって可読かつ実行可能な状態マシン命令を記憶し、
前記時間異常検出命令はさらに、前記状態マシンの新しい状態への遷移に応答して、前記時間異常検出方法の少なくとも1つのパラメータを前記新しい状態のパラメータ値に更新するために前記電子プロセッサによって可読かつ実行可能な命令を含む、項目9-12のいずれか1項に記載の電子デバイス。
(項目15)
前記ネットワークは、プラットフォームのネットワークであり、前記非一過性記憶媒体はさらに、前記ネットワーク上のメッセージおよび/または前記プラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、前記プラットフォームに関する状態マシンを維持するために前記電子プロセッサによって可読かつ実行可能な状態マシン命令を記憶し、
前記時間異常検出命令はさらに、前記状態マシンの現在の状態から新しい状態への遷移に応答して、
前記現在の状態に関する前記異なるメッセージヘッダに関するメッセージの前記履歴蓄積を記憶することと、
前記新しい状態に関する前記異なるメッセージヘッダに関するメッセージの履歴蓄積をメモリからロードすることと
を行うために前記電子プロセッサによって可読かつ実行可能な命令を含む、項目9-14のいずれか1項に記載の電子デバイス。
(項目16)
前記ネットワークは、コントローラエリアネットワーク(CAN)バスを備え、前記メッセージヘッダは、ARB IDヘッダを備える、項目9-15のいずれか1項に記載の電子デバイス。
(項目17)
プラットフォームをサービス提供するネットワークと接続可能な電子デバイスであって、前記ネットワーク上のトラフィックは、前記ネットワーク上の全ての電子デバイスによって受信され、前記ネットワークは、メッセージ認証を提供せず、前記電子デバイスは、
前記ネットワーク上のメッセージおよび/または前記プラットフォームを監視する1つ以上のセンサから受信されたセンサデータに基づいて、前記プラットフォームに関する状態マシンを維持することと、
異常を検出することに応答して、アラートを発生させることを含む、前記状態マシンの現在の状態に関する少なくとも1つのパラメータ値を使用して、前記ネットワーク上のメッセージに対して異常検出を実施することと、
前記状態マシンの前記現在の状態から新しい状態への遷移に応答して、前記新しい状態に関する前記少なくとも1つのパラメータ値を更新することと
を行うようにプログラムされる、電子デバイス。
(項目18)
前記電子デバイスはさらに、
前記状態マシンの現在の状態から新しい状態への遷移を検出することと、
前記検出された遷移が、前記状態マシンの許可された遷移ではないことに応答して、アラートを発生させることと
を行うようにプログラムされる、項目17に記載の電子デバイス。
(項目19)
前記電子デバイスはさらに、
前記状態マシンの状態遷移を検出することと、
前記検出された状態遷移のパターンが、不規則遷移パターン基準を満たすことに応答して、アラートを発生させることと
を行うようにプログラムされる、項目17-18のいずれか1項に記載の電子デバイス。
(項目20)
前記ネットワーク上で伝送される前記メッセージは、ペイロードと、前記ペイロードを識別するメッセージヘッダとを備え、
前記異常検出を実施することは、前記ネットワーク上のメッセージが、周期性基準を満たす予期される周期性を有する周期的メッセージヘッダを検出することと、前記予期される周期性からの前記周期的メッセージヘッダを伴う最近のメッセージの周期性の逸脱として異常を検出することとを含み、前記ネットワークは、コントローラエリアネットワーク(CAN)バスを備える、項目17-19のいずれか1項に記載の電子デバイス。
図1
図2
図3
図4
図5
図6
図7
図8
【国際調査報告】