(57)【要約】【課題】車載機器に接続され且つ攻撃を受けた車載機器からの不正な制御を停止する車載中継装置等を提供する。【解決手段】車両に搭載され且つ車載機器間のデータの送受信を中継する車載中継装置は、第１の車載機器とデータを送受信する第１の通信部と、第２の車載機器とデータを送受信する第２の通信部と、前記第１の通信部と前記第２の通信部との間でのデータの中継を制御する制御部とを備え、前記制御部は、前記第１の通信部又は前記第２の通信部から受信された受信データに不正がある場合、前記車両の走行状態に応じて、前記中継を停止する。【選択図】図１
2019022210.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載され且つ車載機器間のデータの送受信を中継する車載中継装置であって、
第１の車載機器とデータを送受信する第１の通信部と、
第２の車載機器とデータを送受信する第２の通信部と、
前記第１の通信部と前記第２の通信部との間でのデータの中継を制御する制御部とを備え、
前記制御部は、
前記第１の通信部又は前記第２の通信部から受信された受信データに不正がある場合、前記車両の走行状態に応じて、前記中継を停止する
車載中継装置。
【請求項２】
前記第１の通信部及び前記第２の通信部の少なくとも１つは、ネットワークを介して、前記車載機器と送受信する
請求項１に記載の車載中継装置。
【請求項３】
前記第１の通信部と前記第１の車載機器とを接続するための第１のポートと、
前記第２の通信部と前記第２の車載機器とを接続するための第２のポートとをさらに備え、
前記制御部は、前記第１のポートと前記第２のポートとの間の接続を遮断することによって、前記中継を停止する
請求項１または２に記載の車載中継装置。
【請求項４】
前記制御部は、不正がある前記受信データの送信元の前記車載機器を宛先又は送信元とするＭＡＣアドレスを含むデータの中継を停止することによって、前記中継を停止する
請求項１〜３のいずれか一項に記載の車載中継装置。
【請求項５】
前記制御部は、不正がある前記受信データの送信元の前記車載機器を宛先又は送信元とするＩＰアドレスを含むデータの中継を停止することによって、前記中継を停止する
請求項１〜４のいずれか一項に記載の車載中継装置。
【請求項６】
前記制御部は、
前記受信データに不正があることを通知する不正検知データを、前記第１の通信部又は前記第２の通信部から受信し、
前記不正検知データの受信後、所定時間経過後に前記中継を停止する
請求項１〜５のいずれか一項に記載の車載中継装置。
【請求項７】
前記車両は、自動運転機能を備え、
前記制御部は、
前記受信データに不正があることを通知する不正検知データを、前記第１の通信部又は前記第２の通信部から受信し、
前記不正検知データの受信後、前記車両の走行状態として、前記自動運転機能がオフ状態であることを通知するデータを受信すると前記中継を停止する
請求項１〜６のいずれか一項に記載の車載中継装置。
【請求項８】
前記不正検知データは、不正が検出されたデータの情報と、前記不正が検出されたデータの送信元の情報とを含む
請求項６または７に記載の車載中継装置。
【請求項９】
前記不正が検出されたデータの情報と、前記不正が検出されたデータの送信元の情報とを対応付けて格納する記憶部をさらに備え、
前記制御部は、前記記憶部の前記不正が検出されたデータの情報と前記不正が検出されたデータの送信元の情報とに基づき、前記不正が検出されたデータの送信元を特定する
請求項８に記載の車載中継装置。
【請求項１０】
第３の車載機器とデータを送受信する第３の通信部をさらに備え、
前記制御部は、
前記第１の通信部から受信された受信データに不正がある場合、
前記第１の通信部と前記第２の通信部との間でのデータの中継を停止し、
前記第１の通信部と前記第３の通信部との間でのデータの中継を継続する
請求項１〜９のいずれか一項に記載の車載中継装置。
【請求項１１】
前記第３の車載機器には、前記第１の車載機器の状態を診断する診断機器が接続される
請求項１０に記載の車載中継装置。
【請求項１２】
前記第３の車載機器は、外部と通信可能な通信ユニットである
請求項１０に記載の車載中継装置。
【請求項１３】
前記制御部は、
前記第１の通信部又は前記第２の通信部から受信された受信データに不正がある場合、
前記第１の通信部又は前記第２の通信部から前記中継の停止の解除を要求するデータを受信すると、
停止している前記中継を再開する
請求項１〜１２のいずれか一項に記載の車載中継装置。
【請求項１４】
前記第１の車載機器と前記第２の車載機器との中継状況を記憶する記憶部をさらに備え、
前記制御部は、前記車載中継装置の電源投入時に、前記記憶部に記憶されている前記中継状況に基づいて、前記第１の車載機器と前記第２の車載機器との中継を維持又は停止する
請求項１〜１３のいずれか一項に記載の車載中継装置。
【請求項１５】
車載機器間のデータの送受信を中継する中継方法であって、
第１の車載機器とデータを送受信し、
第２の車載機器とデータを送受信し、
前記第１の車載機器と前記第２の車載機器との間でデータを中継し、
前記第１の車載機器又は前記第２の車載機器のデータに不正がある場合、前記車載機器を搭載する車両の走行状態に応じて、前記中継を停止する
中継方法。
【請求項１６】
第１の車載機器とデータを送受信し、
第２の車載機器とデータを送受信し、
前記第１の車載機器と前記第２の車載機器との間でデータを中継し、
前記第１の車載機器又は前記第２の車載機器のデータに不正がある場合、前記車載機器を搭載する車両の走行状態に応じて、前記中継を停止する
ことをコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、車載ネットワークにおいてデータの中継を行う車載中継装置、中継方法及びプログラムに関する。
【背景技術】
【０００２】
近年、自動車の内部には、車載ネットワークが搭載されている。例えば、特許文献１は、車載ネットワークを中継する車載中継装置を開示している。特許文献１の車載中継装置は、ルータ又はゲートウェイからなり、データ送信対象となるＥＣＵ（電子制御ユニット、Electronic Control Unit）の状態及び電圧を監視して伝送を制御するように構成されている。特許文献１において、ゲートウェイからなる車載中継装置は、電圧検出部でバッテリ電圧を監視する。車載中継装置は、電圧の低下が検出された場合に、特定のＥＣＵを送信先としたデータ送信について、送信の停止又は送信先の変更を行う。例えば、車載中継装置は、電源ラインの電圧の低下が検出されたＥＣＵの動作に支障があると判断すると、そのＥＣＵを送信先とするデータの転送を停止する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３４９９６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の車載中継装置は、データを送信する任意の車載機器が攻撃を受けて、不正なデータを送信する場合、データの送信元の車載機器を監視していないため、攻撃及び不正を検知できない。そのため、車載中継装置は、不正なデータを送信する車載機器による制御を止めることができない。
【０００５】
本開示は、車載機器に接続され且つ攻撃を受けた車載機器からの不正な制御を停止する車載中継装置、中継方法及びプログラムを提供する。
【課題を解決するための手段】
【０００６】
本開示の一態様に係る車載中継装置は、車両に搭載され且つ車載機器間のデータの送受信を中継する車載中継装置であって、第１の車載機器とデータを送受信する第１の通信部と、第２の車載機器とデータを送受信する第２の通信部と、前記第１の通信部と前記第２の通信部との間でのデータの中継を制御する制御部とを備え、前記制御部は、前記第１の通信部又は前記第２の通信部から受信された受信データに不正がある場合、前記車両の走行状態に応じて、前記中継を停止する。
【０００７】
本開示の一態様に係る中継方法は、車載機器間のデータの送受信を中継する中継方法であって、第１の車載機器とデータを送受信し、第２の車載機器とデータを送受信し、前記第１の車載機器と前記第２の車載機器との間でデータを中継し、前記第１の車載機器又は前記第２の車載機器のデータに不正がある場合、前記車載機器を搭載する車両の走行状態に応じて、前記中継を停止する。
【０００８】
本開示の一態様に係るプログラムは、第１の車載機器とデータを送受信し、第２の車載機器とデータを送受信し、前記第１の車載機器と前記第２の車載機器との間でデータを中継し、前記第１の車載機器又は前記第２の車載機器のデータに不正がある場合、前記車載機器を搭載する車両の走行状態に応じて、前記中継を停止することをコンピュータに実行させる。
【０００９】
なお、上記の包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読取可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）等の不揮発性の記録媒体を含む。
【発明の効果】
【００１０】
本開示の車載中継装置等によれば、車載機器に接続され且つ攻撃を受けた車載機器からの不正な制御を停止することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る車載中継装置を備える車載ネットワークの機能的な構成の一例を示すブロック図
【図２】実施の形態１に係る第一車載中継装置の機能的な構成の一例を示すブロック図
【図３】実施の形態１に係る第一車載中継装置の処理の一例を示すフローチャート
【図４】実施の形態１に係る第一車載中継装置のポート接続変更処理の一例を示すフローチャート
【図５】実施の形態１に係る第一車載中継装置の記憶部に記憶されている受信ポート記憶テーブルの一例を示す図
【図６Ａ】実施の形態１に係る第一車載中継装置の記憶部に記憶されているポート接続記憶テーブルの一例を示す図
【図６Ｂ】実施の形態１に係る第一車載中継装置の記憶部に記憶されているポート接続記憶テーブルの別の一例を示す図
【図７】実施の形態１に係る第一車載中継装置の電源投入時のポート間の接続関係の反映処理の一例を示すフローチャート
【図８】実施の形態１に係る第一車載中継装置の通常転送処理の一例を示すフローチャート
【図９】実施の形態１に係る第一車載中継装置の記憶部に記憶されているＩＤ−ＭＡＣ変換テーブルの一例を示す図
【図１０】実施の形態１に係る第一車載中継装置の記憶部に記憶されているＭＡＣアドレス変換テーブルの一例を示す図
【図１１】実施の形態１に係る第一車載中継装置のポート接続変更処理の変形例を示すフローチャート
【図１２】実施の形態２に係る第一車載中継装置を備える車載ネットワークの機能的な構成の一例を示すブロック図
【図１３】実施の形態２に係る第一車載中継装置の機能的な構成の一例を示すブロック図
【図１４】実施の形態２に係る第一車載中継装置の処理の一例を示すフローチャート
【図１５】実施の形態２に係る第一車載中継装置の中継可否判定処理の一例を示すフローチャート
【図１６】実施の形態２に係る第一車載中継装置の記憶部に記憶されている受信ＭＡＣアドレス記憶テーブルの一例を示す図
【図１７】実施の形態２に係る第一車載中継装置の通常転送処理の一例を示すフローチャート
【図１８】実施の形態２に係る第一車載中継装置の電源投入時の中継可否判定条件の反映処理の一例を示すフローチャート
【図１９】実施の形態２に係る第一車載中継装置の中継可否判定処理の変形例を示すフローチャート
【図２０】実施の形態３に係る第一車載中継装置を備える車載ネットワークの機能的な構成の一例を示すブロック図
【図２１】実施の形態３に係る第一車載中継装置の機能的な構成の一例を示すブロック図
【図２２】実施の形態３に係る第一車載中継装置の処理の一例を示すフローチャート
【図２３】実施の形態３に係る第一車載中継装置の通常転送処理の一例を示すフローチャート
【図２４】実施の形態３に係る第一車載中継装置の記憶部に記憶されている受信ＩＰアドレス記憶テーブルの一例を示す図
【図２５】実施の形態３に係る第一車載中継装置の不正検知処理の一例を示すフローチャート
【図２６】実施の形態３に係る第一車載中継装置の不正検知処理の変形例を示すフローチャート
【発明を実施するための形態】
【００１２】
［発明者の知見］
自動車の内部に搭載されている車載ネットワークは、年々進歩を続けている。例えば、従来のコントローラエリアネットワーク（Controller Area Network、以下「CAN」とも記載）等の車載ネットワークに加え、最近では車載イーサネット（登録商標）（Ethernet）を一部適用した自動車も市場に出ている。今後、車載ネットワークに占めるイーサネット（登録商標）の割合が増加することが予想されている。加えて、携帯電話ネットワーク等の外部ネットワークと車載ネットワークとが接続されるケースも増えている。来る自動運転車においては、道路状況及び高精度地図情報等の送受信のために、車載ネットワークと外部ネットワークとの接続が必須になるものと考えられる。
【００１３】
また、ブレーキアシスト、自動駐車及びレーンキープアシストに代表される先進運転支援システム（Advanced Driver Assistance System、以下「ＡＤＡＳ」とも記載）の普及に伴い、ブレーキＥＣＵ等の車体制御ＥＣＵが、車載ネットワーク経由で送られてくる制御データにより制御されるようになってきている。
【００１４】
このように、外部ネットワークへの接続の増加及びネットワーク経由での車体制御の増加に伴い、自動車へのサイバー攻撃のリスクが高まっている。例えば、携帯電話ネットワークから走行中の車のハンドル又はブレーキを操作する攻撃の実例も発表されている。このため、自動車におけるセキュリティ対策が求められ、車載ネットワークにおいてもセキュリティ対応が必要になると考えられる。
【００１５】
従来の車載中継装置は、特許文献１に開示されるように、データ送信対象となるＥＣＵの状態又は電圧を監視して伝送を制御するように構成されている。特許文献１に開示されるゲートウェイからなる車載中継装置は、電圧検出部でバッテリ電圧を監視する。この車載中継装置は、電圧の低下が検出された場合に、特定のＥＣＵを送信先としたデータ送信について、その制御部で送信の停止又は送信先の変更を行う。例えば、車載中継装置は、電源ラインの電圧の低下が検出されたＥＣＵの動作に支障があると判断すると、そのＥＣＵを送信先とするデータの転送を停止する。
【００１６】
しかしながら、データを送信する任意の車載機器が攻撃を受けて、不正なデータを送信する場合、上記のような従来の車載中継装置は、データの送信元の車載機器を監視していないため、攻撃及び不正を検知できない。そのため、車載中継装置は、不正なデータを送信する車載機器による制御を止めることができない。
【００１７】
また、従来の車載中継装置では、転送の停止判定が送信先ＩＤのみを用いて行われるため、転送の停止が決定された送信先ＩＤの車載機器に対して、全てのデータの転送が停止される。このため、転送停止が決定された送信先ＩＤの車載機器に対して、診断装置又は診断サーバによる診断コマンドの転送も復旧に必要なコマンドの転送もできなくなる。
【００１８】
また、従来の車載中継装置では、不正な車載機器からデータを転送する場合、データの転送が停止された車載機器にはデータの転送がされないが、データの転送が停止されていない車載機器にはデータの転送がされるという状況が起こりうる。そのため、不正な車載機器を送信元とする不正なデータによる攻撃を確実に防ぐことができない。
【００１９】
そこで、本発明者らは、車載ネットワークにおいて、任意の車載機器が攻撃を受け、不正なデータを送信している可能性があることが検知された際に、その車載機器からの不正な制御を停止する技術を検討した。例えば、本発明者らは、攻撃により任意の車載機器が攻撃を受け、不正なデータを送信している場合に、解析又は復旧を可能にしながら他の車載機器への影響を抑える技術を検討した。そして、本発明らは、以下に示すような技術を創案した。
【００２０】
本開示の一態様に係る車載中継装置は、車両に搭載され且つ車載機器間のデータの送受信を中継する車載中継装置であって、第１の車載機器とデータを送受信する第１の通信部と、第２の車載機器とデータを送受信する第２の通信部と、前記第１の通信部と前記第２の通信部との間でのデータの中継を制御する制御部とを備え、前記制御部は、前記第１の通信部又は前記第２の通信部から受信された受信データに不正がある場合、前記車両の走行状態に応じて、前記中継を停止する。
【００２１】
上記態様によると、車載中継装置は、受信データに不正がある場合、第１の通信部と第２の通信部との間でのデータの中継を停止することにより、不正のある車載機器から送信されたデータの転送を停止し、不正のある車載機器による不正制御を抑えることができる。さらに、車載中継装置は、中継の停止を、車両の走行状態に応じて行う。これにより、中継が停止されることにより、車両の走行が不安定になることが抑えられる。
【００２２】
本開示の一態様に係る車載中継装置において、前記第１の通信部及び前記第２の通信部の少なくとも１つは、ネットワークを介して、前記車載機器と送受信してもよい。
【００２３】
上記態様によると、ネットワークを介することによって、１つの通信部に複数の車載機器を接続することできる。車載中継装置が中継する車載機器の数量を増加することが可能になる。
【００２４】
本開示の一態様に係る車載中継装置は、前記第１の通信部と前記第１の車載機器とを接続するための第１のポートと、前記第２の通信部と前記第２の車載機器とを接続するための第２のポートとをさらに備え、前記制御部は、前記第１のポートと前記第２のポートとの間の接続を遮断することによって、前記中継を停止してもよい。
【００２５】
上記態様によると、車載中継装置は、受信データに不正がある場合、ポート間におけるデータの中継を停止し、不正化した車載機器とのデータの転送を停止する。これにより、車載中継装置は、不正化した車載機器による不正制御を抑え、且つ、不正化した車載機器から他の車載機器への影響を抑える。例えば、ポート間におけるデータの中継を停止は、ＣＡＮのようなバス型ネットワークに接続された車載機器とのデータの転送の停止を可能にする。
【００２６】
本開示の一態様に係る車載中継装置において、前記制御部は、不正がある前記受信データの送信元の前記車載機器を宛先又は送信元とするＭＡＣアドレスを含むデータの中継を停止することによって、前記中継を停止してもよい。
【００２７】
上記態様によると、車載中継装置は、受信データに不正がある場合、不正がある受信データの送信元の車載機器を宛先又は送信元とするＭＡＣアドレスを含むデータの中継を停止する。これにより、車載中継装置は、不正化した車載機器とのデータの転送を停止することできる。例えば、このような中継の停止は、イーサネット（登録商標）に接続された車載機器とのデータの転送の停止を可能にする。
【００２８】
本開示の一態様に係る車載中継装置において、前記制御部は、不正がある前記受信データの送信元の前記車載機器を宛先又は送信元とするＩＰアドレスを含むデータの中継を停止することによって、前記中継を停止してもよい。
【００２９】
上記態様によると、車載中継装置は、受信データに不正がある場合、不正がある受信データの送信元の車載機器を宛先又は送信元とするＩＰアドレスを含むデータの中継を停止する。これにより、車載中継装置は、不正化した車載機器とのデータの転送を停止することできる。例えば、このような中継の停止は、イーサネット（登録商標）に接続された車載機器とのデータの転送の停止を可能にする。さらに、１つの通信部に複数の車載機器が接続されていても、ＩＰアドレスは、データの送信元の特定を可能にする。よって、個別の車載機器とのデータの転送の停止が可能になる。
【００３０】
本開示の一態様に係る車載中継装置において、前記制御部は、前記受信データに不正があることを通知する不正検知データを、前記第１の通信部又は前記第２の通信部から受信し、前記不正検知データの受信後、所定時間経過後に前記中継を停止してもよい。
【００３１】
上記態様によると、車載中継装置が不正検知データを受信してから中継を停止するまでに、所定時間ある。このため、車載中継装置が搭載されている車両の操作者は、車両の制御を切り替えることができる。例えば、操作者は、車両の自動運転機能等をオフして手動運転に切り替えることができる。例えば、不正な車載機器が、自動運転機能に関連するＥＣＵであるような場合に、そのＥＣＵからのデータの中継が突然停止してしまうと、車両が無制御の状態になってしまう可能性がある。車載中継装置は、車両の無制御の状態を抑制することができる。
【００３２】
本開示の一態様に係る車載中継装置において、前記車両は、自動運転機能を備え、前記制御部は、前記受信データに不正があることを通知する不正検知データを、前記第１の通信部又は前記第２の通信部から受信し、前記不正検知データの受信後、前記車両の走行状態として、前記自動運転機能がオフ状態であることを通知するデータを受信すると前記中継を停止してもよい。
【００３３】
上記態様によると、車載中継装置は、自動運転機能がオフ状態であることを通知するデータを受信すると中継を停止する。例えば、不正な車載機器が、自動運転機能に関連するＥＣＵであるような場合に、そのＥＣＵからのデータの中継を突然停止してしまうと、車両が無制御の状態になってしまう可能性がある。車載中継装置は、車両の無制御の状態を抑制することができる。
【００３４】
本開示の一態様に係る車載中継装置において、前記不正検知データは、不正が検出されたデータの情報と、前記不正が検出されたデータの送信元の情報とを含んでもよい。
【００３５】
上記態様によると、車載中継装置は、不正検知データを受信することによって、不正が検出された車載機器を特定することができる。
【００３６】
本開示の一態様に係る車載中継装置は、前記不正が検出されたデータの情報と、前記不正が検出されたデータの送信元の情報とを対応付けて格納する記憶部をさらに備え、前記制御部は、前記記憶部の前記不正が検出されたデータの情報と前記不正が検出されたデータの送信元の情報とに基づき、前記不正が検出されたデータの送信元を特定してもよい。
【００３７】
上記態様によると、車載中継装置は、記憶部を参照することによって、過去に遡って不正が検出された車載機器を特定することができる。
【００３８】
本開示の一態様に係る車載中継装置は、第３の車載機器とデータを送受信する第３の通信部をさらに備え、前記制御部は、前記第１の通信部から受信された受信データに不正がある場合、前記第１の通信部と前記第２の通信部との間でのデータの中継を停止し、前記第１の通信部と前記第３の通信部との間でのデータの中継を継続してもよい。
【００３９】
上記態様によると、第１の通信部と第２の通信部との間でのデータの中継が停止された状態において、受信データに不正がある第１の通信部と第３の通信部との間でのデータの中継を利用することで、不正な車載機器の解析又はソフトウェア・ファームウェアの更新による対応が容易になる。
【００４０】
本開示の一態様に係る車載中継装置において、前記第３の車載機器には、前記第１の車載機器の状態を診断する診断機器が接続されてもよい。
【００４１】
上記態様によると、中継の停止後も、不正化したと考えられる車載機器に対して診断機器による診断又はソフトウェアの更新が可能となる。
【００４２】
本開示の一態様に係る車載中継装置において、前記第３の車載機器は、外部と通信可能な通信ユニットであってもよい。
【００４３】
上記態様によると、中継の停止後も、不正化したと考えられる車載機器に対して外部通信による診断又はソフトウェア更新が可能となる。
【００４４】
本開示の一態様に係る車載中継装置において、前記制御部は、前記第１の通信部又は前記第２の通信部から受信された受信データに不正がある場合、前記第１の通信部又は前記第２の通信部から前記中継の停止の解除を要求するデータを受信すると、停止している前記中継を再開してもよい。
【００４５】
上記態様によると、車載中継装置は、受信データに不正がある場合、不正な車載機器に対して適切な対応が行われた後、中継を再開することで、不正が検知される前の正常な状態に戻ることができる。
【００４６】
本開示の一態様に係る車載中継装置は、前記第１の車載機器と前記第２の車載機器との中継状況を記憶する記憶部をさらに備え、前記制御部は、前記車載中継装置の電源投入時に、前記記憶部に記憶されている前記中継状況に基づいて、前記第１の車載機器と前記第２の車載機器との中継を維持又は停止してもよい。
【００４７】
上記態様によると、車載中継装置は、電源オフの後に電源オンされた場合、中継状態を電源オフ前と同じ状態にすることができ、電源オフ前と同様に中継維持又は中継停止にすることができる。車載中継装置は、電源のオン及びオフによって、中継を停止していた不正データの中継が意図せず再開されることを防ぐことができる。
【００４８】
本開示の一態様に係る中継方法は、車載機器間のデータの送受信を中継する中継方法であって、第１の車載機器とデータを送受信し、第２の車載機器とデータを送受信し、前記第１の車載機器と前記第２の車載機器との間でデータを中継し、前記第１の車載機器又は前記第２の車載機器のデータに不正がある場合、前記車載機器を搭載する車両の走行状態に応じて、前記中継を停止する。上記態様によると、本開示の一態様に係る車載中継装置と同様の効果が得られる。
【００４９】
本開示の一態様に係るプログラムは、第１の車載機器とデータを送受信し、第２の車載機器とデータを送受信し、前記第１の車載機器と前記第２の車載機器との間でデータを中継し、前記第１の車載機器又は前記第２の車載機器のデータに不正がある場合、前記車載機器を搭載する車両の走行状態に応じて、前記中継を停止することをコンピュータに実行させる。上記態様によると、本開示の一態様に係る車載中継装置と同様の効果が得られる。
【００５０】
本開示の別の一態様に係る車載中継装置は、第１のネットワークからデータを受信する第１の受信部と、前記第１のネットワークへデータを送信する第１の送信部と、第２のネットワークからデータを受信する第２の受信部と、前記第２のネットワークへデータを送信する第２の送信部と、前記第１のネットワークと前記第２のネットワークのデータとの中継を制御する制御部と、を備え、前記第１の受信部から受信した第１のデータが不正を検知したことを通知するための不正検知データである場合、前記制御部は、前記第１のネットワークと前記第２のネットワークとの中継を停止する。
【００５１】
上記構成によれば、車載中継装置は、不正検知データ受信した際に、不正検知データを受信したネットワークとのデータの中継を停止することにより、そのネットワークに含まれる不正なＥＣＵ等の車載機器から送信されたデータの転送を停止し、不正な車載機器による不正制御を抑えることができる。
【００５２】
本開示の別の一態様に係る車載中継装置において、前記第１のデータが前記不正検知データである場合、前記制御部は、前記第１のデータを受信した後、所定時間経過後に前記第１のネットワークと前記第２のネットワークとの中継を停止してもよい。
【００５３】
上記構成によれば、不正検知データを受信してから、不正検知データを受信したネットワークとのデータの中継を停止するまでの所定時間で、車載中継装置が搭載されている車両の操作者は自動運転機能等をオフして手動運転に切り替えることが可能になる。例えば、不正検知データを受信したネットワークに含まれる不正な車載機器が、自動運転機能に関連するＥＣＵであるような場合に、そのＥＣＵからのデータの中継を突然停止してしまうと、車両が無制御の状態になってしまう可能性を低減できる。
【００５４】
本開示の別の一態様に係る車載中継装置において、前記第１のデータが前記不正検知データである場合、前記第１のデータを受信した後、前記第１の受信部または前記第２の受信部から自動運転機能がオフ状態であることを通知する第２のデータを受信した場合、前記制御部は、前記第１のネットワークと前記第２のネットワークとの中継を停止してもよい。
【００５５】
本開示の別の一態様に係る車載中継装置は、第３のネットワークからデータを受信する第３の受信部と、前記第３のネットワークへデータを送信する第３の送信部と、を更に備え、前記第１のデータが前記不正検知データである場合、前記第１のデータを受信した後、前記第３の受信部から自動運転機能がオフ状態であることを通知する第２のデータを受信した場合、前記制御部は、前記第１のネットワークと前記第２のネットワークとの中継を停止してもよい。
【００５６】
上記構成によれば、自動運転機能がオフ状態であることを通知する第２のデータを受信した後に第１のネットワークと第２のネットワークとの中継を停止するので、例えば、不正検知データを受信したネットワークに含まれる不正な車載機器が、自動運転機能に関連するＥＣＵであるような場合に、そのＥＣＵからのデータの中継を突然停止してしまうと、車両が無制御の状態になってしまう可能性を低減できる。
【００５７】
本開示の別の一態様に係る車載中継装置は、第３のネットワークからデータを受信する第３の受信部と、前記第３のネットワークへデータを送信する第３の送信部と、を更に備え、前記第１のデータが前記不正検知データである場合、前記制御部は、前記第１のネットワークと前記第２のネットワークとの中継を停止し、前記第１のネットワークと前記第３のネットワークとの中継は継続してもよい。
【００５８】
本構成によれば、接続制限後の解析やソフトウェア・ファームウェアの更新による対応が容易になる。
【００５９】
本開示の別の一態様に係る車載中継装置において、前記第３のネットワークには、前記第１のネットワークに接続された車載機器と通信を行い、前記車載機器の状態を診断する診断機器が接続されてもよい。
【００６０】
上記構成によると、第１のネットワークと第２のネットワークとの中継を停止した後も、不正化したと考えられる車載機器に対して診断機器による診断やソフトウェアの更新が可能となる。
【００６１】
本開示の別の一態様に係る車載中継装置において、前記第３のネットワークには外部と通信可能な通信ユニットが接続されてもよい。
【００６２】
上記構成によれば、第１のネットワークと第２のネットワークとの中継を停止した後も、不正化したと考えられる車載機器に対して外部通信による診断やソフトウェア更新が可能となる。
【００６３】
本開示の別の一態様に係る車載中継装置において、前記第１のデータを受信した後、前記第１の受信部または前記第２の受信部から前記第１のネットワークと前記第２のネットワークとの中継停止の解除を要求する第３のデータを受信した場合、前記制御部は、前記第１のネットワークと前記第２のネットワークとの中継を再開してもよい。
【００６４】
上記構成によれば、不正検知データの受信後に不正な車載機器に対して適切な対応が行われた後、第１のネットワークと第２のネットワークとの中継を再開することで、不正検知データを受信する前の正常な状態に戻ることができる。
【００６５】
本開示の別の一態様に係る車載中継装置において、前記第１のネットワークと前記第２のネットワークとの中継状況を記憶する記憶部を更に備え、前記制御部は、前記車載中継装置の電源投入時に、前記記憶部に記憶されている前記中継状況に基づいて、前記第１のネットワークと前記第２のネットワークとの中継を維持または停止してもよい。
【００６６】
上記構成によれば、電源オフの後電源オンされた場合に、第１のネットワークと第２のネットワークとの中継状況を電源オフ前と同じ、中継維持又は中継停止にすることができ、不正データが中継されることを防ぐことができる。
【００６７】
本開示の別の一態様に係る車載中継装置は、前記第１の受信部と前記第１の送信部とを前記第１のネットワークに接続するための第１のポートと、前記第２の受信部と前記第２の送信部とを前記第２のネットワークへ接続するための第２のポートと、を更に備え、前記第１のネットワークと前記第２のネットワークとのデータの中継の停止は、前記第１のポートと前記第２のポートとの中継の停止であってもよい。
【００６８】
上記構成によれば、不正検知データを受信した際に、不正検知データを送信したポートに対してデータの中継を停止することにより、不正化した車載機器とのデータの転送を停止し、不正化した車載機器による不正制御を抑えることが可能となると共に、他の車載機器への影響を抑えることができる。
【００６９】
本開示の別の一態様に係る車載中継装置において、前記第１のネットワークと前記第２のネットワークとのデータの中継の停止は、前記第１のネットワークを介して接続される第１のＭＡＣアドレスで示される車載機器と、前記第２のポートとの中継の停止であってもよい。
【００７０】
上記構成によれば、不正検知データを受信した際に、不正検知データを送信したＭＡＣアドレスで示される車載機器に対してデータの中継を停止することにより、不正化した車載機器とのデータの転送を停止し、不正化した車載機器による不正制御を抑えることが可能となると共に、他の車載機器への影響を抑えることができる。
【００７１】
本開示の別の一態様に係る車載中継装置において、前記第１のネットワークと前記第２のネットワークとのデータの中継の停止は、前記第１のネットワークを介して接続される第１のＩＰアドレスで示される車載機器と、前記第２のポートとの中継の停止であってもよい。
【００７２】
上記構成によれば、不正検知データを受信した際に、不正検知データを送信したＩＰアドレスで示される車載機器に対してデータの中継を停止することにより、不正化した車載機器とのデータの転送を停止し、不正化した車載機器による不正制御を抑えることが可能となると共に、他の車載機器への影響を抑えることができる。
【００７３】
なお、上記の包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読取可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ等の不揮発性の記録媒体を含む。また、装置は、１つ以上の装置で構成されてもよい。装置が２つ以上の装置で構成される場合、当該２つ以上の装置は、１つの機器内に配置されてもよく、分離した２つ以上の機器内に分かれて配置されてもよい。本明細書及び特許請求の範囲では、「装置」とは、１つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
【００７４】
以下、本開示に係る車載中継装置等について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、構成要素、構成要素の配置位置及び接続形態、ステップ（工程）、並びにステップの順序等は、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は模式図であり、必ずしも厳密に図示されたものではない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。
【００７５】
（実施の形態１）
以下の実施の形態において、車載中継装置及び車載ネットワークは、自動運転機能を備える自動車に搭載されるとして説明する。自動運転機能は、運転支援に該当する自動運転レベル１から完全自動運転に該当する自動運転レベル５までのいかなる自動運転レベルであってもよい。
【００７６】
図１は、実施の形態１に係る車載中継装置１００を備える車載ネットワーク１０００の機能的な構成の一例を示すブロック図である。図１に示すように、実施の形態１に係る車載ネットワーク１０００は、車載中継装置１００、１２０ａ、１２０ｂ及び１２０ｃと、ＩＶＩ（車載インフォテインメント、In-Vehicle Infotainment）機器１２４と、センサ１２６と、カメラ１２８と、ＡＤＡＳＥＣＵ１３０と、ブレーキＥＣＵ１３２と、ステアリングＥＣＵ１３４と、通信ユニット１３６と、解析インタフェース（以下、「Ｉ／Ｆ」とも記載）１３８と、不正検知装置１４０とを、構成要素として含む。さらに、車載ネットワーク１０００は、上記構成要素間を接続するネットワークとして、ＣＡＮ１４２と、イーサネット（登録商標）１４４、１４６、１４８及び１５０とを含む。
【００７７】
以下において、車載中継装置１００を「第一車載中継装置」とも呼び、車載中継装置１２０ａ、１２０ｂ及び１２０ｃを「第二車載中継装置」とも呼ぶ。以下の実施の形態において、第二車載中継装置は、従来技術の車載中継装置であり、第一車載中継装置は、本開示の新規な車載中継装置である。なお、第二車載中継装置に第一車載中継装置が適用されてもよい。第一車載中継装置１００及び第二車載中継装置１２０ａ、１２０ｂ及び１２０ｃの例は、ゲートウェイ、Ｓｗｉｔｃｈ、ルータ又はこれらの機能を内蔵した装置である。
【００７８】
実施の形態１に係る第一車載中継装置１００は、ポートＡ１０２、ポートＢ１０４、ポートＣ１０６、ポートＤ１０８及びポートＥ１１０の５つのポートを備える。
【００７９】
ポートＡ１０２は、イーサネット（登録商標）１４４を介して、第二車載中継装置１２０ｃと接続される。第二車載中継装置１２０ｃは、通信ユニット１３６及び解析Ｉ／Ｆ１３８と接続される。通信ユニット１３６は、ＴＣＵ（テレマティクス・コントロール・ユニット、Telematics Communication Unit）であり、携帯電話網又はＷｉ−Ｆｉ（Wireless Fidelity）等の外部ネットワーク網との接続を行う機器である。解析Ｉ／Ｆ１３８は、車内機器のテスト又は解析を行うために外部機器と接続するためのＩ／Ｆである。
【００８０】
ポートＢ１０４は、ＣＡＮ１４２を介して、不正検知装置１４０、ブレーキＥＣＵ１３２及びステアリングＥＣＵ１３４と接続される。不正検知装置１４０は、ＣＡＮ１４２を介して受信されたデータに対して不正検知する機能を有し、且つ、エラーフレームによる不正データの無効化を行う機能を有している。ブレーキＥＣＵ１３２は、ＣＡＮ１４２を介して受信されたデータに基づいてブレーキ制御を行う車載機器である。ステアリングＥＣＵ１３４は、ＣＡＮ１４２を介して受信されたデータに基づきステアリング制御を行う車載機器である。ＣＡＮ１４２上では、車体制御に関するデータ、車速及び加速度等の自車の車両状態に関するデータが送受信される。
【００８１】
ポートＣ１０６は、イーサネット（登録商標）１４６を介して、第二車載中継装置１２０ａと接続される。第二車載中継装置１２０ａは、ＩＶＩ機器１２４と接続されている。ＩＶＩ機器１２４は、ナビゲーション機能、並びに音楽及び動画などのマルチメディア再生機能等の機能を備える。ＩＶＩ機器１２４はさらに、ＡＤＡＳＥＣＵ１３０に関する機能設定のためのインタフェースを備える。ＡＤＡＳＥＣＵ１３０に対して自動運転機能のオン又はオフが設定されると、ＩＶＩ機器１２４は、ＡＤＡＳＥＣＵ１３０へ自動運転機能オンの通知又は自動運転機能オフの通知を送信する。また、不正を検知したことを通知するデータが受信された場合に、ＩＶＩ機器１２４は、自動車の運転者に不正の検知を通知し、ＡＤＡＳＥＣＵ１３０に対して自動運転機能のオフの設定を促すことができる。
【００８２】
ポートＤ１０８は、イーサネット（登録商標）１４８を介して、第二車載中継装置１２０ｂと接続される。第二車載中継装置１２０ｂは、センサ１２６及びカメラ１２８と接続されている。センサ１２６及びカメラ１２８は、自車の周辺環境に関する情報を収集し、収集した情報を第二車載中継装置１２０ｂからイーサネット（登録商標）１４８へ送信する機器である。センサ１２６の例は、ＬＩＤＡＲ（Light Detection and Ranging）などのレーザ光センサ、磁気センサ及び超音波センサ等である。
【００８３】
ポートＥ１１０は、イーサネット（登録商標）１５０を介して、ＡＤＡＳＥＣＵ１３０と接続される。ＡＤＡＳＥＣＵ１３０は、以下のような機能を備えた車載機器である。つまり、ＡＤＡＳＥＣＵ１３０は、センサ１２６及びカメラ１２８から得られる情報、ＩＶＩ機器１２４から得られる地図情報、並びに、ＣＡＮ１４２から得られる制御情報を元に、自車の周辺状況及び自車の状況を認識し、次に行うべき車両制御を決定する。さらに、ＡＤＡＳＥＣＵ１３０は、車両制御データをブレーキＥＣＵ１３２及びステアリングＥＣＵ１３４等の車両制御用のＥＣＵに送信する。ＡＤＡＳＥＣＵ１３０は、自動運転機能がオンに設定されている際に車両制御データを送信する。
【００８４】
車載ネットワーク１０００において、不正検知装置１４０は、ＣＡＮ１４２上のデータに対して、データの不正検知を行う。不正検知装置１４０は、ＣＡＮ１４２上で送受信される全てのデータについて、データのＩＤ、データの周期及びデータの値等の監視を行う。不正検知装置１４０は、データに対して不正を検知した場合、不正と判定されたデータに付与されているＩＤを、不正検知の通知と共に第一車載中継装置１００に送信する。
【００８５】
不正検知装置１４０は、ＣＰＵ（Central Processing Unit）又はＤＳＰ（Digital Signal Processor）等のプロセッサ、並びに、ＲＡＭ（Random Access Memory）及びＲＯＭ（Read-Only Memory）等のメモリなどからなるコンピュータシステム（図示せず）により構成されてもよい。不正検知装置１４０の一部又は全部の機能は、ＣＰＵ又はＤＳＰがＲＡＭを作業用のメモリとして用いてＲＯＭに記録されたプログラムを実行することによって達成されてもよい。また、不正検知装置１４０の一部又は全部の機能は、電子回路又は集積回路等の専用のハードウェア回路によって達成されてもよい。不正検知装置１４０の一部又は全部の機能は、上記のソフトウェア機能とハードウェア回路との組み合わせによって構成されてもよい。
【００８６】
第一車載中継装置１００の構成を説明する。図２は、実施の形態１に係る第一車載中継装置１００の機能的な構成の一例を示すブロック図である。図２に示すように、車載中継装置１００は、ポートＡ１０２、ポートＢ１０４、ポートＣ１０６、ポートＤ１０８及びポートＥ１１０に加えて、以下の構成要素を備える。車載中継装置１００は、ポートＡ１０２の受信部４００及び送信部４１６と、ポートＢ１０４の受信部４０２及び送信部４１８と、ポートＣ１０６の受信部４０４及び送信部４２０と、ポートＤ１０８の受信部４０６及び送信部４２２と、ポートＥ１１０の受信部４０８及び送信部４２４と、記憶部４１０と、接続制御部４１４とを備える。
【００８７】
受信部４００、４０２、４０４、４０６及び４０８、並びに送信部４１６、４１８、４２０、４２２及び４２４は、例えば、通信回路で構成される。ポートＡ１０２の受信部４００及び送信部４１６と、ポートＢ１０４の受信部４０２及び送信部４１８と、ポートＣ１０６の受信部４０４及び送信部４２０と、ポートＤ１０８の受信部４０６及び送信部４２２と、ポートＥ１１０の受信部４０８及び送信部４２４とはそれぞれ、通信部の一例である。
【００８８】
記憶部４１０は、データを格納する。記憶部４１０は、例えば、ＲＯＭ、ＲＡＭ、フラッシュメモリなどの半導体メモリ、ハードディスクドライブ、又はＳＳＤ（Solid State Drive）等の記憶装置によって実現される。記憶部４１０は、データを一時保管する揮発性記憶装置及び電源オフ時にもデータの保持が可能である不揮発性記憶装置で構成されてもよい。
【００８９】
接続制御部４１４は、ポート間の中継制御及び接続制御、受信データの宛先確認、データのフォーマット変更、不正検知データの受信、自動運転機能オン／オフデータの受信、並びに、ポートの制限解除の要求データの受信等を行う。接続制御部４１４は、ＣＰＵ又はＤＳＰ等のプロセッサ、並びに、ＲＡＭ及びＲＯＭ等のメモリなどからなるコンピュータシステム（図示せず）により構成されてもよい。接続制御部４１４の一部又は全部の機能は、ＣＰＵ又はＤＳＰがＲＡＭを作業用のメモリとして用いてＲＯＭに記録されたプログラムを実行することによって達成されてもよい。また、接続制御部４１４の一部又は全部の機能は、電子回路又は集積回路等の専用のハードウェア回路によって達成されてもよい。接続制御部４１４の一部又は全部の機能は、上記のソフトウェア機能とハードウェア回路との組み合わせによって構成されてもよい。接続制御部４１４は、制御部の一例である。
【００９０】
次に、図３を参照しつつ、実施の形態１に係る第一車載中継装置１００の動作を説明する。なお、図３は、実施の形態１に係る第一車載中継装置１００の処理の一例を示すフローチャートである。
【００９１】
まず、ステップＳ５００において、第一車載中継装置１００は、ポートＡ１０２の受信部４００、ポートＢ１０４の受信部４０２、ポートＣ１０６の受信部４０４、ポートＤ１０８の受信部４０６、及び、ポートＥ１１０の受信部４０８のいずれかのポートからデータを受信する。
【００９２】
次いで、ステップＳ５０２において、接続制御部４１４は、受信されたデータである受信データのＭＡＣ（Media Access Control）アドレス又はＣＡＮのＩＤから、受信データが自己宛、すなわち、第一車載中継装置１００宛のデータか否かを判定する。自己宛のデータでない場合（ステップＳ５０２でＮｏ）、接続制御部４１４は、ステップＳ５０４の処理を行う。自己宛のデータである場合（ステップＳ５０２でＹｅｓ）、接続制御部４１４は、ステップＳ５０６の処理を行う。
【００９３】
ステップＳ５０４において、接続制御部４１４は、通常の転送処理である後述する通常転送処理を行う。
【００９４】
ステップＳ５０６において、接続制御部４１４は、受信データが不正を検知したことを通知するための不正検知データであるか否かを判定する。不正検知データは、不正検知の通知と、不正と判定されたデータに付与されているＩＤとを含む。受信データが不正検知データである場合（ステップＳ５０６でＹｅｓ）、接続制御部４１４は、ステップＳ５０８の処理を行う。受信データが不正検知データでない場合（ステップＳ５０６でＮｏ）、接続制御部４１４は、ステップＳ５１０の処理を行う。
【００９５】
なお、不正検知データは、ポートＡ１０２〜ポートＥ１１０それぞれに接続された、車載機器、第二車載中継装置１２０ａ〜１２０ｃ又は不正検知装置１４０によって、第一車載中継装置１００に送られ得る。例えば、第二車載中継装置１２０ａ〜１２０ｃは、データの不正検知を行う不正検知機能を備え、不正検知データを送信するように構成されてもよい。ＩＶＩ機器１２４等のイーサネット（登録商標）１４４、１４６、１４８若しくは１５０又はＣＡＮ１４２に接続された車載機器は、不正検知機能を備え、不正検知データを送信するように構成されてもよい。
【００９６】
ステップＳ５０８において、接続制御部４１４は、ポート間の接続関係を変更するための後述するポート接続変更処理を行う。
【００９７】
ステップＳ５１０において、接続制御部４１４は、受信データが所定のポートに対する接続遮断の制限の解除を要求するための制限解除要求データであるか否かを判定する。受信データが制限解除要求データである場合（ステップＳ５１０でＹｅｓ）、接続制御部４１４は、ステップＳ５１２の処理を行う。受信データが制限解除要求データでない場合（ステップＳ５１０でＮｏ）、接続制御部４１４は、ステップＳ５１４の処理を行う。
【００９８】
ステップＳ５１２において、接続制御部４１４は、制限解除要求データに指定されているポートに対して、他のポートへの接続遮断の制限を解除する。接続制御部４１４は、記憶部４１０に記憶されている後述する受信ポート記憶テーブルを更新する。
【００９９】
ステップＳ５１４において、接続制御部４１４は、受信データが自動運転の機能がオフ状態であることを示す自動運転機能オフデータであるか否かを判定する。つまり、接続制御部４１４は、自動運転機能がオフ状態であるか否かを判定する。自動運転機能オフデータは、自動運転の機能をオフにするための指令等の自動運転の機能をオフにするためデータも含み得る。受信データが自動運転機能オフデータである場合（ステップＳ５１４でＹｅｓ）、接続制御部４１４は、ステップＳ５１６の処理を行う。受信データが自動運転機能オフデータでない場合（ステップＳ５１４でＮｏ）、接続制御部４１４は、ステップＳ５１８の処理を行う。
【０１００】
ステップＳ５１６において、接続制御部４１４は、自動運転機能がオフ状態であることを接続制御部４１４の内部に通知する。
【０１０１】
ステップＳ５１８において、受信データは、通常の制御パケットであるので、接続制御部４１４は、受信データの制御内容に応じた処理を行う。
【０１０２】
次に、図４を参照しつつ、ステップＳ５０８のポート接続変更処理の詳細を説明する。図４は、実施の形態１に係る第一車載中継装置１００のポート接続変更処理の一例を示すフローチャートである。
【０１０３】
まず、ステップＳ２１０２において、接続制御部４１４は、第一車載中継装置１００が備える図示しないタイマである変更待ちタイマをスタートし計時を開始する。
【０１０４】
次いで、ステップＳ２１０４において、接続制御部４１４は、不正検知データに含まれるＩＤから、検知された不正データを受信したポートを特定する。具体的には、接続制御部４１４は、記憶部４１０に記憶されている受信ポート記憶テーブルを用いて、検知された不正データを受信したポートを特定する。受信ポート記憶テーブルでは、データのＩＤと、受信ポートと、送信ポートとが対応付けられている。受信ポートは、当該データが第一車載中継装置１００に受信されるポートである。送信ポートは、受信された当該データが第一車載中継装置１００から送信されるポートである。受信ポート記憶テーブルは、様々なＩＤのデータの受信ポートから送信ポートへの流れを示す。受信ポート記憶テーブルは、接続制御部４１４によって記録される。
【０１０５】
ここで、図５は、実施の形態１に係る第一車載中継装置１００の記憶部４１０に記憶されている受信ポート記憶テーブルの一例を示す。図５に示すように、受信ポート記憶テーブル６００は、受信データに含まれるＩＤと、受信データを受信したポート（受信ポート）と、受信データを送信するポート（送信ポート）との組を列挙しているテーブルである。例えば、不正検知データに含まれるＩＤが「０ｘ１Ａ」である場合、受信ポート記憶テーブル６００において、ＩＤが「０ｘ１Ａ」である受信ポートは、「ポートＥ」であると特定できる。つまり、検知された不正データの受信ポートは、ポートＥ１１０であると特定できる。
【０１０６】
図４に戻り、接続制御部４１４は、検知された不正データを受信したポートの特定後、当該ポートと他のポートとの接続を遮断する。つまり、当該ポートの受信部及び送信部と、他のポートの受信部及び送信部との接続が遮断される。この接続の遮断の処理は、以下のステップＳ２１０６、Ｓ２１０８及びＳ２１１０の処理である。後述するように、接続制御部４１４は、接続の遮断を、所定時間経過後のタイミング又は自動運転機能オフデータを受信したタイミングで実施する。
【０１０７】
ステップＳ２１０６において、接続制御部４１４は、変更待ちタイマによって計時された時間であるタイマ値が所定値よりも大きい（タイマ値＞所定値）か否かを判定する。判定の結果、タイマ値が所定値よりも大きい場合（ステップＳ２１０６でＹｅｓ）、接続制御部４１４は、ステップＳ２１１０の処理を行う。判定の結果、タイマ値が所定値以下の場合（ステップＳ２１０６でＮｏ）、接続制御部４１４は、ステップＳ２１０８の処理を行う。
【０１０８】
ステップＳ２１０８において、接続制御部４１４は、自動運転機能オフデータを受信したか否かを判定する。判定の結果、自動運転機能オフデータを受信した場合（ステップＳ２１０８でＹｅｓ）、接続制御部４１４は、ステップＳ２１１０の処理を行う。判定の結果、自動運転機能オフデータを受信していない場合（ステップＳ２１０８でＮｏ）、接続制御部４１４は、ステップＳ２１０６の処理に戻る。なお、自動運転機能がオフされるタイミングは、不正検知データの受信後であっても受信前であってもよい。
【０１０９】
ステップＳ２１１０において、接続制御部４１４は、検知された不正データを受信したポートとそれ以外のポートとの接続を遮断する。例えば、検知された不正データを受信したポートが「ポートＥ」である場合、接続制御部４１４は、ポートＥとポートＡ、Ｂ、Ｃ及びＤとの接続を遮断する。
【０１１０】
ここで、図６Ａは、実施の形態１に係る第一車載中継装置１００の記憶部４１０に記憶されているポート接続記憶テーブルの一例を示す。図６Ａは、ステップＳ２１１０の処理後のポート接続記憶テーブルの一例を示す。図６Ａに示すように、ポート接続記憶テーブル２３００は、ポート間の接続可否を示すテーブルである。言い換えれば、ポート接続記憶テーブル２３００は、ポート間の接続関係を示す。接続制御部４１４は、ポート接続記憶テーブルに従って、ポート間を接続する。ポート接続記憶テーブル２３００において、縦軸は、第一車載中継装置１００の受信ポートを示し、横軸は、受信ポートの送信先の第一車載中継装置１００のポートを示す。受信ポート及び送信先のポートの間において、接続可能な状態である場合、「〇」で示され、接続不可能な状態である場合、「×」で示されている。
【０１１１】
接続制御部４１４は、上述のようにポート間の接続を遮断すると、記憶部４１０に記憶されているポート接続記憶テーブル２３００を更新する。例えば、ポートＥとポートＡ、Ｂ、Ｃ及びＤとの接続を遮断する場合、接続制御部４１４は、ポート接続記憶テーブル２３００において、ポートＥとポートＡ、Ｂ、Ｃ及びＤとが接続可であることを示す「○」から接続不可であることを示す「×」に変更して更新する。図６Ａにおいて、ポート接続記憶テーブル２３００の破線で囲まれた部分が更新されている。
【０１１２】
図４に戻り、ステップＳ２１１２において、接続制御部４１４は、変更待ちタイマをストップし、変更待ちタイマのタイマ値をクリアし、例えば「０」にする。
【０１１３】
次いで、ステップＳ２１１４において、接続制御部４１４は、特定ポートの接続設定の有無を確認する。特定ポートとは、不正化したＥＣＵなどの構成要素を解析する等の目的で準備されたポートである。本実施の形態では、解析Ｉ／Ｆ１３８が接続されたポートＡが特定ポートである。特定ポートの接続設定が有る、つまり特定ポートへの接続が設定されている場合（ステップＳ２１１４でＹｅｓ）、接続制御部４１４は、ステップＳ２１１６の処理を行う。特定ポートの接続設定が無い、つまり特定ポートへの接続が設定されていない場合（ステップＳ２１１４でＮｏ）、接続制御部４１４は、処理を終了する。
【０１１４】
なお、特定ポートの接続設定を示す情報は、接続される特定ポートの有無の情報、及び、ポート番号などの接続される特定ポートを指定する情報等である。このような情報は、予め設定され、例えば、第一車載中継装置１００又は第一車載中継装置１００を備える装置若しくはシステムの工場出荷時又は自動車への搭載時等に、記憶部４１０等に書き込まれてもよい。
【０１１５】
ステップＳ２１１６において、接続制御部４１４は、検知された不正データを受信したポートと特定のポートとを接続し、ポート接続記憶テーブル２３００を更新する。本実施の形態では、接続制御部４１４は、ポートＥとポートＡとを接続する。
【０１１６】
ここで、図６Ｂは、実施の形態１に係る車載中継装置１００の記憶部４１０に記憶されているポート接続記憶テーブルの別の一例を示す。図６Ｂは、ステップＳ２１１６の処理後のポート接続記憶テーブルの一例を示す。図６Ｂに示すように、ポート接続記憶テーブル２３００では、図６Ａのポート接続記憶テーブル２３００に対して、破線で囲まれた部分が更新されている。
【０１１７】
上記の接続により、接続制御部４１４は、ポートＥから受信されたデータの中継先を通信ユニット１３６又は解析Ｉ／Ｆ１３８に限定する。そして、通信ユニット１３６又は解析Ｉ／Ｆ１３８を介して、車載ネットワーク１０００の外部の図示しない診断装置又は診断サーバ等の診断機器によって、データの送信元の車載機器の診断が行われ、必要に応じてファームウェアのアップデートが行われる。これにより、検知された不正が修正され、当該車載機器を正常状態に戻すことが可能となる。当該車載機器を正常状態に戻した後に、診断機器は、通信ユニット１３６を介して、接続制御部４１４に制限解除要求データを送る。なお、制限解除要求データの送信は、通信ユニット１３６を介して送られるとしたが、これに限られない。他の経路や手段により制限解除要求データが送られてもよい。
【０１１８】
ここで、本実施の形態に係る第一車載中継装置１００は、上述したポート間の接続を変更した後に電源が切られ、その後、電源が再投入された時、電源切断前のポート間の接続関係を反映する。図７を参照しつつ、第一車載中継装置１００の電源切断前のポート間の接続関係を電源再投入後に反映させる処理を説明する。図７は、実施の形態１に係る第一車載中継装置１００の電源投入時のポート間の接続関係の反映処理の一例を示すフローチャートである。
【０１１９】
まず、ステップＳ１６００において、第一車載中継装置１００に電源が投入される。次いで、ステップＳ１６０２において、接続制御部４１４は、記憶部４１０からポート接続記憶テーブル２３００を読み出す。なお、ポート接続記憶テーブル２３００は、記憶部４１０が有する不揮発領域に記憶されている。次いで、ステップＳ１６０４において、接続制御部４１４は、読み出されたポート接続記憶テーブル２３００に基づいて、ポート間の接続の変更を行う、つまり、ポート間の接続を設定する。
【０１２０】
上述より、第一車載中継装置１００は、電源オフの後、電源が再投入されても電源オフ前と同じ関係に、ポート間の接続関係を戻すことが可能である。これにより、第一車載中継装置１００は、不正検知に伴い、ポートの接続関係が変更された後にエンジン停止等で電源オフされたとしても、初期状態に戻ることなく、不正データが第一車載中継装置１００を介して中継されることを防ぐことができる。
【０１２１】
次に、図８を参照しつつ、図３におけるステップＳ５０４の通常転送処理の詳細を説明する。図８は、実施の形態１に係る第一車載中継装置１００の通常転送処理の一例を示すフローチャートである。
【０１２２】
まず、ステップＳ２０００において、接続制御部４１４は、データを受信したポートがＣＡＮに接続されているかイーサネット（登録商標）に接続されているかを判定する。当該ポートがＣＡＮに接続されている場合（ステップＳ２０００でＹｅｓ）、接続制御部４１４は、ステップＳ２００２の処理を行う。当該ポートがイーサネット（登録商標）に接続されている場合（ステップＳ２０００でＮｏ）、接続制御部４１４は、ステップＳ２００６の処理を行う。
【０１２３】
ステップＳ２００２において、受信データはＣＡＮのプロトコルに従ったデータフォーマットであるので、接続制御部４１４は、受信データをイーサネット（登録商標）のプロトコルに従ったデータフォーマットに変換する。そのためには、受信データに含まれるＩＤは、ＭＡＣアドレスに変換されなければならない。接続制御部４１４は、受信データに含まれるＩＤをＭＡＣアドレスに変換するために、ＩＤ―ＭＡＣ変換テーブルを用いる。ＩＤ−ＭＡＣ変換テーブルは、ＣＡＮを介した受信データのＩＤと、当該ＩＤに対応する宛先のＭＡＣアドレスとを対応付けて記録している。接続制御部４１４は、ＩＤ―ＭＡＣ変換テーブルを用いて、受信データのＩＤに対応する宛先のＭＡＣアドレス、つまり宛先ＭＡＣアドレスを確認する。
【０１２４】
ここで、図９は、実施の形態１に係る第一車載中継装置１００の記憶部４１０に記憶されているＩＤ−ＭＡＣ変換テーブルの一例を示す。図９に示すように、ＩＤ−ＭＡＣ変換テーブル７００は、受信データに含まれるＩＤと当該ＩＤに対応する宛先ＭＡＣアドレスとの組を列挙しているテーブルである。例えば、受信データに含まれるＩＤが「０２」である場合、対応する宛先ＭＡＣアドレスは「ＭＡＣアドレスＢ」である。なお、本実施の形態では、ＩＤ−ＭＡＣ変換テーブルは、記憶部４１０が有する不揮発領域に記憶されるが、記憶部４１０が有する揮発領域に記憶されてもよい。
【０１２５】
図８に戻り、次いで、ステップＳ２００４において、接続制御部４１４は、ＩＤ−ＭＡＣ変換テーブル７００で確認された宛先ＭＡＣアドレスを用いて、受信データをイーサネット（登録商標）のプロトコルに従ったフォーマットに変換する。
【０１２６】
ステップＳ２００６において、接続制御部４１４は、受信データのヘッダに含まれる宛先ＭＡＣアドレスを用いて、送信先のポートである送信ポートを決定する。ステップＳ２００６の段階では、受信データは、受信されたポートがＣＡＮ及びイーサネット（登録商標）のいずれに接続されていても、イーサネット（登録商標）のプロトコルに従ったフォーマットである。接続制御部４１４は、受信データのヘッダに含まれる宛先ＭＡＣアドレスを用いて、記憶部４１０に記憶されているＭＡＣアドレス変換テーブルを参照することによって、受信データを送信する送信ポートを決定する。ＭＡＣアドレス変換テーブルは、受信データの宛先ＭＡＣアドレスと、当該宛先ＭＡＣアドレスに対応する送信ポートとを対応付けて記録している。
【０１２７】
ここで、図１０は、実施の形態１に係る第一車載中継装置１００の記憶部４１０に記憶されているＭＡＣアドレス変換テーブルの一例を示す。図１０に示すように、ＭＡＣアドレス変換テーブル８００は、受信データのヘッダに含まれる宛先ＭＡＣアドレスに対応する送信ポートを示すテーブルである。例えば、ＭＡＣアドレス変換テーブル８００において、受信データのヘッダに含まれる宛先ＭＡＣアドレスが「ＭＡＣアドレスＢ」である場合、対応する送信ポートは、ポート「Ａ」である。
【０１２８】
次いで、ステップＳ２００８において、接続制御部４１４は、受信データのポートと、ステップＳ２００６で決定された送信ポートとが接続可能な状態、つまり接続状態にあるか否かを判定する。接続制御部４１４は、ポート接続記憶テーブルを用いて、接続状態を判定する。接続状態であれば（ステップＳ２００８でＹｅｓ）、接続制御部４１４は、ステップＳ２０１０の処理を行う。接続状態でなければ（ステップＳ２００８でＮｏ）、接続制御部４１４は、処理を終了する。
【０１２９】
ステップＳ２０１０において、接続制御部４１４は、記憶部４１０に記憶されている図５に示すような受信ポート記憶テーブル６００を更新する。なお、記憶部４１０の容量に制限がある場合、接続制御部４１４は、受信ポート記憶テーブル６００の新しい内容を優先して記憶部４１０に記憶させるようにしてもよい。又は、接続制御部４１４は、送信ポート毎に、記憶される「送信ポート−ＩＤ−受信ポート」の組の数を制限してもよい。
【０１３０】
次いで、ステップＳ２０１２において、接続制御部４１４は、受信データが送信される送信ポートがＣＡＮに接続されているかイーサネット（登録商標）に接続されているかを判定する。送信ポートがＣＡＮに接続されている場合（ステップＳ２０１２でＹｅｓ）、接続制御部４１４は、ステップＳ２０１４の処理を行う。送信ポートがイーサネット（登録商標）に接続されている場合（ステップＳ２０１２でＮｏ）、接続制御部４１４は、ステップＳ２０１６の処理を行う。
【０１３１】
ステップＳ２０１４において、接続制御部４１４は、受信データをＣＡＮのプロトコルに従ったデータフォーマットへ変換する。接続制御部４１４は、ＩＤ−ＭＡＣ変換テーブルを用いて変換する。
【０１３２】
ステップＳ２０１６において、接続制御部４１４は、受信データをステップＳ２００６で決定された送信ポートから送信する。
【０１３３】
なお、図１に示すような実施の形態１に係る車載ネットワーク１０００の構成は一例であり、第一車載中継装置１００と不正検知装置１４０等の不正を検知する構成とを備える構成であれば、これに限られない。例えば、実施の形態１では、第一車載中継装置１００の複数のポートのうち、ＣＡＮに接続されているポートは１ポートのみであったが、複数のポートがＣＡＮに接続される構成であってもよい。又は、ブレーキＥＣＵ等の制御系ＥＣＵが接続されるネットワークも含めて、全てのネットワークがイーサネット（登録商標）で構成されてもよい。その場合、不正検知データに、接続変更すべき送信元ＭＡＣアドレスが記載されており、第一車載中継装置は、そのＭＡＣアドレスを元にポート間の接続変更を行うように構成されてもよい。
【０１３４】
また、実施の形態１に係る車載ネットワーク１０００の構成において、車載機器、ネットワーク、機器及び車外機器が構成要素として含まれたが、構成要素はこれらに限定されない。車載ネットワーク１０００は、他の車載機器、ネットワーク、機器及び車外機器を含む構成であってもよい。また、車載ネットワーク１０００は、ＡＤＡＳＥＣＵ１３０を備える構成であったが、ＡＤＡＳ機能ではなくより高度な自動運転機能に対応したＥＣＵを備えてもよい。
【０１３５】
また、第一車載中継装置１００は、ポート間の接続の変更を、ＶＬＡＮ（Virtual Local Area Network）を用いて行ってもよい。
【０１３６】
また、不正検知データは、第一車載中継装置１００を宛先としてだけではなく、他のＥＣＵ等を宛先として送信されてもよく、マルチキャストで送信されてもよく、ブロードバンドで送信されてもよい。マルチキャスト又はブロードキャストでの送信の場合、第一車載中継装置１００は、受信された不正検知データを他のＥＣＵ等に転送する。
【０１３７】
また、実施の形態１において、自動運転機能オフデータは、ＩＶＩ機器１２４によって送られるとしたが、他のＥＣＵ、メーター機器又はインタフェース機器によって送られてもよい。
【０１３８】
上述のような実施の形態１に係る第一車載中継装置１００は、不正検知データを受信すると、不正検知データに対応したポートの接続を変更することにより、不正データを受信したポートから他のポートへのデータの転送を停止し、攻撃の拡散を抑えることができる。また同時に、第一車載中継装置１００は、データ通信ユニット等の外部接続インタフェースへつながるポート又は診断機器等の外部接続インタフェースへつながるポートに、不正データを受信したポートを接続することで、外部機器からのファームウェアのアップデート又は診断解析を可能にする。例えば、ＣＡＮは、バス型ネットワークであり、機器からＣＡＮに出力された信号が、ＣＡＮに接続された全ての機器に受信される。このため、実施の形態１に係る第一車載中継装置１００のように、複数のポートに、ＣＡＮとイーサネット（登録商標）とが混在して接続される場合、不正データを受信したポートから他のポートへのデータの転送を停止することは、攻撃の拡散防止に効果的である。
【０１３９】
また、第一車載中継装置１００は、不正検知データを受信してから、所定時間を待って、又は、不正検知を通知された車両の操作者が、不正の影響を受けている、若しくは、不正の原因となっている自動運転機能をオフするまで時間を待って、不正データを受信したポートの接続を遮断する。例えば、不正データを受信したポートに接続されているＥＣＵが、自動運転機能に関連するＥＣＵである場合、当該ＥＣＵからのデータの中継を突然停止すると、自動車が無制御の状態になる可能性がある。第一車載中継装置１００は、このような無制御の状態の発生を防止し、且つ、上記ポートの接続の遮断の遅延を低減することができる。
【０１４０】
また、実施の形態１に係る受信ポート記憶テーブルは、ＩＤと受信ポートと送信ポートとの組を記憶しておくことにより、同一の送信ポートについて複数の情報を記憶しておくことができる。また、不正データを受信してから不正検知データを受信するまでの間に、第一車載中継装置１００によって他のデータの中継が行われた場合にも、受信ポート記憶テーブルを参照することによって、不正データを受信したポートを特定することができる。よって、第一車載中継装置１００は、不正検知に時間を要する場合、及び不正検知データの受信に時間を要する場合にも、過去に遡って対応することができる。
【０１４１】
また、実施の形態１に係る第一車載中継装置１００は、ステップＳ５０８のポート接続変更処理において、第一車載中継装置１００を搭載する車両の走行状態を考慮してもよい。例えば、図１１に示すように、接続制御部４１４は、ステップＳ２１０８の代わりに、ステップＳ２１１８の判定処理を行ってもよい。図１１は、実施の形態１に係る第一車載中継装置１００のポート接続変更処理の変形例を示すフローチャートである。ステップＳ２１１８では、接続制御部４１４は、検知された不正データを受信したポートとそれ以外のポートとの接続を遮断する前に、車両の走行状態が接続遮断可能な状態であるか否か、つまり、車両の走行状態が可か不可かを判定する。接続遮断可能な状態である場合（ステップＳ２１１８でＹｅｓ）、接続制御部４１４は、ステップＳ２１１０の処理を行う。接続遮断不可能な状態である場合（ステップＳ２１１８でＮｏ）、接続制御部４１４は、ステップＳ２１０６の処理に戻る。
【０１４２】
車両の走行状態が接続遮断可能な状態である要件の例は、車両が停止している、車速が所定速度以下の低速である、ブレーキが踏まれている、ハザードランプが点灯している、運転者が運転可能な状態にある、車両が退避ゾーンなどの特定の場所にいる等である。車両の走行状態が接続遮断可能な状態である要件は、自動運転機能がオフ状態であることを含んでもよい。接続制御部４１４は、上記要件の少なくとも１つが満たされる場合、車両の走行状態が接続遮断可能な状態であると判定してもよい。接続制御部４１４は、車両の車速センサ、センサ１２６及びカメラ１２８等の検出装置の検出情報、並びに、ブレーキＥＣＵ１３２、ＩＶＩ機器１２４のナビゲーション情報、ステアリングＥＣＵ１３４及びＡＤＡＳＥＣＵ１３０等のＥＣＵの出力情報から、上記の各状態の有無を判定してもよい。
【０１４３】
例えば、車両の停止は、車速又はセンサ１２６の検出情報から判断可能である。ブレーキの踏み込みは、ブレーキＥＣＵ１３２の出力情報から判断可能である。ハザードランプの点灯は、照明を制御するＥＣＵの出力情報から判断可能である。運転者の状態は、車室内を撮影するカメラの画像、又は、車両の操作系の装置を制御するＥＣＵの出力情報から判断可能である。車両の場所は、ＩＶＩ機器１２４のナビゲーション情報から判断可能である。
【０１４４】
第一車載中継装置１００は、車両の走行状態に応じて、検知された不正データを受信したポートとそれ以外のポートとの接続を遮断する。これにより、接続の遮断によって、車両の走行が不安定になることが抑えられる。
【０１４５】
（実施の形態２）
実施の形態２に係る車載中継装置を説明する。実施の形態２に係る車載中継装置である第一車載中継装置９００は、全てのポートにイーサネット（登録商標）が接続される点で、実施の形態１と異なる。以下において、実施の形態２について、実施の形態１と異なる点を中心に説明する。
【０１４６】
図１２は、実施の形態２に係る第一車載中継装置９００を備える車載ネットワーク２０００の機能的な構成の一例を示すブロック図である。図１２に示すように、車載ネットワーク２０００は、第一車載中継装置９００と、第二車載中継装置１２０ａ、１２０ｂ及び９０６と、ＩＶＩ機器１２４と、センサ１２６と、カメラ１２８と、ＡＤＡＳＥＣＵ１３０と、ブレーキＥＣＵ１３２と、ステアリングＥＣＵ１３４と、通信ユニット１３６と、解析Ｉ／Ｆ１３８と、不正検知装置９２０とを、構成要素として含む。さらに、車載ネットワーク２０００は、上記構成要素間を接続するネットワークとして、ＣＡＮ９０８と、イーサネット（登録商標）１４４、１４６、１４８、１５０及び９０４とを含む。
【０１４７】
実施の形態２に係る第一車載中継装置９００は、ポートＡ１０２、ポートＢ９０１、ポートＣ１０６、ポートＤ１０８及びポートＥ１１０の５つのポートを備える。
【０１４８】
ポートＡ１０２は、イーサネット（登録商標）１４４を介して、第二車載中継装置９０６と接続される。第二車載中継装置９０６は、通信ユニット１３６と接続される。さらに、第二車載中継装置９０６は、ＣＡＮ９０８を介して、不正検知装置９２０、ブレーキＥＣＵ１３２及びステアリングＥＣＵ１３４と接続される。ポートＢ９０１は、イーサネット（登録商標）９０４を介して、解析Ｉ／Ｆ１３８と接続される。ポートＣ１０６、ポートＤ１０８及びポートＥ１１０の接続対象は、実施の形態１と同じである。
【０１４９】
不正検知装置９２０は、ＣＡＮ９０８を介して受信されたデータに対して不正を検知した場合、不正と判定されたデータに付与されているＩＤを含む不正検知データを、ＣＡＮ９０８を介して第二車載中継装置９０６へ通知し、さらに、イーサネット（登録商標）１４４を介して第一車載中継装置９００に送信する。なお、不正検知装置９２０は、不正検知機能に加えて、エラーフレームによる不正データの無効化を行う機能を備えてもよい。
【０１５０】
第一車載中継装置９００の構成を説明する。図１３は、実施の形態２に係る第一車載中継装置９００の機能的な構成の一例を示すブロック図である。図１３に示すように、第一車載中継装置９００は、ポートＡ１０２の受信部４００及び送信部４１６と、ポートＢ９０１の受信部９１８及び送信部９１４と、ポートＣ１０６の受信部４０４及び送信部４２０と、ポートＤ１０８の受信部４０６及び送信部４２２と、ポートＥ１１０の受信部４０８及び送信部４２４と、記憶部９１０と、接続制御部９１６とを備える。
【０１５１】
受信部４００、９１８、４０４、４０６及び４０８、並びに送信部４１６、９１４、４２０、４２２及び４２４は、実施の形態１と同様の構成である。記憶部９１０は、実施の形態１の記憶部４１０と同様の構成である。接続制御部９１６は、ポート間の中継制御及び接続制御、受信データの宛先確認、データのフォーマット変更、不正検知データの受信、自動運転機能オン／オフデータの受信、並びに、制限解除要求データの受信等を行う。
【０１５２】
次に、図１４を参照しつつ、実施の形態２に係る第一車載中継装置９００の動作を説明する。なお、図１４は、実施の形態２に係る第一車載中継装置９００の処理の一例を示すフローチャートである。
【０１５３】
まず、ステップＳ１０００において、第一車載中継装置９００は、ポートＡ１０２の受信部４００、ポートＢ９０１の受信部９１８、ポートＣ１０６の受信部４０４、ポートＤ１０８の受信部４０６、及び、ポートＥ１１０の受信部４０８のいずれかのポートからデータを受信する。
【０１５４】
次いで、ステップＳ１００２において、接続制御部９１６は、受信データの宛先ＭＡＣアドレスから、受信データが自己宛、すなわち、第一車載中継装置９００宛のデータか否かを判定する。自己宛のデータでない場合（ステップＳ１００２でＮｏ）、接続制御部９１６は、ステップＳ１００４の処理を行う。自己宛のデータである場合（ステップＳ１００２でＹｅｓ）、接続制御部９１６は、ステップＳ１００６の処理を行う。
【０１５５】
ステップＳ１００４において、接続制御部９１６は、後述する通常転送処理を行う。
【０１５６】
ステップＳ１００６において、接続制御部９１６は、受信データが不正検知データであるか否かを判定する。受信データが不正検知データである場合（ステップＳ１００６でＹｅｓ）、接続制御部９１６は、ステップＳ１００８の処理を行う。受信データが不正検知データでない場合（ステップＳ１００６でＮｏ）、接続制御部９１６は、ステップＳ１０１０の処理を行う。
【０１５７】
ステップＳ１００８において、接続制御部９１６は、ＭＡＣアドレスに対するデータの中継の可否を判定するための条件を設定するための後述する中継可否判定条件設定処理を行う。
【０１５８】
ステップＳ１０１０において、接続制御部９１６は、受信データが所定のＭＡＣアドレスに対する中継遮断の制限の解除を要求するための制限解除要求データであるか否かを判定する。受信データが制限解除要求データである場合（ステップＳ１０１０でＹｅｓ）、接続制御部９１６は、ステップＳ１０１２の処理を行う。受信データが制限解除要求データでない場合（ステップＳ１０１０でＮｏ）、接続制御部９１６は、ステップＳ１０１４の処理を行う。
【０１５９】
ステップＳ１０１２において、接続制御部９１６は、制限解除要求データに指定されているＭＡＣアドレスに対して、データの中継の可否を判定するための条件である中継可否判定条件をクリアする。
【０１６０】
ステップＳ１０１４において、接続制御部９１６は、受信データが自動運転機能オフデータであるか否かを判定する。受信データが自動運転機能オフデータである場合（ステップＳ１０１４でＹｅｓ）、接続制御部９１６は、ステップＳ１０１６の処理を行う。受信データが自動運転機能オフデータでない場合（ステップＳ１０１４でＮｏ）、接続制御部９１６は、ステップＳ１０１８の処理を行う。
【０１６１】
ステップＳ１０１６において、接続制御部９１６は、自動運転機能がオフ状態であることを接続制御部９１６の内部に通知する。
【０１６２】
ステップＳ１０１８において、受信データは、通常の制御パケットであるので、接続制御部９１６は、受信データの制御内容に応じた処理を行う。
【０１６３】
次に、図１５を参照しつつ、ステップＳ１００８の中継可否判定条件設定処理の詳細を説明する。図１５は、実施の形態２に係る第一車載中継装置９００の中継可否判定条件設定処理の一例を示すフローチャートである。
【０１６４】
まず、ステップＳ２３０２において、接続制御部９１６は、不正検知データに含まれるＩＤから、検知された不正データの送信元のＭＡＣアドレスを特定する。具体的には、接続制御部９１６は、記憶部９１０に記憶されている受信ＭＡＣアドレス記憶テーブルを用いて検知された不正データの送信元のＭＡＣアドレスを特定する。受信ＭＡＣアドレス記憶テーブルでは、データのＩＤと、受信ＭＡＣアドレスと、送信ポートとが対応付けられている。受信ＭＡＣアドレスは、当該データを送信した送信元のＭＡＣアドレスである。送信ポートは、当該データが第一車載中継装置１００から送信されるポートである。受信ＭＡＣアドレス記憶テーブルは、様々なＩＤのデータの送信元から送信先である送信ポートへの流れを示す。受信ＭＡＣアドレス記憶テーブルは、接続制御部９１６によって記録される。
【０１６５】
ここで、図１６は、実施の形態２に係る第一車載中継装置９００の記憶部９１０に記憶されている受信ＭＡＣアドレス記憶テーブルの一例を示す。図１６に示すように、受信ＭＡＣアドレス記憶テーブル１１００は、受信データに含まれるＩＤと、受信データの送信元のＭＡＣアドレス（受信ＭＡＣアドレス）と、受信データを送信するポート（送信ポート）との組を列挙しているテーブルである。例えば、不正検知データに含まれるＩＤが「０ｘ１Ａ」である場合、受信ＭＡＣアドレス記憶テーブル１１００において、ＩＤが「０ｘ１Ａ」であるＭＡＣアドレスは、「ＭＡＣアドレスＣ」であると特定できる。つまり、検知された不正データの送信元のＭＡＣアドレスは、「ＭＡＣアドレスＣ」であると特定できる。なお、本実施の形態では、受信ＭＡＣアドレス記憶テーブルは、記憶部９１０が有する不揮発領域に記憶されているが、記憶部９１０が有する揮発領域に記憶されてもよい。
【０１６６】
図１５に戻り、次いで、ステップＳ２３０４において、接続制御部９１６は、不正データの送信元のＭＡＣアドレスを特定後、当該ＭＡＣアドレスを宛先又は送信元とするデータの中継を不可にする、つまり遮断するように中継可否判定条件を設定する。複数のＭＡＣアドレスに対して複数の中継可否判定条件が設定され得、接続制御部９１６は、設定された中継可否判定条件を記憶部９１０に保存する。
【０１６７】
次いで、ステップＳ２３０６において、接続制御部９１６は、自動運転機能オフデータを受信したか否かを判定する。判定の結果、自動運転機能オフデータを受信した場合（ステップＳ２３０６でＹｅｓ）、接続制御部９１６は、ステップＳ２３０８の処理を行う。判定の結果、自動運転機能オフデータを受信していない場合（ステップＳ２３０６でＮｏ）、接続制御部９１６は、ステップＳ２３０６の処理に戻る。
【０１６８】
ステップＳ２３０８において、接続制御部９１６は、データの宛先のＭＡＣアドレス及び送信元のＭＡＣアドレスに応じて、中継可否判定条件を変更する。具体的には、データの宛先のＭＡＣアドレス又は送信元のＭＡＣアドレスが通信ユニット１３６又は解析Ｉ／Ｆ１３８のＭＡＣアドレスである場合、当該データが不正データであっても、接続制御部９１６は、当該ＭＡＣアドレスに対して中継を行うように中継可否判定条件を設定する。
【０１６９】
上述より、第一車載中継装置９００は、不正が検知された場合に、検知された不正データの送信元のＭＡＣアドレスに関係するデータを中継しないことにより、検知された不正化した車載機器による他の機器への影響を抑える。さらに、第一車載中継装置９００は、自動運転機能がオフ状態とされ安全が確保されたと考えられる状態では、不正データの通信ユニット１３６及び／又は解析Ｉ／Ｆ１３８へのアクセスを可能とし、不正の解析及びアップデートを行うことを可能にする。これにより、不正なＥＣＵ等の車載機器を解析し、必要に応じてファームウェアのアップデートを行い、正常状態に修復することが可能である。また、正常状態へ修復完了後に、制限解除要求データが解析Ｉ／Ｆ１３８を介して第一車載中継装置９００に送られることにより、第一車載中継装置９００は、不正検知データの受信により設定された中継可否判定条件をクリアし、不正検知の前の状態に戻すことができる。なお、本実施の形態において、制限解除要求データは、解析Ｉ／Ｆ１３８から送信されるものとして説明したが、他の経路により送信されてもよい。
【０１７０】
次に、図１７を参照しつつ、図１４におけるステップＳ１００４の通常転送処理の詳細を説明する。図１７は、実施の形態２に係る第一車載中継装置９００の通常転送処理の一例を示すフローチャートである。
【０１７１】
まず、ステップＳ２２０２において、接続制御部９１６は、受信データのヘッダに含まれる宛先ＭＡＣアドレスを用いて、受信データを送信するポートを、記憶部９１０に記憶されている図１０に示すようなＭＡＣアドレス変換テーブル８００を用いて決定する。
【０１７２】
次いで、ステップＳ２２０４において、接続制御部９１６は、宛先ＭＡＣアドレスが、事前に設定されている、中継可能なＭＡＣアドレスをリスト化したホワイトリストに掲載されているＭＡＣアドレスか否かを判定する。宛先ＭＡＣアドレスが、ホワイトリストに掲載されている場合（ステップＳ２２０４でＹｅｓ）、接続制御部９１６は、ステップＳ２２０８の処理を行う。宛先ＭＡＣアドレスが、ホワイトリストに掲載されていない場合（ステップＳ２２０４でＮｏ）、接続制御部９１６は、ステップＳ２２０６の処理を行う。なお、ホワイトリストは、中継可能である送信元ＭＡＣアドレス及び宛先ＭＡＣアドレスをリスト化したものであり、予め設定され、記憶部９１０に記憶されている。接続制御部９１６は、ホワイトリストに掲載されたＭＡＣアドレスのデータが、不正を含むか否かに関わらず、当該データを中継するとしてもよい。ホワイトリストの例は、通信ユニット１３６を送信元又は及び宛先とするＭＡＣアドレス、及び、解析Ｉ／Ｆ１３８を送信元又は及び宛先とするＭＡＣアドレス等である。ホワイトリストは、予め設定され、例えば、第一車載中継装置９００又は第一車載中継装置９００を備える装置若しくはシステムの工場出荷時又は自動車への搭載時等に、記憶部９１０に書き込まれてもよい。
【０１７３】
ステップＳ２２０６において、接続制御部９１６は、宛先ＭＡＣアドレスが、不正データの送信元のＭＡＣアドレスと一致するか否かを判定する。一致した場合（ステップＳ２２０６でＹｅｓ）、接続制御部９１６は、処理を終了する。一致しない場合（ステップＳ２２０６でＮｏ）、接続制御部９１６は、ステップＳ２２０８の処理を行う。
【０１７４】
ステップＳ２２０８において、接続制御部９１６は、図１６に示すような受信ＭＡＣアドレス記憶テーブル１１００を更新する。なお、記憶部９１０の容量に制限がある場合、接続制御部９１６は、受信ＭＡＣアドレス記憶テーブル１１００の新しい内容を優先して記憶部９１０に記憶させるように構成されてもよい。又は、接続制御部９１６は、送信ポート毎に、記憶される「送信ポート−ＩＤ−受信ＭＡＣアドレス」の組の数を制限してもよい。
【０１７５】
次いで、ステップＳ２２１０において、接続制御部９１６は、受信データをステップＳ２２０２で決定された送信ポートから送信する。
【０１７６】
ここで、接続制御部９１６は、中継可否判定条件の設定及びクリアの際には、中継可否判定条件を記憶部９１０に記録しておく。本実施の形態に係る第一車載中継装置９００は、中継可否判定条件を変更した後に電源が切られ、その後、電源が再投入された時、電源切断前の中継可否判定条件を反映する。図１８を参照しつつ、第一車載中継装置９００の電源切断前の中継可否判定条件を電源再投入後に反映させる処理を説明する。図１８は、実施の形態２に係る第一車載中継装置９００の電源投入時の中継可否判定条件の反映処理の一例を示すフローチャートである。
【０１７７】
まず、ステップＳ１７００において、第一車載中継装置９００に電源が投入される。次いで、ステップＳ１７０２において、接続制御部９１６は、記憶部９１０から中継可否判定条件を読み出す。次いで、ステップＳ１７０４において、接続制御部９１６は、読み出された中継可否判定条件に基づいて、中継可否判定条件の設定を行い、中継可否判定条件を電源オフ前の状態に反映させる。
【０１７８】
上述より、第一車載中継装置９００は、電源オフの後、電源が再投入されても電源オフ前と同じ状態に、中継可否判定条件を戻すことが可能である。これにより、第一車載中継装置９００は、不正検知に伴い、中継可否判定条件の設定が変更された後にエンジン停止等で電源オフされたとしても、初期状態に戻ることなく、不正データが第一車載中継装置９００を介して中継されることを防ぐことができる。
【０１７９】
なお、図１２に示すような実施の形態２に係る車載ネットワーク２０００の構成は一例であり、第一車載中継装置９００と不正検知装置９２０等の不正を検知する構成とを備える構成であれば、これに限られない。例えば、ブレーキＥＣＵ等の制御系ＥＣＵが接続されるネットワークも含めて、全てのネットワークがイーサネット（登録商標）で構成されてもよい。その場合、不正検知データに、接続変更すべき送信元ＭＡＣアドレスが記載されており、第一車載中継装置は、そのＭＡＣアドレスを元に中継可否判定条件を設定するように構成されてもよい。
【０１８０】
また、不正検知データは、第一車載中継装置９００を宛先としてだけではなく、他のＥＣＵ等を宛先として送信されてもよく、マルチキャストで送信されてもよく、ブロードバンドで送信されてもよい。マルチキャスト又はブロードキャストでの送信の場合、第一車載中継装置９００は、受信された不正検知データを他のＥＣＵ等に転送する。
【０１８１】
また、実施の形態２に係る車載ネットワーク２０００の構成において、車載機器、ネットワーク、機器及び車外機器が構成要素として含まれていたが、構成要素はこれらに限定されない。車載ネットワーク２０００は、他の車載機器、ネットワーク、機器及び車外機器を含む構成であってもよい。また、車載ネットワーク２０００は、ＡＤＡＳＥＣＵ１３０を備える構成であったが、ＡＤＡＳ機能ではなくより高度な自動運転機能に対応したＥＣＵを備えてもよい。
【０１８２】
上述のような実施の形態２に係る第一車載中継装置９００は、不正検知データを受信すると、不正検知データに対応した不正データの送信元のＭＡＣアドレスに対して、中継の可否を変更することにより、不正データの送信元のＭＡＣアドレスとのデータの転送を停止し、不正データを送信したＥＣＵ等の車載機器による不正制御等の攻撃を抑えることができる。さらに、第一車載中継装置９００は、中継可否変更により他のＥＣＵ等の車載機器への影響を抑えることができる。
【０１８３】
また、実施の形態２に係る受信ＭＡＣアドレス記憶テーブルは、ＩＤと受信ＭＡＣアドレスと送信ポートとの組を記憶しておくことにより、同一の送信ポートについて複数の情報を記憶しておくことができる。また、不正データを受信してから不正検知データを受信するまでの間に、第一車載中継装置９００によって他のデータの中継が行われた場合にも、受信ＭＡＣアドレス記憶テーブルを参照することによって、不正データのＭＡＣアドレスを特定することができる。よって、第一車載中継装置９００は、不正検知に時間を要する場合、及び不正検知データの受信に時間を要する場合にも、過去に遡って対応することができる。
【０１８４】
また、実施の形態２に係る第一車載中継装置９００は、ステップＳ１００８の中継可否判定条件設定処理において、第一車載中継装置９００を搭載する車両の走行状態を考慮してもよい。例えば、図１９に示すように、接続制御部９１６は、ステップＳ２３０６の代わりに、ステップＳ２３１０の判定処理を行ってもよい。図１９は、実施の形態２に係る第一車載中継装置９００の中継可否判定条件設定処理の変形例を示すフローチャートである。ステップＳ２３１０では、接続制御部９１６は、ステップＳ２３０８で中継可否判定条件を変更する前に、車両の走行状態が中継可否判定条件を変更可能な状態であるか否か、つまり、車両の走行状態が可か不可かを判定する。変更可能な状態である場合（ステップＳ２３１０でＹｅｓ）、接続制御部９１６は、ステップＳ２３０８の処理を行う。変更不可能な状態である場合（ステップＳ２３１０でＮｏ）、接続制御部９１６は、ステップＳ２３１０の処理に戻る。車両の走行状態が中継可否判定条件を変更可能な状態である要件は、自動運転機能がオフ状態であることを含んでもよい。接続制御部９１６は、上記のような要件の少なくとも１つが満たされる場合、車両の走行状態が中継可否判定条件を変更可能な状態であると判定してもよい。
【０１８５】
また、ステップＳ２３１０の処理は、ステップＳ２３０２とステップＳ２３０４との間で行われてもよい。この場合、接続制御部９１６は、ステップＳ２３０４で中継可否判定条件を変更する前に、車両の走行状態が中継可否判定条件を変更可能な状態であるか否かを判定し、その判定結果に応じて、中継可否判定条件を変更する。
【０１８６】
上述のように、第一車載中継装置９００は、車両の走行状態に応じて、不正データの送信元のデータの中継を遮断する、又は、不正データの通信ユニット１３６及び解析Ｉ／Ｆ１３８へのアクセスを可能に変更するように、中継可否判定条件を設定する。これにより、データの中継の遮断及び変更によって、車両の走行が不安定になることが抑えられる。
【０１８７】
（実施の形態３）
次に、実施の形態３に係る車載中継装置を説明する。実施の形態３に係る車載中継装置である第一車載中継装置１２００は、ＡＤＡＳＥＣＵと第二車載中継装置を介して接続される点で、実施の形態２と異なる。以下において、実施の形態３について、実施の形態１及び２と異なる点を中心に説明する。
【０１８８】
図２０は、実施の形態３に係る第一車載中継装置１２００を備える車載ネットワーク３０００の機能的な構成の一例を示すブロック図である。図２０に示すように、車載ネットワーク３０００は、第一車載中継装置１２００と、第二車載中継装置１２０ａ、１２０ｂ、９０６及び１８０４と、ＩＶＩ機器１２４と、センサ１２６と、カメラ１２８と、ＡＤＡＳＥＣＵ１３０及び１８０６と、ブレーキＥＣＵ１３２と、ステアリングＥＣＵ１３４と、通信ユニット１３６と、解析Ｉ／Ｆ１３８と、不正遮断装置１８０２とを、構成要素として含む。さらに、車載ネットワーク３０００は、上記構成要素間を接続するネットワークとして、ＣＡＮ９０８と、イーサネット（登録商標）１４４、１４６、１４８、１５０及び９０４とを含む。
【０１８９】
車載ネットワーク３０００において、不正遮断装置１８０２は、ＣＡＮ９０８に接続され、ＣＡＮ９０８上のデータを監視する。不正遮断装置１８０２は、データに対して不正を検知した際には、エラーフレーム用いて不正データを無効化する。
【０１９０】
ＡＤＡＳＥＣＵ１３０及び１８０６は、第二車載中継装置１８０４を介して第一車載中継装置１２００と接続される。例えば、ＡＤＡＳＥＣＵ１３０は、パーキングアシスト機能を備え、ＡＤＡＳＥＣＵ１８０６は、クルーズコントロール機能を備える。ＡＤＡＳＥＣＵ１３０及び１８０６は、ＡＤＡＳの機能を分担している。
【０１９１】
第二車載中継装置１８０４は、例えばルータ機能を搭載し、データの中継を行う際にデータのヘッダに記録されているＭＡＣアドレスの変換を行う。第二車載中継装置１８０４は、ＡＤＡＳＥＣＵ１３０及び１８０６から送信される各々のデータに対して、送信元のＭＡＣアドレスを、ＡＤＡＳＥＣＵ１３０のＭＡＣアドレス及びＡＤＡＳＥＣＵ１８０６のＭＡＣアドレスから第二車載中継装置１８０４のＭＡＣアドレスに変換する。そのため、第一車載中継装置１２００のポートＥ１１０でデータが受信される時には、当該データの送信元のＭＡＣアドレスが第二車載中継装置１８０４のＭＡＣアドレスである。よって、ポートＥ１１０での受信データが、ＡＤＡＳＥＣＵ１３０及び１８０６のどちらから送信されたデータであるかは、ＭＡＣアドレスから区別することはできない。そこで、第二車載中継装置１８０４は、ＡＤＡＳＥＣＵ１３０及び１８０６から送信されたデータを区別するために、データのヘッダに記録されているＩＰ（Internet Protocol）アドレスを利用する。ポートＢ９０１、ポートＣ１０６及びポートＤ１０８の接続対象は、実施の形態２と同じである。
【０１９２】
第一車載中継装置１２００の構成を説明する。図２１は、実施の形態３に係る第一車載中継装置１２００の機能的な構成の一例を示すブロック図である。図２１に示すように、第一車載中継装置１２００は、ポートＡ１０２の受信部４００及び送信部４１６と、ポートＢ９０１の受信部９１８及び送信部９１４と、ポートＣ１０６の受信部４０４及び送信部４２０と、ポートＤ１０８の受信部４０６及び送信部４２２と、ポートＥ１１０の受信部４０８及び送信部４２４と、記憶部１２０４と、接続制御部１２１４と、不正検知部１２１６とを備える。
【０１９３】
受信部４００、９１８、４０４、４０６及び４０８、並びに送信部４１６、９１４、４２０、４２２及び４２４は、実施の形態２と同様の構成である。記憶部１２０４は、実施の形態１の記憶部４１０と同様の構成である。接続制御部１２１４は、ポート間の中継制御及び接続制御、受信データの宛先確認、データのフォーマット変更、不正検知データの受信、自動運転機能オン／オフデータの受信、並びに、制限解除要求データの受信等を行う。不正検知部１２１６は、第一車載中継装置１２００によって中継されるデータに対して監視を行い、周期、ＩＤ、フォーマット及びデータの変化量等からデータの不正を検知する。
【０１９４】
次に、図２２を参照しつつ、実施の形態３に係る第一車載中継装置１２００の動作を説明する。なお、図２２は、実施の形態３に係る第一車載中継装置１２００の処理の一例を示すフローチャートである。
【０１９５】
まず、ステップＳ１３００において、第一車載中継装置１２００は、ポートＡ１０２の受信部４００、ポートＢ９０１の受信部９１８、ポートＣ１０６の受信部４０４、ポートＤ１０８の受信部４０６、及び、ポートＥ１１０の受信部４０８のいずれかのポートからデータを受信する。
【０１９６】
次いで、ステップＳ１３０２において、接続制御部１２１４は、受信データの宛先ＭＡＣアドレスから、受信データが自己宛、すなわち、第一車載中継装置１２００宛のデータか否かを判定する。自己宛のデータでない場合（ステップＳ１３０２でＮｏ）、接続制御部１２１４は、ステップＳ１３０４の処理を行う。自己宛のデータである場合（ステップＳ１３０２でＹｅｓ）、接続制御部１２１４は、ステップＳ１３０６の処理を行う。
【０１９７】
ステップＳ１３０４において、接続制御部１２１４は、後述する通常転送処理を行う。
【０１９８】
ステップＳ１３０６において、接続制御部１２１４は、受信データが所定のＩＰアドレスに対する中継遮断の制限の解除を要求するための制限解除要求データであるか否かを判定する。受信データが制限解除要求データである場合（ステップＳ１３０６でＹｅｓ）、接続制御部１２１４は、ステップＳ１３０８の処理を行う。受信データが制限解除要求データでない場合（ステップＳ１３０６でＮｏ）、接続制御部１２１４は、ステップＳ１３１０の処理を行う。
【０１９９】
ステップＳ１３０８において、接続制御部１２１４は、制限解除要求データに指定されているＩＰアドレスに対して、データの中継の可否を判定するための条件である中継可否判定条件をクリアする。
【０２００】
ステップＳ１３１０において、接続制御部１２１４は、受信データが自動運転機能オフデータであるか否かを判定する。受信データが自動運転機能オフデータである場合（ステップＳ１３１０でＹｅｓ）、接続制御部１２１４は、ステップＳ１３１２の処理を行う。受信データが自動運転機能オフデータでない場合（ステップＳ１３１０でＮｏ）、接続制御部１２１４は、ステップＳ１３１４の処理を行う。
【０２０１】
ステップＳ１３１２において、接続制御部１２１４は、自動運転機能がオフ状態であることを接続制御部１２１４の内部に通知する。
【０２０２】
ステップＳ１３１４において、受信データは、通常の制御パケットであるので、接続制御部１２１４は、受信データの制御内容に応じた処理を行う。
【０２０３】
次に、図２３を参照しつつ、ステップＳ１３０４の通常転送処理の詳細を説明する。図２３は、実施の形態３に係る第一車載中継装置１２００の通常運転処理の一例を示すフローチャートである。
【０２０４】
まず、ステップＳ２４０２において、接続制御部１２１４は、受信データのヘッダに含まれる宛先ＭＡＣアドレスを用いて、受信データを送信するポートを記憶部１２０４に記憶されている図１０に示すようなＭＡＣアドレス変換テーブル８００を用いて決定する。
【０２０５】
次いで、ステップＳ２４０４において、接続制御部１２１４は、受信データのヘッダに含まれる宛先ＩＰアドレスが、事前に設定されている、中継可能なＩＰアドレスをリスト化したホワイトリストに掲載されているＩＰアドレスか否かを判定する。宛先ＩＰアドレスが、ホワイトリストに掲載されている場合（ステップＳ２４０４でＹｅｓ）、接続制御部１２１４は、ステップＳ２４０８の処理を行う。宛先ＩＰアドレスが、ホワイトリストに掲載されていない場合（ステップＳ２４０４でＮｏ）、接続制御部１２１４は、ステップＳ２４０６の処理を行う。なお、ホワイトリストは、中継可能である送信元ＩＰアドレス及び宛先ＩＰアドレスをリスト化したものであり、予め設定され、記憶部１２０４に記憶されている。接続制御部１２１４は、ホワイトリストに掲載されたＩＰアドレスのデータが、不正を含むか否かに関わらず、当該データを中継するとしてもよい。ホワイトリストの例は、通信ユニット１３６を送信元又は及び宛先とするＩＰアドレス、及び、解析Ｉ／Ｆ１３８を送信元又は及び宛先とするＩＰアドレス等である。
【０２０６】
ステップＳ２４０６において、接続制御部１２１４は、受信データのヘッダに含まれる宛先ＩＰアドレス又は送信元ＩＰアドレスが、中継可否判定条件として記憶部１２０４に記憶された不正データの送信元のＩＰアドレスのいずれかと一致するか否かを判定する。一致する場合（ステップＳ２４０６でＹｅｓ）、接続制御部１２１４は、処理を終了する。一致しない場合（ステップＳ２４０６でＮｏ）、接続制御部１２１４は、ステップＳ２４０８の処理を行う。
【０２０７】
ステップＳ２４０８において、接続制御部１２１４は、受信ＩＰアドレス記憶テーブルを更新する。受信ＩＰアドレス記憶テーブルでは、データのＩＤと、受信ＩＰアドレスと、送信ポートとが対応付けられている。受信ＩＰアドレスは、当該データを送信した送信元のＩＰアドレスである。送信ポートは、当該データが第一車載中継装置１２００から送信されるポートである。受信ＩＰアドレス記憶テーブルは、様々なＩＤのデータの送信元から送信先である送信ポートへの流れを示す。受信ＩＰアドレス記憶テーブルは、接続制御部１２１４によって記録される。
【０２０８】
ここで、図２４は、実施の形態３に係る第一車載中継装置１２００の記憶部１２０４に記憶されている受信ＩＰアドレス記憶テーブルの一例を示す。図２４に示すように、受信ＩＰアドレス記憶テーブル１４００は、受信データに含まれるＩＤと、受信データの送信元のＩＰアドレス（受信ＩＰアドレス）と、受信データを送信するポート（送信ポート）との組を列挙しているテーブルである。なお、記憶部１２０４の容量に制限がある場合、接続制御部１２１４は、受信ＩＰアドレス記憶テーブル１４００の新しい内容を優先して記憶部１２０４に記憶させるように構成されてもよい。又は、接続制御部１２１４は、送信ポート毎に、記憶される「送信ポート−ＩＤ−受信ＩＰアドレス」の組の数を制限してもよい。
【０２０９】
次いで、ステップＳ２４１０において、接続制御部１２１４は、受信データをステップＳ２４０２で決定された送信ポートから送信する。
【０２１０】
次に、図２５を参照しつつ、第一車載中継装置１２００の不正検知部１２１６不正検知の動作を説明する。図２５は、実施の形態３に係る第一車載中継装置１２００の不正検知処理の一例を示すフローチャートである。
【０２１１】
まず、ステップＳ１５０２において、不正検知部１２１６は、受信データに対して、不正を検知する。不正検知部１２１６は、接続制御部１２１４へ不正検知データを送る。
【０２１２】
次いで、ステップＳ１５０４において、接続制御部１２１４は、第一車載中継装置１２００が備える図示しない変更待ちタイマをスタートし計時を開始する。
【０２１３】
次いで、ステップＳ１５０６において、接続制御部１２１４は、不正検知データに含まれるＩＤから不正データを送信した送信元ＩＰアドレスを特定する。具体的には、接続制御部１２１４は、記憶部１２０４に記憶されている図２４に示すような受信ＩＰアドレス記憶テーブル１４００を用いて、不正検知データに含まれるＩＤを照合することによって、不正データを送信した送信元ＩＰアドレスを特定する。
【０２１４】
次いで、ステップＳ１５０８において、接続制御部１２１４は、変更待ちタイマのタイマ値が所定値よりも大きい（タイマ値＞所定値）か否かを判定する。判定の結果、タイマ値が所定値よりも大きい場合（ステップＳ１５０８でＹｅｓ）、接続制御部１２１４は、ステップＳ１５１２の処理を行う。判定の結果、タイマ値が所定値以下の場合（ステップＳ１５０８でＮｏ）、接続制御部１２１４は、ステップＳ１５１０の処理を行う。
【０２１５】
ステップＳ１５１０において、接続制御部１２１４は、自動運転機能オフデータを受信したか否かを判定する。判定の結果、自動運転機能オフデータを受信した場合（ステップＳ１５１０でＹｅｓ）、接続制御部１２１４は、ステップＳ１５１２の処理を行う。判定の結果、自動運転機能オフデータを受信していない場合（ステップＳ１５１０でＮｏ）、接続制御部１２１４は、ステップＳ１５０８の処理に戻る。
【０２１６】
ステップＳ１５１２において、接続制御部１２１４は、不正検知データの送信元ＩＰアドレスを宛先又は送信元とするデータの中継を不可にするつまり遮断するように、中継可否判定条件を設定する。複数のＩＰアドレスに対して複数の中継可否判定条件が設定され得、接続制御部１２１４は、設定された中継可否判定条件を記憶部１２０４に保存する。
【０２１７】
次いで、ステップＳ１５１４において、接続制御部１２１４は、変更待ちタイマをストップし、変更待ちタイマのタイマ値をクリアし、例えば「０」にする。
【０２１８】
なお、本実施の形態では、接続制御部１２１４は、受信ＩＰアドレス記憶テーブル１４００を用いて、不正検知データに含まれるＩＤから不正データの送信元ＩＰアドレスを特定しているが、これに限定されない。例えば、不正検知データが不正データの送信元ＩＰアドレスを含み、接続制御部１２１４は、不正検知データに含まれる送信元ＩＰアドレスを元に中継可否判定条件を設定してもよい。
【０２１９】
また、本実施の形態では、接続制御部１２１４は、受信データが自己宛であるかの判定及び受信データの送信先ポートの決定に、ＭＡＣアドレスを用いているが、これに限定されない。例えば、第一車載中継装置１２００は、ルータ機能を備え、受信データのＩＰアドレスを用いて送信先ポートを決定してもよい。
【０２２０】
上述のような実施の形態３に係る第一車載中継装置１２００は、不正なＥＣＵ等の車載機器から第一車載中継装置１２００までの経路において、ルータ等によりＭＡＣアドレスが変更される場合でも、不正な車載機器を特定することが可能である。さらに、第一車載中継装置１２００は、不正な車載機器以外の送受信データの中継を停止することなく、不正な車載機器の送受信データのみを中継停止の対象とすることが可能である。例えば、本実施の形態では、第一車載中継装置１２００は、ＡＤＡＳＥＣＵ１３０から送信されるデータとＡＤＡＳＥＣＵ１８０６から送信されるデータとを区別して対応することが可能である。
【０２２１】
また、第一車載中継装置１２００は、不正検知部１２１６を有するため、不正なＥＣＵ等の車載機器からの影響を受けることなく、不正検知データの送受信が可能であり、不正検知後の処理を確実に実施することができる。
【０２２２】
また、実施の形態３に係る第一車載中継装置１２００は、不正検知処理において、第一車載中継装置１２００を搭載する車両の走行状態を考慮してもよい。例えば、図２６に示すように、接続制御部１２１４は、ステップＳ１５１０の代わりに、ステップＳ１５１６の判定処理を行ってもよい。図２６は、実施の形態３に係る第一車載中継装置１２００の不正検知処理の変形例を示すフローチャートである。ステップＳ１５１６では、接続制御部１２１４は、中継可否判定条件を変更する前に、車両の走行状態が中継可否判定条件を変更可能な状態であるか否か、つまり、車両の走行状態が可か不可かを判定する。変更可能な状態である場合（ステップＳ１５１６でＹｅｓ）、接続制御部１２１４は、ステップＳ１５１２の処理を行う。変更不可能な状態である場合（ステップＳ１５１６でＮｏ）、接続制御部１２１４は、ステップＳ１５０８の処理に戻る。車両の走行状態が中継可否判定条件を変更可能な状態である要件は、自動運転機能がオフ状態であることを含んでもよい。接続制御部１２１４は、上記のような要件の少なくとも１つが満たされる場合、車両の走行状態が中継可否判定条件を変更可能な状態であると判定してもよい。このように、第一車載中継装置１２００は、車両の走行状態に応じて、不正データの送信元のデータの中継を遮断するように、中継可否判定条件を設定する。これにより、データの中継の遮断によって、車両の走行が不安定になることが抑えられる。
【０２２３】
（その他の変形例）
以上、１つ又は複数の態様に係る車載中装置等について、実施の形態及び変形例に基づいて説明したが、本開示は、これらの実施の形態及び変形例に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を実施の形態及び変形例に施したものや、異なる実施の形態及び変形例における構成要素を組み合わせて構築される形態も、１つ又は複数の態様の範囲内に含まれてもよい。
【０２２４】
例えば、実施の形態及び変形例において、第一車載中継装置が備えるポートは５つであるとして説明したが、これに限られない。第一車載中継装置が備えるポートは、２つ以上であればよい。
【０２２５】
また、実施の形態及び変形例において、第一車載中継装置に接続されるネットワークは、ＣＡＮ及びイーサネット（登録商標）の少なくとも１つであるとして説明したが、これに限られない。第一車載中継装置に接続されるネットワークは、ＭＯＳＴ（Media Oriented System Transport）、ＬＩＮ（Local Interconnect Network）及び、ＦｌｅｘＲａｙ等の他のネットワークの規格であってもよい。また、第一車載中継装置は、ネットワークを介さずに、車載機器と接続されてもよい。
【０２２６】
また、実施の形態及び変形例において、ポートの接続変更、ＭＡＣアドレスを用いた中継可否判定条件の設定、及び、ＩＰアドレスを用いた中継可否判定条件の設定からなる第一車載中継装置の３つの処理を別々に説明したが、第一車載中継装置は、３つの処理の少なくとも２つを混合して行ってもよい。例えば、不正データの送信元の車載機器及び当該車載機器が接続されるネットワークに応じて、第一車載中継装置は、３つの処理を選択して行ってもよい。
【０２２７】
また、実施の形態３の第一車載中継装置１２００のポートＥ１１０に接続される第二車載中継装置１８０４は、実施の形態１及び２並びに変形例の第一車載中継装置のポートＥ１１０に適用されてもよい。
【０２２８】
また、実施の形態１及び変形例に係る第一車載中継装置１００は、ポート接続変更処理において、変更待ちタイマによる計時を省略してもよい。この場合、図４及び図１１において、ステップＳ２１０２、ステップＳ２１０６及びステップＳ２１１２の処理が省略されてもよい。また、実施の形態３及び変形例に係る第一車載中継装置１２００は、不正検知処理において、変更待ちタイマによる計時を省略してもよい。この場合、図２５及び図２６において、ステップＳ１５０４、ステップＳ１５０８及びステップＳ１５１４の処理が省略されてもよい。いずれの場合も、第一車載中継装置は、自動運転機能オフの通知を受信すると、又は、車両の走行状態に応じて、ポートの接続の変更、又は、中継可否判定条件の設定を行う。
【０２２９】
また、実施の形態３の第一車載中継装置１２００のポートＡ１０２に接続される不正遮断装置１８０２の代わりに、実施の形態１及び２の不正検知装置が用いられてもよい。同様に、実施の形態１及び２の不正検知装置の代わりに、不正遮断装置１８０２が用いられてもよい。
【０２３０】
なお、上記実施の形態及び変形例では、本開示の技術を、自動車に搭載される車載ネットワークにおけるセキュリティ対策として説明したが、本開示の技術の適用範囲はこれに限られない。本開示の技術は、自動車に限らず、建機、農機、船舶、鉄道、飛行機などのモビリティにも適用してもよい。
【０２３１】
また、上述したように、本開示の技術は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読取可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ等の不揮発性の記録媒体を含む。
【０２３２】
例えば、上記実施の形態及び変形例に含まれる各処理部は典型的には集積回路であるＬＳＩ（Large Scale Integration：大規模集積回路）として実現される。これらは個別に１チップ化されてもよいし、一部又は全てを含むように１チップ化されてもよい。
【０２３３】
また、集積回路化はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）、又はＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０２３４】
なお、上記実施の形態及び変形例において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵなどのプロセッサ等のプログラム実行部が、ハードディスク又は半導体メモリ等の記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【０２３５】
また、上記構成要素の一部又は全部は、脱着可能なＩＣ（Integrated Circuit）カード又は単体のモジュールから構成されてもよい。ＩＣカード又はモジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭ等から構成されるコンピュータシステムである。ＩＣカード又はモジュールは、上記のＬＳＩ又はシステムＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、ＩＣカード又はモジュールは、その機能を達成する。これらＩＣカード及びモジュールは、耐タンパ性を有するとしてもよい。
【０２３６】
本開示の中継方法は、ＭＰＵ（Micro Processing Unit）及びＣＰＵなどのプロセッサ、ＬＳＩなどの回路、ＩＣカード又は単体のモジュール等によって、実現されてもよい。
【０２３７】
さらに、本開示の技術は、ソフトウェアプログラム又はソフトウェアプログラムからなるデジタル信号によって実現されてもよく、プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
【０２３８】
また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。
【０２３９】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを１つの機能ブロックとして実現したり、１つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【産業上の利用可能性】
【０２４０】
本開示の技術は、不正検知に対応して接続を制御する機能を有し、セキュリティ対応の車載ネットワーク等として有用である。また、本開示の技術は、産業ネットワーク等の用途にも応用できる。
【符号の説明】
【０２４１】
１００、１２０ａ、１２０ｂ、１２０ｃ、９００、９０６、１２００、１８０４  車載中継装置
１０２  ポートＡ
１０４、９０１  ポートＢ
１０６  ポートＣ
１０８  ポートＤ
１１０  ポートＥ
１２４  ＩＶＩ機器
１２６  センサ
１２８  カメラ
１３０、１８０６  ＡＤＡＳＥＣＵ
１３２  ブレーキＥＣＵ
１３４  ステアリングＥＣＵ
１３６  通信ユニット
１３８  解析Ｉ／Ｆ
１４２、９０８  ＣＡＮ
１４４、１４６、１４８、１５０、９０４  イーサネット（登録商標）
１４０、９２０  不正検知装置
４００、４０２、４０４、４０６、４０８、９１８  受信部
４１０、９１０、１２０４  記憶部
４１４、９１６、１２１４  接続制御部
４１６、４１８、４２０、４２２、４２４、９１４  送信部
６００  受信ポート記憶テーブル
７００  ＩＤ−ＭＡＣ変換テーブル
１０００、２０００、３０００  車載ネットワーク
１１００  受信ＭＡＣアドレス記憶テーブル
１２１６  不正検知部
１８０２  不正遮断装置
１４００  受信ＩＰアドレス記憶テーブル
２３００  ポート接続記憶テーブル
【図１】
2019022210.tif 000003
【図２】
2019022210.tif 000004
【図３】
2019022210.tif 000005
【図４】
2019022210.tif 000006
【図５】
2019022210.tif 000007
【図６Ａ】
2019022210.tif 000008
【図６Ｂ】
2019022210.tif 000009
【図７】
2019022210.tif 000010
【図８】
2019022210.tif 000011
【図９】
2019022210.tif 000012
【図１０】
2019022210.tif 000013
【図１１】
2019022210.tif 000014
【図１２】
2019022210.tif 000015
【図１３】
2019022210.tif 000016
【図１４】
2019022210.tif 000017
【図１５】
2019022210.tif 000018
【図１６】
2019022210.tif 000019
【図１７】
2019022210.tif 000020
【図１８】
2019022210.tif 000021
【図１９】
2019022210.tif 000022
【図２０】
2019022210.tif 000023
【図２１】
2019022210.tif 000024
【図２２】
2019022210.tif 000025
【図２３】
2019022210.tif 000026
【図２４】
2019022210.tif 000027
【図２５】
2019022210.tif 000028
【図２６】
2019022210.tif 000029