(57)【要約】【課題】装置を追加せずに不正改竄を検知可能かつ改竄した事実を容易に消せなくすることで、不正改竄の抑止力を向上することが可能な車両制御システムを提供することにある。【解決手段】車両制御システムにおいて、互いに接続される複数の制御装置と、前記複数の制御装置を互いに接続する複数の通信ネットワークと、前記複数の制御装置の内、少なくとも一つ以上の制御装置が、前記通信ネットワーク同士のデータを中継するゲートウェイ機能と、を備え、いずれかの前記制御装置の不揮発性メモリが書換えられる際に、書換え情報を、前記ゲートウェイ機能を有する前記制御装置から選択された、書換え対象ではない前記制御装置の不揮発性メモリに記憶する、ことを特徴とする。【選択図】図２
2019028634.tif 000002
【特許請求の範囲】
【請求項１】
互いに接続される複数の制御装置と、
前記複数の制御装置を互いに接続する複数の通信ネットワークと、
前記複数の制御装置の内、少なくとも一つ以上の制御装置が、前記通信ネットワーク同士のデータを中継するゲートウェイ機能と、を備え、
いずれかの前記制御装置の不揮発性メモリが書換えられる際に、
前記ゲートウェイ機能を有する前記制御装置から選択された、書換え対象ではない前記制御装置の不揮発性メモリに書換え情報を記憶する、ことを特徴とする車両制御システム。
【請求項２】
請求項１に記載の車両制御システムにおいて、
前記書換え情報を前記ゲートウェイ機能を有する前記制御装置の不揮発性メモリに記憶することを特徴とする車両制御システム。
【請求項３】
請求項１に記載の車両制御システムにおいて、
いずれかの前記制御装置の不揮発性メモリが書換えられる際に、前記ゲートウェイ機能を有する前記制御装置が前記複数の制御装置を選択することを特徴とする車両制御システム。
【請求項４】
請求項３に記載の車両制御システムにおいて、
前記書換え情報が、選択された前記複数の制御装置毎に異なる、
ことを特徴とする車両制御システム。
【請求項５】
請求項１に記載の車両制御システムにおいて、
前記書換え情報を、前記制御装置の不揮発性メモリに記憶する際に、
前記不揮発性メモリ内の予め定められた記憶領域内のいずれかに記憶する、
ことを特徴とする車両制御システム。
【請求項６】
請求項１に記載の車両制御システムにおいて、
前記書換え情報を、前記制御装置の不揮発性メモリに記憶する際に、
前記不揮発性メモリ内の所定の記憶領域の内、予め定められた固定場所に記憶する、
ことを特徴とする車両制御システム。
【請求項７】
請求項１に記載の車両制御システムにおいて、前記書換え情報を、前記制御装置の不揮発性メモリに記憶する際に、
前記不揮発性メモリ内の予め定められた記憶領域内のいずれかに記憶する、あるいは前記不揮発性メモリ内の所定の記憶領域の内、予め定められた固定場所に記憶することを可能とし、
前記予め定められた記憶領域内のいずれか、もしくは前記予め定められた固定場所を選択可能とすることを特徴とする車両制御システム。
【請求項８】
請求項１に記載の車両制御システムにおいて、
前記書換え情報の記憶先である、前記ゲートウェイ機能を有する前記制御装置が選択した前記制御装置を識別可能な情報を、
前記ゲートウェイ機能を有する前記制御装置に記憶する、
ことを特徴とする車両制御システム。
【請求項９】
請求項１に記載の車両制御システムにおいて、
前記書換え情報は、書換えを実施した日時、位置情報、あるいはプログラムバージョン名を含む、
ことを特徴とする車両制御システム。
【請求項１０】
請求項１に記載の車両制御システムにおいて、
前記書換え情報は、１ｂｉｔの情報である、ことを特徴とする車両制御システム。
【請求項１１】
請求項９または請求項１０に記載の車両制御システムにおいて、
前記書換え情報は、暗号化して記憶する、ことを特徴とする車両制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車載メモリの改竄検知装置に関する。
【背景技術】
【０００２】
従来、車載通信ネットワークでは、自動車に搭載された制御用コンピュータ（車両用制御装置）であるＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）に記録された、制御対象を制御するためのソフトウェアの書換えを行なっている（例えば、特開２０１６−１６７１１３号公報参照）。
【０００３】
特開２０１６−１６７１１３号公報には、制御対象を制御するためのソフトウェアを記録する書換え可能に設定された記録領域と、前記ソフトウェアを書換えるための書換えプログラムを記録する書き換え不可能に設定された記録領域と、前記書換えプログラムの実行を行うＣＰＵと、を有する車載用制御ユニットが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１６７１１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ソフトウェアの不正な書換え対策として、特開２０１６−１６７１１３号公報に開示される技術のように、書換えた痕跡を残す方法がある。特開２０１６−１６７１１３号公報に開示される技術では、不正なユーザが書換えた痕跡を消去しようとしている場合、記憶場所を特定される恐れがある。
【０００６】
一方、エンジン制御装置などの車両用制御装置は、様々な車両用装置を制御している。例えば、エンジン制御装置は、アクセルセンサから出力された信号に基づいて目標スロットル開度を演算し、実スロットル開度が目標スロットル開度になるようにスロットルモータを制御する。車両用制御装置による制御は、車両の走行に影響を与えるため、制御プログラムなどの不正改竄を検知可能かつ改竄した事実を容易に消せなくすることで、不正改竄の抑止力を向上することが要請される。
【０００７】
本発明の目的は、装置を追加せずに不正改竄を検知可能かつ改竄した事実を容易に消せなくすることで、不正改竄の抑止力を向上することが可能な車両制御システムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明は上記の目的を達成するために、車両制御システムにおいて、互いに接続される複数の制御装置と、前記複数の制御装置を互いに接続する複数の通信ネットワークと、前記複数の制御装置の内、少なくとも一つ以上の制御装置が、前記通信ネットワーク同士のデータを中継するゲートウェイ機能と、を備え、いずれかの前記制御装置の不揮発性メモリが書換えられる際に、書換え情報を、前記ゲートウェイ機能を有する前記制御装置から選択された、書換え対象ではない前記制御装置の不揮発性メモリに記憶する、ことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、装置を追加せずに不正改竄を検知可能かつ改竄した事実を容易に消せなくすることで、不正改竄の抑止力を向上することが可能な車両制御システムを提供することができる。
【００１０】
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態によるエンジン制御装置、ハイブリッド制御装置、モータ制御装置、書換えツールを含む車両制御システムの構成を示すブロック図。
【図２】本発明の第１の実施形態によるエンジン制御装置、ハイブリッド制御装置、モータ制御装置、書換えツールの構成を示すブロック図。
【図３】本発明の第１の実施形態によるハイブリッド制御装置の処理のフローチャートの例を示す図。
【図４】本発明の第１の実施形態によるエンジン制御装置の処理のフローチャートの例を示す図。
【図５】本発明の第１の実施形態によるモータ制御装置の処理のフローチャートの例を示す図。
【発明を実施するための形態】
【００１２】
以下、図面を用いて本発明の第１の実施形態によるハイブリッド制御装置及びエンジン制御装置及びモータ制御装置の構成及び動作を説明する。
【実施例１】
【００１３】
最初に、図１を用いて、車両制御システムのハードウェア構成を説明する。図１は、本発明の第１の実施形態によるエンジン制御装置６、ハイブリッド制御装置１０、モータ制御装置８、書換えツール２１を含む車両制御システムの構成を示すブロック図である。
【００１４】
本実施形態の車両制御システム３００は、燃料の燃焼によってトルクを発生するエンジン１と、クラッチ機構２と、車輪３ａの駆動軸３ｂに連結するモータ３と、モータ３を駆動するインバータ（電力変換装置）４と、バッテリ５と、アクセル開度を検出するアクセルセンサ１１と、スロットル開度を検出するスロットルセンサ１２と、スロットルモータ（スロットル装置）１３と、インジェクター（燃料噴射装置）１４と、点火装置１５と、ブレーキ１６と、ステアリング１９と、エアバッグ２０と、エンジン制御装置６と、クラッチ制御装置７と、モータ制御装置８と、バッテリ制御装置９と、電動パワーステアリング１７と、エアバッグ制御装置１８と、が搭載されて構成される。エンジン制御装置６は、スロットルセンサ１２による検出結果であるスロットル開度を入力し、スロットルモータ１３、インジェクター１４および点火装置１５を制御する。クラッチ制御装置７はクラッチ機構２を制御する。モータ制御装置８はインバータ４を制御することによってモータ３を制御する。バッテリ制御装置９はバッテリ５を制御する。電動パワーステアリング１７は制御装置であってステアリング１９を制御する。エアバッグ制御装置１８はエアバッグ２０を制御する。書換えツール２１は、外部接続する装置であり、例えば、車室内にあるＤＬＣ（Ｄａｔａ  Ｌｉｎｋ  Ｃｏｎｎｅｃｔｏｒ）に接続することで、各制御装置と通信する事が可能である。
【００１５】
さらに、車両制御システム３００には、上述の各制御装置６〜９、１７および１８に対して、指令を出すハイブリッド制御装置１０が搭載される。各制御装置６〜１０、１７および１８は、それぞれが不図示のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ Ｅｒａｓａｂｌｅ Ｐｒｏｇｒａｍｍａｂｌｅ Ｒｅａｄ Ｏｎｌｙ Ｍｅｍｏｒｙ）等を備えて構成され、予め定めた制御プログラムにしたがって信号処理を行う。
【００１６】
また、各制御装置６〜１０、１７および１８は、互いに、通信線１００および／または通信線２００を介して種々の情報を送受信する。通信線１００および通信線２００は、多重通信線であり、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）プロトコルに基づくネットワークを構成する。通信線１００および通信線２００は、多重通信線に限られるものではない。
【００１７】
通信線１００は、主にハイブリッド制御に関わる制御装置を繋いでいるＣＡＮであり、例えば、ハイブリッド制御装置１０、エンジン制御装置６、クラッチ制御装置７、モータ制御装置８、バッテリ制御装置９などが繋がっている。ハイブリッド制御とは、例えば、所定の燃費や運転性を実現するために、トルク配分を決定、指令することである。
【００１８】
通信線２００は、車両制御に関わる制御装置を繋いでいるＣＡＮであり、例えば、ハイブリッド制御装置１０、電動パワーステアリング１７、エアバッグ制御装置１８などが繋がっている。車両制御とは、例えば、ステアリングの制御である。
【００１９】
ハイブリッド制御装置１０は、通信線１００および通信線２００の２本の、目的が異なる通信線に繋がっている。
【００２０】
ハイブリッド制御装置１０は、所定の信号を異なる通信線へ転送するゲートウェイ機能を有する。例えば、書換えツール２１からエンジン制御装置６へＲＯＭの書換え要求信号を送信する場合、ハイブリッド制御装置１０が当該要求信号を転送する。これにより、通信線２００に接続された書換えツール２１から、通信線１００に接続されたエンジン制御装置６へ所定の信号を送信する事が可能となる。
【００２１】
エンジン制御装置６は、スロットルセンサ１２からのスロットル開度などの入力に基づき、スロットルモータ１３、インジェクター１４、点火装置１５を制御する。具体的には、目標スロットル開度や燃料噴射量、点火時期などが制御されることにより、運転状態に応じてエンジン１の出力が制御される。
【００２２】
モータ３は、モータ（電動機）あるいはジェネレータ（発電機）として機能する。具体的には、モータ３は、加速時にはハイブリッド制御装置１０からの信号に基づいてモータ（電動機）として機能し、制動時にはジェネレータ（発電機）として機能してバッテリ５に回生電力を供給し蓄電する。
【００２３】
すなわち、インバータ４は、モータ制御装置８からの指令に基づきバッテリ５からの直流電力を交流電力に変換し、力行時に交流電力をモータ３に供給する。交流電力によりモータ３の固定子に回転磁界が形成され、モータ３の回転子が回転する。また、インバータ４は、回生時に、モータ制御装置８からの指令に基づきモータ３で発電された交流電力を直流電力に変換し、直流電力をバッテリ５に供給する。この直流電力によりバッテリ５が充電される。
【００２４】
なお、バッテリ５に蓄積された電気エネルギは、モータ３用の電力として用いられるほか、不図示のＤＣ−ＤＣコンバータなどを介してエアコンなどの補機類の電力としても用いられる。
【００２５】
書換えツール２１は、各制御装置６〜１０、１７および１８が備えたＲＯＭ等の内部データを書換える事が可能である。例えば、制御プログラムを書換える（リプログラミング）事が可能である。
【００２６】
次に、図２を用いて、本発明をハイブリッド制御装置１０、エンジン制御装置６、モータ制御装置８、書換えツール２１に適用した場合の構成の一例を説明する。図２は、本発明の第１の実施形態によるハイブリッド制御装置１０、エンジン制御装置６、モータ制御装置８、書換えツール２１の構成を示すブロック図である。
【００２７】
ハイブリッド制御装置１０と書換えツール２１はＣＡＮ通信で通信線２００を介して接続されている。ハイブリッド制御装置１０、エンジン制御装置６、モータ制御装置８はＣＡＮ通信で通信線１００を介して接続されている。
【００２８】
ハイブリッド制御装置１０は、受信部３０と、ゲートウェイ機能部３１と、選択部３２と、送信部３３と、を備えて構成される。
【００２９】
受信部３０は、ハイブリッド制御装置１０の外部からの値を入力としており、通信線２００による値を受信する。外部からの入力値は、例えば、制御装置のＲＯＭの書換え要求などである。すなわち、受信部３０は、書換えツール２１から送信された値を、受信する。
【００３０】
ゲートウェイ機能部３１は、受信部３０で受信した値を入力としてゲートウェイ処理を行なう。受信した値が、ハイブリッド制御装置１０以外の制御装置が受信すべき値であった場合に、受信すべき制御装置へ送信するために転送を行なう。
【００３１】
選択部３２は、受信部３０で受信した値が、ハイブリッド制御装置１０以外の制御装置のＲＯＭの書換え要求であった場合に（すなわち、ゲートウェイ機能部３１が、ハイブリッド制御装置ではない制御装置のＲＯＭの書換え要求を転送した場合に）、書換え情報の記憶先を選択し、当該記憶先へ、書換え情報の記憶要求を送信する。選択対象は、ＲＯＭの書換え対象である制御装置を除いた、ハイブリッド制御装置１０が通信可能な制御装置からランダムに選択する。受信部３０で受信した値が、ハイブリッド制御装置ではない制御装置のＲＯＭの書換え要求でなかった場合は、何もしない。
【００３２】
送信部３３は、通信線１００に対する送信部として機能する。ゲートウェイ機能部３１から出力される、ハイブリッド制御装置１０以外の制御装置が受信すべき値、ＩＤなどを含むＣＡＮフレームを、通信線１００を介してハイブリッド制御装置１０の外部へ送信する。また、選択部３２から出力される、書換え情報の記憶要求を入力とし、ＩＤ、書換え情報の記憶要求などを含むＣＡＮフレームを、通信線１００を介してハイブリッド制御装置１０の外部へ送信する。
【００３３】
なお、ＣＡＮ通信では、２本の通信線の電圧差により通信を行うため、外部ノイズの影響を受けにくい。
【００３４】
エンジン制御装置６は、受信部３４と、書換え制御部３５と、ＲＯＭ３６と、を備えて構成される。
【００３５】
受信部３４は、通信線１００に対する受信部として機能する。エンジン制御装置６の外部からの値を入力としており、通信線１００による値を受信する。すなわち、受信部３４は、ハイブリッド制御装置１０の送信部３３から送信された値を、受信する。
【００３６】
書換え制御部３５は、受信部３４で受信した値を入力として、エンジン制御装置６のＲＯＭ書換え処理を行なう。受信した値が、エンジン制御装置６のＲＯＭの書換え要求だった場合、ＲＯＭ３６の書換えを行なう。受信した値が、書換え情報の記憶要求だった場合、ＲＯＭ３６の、例えば所定領域内のいずれかに、書換え情報を記憶する。
【００３７】
ＲＯＭ３６は不揮発性メモリであり、エンジン制御に関わる制御プログラムや適合パラメータなどが記憶されている。
【００３８】
モータ制御装置８は、受信部３７と、書換え制御部３８と、ＲＯＭ３９と、を備えて構成される。
【００３９】
受信部３７は、通信線１００に対する受信部として機能する。モータ制御装置８の外部からの値を入力としており、通信線１００による値を受信する。すなわち、受信部３７は、ハイブリッド制御装置１０の送信部３３から送信された値を、受信する。
【００４０】
書換え制御部３８は、受信部３７で受信した値を入力として、モータ制御装置８のＲＯＭ書換え処理を行なう。受信した値が、モータ制御装置８のＲＯＭの書換え要求だった場合、ＲＯＭ３９の書換えを行なう。受信した値が、書換え情報の記憶要求だった場合、ＲＯＭ３９の、例えば所定領域内のいずれかに、書換え情報を記憶する。
【００４１】
ＲＯＭ３９は不揮発性メモリであり、モータ制御に関わる制御プログラムや適合パラメータなどが記憶されている。
【００４２】
次に、図３を用いて、ハイブリッド制御装置１０の動作を説明する。図３は、本発明の第１の実施形態によるハイブリッド制御装置１０の処理を示すフローチャートの例である。
【００４３】
ステップＳ１０では、受信部３０は、書換えツール２１からの値を入力とし、受信処理を行なう。
【００４４】
ステップＳ１１では、受信部３０で受信した値が、ハイブリッド制御装置１０以外の制御装置が受信すべき値か、ゲートウェイ機能部３１が判定する。ハイブリッド制御装置１０以外の制御装置が受信すべき値かが真の場合は、ステップＳ１２に処理を進める。偽の場合は、ステップＳ１０の前に処理を戻す。
【００４５】
ステップＳ１２では、受信部３０で受信した値を、受信すべき制御装置へ転送する。例えば、受信した値が、エンジン制御装置６が受信すべき制御装置であった場合、受信した値を、送信部３３から、エンジン制御装置６の受信部３４へ、通信線１００を介して送信する。
【００４６】
ステップＳ１３では、受信部３０で受信した値が、ハイブリッド制御装置１０以外の制御装置に備えられたＲＯＭの書換え要求か、選択部３２が判定する。ハイブリッド制御装置１０以外の制御装置に備えられたＲＯＭの書換え要求かが真の場合は、ステップＳ１４に処理を進める。偽の場合は、ステップＳ１４を行なわずに進める。例えば、受信した値が、エンジン制御装置６に備えられたＲＯＭ３６の書換え要求であった場合、真と判定し、ステップＳ１４に処理を進める。
【００４７】
ステップＳ１４では、書換え情報の記憶先をランダムに選択し、当該記憶先へ、書換え情報の記憶要求を送信する。選択対象は、ＲＯＭの書換え対象である制御装置を除いた、ハイブリッド制御装置１０が通信可能な制御装置からランダムに選択する。例えば、ＲＯＭの書換え対象がエンジン制御装置６であった場合、書換え情報の記憶先の対象は、エンジン制御装置６以外の制御装置から選択され、例えばモータ制御装置８である。
【００４８】
ここで、書換え情報とは、書換えた事実（痕跡）を残すための情報であり、例えば、書換えを実施した日時、ＧＰＳ（Ｇｌｏｂａｌ Ｐｏｓｉｔｉｏｎｉｎｇ Ｓｙｓｔｅｍ）から取得した位置情報、書込むデータの情報（例えば書込もうとしているプログラムバージョン名）などを含んだ情報である。
【００４９】
書換え情報は、暗号化して記憶してもよい。例えば、プログラムバージョンからハッシュ値を計算し、ハッシュ値を暗号化して記憶しておき、復号化はディーラーなど正規のユーザのみが可能とすることで、正規のユーザがプログラムバージョンを確認可能となり、行なわれた書換えが正規か不正かを判別する事が可能となる。これにより、改竄の検出可能性を向上出来る。また、暗号化する事で、不正なユーザが書換え情報を記憶した制御装置を特定出来たとしても、書換え情報を特定して消す事がより困難となり、不正改竄の抑止力を向上できる。
【００５０】
なお、必ずしも実行したＲＯＭの書換えと一意に結び付けられる情報でなくともよく、例えば、１ｂｉｔの情報だけでもよく、ＲＯＭを書換える前は所定の領域を０にしておき、ＲＯＭの書換えを行なったら書換え情報として１を書込んでもよい。この場合、書換え情報の演算処理が簡易なものとなり、演算負荷の増加を抑えつつ不正改竄を検知可能となる。
【００５１】
次に、図４を用いて、エンジン制御装置６の動作を説明する。図４は、本発明の第１の実施形態によるエンジン制御装置６の処理を示すフローチャートの例である。
【００５２】
ステップＳ２０では、受信部３４は、ハイブリッド制御装置１０の送信部３３から受信値を受信する。
【００５３】
ステップＳ２１では、受信部３４で受信した値が、エンジン制御装置６のＲＯＭ３６の書換え要求か、書換え制御部３５が判定する。エンジン制御装置６のＲＯＭ３６の書換え要求かが真の場合は、ステップＳ２２に処理を進める。偽の場合は、ステップＳ２３に処理を進める。
【００５４】
ステップＳ２２では、書換え制御部３５が、ＲＯＭ３６の、書換え情報以外のデータ書換えを行なう。例えば、エンジン制御に関わる制御プログラムの書換えや、適合パラメータの書換えを行なう。適合パラメータとは、例えば車速制限値である。
【００５５】
ステップＳ２３では、受信部３４で受信した値が、書換え情報の記憶要求か、書換え制御部３５が判定する。書換え情報の記憶要求かが真の場合は、ステップＳ２４に処理を進める。偽の場合は、ステップＳ２４を行なわずに進める。
【００５６】
ステップＳ２４では、書換え制御部３５が、ＲＯＭ３６に書換え情報を記憶する。
【００５７】
次に、図５を用いて、モータ制御装置８の動作を説明する。図５は、本発明の第１の実施形態によるモータ制御装置８の処理を示すフローチャートの例である。
【００５８】
ステップＳ３０では、受信部３７は、ハイブリッド制御装置１０の送信部３３から受信値を受信する。
【００５９】
ステップＳ３１では、受信部３７で受信した値が、モータ制御装置８のＲＯＭ３９の書換え要求か、書換え制御部３８が判定する。モータ制御装置８のＲＯＭ３９の書換え要求かが真の場合は、ステップＳ３２に処理を進める。偽の場合は、ステップＳ３３に処理を進める。
【００６０】
ステップＳ３２では、書換え制御部３８が、ＲＯＭ３９の、書換え情報以外のデータ書換えを行なう。例えば、モータ制御に関わる制御プログラムの書換えや、適合パラメータの書換えを行なう。
【００６１】
ステップＳ３３では、受信部３７で受信した値が、書換え情報の記憶要求か、書換え制御部３８が判定する。書換え情報の記憶要求かが真の場合は、ステップＳ３４に処理を進める。偽の場合は、ステップＳ３４を行なわずに進める。
【００６２】
ステップＳ３４では、書換え制御部３８が、ＲＯＭ３９に書換え情報を記憶する。
【００６３】
上記の方法により、制御装置のＲＯＭの書換えを実行した場合に、書換え対象ではない制御装置からランダムに選択した制御装置のＲＯＭに書換え情報を記憶することで、改竄した事実を残す事が可能となる。さらに、ランダムに選択することで、書換え情報を記憶した場所を見つけにくくさせ、改竄した事実を容易に消せなくすることで、不正改竄の抑止力を向上できる。例えば、正規の書換えツールが流出し、不正なユーザがＲＯＭの書換えを実行した場合に、書換え情報がどの制御装置に記憶されたかが不正なユーザには容易に見つけられなくなるため、不正なユーザがＲＯＭの書換えを実行した事実の隠蔽のために書換え情報を消去することがより困難となり、不正改竄の抑止力が向上する。
【００６４】
上記実施形態では、通信ネットワークが２つある（通信線１００および通信線２００の２つ）例を説明したが、これに限定せず、通信ネットワークが３つ以上の構成に本発明を適用してもよい。なお、３つ以上の通信ネットワークを備える構成においては、ＲＯＭの書換えを実行する制御装置と、書換え情報を記憶する制御装置が、同一の通信ネットワーク内になくてもよい。
【００６５】
上記実施形態では、制御装置がＣＡＮ通信を行う例を説明したが、これに限定せず、制御装置が例えば、ＬＩＮ（Ｌｏｃａｌ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｎｅｔｗｏｒｋ）、ＦｌｅｘＲａｙ、ＭＯＳＴ（Ｍｅｄｉａ  Ｏｒｉｅｎｔｅｄ  Ｓｙｓｔｅｍｓ  Ｔｒａｎｓｐｏｒｔ）、ＰＬＣ（Ｐｏｗｅｒ  Ｌｉｎｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）、Ｅｔｈｅｒｎｅｔなどの如何なるプロトコルで通信を行うものであってもよいし、複数の制御装置のそれぞれが異なるプロトコルで通信を行う構成に本発明を適用してもよい。
【００６６】
上記実施形態では、制御装置が有線の例を説明したが、これに限定せず、制御装置が無線である構成やＯＴＡ（Ｏｖｅｒ  Ｔｈｅ  Ａｉｒ）に本発明を適用してもよい。例えば、無線通信によって、定期的（週に１回など）に改竄有無を調査してもよい。
【００６７】
以上説明したように、本実施形態によれば、書換え情報を記憶する制御装置を特定しないことで、不正なユーザが、書換えた痕跡の記憶場所を特定しにくく出来る。
【００６８】
（第１の変形例）
書換え情報の記憶先の対象は、ゲートウェイ機能を有する制御装置自身でもよい。例えば、図２の例では、ハイブリッド制御装置１０自身に書換え情報を記憶してもよい。
【００６９】
言い換えると、書き換え情報を、ゲートウェイ機能を有する制御装置の不揮発性メモリに記憶する。
【００７０】
本変形例によれば、書換え情報の記憶先の選択肢を広げることが可能となる。これにより、書換え情報を記憶した場所をより見つけにくくさせ、改竄した事実を容易に消せなくすることで、不正改竄の抑止力が向上する。
【００７１】
（第２の変形例）
書換え情報の記憶先に選択する制御装置は、複数でもよい。例えば、図１の例では、エンジン制御装置６のＲＯＭを書換えた場合、書換え情報の記憶先は、モータ制御装置８およびバッテリ制御装置９のＲＯＭでもよい。その場合、書換え情報の内容は同一でもよいし、制御装置毎に異なる内容としてもよい。同一の場合、改竄有無の判定を、「全てのデータが同一か」で判定してもよい。異なる内容の場合、１つの情報を分割したデータを各制御装置に記憶してもよい。例えば、書換えた場所の位置情報を含む書換え情報（例えば１６バイトデータ）を、モータ制御装置８に上位８バイト、バッテリ制御装置９に下位８バイト記憶するようにしてもよい。ディーラーなどの正規ユーザが読み出す場合、分割したデータを統合して読み出すようにすることで、書換え情報の内容を把握出来るようにしてもよい。
【００７２】
言い換えると、いずれかの制御装置の不揮発性メモリが書き換えられる際に、ゲートウェイ機能を有する制御装置が複数の制御装置を選択することを特徴とする。
【００７３】
また、書き換え情報が、選択された複数の制御装置ごとに異なることを特徴とする。
【００７４】
そして、書き換え情報を、制御装置の不揮発性メモリに記憶する際に、不揮発性メモリ内のあらかじめ定められた記憶領域内のいずれかに記憶することを特徴とする。
【００７５】
本変形例によれば、書換え情報の記憶先の量を増やすことが可能となる。これにより、書換え情報の消去を試みる不正ユーザの労力が増し、改竄した事実を容易に消せなくすることで、不正改竄の抑止力が向上する。
【００７６】
（第３の変形例）
書換え情報の記憶先はＲＯＭ内の領域の内、固定としてもよい。例えば、あらかじめＲＯＭの特定のアドレスに書換え情報を書込むようにしてもよい。なお、「所定領域内のいずれか」と「固定」を選択出来るようにしてもよい。例えば、正規ユーザが不正改竄の抑止力を重視する場合は「所定領域内のいずれか」とし、利便性を重視する場合は「固定」と選択出来るように、カーメーカー側で設定してもよい。
【００７７】
まとめると、書き換え情報を、制御装置の不揮発性メモリに記憶する際に、不揮発性メモリ内の所定の記憶領域の内、あらかじめ定められた固定場所に記憶することを特徴とする。
【００７８】
書換え情報を、制御装置の不揮発性メモリに記憶する際に、不揮発性メモリ内の予め定められた記憶領域内のいずれかに記憶する、あるいは不揮発性メモリ内の所定の記憶領域の内、あらかじめ定められた固定場所に記憶することを可能とし、「あらかじめ定められた記憶領域内のいずれか」あるいは「あらかじめ定められた固定場所」のいずれかを選択可能とすることを特徴とする。
【００７９】
本変形例によれば、ディーラーなどの正規ユーザによる書換え情報の確認工数を低減することが可能となる。これにより、正規ユーザの利便性が向上する。
【００８０】
（第４の変形例）
書換え情報の記憶先を、ゲートウェイ機能を有する制御装置に、暗号化して記憶させてもよい。例えば、図２の例では、書換え情報の記憶先にモータ制御装置８を選択した場合に、ハイブリッド制御装置１０が備えるＲＯＭに、モータ制御装置８を一意に特定出来るＩＤを暗号化して記憶させてもよい。
【００８１】
本変形例によれば、ディーラーなどの正規ユーザによる書換え情報の確認工数を低減することが可能となる。これにより、正規ユーザの利便性が向上する。
【００８２】
なお、上記第１の実施形態では、ハイブリッド制御装置１０、エンジン制御装置６およびモータ制御装置８との間の通信の例を説明したが、他の制御装置、例えば、クラッチ制御装置７、バッテリ制御装置９、電動パワーステアリング１７などの通信に適用してもよい。
【００８３】
上記をまとめると、書換え情報の記憶先である、ゲートウェイ機能を有する制御装置が選択した制御装置を識別可能な情報をゲートウェイ機能を有する制御装置に記憶することを特徴とする。
【００８４】
書換え情報は、書換えを実施した日時、位置情報、あるいはプログラムバージョン名を含むことを特徴とする。
【００８５】
書換え情報は１bitの情報であることを特徴とする。
【００８６】
また、書換え情報は、暗号化して記憶することを特徴とする。
【００８７】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、本発明は、搭載車両の種類に限定されるものではなく、例えば、自動運転機能や自動駐車機能を有する車両に搭載されていてもよい。
【００８８】
また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【符号の説明】
【００８９】
１…エンジン、２…クラッチ機構、３…モータ、４…インバータ（電力変換装置）、５…バッテリ、６…エンジン制御装置、７…クラッチ制御装置、８…モータ制御装置、９…バッテリ制御装置、１０…ハイブリッド制御装置、１１…アクセルセンサ、１２…スロットルセンサ、１３…スロットルモータ（スロットル装置）、１４…インジェクター（燃料噴射装置）、１５…点火装置、１６…ブレーキ、１７…電動パワーステアリング、１８…エアバッグ制御装置、１９…ステアリング、２０…エアバッグ、２１…書換えツール、３０…受信部、３１…ゲートウェイ機能部、３２…選択部、３３…送信部、３４…受信部、３５…書換え制御部、３６…ＲＯＭ、３７…受信部、３８…書換え制御部、３９…ＲＯＭ、１００…通信線、２００…通信線、３００…車両制御システム。
【図１】
2019028634.tif 000003
【図２】
2019028634.tif 000004
【図３】
2019028634.tif 000005
【図４】
2019028634.tif 000006
【図５】
2019028634.tif 000007