(57)【要約】  車両制御装置、無効化装置、コンピュータプログラム及び無効化方法の提供。  車両に搭載された装備品の動作を制御する車両制御部と、外部からのアクセスが制限されており、前記車両にて異常が発生した場合に前記車両制御部を無効化する無効化部とを備える。
2019175940.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載された装備品の動作を制御する車両制御部と、
外部からのアクセスが制限されており、前記車両にて異常が発生した場合に前記車両制御部を無効化する無効化部と
を備える車両制御装置。
【請求項２】
前記車両制御部の実行環境とは独立した仮想環境を構築するハイパーバイザを備え、
前記無効化部は、前記ハイパーバイザにより構築される仮想環境下で機能するように構成してある
請求項１に記載の車両制御装置。
【請求項３】
前記無効化部は、前記車両制御部の動作を停止させることにより、前記車両制御部を無効化する
請求項１又は請求項２に記載の車両制御装置。
【請求項４】
前記無効化部は、前記車両制御部が備えるインタフェースの動作を停止させることにより、前記車両制御部を無効化する
請求項１又は請求項２に記載の車両制御装置。
【請求項５】
前記無効化部は、前記車両制御部に代替して前記装備品の動作を制御する
請求項３又は請求項４に記載の車両制御装置。
【請求項６】
前記無効化部は、前記車両における異常の発生を検知する検知装置、または、前記車両の状態を検知する１又は複数種のセンサを接続するインタフェースを備える
請求項１から請求項５の何れか１つに記載の車両制御装置。
【請求項７】
前記無効化部は、前記車両制御部を無効化した後、設定条件を満たした場合に前記車両制御部の無効化を解除する
請求項１から請求項６の何れか１つに記載の車両制御装置。
【請求項８】
前記無効化部は、
前記車両制御部を無効化する場合、該車両制御部に対して無効化を指示するコマンドを送出し、
前記車両制御部は、
無効化を指示するコマンドを取得した場合、正当な権限を有する送出元からのコマンドであるか否かを判断し、
正当な権限を有する送出元からのコマンドであると判断した場合、前記車両制御部を無効化する
請求項３又は請求項４に記載の車両制御装置。
【請求項９】
前記無効化部は、前記車両制御部を無効化する権限の有効性を判定し、判定結果を報知する
請求項１から請求項８の何れか１つに記載の車両制御装置。
【請求項１０】
前記無効化部は、前記車両制御部を無効化した場合、無効化した旨を報知する
請求項１から請求項９の何れか１つに記載の車両制御装置。
【請求項１１】
車両に搭載された装備品の動作を制御する車両制御部の実行環境とは独立した実行環境下で機能するように構成してあり、
外部からのアクセスが制限されており、前記車両にて異常が発生した場合に前記車両制御部を無効化する無効化部
を備える無効化装置。
【請求項１２】
外部からのアクセスが制限されており、車両に搭載された装備品の動作を制御する車両制御部の実行環境とは独立した実行環境下で機能するように構成してあり、
前記車両にて異常が発生した場合に前記車両制御部を無効化する
処理をコンピュータに実行させるためのコンピュータプログラム。
【請求項１３】
外部からのアクセスが制限されており、車両に搭載された装備品の動作を制御する車両制御部の実行環境とは独立した実行環境下にて、
前記車両にて異常が発生した場合に前記車両制御部を無効化する
処理をコンピュータにより実行する無効化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両制御装置、無効化装置、コンピュータプログラム及び無効化方法に関する。
【背景技術】
【０００２】
近年、車両を自動制御する車両制御装置の開発が進んでいる。例えば、特許文献１には、車両周辺の障害物を検出し、自車両と障害物との間の距離が所定の距離となった場合、制動力を発生させる車両制御装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−３０５１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、近年の車両は外部通信機器と通信するための通信インタフェースを搭載していることが多く、サイバー攻撃等により、車両制御装置の制御能力が悪意のある第三者に奪われる可能性がある。この場合、車両において、乗員が意図していないような動作（異常）が起こり得る。【０００５】
本発明は、斯かる事情に鑑みてなされたものであり、車両に異常が発生した場合に、車両制御を無効化することができる車両制御装置、無効化装置、コンピュータプログラム及び無効化方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一態様に係る車両制御装置は、車両に搭載された装備品の動作を制御する車両制御部と、外部からのアクセスが制限されており、前記車両にて異常が発生した場合に前記車両制御部を無効化する無効化部とを備える。【０００７】
一態様に係る無効化装置は、車両に搭載された装備品の動作を制御する車両制御部の実行環境とは独立した実行環境下で機能するように構成してあり、外部からのアクセスが制限されており、前記車両にて異常が発生した場合に前記車両制御部を無効化する無効化部を備える。【０００８】
一態様に係るコンピュータプログラムは、外部からのアクセスが制限されており、車両に搭載された装備品の動作を制御する車両制御部の実行環境とは独立した実行環境下で機能するように構成してあり、前記車両にて異常が発生した場合に前記車両制御部を無効化する処理をコンピュータに実行させるためのコンピュータプログラムである。【０００９】
一態様に係る無効化方法は、外部からのアクセスが制限されており、車両に搭載された装備品の動作を制御する車両制御部の実行環境とは独立した実行環境下にて、前記車両にて異常が発生した場合に前記車両制御部を無効化する処理をコンピュータにより実行する。
【発明の効果】
【００１０】
本願によれば、車両に異常が発生した場合に、車両制御を無効化することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る車両制御装置のハードウェア構成を説明するブロック図である。
【図２】実施の形態１に係る車両制御装置の機能的構成を説明するブロック図である。
【図３】実施の形態１に係る車両制御装置及び異常検知装置が実行する処理の手順を説明するフローチャートである。
【図４】実施の形態２に係る車両制御装置及び異常検知装置が実行する処理の手順を説明するフローチャートである。
【図５】実施の形態３に係る車両制御装置及び異常検知装置が実行する処理の手順を説明するフローチャートである。
【図６】実施の形態４に係る車両制御装置が実行する処理の手順を説明するフローチャートである。
【図７】実施の形態５に係る車両制御装置のハードウェア構成を説明するブロック図である。
【図８】実施の形態５に係る車両制御装置及び異常検知装置が実行する処理の手順を説明するフローチャートである。
【図９】実施の形態６に係る車両制御装置が実行する処理の手順を説明するフローチャートである。
【図１０】実施の形態７に係る車両制御装置のハードウェア構成を説明するブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
（実施の形態１）
図１は実施の形態１に係る車両制御装置１０のハードウェア構成を説明するブロック図であり、図２はその機能的構成を説明するブロック図である。車両制御装置１０は、例えば、車両に搭載された各種装備品の動作を制御するＥＣＵ（Electronic Controller Unit）であり、制御部１１、記憶部１２、及びインタフェース１３Ａ〜１３Ｄを備える。
【００１３】
制御部１１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などにより構成されている。制御部１１が備えるＣＰＵは、ＲＯＭ又は記憶部１２に記憶されている各種コンピュータプログラムをＲＡＭ上に展開して実行することにより、装置全体を本願の車両制御装置として機能させる。
【００１４】
なお、制御部１１は、上記の構成に限定されるものではなく、１又は複数のＣＰＵ、マルチコアＣＰＵ、マイコン等を含む任意の処理回路であればよい。また、制御部１１は、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【００１５】
記憶部１２は、ＥＥＰＲＯＭ（Electronically Erasable Programmable Read Only Memory）などの不揮発性メモリにより構成されており、各種のソフトウェア（コンピュータプログラム）及び各種のデータを記憶する。ここで、記憶部１２に記憶されているソフトウェアには、車両の装備品の動作を制御するためのソフトウェアである通常制御アプリ１２１、仮想環境を構築するためのソフトウェアであるハイパーバイザ１２２、車両において異常が検知された場合に通常制御アプリを強制停止させる緊急制御アプリ１２３が含まれる。また、記憶部１２が記憶する情報には、車両のＩＤ（Identifier）、通常制御アプリ１２１及び緊急制御アプリ１２３が用いる鍵情報等の各種認証データが含まれていてもよい。
【００１６】
本実施の形態に係る車両制御装置１０は、通常制御アプリ１２１が実行される通常実行環境１２０Ａと、通常実行環境１２０Ａとは独立した実行環境であり、使用するメモリ空間及びインタフェースが通常実行環境１２０Ａとは物理的又は論理的に離隔されたセキュア実行環境１２０Ｂとを有する（図２を参照）。実施の形態１に係るセキュア実行環境１２０Ｂは、ハイパーバイザ１２２により構築される仮想環境であり、この仮想環境下において緊急制御アプリ１２３が実行される。なお、セキュア実行環境１２０Ｂには、外部からのアクセスが制限されており、内部で実行される処理メカニズムが外部から観測又は改変されることが困難であることが好ましい。
【００１７】
インタフェース１３Ａ，１３Ｂは、通常実行環境１２０Ａにおいて使用されるインタフェースであり、それぞれ車両の操作系ＥＣＵ２０及び駆動系ＥＣＵ３０に接続されている。操作系ＥＣＵ２０には、ブレーキペダルなどの車両の走行を制御するために乗員によって操作される操作装置が接続される。また、駆動系ＥＣＵ３０には、ブレーキパッドなどの車両の走行を制御する制御装置（装備品）が接続される。また、駆動系ＥＣＵ３０には、エンジン若しくは駆動用のバッテリシステムなどの車両の駆動源（装備品）が接続されていてもよい。
【００１８】
制御部１１は、操作系ＥＣＵ２０から出力される信号を、インタフェース１３Ａを通じて取得する。例えば、乗員によりブレーキペダルが踏み込まれた場合、操作系ＥＣＵ２０は、ブレーキペダルがどの程度踏み込まれているのかを把握し、踏み込み量を示す信号を出力する。制御部１１は、操作系ＥＣＵ２０から出力されるブレーキペダルの踏み込み量を示す信号をインタフェース１３Ａを通じて取得する。
【００１９】
また、制御部１１は、通常実行環境１２０Ａにて実行される通常制御アプリ１２１を通じて駆動系ＥＣＵ３０へ出力すべき制御信号を生成し、生成した制御信号をインタフェース１３Ｂから駆動系ＥＣＵ３０へ出力することにより、駆動系ＥＣＵ３０に接続された制御対象の制御を行う。例えば、制御部１１は、ブレーキペダルの踏み込み量を示す信号をインタフェース１３Ａを通じて取得した場合、ブレーキペダルの踏み込み量に応じてブレーキパッドを制御するために、制御信号を生成し、インタフェース１３Ｂを通じて、ブレーキパッドが接続された駆動系ＥＣＵ３０へ制御信号を出力する。
【００２０】
なお、本実施の形態では、車両制御装置１０のインタフェース１３Ａ，１３Ｂに操作系ＥＣＵ２０及び駆動系ＥＣＵ３０を接続する構成としたが、ブレーキＥＣＵ、ステアリングＥＣＵ、トランスミッションＥＣＵ、エンジンＥＣＵ等の個別のＥＣＵを設け、これらのＥＣＵを通じて車両が備える各種装備品の動作を制御する構成としてもよい。また、車両制御装置１０は、ＣＡＮ（Controller Area Network）、ＬＩＮ（Local Interconnect Network）、Ｅｔｈｅｒｎｅｔ（登録商標）、又はＭＯＳＴ（Media Oriented Systems Transport）等の通信規格に準じた通信インタフェースを備え、車内通信回線を介して接続された他のＥＣＵへ制御信号を送信することにより、車両が備える各種装備品の動作を制御する構成としてもよい。
【００２１】
インタフェース１３Ｃ，１３Ｄは、セキュア実行環境１２０Ｂにおいて使用されるインタフェースであり、それぞれ駆動系ＥＣＵ３０及び異常検知装置４０に接続されている。異常検知装置４０は、例えば、車両の状態を検知する１又は複数種のセンサを備え、センサからの出力に基づき、車両に異常が発生したか否かを判断する。
【００２２】
異常検知装置４０は、公知の手法を用いて、車両において発生した異常を検知することができる。例えば、異常検知装置４０は、ブレーキペダルを踏む乗員の操作を検知するセンサからの出力と、実際にブレーキ装置が作動しているか否かを検知するためにブレーキパッドに取り付けられたセンサからの出力とを組み合わせ、乗員がブレーキペダルを操作していないにも関わらず、ブレーキ装置が作動していることを検知した場合、車両に異常が発生したと判断してもよい。
【００２３】
また、異常検知装置４０は、赤外線レーザ、ミリ波レーダ、車載カメラなどの車外の状況を把握することができるセンサからの出力を取得し、例えば障害物が検知されているにも関わらず、ブレーキ装置が作動していないことを検知した場合において、車両に異常が発生したと判断してもよい。
【００２４】
更に、異常検知装置４０は、ハンドブレーキを引く乗員の操作を検知するセンサからの出力と、ブレーキペダルを踏む乗員の操作を検知するセンサからの出力とを組み合わせて、車両に異常が発生したか否かを判断する構成としてもよい。
【００２５】
異常検知装置４０は、車両に異常が発生したと判断した場合、その旨の検知結果をインタフェース１３Ｄを通じて緊急制御アプリ１２３に通知する。緊急制御アプリ１２３は、車両に異常が発生した旨の通知を受信した場合、通常制御アプリ１２１を強制停止させるためのコマンド（以下、強制停止コマンド）をハイパーバイザ１２２を介して通常制御アプリ１２１へ送信することにより、通常制御アプリ１２１を強制停止させる。すなわち、緊急制御アプリ１２３は、車両Ｃが備える装備品の動作を制御する車両制御装置１０の本来の機能を無効化する。
【００２６】
また、緊急制御アプリ１２３は、通常制御アプリ１２１を強制停止させた後、車両を安全に停止させるべく、車両を停止させるための制御信号をインタフェース１３Ｃを通じて駆動系ＥＣＵ３０へ出力してもよい。
【００２７】
図３は実施の形態１に係る車両制御装置１０及び異常検知装置４０が実行する処理の手順を説明するフローチャートである。異常検知装置４０は、予め設定されたタイミング若しくは定期的なタイミング等の適宜のタイミングにて、車両における異常を検知する異常検知処理を実行する（ステップＳ１０１）。このとき、異常検知装置４０は、センサからの出力を取得し、取得したセンサからの出力に基づき、車両に異常が発生したか否かを判断する（ステップＳ１０２）。異常が発生していないと判断した場合（Ｓ１０２：ＮＯ）、異常検知装置４０は、処理をステップＳ１０１に戻し、異常検知処理を継続する。
【００２８】
異常が発生したと判断した場合（Ｓ１０２：ＹＥＳ）、異常検知装置４０は、車両に異常が発生した旨を緊急制御アプリ１２３へ通知する（ステップＳ１０３）。異常検知装置４０からの通知は、インタフェース１３Ｄを通じて、セキュア実行環境１２０Ｂにおいて実行されている緊急制御アプリ１２３へ送信される。
【００２９】
緊急制御アプリ１２３は、車両に異常が発生した旨の通知を受信した場合、ハイパーバイザ１２２を介して強制停止コマンドを通常制御アプリ１２１へ送信することにより、通常制御アプリ１２１を強制的に停止させる（ステップＳ１０４）。
【００３０】
また、緊急制御アプリ１２３は、通常制御アプリ１２１を強制的に停止させた後、車両を安全に停止させるべく、車両を停止させるための制御信号をインタフェース１３Ｃを通じて駆動系ＥＣＵ３０へ出力する（ステップＳ１０５）。
【００３１】
以上のように、本実施の形態では、サイバー攻撃等により車両に異常が発生したことを検知した場合、通常制御アプリ１２１を強制的に停止させる（すなわち車両制御装置１０の本来の機能を無効化する）構成であるため、乗員の意図しない走行制御を回避することができる。また、車両制御装置１０の制御能力が奪われた場合であっても、最低限の制御を保つことができ、車両を安全に停止させることができる。
【００３２】
なお、本実施の形態では、インタフェース１３Ｄに異常検知装置４０を接続し、異常検知装置４０による検知結果をインタフェース１３Ｄを通じて取得する構成としたが、車両の状態を検知する各種センサをインタフェース１３Ｄに接続し、各種センサからの出力に基づいて、緊急制御アプリ１２３が車両における異常の発生の有無を判断してもよい。
【００３３】
（実施の形態２）
実施の形態１では、車両における異常が検知された場合、通常制御アプリ１２１を強制的に停止させる構成としたが、通常制御アプリ１２１を停止させる代わりに、通常実行環境１２０Ａにおいて使用されるインタフェース１３Ａ，１３Ｂの動作を停止させる構成としてもよい。
実施の形態２では、車両における異常が検知された場合、通常実行環境１２０Ａにおいて使用されるインタフェース１３Ａ，１３Ｂの動作を停止させる構成について説明する。なお、車両制御装置１０のハードウェア構成及び機能的構成は実施の形態１と同様であるため、その説明を省略することとする。
【００３４】
図４は実施の形態２に係る車両制御装置１０及び異常検知装置４０が実行する処理の手順を説明するフローチャートである。異常検知装置４０は、実施の形態１と同様の手順にて車両における異常を検知した場合、車両に異常が発生した旨を緊急制御アプリ１２３へ通知する（ステップＳ２０１〜Ｓ２０３）。
【００３５】
緊急制御アプリ１２３は、車両に異常が発生した旨の通知を受信した場合、通常実行環境１２０Ａにおいて使用されるインタフェース１３Ａ，１３Ｂの動作を停止させるためのコマンドを通常制御アプリ１２１へ送信し、通常制御アプリ１２１の制御によりインタフェース１３Ａ，１３Ｂの動作を停止させる（ステップＳ２０４）。
【００３６】
また、緊急制御アプリ１２３は、インタフェース１３Ａ，１３Ｂの動作を強制的に停止させた後、車両を安全に停止させるべく、車両を停止させるための制御信号をインタフェース１３Ｃを通じて駆動系ＥＣＵ３０へ出力する（ステップＳ２０５）。
【００３７】
以上のように、本実施の形態では、サイバー攻撃等により車両に異常が発生した場合、通常実行環境下で使用されるインタフェース１３Ａ，１３Ｂの動作を停止させることによって、車両制御装置１０としての本来の機能を無効化する構成であるため、乗員の意図しない走行制御を回避することができる。また、車両制御装置１０の制御能力が奪われた場合であっても、最低限の制御を保つことができ、車両を安全に停止させることが可能となる。
【００３８】
なお、本実施の形態では、通常制御アプリ１２１の制御によりインタフェース１３Ａ，１３Ｂの動作を停止させる構成としたが、緊急制御アプリ１２３がインタフェース１３Ａ，１３Ｂの双方にアクセス可能である場合、緊急制御アプリ１２３の制御によりインタフェース１３Ａ，１３Ｂの動作を停止させる構成としてもよい。この場合、緊急制御アプリ１２３の権限を通常制御アプリ１２１の権限よりも強く設定して、通常制御アプリ１２１からのインタフェース１３Ａ，１３Ｂの強制停止を禁止し、緊急制御アプリ１２３からの制御によりインタフェース１３Ａ，１３Ｂの動作を強制的に停止させる構成としてもよい。サイバー攻撃等の影響により通常実行環境１２０Ａが正常に機能しない場合であっても、セキュア実行環境１２０Ｂから、インタフェース１３Ａ，１３Ｂの動作を強制的に停止させることができるので、通常制御アプリ１２１を強制的に停止させる実施の形態１と比較して安全性を高めることが可能となる。
【００３９】
また、本実施の形態では、インタフェース１３Ａ，１３の双方の動作を停止させる構成としたが、インタフェース１３Ｂの動作のみを停止させる構成としてもよい。
【００４０】
（実施の形態３）
実施の形態１では、車両における異常が検知された場合、通常制御アプリ１２１を強制的に停止させる構成としたが、強制的に停止させた後、設定された条件を満たした場合、通常制御アプリ１２１を再起動する構成としてもよい。
実施の形態３では、通常制御アプリ１２１を強制的に停止させた後、設定された条件を満たした場合、通常制御アプリ１２１を再起動する構成について説明する。なお、車両制御装置１０のハードウェア構成及び機能的構成は実施の形態１と同様であるため、その説明を省略することとする。
【００４１】
図５は実施の形態３に係る車両制御装置１０及び異常検知装置４０が実行する処理の手順を説明するフローチャートである。異常検知装置４０は、実施の形態１と同様の手順にて車両における異常を検知した場合、車両に異常が発生した旨を緊急制御アプリ１２３へ通知する（ステップＳ３０１〜Ｓ３０３）。
【００４２】
緊急制御アプリ１２３は、車両に異常が発生した旨の通知を受信した場合、ハイパーバイザ１２２を介して強制停止コマンドを通常制御アプリ１２１へ送信することにより、通常制御アプリ１２１を強制的に停止させる（ステップＳ３０４）。
【００４３】
また、緊急制御アプリ１２３は、通常制御アプリ１２１を強制的に停止させた後、車両を安全に停止させるべく、車両を停止させるための制御信号をインタフェース１３Ｃを通じて駆動系ＥＣＵ３０へ出力する（ステップＳ３０５）。
【００４４】
次いで、緊急制御アプリ１２３は、設定された条件が満たされたか否かを判断する（ステップＳ３０６）。条件として、例えば通常制御アプリ１２１の強制停止からの経過時間を採用することができる。この場合、緊急制御アプリ１２３は、通常制御アプリ１２１を強制的に停止させてから設定時間が経過した場合、条件が満たされたと判断する。また、条件として、強制停止の解除を指示する信号の入力を採用することができる。この場合、緊急制御アプリ１２３は、強制停止の解除を指示する信号が外部から入力された場合、条件が満たされたと判断する。
【００４５】
設定された条件が満たされていないと判断した場合（Ｓ３０６：ＮＯ）、緊急制御アプリ１２３は、設定された条件が満たされるまで待機する。また、設定された条件が満たされたと判断した場合（Ｓ３０６：ＹＥＳ）、緊急制御アプリ１２３は、通常制御アプリ１２１を再起動するコマンドをハイパーバイザ１２２を介して出力し、通常制御アプリ１２１を再起動させる（ステップＳ３０７）。
【００４６】
以上のように、本実施の形態では、サイバー攻撃等により車両に異常が発生し、車両制御装置１０の本来の機能を無効化した後であっても、設定された条件を満たした場合には、車両制御装置１０の本来の機能を回復させることができる。
【００４７】
（実施の形態４）
実施の形態４では、通常制御アプリ１２１が強制停止コマンドを受信した場合、強制停止コマンドの送信元が正当な権限を有するか否かを検証する構成について説明する。なお、車両制御装置１０のハードウェア構成及び機能的構成は実施の形態１と同様であるため、その説明を省略することとする。
【００４８】
図６は実施の形態４に係る車両制御装置１０が実行する処理の手順を説明するフローチャートである。異常検知装置４０は、実施の形態１と同様の手順にて、車両における異常を検知した場合、車両に異常が発生した旨を緊急制御アプリ１２３へ通知する。
【００４９】
緊急制御アプリ１２３は、適宜のタイミングにて、車両に異常が発生した旨の通知を異常検知装置４０から受信したか否かを判断する（ステップＳ４０１）。通知を受信していない場合（Ｓ４０１：ＮＯ）、緊急制御アプリ１２３は、異常検知装置４０からの通知を受信するまで待機する。
【００５０】
異常検知装置４０からの通知を受信したと判断した場合（Ｓ４０１：ＹＥＳ）、緊急制御アプリ１２３は、通常制御アプリ１２１を強制的に停止させる強制停止コマンドをハイパーバイザ１２２を通じて通常制御アプリ１２１へ送信する（ステップＳ４０２）。本実施の形態では、強制停止コマンドを送信する際、通常制御アプリ１２１を停止させる正当な権限を有するアプリであることを示す認証情報を併せて送信する。
【００５１】
通常制御アプリ１２１は、例えば定期的なタイミングにて、強制停止コマンドを受信したか否かを判断する（ステップＳ４０３）。強制停止コマンドを受信していない場合（Ｓ４０３：ＮＯ）、通常制御アプリ１２１は、以下の処理を実行せずに、本フローチャートによる処理を終了する。
【００５２】
強制停止コマンドを受信したと判断した場合（Ｓ４０３：ＹＥＳ）、通常制御アプリ１２１は、強制停止コマンドと共に送信されてくる認証情報に基づき、強制停止コマンドの送信元を認証するか否かを判断する（ステップＳ４０４）。例えば、通常制御アプリ１２１は、記憶部１２に予め記憶されている認証情報と、強制停止コマンドと共に受信した認証情報とが一致するか否かを判断することにより、強制停止コマンドの送信元を認証するか否かを判断することができる。強制停止コマンドの送信元を認証しないと判断した場合（Ｓ４０４：ＮＯ）、通常制御アプリ１２１は、以下の処理を実行せずに、本フローチャートによる処理を終了する。
【００５３】
強制停止コマンドの送信元を認証すると判断した場合（Ｓ４０４：ＹＥＳ）、通常制御アプリ１２１は、自身の動作を強制的に停止させる（ステップＳ４０５）。
【００５４】
以上のように、本実施の形態では、通常制御アプリ１２１が強制停止コマンドを受信した際、送信元の認証可否を判断し、認証できる場合にのみ強制停止させる構成であるため、正当な権限を有していない外部装置等から強制停止コマンドを受信した場合には、それによって強制停止に移行することが回避される。
【００５５】
なお、本実施の形態では、緊急制御アプリ１２３からの認証情報に基づき、通常制御アプリ１２１が認証処理を実行する構成としたが、通常制御アプリ１２１と緊急制御アプリ１２３との間で相互認証を行う構成としてもよい。また、通常制御アプリ１２１を強制停止させた後、車両を安全に停止させるべく、緊急制御アプリ１２３から、車両を停止させるための制御信号を駆動系ＥＣＵ３０へ出力してもよい。
【００５６】
また、本実施の形態では、緊急制御アプリ１２３から送信される強制停止コマンドに基づき、通常制御アプリ１２１が自身の動作を強制的に停止させる構成としたが、通常制御アプリ１２１を停止させるアプリを別途用意し、このアプリからＯＳ（Operating System）の機能を利用して通常制御アプリ１２１の動作を強制的に停止させる構成としてもよい。なお、通常制御アプリ１２１を強制的に停止させる別のアプリは、通常制御アプリ１２１よりも強い権限（例えば、ルート権限）を有していることが好ましい。
【００５７】
（実施の形態５）
実施の形態５では、通常制御アプリ１２１を強制的に停止させた場合、その旨を乗員に報知する構成について説明する。
【００５８】
図７は実施の形態５に係る車両制御装置１０のハードウェア構成を説明するブロック図である。実施の形態５に係る車両制御装置１０は、制御部１１、記憶部１２、及びインタフェース１３Ａ〜１３Ｄに加え、表示装置５０を接続するためのインタフェース１３Ｅを備える。制御部１１、記憶部１２、及びインタフェース１３Ａ〜１３Ｄの動作は実施の形態１と同様である。
【００５９】
インタフェース１３Ｅは、本実施の形態ではセキュア実行環境１２０Ｂの双方において使用されるインタフェースであり、表示装置５０に接続されている。表示装置５０は、例えば液晶モニタを備えたナビゲーション装置であり、インタフェース１３Ｅを通じて出力される情報を表示する。なお、通常実行環境１２０Ａにおいて使用され、表示装置５０に接続されたインタフェースを更に備える構成であってもよい。
【００６０】
図８は実施の形態５に係る車両制御装置１０及び異常検知装置４０が実行する処理の手順を説明するフローチャートである。異常検知装置４０は、実施の形態１と同様の手順にて車両における異常を検知した場合、車両に異常が発生した旨を緊急制御アプリ１２３へ通知する（ステップＳ５０１〜Ｓ５０３）。
【００６１】
緊急制御アプリ１２３は、車両に異常が発生した旨の通知を受信した場合、ハイパーバイザ１２２を介して強制停止コマンドを通常制御アプリ１２１へ送信することにより、通常制御アプリ１２１を強制的に停止させる（ステップＳ５０４）。
【００６２】
また、緊急制御アプリ１２３は、通常制御アプリ１２１を強制的に停止させた後、車両を安全に停止させるべく、車両を停止させるための制御信号をインタフェース１３Ｃを通じて駆動系ＥＣＵ３０へ出力する（ステップＳ５０５）。
【００６３】
更に、緊急制御アプリ１２３は、通常制御アプリ１２１を強制的に停止させた旨を乗員に報知すべく、その旨の情報をインタフェース１３Ｅから出力することによって、通常制御アプリ１２１を強制的に停止させた旨の情報を表示装置５０に表示させる（ステップＳ５０６）。
【００６４】
以上により、本実施の形態では、通常制御アプリ１２１を強制的に停止させた旨を表示装置５０に表示させることができるので、乗員は、車両制御装置１０による正常な制御により動作が停止したことを把握することができる。
【００６５】
なお、本実施の形態では、通常制御アプリ１２１を強制的に停止させた旨の情報を表示装置５０に表示する構成としたが、音声により乗員に報知してもよいことは勿論のことである。
【００６６】
（実施の形態６）
実施の形態６では、緊急制御アプリ１２３が通常制御アプリ１２１を強制停止させる権限を有するものであることを検証し、その検証結果を乗員に報知する構成について説明する。
【００６７】
図９は実施の形態６に係る車両制御装置１０が実行する処理の手順を説明するフローチャートである。緊急制御アプリ１２３は、車両のイグニッションがオフからオンに切り替えられたタイミング等の適宜のタイミングで以下の処理を実行する。緊急制御アプリ１２３は、自身が通常制御アプリ１２１を強制停止させる権限を有するか否かを判断する（ステップＳ６０１）。このとき、緊急制御アプリ１２３は、通常制御アプリ１２１に割り当てられている固有の認証情報を通常制御アプリ１２１から取得し、自身が予め記憶している認証情報と、通常制御アプリ１２１から取得した認証情報とが一致するか否かを判断することによって、自身が通常制御アプリ１２１を強制停止させる権限を有するか否かを判断することができる。
【００６８】
権限を有していないと判断した場合（Ｓ６０１：ＮＯ）、緊急制御アプリ１２３は、以下の処理を実行せずに本フローチャートによる処理を終了する。
【００６９】
一方、権限を有していると判断した場合（Ｓ６０１：ＹＥＳ）、緊急制御アプリ１２３は、自身が通常制御アプリ１２１を強制停止させる権限を有する旨の情報をインタフェース１３Ｅから出力することによって、表示装置５０にその旨の情報を表示させる（ステップＳ６０２）。
【００７０】
以上のように、本実施の形態では、通常制御アプリ１２１を強制的に停止させる権限を持った緊急制御アプリ１２３の存在を乗員に報知することができる。
【００７１】
（実施の形態７）
実施の形態１では、使用するメモリ空間及びインタフェースが物理的又は論理的に離隔された通常実行環境１２０Ａとセキュア実行環境１２０Ｂとを用意し、それぞれの実行環境下において通常制御アプリ１２１及び緊急制御アプリ１２３を実行する構成としたが、通常制御アプリ１２１による機能を実現するハードウェアと、緊急制御アプリ１２３による機能を実現するハードウェアとを個別に設ける構成としてもよい。
実施の形態７では、それぞれ独立したハードウェアにより通常制御アプリ１２１による機能及び緊急制御アプリ１２３による機能を実現する構成について説明する。
【００７２】
図１０は実施の形態７に係る車両制御装置１０のハードウェア構成を説明するブロック図である。車両制御装置１０は、例えば、車両に搭載された各種装備品の動作を制御するＥＣＵであり、通常制御モジュール１０Ａ及び緊急制御モジュール１０Ｂを備える。
【００７３】
通常制御モジュール１０Ａは、ハードウェアモジュールであり、制御部１１Ａ、記憶部１２Ａ、及びインタフェース１３Ａ，１３Ｂを備える。制御部１１Ａは、ＣＰＵ、ＲＯＭ、ＲＡＭなどにより構成されている。制御部１１Ａが備えるＣＰＵは、ＲＯＭ又は記憶部１２Ａに記憶されている各種コンピュータプログラムをＲＡＭ上に展開して実行することにより、装置全体を本願の車両制御部として機能させる。
【００７４】
なお、制御部１１Ａは、上記の構成に限定されるものではなく、１又は複数のＣＰＵ、マルチコアＣＰＵ、マイコン等を含む任意の処理回路であればよい。また、制御部１１Ａは、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【００７５】
記憶部１２Ａは、ＥＥＰＲＯＭなどの不揮発性メモリにより構成されており、各種のソフトウェア（コンピュータプログラム）及び各種のデータを記憶する。ここで、記憶部１２Ａに記憶されているソフトウェアには、車両の装備品の動作を制御するためのソフトウェアである通常制御アプリ１２１が含まれる。また、記憶部１２Ａが記憶する情報には、車両のＩＤ、通常制御アプリ及び緊急制御アプリが用いる鍵情報等の各種認証データが含まれてもよい。
【００７６】
インタフェース１３Ａ，１３Ｂは、通常制御モジュール１０Ａにおいて使用されるインタフェースであり、それぞれ車両の操作系ＥＣＵ２０及び駆動系ＥＣＵ３０に接続されている。操作系ＥＣＵ２０には、ブレーキペダルなどの車両の走行を制御するために乗員によって操作される操作装置が接続される。また、駆動系ＥＣＵ３０には、ブレーキパッドなどの車両の走行を制御する制御装置（装備品）が接続される。また、駆動系ＥＣＵ３０には、エンジン若しくは駆動用のバッテリシステムなどの車両の駆動源（装備品）が接続されてもよい。
【００７７】
制御部１１Ａは、操作系ＥＣＵ２０から出力される信号をインタフェース１３Ａを通じて取得する。例えば、乗員によりブレーキペダルが踏み込まれた場合、操作系ＥＣＵ２０は、ブレーキペダルがどの程度踏み込まれているのかを把握し、踏み込み量を示す信号を出力する。制御部１１Ａは、操作系ＥＣＵ２０から出力されるブレーキペダルの踏み込み量を示す信号をインタフェース１３Ａを通じて取得する。
【００７８】
また、制御部１１Ａは、駆動系ＥＣＵ３０へ出力すべき制御信号を生成し、生成した制御信号をインタフェース１３Ｂから駆動系ＥＣＵ３０へ出力することにより、駆動系ＥＣＵ３０に接続された制御対象の制御を行う。例えば、制御部１１Ａは、ブレーキペダルの踏み込み量を示す信号をインタフェース１３Ａを通じて取得した場合、ブレーキペダルの踏み込み量に応じてブレーキパッドを制御するために、制御信号を生成し、インタフェース１３Ｂを通じて、ブレーキパッドが接続された駆動系ＥＣＵ３０へ制御信号を出力する。
【００７９】
緊急制御モジュール１０Ｂは、外部からのアクセスが制限されており、内部で実行される処理メカニズムが外部から観測又は改変されることが困難なハードウェアモジュールである。緊急制御モジュール１０Ｂの一例は、セキュアエレメントである。
【００８０】
緊急制御モジュール１０Ｂは、制御部１１Ｂ、記憶部１２Ｂ、及びインタフェース１３Ｃ，１３Ｄを備える。制御部１１Ｂは、ＣＰＵ、ＲＯＭ、ＲＡＭなどにより構成されている。制御部１１Ｂが備えるＣＰＵは、ＲＯＭ又は記憶部１２Ｂに記憶されている各種コンピュータプログラムをＲＡＭ上に展開して実行することにより、モジュール全体を本願の無効化部として機能させる。
【００８１】
なお、制御部１１Ｂは、上記の構成に限定されるものではなく、１又は複数のＣＰＵ、マルチコアＣＰＵ、マイコン等を含む任意の処理回路であればよい。また、制御部１１Ｂは、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【００８２】
記憶部１２Ｂは、ＥＥＰＲＯＭなどの不揮発性メモリにより構成されており、各種のソフトウェア（コンピュータプログラム）及び各種のデータを記憶する。ここで、記憶部１２Ｂに記憶されているソフトウェアには、車両において異常が検知された場合に通常制御アプリを強制停止させる緊急制御アプリ１２３が含まれる。また、記憶部１２Ｂが記憶する情報には、車両のＩＤ、通常制御アプリ及び緊急制御アプリが用いる鍵情報等の各種認証データが含まれる。
【００８３】
インタフェース１３Ｃ，１３Ｄは、緊急制御モジュール１０Ｂにおいて使用されるインタフェースであり、それぞれ駆動系ＥＣＵ３０及び異常検知装置４０に接続されている。異常検知装置４０は、例えば、車両の状態を検知する１又は複数種のセンサを備え、センサからの出力に基づき、車両に異常が発生したか否かを判断する。
【００８４】
異常検知装置４０は、車両に異常が発生したと判断した場合、その旨の検知結果をインタフェース１３Ｄを通じて緊急制御アプリ１２３に通知する。緊急制御アプリ１２３は、車両に異常が発生した旨の通知を受信した場合、通常制御アプリ１２１を強制停止させるためのコマンド（以下、強制停止コマンド）を、通常制御モジュール１０Ａの制御部１１Ａへ出力する。通常制御モジュール１０Ａの制御部１１Ａは、緊急制御モジュール１０Ｂからの強制停止コマンドを受信した場合、通常制御アプリ１２１を強制停止させる。すなわち、緊急制御アプリ１２３は、車両Ｃが備える装備品の動作を制御する通常制御モジュール１０Ａの機能を無効化する。
【００８５】
また、緊急制御アプリ１２３は、通常制御アプリ１２１を強制停止させた後、車両を安全に停止させるべく、車両を停止させるための制御信号をインタフェース１３Ｃを通じて駆動系ＥＣＵ３０へ出力してもよい。
【００８６】
以上のように、本実施の形態では、サイバー攻撃等により車両に異常が発生したことを検知した場合、通常制御アプリ１２１を強制的に停止させる（すなわち通常制御モジュール１０Ａの機能を無効化する）構成であるため、乗員の意図しない走行制御を回避することができる。また、車両制御装置１０の制御能力が奪われた場合であっても、最低限の制御を保つことができ、車両を安全に停止させることができる。更に、緊急制御モジュール１０Ｂをハードウェアとして別体のセキュアエレメントにより構成することにより、物理的な攻撃に対して強くなり、理論上、よりセキュアな環境を提供することができる。
【００８７】
今回開示された実施の形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【００８８】
１０  車両制御装置
１１  制御部
１２  記憶部
１３Ａ〜１３Ｅ  インタフェース
２０  操作系ＥＣＵ
３０  駆動系ＥＣＵ
４０  異常検知装置
５０  表示装置
１２０Ａ  通常実行環境
１２０Ｂ  セキュア実行環境
１２１  通常制御アプリ
１２２  ハイパーバイザ
１２３  緊急制御アプリ
【図１】
2019175940.tif 000003
【図２】
2019175940.tif 000004
【図３】
2019175940.tif 000005
【図４】
2019175940.tif 000006
【図５】
2019175940.tif 000007
【図６】
2019175940.tif 000008
【図７】
2019175940.tif 000009
【図８】
2019175940.tif 000010
【図９】
2019175940.tif 000011
【図１０】
2019175940.tif 000012
【国際調査報告】
2019175940.tif 000013
2019175940.tif 000014
2019175940.tif 000015
2019175940.tif 000016