JP6921034B2 - 車載ネットワークへの不正メッセージ注入防止技術 - Google Patents

車載ネットワークへの不正メッセージ注入防止技術 Download PDF

Info

Publication number
JP6921034B2
JP6921034B2 JP2018097533A JP2018097533A JP6921034B2 JP 6921034 B2 JP6921034 B2 JP 6921034B2 JP 2018097533 A JP2018097533 A JP 2018097533A JP 2018097533 A JP2018097533 A JP 2018097533A JP 6921034 B2 JP6921034 B2 JP 6921034B2
Authority
JP
Japan
Prior art keywords
value
mac
communication message
control device
algorithm
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
JP2018097533A
Other languages
English (en)
Other versions
JP2019205015A (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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
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 Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to JP2018097533A priority Critical patent/JP6921034B2/ja
Publication of JP2019205015A publication Critical patent/JP2019205015A/ja
Application granted granted Critical
Publication of JP6921034B2 publication Critical patent/JP6921034B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、車載ネットワークへの不正メッセージ注入防止技術に関する。
従来、車載通信ネットワークでは、自動車に搭載された制御用コンピュータ(車両用制御装置)であるECU(Electronic Control Unit)が相互に情報通信を行っている(例えば、特開2017−92634号公報(以下、特許文献1)参照)。
特許文献1には、最新性情報と制御データとに基づいて生成された通信メッセージを他の情報処理装置から受信する情報処理装置が記載されている。
特開2017−92634号公報
車載ネットワークへの不正メッセージ注入対策として、特許文献1に開示される技術のように、通信メッセージに特定の情報を付加して、メッセージの正当性を判定する方法がある。特許文献1に開示される技術では、特定の情報を付加する場合、特定の情報のデータサイズ分だけ、通信メッセージで通信できるデータ量が減少する恐れがある。
一方、エンジン制御装置などの車両用制御装置は、様々な車両用装置を制御している。例えば、エンジン制御装置は、アクセルセンサから出力された信号に基づいて目標スロットル開度を演算し、実スロットル開度が目標スロットル開度になるようにスロットルモータを制御する。車両用制御装置による制御は、車両の走行に影響を与えるため、制御に関わる車載ネットワークへの不正なメッセージ注入を防止し、且つ制御の精度低下や遅延を抑えることが要請される。
本発明の目的は、装置を追加せずに車載ネットワークへの不正なメッセージ注入を防止し、且つ制御の精度低下や遅延を抑えることが可能な車両制御システムを提供することにある。
本発明は上記の目的を達成するために、互いに接続される複数の制御装置と、複数の前記制御装置を互いに接続する複数の通信ネットワークと、を備え、算出可能な値を有する通信メッセージを送信する前記制御装置は、前記通信メッセージの前記値から第一アルゴリズムで算出した認証値と、前記認証値と前記値を第二アルゴリズムで演算して、演算結果を前記通信メッセージ内の前記値を割り付けたデータフィールドに格納して、前記通信メッセージを受信する前記制御装置は、受信した前記通信メッセージから、前記認証値を前記第二アルゴリズムと関連を有する第三アルゴリズムによって抽出する。
本発明によれば、装置を追加せずに車載ネットワークへの不正なメッセージ注入を防止し、且つ制御の精度低下や遅延を抑えることが可能な車両制御システムを提供することができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
本発明の第1の実施形態によるエンジン制御装置、ハイブリッド制御装置を含む車両制御システムの構成を示すブロック図。 本発明の第1の実施形態によるエンジン制御装置、ハイブリッド制御装置の構成を示すブロック図。 本発明の第1の実施形態によるハイブリッド制御装置の処理のフローチャートの例を示す図。 本発明の第1の実施形態によるエンジン制御装置の処理のフローチャートの例を示す図。 本発明の第1の実施形態によるエンジン制御装置の処理のフローチャートの例を示す図。 本発明の第1の実施形態によるハイブリッド制御装置の処理のフローチャートの例を示す図。
以下、図面を用いて本発明の第1の実施形態によるハイブリッド制御装置及びエンジン制御装置の構成及び動作を説明する。
(第1の実施形態)
最初に、図1を用いて、車両制御システムのハードウェア構成を説明する。図1は、本発明の第1の実施形態によるエンジン制御装置6、ハイブリッド制御装置10を含む車両制御システムの構成を示すブロック図である。
本実施形態の車両制御システム300は、燃料の燃焼によってトルクを発生するエンジン1と、クラッチ機構2と、車輪3aの駆動軸3bに連結するモータ3と、モータ3を駆動するインバータ(電力変換装置)4と、バッテリ5と、アクセル開度を検出するアクセルセンサ11と、スロットル開度を検出するスロットルセンサ12と、スロットルモータ(スロットル装置)13と、インジェクター(燃料噴射装置)14と、点火装置15と、ブレーキ16と、エンジン制御装置6と、クラッチ制御装置7と、モータ制御装置8と、バッテリ制御装置9と、が搭載されて構成される。エンジン制御装置6は、スロットルセンサ12による検出結果であるスロットル開度を入力し、スロットルモータ13、インジェクター14および点火装置15を制御する。クラッチ制御装置7はクラッチ機構2を制御する。モータ制御装置8はインバータ4を制御することによってモータ3を制御する。バッテリ制御装置9はバッテリ5を制御する。なお、エンジン制御装置6、クラッチ制御装置7、モータ制御装置8、バッテリ制御装置9及びハイブリッド制御装置10は、以下単に制御装置と称する場合がある。
さらに、車両制御システム300には、上述の各制御装置6〜9に対して、指令を出すハイブリッド制御装置10が搭載される。各制御装置6〜10は、それぞれが不図示のCPU(Central Processing Unit)やRAM(Random Access Memory)、ROM(Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)等を備えて構成され、予め定めた制御プログラムにしたがって信号処理を行う。
また、各制御装置6〜10は、互いに、通信線100を介して種々の情報を送受信する。通信線100は、多重通信線であり、CAN(Controller Area Network)プロトコルに基づくネットワークを構成する。なお、通信線100は、多重通信線に限られるものではない。
通信線100は、主にハイブリッド制御に関わる制御装置を繋いでいるCANであり、例えば、ハイブリッド制御装置10、エンジン制御装置6、クラッチ制御装置7、モータ制御装置8、バッテリ制御装置9などが繋がっている。ハイブリッド制御とは、例えば、所定の燃費や運転性を実現するために、トルク配分を決定、指令することである。
エンジン制御装置6は、スロットルセンサ12からのスロットル開度などの入力に基づき、スロットルモータ13、インジェクター14、点火装置15を制御する。具体的には、目標スロットル開度や燃料噴射量、点火時期などが制御されることにより、運転状態に応じてエンジン1の出力が制御される。
モータ3は、モータ(電動機)あるいはジェネレータ(発電機)として機能する。具体的には、モータ3は、加速時にはハイブリッド制御装置10からの信号に基づいてモータ(電動機)として機能し、制動時にはジェネレータ(発電機)として機能してバッテリ5に回生電力を供給し蓄電する。
すなわち、インバータ4は、モータ制御装置8からの指令に基づきバッテリ5からの直流電力を交流電力に変換し、力行時に交流電力をモータ3に供給する。交流電力によりモータ3の固定子に回転磁界が形成され、モータ3の回転子が回転する。また、インバータ4は、回生時に、モータ制御装置8からの指令に基づきモータ3で発電された交流電力を直流電力に変換し、直流電力をバッテリ5に供給する。この直流電力によりバッテリ5が充電される。
なお、バッテリ5に蓄積された電気エネルギは、モータ3用の電力として用いられるほか、不図示のDC−DCコンバータなどを介してエアコンなどの補機類の電力としても用いられる。
次に、図2を用いて、本発明をハイブリッド制御装置10、エンジン制御装置6に適用した場合の構成の一例を説明する。図2は、本発明の第1の実施形態によるハイブリッド制御装置10、エンジン制御装置6の構成を示すブロック図である。
ハイブリッド制御装置10、エンジン制御装置6はCAN通信で通信線100を介して接続されている。
ハイブリッド制御装置10は、演算部30と、MAC生成部31と、MAC埋込部32と、送受信部33と、MAC取出部34と、比較部35と、演算部36と、を備えて構成される。
なお、MAC(Message Authentication Code)とは、通信メッセージを認証するための短い情報のことである。
演算部30は、ハイブリッド制御装置10の外部からの値を入力として演算を行い、通信メッセージに格納するデータを算出する。それらの通信メッセージに格納するデータ自身から算出可能な値(例えば、チェックサム)も算出し、両者をMAC生成部31と、MAC埋込部32に出力する。外部からの入力値は、例えば、アクセルセンサ11からのアクセル開度などである。すなわち、演算部30は、外部からの入力値に基づいて、車両用装置の制御量(例えば、モータ3の制御量やバッテリ5の制御量など)を演算する。
MAC生成部31は、演算部30からの値を入力として所定の演算を行い、MACを生成して、MAC埋込部32にMACを出力する。さらに、送受信部33からの値およびMAC取出部34からの値(後述するMAC’)を入力として所定の演算を行い、MACを生成して、比較部35にMACを出力する。所定の演算は、例えば、ハッシュ関数である。
MAC埋込部32は、演算部30からの値を入力として、通信メッセージを生成する。通信メッセージには、通信メッセージ自身から算出可能な値を含ませる。MAC生成部31からのMACを入力として、生成した通信メッセージ内の、前述した「通信メッセージ自身から算出可能な値」に加算する。具体的には例えば、8バイトのデータフィールドで構成されたCANフレームを生成した場合、8バイト目の値を、1〜7バイト目の値から算出可能な値とする。MACを8バイト目に加算することで、CANフレームにMACを埋め込む。
送受信部33は、通信線100に対する送信部および受信部として機能する。
送受信部33が送信部として機能する場合、MAC埋込部32から出力される通信メッセージを入力とし、IDなどを含むCANフレームを、通信線100を介してハイブリッド制御装置10の外部へ送信する。すなわち、送受信部33は、演算部30の演算結果およびMACを含んだCANフレームをエンジン制御装置6の送受信部40へ送信する。
送受信部33が受信部として機能する場合、ハイブリッド制御装置10の外部からの値を入力としており、通信線100による値を受信し、MAC生成部31とMAC取出部34に受信値を出力する。すなわち、送受信部33は、エンジン制御装置6の送受信部40から送信された値を、受信する。
MAC取出部34は、送受信部33からの受信値を入力として所定の演算を行い、MAC’を取り出して、MAC生成部31および比較部35に、取り出したMAC’を出力する。所定の演算とは、具体的には、8バイトのデータフィールドで構成されたCANフレームで、8バイト目の値が1〜7バイト目の値から算出可能な場合(つまり、通信メッセージ自身から算出可能な値の場合)、1〜7バイト目の値から算出した値を8バイト目から減算することで、MAC’を取り出す。
比較部35は、MAC生成部31からのMACと、MAC取出部34からのMAC’を入力として、両者を比較する。比較した結果、MACおよびMAC’が同一の場合、演算部36へ受信値を出力する。同一ではない場合、受信値を破棄する。
なお、破棄とは、データを捨てることを意味する。例えば、メモリ等に記憶されたデータを削除したり、メモリ等に記憶されたデータを利用しないようにフラグを設定したりすることがデータの破棄に該当する。つまり、データが利用されないように処理がなされていればよい。
演算部36は、比較部35の受信値を入力とし、ハイブリッド制御装置10の外部への出力値(制御用パラメータ)を演算する。外部への出力値は、例えば、不図示のDC−DCコンバータへの制御信号や、モータ制御装置8への目標トルクなどである。
なお、CAN通信では、2本の通信線の電圧差により通信を行うため、外部ノイズの影響を受けにくい。
エンジン制御装置6は、演算部37と、MAC生成部38と、MAC埋込部39と、送受信部40と、MAC取出部41と、比較部42と、演算部43と、を備えて構成される。
演算部37は、エンジン制御装置6の外部からの値を入力として演算を行い、MAC生成部38と、MAC埋込部39に演算結果を出力する。外部からの入力値は、例えば、スロットルセンサ12からのスロットル開度などである。
MAC生成部38は、演算部37からの値を入力として所定の演算を行い、MACを算出して、MAC埋込部39にMACを出力する。さらに、送受信部40からの値およびMAC取出部41からの値(後述するMAC’)を入力として所定の演算を行い、MACを算出して、比較部42にMACを出力する。所定の演算は、例えば、ハッシュ関数である。
MAC埋込部39は、演算部37からの値を入力として、通信メッセージを生成する。通信メッセージには、通信メッセージ自身から算出可能な値を含ませる。MAC生成部38からのMACを入力として、生成した通信メッセージ内の、前述した「通信メッセージ自身から算出可能な値」に加算する。具体的には例えば、8バイトのデータフィールドで構成されたCANフレームを生成した場合、8バイト目の値を、1〜7バイト目の値から算出可能な値とする。MACを8バイト目に加算することで、CANフレームにMACを埋め込む。
送受信部40は、通信線100に対する送信部および受信部として機能する。
送受信部40が送信部として機能する場合、MAC埋込部39から出力される通信メッセージを入力とし、IDなどを含むCANフレームを、通信線100を介してエンジン制御装置6の外部へ送信する。すなわち、送受信部40は、演算部37の演算結果およびMACを含んだCANフレームをハイブリッド制御装置10の送受信部33へ送信する。
送受信部40が受信部として機能する場合、エンジン制御装置6の外部からの値を入力としており、通信線100による値を受信し、MAC生成部38とMAC取出部41に受信値を出力する。すなわち、送受信部40は、ハイブリッド制御装置10の送受信部33から送信された値を、受信する。
MAC取出部41は、送受信部40からの受信値を入力として所定の演算を行い、MAC’を取り出して、MAC生成部38および比較部42に、取り出したMAC’を出力する。所定の演算とは、具体的には、8バイトのデータフィールドで構成されたCANフレームで、8バイト目の値が1〜7バイト目の値から算出可能な場合(つまり、通信メッセージ自身から算出可能な値の場合)、1〜7バイト目の値から算出した値を8バイト目から減算することで、MAC’を取り出す。
比較部42は、MAC生成部38からのMACと、MAC取出部41からのMAC’を入力として、両者を比較する。比較した結果、MACおよびMAC’が同一の場合、演算部43へ受信値を出力する。同一ではない場合、受信値を破棄する。
演算部43は、比較部42の受信値を入力とし、エンジン制御装置6の外部への出力値(制御用パラメータ)を演算する。外部への出力値は、例えば、スロットルモータ13へのスロットル開度などである。
次に、図3を用いて、ハイブリッド制御装置10の動作を説明する。図3は、本発明の第1の実施形態によるハイブリッド制御装置10の通信線100を介した送信処理を示すフローチャートの例である。
ステップS10では、演算部30は、ハイブリッド制御装置10の外部からの値を入力とし、制御値(制御量)を演算し、通信メッセージに格納するデータを演算する。
ステップS11では、演算部30は、ステップS10で演算した「通信メッセージに格納するデータ」自身から算出可能な値Aを算出し、通信メッセージを生成する。
ステップS12では、MAC生成部31は、ステップS11で生成した通信メッセージを入力として、MACを生成する。
ステップS13では、MAC埋込部32は、ステップS12で生成したMACを、ステップS11で生成した通信メッセージの値Aを割り付けたデータフィールドに加算して格納する。例えば、8バイトのデータフィールドを有する通信メッセージにおいて、データフィールドの8バイト目に値Aを割り付けたとする。値A=28とすると、ステップS11で生成した通信メッセージのデータフィールドの8バイト目には、28が格納されている。MAC=55とすると、ステップS13では、通信メッセージのデータフィールドの8バイト目にMACを加算することにより、通信メッセージのデータフィールドの8バイト目には、83が格納されることとなる。
ステップS14では、送受信部33は、ステップS13で生成した通信メッセージを、エンジン制御装置6の送受信部40へ、CAN通信で通信線100を介して送信する。
次に、図4を用いて、エンジン制御装置6の動作を説明する。図4は、本発明の第1の実施形態によるエンジン制御装置6の通信線100を介した受信処理を示すフローチャートの例である。
ステップS20では、送受信部40は、ハイブリッド制御装置10の送受信部33から通信メッセージを受信する。
ステップS21では、MAC取出部41は、ステップS20で受信した通信メッセージから、通信メッセージに格納するデータ自身から算出可能な値Aを算出する。次に、ステップS20で受信した通信メッセージの値Aを割り付けたデータフィールドから、算出した値Aを減算して、MAC’を取り出す。例えば、8バイトのデータフィールドを有する通信メッセージにおいて、データフィールドの8バイト目に値Aを割り付けたとする。値A=28、MAC=55とすると、ステップS21で受信した通信メッセージのデータフィールドの8バイト目には、83が格納されている。ステップS21では、通信メッセージのデータフィールドから値A(=28)を算出し、データフィールドの8バイト目(=83)から値Aを減算することにより、MAC’=55を取り出す。
ステップS22では、MAC生成部38は、ステップS20で受信した通信メッセージから、ステップS21で取り出したMAC’を取り除いた後の通信メッセージを入力として、MACを生成する。
ステップS23では、比較部42は、ステップS21で取り出したMAC’と、ステップS22で生成したMACが等しいか比較する。MAC’とMACが等しいかが真の場合は、ステップS24に処理を進める。偽の場合は、ステップS25に処理を進める。
ステップS24では、演算部43は、受信した通信メッセージの制御値を入力とし、エンジン制御装置6の外部への出力値を演算する。
ステップS25では、比較部42は、ハイブリッド制御装置10の送受信部33から受信した通信メッセージを破棄する。
次に、図5を用いて、エンジン制御装置6の動作を説明する。図5は、本発明の第1の実施形態によるエンジン制御装置6の通信線100を介した送信処理を示すフローチャートの例である。
ステップS30では、演算部37は、エンジン制御装置6の外部からの値を入力とし、制御値(制御量)を演算し、通信メッセージに格納するデータを演算する。
ステップS31では、演算部37は、ステップS30で演算した「通信メッセージに格納するデータ」自身から算出可能な値Aを算出し、通信メッセージを生成する。
ステップS32では、MAC生成部38は、ステップS31で生成した通信メッセージを入力として、MACを生成する。
ステップS33では、MAC埋込部39は、ステップS32で生成したMACを、ステップS31で生成した通信メッセージの値Aを割り付けたデータフィールドに加算して格納する。例えば、8バイトのデータフィールドを有する通信メッセージにおいて、データフィールドの8バイト目に値Aを割り付けたとする。値A=28とすると、ステップS31で生成した通信メッセージのデータフィールドの8バイト目には、28が格納されている。MAC=55とすると、ステップS33では、通信メッセージのデータフィールドの8バイト目にMACを加算することにより、通信メッセージのデータフィールドの8バイト目には、83が格納されることとなる。
ステップS34では、送受信部40は、ステップS33で生成した通信メッセージを、ハイブリッド制御装置10の送受信部33へ、CAN通信で通信線100を介して送信する。
次に、図6を用いて、ハイブリッド制御装置10の動作を説明する。図6は、本発明の第1の実施形態によるハイブリッド制御装置10の通信線100を介した受信処理を示すフローチャートの例である。
ステップS40では、送受信部33は、エンジン制御装置6の送受信部40から通信メッセージを受信する。
ステップS41では、MAC取出部34は、ステップS40で受信した通信メッセージから、通信メッセージに格納するデータ自身から算出可能な値Aを算出する。次に、ステップS40で受信した通信メッセージの値Aを割り付けたデータフィールドから、算出した値Aを減算して、MAC’を取り出す。例えば、8バイトのデータフィールドを有する通信メッセージにおいて、データフィールドの8バイト目に値Aを割り付けたとする。値A=28、MAC=55とすると、ステップS41で受信した通信メッセージのデータフィールドの8バイト目には、83が格納されている。ステップS41では、通信メッセージのデータフィールドから値A(=28)を算出し、データフィールドの8バイト目(=83)から値Aを減算することにより、MAC’=55を取り出す。
ステップS42では、MAC生成部31は、ステップS40で受信した通信メッセージから、ステップS41で取り出したMAC’を取り除いた後の通信メッセージを入力として、MACを生成する。
ステップS43では、比較部35は、ステップS41で取り出したMAC’と、ステップS42で生成したMACが等しいか比較する。MAC’とMACが等しいかが真の場合は、ステップS44に処理を進める。偽の場合は、ステップS45に処理を進める。
ステップS44では、演算部36は、受信した通信メッセージの制御値を入力とし、ハイブリッド制御装置10の外部への出力値を演算する。
ステップS45では、比較部35は、エンジン制御装置6の送受信部40から受信した通信メッセージを破棄する。
上記の方法により、MACを、通信メッセージ自身から算出可能な値に加算することで、通信メッセージ内のデータフィールドに格納できる制御量等の実データ量を減少させずにMACを使用可能となる。
上記実施形態では、制御装置がCAN通信を行う例を説明したが、これに限定せず、制御装置が例えば、LIN(Local Interconnect Network)、FlexRay(Daimler Chrysler AGの登録商標)、MOST(Media Oriented Systems Transport。Standard Microsystems Corporationの登録商標)、PLC(Power Line Communication)などの如何なるプロトコルで通信を行うものであってもよいし、複数の制御装置のそれぞれが異なるプロトコルで通信を行う構成に適用してもよい。
上記実施形態では、制御装置が有線の例を説明したが、これに限定せず、制御装置が無線である構成やOTA(Over The Air)に適用してもよい。
以上説明したように、本実施形態によれば、通信メッセージ内のデータフィールドに格納できる制御量等の実データ量を減少させずにMACを使用可能となることで、単位時間当たりに通信可能な情報量を減らさずに、不正メッセージ注入を防止し、安全性を向上できる。通信可能な情報量を減らさないことで、制御の精度低下や遅延を抑えられる。
(第1の変形例)
通信ネットワークは、CAN−FDでもよい。例えば、図2の例では、通信線100をCAN−FDとしてもよい。
本変形例によれば、通信速度を向上し、通信可能なデータ量を増加できる。これにより、通信効率が向上する。
(第2の変形例)
通信ネットワークは、Ethernet(富士ゼロックス株式会社の登録商標)でもよい。例えば、図2の例では、通信線100をEthernetとしてもよい。
本変形例によれば、通信速度を向上し、通信可能なデータ量を増加できる。これにより、通信効率が向上する。
(第3の変形例)
第1の実施形態では、MAC埋込部32は、MACを「通信メッセージ自身から算出可能な値」に加算するとしたが、減算でもよいし、加算と減算のいずれかに選択可能としてもよい。減算とした場合、MAC取出部34は、通信メッセージ自身から算出可能な値を、加算することでMAC’を取り出す。MAC埋込部39およびMAC取出部41においても、同様に、加算と減算のいずれかに選択可能としてもよい。
本変形例によれば、算出方法を可変にすることで、攻撃者に解読されにくくなる。これにより、機密性が向上する。
(第4の変形例)
「通信メッセージ自身から算出可能な値」は、チェックサムでもよい。例えば、図2の例では、MAC埋込部32および39は、通信メッセージにチェックサムを含ませる。
本変形例によれば、通信メッセージの誤り検出可能となる。これにより、通信メッセージの伝送が正しく行えたか確認可能となり、通信の信頼性が向上する。
(第5の変形例)
「通信メッセージ自身から算出可能な値」は、CRC(巡回冗長符号:Cyclic Redundancy Check)でもよい。例えば、図2の例では、MAC埋込部32および39は、通信メッセージにCRCを含ませる。
本変形例によれば、通信メッセージの誤り検出可能となる。これにより、通信メッセージの伝送が正しく行えたか確認可能となり、通信の信頼性が向上する。
(第6の変形例)
MACおよび「通信メッセージ自身から算出可能な値」の、データサイズのビット数を1bit減らし、桁あふれビット用の領域を有するようにしてもよい。例えば、MACおよび「通信メッセージ自身から算出可能な値」のデータサイズを8bitとしていた場合は、7bitをMACおよび「通信メッセージ自身から算出可能な値」とし、残りの1bitを、加算時の桁あふれビットとして使用する。
本変形例によれば、MAC取出部34および41が、MAC’を取り出す際の減算において、計算負荷が減少する。これにより、ソフトウェアの効率性が向上する。
(第7の変形例)
通信メッセージのデータフィールドの空き領域に、桁あふれビット用の領域を有するようにしてもよい。
本変形例によれば、MAC取出部34および41が、MAC’を取り出す際の減算において、計算負荷が減少し、桁あふれビットの割付け自由度が向上する。これにより、ソフトウェアの効率性が向上する。
(第8の変形例)
第1の実施形態では、MAC埋込部32は、MACを「通信メッセージ自身から算出可能な値」に加算するとしたが、置換でもよい。置換とした場合、MAC取出部34は、通信メッセージ自身から算出可能な値について特に考慮せず、通信メッセージからそのままMAC’を取り出す。MAC埋込部39およびMAC取出部41においても、同様に、置換としてもよい。
本変形例によれば、MAC取出部34および41が、MAC’を取り出す際の演算において、計算負荷が減少する。これにより、ソフトウェアの効率性が向上する。
(第9の変形例)
MACのデータサイズのビット数は、「通信メッセージ自身から算出可能な値」のデータサイズ以下でもよい。例えば、「通信メッセージ自身から算出可能な値」が8bitの場合、MACは8bit以下のデータサイズとする。
本変形例によれば、MAC取出部34および41が、MAC’を取り出す際において、計算負荷が減少する。さらに、通信メッセージのデータフィールドの空きが不要となる。これにより、ソフトウェアの効率性が向上する。
以上の実施例及び変形例は、次のように表現することができる。
互いに接続される複数の制御装置と、複数の前記制御装置を互いに接続する複数の通信ネットワークと、を備え、算出可能な値を有する通信メッセージを送信する前記制御装置は、前記通信メッセージの前記値から第一アルゴリズムで算出した認証値と、前記認証値と前記値を第二アルゴリズムで演算して、演算結果を前記通信メッセージ内の前記値を割り付けたデータフィールドに格納して、前記通信メッセージを受信する前記制御装置は、受信した前記通信メッセージから、前記認証値を前記第二アルゴリズムと関連を有する第三アルゴリズムによって抽出する。
また、前記第二アルゴリズムに加算を含み、前記第三アルゴリズムに減算を含む。
また、前記第二アルゴリズムは加算、前記第三アルゴリズムは減算、又は、前記第二アルゴリズムは減算、前記第三アルゴリズムは加算、のいずれかを選択可能である。
また、前記値はチェックサムである。
また、前記値はCRCである。
また、前記値および前記認証値を1bit減らした構成とし、減らした前記1bit分を、前記第二アルゴリズム又は前記第三アルゴリズムでの加算による桁あふれbitとする。
また、前記第二アルゴリズム又は前記第三アルゴリズムでの加算による桁あふれbitを、前記通信メッセージ内のデータフィールドの空きに有する。
また、前記第二アルゴリズムは、前記値を減算し、前記認証値を加算して、前記第三アルゴリズムは停止させる。
また、前記認証値のビット数は前記値のbit数以下である。
なお、上記第1の実施形態では、ハイブリッド制御装置10、エンジン制御装置6との間の通信の例を説明したが、他の制御装置、例えば、クラッチ制御装置7、モータ制御装置8、バッテリ制御装置9などの通信に適用してもよい。
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、本発明は、搭載車両の種類に限定されるものではなく、例えば、自動運転機能や自動駐車機能を有する車両に搭載されていてもよい。
また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
1…エンジン、2…クラッチ機構、3…モータ、4…インバータ(電力変換装置)、5…バッテリ、6…エンジン制御装置(制御装置)、7…クラッチ制御装置(制御装置)、8…モータ制御装置(制御装置)、9…バッテリ制御装置(制御装置)、10…ハイブリッド制御装置(制御装置)、11…アクセルセンサ、12…スロットルセンサ、13…スロットルモータ(スロットル装置)、14…インジェクター(燃料噴射装置)、15…点火装置、16…ブレーキ、30…演算部、31…MAC生成部、32…MAC埋込部、33…送受信部、34…MAC取出部、35…比較部、36…演算部、37…演算部、38…MAC生成部、39…MAC埋込部、40…送受信部、41…MAC取出部、42…比較部、43…演算部、100…通信線、300…車両制御システム。

Claims (9)

  1. 互いに接続される複数の制御装置と、
    複数の前記制御装置を互いに接続する複数の通信ネットワークと、
    を備え、
    算出可能な値を有する通信メッセージを送信する前記制御装置は、
    前記通信メッセージの前記値から第一アルゴリズムで算出した認証値と、
    前記認証値と前記値を第二アルゴリズムで演算して、演算結果を前記通信メッセージ内の前記値を割り付けたデータフィールドに格納して、
    前記通信メッセージを受信する前記制御装置は、
    受信した前記通信メッセージから、前記認証値を前記第二アルゴリズムと関連を有する第三アルゴリズムによって抽出する、
    ことを特徴とする車両制御システム。
  2. 請求項1に記載の車両制御システムにおいて、
    前記第二アルゴリズムに加算を含み、前記第三アルゴリズムに減算を含む、
    ことを特徴とする車両制御システム。
  3. 請求項1に記載の車両制御システムにおいて、
    前記第二アルゴリズムは加算、前記第三アルゴリズムは減算、
    又は、
    前記第二アルゴリズムは減算、前記第三アルゴリズムは加算、
    のいずれかを選択可能である
    ことを特徴とする車両制御システム。
  4. 請求項2〜3のいずれかに記載の車両制御システムにおいて、
    前記値はチェックサムである
    ことを特徴とする車両制御システム。
  5. 請求項2〜3のいずれかに記載の車両制御システムにおいて、
    前記値はCRCである
    ことを特徴とする車両制御システム。
  6. 請求項2〜3のいずれかに記載の車両制御システムにおいて、
    前記値および前記認証値を1bit減らした構成とし、減らした前記1bit分を、前記第二アルゴリズム又は前記第三アルゴリズムでの加算による桁あふれbitとする
    ことを特徴とする車両制御システム。
  7. 請求項2〜3のいずれかに記載の車両制御システムにおいて、
    前記第二アルゴリズム又は前記第三アルゴリズムでの加算による桁あふれbitを、前記通信メッセージ内のデータフィールドの空きに有する
    ことを特徴とする車両制御システム。
  8. 請求項2に記載の車両制御システムにおいて、
    前記第二アルゴリズムは、前記値を減算し、前記認証値を加算して、
    前記第三アルゴリズムは停止させる
    ことを特徴とする車両制御システム。
  9. 請求項1〜8のいずれかに記載の車両制御システムにおいて、
    前記認証値のビット数は前記値のbit数以下である
    ことを特徴とする車両制御システム。
JP2018097533A 2018-05-22 2018-05-22 車載ネットワークへの不正メッセージ注入防止技術 Active JP6921034B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018097533A JP6921034B2 (ja) 2018-05-22 2018-05-22 車載ネットワークへの不正メッセージ注入防止技術

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018097533A JP6921034B2 (ja) 2018-05-22 2018-05-22 車載ネットワークへの不正メッセージ注入防止技術

Publications (2)

Publication Number Publication Date
JP2019205015A JP2019205015A (ja) 2019-11-28
JP6921034B2 true JP6921034B2 (ja) 2021-08-18

Family

ID=68727386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018097533A Active JP6921034B2 (ja) 2018-05-22 2018-05-22 車載ネットワークへの不正メッセージ注入防止技術

Country Status (1)

Country Link
JP (1) JP6921034B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW540248B (en) * 2000-07-19 2003-07-01 Koninkl Philips Electronics Nv Method and device for generating a multiplexed MPEG signal
US6915473B2 (en) * 2001-05-14 2005-07-05 Interdigital Technology Corporation Method and system for implicit user equipment identification
JP2004325677A (ja) * 2003-04-23 2004-11-18 Sony Corp 暗号処理装置および暗号処理方法、並びにコンピュータ・プログラム
WO2005086450A1 (en) * 2004-03-02 2005-09-15 Novo Nordisk A/S Transmission data packet construction for better header authentication
US8627071B1 (en) * 2005-04-29 2014-01-07 Netapp, Inc. Insuring integrity of remote procedure calls used in a client and server storage system
TWI372539B (en) * 2006-06-23 2012-09-11 Qualcomm Inc Methods and systems for processing overhead reduction for control channel packets
JP4908487B2 (ja) * 2008-12-24 2012-04-04 京楽産業.株式会社 電子機器、認証方法および認証プログラム
JP6116271B2 (ja) * 2013-02-08 2017-04-19 キヤノン株式会社 特徴量算出装置、方法及びプログラム
JP6190404B2 (ja) * 2014-06-05 2017-08-30 Kddi株式会社 受信ノード、メッセージ受信方法およびコンピュータプログラム
EP3161995B1 (en) * 2014-06-27 2019-11-06 Telefonaktiebolaget LM Ericsson (publ) Generating cryptographic checksums

Also Published As

Publication number Publication date
JP2019205015A (ja) 2019-11-28

Similar Documents

Publication Publication Date Title
US10974669B2 (en) Gateway device, vehicle network system, and transfer method
US10599537B2 (en) Failure diagnosis apparatus and method for in-vehicle control unit
EP3800092B1 (en) Vehicle-mounted network system, invalidity detection electronic control unit, and invalidity detection method
JP7231559B2 (ja) 異常検知電子制御ユニット、車載ネットワークシステム及び異常検知方法
JP6585019B2 (ja) ネットワーク監視装置、ネットワークシステムおよびプログラム
US20170048241A1 (en) Transmission device, reception device, transmission method, and reception method
US10423401B2 (en) Method for updating software of a control device of a vehicle
KR101972457B1 (ko) Can 통신 기반 해킹공격 탐지 방법 및 시스템
US20230015877A1 (en) Certificate list update method and apparatus
CN111434077A (zh) 通信控制装置、非法检测电子控制单元、移动网络系统、通信控制方法、非法检测方法以及程序
WO2012169456A1 (ja) 車両制御装置、車両制御システム
CN112585930A (zh) 数据存储的方法、装置以及系统
JP6921034B2 (ja) 車載ネットワークへの不正メッセージ注入防止技術
Campo et al. Real-Time Network Defense of SAE J1939 Address Claim Attacks
JP6434287B2 (ja) 車両制御システム
Wu et al. Functional safety and secure CAN in motor control system design for electric vehicles
EP3734911B1 (en) Gateway device, car onboard network system, and transfer method
EP4231594A1 (en) Relay device, communication network system and communication control method
EP3944116A1 (en) Method to forward automotive safety integrity level (asil) relevant information in a vehicle bus system (vbs) of a vehicle from a data source to a data sink and vbs for forwarding asil relevant information in a vehicle from a data source to a data sink
KR102034207B1 (ko) 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템
JP6731892B2 (ja) 車載メモリの改竄検知装置
JP6594275B2 (ja) 車両制御システム
JP2022067012A (ja) 中継装置、通信ネットワークシステム及び通信制御方法
Abd El-Gleel et al. Secure lightweight CAN protocol handling message loss for electric vehicles
JP2023144496A (ja) システム、車両及び方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180523

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200929

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210519

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210727

R150 Certificate of patent or registration of utility model

Ref document number: 6921034

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150