(57)【要約】【課題】冗長化されたネットワークシステムに攻撃によって不正なコマンドが流された場合に、その攻撃の影響を排除し、かつ、このネットワークシステムの機能を維持する。【解決手段】情報処理装置１０３は、第１のＧＷ、第２のＧＷ、及び少なくとも１つの電子制御ユニットが接続されたネットワークに流れる通信データを送受信する第１の通信部４０１と、このネットワークに流れる通信データが正常か否かを判断する監視部４０２と、監視部４０２が通信データは正常でないと判断した場合に、ネットワークを、第１のＧＷの転送機能及び第２のＧＷの転送機能の一方が有効であり、他方が無効である状態にするための通知を、少なくとも第２のＧＷに送信する通知部４０３とを備える。【選択図】図６
2018182713.tif 000002
【特許請求の範囲】
【請求項１】
第１のゲートウェイ、第２のゲートウェイ、及び少なくとも１つの電子制御ユニットが接続されたネットワークに流れる通信データを送受信する第１の通信部と、
前記通信データが正常か否かを判断する監視部と、
前記監視部が前記通信データは正常でないと判断した場合に、前記第１のゲートウェイの転送機能及び前記第２のゲートウェイの転送機能の一方が有効であり、他方が無効である状態にするための通知を、少なくとも前記第２のゲートウェイへ送信する通知部とを備える、
情報処理装置。
【請求項２】
前記第１のゲートウェイの転送機能が有効であり、前記第２のゲートウェイの転送機能が無効であるときに前記監視部が前記通信データは正常でないと判断した場合、前記通知部は、前記第２のゲートウェイに、前記第１のゲートウェイの転送機能を無効化させるための通知を前記第１のゲートウェイへ送信させ、前記第２のゲートウェイの転送機能を有効化させるための前記通知を前記第２のゲートウェイへ送信する、
請求項１に記載の情報処理装置。
【請求項３】
前記第１の通信部とは異なる第２の通信部をさらに備え、
前記監視部が前記通信データは正常でないと判断した場合、前記通知部は、前記通知を、前記第２の通信部を介して前記第２のゲートウェイへ送信する、
請求項２に記載の情報処理装置。
【請求項４】
前記第２の通信部は、前記第２のゲートウェイとの直接通信に用いられる専用線で前記第２のゲートウェイと接続される、
請求項３に記載の情報処理装置。
【請求項５】
前記第１のゲートウェイの転送機能が有効であり、前記第２のゲートウェイの転送機能が無効であるときに前記監視部が前記通信データは正常でないと判断した場合、前記通知部は、前記第２のゲートウェイの転送機能を有効化させるための前記通知を前記第２のゲートウェイへ送信し、前記第１のゲートウェイの転送機能を無効化させるための前記通知を前記第１のゲートウェイへ送信する、
請求項１に記載の情報処理装置。
【請求項６】
前記第１の通信部とは異なる第２の通信部と、前記第１の通信部及び前記第２の通信部とは異なる第３の通信部と、をさらに備え、
前記監視部が前記通信データは正常でないと判断した場合、前記通知部は、前記通知を、前記第２の通信部を介して前記第２のゲートウェイへ送信し、前記第３の通信部を介して前記第１のゲートウェイへ送信する、
請求項５に記載の情報処理装置。
【請求項７】
前記第２の通信部は、前記第２のゲートウェイとの通信のみに用いられる第１の専用線で前記第２のゲートウェイと接続され、
前記第３の通信部は、前記第１のゲートウェイとの通信のみに用いられる第２の専用線で前記第１のゲートウェイと接続される、
請求項６に記載の情報処理装置。
【請求項８】
前記第１の通信部が実行する通信はＣＡＮ通信である、
請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記通知は、受信された通信データが正常でないこと、前記第１のゲートウェイの転送機能を無効化すること、又は前記第２のゲートウェイの転送機能を有効化することを示す通知である、
請求項１から８のいずれか１項に記載の情報処理装置。
【請求項１０】
請求項１に記載の情報処理装置と、
前記第１のゲートウェイと、
前記第２のゲートウェイと、
前記少なくとも１つの電子制御ユニットとを備える情報処理システムであって、
前記第１のゲートウェイは、
前記第１のゲートウェイの転送機能を提供する第１の送受信部と、
前記第１の送受信部の転送処理を停止させる無効化部とを備え、
前記第２のゲートウェイは、
前記第２のゲートウェイの転送機能を提供する第２の送受信部と、
前記第２の送受信部の転送処理を開始させる有効化部とを備え、
前記監視部が前記通信データは正常でないと判断した場合、前記通知部は、前記通知を少なくとも前記第２のゲートウェイへ送信する、
情報処理システム。
【請求項１１】
さらに、前記第１のゲートウェイと前記第２のゲートウェイとの間の通信のみに用いられる専用線を備え、
前記第２のゲートウェイは、前記第１のゲートウェイに前記第１のゲートウェイの転送機能を無効化させるための通知を前記第１のゲートウェイへ送信する無効化通知部をさらに備え、
前記第２のゲートウェイが前記通知部から送信された前記通知を受信すると、前記無効化通知部は、前記第１のゲートウェイの転送機能を無効化させるための前記通知を、前記専用線を介して前記第１のゲートウェイへ送信し、
前記第１のゲートウェイが前記第１のゲートウェイの転送機能を無効化させるための前記通知を受信すると、前記無効化部は前記第１の送受信部の転送処理を停止させる、
請求項１０に記載の情報処理システム。
【請求項１２】
さらに、前記通知部と前記第１のゲートウェイとの間の直接通信に用いられる第３の専用線と、
前記通知部と前記第２のゲートウェイとの間の直接通信に用いられる第４の専用線とを備え、
前記第１のゲートウェイの転送機能が有効であり前記第２のゲートウェイの転送機能が無効であるときに、前記監視部が前記通信データは正常でないと判断した場合、前記通知部は、
前記第１のゲートウェイに前記第１のゲートウェイの転送機能を無効化させるための前記通知を、前記第３の専用線を用いて前記第１のゲートウェイへ送信し、
前記第２のゲートウェイに前記第２のゲートウェイの転送機能を有効化させるための前記通知を、前記第４の専用線を用いて前記第２のゲートウェイへ送信し、
前記第１のゲートウェイが前記第１のゲートウェイの転送機能を無効化させるための前記通知を受信すると、前記無効化部は前記第１の送受信部の転送機能を停止させ、
前記第２のゲートウェイが前記第２のゲートウェイの転送機能を有効化させるための前記通知を受信すると、前記有効化部は前記第２の送受信部の転送機能を開始させる、
請求項１０に記載の情報処理システム。
【請求項１３】
前記第１のゲートウェイは、前記情報処理システムの外部と通信するための接続経路を有し、
前記無効化部は、
前記第１のゲートウェイが前記第１のゲートウェイの転送機能を無効化させるための前記通知を受信すると、前記接続経路を切断し、
前記接続経路が切断された状態で、前記第１のゲートウェイが前記第１のゲートウェイの転送機能を無効化させるための前記通知をさらに受信すると、さらに前記第１の送受信部の転送処理を停止させる、
請求項１１又は１２に記載の情報処理システム。
【請求項１４】
前記第１のゲートウェイは、前記少なくとも１つの電子制御ユニットが接続された前記ネットワークに含まれる複数の配線に接続され、
前記無効化部は、前記複数の配線のうち、所定の優先順位の高い方から選択される少なくとも一部の配線との接続を切断することで前記第１の送受信部の転送処理を停止させる、
請求項１１又は１２に記載の情報処理システム。
【請求項１５】
前記第１のゲートウェイは、前記少なくとも１つの電子制御ユニットが接続された前記ネットワークに含まれる複数の配線に接続され、
前記第１のゲートウェイの転送機能を無効化させるための前記通知は、前記複数の配線のうち、前記監視部が正常でないと判断した前記通信データが流れる配線を示し、
前記無効化部は、前記通知が示す配線との接続を切断をすることで前記第１の送受信部の転送処理を停止させる、
請求項１１又は１２に記載の情報処理システム。
【請求項１６】
前記監視部が前記通信データは正常でないと判断した場合、前記通知部はさらに、前記少なくとも１つの電子制御ユニットのうち、当該通信データを受信する電子制御ユニットへ、フェイルセーフモードに移行させるための通知を送信する、
請求項１０から１５のいずれか１項に記載の情報処理システム。
【請求項１７】
第１のゲートウェイ、第２のゲートウェイ、及び少なくとも１つの電子制御ユニットが接続されたネットワークに接続される情報処理装置において実行される情報処理方法であって、
前記ネットワークに流れる通信データを送受信し、
前記通信データが正常か否かを判断し、
前記通信データは正常でないと判断した場合に、前記第１のゲートウェイの転送機能及び前記第２のゲートウェイの転送機能の一方が有効であり、他方が無効である状態にするための通知を、少なくとも前記第２のゲートウェイに送信する、
情報処理方法。
【請求項１８】
請求項１７に記載の情報処理方法を前記情報処理装置に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに対する攻撃へ対抗する情報処理装置、情報処理システム、情報処理方法、及びプログラムに関するものである。
【背景技術】
【０００２】
近年、車載ネットワークに対する攻撃（ハッキング）、並びに、攻撃によるリスクの高さが指摘されている。具体的には、外部との無線接続インタフェースを備える自動車の情報端末に無線通信などを介してアクセスした攻撃者が、プログラムを不正に書き換えた上で、その情報端末から、自動車内部の車載ネットワークに対して任意のＣＡＮ（Controller Area Network）コマンドを送信することによって、電子制御ユニット（ＥＣＵ：Electronic Contorol Unit、以下、ＥＣＵと表記する）につながるアクチュエータを運転者の意図に反して制御する攻撃が発表されている。
【０００３】
その一方で、運転者の意図に反する制御が、ＥＣＵの故障や不具合などに起因して実行されるリスクも存在する。
【０００４】
このような状況にあって、車載ネットワークには機能安全及びセキュリティの確保が求められている。
【０００５】
従来の機能安全の手法としては、ＥＣＵなどを冗長化する方法が知られており、例えば特許文献１では、複数のゲートウェイ装置を備えるネットワークシステムが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−２５００９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載のネットワークシステムにおいては、セキュリティが考慮されていない。例えば、グローバルバスに不正ＣＡＮコマンドを注入するような攻撃をこのネットワークシステムが受けた場合、そのメインゲートウェイ又はサブゲートウェイは、その攻撃コマンドをそのままローカルバスに送信してしまう。つまり、攻撃者は、このネットワークシステムのローカルバス内への不正侵入が可能である。
【０００８】
また、メインゲートウェイが攻撃者に乗っ取られ、メインゲートウェイ自身がローカルバスへ直接不正ＣＡＮコマンドを注入するような攻撃をうけた場合、特許文献１に記載のネットワークシステムでは、この攻撃を検知して排除することができない。
【０００９】
本発明は、機能安全に対応するよう冗長化されたネットワークシステムが、セキュリティを脅かす攻撃を排除し、かつ機能を維持することができる情報処理装置、情報処理システム、情報処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために本発明の一態様に係る情報処理装置は、第１のゲートウェイ、第２のゲートウェイ、及び少なくとも１つの電子制御ユニットが接続されたネットワークに流れる通信データを送受信する第１の通信部と、この通信データが正常か否かを判断する監視部と、監視部が通信データは正常でないと判断した場合に、第１のゲートウェイの転送機能及び第２のゲートウェイの転送機能の一方が有効であり、他方が無効である状態にするための通知を、少なくとも第２のゲートウェイへ送信する通知部とを備える。
【発明の効果】
【００１１】
本発明によれば、冗長化によって機能安全に対応するネットワークシステムにおいて、攻撃による異常を検知した場合も、このネットワークシステムの機能を維持することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１における情報処理システムの構成を示すブロック図
【図２】ＣＡＮプロトコルで規定されるデータフレームの構造を示す図
【図３】実施の形態１における第１のＧＷの構成を示すブロック図
【図４】実施の形態１における転送リストのデータ構成の一例
【図５】実施の形態１における第２のＧＷの構成を示すブロック図
【図６】実施の形態１における情報処理装置の構成を示すブロック図
【図７】実施の形態１における情報処理システムの動作を説明するためのシーケンス図
【図８】実施の形態２における情報処理システムの構成を示すブロック図
【図９】実施の形態２における第１のＧＷの構成を示すブロック図
【図１０】実施の形態２における第２のＧＷの構成を示すブロック図
【図１１】実施の形態２における情報処理装置の構成を示すブロック図
【図１２】実施の形態２における情報処理システムの動作を説明するためのシーケンス図
【発明を実施するための形態】
【００１３】
（実施の形態１）
以下、本発明の実施の形態１における情報処理システムについて図面を参照しながら説明する。
【００１４】
［１．１  情報処理システム１０の構成］
情報処理システム１０は、図１に示すように、第１のゲートウェイ（以下、第１のＧＷと表記する）１０１、第２のゲートウェイ（以下、第２のＧＷと表記する）１０２、情報処理装置１０３、通信ＥＣＵ１０４、及び複数のＥＣＵ１０５を備える。
【００１５】
情報処理システム１０では、上記の各構成要素がＣＡＮバスを用いて接続されるネットワークが形成されている。図１の例では、ＣＡＮバス１、ＣＡＮバス２、及びＣＡＮバス３のそれぞれにＥＣＵ１０５が接続されており、ＣＡＮバス１、ＣＡＮバス２、及びＣＡＮバス３（以下、ＣＡＮバス１〜３とも表記する）は、第１のＧＷ１０１及び第２のＧＷ１０２を介して相互に接続されている。
【００１６】
また、情報処理装置１０３は、ＣＡＮバス１〜３と接続されている。さらに、図１の例では、第１のＧＷ１０１と第２のＧＷ１０２とは、各ＣＡＮバスとは別の配線である専用線６００でも接続されている。専用線６００は、第１のＧＷ１０１と第２のＧＷ１０２との間の直接通信に用いられる。
【００１７】
情報処理システム１０は、例えば車載ネットワーク上で構成されるネットワークシステムであり、この車載ネットワークは、それぞれのＥＣＵ、ＧＷ、情報処理装置などの各構成要素がＣＡＮコマンドと呼ばれる通信データを送受信することで、様々な機能を実現している。例えば、先進運転者支援システム（ＡＤＡＳ：Advanced Driver Assistance System、以下、ＡＤＡＳと表記する）の一機能である駐車支援機能、車線維持支援機能、衝突回避支援機能などでは、電子制御化されたステアリング、アクセル、ブレーキなどをそれぞれ動作させるアクチュエータの制御が車載ネットワークを流れるＣＡＮコマンドによって行われることで実現される。
【００１８】
第１のＧＷ１０１及び第２のＧＷ１０２は、このようなネットワークを流れるＣＡＮコマンドを受信して、受信したＣＡＮコマンドを、当該ＣＡＮコマンドのＩＤ（ＣＡＮ  ＩＤ）ごとに指定されたＣＡＮバスへ送信（転送）する転送機能を有する。例えば、第１のＧＷ１０１がＣＡＮバス２から受信したＣＡＮコマンドのＣＡＮ  ＩＤが「０ｘ０１１」であり、このＣＡＮ  ＩＤに対してあらかじめ指定された転送先がＣＡＮバス１の場合、第１のＧＷ１０１は、当該ＣＡＮコマンドをＣＡＮバス１へ転送する。ＣＡＮ  ＩＤ及びＣＡＮコマンドの転送先の指定については後述する。
【００１９】
また、上述のように第２のＧＷ１０２と専用線６００で接続されている第１のＧＷ１０１は、第２のＧＷ１０２から専用線６００を介して送信される通知に基づき転送機能を無効化（強制停止）する。
【００２０】
情報処理装置１０３は、ＣＡＮバス１〜３を流れるＣＡＮコマンドを受信し、受信したＣＡＮコマンドが正常か否かを判断して、正常でない（異常である）と判断した場合に、第２のＧＷ１０２へ所定の通知を送信する。
【００２１】
ここで、情報処理装置１０３が第２のＧＷ１０２へ送信する所定の通知とは、情報処理システム１０（又は車載ネットワーク）を、第１のＧＷ１０１の転送機能が無効であり、第２のＧＷ１０２の転送機能が有効な状態にするための通知である。より具体的な例を上げると、情報処理装置１０３が受信した通信データが正常でない（異常である）こと、第１のＧＷ１０１の転送機能を無効化すること、又は第２のＧＷ１０２の転送機能を有効化することを示す通知である。第２のＧＷ１０２は、このような通知の受信に応じて、後述する動作を実行する。
【００２２】
通信ＥＣＵ１０４は、第１のＧＷ１０１と外部ネットワーク５００（例えばインターネット）との間の接続経路にあって、情報処理システム１０の外部の情報処理装置であるサーバ装置１１との間で外部ネットワーク５００を介して通信データを送受信する。情報処理装置１０３は、このように外部の情報処理装置と接続してするデータのやり取りを通じて実現される機能、例えばより精度又は利便性の高い運転支援のための機能を提供することができる。
【００２３】
しかしながら、このような外部との接続のためのインタフェースは、ハッカー等の攻撃者が情報処理システム１０に不正にアクセスするための侵入口にもなり得る。ただし、このインタフェース経由の不正なアクセスを完全に防ぐのは技術的に極めて困難である。したがって、情報処理システム１０のセキュリティを向上させるには、攻撃者による侵入後の被害の発生又は拡大を防いで、その影響を抑える技術が不可欠であり、本実施の形態における情報処理装置１０３等もまたそのような技術を実現する。
【００２４】
各ＥＣＵ１０５は、自身が接続しているＣＡＮバス１〜３の何れかを介して、予め定められたＣＡＮ  ＩＤを持つＣＡＮコマンドを送受信する。
【００２５】
図１に示す情報処理システム１０は、攻撃を受けていない時又は攻撃の検知前（以下、あわせて通常時ともいう）において、第１のＧＷ１０１が備えるＣＡＮコマンドの転送機能が有効であり、第２のＧＷ１０２が備えるＣＡＮコマンドの転送機能は無効な状態にある。つまり、第２のＧＷ１０２は、ＣＡＮコマンドの転送処理を行わない待機状態にある。
【００２６】
通信ＥＣＵ１０４を介して第１のＧＷ１０１が攻撃者によりハッキングされ、第１のＧＷ１０１が実行するプログラムが不正に書き換えられるなどすると、情報処理システム１０は、攻撃者が操る第１のＧＷ１０１から不正なＣＡＮコマンドが流され得る状態となる。
【００２７】
情報処理装置１０３は、受信したＣＡＮコマンドが異常であると判断した場合（不正なＣＡＮコマンドを検知した場合）、ＣＡＮバス１〜３の何れかを介して、上述の所定の通知を第２のＧＷ１０２へ送信する。
【００２８】
この通知を受信した第２のＧＷ１０２は、専用線６００を介して、第１のＧＷ１０１に自身の転送機能を無効化させるための通知を第１のＧＷ１０１へ送信し、さらに自身の転送機能を有効化する。この通知を受信した第１のＧＷ１０１は、自身の転送機能を無効化する。以降、ＣＡＮデータの転送処理が第２のＧＷ１０２によって実行されることで情報処理システム１０の機能が維持される。
【００２９】
［１．２  データフレーム］
ここで、ＣＡＮプロトコルに従ったネットワークでの通信（ＣＡＮ通信）で用いられるデータのフォーマットの１つであるデータフレームについて説明する。
【００３０】
図２は、ＣＡＮプロトコルで規定されるデータフレームの構造を示す図である。図２に示されるのは、ＣＡＮプロトコルで規定されるデータフレームのうち、標準フォーマットと呼ばれるデータフレームの構造である。データフレームは、ＳＯＦ（Start Of Frame）、ＩＤフィールド、ＲＴＲ（Remote Transmission Request）、ＩＤＥ（Identifier Extension）、予約ビット「ｒ」、ＤＬＣ（Data Length Code）、データフィールド、ＣＲＣ（Cyclic Redundancy Check）シーケンス、ＣＲＣデリミタ「ＤＥＬ」、ＡＣＫ（Acknowledgement）スロット、ＡＣＫデリミタ「ＤＥＬ」、及び、ＥＯＦ（End Of Frame）の各フィールドで構成される。以下、本発明の説明で別途触れるフィールドについて簡単に説明する。
【００３１】
ＩＤフィールドは、データの種類を示す値であるＩＤを格納する、１１ｂｉｔで構成されるフィールドであり、このＩＤが上述のＣＡＮ  ＩＤである。また、このＩＤは複数のノードが同時に送信を開始した場合の通信調停にも用いられ、優先度のより高いフレームに、より値の小さいＩＤが付与されるよう設計されている。
【００３２】
データフィールドは、最大６４ｂｉｔで構成され、データを格納するフィールドであり、このフィールドのデータ長は、直前のＤＬＣフィールドに示される。
【００３３】
情報処理システム１０において各ＥＣＵが送受信し、第１ＧＷ１０１及び第２ＧＷ１０２が転送するＣＡＮコマンドは、上述のデータフレームに格納される通信データである。各ＥＣＵは、規定の種類のデータをデータフィールドに、その種類のデータに対応する規定のＣＡＮ  ＩＤをＩＤフィールドに格納してデータフレームを生成する。このようにＣＡＮコマンドに格納されるＣＡＮ  ＩＤ並びに対応するデータの種類及び構成等の規定は、車両メーカ等によって車載ネットワークの仕様として予め定められる。
【００３４】
なお、ＣＡＮプロトコルで規定されるデータフレームには、拡張フォーマットと呼ばれるもうひとつの種類がある。拡張フォーマットにおいても、上記で簡単に説明したフィールドに相当する役割のフィールドがあり、本発明はいずれのフォーマットのデータにも適用可能である。ただし、本発明に係る情報処理装置等は、これらのＣＡＮプロトコルのフォーマット以外のデータの通信に用いられるネットワークにも適用することができる。上記のフォーマットの説明は、本発明の理解の便宜のためになされるものであって、本発明を限定する趣旨ではない。
【００３５】
［１．３  第１のＧＷ１０１の構成］
続いて、第１のＧＷ１０１の詳細な構成を説明する。図３は、第１のＧＷ１０１の機能構成を示すブロック図である。
【００３６】
第１のＧＷ１０１は、図３に示すように、第１の送受信部２０１、転送リスト記憶部２０２、通信部２０３、無効化部２０４、及び制御部２０５を機能ブロックとして備える。
【００３７】
第１のＧＷ１０１は、具体的には図示されていない演算処理装置であるマイクロプロセッサ、及び記憶装置であるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ハードディスクなどから構成される。ＲＡＭ、ＲＯＭ、及びハードディスクにはコンピュータプログラムが記憶されており、マイクロプロセッサがこのコンピュータプログラムに従って動作することにより第１のＧＷ１０１はその機能を果たす。
【００３８】
なお、第１のＧＷ１０１の第１の送受信部２０１、転送リスト記憶部２０２、通信部２０３、無効化部２０４、及び制御部２０５は、典型的には集積回路であるＬＳＩとして実現される。これらの各機能ブロックは個別の１チップで実現されてもよいし、複数の機能ブロックが１チップで、又は１つの機能ブロックが複数のチップで実現されてもよい。
【００３９】
また、これらの機能ブロックを実現する集積回路をＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００４０】
また、製造後にプログラム可能なＦＰＧＡ（Field Programmable Gate Array）、内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサ等のプログラマブルロジックデバイスを利用してもよい。
【００４１】
その他、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。
【００４２】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【００４３】
また、各機能ブロックはソフトウェアで実現されてもよいし、ＬＳＩとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは耐タンパ化されていてもよい。
【００４４】
以下、第１のＧＷ１０１の各機能ブロックについて説明する。
【００４５】
（１）第１の送受信部２０１
第１の送受信部２０１は、ＣＡＮバスに流れるＣＡＮコマンドを受信し、また、ＣＡＮバスにＣＡＮコマンドを送信する。さらに、第１の送受信部２０１は、受信したＣＡＮコマンドの転送先であるＣＡＮバスを、後述する転送リスト記憶部２０２に記憶されるリストに基づいて決定し、決定したＣＡＮバスにＣＡＮコマンドを送信する転送処理を行う。第１のＧＷ１０１の転送機能は、この転送処理を実行する第１の送受信部２０１によって提供される。
【００４６】
（２）転送リスト記憶部２０２
転送リスト記憶部２０２は、ＣＡＮコマンドに含まれるＣＡＮ  ＩＤと、当該ＣＡＮ  ＩＤを含むＣＡＮコマンドの転送先として指定されているＣＡＮバスとを対で示す転送リストを記憶している。転送リストのデータ構成の一例を図４に示す。
【００４７】
図４の例では、ＣＡＮ  ＩＤと、当該ＣＡＮ  ＩＤについて指定の転送先との対が同一行に含まれる。例えば、ＣＡＮ  ＩＤが「０ｘ０１１」のＣＡＮコマンドの転送先はＣＡＮバス１であり、ＣＡＮ  ＩＤが「０ｘ０２１」のＣＡＮコマンドの転送先はＣＡＮバス２である。
【００４８】
（３）通信部２０３
通信部２０３は、専用線６００を介して第２のＧＷ１０２との通信データの送受信を行う。例えば、第２のＧＷ１０２からは、第１のＧＷ１０１に、第１のＧＷ１０１の転送機能を無効化させるための通知（指示）を示す通信データが専用線６００を介して送信される。第１のＧＷ１０１では、この通信データを通信部２０３が受信する。
【００４９】
（４）無効化部２０４
無効化部２０４は、第２のＧＷ１０２からの上記の通知を通信部２０３を介して受信すると、第１の送受信部２０１の転送処理を停止させることで、第１のＧＷ１０１の転送機能を無効化する。第１のＧＷ１０１の転送機能が無効化されることで、攻撃者によるネットワークへの攻撃、例えば不正なＣＡＮコマンドの送り込みが防止され、情報処理システム１０のセキュリティが維持される。
【００５０】
（５）制御部２０５
制御部２０５は、上記（１）〜（４）の各機能ブロックを管理及び制御して、第１のＧＷ１０１の機能を実現する。
【００５１】
［１．４  第２のＧＷ１０２の構成］
続いて、第２のＧＷ１０２の詳細な構成を説明する。図５は、第２のＧＷ１０２の機能構成を示すブロック図である。
【００５２】
第２のＧＷ１０２は、図５に示すように、第２の送受信部３０１、転送リスト記憶部３０２、通信部３０３、無効化通知部３０４、有効化部３０５、及び制御部３０６を機能ブロックとして備える。
【００５３】
第２のＧＷ１０２は、具体的には図示されていない演算処理装置であるマイクロプロセッサ、及び記憶装置であるＲＡＭ、ＲＯＭ、ハードディスクなどから構成される。ＲＡＭ、ＲＯＭ、及びハードディスクにはコンピュータプログラムが記憶されており、マイクロプロセッサがこのコンピュータプログラムに従って動作することにより、第２のＧＷ１０２はその機能を果たす。
【００５４】
なお、第２のＧＷ１０２の第２の送受信部３０１、転送リスト記憶部３０２、通信部３０３、無効化通知部３０４、有効化部３０５、及び制御部３０６は、典型的には集積回路であるＬＳＩとして実現される。これらの各機能ブロックは個別の１チップで実現されてもよいし、複数の機能ブロックが１チップで、又は各機能ブロックが複数のチップで実現されてもよい。
【００５５】
また、これらの機能ブロックを実現する集積回路をＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００５６】
また、製造後にプログラム可能なＦＰＧＡ、内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサ等のプログラマブルロジックデバイスを利用してもよい。
【００５７】
その他、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。
【００５８】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【００５９】
また、各機能ブロックは、ソフトウェアで実現されてもよいし、ＬＳＩとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは耐タンパ化されていてもよい。
【００６０】
以下、第２のＧＷ１０２の各機能ブロックについて説明する。
【００６１】
（１）第２の送受信部３０１
第２の送受信部３０１は、ＣＡＮバスに流れるＣＡＮコマンドを受信し、また、ＣＡＮバスにＣＡＮコマンドを送信する。さらに、第２の送受信部３０１は、受信したＣＡＮコマンドの転送先であるＣＡＮバスを、後述する転送リスト記憶部３０２に記憶されるリストに基づいて決定し、決定したＣＡＮバスにＣＡＮコマンドを送信する転送処理を行う。第２のＧＷ１０２の転送機能は、この転送処理を実行する第２の送受信部３０１によって提供される。ただし、情報処理システム１０において攻撃が検知されていない通常時は、第２の送受信部３０１のこの転送処理は停止している。つまり、通常時の第２のＧＷ１０２は、ＣＡＮコマンドの転送機能が無効化された状態（以下、待機状態ともいう）にある。
【００６２】
（２）転送リスト記憶部３０２
転送リスト記憶部３０２は、ＣＡＮコマンドに含まれるＣＡＮ  ＩＤと、当該ＣＡＮコマンドが転送される転送先のＣＡＮバスとを対で示す転送リストを記憶している。第２のＧＷ１０２が備える転送リストの一例は図４と共通であり、ここではその説明を省略する。
【００６３】
（３）通信部３０３
通信部３０３は、専用線６００を介して第１のＧＷ１０１との通信データの送受信を行う。例えば、通信部３０３から、第１のＧＷ１０１の転送機能を無効化させるための通知（指示）を示す通信データが専用線６００を介して第１のＧＷ１０１へ送信される。第１のＧＷ１０１では、通信部２０３によってこの通信データが受信される。
【００６４】
（４）無効化通知部３０４
無効化通知部３０４は、情報処理装置１０３から、第２の送受信部３０１を介して上述の所定の通知を受信すると、通信部３０３から専用線６００を介して、第１のＧＷ１０１に第１のＧＷ１０１の転送機能を無効化させるための通知（指示）を示す通信データを第１のＧＷ１０１へ送信する。
【００６５】
（５）有効化部３０５
有効化部３０５は、情報処理装置１０３から、第２の送受信部３０１を介して上述の所定の通知を受信すると、第２の送受信部３０１に転送処理を開始させることで、第２のＧＷ１０２の転送機能を有効化（待機状態を解除）する。第２のＧＷ１０２の転送機能が有効化されることで、第１のＧＷ１０１の転送機能が無効化されても、ネットワーク上では電子制御等のためのＣＡＮコマンドが引き続き転送され、情報処理システム１０の機能が維持される。
【００６６】
（６）制御部３０６
制御部３０６は、上記（１）〜（５）の各機能ブロックを管理及び制御して、第２のＧＷ１０２の機能を実現する。
【００６７】
［１．５  情報処理装置１０３の構成］
続いて、情報処理装置１０３の詳細な構成を説明する。図６は、情報処理装置１０３の機能構成を示すブロック図である。
【００６８】
情報処理装置１０３は、図６に示すように、第１の通信部４０１、監視部４０２、通知部４０３、及び制御部４０４を機能ブロックとして備える。
【００６９】
情報処理装置１０３は、具体的には図示されていない演算処理装置であるマイクロプロセッサ、及び記憶装置であるＲＡＭ、ＲＯＭ、ハードディスクなどから構成される。ＲＡＭ、ＲＯＭ、及びハードディスクにはコンピュータプログラムが記憶されており、マイクロプロセッサがこのコンピュータプログラムに従って動作することにより情報処理装置１０３はその機能を果たす。
【００７０】
なお、情報処理装置１０３の第１の通信部４０１、監視部４０２、通知部４０３、制御部４０４は、典型的には集積回路であるＬＳＩとして実現される。これらの各機能ブロックは個別の１チップで実現されてもよいし、複数の機能ブロックが１チップで、又は１つの機能ブロックが複数のチップで実現されてもよい。
【００７１】
また、これらの機能ブロックを実現する集積回路をＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００７２】
また、製造後にプログラム可能なＦＰＧＡ、内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサ等のプログラマブルロジックデバイスを利用してもよい。
【００７３】
その他、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。
【００７４】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【００７５】
また、各機能ブロックは、ソフトウェアで実現されてもよいし、ＬＳＩとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは耐タンパ化されていてもよい。
【００７６】
このような情報処理装置１０３は、例えば車載ネットワークとして実現される情報処理システム１０に、この車載ネットワークのすべてのＣＡＮバスに接続される監視用のＥＣＵとして実装される。
【００７７】
以下、情報処理装置１０３の各機能ブロックについて説明する。
【００７８】
（１）第１の通信部４０１
第１の通信部４０１は、ＣＡＮバスに流れるＣＡＮコマンドを受信し、また、ＣＡＮコマンドをＣＡＮバスに流して送信する。
【００７９】
（２）監視部４０２
監視部４０２は、情報処理装置１０３と接続されている複数のＣＡＮバス（図１の例ではＣＡＮバス１〜３）を流れるＣＡＮコマンドを、第１の通信部４０１を介して受信し、受信したＣＡＮコマンドが正常か否かを判断する。ＣＡＮコマンドが正常か否かを判断する方法としては、任意の公知の方法が利用可能である。例えば、各ＣＡＮコマンドのＤＬＣフィールドに示されるデータ長とデータフィールドの長さとが整合するか否か、データの種類、つまりＣＡＮ  ＩＤに応じて定まるデータフィールドの値、又は送信タイミングが規定範囲内にあるか否かに基づいて、ＣＡＮコマンドが正常か否かを判断することができる。
【００８０】
（３）通知部４０３
通知部４０３は、第１の通信部４０１が受信したＣＡＮコマンドを、監視部４０２が正常でない（異常である）と判断した場合、第１の通信部４０１を介して、上記の所定の通知を第２のＧＷ１０２へ送信する。
【００８１】
（４）制御部４０４
制御部４０４は、上記（１）〜（３）の各機能ブロックを管理及び制御して、情報処理装置１０３の機能を実現する。
【００８２】
［１．６  情報処理システム１０の動作］
情報処理システム１０において、情報処理装置１０３が受信したＣＡＮコマンドは正常でないと判断した場合に、第１のＧＷ１０１の転送機能を無効化し、第２のＧＷ１０２に代替的に転送機能を実行させる動作の一例について、図７を用いて説明する。図７は、情報処理システム１０の動作を説明するためのシーケンス図である。
【００８３】
この例の動作の開始段階にある情報処理システム１０では、ネットワークに流れる通信データであるＣＡＮコマンドの転送処理を第１のＧＷ１０１が行い、第２のＧＷ１０２は待機状態にあるとする。
【００８４】
情報処理装置１０３の第１の通信部４０１は、接続されている各ＣＡＮバスからＣＡＮコマンドを受信する（ステップＳ７０１）。
【００８５】
第１の通信部４０１によって受信されたＣＡＮコマンドについて、監視部４０２が正常か否かを判断する（ステップＳ７０２）。正常と判断された場合（ステップＳ７０２でＹｅｓ）、情報処理装置１０３における動作の手順はＣＡＮコマンドの受信（ステップＳ７０１）へ戻り、第１の通信部４０１が次のＣＡＮコマンドを受信する。
【００８６】
次々に受信されるＣＡＮコマンドが監視部４０２によって正常と判断され続けている間、第１のＧＷ１０１は受信したＣＡＮコマンドの転送を継続し、第２のＧＷ１０２は引き続き待機状態にある。
【００８７】
受信されたＣＡＮコマンドが正常でないと監視部４０２によって判断された場合（ステップＳ７０２でＮｏ）、通知部４０３が、第１のＧＷ１０１の転送機能を無効化させ、第２のＧＷの転送機能を有効化させるための所定の通知を、第１の通信部４０１を介して第２のＧＷ１０２へ通知する（ステップＳ７０３）。
【００８８】
第２のＧＷ１０２では、第２の送受信部３０１が上記の通知を情報処理装置１０３から受信すると（ステップＳ７０４）、無効化通知部３０４が、第１のＧＷ１０１のＣＡＮコマンドの転送機能を無効化させるための通知を、通信部３０３から第１のＧＷ１０１へ送信する（ステップＳ７０５）。
【００８９】
また、第２のＧＷ１０２ではさらに、有効化部３０５が、第２の送受信部３０１に転送処理を開始させる。これにより、第２のＧＷ１０２は転送機能が有効化され（ステップＳ７０６）、ＣＡＮコマンドの転送を開始する。以降、第２のＧＷ１０２では、ＣＡＮコマンドを受信し、受信したＣＡＮコマンドを転送リスト記憶部３０２にある転送リストに基づいて決定される転送先のＣＡＮバスへ送信する転送処理が第２の送受信部３０１によって行われる。
【００９０】
第１のＧＷ１０１では、通信部２０３がＣＡＮコマンドの転送機能を無効化させるための通知を第２のＧＷ１０２から受信すると（ステップＳ７０７）、無効化部２０４が、第１の送受信部２０１の転送処理を停止させる。これにより、第１のＧＷ１０１のＣＡＮコマンドの転送機能は無効化される（ステップＳ７０８）。
【００９１】
以上のように、本実施の形態によれば、情報処理システム１０において、第１のＧＷ１０１、第２のＧＷ１０２、及び情報処理装置１０３は、ＣＡＮバス１〜３で接続され、第１のＧＷ１０１と第２のＧＷ１０２とは、さらに専用線６００で接続されている。情報処理装置１０３において、受信したＣＡＮコマンドが正常でないと判断された場合、情報処理装置１０３から第２のＧＷ１０２へ、受信したＣＡＮコマンドが正常でないことに応じた所定の通知がＣＡＮバスを介して送信される。この通知を受信した第２のＧＷ１０２は、第１のＧＷ１０１に第１のＧＷ１０１の転送機能を無効化させるための通知を、専用線６００を介して第１のＧＷ１０１へ送信し、また、自身の転送機能を有効化する。以降、情報処理システム１０では、転送機能が有効化された第２のＧＷ１０２によって通信データの転送処理が行われることによって情報処理システム１０の機能は維持される。
【００９２】
上記の転送機能を無効化させるための通知は、専用線６００を用いて安全かつ確実に送信される。これにより、冗長化による機能安全とセキュリティとを兼ね備える情報処理システム１０が提供される。
【００９３】
（実施の形態２）
以下、本発明の実施の形態２における情報処理システムについて図面を参照しながら説明する。
【００９４】
［２．１  情報処理システム８０の構成］
情報処理システム８０は、図８に示すように、第１のゲートウェイ（以下、第１のＧＷと表記する）８０１、第２の（以下、第２のＧＷと表記する）８０２、情報処理装置８０３、通信ＥＣＵ１０４、及び複数のＥＣＵ１０５を備える。
【００９５】
情報処理システム８０では、上記の各構成要素が、ＣＡＮバスを用いて接続されるネットワークが形成されている。図８の例では、ＣＡＮバス１、ＣＡＮバス２、及びＣＡＮバス３のそれぞれにＥＣＵ１０５が接続されており、ＣＡＮバス１、ＣＡＮバス２、及びＣＡＮバス３（以下、ＣＡＮバス１〜３とも表記する）は、第１のＧＷ８０１及び第２のＧＷ８０２を介して相互に接続されている。
【００９６】
さらに、図８の例では、第１のＧＷ８０１と情報処理装置８０３とは、各ＣＡＮバスとは別の配線である専用線６０１でも接続されている。専用線６０１は、情報処理装置８０３と第１のＧＷ８０１との間の直接通信に用いられる。また、第２のＧＷ８０２と情報処理装置８０３とは、各ＣＡＮバスとは別の配線である専用線６０２でも接続されている。専用線６０２は、情報処理装置８０３と第２のＧＷ８０２との間の直接通信に用いられる。なお、専用線６０１は、本実施の形態における第２の専用線及び第３の専用線の例であり、専用線６０２は、本実施の形態における第１の専用線及び第４の専用線の例である。
【００９７】
実施の形態１における情報処理システム１０と同様に、情報処理システム８０もまた例えば車載ネットワークであり、この車載ネットワークは、それぞれのＥＣＵ、ＧＷ、情報処理装置などの各構成要素がＣＡＮコマンドと呼ばれる通信データを送受信することで、様々な機能を実現している。なお、情報処理システム８０におけるＣＡＮコマンドもまた、実施の形態１の説明の中で述べたデータフレームの通信データであり、ここでは説明を省略する。
【００９８】
第１のＧＷ８０１及び第２のＧＷ８０２は、このようなネットワークを流れるＣＡＮコマンドを受信して、受信したＣＡＮコマンドを指定された、当該ＣＡＮコマンドのＩＤ（ＣＡＮ  ＩＤ）ごとに指定されたＣＡＮバスへ送信（転送）する転送機能を有する。例えば、第１のＧＷ８０１がＣＡＮバス２から受信したＣＡＮコマンドのＣＡＮ  ＩＤが「０ｘ０１１」であり、このＣＡＮ  ＩＤに対して指定された転送先がＣＡＮバス１の場合、第１のＧＷ８０１は当該ＣＡＮコマンドをＣＡＮバス１へ転送する。ＣＡＮ  ＩＤ及びＣＡＮコマンドの転送先の指定の詳細は実施の形態１と共通であるため、ここでは説明を省略する。
【００９９】
また、上述のように情報処理装置８０３と専用線６０１で接続されている第１のＧＷ８０１は、情報処理装置８０３からの専用線６０１を介して送信される通知に基づき転送機能を無効化（強制停止）する。同様に、情報処理装置８０３と専用線６０２で接続されている第２のＧＷ８０２は、情報処理装置８０３からの専用線６０２を介して送信される通知に基づき転送機能を有効化（待機状態から復帰）する。
【０１００】
情報処理装置８０３では、ＣＡＮバス１〜３を流れるＣＡＮコマンドを受信し、受信したＣＡＮコマンドが正常か否かが判断される。正常でない（異常である）と判断された場合、情報処理装置８０３から、第１のＧＷ８０１の転送機能を無効化させるための所定の通知が、専用線６０１を介して第１のＧＷ８０１へ送信され、第２のＧＷ８０２の転送機能を有効化させるための所定の通知が、専用線６０２を介して第２のＧＷ８０２へ送信される。
【０１０１】
ここで、情報処理装置８０３から第１のＧＷ８０１へ送信される所定の通知とは、例えば情報処理装置８０３が受信した通信データが正常でない（異常である）こと、第１のＧＷ８０１の転送機能を無効化すること、又は第２のＧＷ１０２の転送機能を有効化することを示す通知である。第１のＧＷ８０１は、このような通知の受信に応じて、後述する動作を実行する。
【０１０２】
また、情報処理装置８０３が第２のＧＷ８０２へ送信する所定の通知とは、例えば情報処理装置８０３が受信した通信データが正常でない（異常である）こと、第２のＧＷ８０２の転送機能を有効化すること、又は第１のＧＷ８０１の転送機能を無効化することを示す通知である。第２のＧＷ８０２は、このような通知の受信に応じて、後述する動作を実行する。
【０１０３】
通信ＥＣＵ１０４及び複数のＥＣＵ１０５は実施の形態１と共通であるため、ここではこれらについての説明を省略する。本発明における情報処理装置８０３等もまた、情報処理システム８０のセキュリティを向上させるために、攻撃者による情報処理システム８０への侵入後の被害の発生又は拡大を防いでその影響を抑える技術を実現する。
【０１０４】
図８に示す情報処理システム８０においては、攻撃を受けていない（又は攻撃の検知前である）通常時において、第１のＧＷ８０１が備えるＣＡＮコマンドの転送機能が有効であり、第２のＧＷ８０２が備えるＣＡＮコマンドの転送機能は無効な状態にある。つまり、第２のＧＷ８０２は、ＣＡＮコマンドの転送処理を行わない待機状態にある。
【０１０５】
通信ＥＣＵ１０４を介して第１のＧＷ８０１が攻撃者によりハッキングされ、第１のＧＷ８０１が実行するプログラムが不正に書き換えられるなどすると、情報処理システム８０は、攻撃者が操る第１のＧＷ８０１から不正なＣＡＮコマンドが流され得る状態となる。
【０１０６】
情報処理装置８０３は、受信したＣＡＮコマンドが異常であると判断した場合（不正なＣＡＮコマンドを検知した場合）、転送機能を無効化させるための通知を専用線６０１を介して第１のＧＷ８０１へ送信し、転送機能を有効化させるための通知を専用線６０２を介して第２のＧＷ８０２へ送信する。
【０１０７】
この通知を情報処理装置８０３から受信した第１のＧＷ８０１は、自身の転送機能を無効化する。また、この通知を情報処理装置８０３から通知を受信した第２のＧＷ８０２は、自身の転送機能を有効化する。以降、情報処理システム８０におけるＣＡＮデータの転送処理は、転送機能が有効化された第２のＧＷ８０２によって実行され、情報処理システム８０の機能は維持される。
【０１０８】
［２．２  第１のＧＷ８０１の構成］
続いて、第１のＧＷ８０１の詳細な構成を説明する。図９は、第１のＧＷ８０１の機能構成を示すブロック図である。
【０１０９】
第１のＧＷ８０１は、図９に示すように、第１の送受信部９０１、転送リスト記憶部９０２、通信部９０３、無効化部９０４、及び制御部９０５を機能ブロックとして備える。
【０１１０】
第１のＧＷ８０１は、具体的には図示されていない演算処理装置であるマイクロプロセッサ、及び記憶装置であるＲＡＭ、ＲＯＭ、ハードディスクなどから構成される。ＲＡＭ、ＲＯＭ、及びハードディスクにはコンピュータプログラムが記憶されており、マイクロプロセッサがこのコンピュータプログラムに従って動作することにより、第１のＧＷ８０１はその機能を果たす。
【０１１１】
なお、第１のＧＷ８０１の第１の送受信部９０１、転送リスト記憶部９０２、通信部９０３、無効化部９０４、及び制御部９０５は、典型的には集積回路であるＬＳＩとして実現される。これらの各機能ブロックは個別の１チップで実現されてもよいし、複数の機能ブロックが１チップで、又は１つの機能ブロックが複数のチップで実現されてもよい。
【０１１２】
また、これらの機能ブロックを実現する集積回路をＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１１３】
また、製造後にプログラム可能なＦＰＧＡ（Field Programmable Gate Array）、内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサ等のプログラマブルロジックデバイスを利用してもよい。
【０１１４】
その他、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。
【０１１５】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０１１６】
また、各機能ブロックはソフトウェアで実現されてもよいし、ＬＳＩとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは耐タンパ化されていてもよい。
【０１１７】
以下、第１のＧＷ８０１の各機能ブロックについて説明する。
【０１１８】
（１）第１の送受信部９０１
第１の送受信部９０１は、ＣＡＮバスに流れるＣＡＮコマンドを受信し、また、ＣＡＮバスにＣＡＮコマンドを送信する。さらに、第１の送受信部９０１は、受信したＣＡＮコマンドの転送先であるＣＡＮバスを、後述する転送リスト記憶部９０２に記憶されるリストに基づいて決定し、決定したＣＡＮバスにＣＡＮコマンドを送信する転送処理を行う。第１のＧＷ８０１の転送機能は、この転送処理を実行する第１の送受信部９０１によって提供される。
【０１１９】
（２）転送リスト記憶部９０２
転送リスト記憶部９０２は、ＣＡＮコマンドに付与されているＣＡＮ  ＩＤと、当該ＣＡＮ  ＩＤを含むＣＡＮコマンドの転送先として指定されているＣＡＮバスとを対で示す転送リストを記憶している。なお、第１のＧＷ８０１が備える転送リストの一例は図４と共通であり、ここではその説明を省略する。
【０１２０】
（３）通信部９０３
通信部９０３は、専用線６０１を介して情報処理装置８０３との通信データの送受信を行う。例えば、情報処理装置８０３からは、第１のＧＷ８０１の転送機能を無効化させるための通知（指示）を示す通信データが専用線６０１を介して送信される。第１のＧＷ８０１では、通信部９０３がこの通信データを受信する。
【０１２１】
（４）無効化部９０４
無効化部９０４は、情報処理装置８０３からの上記の通知を通信部９０３を介して受信すると、第１の送受信部９０１の転送処理を停止させることで、第１のＧＷ８０１の転送機能を無効化する。第１のＧＷ８０１の転送機能が無効化されることで、攻撃者によるネットワークへの攻撃、例えば不正なＣＡＮコマンドの送り込みが防止され、情報処理システム８０のセキュリティが維持される。
【０１２２】
（５）制御部９０５
制御部９０５は、上記（１）〜（４）の各機能ブロックを管理及び制御して、第１のＧＷ８０１の機能を実現する。
【０１２３】
［２．３  第２のＧＷ８０２の構成］
続いて、第２のＧＷ８０２の詳細な構成を説明する。図１０は、第２のＧＷ８０２の機能構成を示すブロック図である。
【０１２４】
第２のＧＷ８０２は、図１０に示すように、第２の送受信部１００１、転送リスト記憶部１００２、通信部１００３、有効化部１００４、及び制御部１００５を機能ブロックとして備える。
【０１２５】
第２のＧＷ８０２は、具体的には図示されていない演算処理装置であるマイクロプロセッサ、及び記憶装置であるＲＡＭ、ＲＯＭ、ハードディスクなどから構成される。ＲＡＭ、ＲＯＭ、及びハードディスクにはコンピュータプログラムが記憶されており、マイクロプロセッサがこのコンピュータプログラムに従って動作することにより、第２のＧＷ８０２はその機能を果たす。
【０１２６】
なお、第２のＧＷ８０２の第２の送受信部１００１、転送リスト記憶部１００２、通信部１００３、有効化部１００４、及び制御部１００５は、典型的には集積回路であるＬＳＩとして実現される。これらの各機能ブロックは個別の１チップで実現されてもよいし、複数の機能ブロックが１チップで、又は各機能ブロックが複数のチップで実現されてもよい。
【０１２７】
また、これらの機能ブロックを実現する集積回路をＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１２８】
また、製造後にプログラム可能なＦＰＧＡ、内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサ等のプログラマブルロジックデバイスを利用してもよい。
【０１２９】
その他、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。
【０１３０】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０１３１】
また、各機能ブロックは、ソフトウェアで実現されてもよいし、ＬＳＩとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは耐タンパ化されていてもよい。
【０１３２】
（１）第２の送受信部１００１
第２の送受信部１００１は、ＣＡＮバスに流れるＣＡＮコマンドを受信し、また、ＣＡＮバスにＣＡＮコマンドを送信する。さらに、第２の送受信部１００１は、受信したＣＡＮコマンドの転送先であるＣＡＮバスを、後述する転送リスト記憶部１００２に記憶されるリストに基づいて決定し、決定したＣＡＮバスにＣＡＮコマンドを送信する転送処理を行う。第２のＧＷ８０２の転送機能は、この転送処理を実行する第２の送受信部１００１によって提供される。ただし、情報処理システム８０において攻撃が検知されていない通常時は、第２の送受信部１００１のこの転送処理は停止している。つまり、通常時の第２のＧＷ８０２は、ＣＡＮコマンドの転送機能が無効化された待機状態にある。
【０１３３】
（２）転送リスト記憶部１００２
転送リスト記憶部１００２は、ＣＡＮコマンドに含まれるＣＡＮ  ＩＤと、当該ＣＡＮコマンドが転送される転送先のＣＡＮバスとを対で示す転送リストを記憶している。第２のＧＷ８０２が備える転送リストの一例は図４と共通であり、ここではその説明を省略する。
【０１３４】
（３）通信部１００３
通信部１００３は、専用線６０２を介して情報処理装置８０３との通信データの送受信を行う。例えば、情報処理装置８０３から、第２のＧＷ８０２の転送機能を有効化させるための通知（指示）を示す通信データが専用線６０２を介して第２のＧＷ８０２へ送信される。第２のＧＷ８０２では、通信部１００３によってこの通信データが受信される。
【０１３５】
（４）有効化部１００４
有効化部１００４は、通信部１００３を介して情報処理装置８０３からの上記の通知を受信すると、第２の送受信部１００１に転送処理を開始させることで第２のＧＷ８０２の通信データの転送機能を有効化（待機状態を解除）する。第２のＧＷ８０２の転送機能が有効化されることで、第１のＧＷ８０１の転送機能が無効化されても、ネットワーク上では電子制御等のためのＣＡＮコマンドが引き続き転送され、情報処理システム８０の機能が維持される。
【０１３６】
（５）制御部１００５
制御部１００５は、上記（１）〜（４）の各機能ブロックを管理及び制御して、第２のＧＷ８０２の機能を実現する。
【０１３７】
［２．４  情報処理装置８０３の構成］
続いて、情報処理装置８０３の詳細な構成を説明する。図１１は、情報処理装置８０３の機能構成を示すブロック図である。
【０１３８】
情報処理装置８０３は、図１１に示すように、第１の通信部１１０１、監視部１１０２、第２の通信部１１０３、第３の通信部１１０４、通知部１１０５、及び制御部１１０６を備える。
【０１３９】
情報処理装置８０３は、具体的には図示されていない演算処理装置であるマイクロプロセッサ、及び記憶装置であるＲＡＭ、ＲＯＭ、ハードディスクなどから構成される。ＲＡＭ、ＲＯＭ、及びハードディスクにはコンピュータプログラムが記憶されており、マイクロプロセッサがこのコンピュータプログラムに従って動作することにより、情報処理装置８０３はその機能を果たす。
【０１４０】
なお、情報処理装置８０３の第１の通信部１１０１、監視部１１０２、第２の通信部１１０３、第３の通信部１１０４、通知部１１０５、及び制御部１１０６は、典型的には集積回路であるＬＳＩとして実現される。これらの各機能ブロックは個別の１チップで実現されてもよいし、複数の機能ブロックが１チップで、又は１つの機能ブロックが複数のチップで実現されてもよい。
【０１４１】
また、これらの機能ブロックを実現する集積回路をＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１４２】
また、製造後にプログラム可能なＦＰＧＡ、内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサ等のプログラマブルロジックデバイスを利用してもよい。
【０１４３】
その他、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。
【０１４４】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０１４５】
また、各機能ブロックは、ソフトウェアで実現されてもよいし、ＬＳＩとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは耐タンパ化されていてもよい。
【０１４６】
このような情報処理装置８０３は、例えば車載ネットワークとして実現される情報処理システム８０に、この車載ネットワークのすべてのＣＡＮバスに接続される監視用のＥＣＵとして実装される。
【０１４７】
以下、情報処理装置８０３の各機能ブロックについて説明する。
【０１４８】
（１）第１の通信部１１０１
第１の通信部１１０１は、ＣＡＮバスに流れるＣＡＮコマンドを受信し、また、ＣＡＮコマンドをＣＡＮバスに流して送信する。
【０１４９】
（２）監視部１１０２
監視部１１０２は、情報処理装置８０３と接続されている複数のＣＡＮバス（図８の例ではＣＡＮバス１〜３）を流れるＣＡＮコマンドを、第１の通信部１１０１を介して受信し、受信したＣＡＮコマンドが正常か否かを判断する。ＣＡＮコマンドが正常か否かを判断する方法については、実施の形態１の情報処理装置１０３の説明で述べたものと共通であり、ここではその説明を省略する。
【０１５０】
（３）第２の通信部１１０３
情報処理装置８０３では、第２の通信部１１０３から専用線６０１を介して第１のＧＷ８０１へ通信データを送信する。例えば、情報処理装置８０３では、第１のＧＷ８０１の転送機能を無効化させるための通知（指示）を示す通信データが第２の通信部１１０３から専用線６０１を介して第１のＧＷ８０１へ送信される。第１のＧＷ８０１では、通信部９０３によってこの通信データが受信される。
【０１５１】
（４）第３の通信部１１０４
情報処理装置８０３では、第３の通信部１１０４から専用線６０２を介して第２のＧＷ８０２へ通信データを送信する。例えば、情報処理装置８０３では、第２のＧＷ８０２の転送機能を有効化させるための通知（指示）を示す通信データが第３の通信部１１０４から専用線６０２を介して第２のＧＷ８０２へ送信される。第２のＧＷ８０２では、通信部１００３によってこの通信データが受信される。
【０１５２】
（５）通知部１１０５
通知部１１０５は、第１の通信部１１０１が受信したＣＡＮコマンドを監視部１１０２が正常でない（異常である）と判断した場合、第１のＧＷ８０１及び第２のＧＷ８０２へ所定の通知を送信する。より具体的には、通知部１１０５から第１のＧＷ８０１へは、転送機能を無効化させるための通知が第２の通信部１１０３を介して送信される。また、通知部１１０５から第２のＧＷ８０２へは、転送機能を有効化させるための通知が第３の通信部１１０４を介して送信される。
【０１５３】
（６）制御部１１０６
制御部１１０６は、上記（１）〜（５）の各機能ブロックを管理及び制御して、情報処理装置８０３の機能を実現する。
【０１５４】
［２．５  情報処理システム８０の動作］
情報処理システム８０において、情報処理装置８０３が受信したＣＡＮコマンドは正常でないと判断した場合に、第１のＧＷ８０１の転送機能を無効化し、第２のＧＷ８０２に代替的に転送処理を実行させる動作の一例について、図１２を用いて説明する。図１２は、情報処理システム８０の動作を説明するためのシーケンス図である。
【０１５５】
この例の動作の開始段階にある情報処理システム８０では、ネットワークに流れる通信データであるＣＡＮコマンドの転送処理を第１のＧＷ８０１が行い、第２のＧＷ８０２は待機状態にあるとする。
【０１５６】
情報処理装置８０３の第１の通信部１１０１は、接続されている各ＣＡＮバスからＣＡＮコマンドを受信する（ステップＳ１２０１）。
【０１５７】
第１の通信部１１０１によって受信されたＣＡＮコマンドについて、監視部１１０２が正常か否かを判断する（ステップＳ１２０２）。正常と判断された場合（ステップＳ１２０２でＹｅｓ）、情報処理装置８０３における動作の手順はＣＡＮコマンドの受信（ステップＳ１２０１）へ戻り、第１の通信部１１０１が次のＣＡＮコマンドを受信する。
【０１５８】
次々に受信されるＣＡＮコマンドが監視部１１０２によって正常と判断され続けている間、第１のＧＷ８０１は受信したＣＡＮコマンドの転送を継続し、第２のＧＷ８０２は引き続き待機状態にある。
【０１５９】
受信されたＣＡＮコマンドが正常でないと監視部１１０２によって判断された場合（ステップＳ１２０２でＮｏ）、通知部１１０５が、第１のＧＷ８０１に、第１のＧＷ８０１の転送機能を無効化させるための所定の通知を、第２の通信部１１０３から第１のＧＷ８０１へ送信する（ステップＳ１２０３）。また、通知部１１０５はさらに、第２のＧＷ８０２に、第２のＧＷ８０２の転送機能を有効化させるための所定の通知を、第３の通信部１１０４から第２のＧＷ８０２へ送信する（ステップＳ１２０６）。
【０１６０】
第１のＧＷ８０１では、通信部９０３が上記の通知を情報処理装置８０３から受信すると（ステップＳ１２０４）、無効化部９０４が、第１の送受信部９０１の転送処理を停止させる。これにより、第１のＧＷ８０１のＣＡＮコマンドの転送機能は無効化される（ステップＳ１２０５）。
【０１６１】
第２のＧＷ８０２では、通信部１００３が上記の通知を情報処理装置８０３から受信すると（ステップＳ１２０７）、有効化部１００４が、第２の送受信部１００１に転送処理を開始させる。これにより、第２のＧＷ８０２の転送機能は有効化され（ステップＳ１２０８）、ＣＡＮコマンドの転送を開始する。以降、第２のＧＷ８０２では、ＣＡＮコマンドを受信し、受信したＣＡＮコマンドの転送を転送リスト記憶部１００２にある転送リストに基づいて決定される転送先のＣＡＮバスへ送信する転送処理が第２の送受信部１００１によって行われる。
【０１６２】
以上のように、本実施の形態によれば、情報処理システム８０において、第１のＧＷ８０１、第２のＧＷ８０２、及び情報処理装置８０３は、ＣＡＮバス及び専用線で接続されている。情報処理装置８０３において、受信したＣＡＮコマンドが正常でないと判断された場合、情報処理装置８０３から、第１のＧＷ８０１の転送機能を無効化させるための通知が専用線６０１を介して第１のＧＷ８０１へ送信され、第２のＧＷ８０２の転送機能を有効化させるための通知が専用線６０２を介して第２のＧＷ８０２へ送信される。情報処理装置８０３からこの通知を受信した第１のＧＷ８０１は、自身の転送機能を無効化する。また、情報処理装置８０３からこの通知を受信した第２のＧＷ８０２は、自身の転送機能を有効化する。以降、転送機能が有効化された第２のＧＷ８０２によって通信データの転送処理が行われることによって情報処理システム８０の機能は維持される。また、上記の転送機能を有効化させるための通知及び無効化させるための通知は、それぞれ専用線６０１及び６０２を用いて安全かつ確実に送信される。これにより、冗長化による機能安全とセキュリティとを実現する情報処理システム８０が提供される。
【０１６３】
（変形例等）
以上のように、本発明に係る技術の例示として実施の形態１及び２を説明した。しかしながら、本発明に係る技術は、これらの実施の形態に限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施形態に含まれる。
【０１６４】
（１）各実施の形態における、ゲートウェイの転送機能を有効化又は無効化させるための通知は、メッセージ認証コード（以下、Message Authentication Codeの頭字語であるＭＡＣと表記する）を付与したＣＡＮコマンドを用いてＣＡＮバスを介する経路で送信されてもよい。具体的には以下のとおりである。
【０１６５】
例えば実施の形態１において、情報処理装置１０３は、いずれかのＣＡＮバスを介して第２のＧＷ１０２へ所定の通知を送信する場合、この通知を送信するためのＭＡＣを付与してもよい。
【０１６６】
また、実施の形態１において、第２のＧＷ１０２は、第１のＧＷ１０１の転送機能を無効化させるための通知を、専用線６００に代えていずれかのＣＡＮバスを介して第１のＧＷ１０１へ送信し、第２のＧＷ１０２は、この通知を送信するためのＣＡＮコマンドにＭＡＣを付与してもよい。
【０１６７】
また、実施の形態２において、情報処理装置８０３は、第１のＧＷ８０１の転送機能を無効化させるための通知を、専用線６０１に代えていずれかのＣＡＮバスを介して第１のＧＷ８０１へ送信し、情報処理装置８０３は、この通知を送信するためのＣＡＮコマンドにＭＡＣを付与してもよい。
【０１６８】
また、実施の形態２において、情報処理装置８０３は、第２のＧＷ８０２の転送機能を有効化させるための通知を、専用線６０２に代えていずれかのＣＡＮバスを介して第２のＧＷ８０２へ送信し、情報処理装置８０３は、この通知を送信するためのＣＡＮコマンドにＭＡＣを付与してもよい。
【０１６９】
これにより、改ざん又はエラーによって完全性が損なわれた通知、又は不正に流された通知によって各ゲートウェイの転送機能が無効化されたり有効化されたりすることが防止される。
【０１７０】
なお、上記のようにＭＡＣを用いる構成では、ＭＡＣの処理負荷が各ゲートウェイ及び情報処理装置の演算処理装置にかかり、また、データフィールドの一部がＭＡＣに占有されるため、処理能力の高い演算処理装置が用いられたり、データ長を抑えたＭＡＣが用いられたりしてもよい。
【０１７１】
また、各実施の形態においてＣＡＮバスを介して送信される通知は、この通知を送信するための専用線を介する経路で送信されてもよい。より具体的には、実施の形態１において、情報処理装置１０３は、第２のＧＷ１０２との間の直接通信に用いられる、専用線６００とは別の専用線で第２のＧＷ１０２と接続され、情報処理装置１０３から第２のＧＷ１０２への所定の通知は、ＣＡＮバスに代えてこの専用線を介して送信されてもよい。これにより、所定の通知は安全かつ確実に送信される。
【０１７２】
なお、上記の各実施の形態の変形例において、情報処理装置から各ゲートウェイへの通知の送信が専用線を介さず、例えばＣＡＮ通信用の物理ポート経由で行われる場合、その通知の送信に用いられる各通信部（第１の通信部４０１、第２の通信部１１０３、第３の通信部１１０４）は、当該通知を送信するための専用のポートとして実装されてもよい。
【０１７３】
（２）各実施の形態及びその変形例において、情報処理装置からゲートウェイにＣＡＮバスを介して送信される上述の各通知の正当性を各ゲートウェイに確認させるために、情報処理装置は、この通知を複数又はすべてのＣＡＮバスを介して同じＣＡＮコマンドで送信してもよい。これにより、ゲートウェイでは、各ＣＡＮバスから受信したＣＡＮコマンド同士を比較して、異なる場合には多数決で正当なＣＡＮコマンドを確認することができる。
【０１７４】
（３）各実施の形態及びその変形例において、ゲートウェイの転送機能の無効化（送受信部による転送処理の停止）は、電気的手段、物理的手段、ソフト的手段の何れによって行われてもよい。
【０１７５】
例えば、電気的手段として、転送機能を無効化させるゲートウェイはシャットダウンされてもよい。また、物理的手段として、ゲートウェイとＣＡＮバスとの接続が切断されてもよい。また、転送機能を無効化させるゲートウェイのソフトウェアの動作が停止されてもよい。このような強制停止は、転送機能を無効化させるゲートウェイ自身に実行させてもよいし、他のゲートウェイ又はＥＣＵによって外部から実行されてもよい。
【０１７６】
（４）上述のゲートウェイとＣＡＮバスとの接続の切断又はソフトウェアの動作の停止に関連して、ゲートウェイの転送機能の無効化は部分的になされてもよい。
【０１７７】
例えば、不正なＣＡＮコマンドが検知されたＣＡＮバスとの接続のみが物理的に切断されてもよいし、このＣＡＮバスを経路とする転送機能に関わるソフトウェアの動作のみが停止されてもよい。このような部分的な無効化のために、ゲートウェイの転送機能を無効化させるための通知には、監視部４０２（又は１１０２）が正常ではないと判断したＣＡＮコマンドが流れるＣＡＮバスを示す情報が含められてもよい。
【０１７８】
なお、ゲートウェイの転送機能のこのような部分的な無効化に対応して、他のゲートウェイの転送機能の有効化も部分的に行われてもよい。
【０１７９】
（５）また、上述のゲートウェイと一部のＣＡＮバスとの接続の切断に関連して、ゲートウェイとＥＣＵとの接続の切断は、段階的に行われてもよい。
【０１８０】
例えば、ゲートウェイに接続される複数のＣＡＮバスには、例えば各ＣＡＮバスに接続されるＥＣＵの機能、流れるＣＡＮコマンドの種類等に基づいて所定の優先順位が設定されており、その優先順位の高い方からゲートウェイとＣＡＮバスとの接続が切断されてもよい。この優先順位は、攻撃によるリスク（被害）の大きさに応じて設定されてもよい。車載ネットワークを例にとると、ＣＡＮバス１のＥＣＵは運転操作系統の機能を有し、ＣＡＮバス２のＥＣＵはドア、ミラー、シート等の駆動の機能を有する場合、ＣＡＮバス１により高い優先順位が設定される。
【０１８１】
また例えば、不正なＣＡＮコマンドの検知後は、まず情報処理システム１０（又は８０）と外部との通信のため通信ＥＣＵとゲートウェイとの接続が切断され、その上で、さらに不正なＣＡＮコマンドが検知される場合に、当該ゲートウェイの転送機能の全部または一部が無効化されてもよい。
【０１８２】
（６）各実施の形態及びその変形例において、通常時における２つのゲートウェイの状態は、一方が転送機能が有効であり、他方は転送機能が無効であるという状態に限定されない。
【０１８３】
例えば２つのゲートウェイは通常時において共に転送機能が有効なメインゲートウェイ及びサブゲートウェイであり、サブゲートウェイがメインゲートウェイの転送機能を補完してもよい。補完のより具体的な例を挙げると、サブゲートウェイは各ＣＡＮバスをモニタリングし、メインゲートウェイによるＣＡＮコマンドの転送に漏れがあった場合に当該ＣＡＮコマンドを転送してもよい。このような構成の情報処理システムでは、ＣＡＮコマンドが正常でないと判断された場合の監視用ＥＣＵからの通知は、メインゲートウェイの転送機能を無効化させるための通知ではあるが、サブゲートウェイの転送機能を有効化させるための通知でなくてもよい。
【０１８４】
（７）各実施の形態及びその変形例においては、２つのゲートウェイのうち一方のみが通信ＥＣＵを介して外部のネットワークと通信可能に接続されているが、本発明における情報処理システムの構成はこれに限定されない。２つのゲートウェイの両方が外部のネットワークと通信可能に物理的に接続されていてもよい。また、通常時には、一方のゲートウェイの外部との通信機能が無効にされていてもよく、もう一方のゲートウェイの通信機能が無効にされた場合に、当該ゲートウェイの通信機能が有効にされてもよい。
【０１８５】
なお、上記には、正常でないＣＡＮコマンドが受信された場合も代替的に実行される転送機能によって情報処理システムの機能が維持される旨の記載があるが、通常時以外は外部の情報処理装置との通信経路が遮断される情報処理システムでは、この通信に依存する機能については制限される。
【０１８６】
（８）各実施の形態及びその変形例における２つのゲートウェイは、２つのゲートウェイに限定されない。２つのゲートウェイは物理的に１つのＥＣＵに実装されており、ソフトウェアなどによって提供される論理的に独立した機能モジュールとして実装されてもよい。
【０１８７】
また、各実施の形態及びその変形例において通常時は待機状態にあるゲートウェイは、情報処理装置１０３（又は８０３）を実現する監視用ＥＣＵと物理的に１つであってもよく、当該ゲートウェイはソフトウェアなどによって提供される機能モジュールとして実装されてもよい。
【０１８８】
（９）各実施の形態及びその変形例において、情報処理装置においてＣＡＮコマンドが正常でないと判断されたときは、当該ＣＡＮコマンドのＣＡＮ  ＩＤに基づいて判別する当該ＣＡＮコマンドを受信するＥＣＵに対して、フェイルセーフモードに移行させるための通知が情報処理装置又はゲートウェイから送信されてもよい。この通知の手段としては、ＣＡＮバスを介した通知、ＥＣＵとの間に別途設けられる専用線を介した通知、及びＭＡＣを付与した通知のいずれであってもよい。この通知を受けたＥＣＵは、フェイルセーフモードに移行することで、不正なＣＡＮコマンドによる制御の影響を回避することができる。ここでのフェイルセーフモードとは、例えば自動車であれば、走行が可能な最小限の機能以外の電子制御を無効にしたり、車両を最低限の安全に停止させたりするようなモードである。
【０１８９】
（１０）各実施の形態及びその変形例において、受信したＣＡＮコマンドが正常でない場合にはゲートウェイの転送機能の有効無効が切り替えられる構成としたが、本発明はその構成に限定されるものではない。
【０１９０】
例えば、車載ネットワーク上のシステムにおいては、ＡＤＡＳの諸機能に関連するＥＣＵや、自動運転機能に関連するＥＣＵなどで、冗長化（多重化）されている場合がある。本発明によって、このような冗長化されているＥＣＵに対しても、攻撃から切り離すことを目的に、主として動作しているＥＣＵの機能を無効化（強制停止）させ、別のＥＣＵで代替処理するために当該機能を有効化させてもよい。
【０１９１】
（１１）各実施の形態及びその変形例は、ＣＡＮ通信が行われるネットワーク上のシステムとして説明されたが、本発明の適用対象はこれに限定されず、他の通信方式によるネットワークを利用するシステムにも適用することができる。例えば、ＣＡＮ  ＦＤ（CAN with Flexible Data rate）、ＴＴＣＡＮ（Time Triggered CAN）、Ｅｔｈｅｒｎｅｔ（登録商標）、ＬＩＮ（Local Interconnect Network）、ＭＯＳＴ（登録商標）（Media Oriented Systems Transport）、ＦｌｅｘＲａｙ（登録商標）などの通信方式が用いられるシステムであってもよい。
【０１９２】
（１２）上記の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なＩＣカード又は単体のモジュールから構成されているとしてもよい。このＩＣカード又はモジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。また、このＩＣカード又はモジュールは、上記のような高集積度の集積回路で実現される超多機能ＬＳＩを含んでもよい。マイクロプロセッサが、ＲＯＭ又はＲＡＭに記憶されるコンピュータプログラムに従って動作することにより、ＩＣカード又はモジュールは、その機能を達成する。このＩＣカード又はモジュールは、耐タンパ性を有してもよい。
【０１９３】
（１３）本発明は、上記の各装置が実行する動作に含まれる処理の手順を含む方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、このコンピュータプログラムからなるデジタル信号であるとしてもよい。
【０１９４】
また、本発明は、上記のコンピュータプログラム又はデジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ（Compact Disc）−ＲＯＭ、ＭＯ（Magneto-Optical）ディスク、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Blu-ray（登録商標） Disc）、半導体メモリーなどに記録したものとしてもよい。また、これらの記録媒体に記録されている上記のデジタル信号であるとしてもよい。
【０１９５】
また、本発明は、上記のコンピュータプログラム又はデジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
【０１９６】
また、本発明は、マイクロプロセッサとメモリーとを備えたコンピュータシステムであって、このメモリーは、上記のコンピュータプログラムを記憶しており、このマイクロプロセッサは、当該コンピュータプログラムに従って動作するとしてもよい。
【０１９７】
また、上記のコンピュータプログラム又はデジタル信号を上記の記録媒体に記録して移送することにより、または上記のコンピュータプログラム又はデジタル信号を上記のネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施されるとしてもよい。
【０１９８】
（１４）上記の各実施の形態及びその変形例は、それぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【０１９９】
本発明にかかる情報処理装置、情報処理システム、情報処理方法、及びプログラムは、攻撃に拠ってネットワークに注入された不正な通信データを検知した場合に、その攻撃を排除しつつ、当該ネットワークの機能を維持することが可能であり、これらの情報処理装置等を利用することはネットワーク上で動く、又はネットワークを含む製品の安全性向上において有用である。
【符号の説明】
【０２００】
１０、８０  情報処理システム
１１  サーバ装置
１０１、８０１  第１のＧＷ
１０２、８０２  第２のＧＷ
１０３、８０３  情報処理装置
１０４  通信ＥＣＵ
１０５  ＥＣＵ
２０１、９０１  第１の送受信部
２０２、３０２、９０２、１００２  転送リスト記憶部
２０３、９０３  通信部
２０４、９０４  無効化部
２０５、３０６、４０４、９０５、１００５、１１０６  制御部
３０１、１００１  第２の送受信部
３０３、１００３  通信部
３０４  無効化通知部
３０５、１００４  有効化部
４０１、１１０１  第１の通信部
４０２、１１０２  監視部
４０３、１１０５  通知部
５００  外部ネットワーク
６００、６０１、６０２  専用線
１１０３  第２の通信部
１１０４  第３の通信部
【図１】
2018182713.tif 000003
【図２】
2018182713.tif 000004
【図３】
2018182713.tif 000005
【図４】
2018182713.tif 000006
【図５】
2018182713.tif 000007
【図６】
2018182713.tif 000008
【図７】
2018182713.tif 000009
【図８】
2018182713.tif 000010
【図９】
2018182713.tif 000011
【図１０】
2018182713.tif 000012
【図１１】
2018182713.tif 000013
【図１２】
2018182713.tif 000014