JP6969426B2 - 電子制御装置 - Google Patents

電子制御装置 Download PDF

Info

Publication number
JP6969426B2
JP6969426B2 JP2018027796A JP2018027796A JP6969426B2 JP 6969426 B2 JP6969426 B2 JP 6969426B2 JP 2018027796 A JP2018027796 A JP 2018027796A JP 2018027796 A JP2018027796 A JP 2018027796A JP 6969426 B2 JP6969426 B2 JP 6969426B2
Authority
JP
Japan
Prior art keywords
data
shared memory
electronic control
control device
memory
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.)
Active
Application number
JP2018027796A
Other languages
English (en)
Other versions
JP2019144794A (ja
Inventor
康治 菅野
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2018027796A priority Critical patent/JP6969426B2/ja
Publication of JP2019144794A publication Critical patent/JP2019144794A/ja
Application granted granted Critical
Publication of JP6969426B2 publication Critical patent/JP6969426B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、電子制御装置(ECU:Electric Control Unit)に関するものであり、主として、車両用の電子制御装置に用いるものである。
近年、自動車には、CAN(Controller Area Network)と呼ばれる車載ネットワークで互いに接続された様々な種類の電子制御装置が搭載されている。これらの電子制御装置は、エンジンやハンドルといった車両の動作を制御するものであり、第三者による不正アクセスや、このような不正アクセスによるデータの改ざんを防止するための高いセキュリティが求められる。
例えば、特許文献1には、記憶装置に記録されたデータへのアクセスを監視し、許可されていないプロセスやユーザからアクセスを受けた場合にはプロセスを強制的に終了させることにより、データの破損や上書きを防止する技術が開示されている。
特開2002−312212号公報
特許文献1に開示の技術によれば、許可されていないプロセスからデータを保護することが可能となる。しかしながら、サイバー攻撃等によって許可されているプロセスのプログラムが改ざんされた場合、このプロセスからはデータにアクセスすることが可能であるため、データを保護することができないおそれがある。
そこで、本発明の目的は、データにアクセス可能なプロセスがサイバー攻撃を受けた場合であっても、データの保護を実現することにある。
上記課題を解決するために、本発明の非セキュア領域とセキュア領域とを有する電子制御装置(10,20,30,40)は、
前記非セキュア領域内の共有メモリ(102)と、
前記セキュア領域内の退避先メモリ(104)と、
前記共有メモリに対するアクセス権情報を保存するアクセス権情報保存部(105)と、
前記共有メモリへのデータの書き込み要求、及び前記共有メモリから前記退避先メモリへの前記データの退避要求を出力するとともに、前記データが前記共有メモリに書き込まれた場合、前記アクセス権情報を書き込み不可に設定し、前記データが前記共有メモリから前記退避先メモリに退避された場合、前記アクセス権情報を書き込み可能に設定する、共有メモリ監視部(106)と、
前記共有メモリ監視部からの前記書き込み要求または前記退避要求に基づいて、前記共有メモリへの前記データの書き込みまたは前記退避先メモリへの前記データの退避を実行するメモリコントローラ(108)と、
を備える。
本発明の電子制御装置によれば、共有メモリに書き込まれたデータを適切に保護することが可能となる。
本発明の実施形態1の電子制御装置の構成を説明するブロック図 本発明の実施形態1の電子制御装置の動作を説明する図 本発明の実施形態1の電子制御装置の動作を説明する図 本発明の実施形態2の電子制御装置の構成を説明するブロック図 本発明の実施形態2の電子制御装置の動作を説明する図 本発明の実施形態3の電子制御装置の構成を説明するブロック図 本発明の実施形態4の電子制御装置の構成を説明するブロック図
以下、本発明の実施形態について、図面を参照して説明する。なお、本発明とは、特許請求の範囲又は課題を解決するための手段の項に記載された発明を意味するものであり、以下の実施形態に限定されるものではない。また、少なくともかぎ括弧内の語は、特許請求の範囲又は課題を解決するための手段の項に記載された語を意味し、同じく以下の実施形態に限定されるものではない。また、特許請求の範囲の従属項に記載の構成及び方法、従属項に記載の構成及び方法に対応する実施形態の構成及び方法、並びに特許請求の範囲に記載がなく実施形態のみに記載の構成及び方法は、本発明においては任意の構成及び方法である。
なお、各実施形態に開示の構成は、各実施形態のみで閉じるものではなく、実施形態をまたいで組み合わせることが可能である。
発明が解決しようとする課題に記載した課題は公知の課題ではなく、本発明者が独自に知見したものであり、本発明の手段と共に発明の進歩性を肯定する事実である。
(実施形態1)
本実施形態1の電子制御装置の構成を図1を用いて説明する。図1に示す電子制御装置10は、「非セキュア領域」と、非セキュア領域からはアクセスできない領域である「セキュア領域」とを有している。電子制御装置10の非セキュア領域には、アプリケーション実行部101(図中では、APP実行部と示す)、共有メモリ102、及びドライバ103が設けられている。セキュア領域には、退避先メモリ104、アクセス権情報保存部105、共有メモリ監視部106、及び退避実行部107が設けられている。さらに、電子制御装置10は、メモリコントローラ108を備えている。
ここで、本発明の「非セキュア領域」とは、「非セキュア領域」および「セキュア領域」のいずれからもアクセス可能な領域をいう。また、本発明の「セキュア領域」とは、「非セキュア領域」からはアクセスできず、同じ「セキュア領域」からのみアクセス可能な領域をいう。
アプリケーション実行部101は、共有メモリ102へのアクセス権限を有する任意のアプリケーションプログラムを実行し、アプリケーションプログラムにしたがって、共有メモリ102へのデータの書き込み要求を出力する。なお、本実施形態では、アプリケーション実行部101は非セキュア領域に設けられている。
共有メモリ102は、非セキュア領域に設けられたランダムアクセスメモリである。ランダムアクセスメモリは揮発性メモリであり、SRAMやDRAMをはじめ、様々な方式のメモリを含む。共有メモリ102は非セキュア領域に設けられているため、共有メモリ102に書き込まれたデータは、サイバー攻撃等によって改ざん又は削除される可能性がある。
ドライバ103は、メモリコントローラ108に対して、共有メモリ102へのデータの書き込み要求、または、退避先メモリ104へのデータの退避要求を出力する。なお、本実施形態では、ドライバ103は非セキュア領域に設けられており、サイバー攻撃等を受ける可能性がある。
退避先メモリ104は、セキュア領域に設けられたランダムアクセスメモリであり、共有メモリ102に書き込まれたデータの退避先となるメモリである。退避先メモリ104はセキュア領域に設けられているため、退避先メモリ104に書き込まれたデータがサイバー攻撃によって改ざん等される可能性は低く、セキュリティ性が高い。
アクセス権情報保存部105は、「共有メモリ102に対するアクセス権情報」を保存するメモリ領域である。本実施形態のアクセス権情報保存部105は、アクセス権情報のセキュリティ性を高めるためにセキュア領域に設けられている。アクセス権情報は、例えば、書き込み権限(write/read)または読み取り権限(read-only)を示す情報であるが、共有メモリ102へのデータの書き込み可能又は書き込み不可のいずれかを示すものであればよい。
ここで、本発明の「共有メモリに対するアクセス権情報」とは、共有メモリ全体に対するアクセス権を示す情報だけでなく、共有メモリの一部の領域に対するアクセス権を示す情報であってもよい。
共有メモリ監視部106は、アプリケーション実行部101からの書き込み要求に基づいて、共有メモリへの「データ」の書き込み要求を出力する。そして、この書き込み要求に基づいてデータが共有メモリに書き込まれた場合、アクセス権情報保存部105に保存されているアクセス権情報を書き込み可能から書き込み不可に設定する。また、共有メモリ監視部106は、アクセス権情報が不正に変更されるのを防ぐために、セキュリティ性が高いセキュア領域に設けられている。
ここで、本発明の「データ」とは、アプリケーションが取り扱うデータの他、アプリケーションやシステムの履歴を示すログをも含む。
共有メモリ監視部106はさらに、共有メモリ102内に既に保存されているデータを、共有メモリ102から退避先メモリ104に退避させることを要求する退避要求を出力する。そして、この退避要求に基づいてデータが共有メモリ102から退避先メモリ104に退避された場合、アクセス権情報保存部105に保存されているアクセス権情報を書き込み不可から書き込み可能に設定する。
退避実行部107は、共有メモリ監視部106からの退避要求に基づいて、退避先メモリ104へのデータの退避要求をドライバ103に対して出力する。
メモリコントローラ108は、ドライバ103からの書き込み要求に基づいて、共有メモリ102へのデータの書き込みを実行する。メモリコントローラ108はさらに、ドライバ103からの退避要求に基づいて、退避先メモリ104への「データの退避」を実行する。
ここで、本発明の「データの退避」とは、データを共有メモリから読み出して退避先メモリに書き込むことをいい、共有メモリに保存されていたデータが削除されるか否かは問わない。
次に、本実施形態の電子制御装置10の動作を、図2、3を用いて説明する。
アプリケーション実行部101は、共有メモリ102にデータを書き込むこと要求する書き込み要求を出力する(S101)。この書き込み要求には、データの書き込み先である共有メモリのアドレスと、書き込むデータのサイズが含まれる。
一般に、アプリケーション実行部から出力されたデータの書き込み要求はドライバが受信し、アプリケーション実行部からの書き込み要求に基づいて、ドライバがメモリコントローラに対してデータの書き込みを指示する。これに対し、本発明では、アプリケーション実行部101からの書き込み要求をフックして、共有メモリ監視部106において処理を実行する。
共有メモリ監視部106は、書き込み要求をフックしてアプリケーション実行部101からの書き込み要求を受信すると、アクセス権情報保存部105にアクセスして、データの書き込み先である共有メモリ102の所定の領域のアクセス権情報を参照する(S102)。
S102においてアクセス権情報を参照した結果、アクセス権情報が、共有メモリ102の所定の領域が書き込み可能であることを示している場合、共有メモリ監視部106は、ドライバ103に対して書き込み要求を出力する(S103)。ドライバ103は、共有メモリ監視部106から書き込み要求を受信すると(S103)、メモリコントローラ108に対して書き込み要求を出力する(S104)。
メモリコントローラ108は、ドライバ103からの書き込み要求に基づいて、共有メモリ102へのデータの書き込みを実行する(S105)。そして、データの書き込みが完了すると、データの書き込みが完了したことを知らせる書き込み完了通知をドライバ103に対して出力する(S106)。ドライバ103は、メモリコントローラ108から書き込み完了通知を受信すると、共有メモリ監視部106に対して書き込み完了通知を出力する(S107)。
共有メモリ監視部106は、ドライバ103から書き込み完了通知を受信すると(S107)、S105においてデータが書き込まれた共有メモリ102に対するアクセス権情報を、書き込み可能から書き込み不可に設定する(S108)。そして、データの書き込みを要求したアプリケーション実行部101に対し、書き込み完了通知を出力する(S109)。なお、共有メモリ監視部106は、書き込み完了通知を出力(S109)した後にアクセス権情報を書き込み不可に設定(S108)してもよい。
図2に示す一連の処理により、共有メモリ102へのデータの書き込みが完了する。ここで、上述したとおり、共有メモリ102は非セキュア領域に設けられているため、以上の処理によって共有メモリ102に書き込まれたデータは改ざんされる可能性がある。そこで、S109の処理が完了すると、以下に説明する、図3に示す一連の処理を実行することにより、共有メモリ102のデータを、セキュア領域に設けられたセキュリティ性の高い退避先メモリ104へと退避させる。
S109において、共有メモリ監視部106がアプリケーション実行部101に対して書き込み完了通知を出力した後、共有メモリ監視部106は、共有メモリ102に書き込まれたデータを退避先メモリ104に退避させることを要求する退避要求を退避実行部107に対して出力する(S201)。この退避要求には、退避させるデータのサイズと、退避させるデータが書き込まれている共有メモリ102のアドレスとが含まれる。
退避実行部107は、共有メモリ監視部106から受信した退避要求に基づいて、ドライバ103に対して退避要求を出力する(S202)。退避実行部107からの退避要求には、共有メモリ監視部106からの退避要求に含まれる、データのサイズと共有メモリ102のアドレスとに加えて、データの退避先である退避先メモリ104のアドレスが含まれる。
S202において退避実行部107から退避要求を受信すると、ドライバ103は、共有メモリ102から退避先メモリ内の指定されたアドレスにデータを退避させることを要求する退避要求をメモリコントローラ108に対して出力する(S203)。
メモリコントローラ108は、ドライバ103からの退避要求に基づいて、共有メモリ102からデータを読み出し(S204)、退避先メモリ104にデータの書き込みを実行することにより、データを退避させる(S205)。そして、データの退避が完了すると、データの退避が完了したことを知らせる退避完了通知を、ドライバ103に対して出力する(S206)。
ドライバ103は、メモリコントローラ108から退避完了通知を受信すると、退避実行部107に対して退避完了通知を出力する(S207)。そして、退避実行部107は、ドライバ103から退避完了通知を受信すると、共有メモリ監視部106に対して退避完了通知を出力する(S208)。
共有メモリ監視部106は、退避実行部107から退避完了通知を受信すると、退避させたデータが書き込まれていた共有メモリ102の所定の領域に対するアクセス権情報を、書き込み不可から書き込み可能に設定する(S209)。この結果、共有メモリ102の所定の領域に再びデータの書き込みが可能となる。
実施形態1によれば、非セキュア領域内の共有メモリ102に書き込まれたデータを、セキュリティ性が高いセキュア領域内の退避先メモリ104に退避させることができるため、適宜データを保護することが可能となる。
なお、共有メモリ監視部106は、退避実行部107を介してドライバ103に退避要求を出力しているが、ドライバ103に対して直接、退避要求を出力する構成としてもよい。
(変形例)
なお、上記実施形態によれば、図2に示す共有メモリ102へのデータの書き込みにかかる一連の処理が完了した後に、図3のS201〜S209に示す共有メモリ102から退避先メモリ104へのデータの退避にかかる一連の処理を実行することにより、共有メモリ102に書き込まれたデータを即座に退避先メモリ104に退避している。しかしながら、データの退避は、それ以外のタイミングで実行されてもよい。
例えば、共有メモリ102の所定の領域に書き込まれたデータは、同じ領域にデータの書き込みが要求されるまで退避されずに共有メモリ内に保持され、同じ領域にデータの書き込みが要求されたタイミングで図3に示す処理を実行してもよい。
この場合、共有メモリ監視部106がアプリケーション実行部101からデータ(本発明の「第1のデータ」に相当)の書き込み要求を受信し(S101)、この書き込み要求が指定する共有メモリ102の所定の領域のアクセス権情報が書き込み不可に設定されている場合(S102)、共有メモリ監視部106は、共有メモリ102の所定の領域に既に書き込まれているデータ(本発明の「第2のデータ」に相当)の退避要求を出力(S201)し、図3に示す一連の処理を実行する。そして、共有メモリ102から退避先メモリ104へとデータの退避が完了した後に、共有メモリ102へのデータの書き込み処理を実行する。
他の例では、共有メモリ監視部106は、共有メモリ102のメモリ空き容量に応じて、共有メモリ102から退避先メモリ104にデータを退避させてもよい。
例えば、共有メモリ監視部106がアプリケーション実行部101からデータ(本発明の「第1のデータ」に相当)の書き込み要求を受信し(S101)、この書き込み要求が指定する共有メモリ102の所定の領域のアクセス権情報が書き込み可能に設定されている場合(S102)、S103、S104の処理が実行される。ここで、データの書き込み先である共有メモリ102の空き容量が、書き込まれるデータのデータサイズ「以下」の場合、S105における書き込み処理を実行することはできない。そこで、共有メモリ監視部106は、共有メモリ102に既に書き込まれているデータ(本発明の「第2のデータ」に相当)の退避要求を出力(S201)し、図3に示す一連の処理を実行する。
ここで、「以下」とは、比較対象を含む場合、含まない場合の両方を含む。
共有メモリ102から退避先メモリ104にデータが退避されると、共有メモリ102に書き込まれていたデータは削除することができる。共有メモリ102内のデータが削除されると、共有メモリ102の空き容量は増加するため、共有メモリ102に再びデータを書き込むことが可能となる。
(実施形態2)
上記実施形態1によれば、共有メモリ102に書き込まれたデータをセキュア領域内の退避先メモリ104に退避させることによってデータを保護することが可能となる。しかしながら、メモリコントローラ108にデータの書き込みを要求するドライバ103がサイバー攻撃を受けた場合、ドライバ103がメモリコントローラ108に対して書き込みを要求して、共有メモリ102に書き込まれたデータを上書きしてしまうおそれがある。
そこで、実施形態2では、実施形態1との相違点を中心に、ドライバ103の改ざん有無を判定することによって共有メモリ102に書き込まれたデータのセキュリティを更に高める態様を説明する。
図4は、実施形態2の電子制御装置20の一例を示している。ここでは、ドライバ103のプログラムが格納されているメモリ領域のハッシュ値に基づいて、ドライバ103の改ざん有無を判定する構成を説明する。本実施形態2の電子制御装置20は、期待値保存部201を備えている点で、図1に示す電子制御装置10とは異なっている。
さらに、本実施形態2のメモリコントローラ108は、実施形態1とは異なり、共有メモリ102または退避先メモリ104に対するデータの書き込みを実行することに加えて、共有メモリ102への書き込み要求を出力するドライバ103の改ざん有無を判定する。そして、ドライバ103の改ざんがないと判定した場合に限り、メモリコントローラ108は共有メモリ102に対してデータの書き込みを実行する。
期待値保存部201は、電子制御装置20のドライバ103のプログラムが格納されているコード領域のハッシュ値の期待値を予め保存しておく。
そして、メモリコントローラ108は、共有メモリ102へのデータの書き込みを要求するドライバ103のコード領域のハッシュ値を算出するとともに、期待値保存部201に保存されているハッシュ値の期待値と算出したハッシュ値とに基づいてドライバ103の改ざん有無を判定する。具体的には、ハッシュ値の期待値と、算出されたハッシュ値とを比較し、これらの値が等しい場合にはドライバ103の改ざんがないと判定する。これに対し、期待値と算出されたハッシュ値とが異なる場合には、ドライバ103が改ざんされたと判定する。
図5は、図2に示す一連の処理に加えて、ドライバ103の改ざん有無の判定を行う場合のフローを示している。図2と同じ処理については説明を省略する。
本実施形態2の電子制御装置20では、メモリコントローラ108は、S104においてドライバ103からデータの書き込み要求を受信すると、アクセス権情報保存部105に保存されているアクセス権情報を再び参照する(S301)。そして、データの書き込み先である共有メモリ102の所定の領域のアクセス権情報が、データを書き込み可能であることを示している場合には、メモリコントローラ108は、ドライバ103に対して、ドライバ103の改ざん有無の確認を実行する(S302)。上述したように、ハッシュ値に基づいてドライバ103の改ざん有無を判定する場合には、メモリコントローラ108は、期待値保存部201に保存されているハッシュ値の期待値を参照するとともに、ドライバ103のハッシュ値を算出する。
そして、S302において、ドライバ103の改ざんがないと判定した場合には、メモリコントローラ108は、実施形態1と同様、共有メモリ102にデータの書き込みを実行する(S105)。これに対し、ドライバ103の改ざんがあると判定した場合には、共有メモリ102へのデータの書き込み処理を実行しない。
本実施形態によれば、サイバー攻撃等によって改ざんされたドライバ103による、共有メモリ102へのデータの書き込みを防止することができ、共有メモリ102内のデータのセキュリティを高めることが可能となる。
(実施形態3)
上記実施形態1によれば、データを共有メモリ102から退避先メモリ104に退避することによってデータの保護を図ることができるが、退避先メモリ104の空き容量には限界がある。そのため、退避先メモリ104の空き容量が少ない場合、共有メモリ102から退避先メモリ104にデータが適切に退避できず、データが失われてしまうおそれがある。
そこで、本実施形態では、退避先メモリ104に退避されたデータを電子制御装置の外部に設けられたストレージに転送することにより、退避先メモリ104の空き容量を確保しながらデータの保護を図る態様を説明する。
図6は、本実施形態3の電子制御装置30と、電子制御装置30の外部に設けられたサーバ50及びイベントデータレコーダー601(図中では、EDRと示す)とを示している。本実施形態3の電子制御装置30は、セキュア領域に設けられたアップロード実行部301を備えている点で、図1の電子制御装置10とは異なっている。また、サーバ50はストレージ501を有しており、電子制御装置30と、サーバ50及びイベントデータレコーダー601とは有線または無線により接続されている。電子制御装置10との相違点を中心に、電子制御装置30を以下に説明する。
電子制御装置30のアップロード実行部301は、退避先メモリ104内のデータをストレージ501に転送する。そして、退避先メモリ104からストレージ501へのデータの転送が完了すると、アップロード実行部301は退避先メモリ104からデータを削除する。なお、退避先メモリ104からストレージ501へのデータの転送は周期的に、あるいは任意のタイミングで実行することができる。
例えば、アップロード実行部301は、退避先メモリ104のメモリ空き容量が閾値以下になると、退避先メモリ104内のデータをストレージ501に転送してもよい。
あるいは、アップロード実行部301は、電子制御装置30にかかる負荷が小さくなったタイミングで、退避先メモリ104内のデータをストレージ501に転送してもよい。
例えば、アップロード実行部301は、電子制御装置30と、ストレージ501が設けられたサーバ50との間の通信帯域の使用率をモニタし、通信帯域の使用率が閾値以下になった場合に、データをストレージ501に転送してもよい。その他の例では、アップロード実行部301は、電子制御装置のセキュア領域に割り当てられたCPU資源の使用率をモニタし、CPU資源の使用率が閾値以下になった場合に、データをストレージ501に転送してもよい。例えば、電子制御装置30が車載器の場合、車両のエンジンが停止するとCPU資源の使用率は低下する。したがって、アップロード実行部301は、従来のガソリン車のイグニッション、あるいは、電気自動車又はハイブリッド車のパワースイッチがオフになったことを検知して、データをストレージ501に転送してもよい。
さらに別の例として、電子制御装置30はさらに、当該電子制御装置30に発生する異常を検出する異常検知部(図示せず)を備え、アップロード実行部301は、異常検知部が異常を検知した場合にデータをストレージ501に転送してもよい。
なお、アップロード実行部301がデータをストレージ501に転送するタイミングのいくつか例示したが、アップロード実行部301は、上述した以外の任意のタイミングでデータをストレージ501に転送することができる。
さらに、本実施形態3では、電子制御装置30は任意で、電子制御装置30の外部に設けられたイベントデータレコーダー601と接続されてもよい。
上述したとおり、アップロード実行部301は退避先メモリ104内のデータをストレージ501に転送する。しかしながら、転送を実行している間に通信障害などが発生すると、データの全て又は一部をストレージ501に転送することができないことが起こり得る。このような場合に、アップロード実行部301が退避先メモリ104からストレージ501への退避が完了したと認識してしまうと、退避先メモリ104に退避していたデータは削除されてしまう。
これに対し、イベントデータレコーダー601が設けられている場合、通信障害などの異常が発生したことによってストレージ501へのデータの転送が「失敗」すると、イベントデータレコーダー601は、このような異常時に生成されるエラーログを保存する。このエラーログは、ストレージ501へのデータの転送が失敗したことを示す。
ここで、本発明の「失敗」とは、転送対象となるデータを退避先メモリからストレージに転送できないことをいい、データの一部のみがストレージに転送され、データの残りがストレージに転送されない場合や、転送処理自体を実行できない場合をも含む。
アップロード実行部301は、イベントデータレコーダー601に保存されたエラーログに基づいて、ストレージ501に転送されなかったデータを認識することが可能となるため、ストレージ501への転送が完了していないデータを、退避先メモリ104から削除するのを防ぐことが可能となる。さらに、通信障害等から回復した時点で再び、退避先メモリ104からストレージ501へのデータの退避を実行することができる。
以上のとおり、実施形態3によれば、退避先メモリ104のデータは外部のストレージ501へと適宜転送されるため、退避先メモリ104の空き容量不足によって、共有メモリ102から退避先メモリ104へのデータの退避ができなくなるのを防ぐことが可能となる。さらに、通信障害等が発生してもデータを損なうことなく、退避先メモリ104からストレージ501へとデータを転送することが可能となる。
(実施形態4)
上記実施形態1では、アクセス制御情報保存部105に保存されているアクセス権情報が書き込み可能を示している場合にのみ、共有メモリ102にデータを書き込むことが可能であった。しかしながら、重要度や緊急性が高いデータについては、アクセス権情報にかかわらず、データを共有メモリ102に書き込むことが望ましい場合がある。例えば、本発明の電子制御装置が車載器の場合、車両が急ブレーキ、急加速、急ハンドルといった動作をしたことを示すログデータは、車両事故や車両故障の原因を特定するために有用なデータであり、重要性および緊急性が高いデータであるといえる。
そこで、電子制御装置が車載器の場合であって、車両が急ブレーキ、急加速、急ハンドルといった動作をしたり、あるいは、車両に何らかの異常が発生している場合には、アクセス制御情報保存部105に保存されている共有メモリ102に対するアクセス権情報を書き込み可能に設定して、重要性や緊急性の高いデータが確実に共有メモリ102に書き込まれるようにする。
図7は本実施形態の電子制御装置40を示している。電子制御装置40は、情報取得部401と車両異常検出部402とを備えている点で、図1に示す電子制御装置10と異なっている。電子制御装置10との相違点を中心に、電子制御装置40を以下に説明する。
情報取得部401は、電子制御装置40が搭載された車両の状態を示す自車両情報を取得する。自車両情報は、例えば、自車両の動作状態を示す速度情報、ブレーキ量、及び操舵情報、あるいは、車載システムを構成する各装置の温度、電圧、及び電流などの情報が挙げられるが、これらに限定されるものではない。
車両異常検出部402は、情報取得部401にて取得された自車両情報に基づいて、「車両に発生した異常」を検出する。例えば、自車両情報に含まれるブレーキ量が著しく大きく、自車両が急激に減速したことを示している場合、車両は正常走行時には行われない動作をしているといえる。そこで、車両異常検知部402は、このような急減速を異常として認識して、車両に異常が発生したことを検出する。あるいは、自車両情報に含まれる電圧値が通常動作で起こり得る電圧範囲を超えている場合、車載システムを構成する装置に故障が発生している可能性が高い。そこで、このような自車両情報に基づいて、車両異常検知部402は異常を検出する。
ここで、本発明の「車両に発生した異常」とは、車載システム及び車載システムを構成する装置の異常が含まれることはもちろん、例えば、車両の急加速、急ハンドル、急ブレーキといった、車両の動作が正常ではないことをも含む。
車両異常検出部402が異常を検出した場合、共有メモリ監視部106は、アクセス権情報保存部105に保存されているアクセス権情報を書き込み可能に設定する。すなわち、共有メモリ102内の全ての領域に対するアクセス権情報が書き込み可能に設定されるため、共有メモリ102へのデータの書き込みが可能となる。
本実施形態によれば、車両に異常が発生した場合に、アクセス権情報保存部105に保存されているアクセス権情報を書き込み可能に設定することにより、車両の異常を示すデータを確実に共有メモリ102内に書き込むことが可能となるため、緊急性や重要性が高いデータが共有メモリ102に書き損なわれるのを防ぐことができる。
(総括)
以上、本発明の各実施形態における電子制御装置の特徴について説明した。なお、複数の実施形態およびその変形例の特徴を説明したが、各実施形態およびその変形例の特徴を2以上含むようにしてもよい。
本発明の電子制御装置の形態の例として、半導体、電子回路、モジュール、マイクロコンピュータが挙げられる。またこれらにアンテナや通信用インターフェースなど、必要な機能を追加してもよい。また、カーナビゲーションシステム、スマートフォン、パーソナルコンピュータ、携帯情報端末のような形態をとることも可能である。
加えて、本発明は、上述の専用のハードウェアで実現できるだけでなく、メモリやハードディスク等の記録媒体に記録したプログラム、及びこれを実行可能な専用又は汎用CPU及びメモリ等を有する汎用のハードウェアとの組み合わせとしても実現できる。
専用や汎用のハードウェアの記憶領域(外部記憶装置(ハードディスク、USBメモリ等)、内部記憶装置(RAM,ROM等))に格納されるプログラムは、記録媒体を介して、あるいは記録媒体を介さずにサーバから通信回線を経由して上述の専用又は汎用のハードウェア(本発明の「コンピュータ」に相当」に提供することもできる。これにより、プログラムのアップグレードを通じて常に最新の機能を提供することができる。
本発明の電子制御装置は、主として自動車に搭載される車載用電子制御装置であるが、自動二輪車、船舶、鉄道、航空機等、移動する移動体全般に適用することが可能である。また、移動体に限らず、マイクロコンピュータを包含する製品全般に適用可能である。
10,20,30,40 電子制御装置、102 共有メモリ、104 退避先メモリ、105 アクセス権情報保存部、106 共有メモリ監視部、108 メモリコントローラ108、201 期待値保存部、301 アップロード実行部、401 情報取得部、402 車両異常検出部

Claims (17)

  1. 非セキュア領域とセキュア領域とを有する電子制御装置(10,20,30,40)であって、
    前記非セキュア領域内の共有メモリ(102)と、
    前記セキュア領域内の退避先メモリ(104)と、
    前記共有メモリに対するアクセス権情報を保存するアクセス権情報保存部(105)と、
    前記共有メモリへのデータの書き込み要求、及び前記共有メモリから前記退避先メモリへの前記データの退避要求を出力するとともに、前記データが前記共有メモリに書き込まれた場合、前記アクセス権情報を書き込み不可に設定し、前記データが前記共有メモリから前記退避先メモリに退避された場合、前記アクセス権情報を書き込み可能に設定する、共有メモリ監視部(106)と、
    前記共有メモリ監視部からの前記書き込み要求または前記退避要求に基づいて、前記共有メモリへの前記データの書き込みまたは前記退避先メモリへの前記データの退避を実行するメモリコントローラ(108)と、
    を備える、電子制御装置。
  2. 前記アクセス権情報保存部および前記共有メモリ監視部は前記セキュア領域に設けられている、
    請求項1記載の電子制御装置。
  3. 前記共有メモリ監視部は、前記アクセス権情報が書き込み不可に設定された前記共有メモリへの第1のデータの書き込み要求をアプリケーションから受信した場合、前記共有メモリに書き込まれているデータである第2のデータの前記退避要求を出力する、
    請求項1記載の電子制御装置(10)。
  4. 前記共有メモリ監視部は、前記アクセス権情報が書き込み可能に設定された前記共有メモリへの第1のデータの書き込み要求をアプリケーションから受信し、かつ、前記共有メモリの空き容量が前記第1のデータのデータサイズ以下の場合、前記共有メモリに書き込まれているデータである第2のデータの前記退避要求を出力する、
    請求項1記載の電子制御装置(10)。
  5. 前記メモリコントローラはさらに、前記共有メモリへの前記データの書き込み要求を出力した当該電子制御装置のドライバの改ざん有無を判定し、前記ドライバの改ざんがないと判定した場合に前記共有メモリへの前記データの書き込みを実行する、
    請求項1記載の電子制御装置。
  6. 当該電子制御装置はさらに、前記ドライバのプログラムが格納されているコード領域のハッシュ値の期待値を保存する期待値保存部(201)を備え、
    前記メモリコントローラは、前記ドライバの前記コード領域のハッシュ値を算出し、前記期待値と算出した前記ハッシュ値とに基づいて前記ドライバの改ざん有無を判定する、
    請求項5記載の電子制御装置(20)。
  7. 当該電子制御装置はさらに、
    前記退避先メモリに退避された前記データを当該電子制御装置の外部に設けられたストレージに転送するアップロード実行部(301)を備える、
    請求項1記載の電子制御装置(30)。
  8. 前記アップロード実行部は、前記ストレージへの前記データの転送が完了した後に前記退避先メモリから前記データを削除する、
    請求項7記載の電子制御装置。
  9. 前記アップロード実行部は、前記退避先メモリの空き容量が閾値以下の場合に前記データを前記ストレージに転送する、
    請求項7記載の電子制御装置。
  10. 前記アップロード実行部は、当該電子制御装置と前記ストレージとの間の通信帯域の使用率をモニタし、前記通信帯域の前記使用率が閾値以下の場合に前記データを前記ストレージに転送する、
    請求項7記載の電子制御装置。
  11. 前記アップロード実行部は、当該電子制御装置の前記セキュア領域に割り当てられたCPU資源の使用率をモニタし、前記使用率が閾値以下の場合に前記データを前記ストレージに転送する、
    請求項7記載の電子制御装置。
  12. 当該電子制御装置は車両に搭載される電子制御装置であり、
    前記アップロード実行部は、前記車両のエンジンが停止した場合に前記データを前記ストレージに転送する、
    請求項7記載の電子制御装置。
  13. 当該電子制御装置はさらに、当該電子制御装置に発生する異常を検出する異常検知部を備え、
    前記アップロード実行部は、前記異常検知部が前記異常を検出した場合に前記データを前記ストレージに転送する、
    請求項7記載の電子制御装置。
  14. 前記アップロード実行部は、前記ストレージへの前記データの転送が失敗した場合、前記転送が失敗したことを示すログを当該電子制御装置の外部に設けられたデータレコーダに書き込む、
    請求項7記載の電子制御装置。
  15. 当該電子制御装置は、車両に搭載される電子制御装置であって、
    前記車両の状態を示す自車両情報を取得する情報取得部(401)と、
    前記自車両情報に基づいて、前記車両に発生した異常を検出する車両異常検出部(402)と、
    をさらに備え、
    前記共有メモリ監視部は、前記車両異常検出部が前記異常を検出した場合に、前記共有メモリに対するアクセス権情報を書き込み可能に設定する、
    請求項1記載の電子制御装置(40)。
  16. アプリケーションから、電子制御装置の非セキュア領域に設けられた共有メモリへのデータの書き込みを要求する第1の書き込み要求を受信するステップと、
    前記データの書き込みが要求された前記共有メモリに対するアクセス権情報を参照するステップと、
    前記アクセス権情報が、前記共有メモリが書き込み可能であることを示している場合、前記共有メモリへの前記データの書き込みを要求する第2の書き込み要求を出力するステップと、
    前記データが前記共有メモリに書き込まれると、前記アクセス権情報を書き込み不可に設定するステップと、
    前記共有メモリから、前記電子制御装置のセキュア領域に設けられた退避先メモリへの前記データの退避を要求する退避要求を出力するステップと、
    前記データが前記共有メモリから前記退避先メモリに退避されると、前記アクセス権情報を書き込み可能に設定するステップと、
    を含む、データ保護方法。
  17. アプリケーションから、電子制御装置の非セキュア領域に設けられた共有メモリへのデータの書き込みを要求する第1の書き込み要求を受信するステップと、
    前記データの書き込みが要求された前記共有メモリに対するアクセス権情報を参照するステップと、
    前記アクセス権情報が、前記共有メモリが書き込み可能であることを示している場合、前記共有メモリへの前記データの書き込みを要求する第2の書き込み要求を出力するステップと、
    前記データが前記共有メモリに書き込まれると、前記アクセス権情報を書き込み不可に設定するステップと、
    前記共有メモリから、前記電子制御装置のセキュア領域に設けられた退避先メモリへの前記データの退避を要求する退避要求を出力するステップと、
    前記データが前記共有メモリから前記退避先メモリに退避されると、前記アクセス権情報を書き込み可能に設定するステップと、
    をコンピュータに実行させる、データ保護プログラム。
JP2018027796A 2018-02-20 2018-02-20 電子制御装置 Active JP6969426B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018027796A JP6969426B2 (ja) 2018-02-20 2018-02-20 電子制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018027796A JP6969426B2 (ja) 2018-02-20 2018-02-20 電子制御装置

Publications (2)

Publication Number Publication Date
JP2019144794A JP2019144794A (ja) 2019-08-29
JP6969426B2 true JP6969426B2 (ja) 2021-11-24

Family

ID=67773801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018027796A Active JP6969426B2 (ja) 2018-02-20 2018-02-20 電子制御装置

Country Status (1)

Country Link
JP (1) JP6969426B2 (ja)

Also Published As

Publication number Publication date
JP2019144794A (ja) 2019-08-29

Similar Documents

Publication Publication Date Title
JP6585019B2 (ja) ネットワーク監視装置、ネットワークシステムおよびプログラム
KR101861455B1 (ko) 향상된 프라이버시를 갖는 보안 차량 데이터 관리
US8965626B2 (en) Event data recording for vehicles
US10380057B2 (en) Data storage device
JP4668656B2 (ja) プログラムの書き換えシステム及びプログラムの書き換え方法
US11080387B1 (en) Validation of software residing on remote computing devices
JPWO2019216306A1 (ja) 異常検知電子制御ユニット、車載ネットワークシステム及び異常検知方法
CN107949847B (zh) 车辆的电子控制单元
JP7172909B2 (ja) 電子制御装置
WO2021111681A1 (ja) 情報処理装置、制御方法及びプログラム
US11841942B2 (en) Anomaly detection device and anomaly detection method
US20200134186A1 (en) Method and system for setting electronic controller security function
US11915027B2 (en) Security and data logging of virtual machines
JP2013009370A (ja) 車両ネットワーク用の安全なデータストア
JP6969426B2 (ja) 電子制御装置
JP7447905B2 (ja) モビリティ制御システム、方法、および、プログラム
WO2021095483A1 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2013171467A (ja) 情報処理装置、車両用電子制御装置、データ読み書き方法
JP6913869B2 (ja) 監視装置、監視システムおよびコンピュータプログラム
WO2017206191A1 (zh) 数据存储方法及装置
JP2009236026A (ja) 車両情報記憶装置、装置情報データ記憶システム、装置情報データ記憶方法
US20220360992A1 (en) Control system
US20230114448A1 (en) Vehicle and method of controlling the same
WO2023074072A1 (ja) データ保存システム、移動体、及びデータ保存プログラム
CN117241981A (zh) 控制装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210915

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: 20210928

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211011

R151 Written notification of patent or utility model registration

Ref document number: 6969426

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151