(57)【要約】【課題】複数の電子制御ユニット（ＥＣＵ）が通信するネットワークに、攻撃者によって、所定値に基づいて不正と判定できない攻撃フレームが送信された場合に適切に対処するために、ネットワークから受信したフレームが不正か否かを判定する情報処理装置を提供する。【解決手段】複数のＥＣＵが通信するネットワーク（バス３０）に接続される情報処理装置としてのブレーキＥＣＵ１００は、ネットワークから、データを含むフレームを受信する受信部１１０と、第１センサとしての車輪速センサ１０１によるセンシングにより得られるセンサ情報を取得する取得部１２０と、データが不正か否かをセンサ情報に基づいて判定する判定部１３０とを備える。【選択図】図５
2019008618.tif 000002
【特許請求の範囲】
【請求項１】
複数の電子制御ユニットが通信するネットワークに接続される情報処理装置であって、
前記ネットワークから、データを含むフレームを受信する受信部と、
第１センサによるセンシングにより得られるセンサ情報を取得する取得部と、
前記データが不正か否かを前記センサ情報に基づいて判定する判定部と、
を備える情報処理装置。
【請求項２】
前記センサ情報は、前記第１センサのセンシングにより得られる第１種物理量を示し、
前記複数の電子制御ユニットのうち第１電子制御ユニットは、正常時において、第１種物理量と正又は負の相関がある第２種物理量を示すデータを含む第１種フレームを逐次送信し、
前記判定部は、前記第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定する、
請求項１記載の情報処理装置。
【請求項３】
前記判定部は、前記第１種フレームに含まれるデータが示す値が、前記センサ情報に基づいて特定された下限値及び上限値で定まる範囲の外の値である場合に不正と判定する、
請求項２記載の情報処理装置。 
【請求項４】
前記第１種物理量及び前記第２種物理量は、車速である、
請求項２記載の情報処理装置。
【請求項５】
前記複数の電子制御ユニットのうち第１電子制御ユニットは、正常時において、前記第１センサによるセンシングの対象範囲の全部又は一部をセンシングする、前記第１センサとは異なる第２センサによるセンシングの結果に基づいて生成したデータを含む第１種フレームを逐次送信し、
前記判定部は、前記第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定する、
請求項１記載の情報処理装置。
【請求項６】
前記判定部は、前記第１種フレームに含まれるデータが不正か否かを、前記センサ情報と、前記第１センサ及び前記第２センサのそれぞれのセンシングの対象範囲に基づいて定めた情報とに基づいて判定する、
請求項５記載の情報処理装置。
【請求項７】
前記複数の電子制御ユニットのうち第１電子制御ユニットは、正常時において、前記第１センサのセンシングの結果に基づいて生成したデータを含む第１種フレームを逐次送信し、
前記判定部は、前記第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定する、
請求項１記載の情報処理装置。
【請求項８】
前記情報処理装置と前記複数の電子制御ユニットと前記第１センサとは車両に搭載され、
前記ネットワークは車載ネットワークであり、
前記第１種フレームは、前記車両の状態を示すデータを含む、
請求項２〜７のいずれか一項に記載の情報処理装置。
【請求項９】
前記第１種フレームは、前記車両に対する所定制御の実行可否の条件判断に用いられる前記車両の状態を示すデータを含み、
前記判定部は、前記所定制御を指示する第２種フレームが前記受信部により受信された際に、最新の第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定する、
請求項８記載の情報処理装置。
【請求項１０】
前記情報処理装置は更に、前記判定部により前記第１種フレームに含まれるデータが不正と判定された場合に所定処理を実行し、前記判定部により前記第１種フレームに含まれるデータが不正と判定されなかった場合に当該所定処理を実行しない処理部を備える、
請求項２〜９のいずれか一項に記載の情報処理装置。
【請求項１１】
前記所定処理は、前記第１種フレームの伝送を阻止する処理である、
請求項１０記載の情報処理装置。
【請求項１２】
前記複数の電子制御ユニットは、ＣＡＮ（Controller Area Network）プロトコルに従ってバスを介して通信し、
前記判定部は、前記受信部により第１種フレームの最後尾のビットが受信される前に、当該第１種フレームの内容が不正か否かを判定し、
前記情報処理装置は更に、前記判定部により第１種フレームの内容が不正と判定された場合に、前記受信部により当該第１種フレームの最後尾のビットが受信される前にエラーフレームを前記バスへ送信する処理部を備える、
請求項２〜８のいずれか一項に記載の情報処理装置。
【請求項１３】
前記取得部は、取得済みの最新の前記センサ情報の有効期限が満了している場合に、新たに有効期限が満了していないセンサ情報を取得し、
前記判定部は、前記第１種フレームに含まれるデータが不正か否かを、前記有効期限が満了していないセンサ情報に基づいて判定する、
請求項２〜１２のいずれか一項に記載の情報処理装置。
【請求項１４】
前記判定部は、前記第１種フレームに含まれる、予め定められた所定位置のデータが不正か否かを、前記センサ情報に基づいて判定する、
請求項２〜１３のいずれか一項に記載の情報処理装置。
【請求項１５】
前記複数の電子制御ユニットのうち前記第１電子制御ユニットとは異なる第２電子制御ユニットは、前記第１センサのセンシングの結果に基づいて生成したデータを含む所定種のフレームを逐次送信し、
前記取得部は、前記所定種のフレームに含まれるデータから前記センサ情報を取得する、
請求項２〜１４のいずれか一項に記載の情報処理装置。
【請求項１６】
前記第１センサは、前記情報処理装置との通信のみに用いられる配線である専用線で前記情報処理装置と接続され、
前記取得部は、前記専用線を介して前記第１センサから送信される前記センサ情報を取得する、
請求項１〜１４のいずれか一項に記載の情報処理装置。 
【請求項１７】
前記取得部は、前記複数の電子制御ユニットに含まれる、前記第１センサとの通信のみに用いられる配線である専用線で前記第１センサと接続された電子制御ユニットから、前記ネットワークを介して、前記センサ情報を取得する、
請求項１〜１４のいずれか一項に記載の情報処理装置。
【請求項１８】
複数の電子制御ユニットがネットワークで通信するネットワークに接続される情報処理装置において用いられる情報処理方法であって、
前記ネットワークから、データを含むフレームを受信し、
第１センサによるセンシングによって得られるセンサ情報を取得し、
前記データが不正か否かを前記センサ情報に基づいて判定する
情報処理方法。
【請求項１９】
複数の電子制御ユニットが通信するネットワークに接続され、マイクロプロセッサを備える情報処理装置に、所定情報処理を実行させるためのプログラムであって、
前記所定情報処理は、
前記ネットワークから、データを含むフレームを受信する受信処理と、
第１センサによるセンシングによって得られるセンサ情報を取得する取得処理と、
前記データが不正か否かを前記センサ情報に基づいて判定する判定処理と、
を含む
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の電子制御ユニットが通信を行うネットワークにおいて送信されるフレームの不正に対処するためのセキュリティ技術に関する。
【背景技術】
【０００２】
近年、自動車には多数の電子制御ユニット（ＥＣＵ：Electronic Control Unit）が配置され、自動車の制御のために複数のＥＣＵは、車載ネットワークと称される通信ネットワークを構成する。ＥＣＵは、例えばＩＳＯ１１８９８で規定されているＣＡＮ（Controller Area Network）規格に従って、伝送路であるバス（ネットワークバス）を介して通信を行う。
【０００３】
送信ノードとなるＥＣＵは、ＩＤを付けたデータフレームを送信し、受信ノードとなる各ＥＣＵはＥＣＵ毎に予め定められたＩＤのデータフレームを受信する。多数のＥＣＵそれぞれは、様々なデータフレームの授受を行う。例えば、各ＥＣＵがデータフレームを授受して連携することで、先進運転者支援システム（ＡＤＡＳ：Advanced Driver Assistance System）の各種機能が実現される。ＡＤＡＳでは、自動車に搭載されたセンサによるセンシング（例えば測定、検知等）の結果に基づく情報を利用して、自動車の状態、自動車の周辺環境等を認知して、自動車を制御することで、例えば駐車支援機能、車線維持支援機能、衝突回避支援機能等を実現する。
【０００４】
ところで、車載ネットワークのバスに不正なノードであるＥＣＵを接続すること、或いは、携帯情報端末、車外の通信装置等と通信する機能を有するＥＣＵ等を、攻撃して支配し不正なノードに変化させること等により、攻撃者が、攻撃フレームをバスに送信して、自動車を不正にコントロールする脅威が存在する。不正な攻撃者によって送信された攻撃フレームは、車載ネットワークの正常時において本来は送信されない異常なフレームであり、例えば自動車の状態を偽装する情報等を含み得る。例えば、車両の走行中において車速がゼロであるように偽装する攻撃フレーム等によれば、障害物との衝突等の事故が生じ得る。
【０００５】
このような攻撃フレームつまり異常なフレームを検知して対処するための技術として、車載ネットワークで受信したフレームに係るデータとしての車輪速等の数値情報が基準として予め定められた所定値より大きい場合には、異常であると判定する技術が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−１１４８０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の技術は、予め定められた所定値に基づいて判定できるデータを含むフレームに対してしか有効ではない。
【０００８】
そこで、本発明は、複数の電子制御ユニットが通信するネットワークに、攻撃者によって送信された攻撃フレームに対処することが可能な情報処理装置、情報処理方法、及び、情報処理装置で用いられるプログラムを提供する。
【課題を解決するための手段】
【０００９】
上記課題を解決するために本発明の一態様に係る情報処理装置は、複数の電子制御ユニットが通信するネットワークに接続される情報処理装置であって、前記ネットワークから、データを含むフレームを受信する受信部と、第１センサによるセンシングにより得られるセンサ情報を取得する取得部と、前記データが不正か否かを前記センサ情報に基づいて判定する判定部とを備える情報処理装置である。
【００１０】
また、上記課題を解決するために本発明の一態様に係る情報処理方法は、複数の電子制御ユニットがネットワークで通信するネットワークに接続される情報処理装置において用いられる情報処理方法であって、前記ネットワークから、データを含むフレームを受信し、前記情報処理装置と接続された第１センサによるセンシングによって得られるセンサ情報を取得し、前記データが不正か否かを前記センサ情報に基づいて判定する情報処理方法である。
【００１１】
また、上記課題を解決するために本発明の一態様に係るプログラムは、複数の電子制御ユニットが通信するネットワークに接続され、マイクロプロセッサを備える情報処理装置に、所定情報処理を実行させるためのプログラムであって、前記所定情報処理は、前記ネットワークから、データを含むフレームを受信する受信処理と、第１センサによるセンシングによって得られるセンサ情報を取得する取得処理と、前記データが不正か否かを前記センサ情報に基づいて判定する判定処理と、を含むプログラムである。
【発明の効果】
【００１２】
本発明によれば、攻撃者によって送信された攻撃フレームに対処することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】実施の形態１に係る車載ネットワークシステムの全体構成を示す図である。
【図２】ＣＡＮプロトコルで規定されるデータフレームのフォーマットを示す図である。
【図３】ＣＡＮプロトコルで規定されるエラーフレームのフォーマットを示す図である。
【図４】実施の形態１における緊急ブレーキ機能に関連する各ＥＣＵが授受するフレームの一例を示す図である。
【図５】実施の形態１に係るブレーキＥＣＵの構成図である。
【図６】実施の形態１に係るブレーキＥＣＵにおいて用いられるフレーム不正判定用情報の一例を示す図である。
【図７】実施の形態１に係るブレーキＥＣＵにおけるフレーム不正判定処理の一例を示すフローチャートである。
【図８】実施の形態１における緊急ブレーキ機能のために連携する複数のＥＣＵの処理シーケンスの一例を示す図である。
【図９】実施の形態１の変形例におけるフレーム不正判定処理の一例を示すフローチャートである。
【図１０】実施の形態１の変形例における緊急ブレーキ機能のために連携する複数のＥＣＵの処理シーケンスの一例を示す図である。
【図１１】実施の形態２に係る車載ネットワークシステムの全体構成を示す図である。
【図１２】実施の形態２における緊急ブレーキ機能に関連する各ＥＣＵが授受するフレームの一例を示す図である。
【図１３】実施の形態２に係るカメラＥＣＵの構成図である。
【図１４】実施の形態２に係るカメラＥＣＵにおいて用いられるフレーム不正判定用情報の一例を示す図である。
【図１５】実施の形態２に係るカメラＥＣＵにおけるフレーム不正判定処理の一例を示すフローチャートである。
【図１６】実施の形態２における緊急ブレーキ機能のために連携する複数のＥＣＵの処理シーケンスの一例を示す図である。
【発明を実施するための形態】
【００１４】
（本発明の基礎となった知見等）
自動車等の車両や工場の製造設備は、複数のセンサ、アクチュエータ等を搭載しており、各種の制御機能の実現のために、センサ、アクチュエータ等と接続された各種ＥＣＵが、ＣＡＮプロトコル等に従ってネットワーク上で通信を行う。例えば、車両のＡＤＡＳにおける衝突回避支援機能の１つの緊急ブレーキ機能では、エンジンＥＣＵ、センサＥＣＵ、ブレーキＥＣＵ等が連携する。このエンジンＥＣＵは、例えば、エンジンを制御し車速を示すフレームを送信する。センサＥＣＵは、センサによるセンシングの結果に基づいて車両の進路上の障害物の検知等を行って、車速に応じて障害物との衝突を回避すべく緊急ブレーキとしてのブレーキ指示を示すフレーム等を送信する。また、ブレーキＥＣＵは、ブレーキ指示を受けて、ブレーキつまり制動装置を制御する。
【００１５】
このＡＤＡＳの緊急ブレーキ機能によれば、例えば、走行中の車両の前方に障害物が接近して、距離、車速等との関係で車両の操舵制御等では障害物を回避不能な場合に、センサＥＣＵがブレーキ指示を示すフレームを送信し、ブレーキＥＣＵが制動制御を行って車両を停止させることにより、衝突が防止される。
【００１６】
しかし、攻撃者により、車両の状態を偽装する等のための不正なフレームである攻撃フレームが、車載ネットワークに送信されると、緊急ブレーキ機能が適切に作動せずに、車両等の事故が生じるおそれがある。例えば、走行中の車両の前方に障害物が接近した状態において、車速が０ｋｍ／ｈであるように偽装する攻撃フレームが送信されると、センサＥＣＵは車両が停止していると誤認し、ブレーキ指示を示すフレームを送信しなくなる。
【００１７】
そこで、本発明者らは、このような攻撃フレームに対処できるよう車載ネットワークのセキュリティを高めるべく、車載ネットワークに流れるフレーム（例えば車速を示すフレーム等）が不正か否かを、センサでのセンシングの結果に基づいて判定する情報処理方法に想到した。
【００１８】
本発明の一態様に係る情報処理装置では、その情報処理方法によりフレームが不正か否かを判定する。この判定によって、不正と判定されたフレームによる悪影響が生じないように対処することが可能となり得る。車載ネットワークに接続され、車両に搭載された情報処理装置では、車載センサでのセンシングの結果であるセンサ情報を取得してセンサ情報に基づいてフレームが不正か否かを判定する。上述の車速が０ｋｍ／ｈであるように偽装する攻撃フレームの内容である車速は、例えば情報処理装置が取得する車輪速センサのセンシングの結果等のセンサ情報が示す車輪速等と整合しないので、この情報処理装置によれば、不正と判定され得る。この判定結果に基づき、車両の事故等を防止するための対処が可能となり得る。なお、このような情報処理装置及び情報処理方法は、車両以外の工場の製造設備やロボット等にも適用可能である。
【００１９】
本発明の一態様に係る情報処理装置は、複数の電子制御ユニットが通信するネットワークに接続される情報処理装置であって、前記ネットワークから、データを含むフレームを受信する受信部と、第１センサによるセンシングにより得られるセンサ情報を取得する取得部と、前記データが不正か否かを前記センサ情報に基づいて判定する判定部とを備える情報処理装置である。これにより、所定値に基づいて不正か否かが判定できないようなフレームについても、不正か否かを判定できる。この判定により、攻撃者により送信された攻撃フレームに適切に対処すること（例えば不正なフレームを無効化すること等）が可能となり得る。
【００２０】
なお、第１センサは、情報処理装置が備えるセンサであっても外部のセンサであっても良く、また、単一のセンサであっても複数のセンサを連結して構成されるセンサシステムであっても良い。
【００２１】
判定部による判定は、例えば、その判定結果を、レジスタ、メモリ、ハードディスクその他の記憶媒体に記録するように行われ得る。その判定は、例えば、フレームの内容と、センサ情報とに係る整合性判定であり、フレームの内容と、センサ情報とが予め定められた関係を満たすか否かの判定である。例えば、フレームの内容の所定データが示す値Ｘと、第１センサのセンシングの結果としてのセンサ情報の示す値Ａとを入力として所定演算を施した結果が不正か否かを識別可能となるような所定演算を、予め定められた関係に鑑みて予め定めておけば、判定部はその所定演算を用いて判定することができる。
【００２２】
この値Ｘは所定データ自体の値であっても良いし、所定データの値から予め定められた演算等により導出される値でも良い。また、同様に値Ａは、センサ情報の値であっても良いし、センサ情報の値から予め定められた演算等により導出される値でも良い。また、値Ｘ及び値Ａは、数値に限られずフラグ等で表される論理値でも良く、上述の所定演算は算術演算に限られず論理演算であっても良い。一例としては、判定部は値Ａと値Ｘとが一致しない場合に不正でありその他の場合に不正でないと判定しても良い。また、別の例としては、判定部は、値Ａの上下に一定範囲のマージンＭ１、Ｍ２を設けて、値Ｘが、Ａ−Ｍ１以上Ａ＋Ｍ２以下でない場合に不正でありその他の場合に不正でないと判定しても良い。
【００２３】
また、例えば、前記センサ情報は、前記第１センサのセンシングにより得られる第１種物理量を示し、前記複数の電子制御ユニットのうち第１電子制御ユニットは、正常時において、第１種物理量と正又は負の相関がある第２種物理量を示すデータを含む第１種フレームを逐次送信し、前記判定部は、前記第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定することとしても良い。正常時は、仕様通りの動作をしている時であり、攻撃者に支配される、故障する等といった異常時とは異なる。これにより、第１種フレームに含まれるデータが不正か否かが、例えばセンサ情報が示す第１種物理量と一定の関係を有するか否か等により、適切に判定され得る。このため、攻撃者が、データを偽装した不正な第１種フレームを、ネットワークに送信した場合に、適切な対処が可能となる。
【００２４】
また、例えば、前記判定部は、前記第１種フレームに含まれるデータが示す値が、前記センサ情報に基づいて特定された下限値及び上限値で定まる範囲の外の値である場合に不正と判定することとしても良い。これにより、例えばセンサ情報が示す第１種物理量から一定の誤差に鑑みて定められた範囲から、フレームのデータ値が外れた場合に当該フレームは不正と判定できる。このため、第１電子制御ユニットが第１種フレームの生成の基礎とするセンサ等と、第１センサとのセンシングの条件、方法、精度等の差によって、正常な第１電子制御ユニットが送信した適正な第１種フレームを不正と誤判定してしまうことが、防止される。
【００２５】
また、例えば、前記第１種物理量及び前記第２種物理量は、車速であることとしても良い。これにより、判定部は、第１種フレームに含まれる車速のデータが不正か否かを、車速を示すセンサ情報に基づいて判定することができる。
【００２６】
また、例えば、前記複数の電子制御ユニットのうち第１電子制御ユニットは、正常時において、前記第１センサによるセンシングの対象範囲の全部又は一部をセンシングする、前記第１センサとは異なる第２センサによるセンシングの結果に基づいて生成したデータを含む第１種フレームを逐次送信し、前記判定部は、前記第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定することとしても良い。これにより、第１種フレームに含まれるデータが不正か否かが、例えばセンサ情報が示す、第１センサと第２センサとのセンシングの範囲の重複部分についての情報等によって、適切に判定される。
【００２７】
また、例えば、前記判定部は、前記第１種フレームに含まれるデータが不正か否かを、前記センサ情報と、前記第１センサ及び前記第２センサのそれぞれのセンシングの対象範囲に基づいて定めた情報とに基づいて判定することとしても良い。これにより、各センサによるセンシングの条件等の差異に対応して適切な判定が可能となる。なお、センシングの対象範囲に基づいて定めた情報は、例えば、データとセンサ情報との比較基準を揃えるために用いられ、例えば、センシング範囲の基準位置、大きさ、分解能等の情報である。この情報は、例えば判定部による判定のための所定演算中において、例えばデータ或いはセンサ情報に係る値の換算等に用いられる。
【００２８】
また、例えば、前記複数の電子制御ユニットのうち第１電子制御ユニットは、正常時において、前記第１センサのセンシングの結果に基づいて生成したデータを含む第１種フレームを逐次送信し、前記判定部は、前記第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定することとしても良い。これにより、第１電子制御ユニットが送信するフレームのデータの生成に用いられる第１センサから得たセンサ情報に基づいてそのデータが判定され、正常時にそのデータとセンサ情報との発生源となるセンサが同一であるので、適切な判定が可能となる。
【００２９】
また、例えば、前記情報処理装置と前記複数の電子制御ユニットと前記第１センサとは車両に搭載され、前記ネットワークは車載ネットワークであり、前記第１種フレームは、前記車両の状態を示すデータを含むこととしても良い。これにより、車両の状態を示すデータを偽装する攻撃フレームの検知が可能となる。
【００３０】
また、例えば、前記第１種フレームは、前記車両に対する所定制御の実行可否の条件判断に用いられる前記車両の状態を示すデータを含み、前記判定部は、前記所定制御を指示する第２種フレームが前記受信部により受信された際に、最新の第１種フレームに含まれるデータが不正か否かを前記センサ情報に基づいて判定することとしても良い。これにより、車両の状態に基づく所定制御の実行の際に判定が行われるので、常時よりも効率良く判定することが可能となる。
【００３１】
また、例えば、前記情報処理装置は更に、前記判定部により前記第１種フレームに含まれるデータが不正と判定された場合に所定処理を実行し、前記判定部により前記第１種フレームに含まれるデータが不正と判定されなかった場合に当該所定処理を実行しない処理部を備えることとしても良い。これにより、不正なフレームへの対処が可能となる。所定処理は、例えば不正なフレームの伝送の阻止、異常の報知等である。
【００３２】
また、例えば、前記所定処理は、前記第１種フレームの伝送を阻止する処理であることとしても良い。これにより、不正なフレームが伝送されることによる悪影響を防止できる。不正なフレームの伝送の阻止は、例えば、ネットワーク上で不正なフレームを改変する等によって不正なフレームを無効化すること、情報処理装置がネットワークにおいてフレームを転送する転送機能を有する場合に不正なフレームの転送を抑止すること等である。
【００３３】
また、例えば、前記複数の電子制御ユニットは、ＣＡＮ（Controller Area Network）プロトコルに従ってバスを介して通信し、前記判定部は、前記受信部により第１種フレームの最後尾のビットが受信される前に、当該第１種フレームの内容が不正か否かを判定し、前記情報処理装置は更に、前記判定部により第１種フレームの内容が不正と判定された場合に、前記受信部により当該第１種フレームの最後尾のビットが受信される前にエラーフレームを前記バスへ送信する処理部を備えることとしても良い。これにより、不正なフレームの伝送を、エラーフレームの送信により阻止でき、不正なフレームによる悪影響を防止できる。
【００３４】
また、例えば、前記取得部は、取得済みの最新の前記センサ情報の有効期限が満了している場合に、新たに有効期限が満了していないセンサ情報を取得し、前記判定部は、前記第１種フレームに含まれるデータが不正か否かを、前記有効期限が満了していないセンサ情報に基づいて判定することとしても良い。これにより、フレームの受信タイミングとセンサ情報の取得タイミングとの差が一定範囲を超えることにより生じる誤判定を防止できる。
【００３５】
また、例えば、前記判定部は、前記第１種フレームに含まれる、予め定められた所定位置のデータが不正か否かを、前記センサ情報に基づいて判定することとしても良い。これにより、例えばＣＡＮのデータフレームのデータフィールドのデータ等といった所定位置のデータが不正であるか否かの判定が、可能となる。
【００３６】
また、例えば、前記複数の電子制御ユニットのうち前記第１電子制御ユニットとは異なる第２電子制御ユニットは、前記第１センサのセンシングの結果に基づいて生成したデータを含む所定種のフレームを逐次送信し、前記取得部は、前記所定種のフレームに含まれるデータから前記センサ情報を取得することとしても良い。これにより、例えば、第１種フレームの内容と所定種フレームに基づくセンサ情報との整合性がない場合に、いずれが不正かを特定することなく、第１種フレームの内容が不正と推定的に判定することが可能となる。第１電子制御ユニットを支配するか第１電子制御ユニットになりすますことで不正な第１種フレームを送信する攻撃者にとって、同時に第２電子制御ユニットを支配する等で所定種フレームを送信することが容易とは限らないので、この構成は有用となり得る。
【００３７】
また、例えば、前記第１センサは、前記情報処理装置との通信のみに用いられる配線である専用線で前記情報処理装置と接続され、前記取得部は、前記専用線を介して前記第１センサから送信される前記センサ情報を取得することとしても良い。これにより、情報処理装置は専用線によりセンサ情報を取得するので、センサ情報に一定の信頼性があると想定でき、その信頼に依拠して第１種フレームの内容が不正か否かが適切に判定され得る。第１電子制御ユニットを支配するか第１電子制御ユニットになりすますことで電子制御ユニット間の通信に用いられるネットワークに不正な第１種フレームを送信する攻撃者にとって、同時に専用線で伝達されるセンサ情報を改変する等の攻撃を行うことが容易とは限らないので、この構成の情報処理装置は有用となり得る。
【００３８】
また、例えば、前記取得部は、前記複数の電子制御ユニットに含まれる、前記第１センサとの通信のみに用いられる配線である専用線で前記第１センサと接続された電子制御ユニットから、前記ネットワークを介して、前記センサ情報を取得することとしても良い。これにより、第１センサから電子制御ユニット経由で取得されるセンサ情報にも一定の信頼性があると想定することができる。
【００３９】
また、本発明の一態様に係る情報処理方法は、複数の電子制御ユニットがネットワークで通信するネットワークに接続される情報処理装置において用いられる情報処理方法であって、前記ネットワークから、データを含むフレームを受信し、第１センサによるセンシングによって得られるセンサ情報を取得し、前記データが不正か否かを前記センサ情報に基づいて判定する情報処理方法である。これにより、所定値に基づいて不正か否かが判定できないようなフレームについても、不正か否かを判定できる。この判定により、攻撃フレームへの適切な対処が可能となり得る。
【００４０】
また、本発明の一態様に係るプログラムは、複数の電子制御ユニットが通信するネットワークに接続され、マイクロプロセッサを備える情報処理装置に、所定情報処理を実行させるためのプログラムであって、前記所定情報処理は、前記ネットワークから、データを含むフレームを受信する受信処理と、第１センサによるセンシングによって得られるセンサ情報を取得する取得処理と、前記データが不正か否かを前記センサ情報に基づいて判定する判定処理とを含むプログラムである。このプログラムを、情報処理装置にインストールすることにより、その情報処理装置のマイクロプロセッサがプログラムを実行することで、所定情報処理が実行される。これにより、所定値に基づいて不正か否かが判定できないようなフレームについても、不正か否かを判定できるようになる。
【００４１】
なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なＣＤ−ＲＯＭ等の記録媒体で実現されても良く、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されても良い。
【００４２】
以下、実施の形態に係る情報処理方法を用いる情報処理装置を含む車載ネットワークシステムについて、図面を参照しながら説明する。ここで示す実施の形態は、いずれも本発明の一具体例を示すものである。従って、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ（工程）及びステップの順序等は、一例であって本発明を限定するものではない。以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。
【００４３】
（実施の形態１）
［１．１  車載ネットワークシステム１０の全体構成］
図１は、本実施の形態に係る車載ネットワークシステム１０の全体構成を示す図である。
【００４４】
車載ネットワークシステム１０は、ＣＡＮプロトコルに従って通信するネットワーク通信システムの一例であり、車両２０における車載ネットワークを含む。車両２０は、例えば自動車であり、車両２０にはアクチュエータ、制御装置、センサ等の各種機器が搭載されている。
【００４５】
車載ネットワークシステム１０は、バス（ネットワークバス）３０と、ＥＣＵ（ブレーキＥＣＵ）１００と、ＥＣＵ（エンジンＥＣＵ）２００と、ＥＣＵ（センサＥＣＵ）３００と、ＥＣＵ（ヘッドユニットＥＣＵ）４００と、診断用ポート５００と、車輪速センサ１０１と、ブレーキセンサ１０２と、制動装置１０３と、アクセルセンサ２０１と、エンジン２０２と、障害物センサ３０１と、インストルメントパネル４０１とを含んで構成される。図１では省略しているものの、車載ネットワークシステム１０にはＥＣＵ１００、２００、３００、４００以外にもいくつものＥＣＵが含まれ得るが、ここでは説明の便宜上、ＥＣＵ１００、２００、３００、４００に注目して説明を行う。
【００４６】
各ＥＣＵ（ＥＣＵ１００、２００、３００、４００等）は、ハードウェア面において、例えば、プロセッサ（つまりマイクロプロセッサ）、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置である。メモリは、ＲＯＭ、ＲＡＭ等であり、プロセッサにより実行されるプログラム（つまりコンピュータプログラム）を記憶することができる。各ＥＣＵは、例えばプロセッサがプログラムに従って動作することにより、車両２０の制御等のための各種機能を実現する。プログラムは、所定の機能を達成するために、プロセッサに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【００４７】
各ＥＣＵは、バス３０に接続されて車載ネットワークを構成する。また、各ＥＣＵは、アクチュエータ、制御装置、センサ等の機器と接続され得る。各ＥＣＵは、ＣＡＮプロトコルに従ってバス３０を介してフレームの授受を行う。例えば、センサに接続されたＥＣＵから、センサで取得された情報に基づくデータを含むデータフレームが周期的にバス３０に送信される。フレームの送信周期は、ＥＣＵ毎にシステムで必要されるデータ頻度によって異なるが、例えば数十〜数百ミリ秒等である。また、車両２０内のアクチュエータに接続されたＥＣＵでは、バス３０から受信したデータフレームに基づいて、アクチュエータの制御内容を決定して制御する。バス３０に接続された各ＥＣＵは、バス３０に送信された各種のデータフレームを受信可能であり、ＥＣＵ毎に予め定められた種類のデータフレームを選択的に受信して処理する。
【００４８】
ブレーキＥＣＵ１００は、車輪速センサ１０１、ブレーキセンサ１０２、及び、制動装置１０３のそれぞれに専用線で接続されている。この専用線は、複数のＥＣＵがＣＡＮプロトコルに従った通信を行うために用いるバス３０とは異なり、その複数のＥＣＵ間の通信には用いられない。ブレーキＥＣＵ１００と車輪速センサ１０１との間、又はブレーキＥＣＵ１００とブレーキセンサ１０２との間のように、決まった二者間の通信のみに用いられる配線である。例えば、1対１のジカ線など、バスより信頼性が高い接続が想定される。以下で述べる専用線についても同様である。
【００４９】
車輪速センサ１０１は、車輪速のセンシングを行うセンサ（例えばセンサの集合体）であり、例えば車両２０の各車輪の回転数を測定する個々のセンサからの測定結果に基づいて、センシング結果として車輪速を示すセンサ情報を出力する。車輪速センサ１０１によるセンシング結果としての車輪速は、例えば車両２０の各車輪の回転数（ｒｐｍ）の平均値である。ブレーキセンサ１０２は、ブレーキペダルの操作に係るセンシングを行う。制動装置１０３は、ブレーキＥＣＵ１００の制御下で、ブレーキアクチュエータを制御して車両２０の速度を抑制する。
【００５０】
ブレーキＥＣＵ１００は、車輪速センサ１０１及びブレーキセンサ１０２からの各センシング結果を受けて、各センシング結果に基づくデータフレームをバス３０へ送信する機能、及び、バス３０から受信したデータフレームに応じて或いはブレーキセンサ１０２からのセンシング結果に応じて制動装置１０３を制御する機能を有する。ブレーキＥＣＵ１００は、更に、フレーム不正判定処理を行う情報処理装置としての機能を有する。フレーム不正判定処理として、ブレーキＥＣＵ１００に実装された情報処理装置は、車輪速センサ１０１からのセンシング結果としての車輪速を示すセンサ情報に基づいて、バス３０を流れる特定種類の判定対象フレームについて不正か否かに係る判定を行って、不正の場合に予め定めた所定処理を行う。
【００５１】
エンジンＥＣＵ２００は、車輪速センサ１０１、アクセルセンサ２０１、及び、エンジン２０２のそれぞれに専用線で接続されている。アクセルセンサ２０１は、アクセルペダルの操作に係るセンシングを行う。エンジン２０２は、エンジンＥＣＵ２００の制御下で、スロットルバルブの開閉等を行うことでエンジンの回転数を制御する。
【００５２】
エンジンＥＣＵ２００は、車輪速センサ１０１及びアクセルセンサ２０１からの各センシング結果を受けて、各センシング結果に基づくデータフレームをバス３０へ送信する機能、及び、アクセルセンサ２０１からのセンシング結果に応じてエンジン２０２を制御する機能を有する。
【００５３】
センサＥＣＵ３００は、障害物センサ３０１に専用線で接続されている。障害物センサ３０１は、車両２０の進路をセンシングする１つ又は複数のセンサであり、センサの数はいくつでも良い。進路のセンシングには、例えば、赤外線レーザーセンサ等のライダー（ＬＩＤＡＲ：Light Detection and Ranging）、イメージセンサ、レーダー等が用いられる。例えば障害物センサ３０１は、車両２０の進路（例えば前方）をセンシングすることで、例えば障害物の有無、障害物の座標等を示すセンシング結果をセンサＥＣＵ３００に伝達する。
【００５４】
センサＥＣＵ３００は、障害物センサ３０１からのセンシング結果を受けて、そのセンシング結果に基づくデータフレームをバス３０へ送信する機能を有する。センサＥＣＵ３００は、更に、ＡＤＡＳにおける緊急ブレーキ機能に関連して、バス３０から受信したデータフレーム及び障害物センサ３０１からのセンシング結果に基づいて、ブレーキＥＣＵ１００への指示に係るデータフレームを送信する機能を有する。
【００５５】
ヘッドユニットＥＣＵ４００は、インストルメントパネル４０１に専用線で接続されている。インストルメントパネル４０１は、車両２０の運転者に報知するための各種情報を表示する。ヘッドユニットＥＣＵ４００は、バス３０から受信したデータフレームに応じてインストルメントパネル４０１に情報を表示させる機能等を有する。例えば、ヘッドユニットＥＣＵ４００は、異常を示す予め定められた種類のデータフレームである異常通知フレームを受信するとインストルメントパネル４０１に異常を表す情報を表示させ得る。
【００５６】
診断用ポート５００は、ＯＢＤ２（On-Board Diagnostics２）等のバス３０に接続された端子であり、診断用ポート５００を介して、診断ツール（故障診断ツール）等の機器によるバス３０へのアクセスが可能となる。診断ツールは、例えば車載故障診断装置（不図示）からログとして記録された診断コード等を受信し得る。攻撃者は、例えば診断用ポート５００等を介して、不正なデータフレームをバス３０に送信する可能性がある。また、攻撃者は、携帯情報端末、車外の通信装置等と通信する機能を有するＥＣＵ（不図示）を攻撃して支配し、不正なデータフレームをバス３０に送信する可能性もある。
【００５７】
車載ネットワークシステム１０では、ＣＡＮプロトコルに従って、各ＥＣＵがデータフレーム等といったフレームの授受を行う。ＣＡＮプロトコルにおけるフレームには、データフレーム、リモートフレーム、オーバーロードフレーム及びエラーフレームがある。ここでは、主にデータフレーム及びエラーフレームに着目して説明を行う。
【００５８】
［１．２  データフレームフォーマット］
以下、ＣＡＮプロトコルに従ったネットワークで用いられるフレームの１つであるデータフレームについて説明する。
【００５９】
図２は、ＣＡＮプロトコルで規定されるデータフレームのフォーマットを示す図である。同図には、ＣＡＮプロトコルで規定される標準ＩＤフォーマットにおけるデータフレームを示している。データフレームは、ＳＯＦ（Start Of Frame）、ＩＤフィールド、ＲＴＲ（Remote Transmission Request）、ＩＤＥ（Identifier Extension）、予約ビット「ｒ」、ＤＬＣ（Data Length Code）、データフィールド、ＣＲＣ（Cyclic Redundancy Check）シーケンス、ＣＲＣデリミタ「ＤＥＬ」、ＡＣＫ（Acknowledgement）スロット、ＡＣＫデリミタ「ＤＥＬ」、及び、ＥＯＦ（End Of Frame）の各フィールドで構成される。
【００６０】
ＳＯＦは、１ｂｉｔのドミナントで構成される。バスがアイドルの状態はレセシブになっており、ＳＯＦによりドミナントへ変更することでフレームの送信開始を通知する。
【００６１】
ＩＤフィールドは、１１ｂｉｔで構成される、データの種類を示す値であるＩＤを格納するフィールドである。複数のノードが同時に送信を開始した場合、このＩＤフィールドで通信調停を行うために、ＩＤが小さい値を持つフレームが高い優先度となるよう設計されている。
【００６２】
ＲＴＲは、データフレームとリモートフレームとを識別するための値であり、データフレームにおいてはドミナント１ｂｉｔで構成される。
【００６３】
ＩＤＥと「ｒ」とは、両方ドミナント１ｂｉｔで構成される。
【００６４】
ＤＬＣは、４ｂｉｔで構成され、データフィールドの長さを示す値である。なお、ＩＤＥ、「ｒ」及びＤＬＣを合わせてコントロールフィールドと称する。
【００６５】
データフィールドは、最大６４ｂｉｔで構成される送信するデータの内容を示す値である。８ｂｉｔ毎に長さを調整できる。送られるデータの仕様については、ＣＡＮプロトコルで規定されておらず、車載ネットワークシステムにおいて定められる。従って、車種、製造者（製造メーカ）等に依存した仕様となる。
【００６６】
ＣＲＣシーケンスは、１５ｂｉｔで構成される。ＳＯＦ、ＩＤフィールド、コントロールフィールド及びデータフィールドの送信値より算出される。
【００６７】
ＣＲＣデリミタは、１ｂｉｔのレセシブで構成されるＣＲＣシーケンスの終了を表す区切り記号である。なお、ＣＲＣシーケンス及びＣＲＣデリミタを合わせてＣＲＣフィールドと称する。
【００６８】
ＡＣＫスロットは、１ｂｉｔで構成される。送信ノードはＡＣＫスロットをレセシブにして送信を行う。受信ノードはＣＲＣシーケンスまで正常に受信ができていればＡＣＫスロットをドミナントとして送信する。レセシブよりドミナントが優先されるため、送信後にＡＣＫスロットがドミナントであれば、送信ノードは、いずれかの受信ノードが受信に成功していることを確認できる。
【００６９】
ＡＣＫデリミタは、１ｂｉｔのレセシブで構成されるＡＣＫの終了を表す区切り記号である。
【００７０】
ＥＯＦは、７ｂｉｔのレセシブで構成されており、データフレームの終了を示す。
【００７１】
［１．３  エラーフレームフォーマット］
図３は、ＣＡＮプロトコルで規定されるエラーフレームのフォーマットを示す図である。エラーフレームは、エラーフラグ（プライマリ）と、エラーフラグ（セカンダリ）と、エラーデリミタとから構成される。
【００７２】
エラーフラグ（プライマリ）は、エラーの発生を他のノードに知らせるために使用される。エラーを検知したノードはエラーの発生を他のノードに知らせるために６ｂｉｔのドミナントを連続で送信する。この送信は、ＣＡＮプロトコルにおけるビットスタッフィングルール（連続して同じ値を６ｂｉｔ以上送信しない）に違反し、他のノードからのエラーフレーム（セカンダリ）の送信を引き起こす。
【００７３】
エラーフラグ（セカンダリ）は、エラーの発生を他のノードに知らせるために使用される連続した６ビットのドミナントで構成される。エラーフラグ（プライマリ）を受信してビットスタッフィングルール違反を検知した全てのノードがエラーフラグ（セカンダリ）を送信することになる。
【００７４】
エラーデリミタ「ＤＥＬ」は、８ｂｉｔの連続したレセシブであり、エラーフレームの終了を示す。
【００７５】
［１．４  緊急ブレーキ機能に関連して授受されるフレーム］
図４は、車両２０のＡＤＡＳにおける緊急ブレーキ機能に関連する各ＥＣＵが授受するフレームの一例を示す。
【００７６】
エンジンＥＣＵ２００は、車速フレームと、アクセル状態フレームとをバス３０に逐次送信する。車速フレームは、車両の状態としての車速を示すデータをデータフィールドに含み、ＩＤ「０ｘ１０１」を有するデータフレームである。エンジンＥＣＵ２００は、正常時において、車輪速センサ１０１から取得した車輪速（つまり車輪速センサ１０１のセンシングの結果としての車輪速）に基づいて生成した車速（ｋｍ／ｈ）を示すデータを車速フレームに含ませる。アクセル状態フレームは、アクセルペダルの操作に関するデータをデータフィールドに含み、ＩＤ「０ｘ１０３」を有するデータフレームである。
【００７７】
ブレーキＥＣＵ１００は、車輪速フレームと、ブレーキ状態フレームとをバス３０に送信する。車輪速フレームは、車輪速を示すデータをデータフィールドに含み、ＩＤ「０ｘ１０２」を有するデータフレームである。ブレーキＥＣＵ１００は、車輪速センサ１０１から取得した車輪速を示すデータを車輪速フレームに含ませる。ブレーキ状態フレームは、ブレーキペダルの操作に関するデータをデータフィールドに含み、ＩＤ「０ｘ１０４」を有するデータフレームである。
【００７８】
センサＥＣＵ３００は、車速フレーム、アクセル状態フレーム、車輪速フレーム及びブレーキ状態フレームを、バス３０から受信する。センサＥＣＵ３００は、受信した車速フレーム等と障害物センサ３０１によるセンシング結果に基づいて、車両２０の制動制御のための減速量を所定アルゴリズムにより算定し、その減速量を含むブレーキ指示フレームをバス３０に送信する。センサＥＣＵ３００は、例えば車両２０の前方に操舵制御等で回避できない障害物が検知されかつ車両２０の車速がゼロでない場合に緊急ブレーキを発動すべきと判断し、十分に減速されるように減速量を定める。
【００７９】
なお、センサＥＣＵ３００は、受信したフレームを効率的に処理するために一旦メモリの一領域等のデータバッファに蓄積し、ブレーキ指示フレームの送信の周期に従った必要なタイミングで、そのデータバッファからフレームを取り出して参照し得る。ブレーキ指示フレームは、減速量を指定するデータをデータフィールドに含み、ＩＤ「０ｘ１２０」を有するデータフレームである。ブレーキＥＣＵ１００は、ブレーキ指示フレームにおける減速量の指定に従って制動装置１０３の制御等を行い得る。
【００８０】
また、センサＥＣＵ３００は、前方障害物情報フレームをバス３０に送信する。前方障害物情報フレームは、障害物センサ３０１によるセンシング結果に基づき障害物の有無等を示すデータをデータフィールドに含み、ＩＤ「０ｘ１１０」を有するデータフレームである。
【００８１】
ヘッドユニットＥＣＵ４００は、前方障害物情報フレームにおける障害物の有無等のデータに基づいて、インストルメントパネル４０１に障害物に関する情報を表示させる。更に、ヘッドユニットＥＣＵ４００は、車速フレーム等を受信し、その内容に応じてインストルメントパネル４０１に情報を表示しても良い。
【００８２】
［１．５  ブレーキＥＣＵ１００の構成］
図５は、ブレーキＥＣＵ１００の構成図である。同図には、ブレーキＥＣＵ１００に専用線でそれぞれ直接接続されている車輪速センサ１０１、ブレーキセンサ１０２及び制動装置１０３を付記している。
【００８３】
制動装置１０３の制御等を行うブレーキＥＣＵ１００は、特定種類の判定対象フレームの判定等のフレーム不正判定処理を行う情報処理装置としての機能を有する。ここでは、特定種類の判定対象フレームが車速フレームであることとして説明する。
【００８４】
ブレーキＥＣＵ１００は、受信部１１０と、取得部１２０と、判定部１３０と、処理部１４０と、送信部１５０とを含んで構成される。
【００８５】
受信部１１０及び送信部１５０は、例えば、バス３０での通信の制御を担う集積回路（例えば通信回路、メモリ、プロセッサ等）で実現される。受信部１１０及び送信部１５０は、ＣＡＮプロトコルに従ってフレームの授受を行う。受信部１１０は、車載ネットワークつまりバス３０からフレームを受信し、送信部１５０は、バス３０にフレームを送信する。
【００８６】
受信部１１０は、具体的には、バス３０からフレームの値を１ｂｉｔずつ逐次受信し、受信したフレームの値をＣＡＮプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈する。受信部１１０は、ＩＤフィールドと判断した値が、ブレーキＥＣＵ１００が受信すべきＩＤか否かを判別し、受信すべきＩＤでなければそのフレームの解釈を中止する。受信すべきＩＤは、例えば、ブレーキ指示フレームのＩＤ「０ｘ１２０」、及び、特定種類の判定対象フレームである車速フレームのＩＤ「０ｘ１０１」である。なお、受信部１１０は、例えば、受信したフレームがＣＡＮプロトコルに則っていないフレームと判断した場合は、送信部１５０にエラーフレームを送信させるよう制御する。また、受信部１１０は、エラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームになっていると解釈した場合には、それ以降はそのフレームを破棄する。受信部１１０は、解釈したフレームの内容を判定部１３０に伝達し、また、ブレーキ指示フレームの内容を処理部１４０に伝達する。
【００８７】
取得部１２０は、専用線を介して車輪速センサ１０１から送信される、車輪速センサ１０１によるセンシングの結果を示すセンサ情報を取得する。取得部１２０は、例えば、ブレーキＥＣＵ１００において、車輪速センサ１０１と専用線での通信のための通信回路、及び、プログラムを実行するプロセッサ、メモリ等により実現される。取得部１２０は、センサ情報を繰り返し取得し得る。取得部１２０は、例えば取得したセンサ情報をバッファ（例えばメモリの一領域）に保持し、センサ情報に取得時から一定期間（例えば数百ミリ秒）先となる有効期限を付して管理しても良い。この有効期限の管理により、取得部１２０は、センサ情報を参照する必要がある場合において取得済みの最新のセンサ情報の有効期限が満了しているときには、新たにセンサ情報を車輪速センサ１０１から取得することとしても良い。また、取得部１２０は、センサ情報を車輪速センサ１０１から一定周期（例えば数十〜数百ミリ秒周期）で繰り返し取得しても良い。
【００８８】
判定部１３０は、プログラムを実行するプロセッサ等により実現される。判定部１３０は、予め定められた判定条件等に従って、受信部１１０により受信されたフレームの内容が不正か否かを、取得部１２０により取得されたセンサ情報に基づいて判定する。判定部１３０は、受信部１１０により受信された車速フレームの内容が不正か否かを、取得部１２０により取得されて有効期限が満了していない最新のセンサ情報に基づいて判定することとしても良い。
【００８９】
判定部１３０が用いる判定条件等を表すフレーム不正判定用情報の一例を図６に示す。フレーム不正判定用情報は、判定対象データと比較用センサ情報と不正判定条件とを対応付けた情報である。判定対象データは、判定部１３０の判定の対象である判定対象フレームとその内容のデータとを特定する情報である。判定対象データは、判定の対象となるデータのフレームにおける位置を示す情報を含み得る。比較用センサ情報は、判定対象データにより特定されるデータと比較されるべきセンサ情報が、いかなるセンサのセンシング結果としてのセンサ情報であるかを特定する情報である。不正判定条件は、判定対象データにより特定されるデータと、比較用センサ情報により特定されるセンサ情報との関係について、そのデータとセンサ情報とが整合せず不正と判定されるための条件を示す。
【００９０】
図６の例のフレーム不正判定用情報は、ＩＤ「０ｘ１０１」を有するフレーム（つまり車速フレーム）を判定対象フレームとすべきことを示している。また、このフレーム不正判定用情報は、その車速フレームの予め定められた所定位置の車速データ（つまりデータフィールドの車速データ）を、車輪速センサのセンシング結果である車輪速に係るセンサ情報と比較することで判定がなされるべきことを示している。また、このフレーム不正判定用情報は、その車速データが示す値が、その車輪速のセンサ情報に基づいて特定された下限値及び上限値で定まる範囲の外の値である場合に不正と判定されるべきことを示している。下限値は、例えばセンサ情報が示す車輪速（ｒｐｍ）を車速（ｋｍ／ｈ）に換算する変換を施した結果（第１種物理量又は第１種パラメータ）の車速変換値Ｖ−マージン値（例えば５ｋｍ／ｈ）であり、上限値は、車速変換値Ｖ＋マージン値である。
【００９１】
具体例としては、判定部１３０は、受信部１１０により受信された車速フレームの、予め定められた所定位置（つまりデータフィールドの位置）に含まれる車速（第２種物理量又は第２種パラメータ）を示すデータ（以下、車速データ）が不正か否かを、車輪速センサ１０１から取得部１２０が取得したセンサ情報に基づいて判定する。そして、判定部１３０は、例えば、受信部１１０により受信された車速フレームに含まれる車速データが示す値が、取得部１２０が取得したセンサ情報に基づいて特定された下限値及び上限値で定まる範囲の外の値である場合に不正と判定し、その他の場合に不正でない（つまり適正である）と判定する。下限値は、例えば車輪速の車速変換値Ｖ−５ｋｍ／ｈであり、上限値は、例えば車輪速の車速変換値Ｖ＋５ｋｍ／ｈである。判定部１３０は判定結果を処理部１４０に通知する。
【００９２】
処理部１４０は、受信部１１０からブレーキ指示フレームの内容が伝達されるとその内容が示す減速量に従って、制動装置１０３に対して制御信号を送信することで制動装置１０３を制御する。処理部１４０は、例えば、ブレーキ指示フレームの内容が示す減速量が、大きいほど強い効き（大きな制動力）となるように制動装置１０３を作動させる。処理部１４０は、例えば、減速量としてゼロの指定を含むブレーキ指示フレームが受信部１１０で受信された場合に、制動装置１０３の作動を抑止する。また、処理部１４０は、車両２０の運転者のブレーキペダルの操作に対応したブレーキセンサ１０２のセンシング結果に応じて制動装置１０３の制御を行う。処理部１４０は、ブレーキセンサ１０２のセンシング結果に応じた制動装置１０３の制御を、ブレーキ指示フレームに基づく制動装置１０３の制御より、優先させることとしても良い。
【００９３】
また、処理部１４０は、判定部１３０からの判定結果の通知に対応して、判定部１３０により車速フレームの内容が不正と判定された場合には異常状態に対応するために予め定められた所定処理を実行し、判定部１３０により車速フレームの内容が不正と判定されなかった場合には所定処理を実行しない。所定処理は、例えば、不正と判定された車速フレームの伝送を阻止する処理である。例えば、処理部１４０は、判定部１３０により車速フレームの内容が不正と判定された場合に、受信部１１０によりその車速フレームの最後尾のビットが受信される前に、送信部１５０を介して、エラーフレームをバス３０へ送信することとしても良い。このため、判定部１３０は、受信部１１０により車速フレームの最後尾のビットが受信される前に、その車速フレームの内容が不正か否かを判定して判定結果を処理部１４０に通知するようにしても良い。バス３０に車速フレームが流れている間にエラーフレームが送信されると、車速フレームが無効化され、バス３０に接続された各ＥＣＵは、車速フレームを破棄することとなる。
【００９４】
また、処理部１４０によりなされる所定処理は、不正と判定された車速フレームの伝送を阻止する処理の他、異常を車両の運転者等に報知する処理、記録媒体等に異常を記録する処理であっても良い。この異常を記録する処理は、例えば、車載故障診断装置（不図示）に異常に係る診断コード等をログとして記録する処理等である。また、異常を車両の運転者等に報知する処理は、例えば、インストルメントパネル４０１を制御するヘッドユニットＥＣＵ４００に受信されるように、異常を示す予め定められた種類のフレームである異常通知フレームを送信部１５０を介してバス３０に送信する処理等である。
【００９５】
［１．６  ブレーキＥＣＵ１００によるフレーム不正判定処理］
図７は、ブレーキＥＣＵ１００におけるフレーム不正判定処理の一例を示すフローチャートである。以下、同図に即してフレーム不正判定処理について説明する。ここでは、ブレーキＥＣＵ１００の判定部１３０が図６に示すフレーム不正判定用情報に基づいて判定を行うこととして説明する。
【００９６】
ブレーキＥＣＵ１００は、判定対象フレームである車速フレームを受信部１１０により受信すると（ステップＳ１１）、取得部１２０で取得済みの最新の比較用センサ情報（つまり車輪速センサ１０１から取得された車輪速に係るセンサ情報）の有効期限が満了前か否かを判断する（ステップＳ１２）。その有効期限が満了している場合には、取得部１２０は、比較用センサ情報を車輪速センサ１０１から取得する（ステップＳ１３）。ステップＳ１２で有効期限の満了前と判断された場合或いはステップＳ１３で新たに比較用センサ情報が取得された場合に、取得部１２０により有効期限が満了していない最新のセンサ情報がバッファに保持された状態となる。
【００９７】
ブレーキＥＣＵ１００は、判定部１３０により、判定対象フレームの判定対象データ（つまり車速データ）と、有効期限が満了していない最新のセンサ情報とが不整合か否か（つまり図６に示す不正判定条件が成立するか否か）により、判定対象フレームの内容が不正か否かを判定する（ステップＳ１４）。
【００９８】
ステップＳ１４で不整合と判定した場合つまり判定対象フレームの内容が不正であると判定した場合には、ブレーキＥＣＵ１００は処理部１４０により、送信部１５０を介してエラーフレームをバス３０に送信する（ステップＳ１５）。ステップＳ１５に続いて、処理部１４０は、送信部１５０を介して異常通知フレームをバス３０に送信し（ステップＳ１６）、異常をログに記録する（ステップＳ１７）。ステップＳ１７では、処理部１４０は、例えば異常に係る診断コード等を車載故障診断装置に記録しても良い。なお、ここでは、ステップＳ１５でのエラーフレームの送信に引き続き、ステップＳ１６の異常通知フレームの送信及びステップＳ１７の異常ログの記録を実行するとしたが、これは一例であり、ステップＳ１５のエラーフレームの送信のみ或いはその他の処理を組み合わせて不正なフレームに対処するようにしても良いことは、当業者であれば容易に理解できよう。
【００９９】
また、ステップＳ１４で不整合でない判定した場合つまり判定対象フレームの内容が適正であると判定した場合には、ブレーキＥＣＵ１００は、ステップＳ１５〜Ｓ１７での処理をスキップし、ステップＳ１１に戻って判定対象フレームの受信を待機する。
【０１００】
［１．７  緊急ブレーキ機能に係るＥＣＵの連携動作］
図８は、緊急ブレーキ機能のために連携する複数のＥＣＵの処理シーケンス例を示す。この例は、車両２０の走行中において、進路前方に操舵制御等により回避できない障害物が検知され緊急ブレーキを発動すべき状況において、攻撃者により不正ＥＣＵ９００から車速をゼロであると偽装する車速フレームがバス３０に送信された場合の例である。攻撃者に支配された不正ＥＣＵ９００は、バス３０にアクセス可能なＥＣＵであり、例えば攻撃者により診断用ポート５００に接続されたＥＣＵや、Ｇａｔｅｗａｙ等への不正攻撃により制御を乗っ取られたＥＣＵ等である。
【０１０１】
ステップＳ１０１では、ブレーキＥＣＵ１００が、車輪速センサ１０１から取得された車輪速に基づいて、車速に換算した場合に６０ｋｍ／ｈに相当する車輪速を示す車輪速フレームをバス３０に送信する。車輪速フレームはセンサＥＣＵ３００に受信される。
【０１０２】
続くステップＳ１０２では、エンジンＥＣＵ２００が、車輪速センサ１０１から取得された車輪速に基づいて生成した、６０ｋｍ／ｈを示す車速データをデータフィールドに含む車速フレームをバス３０に送信する。車速フレームはセンサＥＣＵ３００に受信される。
【０１０３】
続くステップＳ１０３では、不正ＥＣＵ９００が、車速をゼロ（０ｋｍ／ｈ）と偽装する車速データを含む車速フレームをバス３０に送信する。これは、センサＥＣＵ３００（のデータバッファ）において６０ｋｍ／ｈの車速を示す車速フレームを、０ｋｍ／ｈと車速を偽装する車速フレームで上書きして、センサＥＣＵ３００に車両２０が停止していると誤認させて、緊急ブレーキを発動させないようにする攻撃である。
【０１０４】
ブレーキＥＣＵ１００は、車速フレームについては判定対象フレームとして車輪速に係るセンサ情報に基づいて判定をしている。ステップＳ１０３の段階において、ブレーキＥＣＵ１００が取得している最新のセンサ情報が示す車輪速は、車速に換算した場合に６０ｋｍ／ｈに相当する。このため、ブレーキＥＣＵ１００は、ステップＳ１０４で、０ｋｍ／ｈと車速を偽装する車速データの値が、不正判定条件（図６参照）により特定される下限値５５ｋｍ／ｈから上限値６５ｋｍ／ｈまでの範囲の外であるので、当該車速フレームは不正と判定する。
【０１０５】
そして、ステップＳ１０５で、ブレーキＥＣＵ１００はエラーフレームを送信する。これにより、車速を偽装する車速データを含む車速フレームの一部がエラーフレームにより上書きされる。よって、車速を偽装する車速フレームは無効化され、センサＥＣＵ３００では破棄される。
【０１０６】
車速を偽装する車速フレームを破棄したセンサＥＣＵ３００では、ステップＳ１０６で、障害物センサ３０１によるセンシング結果、及び、ステップＳ１０２で受信していた６０ｋｍ／ｈを示す車速データ等に基づいて、緊急ブレーキを発動するために必要な減速量を算定し、減速量を示すブレーキ指示フレームをバス３０に送信する。
【０１０７】
続いてステップＳ１０７で、ブレーキＥＣＵ１００は、ブレーキ指示フレームが示す減速量に応じて制動装置１０３を制御する制動制御を行う。
【０１０８】
［１．８  実施の形態１の効果］
実施の形態１に係る車載ネットワークシステム１０では、ブレーキＥＣＵ１００が、車輪速センサ１０１から専用線を介して取得した車輪速に係るセンサ情報を比較用センサ情報として用いて、車速を示す車速フレームの内容が不正か否かを、その内容と比較用センサ情報との整合性に基づいて判定する。そして、判定結果が不正の場合にはブレーキＥＣＵ１００はエラーフレームの送信等の所定処理を行う。
【０１０９】
上述の判定は、比較用センサ情報と、正常時における判定対象フレームの内容とが一定の関係を有することを前提として有用となっている。つまり、ブレーキＥＣＵ１００による、車輪速センサ１０１から専用線を介して取得したセンサ情報に基づく上述の判定は、エンジンＥＣＵ２００が正常時に車輪速センサ１０１のセンシングの結果に基づいて生成した車速データを含ませて車速フレームを送信する車載ネットワークシステム１０において有用である。攻撃者により車速を偽装した不正な車速フレームがバス３０に送信された場合に、車速フレームの内容と比較用センサ情報とが整合しないので、ブレーキＥＣＵ１００は、その車速フレームを不正と判定することができ、適切に対処することが可能となる。
【０１１０】
（実施の形態１の変形例）
以下、実施の形態１で示した車載ネットワークシステム１０におけるブレーキＥＣＵ１００によるフレーム不正判定処理の内容を部分的に変形した例について説明する。この実施の形態１の変形例におけるフレーム不正判定処理では、ブレーキ指示フレームを受信したタイミングで、先に受信されていた判定対象フレームである車速フレームについての判定が行われる。即ち、ブレーキＥＣＵ１００における判定部１３０は、制動制御を指示するブレーキ指示フレームが受信部１１０により受信された際に、受信部１１０により受信されていた最新の車速フレームに含まれるデータが不正か否かを、車輪速センサ１０１から取得されたセンサ情報に基づいて判定する。
【０１１１】
［１．９  変形例におけるフレーム不正判定処理］
図９は、実施の形態１の変形例に係るブレーキＥＣＵ１００におけるフレーム不正判定処理の一例を示すフローチャートである。以下、同図に即して変形例におけるフレーム不正判定処理について説明する。ここでは、ブレーキＥＣＵ１００の判定部１３０が、図６に示すフレーム不正判定用情報に基づいて判定を行うこととして説明する。また、ブレーキＥＣＵ１００は、判定対象フレームである車速フレームを受信部１１０により受信すると、その車速フレームをメモリの一領域等であるデータバッファに一時的に保持することとする。
【０１１２】
ブレーキＥＣＵ１００は、ブレーキ指示フレームの受信を待ち、ブレーキ指示フレームを受信部１１０により受信すると（ステップＳ２１）、取得部１２０で取得済みの最新の比較用センサ情報（つまり車輪速センサ１０１から取得されたセンサ情報）の有効期限が満了前か否かを判断する（ステップＳ２２）。その有効期限が満了している場合には、取得部１２０は、比較用センサ情報を車輪速センサ１０１から取得する（ステップＳ２３）。ステップＳ２２で有効期限の満了前と判断された場合或いはステップＳ２３で新たに比較用センサ情報が取得された場合に、取得部１２０により有効期限が満了していない最新のセンサ情報がバッファに保持された状態となる。
【０１１３】
ブレーキＥＣＵ１００は、判定部１３０により、データバッファに保持されている受信済みの最新の判定対象フレームの判定対象データ（つまり車速データ）と、有効期限が満了していない最新のセンサ情報とが不整合か否か（つまり図６に示す不正判定条件が成立するか否か）により、判定対象フレームの内容が不正か否かを判定する（ステップＳ２４）。
【０１１４】
ステップＳ２４で不整合と判定した場合つまり判定対象フレームの内容が不正であると判定した場合には、ブレーキＥＣＵ１００は処理部１４０により、ステップＳ２１で受信されたブレーキ指示フレームに基づく制動装置１０３の制御を抑止する（ステップＳ２５）。そして、ブレーキＥＣＵ１００の処理部１４０は、送信部１５０を介して異常通知フレームをバス３０に送信し（ステップＳ２６）、異常をログに記録する（ステップＳ２７）。ステップＳ２６、Ｓ２７での処理は実施の形態１で示したステップＳ１６、Ｓ１７での処理と同様である。なお、ここでは、ステップＳ２５での制動装置１０３の制御抑止に引き続き、ステップＳ２６の異常通知フレームの送信及びステップＳ２７の異常ログの記録を実行するとしたが、これは一例であり、ステップＳ２５の制動装置１０３の制御抑止のみ或いはその他の処理を組み合わせて不正なフレームに対処するようにしても良いことは、当業者であれば容易に理解できよう。
【０１１５】
また、ステップＳ２４で不整合でない判定した場合つまり判定対象フレームの内容が適正であると判定した場合には、ブレーキＥＣＵ１００は、ステップＳ２１で受信されたブレーキ指示フレームに基づく制動装置１０３の制御を行う（ステップＳ２８）。なお、ステップＳ２８では、ブレーキＥＣＵ１００は、車両２０の車速が高速（例えば７０ｋｍ／ｈ以上）の場合にはブレーキ指示フレームに基づく制動制御（つまり制動装置１０３の制御）を実行しないこととしても良い。
【０１１６】
ブレーキＥＣＵ１００は、ステップＳ２７或いはステップＳ２８での処理の後に、ステップＳ２１に戻ってブレーキ指示フレームの受信を待機する。
【０１１７】
［１．１０  変形例における緊急ブレーキ機能に係るＥＣＵの連携動作］
図１０は、実施の形態１の変形例における緊急ブレーキ機能のために連携する複数のＥＣＵの処理シーケンス例を示す。この例は、車両２０の高速走行中、緊急ブレーキを発動する必要のない状況で、攻撃者により不正ＥＣＵ９００から車速を低速であると偽装する車速フレームがバス３０に送信され、続けて不正に緊急ブレーキを発動させるために制動制御を指示するブレーキ指示フレームがバス３０に送信された場合の例である。ここでは、ブレーキＥＣＵ１００は、車両２０に対する制動制御の実行可否の条件判断に、車両２０の状態としての車速を示す車速データを含む車速フレームを用い、高速（例えば７０ｋｍ／ｈ以上）の場合にはブレーキ指示フレームに基づく制動制御を実行しないこととする。
【０１１８】
ステップＳ２０１では、ブレーキＥＣＵ１００が、車輪速センサ１０１から取得された車輪速に基づいて、車速に換算した場合に高速の１００ｋｍ／ｈに相当する車輪速を示す車輪速フレームをバス３０に送信する。車輪速フレームはセンサＥＣＵ３００に受信される。
【０１１９】
続くステップＳ２０２では、エンジンＥＣＵ２００が、車輪速センサ１０１から取得された車輪速に基づいて生成した、高速の１００ｋｍ／ｈを示す車速データをデータフィールドに含む車速フレームをバス３０に送信する。この車速フレームはセンサＥＣＵ３００、ブレーキＥＣＵ１００等に受信される。
【０１２０】
続くステップＳ２０３では、不正ＥＣＵ９００が、車速を低速の２０ｋｍ／ｈと偽装する車速データを含む車速フレームをバス３０に送信する。これは、ブレーキＥＣＵ１００に車両２０の車速が低速であると誤認させようとする攻撃である。この車速フレームもセンサＥＣＵ３００、ブレーキＥＣＵ１００等に受信される。
【０１２１】
続くステップＳ２０４では、不正ＥＣＵ９００が、フルブレーキングに相当する減速量を示す制御データを含むブレーキ指示フレームをバス３０に送信する。これは、ブレーキＥＣＵ１００に車両２０の車速が低速であると誤認させた状態で、緊急ブレーキを発動させようとする攻撃である。
【０１２２】
ステップＳ２０５では、ブレーキ指示フレームを受信したブレーキＥＣＵ１００は、先行して受信されていた判定対象フレームである車速フレーム（つまり２０ｋｍ／ｈを示す車速フレーム）について車輪速に係るセンサ情報に基づいて判定をしている。ステップＳ２０４の段階においてブレーキＥＣＵ１００が取得している最新のセンサ情報が示す車輪速は、車速に換算した場合に１００ｋｍ／ｈに相当する。このため、ブレーキＥＣＵ１００は、ステップＳ２０５で、２０ｋｍ／ｈと車速を偽装する車速データの値が、不正判定条件（図６参照）により特定される下限値９５ｋｍ／ｈから上限値１０５ｋｍ／ｈまでの範囲の外であるので、当該車速フレームを不正と判定する。
【０１２３】
ステップＳ２０６では、ブレーキＥＣＵ１００は、ステップＳ２０５で不正と判定したので、受信したブレーキ指示フレームに基づく制動制御を抑止する。
【０１２４】
［１．１１  実施の形態１の変形例の効果］
実施の形態１の変形例に係る車載ネットワークシステムでは、ブレーキＥＣＵ１００が、車輪速センサ１０１から専用線を介して取得した車輪速に係るセンサ情報に基づいて車速を示す車速フレームの内容が不正か否かを、車両に対する所定制御としての制動制御を指示するブレーキ指示フレームの受信タイミングにおいて判定する。つまり、この変形例では、判定対象フレームである第１種フレーム（この例では車速フレーム）の受信の際に判定を行うのではなく、第２種フレーム（この例ではブレーキ指示フレーム）の受信の際に判定を行う。
【０１２５】
車速フレームは、ブレーキＥＣＵ１００において制動制御の実行可否の条件判断に用いられる車速データを含むので、ブレーキ指示フレームの受信タイミングで判定することで、効率的な判定が可能となる。そして、判定結果が不正の場合にはブレーキＥＣＵ１００は制動制御を抑止する。つまり、ブレーキＥＣＵ１００は、攻撃者により送信された車速フレームを不正と判定することができ、不正なブレーキ指示フレームに基づく制動制御を行わないようにすることができる。
【０１２６】
（実施の形態２）
以下、実施の形態１で示した車載ネットワークシステム１０（図１参照）の構成を一部変形した車載ネットワークシステム１０ａについて説明する。実施の形態１では、フレーム不正判定処理を行う情報処理装置の例としてのブレーキＥＣＵ１００が、専用線から取得した、センサのセンシング結果を示すセンサ情報に基づいて、同じセンサのセンシング結果から生成されるはずの判定対象フレームの内容が不正か否かを判定した。これに対し本実施の形態に係る車載ネットワークシステム１０ａでは、フレーム不正判定処理を行う情報処理装置が、専用線から取得した、センサのセンシング結果を示すセンサ情報に基づいて、センシング範囲の重複部分を有する別のセンサのセンシング結果から生成されるはずの判定対象フレームの内容が不正か否かを判定する。
【０１２７】
［２．１  車載ネットワークシステム１０ａの構成］
図１１は、本実施の形態に係る車載ネットワークシステム１０ａの全体構成を示す図である。
【０１２８】
車載ネットワークシステム１０ａは、バス３０と、ＥＣＵ（ブレーキＥＣＵ）１００ａと、ＥＣＵ（エンジンＥＣＵ）２００と、ＥＣＵ（センサＥＣＵ）３００ａと、ＥＣＵ（ヘッドユニットＥＣＵ）４００と、診断用ポート５００と、ＥＣＵ（緊急ブレーキＥＣＵ）６００と、ＥＣＵ（カメラＥＣＵ）７００と、車輪速センサ１０１と、ブレーキセンサ１０２と、制動装置１０３と、アクセルセンサ２０１と、エンジン２０２と、赤外線レーザーセンサ３０１ａと、インストルメントパネル４０１と、イメージセンサ７０１とを含んで構成される。図１１では省略しているものの、車載ネットワークシステム１０ａには、バス３０に接続されたＥＣＵ１００ａ、２００、３００ａ、４００、６００、７００以外にも、いくつものＥＣＵが含まれ得る。
【０１２９】
車載ネットワークシステム１０ａにおいては、カメラＥＣＵ７００が、フレーム不正判定処理を行う情報処理装置として機能する。車載ネットワークシステム１０ａの構成要素のうち、実施の形態１で示した車載ネットワークシステム１０（図１参照）の構成要素と同様のものについては、図１１において図１と同じ符号を付しており、ここでは説明を省略する。また、車載ネットワークシステム１０ａは、ここで特に説明しない点については、車載ネットワークシステム１０と同様である。
【０１３０】
ブレーキＥＣＵ１００ａは、フレーム不正判定処理を行う情報処理装置としての機能を有さないこと以外は、実施の形態１で示したブレーキＥＣＵ１００と同様である。なお、車載ネットワークシステム１０ａにおいて、ブレーキＥＣＵ１００ａの代わりにブレーキＥＣＵ１００を備えることとしても良い。
【０１３１】
センサＥＣＵ３００ａは、赤外線レーザーセンサ３０１ａに専用線で接続されている。赤外線レーザーセンサ３０１ａは、車両２０の進路をある程度広範囲にセンシングし、例えば障害物の有無、障害物の座標等を示すセンシング結果をセンサＥＣＵ３００ａに伝達する。ここでは、センサＥＣＵ３００ａに接続されるセンサは、ここでは赤外線レーザーセンサを例にとって説明するが、ミリ波レーダーや超音波ソナーやライダーなど各種センサデバイスでも同様に実現可能である。
【０１３２】
センサＥＣＵ３００ａは、赤外線レーザーセンサ３０１ａからのセンシング結果を受けて、そのセンシング結果に基づくデータフレームをバス３０へ送信する機能を有する。なお、センサＥＣＵ３００ａは、実施の形態１で示したセンサＥＣＵ３００と異なり、ブレーキＥＣＵ１００ａへの指示に係るブレーキ指示フレームを送信する機能を有さない。
【０１３３】
緊急ブレーキＥＣＵ６００は、ＡＤＡＳにおける緊急ブレーキ機能の実行を制御するＥＣＵであり、バス３０から受信したデータフレームに基づいて、ブレーキＥＣＵ１００ａへの指示に係るブレーキ指示フレームを送信する機能を有する。ここでは、緊急ブレーキ機能を例にとって説明するが、前方車両に追従するクルーズコントロールやレーンキープアシストや駐車支援など各種ドライバ支援機能における、車両の加速／減速／操舵介入制御機能なども同様に実現可能である。さらには、工場の製造設備における緊急停止や制御速度変更機能なども同様に実現可能である。
【０１３４】
緊急ブレーキＥＣＵ６００は、車両２０の制動制御のための減速量を所定アルゴリズムにより算定し、その減速量を含むブレーキ指示フレームをバス３０に送信する。緊急ブレーキＥＣＵ６００は、例えば車両２０の前方に操舵制御等で回避できない障害物が検知されて車速がゼロでない場合に緊急ブレーキを発動すべきと判断し、十分に減速されるように減速量を定める。
【０１３５】
カメラＥＣＵ７００は、イメージセンサ７０１に専用線で接続されている。イメージセンサ７０１は、撮像により車両２０の周囲をセンシングし、例えば障害物の有無、障害物の座標等を示すセンシング結果をカメラＥＣＵ７００に伝達する。なお、イメージセンサ７０１は、車両２０の相互に異なる場所に搭載された複数のイメージセンサで構成されていても良い。カメラＥＣＵ７００は、イメージセンサ７０１からのセンシング結果を受けて、そのセンシング結果に基づくデータフレームをバス３０へ送信する機能を有する。カメラＥＣＵ７００は、更に、フレーム不正判定処理を行う情報処理装置としての機能を有する。フレーム不正判定処理として、カメラＥＣＵ７００に実装された情報処理装置は、イメージセンサ７０１からのセンシング結果を示すセンサ情報に基づいて、正常時にセンサＥＣＵ３００ａがバス３０に送信するデータフレームと同種類の判定対象フレームについて不正か否かに係る判定を行って、不正の場合に予め定めた所定処理を行う。
【０１３６】
［２．２  緊急ブレーキ機能に関連して授受されるフレーム］
図１２は、本実施の形態における緊急ブレーキ機能に関連する各ＥＣＵが授受するフレームの一例を示す。
【０１３７】
カメラＥＣＵ７００は、イメージセンサ７０１によるセンシング結果に基づき障害物の有無、障害物の座標等を示すデータをデータフィールドに含み、ＩＤ「０ｘ１１５」を有するデータフレームである障害物検知情報フレームをバス３０に送信する。
【０１３８】
エンジンＥＣＵ２００は、車速フレームと、アクセル状態フレームとをバス３０に逐次送信する。
【０１３９】
ブレーキＥＣＵ１００ａは、車輪速フレームと、ブレーキ状態フレームとをバス３０に送信する。
【０１４０】
センサＥＣＵ３００ａは、赤外線レーザーセンサ３０１ａによるセンシング結果として障害物の有無、障害物の座標等を示す障害物検知情報をデータフィールドに含み、ＩＤ「０ｘ１１６」を有するデータフレームである障害物検知情報フレームをバス３０に送信する。なお、センサＥＣＵ３００ａが送信する障害物検知情報フレームと、カメラＥＣＵ７００が送信する障害物検知情報フレームとは、ＩＤが異なり、つまり種類が異なる。ＩＤ「０ｘ１１６」の障害物検知情報フレームを送信するセンサＥＣＵ３００ａは、正常時において、イメージセンサ７０１によるセンシングの対象範囲の全部又は一部をセンシングする赤外線レーザーセンサ３０１ａによるセンシングの結果に基づいて生成した障害物検知情報を含ませて、その障害物検知情報フレームを逐次送信する。
【０１４１】
緊急ブレーキＥＣＵ６００は、車速フレーム、アクセル状態フレーム、車輪速フレーム、ブレーキ状態フレーム、及び、２種類の障害物検知情報フレームを、バス３０から受信する。緊急ブレーキＥＣＵ６００は、受信した車速フレーム等に基づいて、緊急ブレーキを発動すべきか否かを判断し、判断結果に応じて車両２０の制動制御のための減速量を所定アルゴリズムにより算定する。そして、算出した減速量をデータフィールドに含みＩＤ「０ｘ１２０」を有するデータフレームであるブレーキ指示フレームを、バス３０に送信する。
【０１４２】
緊急ブレーキＥＣＵ６００は、例えば車両２０の前方に操舵制御等で回避できない障害物が検知されかつ車両２０の車速がゼロでない場合に緊急ブレーキを発動すべきと判断し、十分に減速されるように減速量を定める。なお、緊急ブレーキＥＣＵ６００は、受信したフレームを効率的に処理するために一旦メモリの一領域等のデータバッファに蓄積し、ブレーキ指示フレームの送信の周期に従った必要なタイミングで、そのデータバッファからフレームを取り出して参照し得る。
【０１４３】
ブレーキＥＣＵ１００ａは、ブレーキ指示フレームにおける減速量の指定に従って、制動装置１０３の制御等を行い得る。
【０１４４】
なお、図１２では省略しているが、ヘッドユニットＥＣＵ４００は、例えば２種類の障害物検知情報フレーム等を受信し、その内容に応じてインストルメントパネル４０１に情報を表示し得る。
【０１４５】
［２．３  カメラＥＣＵ７００の構成］
図１３は、カメラＥＣＵ７００の構成図である。同図には、カメラＥＣＵ７００に専用線で直接接続されているイメージセンサ７０１を付記している。前後左右方向など複数のイメージセンサが接続され得るが、ここでは便宜上１つとして記載する。
【０１４６】
制動装置１０３の制御等を行うカメラＥＣＵ７００は、特定種類の判定対象フレームの判定等のフレーム不正判定処理を行う情報処理装置としての機能を有する。ここでは、特定種類の判定対象フレームがＩＤ「０ｘ１１６」を有する障害物検知情報フレームであることとして説明する。
【０１４７】
カメラＥＣＵ７００は、受信部７１０と、取得部７２０と、判定部７３０と、処理部７４０と、送信部７５０とを含んで構成される。
【０１４８】
受信部７１０及び送信部７５０は、実施の形態１で示した受信部１１０及び送信部７５０と同様に、バス３０での通信の制御を担う集積回路等で実現され、ＣＡＮプロトコルに従ってフレームの授受を行う。受信部７１０は、車載ネットワークつまりバス３０からフレームを受信して解釈し、送信部７５０は、バス３０にフレームを送信する。受信部７１０は、ＩＤフィールドと判断した値が、受信すべき判定対象フレームのＩＤ「０ｘ１１６」であるか否かを判別し、受信すべきＩＤでなければそのフレームの解釈を中止する。受信部７１０は、解釈したフレームの内容を判定部７３０に伝達する。
【０１４９】
取得部７２０は、専用線を介してイメージセンサ７０１から送信されるセンシングの結果を示すセンサ情報を取得する。取得部７２０は、例えば、カメラＥＣＵ７００において、イメージセンサ７０１と専用線での通信のための通信回路、及び、プログラムを実行するプロセッサ、メモリ等により実現される。取得部７２０は、例えば一定周期（例えば数百ミリ秒周期）等で、センサ情報を繰り返し取得し得る。
【０１５０】
判定部７３０は、プログラムを実行するプロセッサ等により実現される。判定部７３０は、予め定められた判定条件等に従って、受信部７１０により受信されたフレームの内容が不正か否かを、取得部７２０により取得された最新のセンサ情報に基づいて判定する。
【０１５１】
判定部７３０が用いる判定条件等を表すフレーム不正判定用情報の一例を図１４に示す。このフレーム不正判定用情報は、判定対象データと対象範囲関係情報とを対応付けた情報である。判定対象データは、判定部７３０の判定の対象である判定対象フレームとその内容のデータとを特定する情報である。対象範囲関係情報は、判定対象データの基礎となるセンシング結果の出所であるセンサと、整合性に係る判定のために判定対象データと比較される比較用センサデータの基礎となるセンシング結果の出所であるセンサとのそれぞれのセンシングの対象範囲に基づいて定めた情報である。比較用センサデータは、取得部７２０により取得されたセンサ情報である。対象範囲関係情報は、具体的には、赤外線レーザーセンサ３０１ａとイメージセンサ７０１とのセンシングの対象の重複範囲等を特定し判定対象データと比較用センサデータとを対比可能にするための情報である。
【０１５２】
図１４の例のフレーム不正判定用情報は、ＩＤ「０ｘ１１６」を有する障害物検知情報フレームを判定対象フレームとすべきことを示している。また、このフレーム不正判定用情報は、その障害物検知情報フレームの予め定められた所定位置の障害物検知情報を、イメージセンサ７０１のセンシング結果を示すセンサ情報である比較用センサデータと比較することで判定がなされるべきことを示している。また、このフレーム不正判定用情報は、ｘｙｚ３次元座標系で表した比較用センサデータの範囲と判定対象データの範囲との重複部分を示す対象範囲関係情報を示している。なお、対象範囲関係情報は、判定対象データと比較用センサデータとを対比する場合の基準を揃えるために、各データの値の単位等といった、データ間の換算に用いられる情報を含んでも良い。また、対象範囲関係情報は、各センサの調整等により各センサのセンシング範囲が変化するような場合に、その変化に応じて更新されても良い。
【０１５３】
判定部７３０は、受信部７１０により受信されたＩＤ「０ｘ１１６」を有する障害物検知情報フレームのデータフィールドの障害物検知情報が不正か否かを、対象範囲関係情報に従った対比により、イメージセンサ７０１から取得部７２０が取得したセンサ情報に基づいて判定する。そして、判定部７３０は、例えば、受信部７１０により受信されたＩＤ「０ｘ１１６」を有する障害物検知情報フレームに含まれる障害物検知情報が示す障害物の有無、障害物の座標等が、取得部７２０が取得したセンサ情報が示す障害物の有無、障害物の座標等と整合しない場合（例えば一致しない場合）に不正と判定する。その他の場合には、判定部７３０は不正でない（つまり適正である）と判定する。判定部７３０は判定結果を処理部７４０に通知する。
【０１５４】
処理部７４０は、判定部７３０からの判定結果の通知に対応して、判定部７３０により判定対象フレーム（つまりＩＤ「０ｘ１１６」の障害物検知情報フレーム）の内容が不正と判定された場合には、異常状態に対応するために予め定められた所定処理を実行する。また、処理部７４０は、判定部７３０により判定対象フレームの内容が不正と判定されなかった場合に所定処理を実行しない。
【０１５５】
所定処理は、実施の形態１で示したものと同様である。例えば、処理部７４０は、判定部７３０により、ＩＤ「０ｘ１１６」の障害物検知情報フレームの内容が不正と判定された場合に、受信部７１０によりその障害物検知情報フレームの最後尾のビットが受信される前に、送信部７５０を介して、エラーフレームをバス３０へ送信することとしても良い。このため、判定部７３０は、受信部７１０により障害物検知情報フレームの最後尾のビットが受信される前に、その障害物検知情報フレームの内容が不正か否かを判定して判定結果を処理部７４０に通知するようにしても良い。バス３０に障害物検知情報フレームが流れている間にエラーフレームが送信されると、障害物検知情報フレームが無効化され、バス３０に接続された各ＥＣＵは、その障害物検知情報フレームを破棄することとなる。
【０１５６】
［２．４  カメラＥＣＵ７００によるフレーム不正判定処理］
図１５は、カメラＥＣＵ７００におけるフレーム不正判定処理の一例を示すフローチャートである。以下、同図に即してフレーム不正判定処理について説明する。ここでは、カメラＥＣＵ７００の判定部７３０が図１４に示すフレーム不正判定用情報に基づいて判定を行うこととして説明する。ここでは、カメラＥＣＵ７００の場合の例を示すが、センサＥＣＵ３００a側でも同様に判定可能である。
【０１５７】
カメラＥＣＵ７００は、判定対象フレームである、ＩＤ「０ｘ１１６」を有する障害物検知情報フレームを受信部７１０により受信し（ステップＳ３１）、その判定対象フレームの判定対象データの範囲と比較用センサデータの範囲とが重複する場合に（ステップＳ３２）、ステップＳ３３以後の処理を行う。カメラＥＣＵ７００は、ステップＳ３２では、判定対象フレームの判定対象データの範囲と比較用センサデータの範囲との重複を、フレーム不正判定用情報における対象範囲関係情報に基づいて判断する。
【０１５８】
判定対象フレームの判定対象データの範囲と比較用センサデータの範囲とが重複する場合には、カメラＥＣＵ７００は、取得部７２０により比較用センサ情報（つまり比較用センサデータ）を取得する（ステップＳ３３）。
【０１５９】
続いて、カメラＥＣＵ７００は、判定部７３０により、判定対象フレームの判定対象データ（つまり障害物検知情報）と、センサ情報とが不整合か否かにより、判定対象フレームの内容が不正か否かを判定する（ステップＳ３４）。ステップＳ３４では、判定部７３０は、受信部７１０により受信された、判定対象フレームの判定対象データが不正か否かを、センサ情報と、対象範囲関係情報（つまり赤外線レーザーセンサ３０１ａとイメージセンサ７０１とのセンシングの対象範囲に基づいて定めた情報）とに基づいて判定する。具体的には、判定部７３０は、例えば、対象範囲関係情報に基づいて判定対象データと比較用センサデータとの基準を揃えて対比し、障害物の有無、障害物の座標等が誤差程度を超えて異なる場合には、整合しないとして判定対象フレームの内容（つまり判定対象データ）が不正と判定する。
【０１６０】
ステップＳ３４で不整合と判定した場合、つまり判定対象フレームの内容が不正であると判定した場合には、カメラＥＣＵ７００は処理部７４０により、送信部７５０を介してエラーフレームをバス３０に送信する（ステップＳ３５）。
【０１６１】
また、ステップＳ３４で不整合でない判定した場合、つまり判定対象フレームの内容が適正であると判定した場合には、カメラＥＣＵ７００は、ステップＳ３５での処理をスキップし、ステップＳ３１に戻って判定対象フレームの受信を待機する。
【０１６２】
［２．５  緊急ブレーキ機能に係るＥＣＵの連携動作］
図１６は、緊急ブレーキ機能のために連携する複数のＥＣＵの処理シーケンス例を示す。この例は、車両２０の走行中において進路前方に障害物が存在せず緊急ブレーキを発動すべきではない状況において、攻撃者により不正ＥＣＵ９００から障害物を検知したという偽の障害物検知情報を示す障害物検知情報フレームがバス３０に送信された場合の例である。
【０１６３】
ステップＳ３０１では、センサＥＣＵ３００ａが、赤外線レーザーセンサ３０１ａによるセンシング結果に基づいて、車両２０の進路上に障害物がないことを示す障害物検知情報をデータフィールドに含み、ＩＤ「０ｘ１１６」を有する障害物検知情報フレームをバス３０に送信する。この障害物検知情報フレームは緊急ブレーキＥＣＵ６００に受信される。また、この障害物検知情報フレームはカメラＥＣＵ７００にも受信されるが、カメラＥＣＵ７００はイメージセンサ７０１により障害物がないことを検知しており、この障害物検知情報フレームを不正と判定しない。
【０１６４】
続くステップＳ３０２では、カメラＥＣＵ７００が、イメージセンサ７０１によるセンシング結果に基づいて、車両２０の進路上に障害物がないことを示す障害物検知情報をデータフィールドに含み、ＩＤ「０ｘ１１５」を有する障害物検知情報フレームをバス３０に送信する。この障害物検知情報フレームは緊急ブレーキＥＣＵ６００に受信される。
【０１６５】
続くステップＳ３０３では、不正ＥＣＵ９００が、車両２０の進路上に障害物が存在するという偽の障害物検知情報を示す障害物検知情報フレームをバス３０に送信する。これは、障害物が存在するという偽の障害物検知情報を示す障害物検知情報フレームによって、緊急ブレーキＥＣＵ６００に、緊急ブレーキを発動させようとする攻撃である。この障害物検知情報フレームは、カメラＥＣＵ７００に受信される。
【０１６６】
ステップＳ３０４で、カメラＥＣＵ７００はイメージセンサ７０１により障害物がないことを検知していることから、受信したＩＤ「０ｘ１１６」を有する障害物検知情報フレームを、不正と判定する。
【０１６７】
そして、ステップＳ３０５で、カメラＥＣＵ７００はエラーフレームを送信する。これにより、不正ＥＣＵ９００が送信中の障害物検知情報フレームの一部がエラーフレームにより上書きされ、無効化され、緊急ブレーキＥＣＵ６００では破棄される。この結果として、緊急ブレーキＥＣＵ６００は、緊急ブレーキを発動する必要がないので、例えば、減速量がゼロであることを示すブレーキ指示フレームをバス３０に送信し、このブレーキ指示フレームを受信したブレーキＥＣＵ１００は、緊急ブレーキに係る制動制御を行わない。
【０１６８】
［２．６  実施の形態２の効果］
実施の形態２に係る車載ネットワークシステム１０ａでは、カメラＥＣＵ７００がフレーム不正判定処理を行う情報処理装置として機能する。そして、カメラＥＣＵ７００が、イメージセンサ７０１から専用線を介して取得したセンサ情報を用いて、ＩＤ「０ｘ１１６」を有する障害物検知情報フレームの内容が不正か否かを、その内容とそのセンサ情報との整合性に基づいて判定する。これは２つのセンサである第１センサ及び第２センサのセンシング範囲の重複を利用した判定である。ＩＤ「０ｘ１１６」を有する障害物検知情報フレームは、正常時にセンサＥＣＵ３００ａが赤外線レーザーセンサ３０１ａのセンシング結果に基づく障害物検知情報を含めて送信する。このため、ＩＤ「０ｘ１１６」を有する障害物検知情報フレームの判定は、第１センサの一例であるイメージセンサ７０１と第２センサの一例である赤外線レーザーセンサ３０１ａとのセンシング範囲に重複部分があることを前提として有用となる。両センサのセンシング結果はセンシング範囲の重複部分において一定の関係を有するからである。そして、判定結果が不正の場合にはカメラＥＣＵ７００はエラーフレームの送信等の所定処理を行う。
【０１６９】
攻撃者により、ＩＤ「０ｘ１１６」を有し、偽の障害物検知情報を示す不正な障害物検知情報フレームがバス３０に送信された場合に、障害物検知情報フレームの内容とイメージセンサ７０１によるセンサ情報とが整合しないので、カメラＥＣＵ７００は、その障害物検知情報フレームを不正と判定することができ、適切に対処することが可能となる。
【０１７０】
（他の実施の形態）
以上のように、本発明に係る技術の例示として実施の形態１、２を説明した。しかしながら、本発明に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施態様に含まれる。
【０１７１】
（１）上記実施の形態では、情報処理装置が車両におけるブレーキＥＣＵ１００或いはカメラＥＣＵ７００として実装される例を示したが、その他のＥＣＵ（例えばヘッドユニットＥＣＵ４００）に実装されても良い。
【０１７２】
（２）上記実施の形態では、情報処理装置が車両における車載ネットワークシステムにおいて車載ネットワークに接続されるＥＣＵ（例えばブレーキＥＣＵ１００、カメラＥＣＵ７００等）として実装される例を示したが、情報処理装置は、複数のＥＣＵが通信するネットワークに接続されるものであれば車載装置に限られない。例えば、上記実施の形態で示した車両２０を、工場の製造設備やロボット等に置き換えても良い。そして、情報処理装置は、ネットワークからフレームを受信する受信部（例えば受信部１１０、７１０等）と、第１センサ（例えば車輪速センサ１０１、イメージセンサ７０１等）によるセンシングの結果を示すセンサ情報を取得する取得部（例えば取得部１２０、７２０等）と、受信部により受信されたフレームの内容が不正か否かをセンサ情報に基づいて判定する判定部（例えば判定部１３０、７３０等）とを備える。
【０１７３】
（３）上記実施の形態１では、情報処理装置が、車輪速センサ１０１によるセンシングの結果を示すセンサ情報に基づいて、車輪速センサ１０１によるセンシングの結果を利用するエンジンＥＣＵ２００が送信し得る車速フレームの内容が不正か否かを判定する例を示した。しかしセンサ情報に係るセンサと、判定対象フレームを送信するＥＣＵが利用するセンサとが必ずしも同じである必要はない。
【０１７４】
情報処理装置は、例えば、第１センサによるセンシングの結果を示すセンサ情報に基づいて、第１センサに依存しない第１種フレームの内容が、不正か否かを判定するものであっても良い。第１種フレームは特定種類のフレームであり、判定対象フレームである。この第１センサによるセンシングの結果を示すセンサ情報は、第１センサのセンシングにより得られる第１種物理量を示し、情報処理装置と同じネットワークに接続されたいずれかのＥＣＵが正常時において、第１種物理量と正又は負の相関がある物理量である第２種物理量を示すデータを含む第１種フレームを送信することとしても良い。
【０１７５】
例えば正常時において第１種フレームを送信するＥＣＵが、第１センサのセンシングする第１種物理量と相関のある第２種物理量をセンシングする別のセンサ（つまり第１センサ以外のセンサ）に基づいて、第１種フレームを送信するものであっても良い。この場合に情報処理装置は、センサ情報が示す第１種物理量と、第１種フレームのデータとが、予め定められた一定の相関関係を有するか否かにより、第１種フレームの内容が不正か否かを判定し得る。
【０１７６】
（４）上記実施の形態１では、情報処理装置として機能するブレーキＥＣＵ１００がセンサ情報を、専用線を介して車輪速センサ１０１から取得する例を示したが、情報処理装置は、車輪速センサ１０１その他のセンサである第１センサからのセンシングの結果を示すセンサ情報を、専用線以外の伝送路（例えばバス３０）を介して取得することとしても良い。例えば、情報処理装置として機能するＥＣＵが、第１センサと専用線で接続された他のＥＣＵから第１センサのセンシングの結果を示すセンサ情報をバス３０を介して取得する場合において、センサ情報はバス３０上で、デジタル署名の付加、暗号化等の暗号処理技術を用いて、保護されることとしても良い。
【０１７７】
例えば、車載ネットワークシステム１０でブレーキＥＣＵ１００の代わりにヘッドユニットＥＣＵ４００がフレーム不正判定処理（図７参照）を行う情報処理装置として機能する場合には、ヘッドユニットＥＣＵ４００は、ブレーキＥＣＵ１００が送信するセンサ情報を含むデータフレームである所定種フレームを受信して所定種フレームからセンサ情報を取得しても良い。所定種フレームは、ある種類のフレームであり、例えば予め定められたＩＤを有するデータフレームである。所定種フレームは、例えば、車輪速センサのセンシングの結果を示すセンサ情報をデータフィールドに含む車輪速フレームである。ヘッドユニットＥＣＵ４００は、判定対象フレーム（例えば車速フレーム）の内容と、所定種フレームに基づくセンサ情報との整合性がない場合に、いずれのフレームが不正かを特定することなく、判定対象フレームの内容が不正と推定的に判定しても良い。
【０１７８】
（５）上記実施の形態では、情報処理装置が、１つの特定種類のフレームの内容を判定する例を示したが、複数の種類のフレームの内容が不正か否かを判定することとしても良い。この場合には、フレーム不正判定用情報（図６、図１４参照）は、複数の判定対象フレームのそれぞれに対応した判定対象データ、不正判定条件、対象範囲関係情報等を列挙したものとしても良い。
【０１７９】
（６）上記実施の形態では、ＣＡＮプロトコルにおけるデータフレームについてのフォーマットとして、標準ＩＤフォーマット（図２参照）を示したが、拡張ＩＤフォーマットであっても良く、データフレームのＩＤは、拡張ＩＤフォーマットでの拡張ＩＤ等であっても良い。また、上記実施の形態で示したＣＡＮプロトコルは、ＴＴＣＡＮ（Time-Triggered CAN）、ＣＡＮＦＤ（CAN with Flexible Data Rate）等の派生的なプロトコルも包含する広義の意味のものとしても良い。また、車両でＥＣＵ間の通信に用いられるネットワークは、ＣＡＮプロトコルに従ったネットワークに限られず、他のネットワークでも良い。ＥＣＵが通信データの授受を行うためのネットワークで用いられる、ＣＡＮ以外のプロトコルとして、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）、ＬＩＮ（Local Interconnect Network）、ＭＯＳＴ（登録商標）（Media Oriented Systems Transport）、ＦｌｅｘＲａｙ（登録商標）、ブローダーリーチプロトコル等が挙げられる。
【０１８０】
（７）上記実施の形態における各ＥＣＵは、例えば、プロセッサ、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置であることとしたが、ハードディスク装置、ディスプレイその他のハードウェア構成要素を含んでいても良い。また、上記実施の形態で示した各装置は、メモリに記憶されたプログラムがプロセッサにより実行されてソフトウェア的に機能を実現する代わりに、専用のハードウェア（デジタル回路等）によりその機能を実現することとしても良い。
【０１８１】
（８）上記実施の形態で示した情報処理装置であるブレーキＥＣＵ１００及びカメラＥＣＵ７００の機能的な構成要素（図５、図１３参照）間の機能分担は一例に過ぎず、任意に分担を変更しても良い。
【０１８２】
（９）上記実施の形態で示した各種処理の手順（例えば図７、図９、図１５に示した手順等）の実行順序は、必ずしも、上述した通りの順序に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えたり、複数の手順を並列に行ったり、その手順の一部を省略したりすることができる。
【０１８３】
（１０）上記実施の形態における各装置を構成する構成要素の一部又は全部は、１個のシステムＬＳＩ（Large Scale Integration：大規模集積回路）から構成されているとしても良い。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ等を含んで構成されるコンピュータシステムである。前記ＲＡＭには、コンピュータプログラムが記録されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、システムＬＳＩは、その機能を達成する。また、上記各装置を構成する構成要素の各部は、個別に１チップ化されていても良いし、一部又は全部を含むように１チップ化されても良い。また、ここでは、システムＬＳＩとしたが、集積度の違いにより、ＩＣ、ＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。更には、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
【０１８４】
（１１）上記各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なＩＣカード又は単体のモジュールから構成されているとしても良い。前記ＩＣカード又は前記モジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭ等から構成されるコンピュータシステムである。前記ＩＣカード又は前記モジュールは、上記の超多機能ＬＳＩを含むとしても良い。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、前記ＩＣカード又は前記モジュールは、その機能を達成する。このＩＣカード又はこのモジュールは、耐タンパ性を有するとしても良い。
【０１８５】
（１２）本発明の一態様としては、例えば図７、図９、図１５等に示す処理手順の全部又は一部を含む情報処理方法であるとしても良い。例えば、情報処理方法は、複数のＥＣＵがネットワークで通信するネットワークに接続される情報処理装置において用いられる情報処理方法であって、そのネットワークから、データを含むフレームを受信する受信ステップ（例えば受信処理に係るステップＳ１１）と、第１センサによるセンシングの結果を示すセンサ情報を取得する取得ステップ（例えば取得処理に係るステップＳ１３）と、前記データ（受信ステップで受信されたフレームに含まれるデータ）が不正か否かをセンサ情報に基づいて判定する判定ステップ（例えば判定処理に係るステップＳ１４）とを含む。また、本発明の一態様としては、この情報処理方法に係る所定情報処理をコンピュータにより実現するためのプログラム（コンピュータプログラム）であるとしても良いし、前記プログラムからなるデジタル信号であるとしても良い。
【０１８６】
また、本発明の一態様としては、前記コンピュータプログラム又は前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Blu-ray（登録商標） Disc）、半導体メモリ等に記録したものとしても良い。また、これらの記録媒体に記録されている前記デジタル信号であるとしても良い。
【０１８７】
また、本発明の一態様としては、前記プログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしても良い。また、本発明の一態様としては、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記プログラムを記録しており、前記マイクロプロセッサは、前記プログラムに従って動作するとしても良い。また、前記プログラム若しくは前記デジタル信号を前記記録媒体に記録して移送することにより、又は、前記プログラム若しくは前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしても良い。
【０１８８】
（１３）上記実施の形態及び上記変形例で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本発明の範囲に含まれる。
【産業上の利用可能性】
【０１８９】
本発明は、ネットワークのセキュリティを向上させるために利用可能である。
【符号の説明】
【０１９０】
１０、１０ａ  車載ネットワークシステム
２０  車両
３０  バス
１０１  車輪速センサ
１０２  ブレーキセンサ
１０３  制動装置
１００、１００ａ  ブレーキＥＣＵ
１１０、７１０  受信部
１２０、７２０  取得部
１３０、７３０  判定部
１４０、７４０  処理部
１５０、７５０  送信部
２００  エンジンＥＣＵ
２０１  アクセルセンサ
２０２  エンジン
３００、３００ａ  センサＥＣＵ
３０１  障害物センサ
３０１ａ  赤外線レーザーセンサ
４００  ヘッドユニットＥＣＵ
４０１  インストルメントパネル
５００  診断用ポート
６００  緊急ブレーキＥＣＵ
７００  カメラＥＣＵ
７０１  イメージセンサ
９００  不正ＥＣＵ
【図１】
2019008618.tif 000003
【図２】
2019008618.tif 000004
【図３】
2019008618.tif 000005
【図４】
2019008618.tif 000006
【図５】
2019008618.tif 000007
【図６】
2019008618.tif 000008
【図７】
2019008618.tif 000009
【図８】
2019008618.tif 000010
【図９】
2019008618.tif 000011
【図１０】
2019008618.tif 000012
【図１１】
2019008618.tif 000013
【図１２】
2019008618.tif 000014
【図１３】
2019008618.tif 000015
【図１４】
2019008618.tif 000016
【図１５】
2019008618.tif 000017
【図１６】
2019008618.tif 000018