JP2014151720A - 改竄検知システム、電子制御ユニット - Google Patents

改竄検知システム、電子制御ユニット Download PDF

Info

Publication number
JP2014151720A
JP2014151720A JP2013021723A JP2013021723A JP2014151720A JP 2014151720 A JP2014151720 A JP 2014151720A JP 2013021723 A JP2013021723 A JP 2013021723A JP 2013021723 A JP2013021723 A JP 2013021723A JP 2014151720 A JP2014151720 A JP 2014151720A
Authority
JP
Japan
Prior art keywords
electronic control
power supply
control unit
power
ecu
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013021723A
Other languages
English (en)
Other versions
JP6011379B2 (ja
Inventor
Masaaki Ichihara
雅明 市原
Yusuke Sato
雄介 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2013021723A priority Critical patent/JP6011379B2/ja
Publication of JP2014151720A publication Critical patent/JP2014151720A/ja
Application granted granted Critical
Publication of JP6011379B2 publication Critical patent/JP6011379B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Power Sources (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】乗員の乗車していない場合にソフトウェアの改竄検知を行うことが可能な改竄検知システムを提供すること。
【解決手段】バッテリー電源13から電源供給可能な2つ以上の電子制御ユニットを有するソフトウェアの改竄検知システム100であって、第1の電子制御ユニット11は、自車両が駐車中であると判断した場合、バッテリー電源をONからOFFに、さらにOFFからONに切り替える電源制御手段57を有し、1つ以上の第2の電子制御ユニット12は、バッテリー電源がONに切り替わることで再起動する際、記憶媒体に記憶されているソフトウェアの改竄の有無を検知する改竄検知手段61を有する、ことを特徴とする。
【選択図】図1

Description

本発明は、ソフトウェアの改竄を検知する改竄検知システムに関する。
パーソナルコンピュータやワークステーションのような汎用型のコンピュータは、HDD(Hard Disk Drive)などの不揮発メモリに記憶されたプログラムを実行することで動作する。汎用型のコンピュータは、ウィルスなどのマルウェアにより不正な動作を行うことが知られており、従来からチェックソフトなどでマルウェアの検知が行われている。
組み込み系のコンピュータもプログラムを実行することで動作するが、プログラムは任意の書き込みが困難なROMに記憶されているためマルウェアの検知に限られず、ROMのプログラムに対する改竄検知が行われる場合がある(例えば、特許文献1参照。)。特許文献1には、ファームウェアのハッシュ値を二次記憶装置に保存しておき、機器の起動時に再計算されたファームウェアのハッシュ値と比較して改竄を検知するという記載がある。
特開2012−146338号公報
ところで、従来、車両に搭載されるマイコンは、このような改竄検知を行っていない。しかし、特許文献1に記載のようにプログラムの改竄検知は機器の起動時に行われることが一般的である。これは、起動後の例えば処理負荷の低い場合に改竄検知を行っても、すでに改竄されたプログラムを実行しているため、不具合が生じたり改竄検知そのものが困難になるおそれがあるためである。
車両の場合、エンジン制御のマイコンやブレーキ制御のマイコンなどがあり、走行に必須のこれらのマイコンのプログラムの改竄を検知することが望まれる。一方、走行に必須のマイコンの起動時に改竄を検知すると、運転者が走行を開始するまでに、毎回、一定時間、待たされるため、利便性が低下してしまうという問題がある。
本発明は、上記課題に鑑み、乗員の乗車していない場合にソフトウェアの改竄検知を行うことが可能な改竄検知システムを提供することを目的とする。
本発明は、バッテリー電源から電源供給可能な2つ以上の電子制御ユニットを有するソフトウェアの改竄検知システムであって、第1の電子制御ユニットは、自車両が駐車中であると判断した場合、バッテリー電源をONからOFFに、さらにOFFからONに切り替える電源制御手段を有し、1つ以上の第2の電子制御ユニットは、バッテリー電源がONに切り替わることで再起動する際、記憶媒体に記憶されているソフトウェアの改竄の有無を検知する改竄検知手段を有する、ことを特徴とする。
乗員の乗車していない場合にソフトウェアの改竄検知を行うことが可能な改竄検知システムを提供することができる。
本実施例の電子制御装置によるプログラムの改竄検知について模式的に説明する図の一例である。 改竄検知システムの概略構成図の一例である。 電源制御コンピュータ又はECUのハードウェア構成図の一例である。 ナビECU、電源制御コンピュータ、及び、ECUの機能ブロック図の一例である。 表示装置に表示される設定画面の一例を示す図である。 電源制御コンピュータとECUの動作手順の一例を示すフローチャート図である。 電源制御コンピュータ又はECUのハードウェア構成図の一例である(実施例2)。 電源制御コンピュータとECUの動作手順の一例を示すフローチャート図である(実施例2)。 電源制御コンピュータのソフトウェアの改竄検知を模式的に説明する図の一例である。
以下、本発明を実施するための形態について図面を参照しながら説明する。しかしながら、本発明の技術的範囲が、本実施の形態に限定されるものではない。
図1は、本実施例の電子制御装置によるプログラムの改竄検知について模式的に説明する図の一例である。
電源制御コンピュータ11は+B電源13のON/OFFを制御することができる。図では+B電源13の系統に複数のECU(Electronic Control Unit)1〜nが接続されている。各ECU1〜nは、+B電源13又はIG電源のECUのいずれでもよい。+B電源13のECUは電源モードがOFFでも動作可能か又はスリープ状態であり、IG電源のECUは電源モードがOFFでは動作しない。
(i) 電源制御コンピュータ11は車両が駐車状態になると、+B電源13をONからOFFに、そして、OFFからONに制御する。
(ii) ECU1〜nは、+B電源13のONにより再起動(リセット)するので、起動プログラムの実行を開始する。起動プログラムはROMからハッシュ値を作成するなどして改竄検知を行う。
(iii) ECU1〜nは改竄検知の結果を電源制御コンピュータ11に送信した後、それぞれのプログラムを実行して主要な機能を提供する(駐車中なのでやがてスリープする。)。
したがって、本実施例によれば、IGスイッチのON時に改竄検知する必要がないので、車両に乗車して走行しようとする運転者や乗員(以下、区別することなくユーザという)を待たせる時間が増大することがない。また、+B電源13を電源とするECUは、不具合の発生時のリセットを除けばバッテリーが脱着されない限り再起動しないので、改竄検知が行われるタイミングを起動時に限定するとほとんど改竄検知される機会がない。これに対し、本実施例では、駐車中に改竄検知を行うことができるので、+B電源13を電源とするECUも充分な頻度で改竄検知することができる。例えば、駐車後、ユーザが走行する前には改竄検知されているので、起動時に改竄検知が行われる場合と同等の効果が得られる。
〔構成例〕
図2は、改竄検知システム100の概略構成図の一例を示す。改竄検知システム100は、電源制御コンピュータ11により制御され、電源制御コンピュータ11は電源系No1を経由してナビECU21、エンジンECU22、及び、ブレーキECU23に+B電源13を供給し、電源系No2を経由してECU E24、ECU F25に+B電源13を供給する(以下、区別しない場合には電源系No1と2のECUを単に「ECU」12という場合がある)。また、電源制御コンピュータ11は通信線No1によりナビECU21、エンジンECU22、及び、ブレーキECU23と通信可能に接続されており、通信線No2によりECU E24、ECU F25と通信可能に接続されている。
電源制御コンピュータ11はスイッチング回路26と通信回路27を有する。スイッチング回路26は+B電源13を電源系毎にON→OFF→ONする(電源系No1のECUは同時にON/OFFし、電源系No2のECUは同時にON/OFFする。)。電源系の数は1例であって、各ECU毎に個別の電源系を有していてもよい。
通信回路27は、コネクタ14を介して各ECUと通信する回路であり、ナビECU21、エンジンECU22、ブレーキECU23、ECU E24及びECU F25は互いに通信可能である。なお、コネクタ14は、物理形状や信号形式などが規定されたワイヤハーネスなどを接続するための接続インタフェースである。
図示するように電源系No1と電源系No2は共に+B電源である。+B電源とはIGスイッチがONかOFFかに拘わらず(電源モードに拘わらす)バッテリーから電力供給可能な電源経路である。これに対しIG電源とはIGスイッチがONに操作され、電源モードがIG−ONの場合にのみ電源供給可能な電源経路である。なお、本実施例ではガソリンエンジン又はディーゼルエンジンを動力源とする車両を例にしているが、ハイブリッド車両や電気自動車にも同様に適用できる。ガソリンエンジン又はディーゼルエンジンを動力源とする車両のIG電源は、IGスイッチでなくパワースイッチがONに操作され、電源モードがREADY−ONの場合にのみ電源供給可能な電源経路である(IGスイッチ又はパワースイッチは特許請求の範囲の原動力始動操作部材に相当する。)。
したがって、ナビECU21、エンジンECU22、ブレーキECU23、ECU E24、及び、ECU F25は、バッテリーが取り外されない限り、常に電力が供給されている。エンジンECU22やブレーキECU23などの走行時に動作するECUのマイコンは、一般に駐車中はスリープモード(動作クロックが低くなる、CPUなどの一部にしか電源供給されない)である。また、ナビECU21は例えばACC ONで動作するが、駐車中はスリープモードである。電源制御コンピュータ11も+B電源13を電源とする。なお、+IG電源のECUについては実施例2にて説明する。
図示するECUは+B電源13を電源とするECUの一例であって、ナビECU21等である必要はない。また、ナビECU21、エンジンECU22、ブレーキECU23、ECU E24、及び、ECU F25が、+B電源13でない車両があってもよく、本実施例は+B電源13のECUの改竄検知例にすぎない。この他にどのようなECUを有していてもよい。
ナビECU21は、GNSS(Global Navigation Satellite System)などにより自車両の位置を検出し、表示装置に道路地図と自車両の位置を表示する。また、目的地が設定されると現在地から目的地までの経路を探索し、右左折の手前で案内する。エンジンECU22は燃料噴射量、点火タイミング、スロットル開度の制御などを行う。ブレーキECU23はブレーキ油圧を生成したり、各輪の制動圧を制御することでESC(Electronic Stability Control)、ABS(Anti-Lock Breaking System)、TRC(Traction Control)などを行う。
図3(a)は、電源制御コンピュータ11又はECU12のハードウェア構成図の一例を示す。ECU12は入力回路31、マイコン32、出力回路33、CAN通信部35、及び、電源回路34を有している。なお、本実施例では特徴部の説明に用いる機能を図示したに過ぎず、ECU12は図示した以外にも機能を有しており、各ECU12の機能は同一でも異なっていてもよい。
入力回路31には各種のセンサーが接続されている。センサーの種類はECU12によって様々であるが、例えばクランクポジションセンサや車輪速センサーなどである。入力回路31は、必要であればA/D変換を行ったり値を加工したりして、センサーの識別情報など共にデジタルデータとしてマイコン32に受け渡す。
出力回路33には、各種のアクチュエータやスイッチ素子、ドライバ回路などが接続されている。出力回路33は必要であればマイコン32の演算結果をD/A変換して、アクチュエータ等に出力する。
マイコン32はCPU36、ROM38、RAM37及び不揮発メモリ39を有する。マイコン32も、図示する以外に割込みコントローラ、I/O、WDT(Watch Dog Timer)、DMAC(Direct Memory Access Controller)、タイマなどを有するが省略されている。CPU36は、ROM38に記憶されたプログラムを実行することでマイコン全体を制御する。ROM38には後述するソフトウェアが記憶されている。RAM37にはプログラムやデータが展開され、RAM37はCPU36がアクセスする作業メモリになる。不揮発メモリ39は電源OFFでも記憶内容が消去されない記憶素子で構成されたメモリである。不揮発メモリ39にはROM38に記憶されているソフトウェアのハッシュ値やサム値が記憶されている。
CAN通信部35は、CAN(Controller Area Network)プロトコルに従い、通信系に接続された電源制御コンピュータ11又はECU12と通信するための通信装置である。CAN通信部35はメッセージを受信するとCPU36に通知する。また、CPU36がメッセージを送信する際は、CPU36からの指示によりメッセージを作成して通信バスに送信する。このCAN通信部35のメッセージの受信は入力の一形態であり、送信は出力の一形態である。なお、CANプロトコルは一例に過ぎず、FrexLay、LIN(Local Interconnect Network)又はイーサネット(登録商標)等の通信プロトコルで通信してもよい。
電源回路34は、+B電源13から所定の電圧を生成してマイコン32のVcc端子41とRST端子40に供給する。また、各ECU12は+B電源13を電源とするので、IGスイッチがOFFでも電源制御コンピュータ11から電源が供給される。しかし、マイコン32がスリープモードに移行した場合に、電源回路34は電源を供給するブロックを制限するなどの省電力制御を行う。
RST端子40は、Vcc端子41の電圧がHighでRST端子40の入力がLowになるとマイコン32をリセットする端子である(アクティブロー)。電源回路34とRST端子40との間にはスイッチ42が配置されている。スイッチ42は、WDTや不図示のマイコン32が任意のタイミングでOFFに制御することで、マイコン32をリセットするためのものである。
電源制御コンピュータ11がスイッチング回路26にて+B電源13をON→OFF→ONに制御すると、マイコン32は再起動する。この場合も、一定時間、RST端子40がLowを維持するので(Highになるまでに一定時間が必要)その間、Vcc端子41の入力がHighとなることからマイコン32がリセットされる。このように、+B電源13のON→OFF→ONにより再起動と、RST端子40のON→OFF→ONによるリセットは、マイコン32が行う動作としては同じである。
図3(b)はROM38に記憶されているソフトウェアを模式的に説明する図の一例である。ROM38にはアプリA〜Cなど、ECU12に特有の制御や処理を行うプログラムの他、ベクタテーブル、及び、システムが記憶されている。システムは、例えばOS、デバイスドライバ、通信用のミドルウェアなどである。OSとしては、OSEK(Open system together with interfaces for automotive electronics)、AUTOSAR(AUTomotive Open System Architecture) OSなどのリアルタイムOSがあるが、これらに限定されるものではない。
ベクタテーブルは、主に割込み発生時や例外発生時にCPU36が実行すべきプログラムのアドレスが登録されたテーブルである。また、ベクタテーブルには、電源ON(+B電源のOFF→ON、バッテリーの脱着)時にCPU36が実行すべきプログラムのアドレス、リセット入力時にCPU36が実行すべきプログラムのアドレスが登録されている(本実施例では同じアドレスが登録されているとする。)。
電源ONやリセット時にCPU36が実行すべきプログラムは、初期化や自己診断を行うプログラムであり、起動プログラムと称することとする。起動プログラムは、初期化部62、自己診断部63及び改竄検知部61を有している。なお、改竄検知部61は、システムの一部でなく、システムとは独立のアプリとして実装されていてもよい。また、ROM38の改竄に対応するため、改竄検知部61を不揮発メモリ39に記憶しておくことも有効である。
初期化部62は、関数呼び出し時や割り込み処理時に戻りアドレスを退避したり変数を確保するためのスタックポインタ、CPU36より低速なメモリにアクセスする場合のバスタイミング、初期値付き変数の初期値設定などを行う。なお、初期化部62は必要であれば初期化の前に、CPU36がプログラムの実行が可能になってからマイコン全体が安定するまでの所定の安定化時間が経過するまで待機する。
自己診断部63は、ハードウェアの自己診断を行う。例えば、入力回路31に接続されているセンサーが応答して正しい検出信号を検出するか否か、出力回路33に接続されているアクチュエータ等が応答し診断用に指示した稼働範囲で可動するか否か等を判定する。また、自己診断部63はRAMチェックを行う。RAMチェックは、RAM37に書き込まれたデータとRAM37から読み出したデータが一致するか否かをチェックする診断方法である。自己診断部63は例えばRAM37の全体に"1"を書き込んだ後、読み出して"1"と一致するか否かを比較する。また、RAM37の全体に"0"を書き込んだ後、読み出して"0"と一致するか否かを比較する。
RAM37が正常な場合、データ復帰部60は再起動前に不揮発メモリ39に退避されたRAM37のデータをRAM37に復帰させる。詳しくは後述する。
そして、改竄検知部61は、ROM38の改竄検知を行う。ROM38の改竄は、例えばハッシュ値やサム値を不揮発メモリ39に記憶しておき、ROM38から作成したハッシュ値やサム値と比較することで行う。ハッシュ値やサム値は、好ましくはROM38の全体に対し作成されるが、例えばアプリA〜Cなど一部から作成してもよい。ハッシュ値の場合、車両の出荷時などにECU12がROM38の全体をハッシュ関数に入力して例えば128〜512ビットのハッシュ値を作成し不揮発メモリ39に記憶させる。サム値の場合、所定のバイト数毎にサム値を計算し、不揮発メモリ39に記憶させる。いずれの方法で改竄を検知してもよいし、両方で改竄を検知してもよい。
起動プログラムの実行が終わると、引き続きシステムの起動が行われ、システムの起動が完了するとCPU36はアプリA〜Cを実行する。
〔改竄検知のための機能〕
図4は、ナビECU21、電源制御コンピュータ11、及び、ECU12の機能ブロック図の一例を示す。ナビECU21は他のECU12と同様に+B電源13のON→OFF→ONにより起動するが、ユーザが改竄検知について設定するためのインタフェースを提供するため別に図示した。したがって、ナビECU21もECU12と同様の機能を有している。また、ユーザが改竄検知について設定するためのインタフェースを提供するのは他のECUでもよい。
ナビECU21は設定画面出力部51と設定送信部52を有している。設定画面出力部51は表示装置53に改竄検知設定画面を表示する。設定送信部52は、ユーザが改竄検知設定画面から設定した改竄検知の設定内容を受け付け、電源制御コンピュータ11に送信する。表示装置53は、液晶や有機ELなどのフラットパネルディスプレイである。ナビECU21が道路地図を表示するための表示装置を兼用できる。
図5は表示装置53に表示される設定画面の一例を示す図である。ユーザが所定の操作方法でナビを操作すると図5(a)の改竄検知設定画面が表示される。改竄検知設定画面には「プログラムの改竄検知を行いますか?」というメッセージに対し「はい」「いいえ」と表示されている。ユーザが「はい」を選択すると改竄検知が行われる。なお、ユーザが「いいえ」を選択した場合でも、電源制御コンピュータ11は重要なECUについては改竄検知することができる。重要なECUとは、エンジンECU22やブレーキECU23など走行に必要なECUである。
「はい」を選択したユーザは、「詳細を設定しますか?」というメッセージに対し「標準設定」又は「詳細設定」を選択する。「標準設定」とは、予め定められたECUに対し、予め定められたタイミングかつ予め定められた間隔で改竄検知を行う設定である。ユーザが「詳細設定」を選択すると、図5(b)のように、任意のECU、タイミング及び間隔を設定することができる。
図5(b)は改竄検知設定画面の詳細設定の一例を示す図である。「改竄検知を行うECUを選択してください」というメッセージに対し選択可能なECUが表示されている。ユーザは任意のECUを選択することができる。なお、電源系としてはNo1とNo2の2つしかないので、ここでユーザが選択したECUと同系統のECUは同時に+B電源13がON/OFFされる。したがって、実際には選択した以上のECU12において改竄検知される。ユーザが選択したECU12のみが改竄検知するには、1つのECUに1つの電源系を用意すればよい。
また、「改竄検知を行うタイミングを設定してください」というメッセージに対し「駐車中」「乗車直前」「時刻設定」が選択可能に表示されている。「駐車中」とは、例えばユーザが降車してドアがロックされた状態、又は、降車後(ドアロック後)所定時間が経過した状態、をいう。「乗車直前」とは、ユーザが乗車する時刻を毎日、記録した場合における乗車が予測される時刻の所定時間前をいう。「時刻設定」をユーザが選択した場合、時計が表示されユーザが任意の時刻を設定する。ユーザは駐車している時間帯(例えば明け方未明)を設定する。電源制御コンピュータ11はこの時刻になると改竄検知を開始するが、車両が駐車していていない場合(例えばドアロックされていない場合)は改竄検知することはない。
「換算検知を行う間隔を設定してください」というメッセージに対し「毎回」「週間隔」「月間隔」が選択可能に表示されている。「毎回」とは「改竄検知を行うタイミングを設定してください」で設定されたタイミングを満たす場合は毎回、改竄検知するという設定である。「週間隔」とは上記タイミングを満たしても最後に改竄検知されてから1週間経過するまでは改竄検知を実行しない設定であり、「月間隔」とは上記タイミングを満たしても1月経過するまでは改竄検知を実行しない設定である。
なお、図5では車載された表示装置53をユーザインタフェースとしているが、ユーザは、インターネット上のサーバと、PC(Personal Computer)やスマートフォンで通信して、タイミングと間隔を設定することもできる。また、例えば、音声にて出力された質問に、音声にて回答することでタイミングや間隔を設定してもよい。
図4に戻り、設定送信部52は、以上の設定内容を電源制御コンピュータ11に送信する。電源制御コンピュータ11は、検知実行判定部55、退避指示部56、+B電源制御部57、及び、検知結果収集部58を有すると共に、ナビECU21から受信した設定内容54を記憶している。検知実行判定部55は、設定内容54に基づき改竄検知を行うタイミングか否かを判定する。また、最後に改竄検知を行った日時を記録している。改竄検知を行うと設定されているタイミングで、かつ、最後に実行した日時から設定された間隔が経過している場合に、改竄検知を行うと判定する。
退避指示部56は、ECU12に対し、RAM37のデータを退避するよう指示する。退避指示部56は、全てのECU12からRAM37のデータの退避が完了したことを受信すると+B電源13のOFFを許可する。
+B電源制御部57はスイッチング回路26をONからOFFに設定し、その後、ONに設定する。これにより、電源回路34がVccに入力する電源がONからOFF,そして再度ONになるのでマイコン32が再起動する。検知結果収集部58は各ECU12から検知結果を収集し記憶する。検知結果収集部58は表示装置53に検知結果(改竄有り、なし)をECU別に表示する。また、改竄を検知した場合は、車体番号などの車両の識別情報とECU12の識別情報をサービスセンターに送信する。
各ECU12はデータ退避部59、データ復帰部60、改竄検知部61、及び、検知結果送信部64を有する。データ退避部59は、電源制御コンピュータ11から指示によりRAM37に記憶されたデータをアドレスに対応づけて不揮発メモリ39に退避する。+B電源13のECU12は駐車中はスリープモードなどの省エネ状態なので、CPU36のレジスタやタスクのデータがRAM37に退避されている場合がある。また、アクティブサスペンションの硬さ設定、電動パワステの操舵の軽さ、アクセルペダルの操舵に対するエンジンの回転数の応答性などを設定可能な車両では、ユーザが設定したこれらの設定値がRAM37に記憶されている。この他にも、ナビやAV機能などのユーザの最後の設定、エアコンの温度設定、パワーシートのリクライニング角度・前後位置、ドアミラー角度、駐車位置情報、ユーザが管理する電話帳のアドレス情報などがRAM37に記憶されている可能性がある。データ退避部59はこれらのデータが再起動により消去されないように不揮発メモリ39に退避する。なお、これらのデータを削除してよければRAM37のデータの退避は不要である。
データの退避が完了すると電源制御コンピュータ11が+B電源13をON→OFF→ONするので、起動したマイコン32のデータ復帰部60は不揮発メモリ39のデータをRAM37に復帰する。その後、改竄検知部61はROM38の改竄検知を行う。すなわち、ROM38からハッシュ値を作成し、不揮発メモリ39に記憶されているハッシュ値と比較して一致するか否かを判定する。検知結果送信部64は、検知結果を電源制御コンピュータ11に送信する。
〔動作手順〕
図6は、電源制御コンピュータ11とECU12の動作手順の一例を示すフローチャート図である。電源制御コンピュータ11は+B電源13なので周期的にこの処理を行う。
まず、検知実行判定部55は設定されたタイミングになったか否かを判定する(S110)。設定されたタイミングでない場合(S110のNo)、次の周期で同様の判定を行う。
設定されたタイミングの場合(S110のYes)、検知実行判定部55は前回の実行から設定された間隔が経過したか否かを判定する(S120)。前回の実行から設定された間隔が経過していない場合(S120のNo)、次の周期で同様の判定を行う。
前回の実行から設定された間隔が経過した場合(S120のYes)、検知実行判定部55はユーザが全て降車しているか否かを判定する(S130)。この判定はステップS110と重複する可能性があるが、ステップS130の判定はユーザが乗車していないことを最終的に確認するための判定である。
ユーザが全て降車している場合(S130のYes)、退避指示部56は、ECU12にRAM37のデータの退避を指示する(S140)。
これにより、各ECU12はWakeUpして、データ退避部59がRAM37のデータを不揮発メモリ39に退避する(S210)。データを退避したデータ退避部59は退避完了を電源制御コンピュータ11に送信する(S220)。
+B電源制御部57はスイッチング回路26を制御して+B電源13をON→OFF→ONに制御する(S150)。これにより、各ECU12のマイコン32が再起動する(S230)。
また、再起動したECU12のデータ復帰部60は不揮発メモリ39に退避してあるデータをRAM37に復帰する(S240)。
そして、改竄検知部61がROM38の改竄検知を実行する(S250)。検知結果送信部64は検知結果を電源制御コンピュータ11に送信する(S260)。
検知結果収集部58は各ECU12からの検知結果を表示して、必要であれば(例えば改竄が検知された場合)はサービスセンターに送信する(S160)。
以上説明したように、本実施例のECU12は、+B電源13のON→OFF→ONにより改竄検知を実行するので、ユーザが乗車する直前に改竄検知する必要がなく、ユーザが走行できない待ち時間が発生することを防止できる。
実施例1ではIG電源のECU12に対し、駐車中に改竄検知することができたがIGスイッチのONによっても改竄検知するおそれがある。すなわち、+B電源13のON→OFF→ONによりマイコン32を再起動するので、ECU12としては、IG電源のOFF→ONによりマイコン32が再起動した場合と区別が付かない。このため、IG電源のECU12は、+B電源13のON→OFF→ONだけでなくIGスイッチのOFF→ONの度に改竄検知するおそれがある。
本実施例では、電源回路34がIGスイッチのONを記録することで、IGスイッチのOFF→ONでは改竄検知しないECU12について説明する。
図7は、電源制御コンピュータ11又はECU12のハードウェア構成図の一例を示す。本実施例において、図3において同一の符号を付した構成要素は同様の機能を果たすので、主に本実施例の主要な構成要素についてのみ説明する場合がある。本実施例のECU12はIG電源を電源とするものとし、電源回路34にはIG電源と+B電源(電源系No1又はNo2)13が接続される。また、電源回路34は、IG電源がONの時にのみONとなる電源フラグF43を有している。
本実施例では機能ブロック図に変更がないが、IG電源のECU12は、駐車中は動作していないので、+B電源13のON→OFF→ONにより改竄検知する場合、RAM37のデータを退避する必要はない。当然、RAM37にデータを復帰する必要もない。したがって、データ退避部59及びデータ復帰部60はなくてもよい。また、本実施例の改竄検知部61は、改竄検知の前に、電源フラグF43を参照してHighであれば、改竄検知を行わない。これにより、IGスイッチのONによりマイコン32が起動した場合に改竄検知することを防止できる。電源フラグF43はIG電源がONであることが判別できればよいので、IG電源の電圧そのものを参照してもよい。
図8は、電源制御コンピュータ11とECU12の動作手順の一例を示すフローチャート図である。電源制御コンピュータ11は+B電源13なので周期的にこの処理を行う。
電源制御コンピュータ11の動作は実施例1と同様でよい。ECU12側の動作は、ステップS210のRAM37のデータを退避すること及びS220の退避完了を通知することは不要になる。しかし、IG電源のECU12は駐車中は停止しているので、電源制御コンピュータ11からデータの退避指示があっても不都合はない。
以下、+B電源のECU12とIG電源のECU12とに分けて説明する。
・+B電源のECU
ステップS230で+B電源のECU12が再起動する。再起動したECU12の改竄検知部61は電源フラグF43がLowか否かを判定する(S235)。+B電源のECUでは電源フラグF43がないか又はLowなので、+B電源のECU12はRAM37にデータを復帰する(S240)。
また、改竄検知部61がROM38の改竄検知を実行する(S250)。検知結果送信部64は検知結果を電源制御コンピュータ11に送信する(S260)。
・IG電源のECU
A.駐車中
IG電源のECUは駐車中は作動していない。電源制御コンピュータが+B電源をON→OFF→ONに制御すると、電源回路34は+B電源をマイコン32に供給することでIG電源のECU12が起動する(S230)。
起動したECU12の改竄検知部61は電源フラグF43がLowか否かを判定する(S235)。IG電源のECU12でも駐車中は電源フラグF43がLowなので、+B電源のECU12はRAM37にデータを復帰するが、元々退避されていないので実際には復帰されない(S240)。
そして、改竄検知部61がROM38の改竄検知を実行する(S250)。検知結果送信部64は検知結果を電源制御コンピュータ11に送信する(S260)。したがって、IG電源のECU12も改竄検知できる。
B.IGスイッチのON時
ユーザが乗車してIGスイッチをONに操作するとIG電源がONになる。これにより、IG電源のECU12が起動する(S230)。
起動したECU12の改竄検知部61は電源フラグF43がLowか否かを判定する(S235)。IG電源がONなので電源フラグF43はHighである。したがって、IG電源のECU12の改竄検知部61は改竄検知することなくシステムが起動する。このように、IG電源のECU12はIGスイッチがOFF→ONとなっても改竄検知することを防止できる。
このように、図8の動作手順はIG電源か+B電源13かを問わずに適用できる。以上説明したように、本実施例では、IG電源のECU12がIG電源がONか否かを判定するので、IG電源のECU12がIGスイッチのONの度に改竄検知することを防止できる。
実施例1,2では電源制御コンピュータ11以外のECU12について改竄検知したが、電源制御コンピュータ11もROM38のソフトウェアについて改竄検知することが好ましい。
図9は、電源制御コンピュータ11のソフトウェアの改竄検知を模式的に説明する図の一例である。電源制御コンピュータ11は2つのスイッチング回路26(以下、スイッチング回路1,2という)を有しており、1つは電源系No1、No2に接続され、もう1つは電源制御コンピュータ11の電源回路34に接続されている。したがって、電源制御コンピュータ11がスイッチング回路2をON→OFF→ONにすれば、電源制御コンピュータ11のマイコン32が再起動する。これにより、電源制御コンピュータ11は改竄検知を行う。したがって、電源制御コンピュータ11も同じ仕組みで改竄検知することができる。
改竄検知を行うタイミングは他のECU12と同様であるが、他のECU12と同時に行わないことが好ましい。例えば、スイッチング回路1をON→OFF→ONにする直前に、スイッチング回路2をON→OFF→ONにすることで、電源制御コンピュータ11が改竄検知を行う。そして、改竄されていない場合に、他のECU12に対し検知結果を行う(スイッチング回路1をON→OFF→ONにする)。これにより、電源制御コンピュータ11のソフトウェアが改竄されていないことが確認できた場合に、他のECU12の改竄検知を行うことができる。また、他のECU12と同時に行わないことで、他のECU12が送信する検知結果を確実に受信できる。
また、図9のようにハード的な回路を用いるのでなく、電源制御コンピュータ11のシステム又はアプリが設定されたタイミング及び間隔でスイッチ42をON→OFF→ONに制御してもよい。この場合、電源制御コンピュータ11のシステム又はアプリに、スイッチ42をON→OFF→ONに制御する機能が必要になるが、スイッチング回路26は1つでよい。
以上説明したように、本実施例の改竄検知システム100はECU12だけでなく電源制御コンピュータ11も改竄検知することができる。
11 電源制御コンピュータ
12 ECU
13 +B電源
21 ナビECU
26 スイッチング回路
27 通信回路
32 マイコン
34 電源回路
39 不揮発メモリ
61 改竄検知部
100 改竄検知システム

Claims (8)

  1. バッテリー電源から電源供給可能な電子制御ユニットを有するソフトウェアの改竄検知システムであって、
    第1の電子制御ユニットは、自車両が駐車中であると判断した場合、バッテリー電源をONからOFFに、さらにOFFからONに切り替える電源制御手段を有し、
    1つ以上の第2の電子制御ユニットは、バッテリー電源がONに切り替わることで再起動する際、記憶媒体に記憶されているソフトウェアの改竄の有無を検知する改竄検知手段を有する、
    ことを特徴とする改竄検知システム。
  2. バッテリー電源に加え、原動力始動操作部材がONに操作されることで電源供給を開始する原動力電源系から電源供給可能な第3の電子制御ユニットをさらに有し、
    前記第3の電子制御ユニットの前記改竄検知手段は、バッテリー電源がONに切り替わることで起動する際、改竄検知を行うが、前記原動力電源系がONになることで起動する場合には改竄検知を行わない、
    ことを特徴とする請求項1記載の改竄検知システム。
  3. 前記第1の電子制御ユニットと前記第2の電子制御ユニットは通信ネットワークを介して通信可能に接続されており、
    前記第1の電子制御ユニットは、前記電源制御手段がバッテリー電源をONからOFFに、さらにOFFからONに切り替える前に、揮発性メモリに記憶されているデータの退避を前記第2の電子制御ユニットに指示し、
    前記第2の電子制御ユニットは、退避の指示により、揮発性メモリに記憶されているデータを不揮発性メモリに退避するデータ退避手段と、
    再起動後に、不揮発性メモリに退避したデータを揮発性メモリに復帰するデータ復帰手段と、を有する、
    ことを特徴とする請求項1又は2記載の改竄検知システム。
  4. 前記第2の電子制御ユニット及び前記第3の電子制御ユニットは、前記改竄検知手段による改竄の検知結果を前記第1の電子制御ユニットに送信する検知結果送信手段、を有する、ことを特徴とする請求項2項記載の改竄検知システム。
  5. 改竄検知するタイミングと間隔の設定を受け付ける設定画面を表示装置に表示する設定受付手段を有し、
    前記電源制御手段は、最後に改竄検知してから前記設定受付手段が受け付けた前記間隔が経過しかつ前記タイミングになった場合、バッテリー電源をONからOFFに、さらにOFFからONに切り替える、
    ことを特徴とする請求項1〜4いずれか1項記載の改竄検知システム。
  6. 前記第1の電子制御ユニットは、前記電源制御手段がバッテリー電源をONからOFFに、さらにOFFからONに切り替える前に自機を再起動し、
    再起動する際、記憶媒体に記憶されているソフトウェアの改竄の有無を検知する改竄検知手段を有し、
    前記改竄検知手段がソフトウェアが改竄されていることを検知しなかった場合に、前記電源制御手段がバッテリー電源をONからOFFに、さらにOFFからONに切り替える、
    ことを特徴とする請求項1〜5いずれか1項記載の改竄検知システム。
  7. バッテリー電源から電源供給された電子制御ユニットであって、
    第2の電子制御ユニットが、自車両が駐車中であると判断し、バッテリー電源をONからOFFに、さらにOFFからONに切り替えた場合、
    バッテリー電源がONに切り替わることで再起動する際、記憶媒体に記憶されているソフトウェアの改竄の有無を検知する改竄検知手段を有する、
    ことを特徴とする電子制御ユニット。
  8. バッテリー電源がOFFからONに切り替わることで再起動する際、記憶媒体に記憶されているソフトウェアの改竄の有無を検知する第2の電子制御ユニットに供給するバッテリー電源をON又はOFFする電子制御ユニットであって、
    自車両が駐車中であると判断した場合、バッテリー電源をONからOFFに、さらにOFFからONに切り替える電源制御手段を有する、
    ことを特徴とする電子制御ユニット。
JP2013021723A 2013-02-06 2013-02-06 改竄検知システム、電子制御ユニット Active JP6011379B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013021723A JP6011379B2 (ja) 2013-02-06 2013-02-06 改竄検知システム、電子制御ユニット

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013021723A JP6011379B2 (ja) 2013-02-06 2013-02-06 改竄検知システム、電子制御ユニット

Publications (2)

Publication Number Publication Date
JP2014151720A true JP2014151720A (ja) 2014-08-25
JP6011379B2 JP6011379B2 (ja) 2016-10-19

Family

ID=51574028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013021723A Active JP6011379B2 (ja) 2013-02-06 2013-02-06 改竄検知システム、電子制御ユニット

Country Status (1)

Country Link
JP (1) JP6011379B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017167916A (ja) * 2016-03-17 2017-09-21 株式会社デンソー 情報処理システム
JP2018081349A (ja) * 2016-11-14 2018-05-24 日本電信電話株式会社 改竄検知システム、検証ecu、被検証ecu、プログラム
JP2020057309A (ja) * 2018-10-04 2020-04-09 三菱電機株式会社 制御システム
JP2020060843A (ja) * 2018-10-05 2020-04-16 株式会社リコー 電子デバイスおよび動作方法
CN111191223A (zh) * 2018-11-14 2020-05-22 佳能株式会社 能够检测软件篡改的信息处理装置及其控制方法
JP2020149164A (ja) * 2019-03-11 2020-09-17 キヤノン株式会社 起動時にソフトウェアの改ざん検知処理を省略することが可能な電子機器
CN112989431A (zh) * 2019-12-16 2021-06-18 北京车和家信息技术有限公司 车载设备的系统文件检测方法、装置及车载设备
JP7371527B2 (ja) 2020-02-24 2023-10-31 株式会社デンソー 車両用電子制御システム
JP7427697B2 (ja) 2022-02-08 2024-02-05 本田技研工業株式会社 電子機器監視装置、移動体、及び電子機器監視方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10960850B2 (en) 2019-06-11 2021-03-30 Caterpillar Inc. Machine tamper detection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6413601A (en) * 1987-07-07 1989-01-18 Aisin Aw Co Save/restore system for stored information in vehicle control system
JP2004197585A (ja) * 2002-12-17 2004-07-15 Hitachi Ltd 自動車用電子制御装置
JP2005242871A (ja) * 2004-02-27 2005-09-08 Denso Corp 通信システム
JP2013017140A (ja) * 2011-07-06 2013-01-24 Hitachi Automotive Systems Ltd 車載ネットワークシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6413601A (en) * 1987-07-07 1989-01-18 Aisin Aw Co Save/restore system for stored information in vehicle control system
JP2004197585A (ja) * 2002-12-17 2004-07-15 Hitachi Ltd 自動車用電子制御装置
JP2005242871A (ja) * 2004-02-27 2005-09-08 Denso Corp 通信システム
JP2013017140A (ja) * 2011-07-06 2013-01-24 Hitachi Automotive Systems Ltd 車載ネットワークシステム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10445493B2 (en) 2016-03-17 2019-10-15 Denso Corporation Information processing system
JP2017167916A (ja) * 2016-03-17 2017-09-21 株式会社デンソー 情報処理システム
JP2018081349A (ja) * 2016-11-14 2018-05-24 日本電信電話株式会社 改竄検知システム、検証ecu、被検証ecu、プログラム
JP2020057309A (ja) * 2018-10-04 2020-04-09 三菱電機株式会社 制御システム
JP7206769B2 (ja) 2018-10-05 2023-01-18 株式会社リコー 電子デバイスおよび動作方法
JP2020060843A (ja) * 2018-10-05 2020-04-16 株式会社リコー 電子デバイスおよび動作方法
CN111191223A (zh) * 2018-11-14 2020-05-22 佳能株式会社 能够检测软件篡改的信息处理装置及其控制方法
CN111191223B (zh) * 2018-11-14 2024-04-02 佳能株式会社 能够检测软件篡改的信息处理装置及其控制方法
JP2020149164A (ja) * 2019-03-11 2020-09-17 キヤノン株式会社 起動時にソフトウェアの改ざん検知処理を省略することが可能な電子機器
JP7242351B2 (ja) 2019-03-11 2023-03-20 キヤノン株式会社 起動時にソフトウェアの改ざん検知処理を省略することが可能な電子機器
CN112989431A (zh) * 2019-12-16 2021-06-18 北京车和家信息技术有限公司 车载设备的系统文件检测方法、装置及车载设备
JP7371527B2 (ja) 2020-02-24 2023-10-31 株式会社デンソー 車両用電子制御システム
JP7427697B2 (ja) 2022-02-08 2024-02-05 本田技研工業株式会社 電子機器監視装置、移動体、及び電子機器監視方法

Also Published As

Publication number Publication date
JP6011379B2 (ja) 2016-10-19

Similar Documents

Publication Publication Date Title
JP6011379B2 (ja) 改竄検知システム、電子制御ユニット
JP6496502B2 (ja) 車載コンピューティングシステムにおけるオペレーティングシステムの置換
JP2015032314A5 (ja)
CN111193649B (zh) 车辆通信系统及其控制方法
JP5997740B2 (ja) 車載機のオンライン更新方法
US20130167159A1 (en) Vehicle comprising multi-operating system
US20220001835A1 (en) Detecting abnormal can bus wake-up pattern
JP2012103181A (ja) 車載機のオンライン更新方法
US11586202B2 (en) Automatic driving safety interaction system
JP2013084089A (ja) 車両用装置
US8321158B2 (en) Method and system for monitoring freshness of fuel in vehicles
WO2018230314A1 (ja) 制御装置、制御方法、およびコンピュータプログラム
CN108973901B (zh) 车辆配件电力管理
CN102713858A (zh) 信息处理装置的联机调试系统及联机调试方法
JP3960800B2 (ja) 車両用プロセッサベースシステムの動作方法
US20200361416A1 (en) Vehicular device and non-transitory tangible computer readable storage medium
JP2008158591A (ja) 情報処理装置及び制御プログラム
JP2000172384A (ja) 車載用コンピュータ及びその制御方法
JP5880411B2 (ja) 情報処理装置
JP2004302944A (ja) 車両用制御システム
US11853103B2 (en) Vehicular device
JP6115374B2 (ja) 車両制御システムおよびマスタecu
JP2019215628A (ja) 車載装置、車載システムおよび制御方法
US20220101669A1 (en) Vehicular apparatus
US20220101668A1 (en) Vehicular apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150610

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160419

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160823

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160905

R151 Written notification of patent or utility model registration

Ref document number: 6011379

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151