JP2001202266A - 車載制御ユニットの検査方法 - Google Patents
車載制御ユニットの検査方法Info
- Publication number
- JP2001202266A JP2001202266A JP2000012803A JP2000012803A JP2001202266A JP 2001202266 A JP2001202266 A JP 2001202266A JP 2000012803 A JP2000012803 A JP 2000012803A JP 2000012803 A JP2000012803 A JP 2000012803A JP 2001202266 A JP2001202266 A JP 2001202266A
- Authority
- JP
- Japan
- Prior art keywords
- sum value
- control unit
- ecu
- microcomputer
- data
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 20
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 45
- 238000004364 calculation method Methods 0.000 claims abstract description 21
- 238000007689 inspection Methods 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 abstract description 27
- 230000004075 alteration Effects 0.000 abstract description 4
- 230000002159 abnormal effect Effects 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 34
- 238000004891 communication Methods 0.000 description 17
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000007634 remodeling Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
(57)【要約】
【課題】車載制御ユニットを正しく検査し、ひいては不
正改造の防止を図る。 【解決手段】ECU10は周知のマイコン11を備え、
マイコン11は、各種制御の中枢をなすCPU12、電
気的に消去及び書き込み可能なフラッシュメモリ13、
その他図示しない入出力回路等を備える。外部ツール2
0も同様に、CPU、メモリ、入出力回路等からなる周
知のマイコン21を備える。ECU10の正偽判定(検
査)に際し、外部ツール20では先ず、サム値算出指令
と乱数とを含む送信データをECU10に送信する。E
CU10では、フラッシュメモリ13内のデータのサム
値を算出すると共に、所定の暗号化アルゴリズムを用
い、乱数に応じてサム値を暗号化する。その後、暗号化
サム値を外部ツール20に送信する。外部ツール20で
は、復号化したサム値と予め登録されている真のサム値
とを比較判定し、その結果によりECU10が正常か異
常かを判断する。
正改造の防止を図る。 【解決手段】ECU10は周知のマイコン11を備え、
マイコン11は、各種制御の中枢をなすCPU12、電
気的に消去及び書き込み可能なフラッシュメモリ13、
その他図示しない入出力回路等を備える。外部ツール2
0も同様に、CPU、メモリ、入出力回路等からなる周
知のマイコン21を備える。ECU10の正偽判定(検
査)に際し、外部ツール20では先ず、サム値算出指令
と乱数とを含む送信データをECU10に送信する。E
CU10では、フラッシュメモリ13内のデータのサム
値を算出すると共に、所定の暗号化アルゴリズムを用
い、乱数に応じてサム値を暗号化する。その後、暗号化
サム値を外部ツール20に送信する。外部ツール20で
は、復号化したサム値と予め登録されている真のサム値
とを比較判定し、その結果によりECU10が正常か異
常かを判断する。
Description
【0001】
【発明の属する技術分野】本発明は、車載制御ユニット
の検査方法に関するものである。
の検査方法に関するものである。
【0002】
【従来の技術】この種の従来技術として、特開平11−
132097号公報の「車両制御用メモリ書き換え装
置」がある。同公報の装置は、外部ツールにより電気的
に消去及び書き込み可能な制御メモリ(フラッシュメモ
リ)を搭載したECU(車載制御ユニット)を備え、書
き換え許可された時にのみ前記制御メモリに対するデー
タ書き換えが実施される。また、この装置は、制御メモ
リが記憶するソフトウエア(制御プログラム)が正しい
ことを検査するものであり、その特徴として、 ・予め記憶しておいた制御メモリのサム値(真値)と、
ECUで算出したサム値とを共に表示し、それらを比較
することで正偽判定を行う。 ・上記サム値の比較は外部ツールの内部で行い、その結
果(正偽)のみを返信する。 ・イグニッションキースイッチのOFFからONへの切
換後にサム値の計算を行う。といった処理を実行する。
132097号公報の「車両制御用メモリ書き換え装
置」がある。同公報の装置は、外部ツールにより電気的
に消去及び書き込み可能な制御メモリ(フラッシュメモ
リ)を搭載したECU(車載制御ユニット)を備え、書
き換え許可された時にのみ前記制御メモリに対するデー
タ書き換えが実施される。また、この装置は、制御メモ
リが記憶するソフトウエア(制御プログラム)が正しい
ことを検査するものであり、その特徴として、 ・予め記憶しておいた制御メモリのサム値(真値)と、
ECUで算出したサム値とを共に表示し、それらを比較
することで正偽判定を行う。 ・上記サム値の比較は外部ツールの内部で行い、その結
果(正偽)のみを返信する。 ・イグニッションキースイッチのOFFからONへの切
換後にサム値の計算を行う。といった処理を実行する。
【0003】
【発明が解決しようとする課題】上記公報の従来技術で
は、ECUで計算したサム値を外部ツールに対してその
まま送信する。そのため、ECUと外部ツールとの通信
データをモニタすることにより、ECUにより算出した
正しいサム値を容易に知り得ることができる。
は、ECUで計算したサム値を外部ツールに対してその
まま送信する。そのため、ECUと外部ツールとの通信
データをモニタすることにより、ECUにより算出した
正しいサム値を容易に知り得ることができる。
【0004】また、制御メモリのサム値は、ソフトウエ
アを書き換えなければ変化しないものであるため、外部
チェッカに対して正しいサム値を常に送信するような不
正なプログラムを不正改造者が作成し、それをECUに
組み込めば、正規のサム値算出アルゴリズムを知らなく
ても容易に正規ECUとしてなりすますことが可能とな
る。これは、ECU側で正偽判定を行う構成でも同様で
ある。すなわち、モニタしたサム値を返答する偽プログ
ラムを不正改造者が作成することにより、不正改造され
た偽ECUであっても、外部ツールは正しいサム値(常
に同じ)が返答されたと認識し、正しいECUであると
判断してしまう。
アを書き換えなければ変化しないものであるため、外部
チェッカに対して正しいサム値を常に送信するような不
正なプログラムを不正改造者が作成し、それをECUに
組み込めば、正規のサム値算出アルゴリズムを知らなく
ても容易に正規ECUとしてなりすますことが可能とな
る。これは、ECU側で正偽判定を行う構成でも同様で
ある。すなわち、モニタしたサム値を返答する偽プログ
ラムを不正改造者が作成することにより、不正改造され
た偽ECUであっても、外部ツールは正しいサム値(常
に同じ)が返答されたと認識し、正しいECUであると
判断してしまう。
【0005】本発明は、上記問題に着目してなされたも
のであって、その目的とするところは、車載制御ユニッ
トを正しく検査し、ひいては不正改造の防止を図ること
ができる車載制御ユニットの検査方法を提供することで
ある。
のであって、その目的とするところは、車載制御ユニッ
トを正しく検査し、ひいては不正改造の防止を図ること
ができる車載制御ユニットの検査方法を提供することで
ある。
【0006】
【課題を解決するための手段】請求項1に記載の車載制
御ユニットの検査方法では、(1)乱数を発生させ、そ
の乱数をサム値の算出指令と共に外部ツールから制御ユ
ニットへ送信する第1のステップ、(2)前記メモリの
サム値を算出すると共に、該サム値を前記乱数に応じて
暗号化する第2のステップ、(3)前記暗号化したデー
タを外部ツールに送信する第3のステップ、(4)外部
ツールで受信したデータを復号化すると共に、そのデー
タ中のサム値を予め用意された真のサム値と比較し、そ
の比較判定の結果から車載制御ユニットを検査する第4
のステップ、といった各ステップを順に実施するので、
不正改造を行おうとする者に正しいサム値が漏れ知れる
可能性は低くなる。また、仮に正規の制御ユニットが不
正改造され、メモリの正しいサム値を外部ツール側に返
信できるような不正なプログラムが制御ユニットに組み
込まれたとしても、外部ツールでは、暗号化データを受
信すると共にその暗号化データを復号化した後、サム値
の比較判定を行うので、不正改造された制御ユニットが
正規な制御ユニットとしてなりすますことが極めて困難
になる。その結果、車載制御ユニットを正しく検査し、
ひいては不正改造の防止を図ることができる。
御ユニットの検査方法では、(1)乱数を発生させ、そ
の乱数をサム値の算出指令と共に外部ツールから制御ユ
ニットへ送信する第1のステップ、(2)前記メモリの
サム値を算出すると共に、該サム値を前記乱数に応じて
暗号化する第2のステップ、(3)前記暗号化したデー
タを外部ツールに送信する第3のステップ、(4)外部
ツールで受信したデータを復号化すると共に、そのデー
タ中のサム値を予め用意された真のサム値と比較し、そ
の比較判定の結果から車載制御ユニットを検査する第4
のステップ、といった各ステップを順に実施するので、
不正改造を行おうとする者に正しいサム値が漏れ知れる
可能性は低くなる。また、仮に正規の制御ユニットが不
正改造され、メモリの正しいサム値を外部ツール側に返
信できるような不正なプログラムが制御ユニットに組み
込まれたとしても、外部ツールでは、暗号化データを受
信すると共にその暗号化データを復号化した後、サム値
の比較判定を行うので、不正改造された制御ユニットが
正規な制御ユニットとしてなりすますことが極めて困難
になる。その結果、車載制御ユニットを正しく検査し、
ひいては不正改造の防止を図ることができる。
【0007】上記発明は特に、フラッシュメモリ等、電
気的に書き換え可能な不揮発性メモリにて車載制御ユニ
ット内のメモリが構成される場合に有効である(請求項
2)。
気的に書き換え可能な不揮発性メモリにて車載制御ユニ
ット内のメモリが構成される場合に有効である(請求項
2)。
【0008】請求項3に記載の発明では、前記第4のス
テップにおいてサム値が不一致となった場合、前記第1
のステップに戻って新たに乱数を設定し、それに続く第
2〜第4のステップを再度実施する。これにより、一時
的な通信異常が原因で正しく検査されなかった場合に
も、再通信により適正な検査が実施できる。またここ
で、乱数を再設定するために制御ユニットと外部ツール
との間の送受信データはその都度異なるので、通信線が
モニタされることを想定しても、正しいサム値が漏れ知
れる可能性は極めて低くなる。
テップにおいてサム値が不一致となった場合、前記第1
のステップに戻って新たに乱数を設定し、それに続く第
2〜第4のステップを再度実施する。これにより、一時
的な通信異常が原因で正しく検査されなかった場合に
も、再通信により適正な検査が実施できる。またここ
で、乱数を再設定するために制御ユニットと外部ツール
との間の送受信データはその都度異なるので、通信線が
モニタされることを想定しても、正しいサム値が漏れ知
れる可能性は極めて低くなる。
【0009】請求項4に記載の発明では、 ・前記第1のステップでは、複数の暗号化アルゴリズム
の中から一つを指定してそれを表す識別データを、乱数
とサム値の算出指令と共に外部ツールから制御ユニット
へ送信し、 ・前記第2のステップでは、前記識別データによる指定
通りの暗号化アルゴリズムを使って暗号化を行い、 ・その後、前記第4のステップでは、前記指定した暗号
化アルゴリズムに対応する復号化の算出式を取り出して
受信データを復号化し、サム値を抽出する。
の中から一つを指定してそれを表す識別データを、乱数
とサム値の算出指令と共に外部ツールから制御ユニット
へ送信し、 ・前記第2のステップでは、前記識別データによる指定
通りの暗号化アルゴリズムを使って暗号化を行い、 ・その後、前記第4のステップでは、前記指定した暗号
化アルゴリズムに対応する復号化の算出式を取り出して
受信データを復号化し、サム値を抽出する。
【0010】かかる場合、複数の暗号化アルゴリズムを
択一的に使うことにより、不正改造者に暗号化アルゴリ
ズムが知られたとしても、実際に使われた暗号化アルゴ
リズムに対応させてサム値を解明するのは非常に困難と
なる。それ故、車載制御ユニットの不正改造を、より一
層困難なものとすることができる。
択一的に使うことにより、不正改造者に暗号化アルゴリ
ズムが知られたとしても、実際に使われた暗号化アルゴ
リズムに対応させてサム値を解明するのは非常に困難と
なる。それ故、車載制御ユニットの不正改造を、より一
層困難なものとすることができる。
【0011】請求項5に記載の発明では、車載制御ユニ
ットは、電気的に書き換え可能な不揮発性メモリを実装
した第1マイクロコンピュータと、書き換え不可能なR
OMを実装した第2マイクロコンピュータとを備え、第
2マイクロコンピュータのROMに、前記不揮発性メモ
リのサム値を暗号化するための暗号化アルゴリズムを記
憶させておく。つまり、書き換え不可能な第2マイクロ
コンピュータのROMにサム値の暗号化アルゴリズムを
配置することにより、不正改造防止が更に強化される。
ットは、電気的に書き換え可能な不揮発性メモリを実装
した第1マイクロコンピュータと、書き換え不可能なR
OMを実装した第2マイクロコンピュータとを備え、第
2マイクロコンピュータのROMに、前記不揮発性メモ
リのサム値を暗号化するための暗号化アルゴリズムを記
憶させておく。つまり、書き換え不可能な第2マイクロ
コンピュータのROMにサム値の暗号化アルゴリズムを
配置することにより、不正改造防止が更に強化される。
【0012】かかる請求項5の発明では、請求項6に記
載したように、第2のステップを実現する上で、前記不
揮発性メモリのサム値を第1マイクロコンピュータから
第2マイクロコンピュータへ送信するステップと、第2
マイクロコンピュータにて前記ROM内の暗号化アルゴ
リズムでサム値を暗号化した後、その暗号化データを第
1マイクロコンピュータに返信するステップと、を設け
ると良い。
載したように、第2のステップを実現する上で、前記不
揮発性メモリのサム値を第1マイクロコンピュータから
第2マイクロコンピュータへ送信するステップと、第2
マイクロコンピュータにて前記ROM内の暗号化アルゴ
リズムでサム値を暗号化した後、その暗号化データを第
1マイクロコンピュータに返信するステップと、を設け
ると良い。
【0013】
【発明の実施の形態】(第1の実施の形態)この発明を
具体化した本実施の形態では、エンジン制御等を司るE
CUにて車載制御ユニットを構成しており、このECU
に対して外部ツールを接続し、当該ECUの検査やデー
タの交換等を行うこととしている。以下、その詳細を図
面に従って説明する。
具体化した本実施の形態では、エンジン制御等を司るE
CUにて車載制御ユニットを構成しており、このECU
に対して外部ツールを接続し、当該ECUの検査やデー
タの交換等を行うこととしている。以下、その詳細を図
面に従って説明する。
【0014】図1は、制御システムの概略構成を示すブ
ロック図である。本システムにおいて、ECU10は周
知のマイクロコンピュータ(以下、マイコンという)1
1を備え、マイコン11は、予め用意されている制御プ
ログラム等を用いてエンジンの各種制御を実施する。マ
イコン11は、各種制御の中枢をなすCPU12、電気
的に消去及び書き込み可能なフラッシュメモリ13、そ
の他図示しないRAMや入出力回路等を備える。
ロック図である。本システムにおいて、ECU10は周
知のマイクロコンピュータ(以下、マイコンという)1
1を備え、マイコン11は、予め用意されている制御プ
ログラム等を用いてエンジンの各種制御を実施する。マ
イコン11は、各種制御の中枢をなすCPU12、電気
的に消去及び書き込み可能なフラッシュメモリ13、そ
の他図示しないRAMや入出力回路等を備える。
【0015】外部ツール20も同様に、CPU、メモ
リ、入出力回路等からなる周知のマイコン21を備え
る。この外部ツール20は、ECU10の正偽判定等の
検査や、同ECU10内のフラッシュメモリ13のデー
タ書き換えに際し、通信線L1を介してECU10に接
続される。これにより、ECU10と外部ツール20と
の間でシリアル通信によるデータのやり取りが行われ
る。
リ、入出力回路等からなる周知のマイコン21を備え
る。この外部ツール20は、ECU10の正偽判定等の
検査や、同ECU10内のフラッシュメモリ13のデー
タ書き換えに際し、通信線L1を介してECU10に接
続される。これにより、ECU10と外部ツール20と
の間でシリアル通信によるデータのやり取りが行われ
る。
【0016】ECU10の正偽判定(検査)の概要を、
図2を用いて説明する。かかる場合、フラッシュメモリ
13内のデータのサム値と既知の正しいサム値とが比較
され、両者が一致すれば、ECU10が正規なものであ
ると判断される。このとき、外部ツール20側では乱数
を発生させてそれをECU10に送信する一方、ECU
10側では、その内部に予め記憶された暗号化アルゴリ
ズムを用い、サム値を暗号化して外部ツール20に送信
するようになっている。なお図2では、処理順序を表す
ため、(1)〜(6)の連続番号を付している。
図2を用いて説明する。かかる場合、フラッシュメモリ
13内のデータのサム値と既知の正しいサム値とが比較
され、両者が一致すれば、ECU10が正規なものであ
ると判断される。このとき、外部ツール20側では乱数
を発生させてそれをECU10に送信する一方、ECU
10側では、その内部に予め記憶された暗号化アルゴリ
ズムを用い、サム値を暗号化して外部ツール20に送信
するようになっている。なお図2では、処理順序を表す
ため、(1)〜(6)の連続番号を付している。
【0017】先ず始めに、サム値の算出指令と乱数Rt
とを含む送信データを通信線L1を介して外部ツール2
0からECU10に送信する(図の(1))。このと
き、外部ツール20の送信データは、例えば図5(a)
のフレーム構成を有し、このうち、送信ヘッダは送信元
ID、送信先ID及びコマンドコードにて構成され、デ
ータは送信データID、乱数、本送信データのチェック
サム(CS)にて構成されている。
とを含む送信データを通信線L1を介して外部ツール2
0からECU10に送信する(図の(1))。このと
き、外部ツール20の送信データは、例えば図5(a)
のフレーム構成を有し、このうち、送信ヘッダは送信元
ID、送信先ID及びコマンドコードにて構成され、デ
ータは送信データID、乱数、本送信データのチェック
サム(CS)にて構成されている。
【0018】ECU10側では、フラッシュメモリ13
内のデータのサム値Xsumを算出すると共に、所定の
暗号化アルゴリズムを用い、乱数Rtに応じてサム値X
sumを暗号化する(図の(2),(3))。つまり、
算出式Xt=f(Xsum,Rt)により、暗号化した
サム値Xt(以下には便宜上、暗号化サム値Xtと言
う)を算出する。
内のデータのサム値Xsumを算出すると共に、所定の
暗号化アルゴリズムを用い、乱数Rtに応じてサム値X
sumを暗号化する(図の(2),(3))。つまり、
算出式Xt=f(Xsum,Rt)により、暗号化した
サム値Xt(以下には便宜上、暗号化サム値Xtと言
う)を算出する。
【0019】その後、暗号化サム値Xtを通信線L1を
介して外部ツール20に送信する(図の(4))。この
とき、外部ツール20の受信データは、例えば図5
(b)のフレーム構成を有し、このうち、送信ヘッダは
送信元ID、送信先ID及びコマンドコードにて構成さ
れ、データは送信データID、暗号化データ、本送信デ
ータのチェックサム(CS)にて構成されている。
介して外部ツール20に送信する(図の(4))。この
とき、外部ツール20の受信データは、例えば図5
(b)のフレーム構成を有し、このうち、送信ヘッダは
送信元ID、送信先ID及びコマンドコードにて構成さ
れ、データは送信データID、暗号化データ、本送信デ
ータのチェックサム(CS)にて構成されている。
【0020】外部ツール20では、算出式 Xsum=f-1(Xt,Rt) により、暗号化サム値Xtを復号化し、サム値Xsum
を算出する(図の(5))。その後、前記の如く算出し
たサム値Xsumと、予め登録されている真のサム値X
refとを比較判定する(図の(6))。そして、両者
が一致すれば、ECU10が正規ECUであると判断
し、不一致であれば、ECU10が偽ECUであると判
断する。
を算出する(図の(5))。その後、前記の如く算出し
たサム値Xsumと、予め登録されている真のサム値X
refとを比較判定する(図の(6))。そして、両者
が一致すれば、ECU10が正規ECUであると判断
し、不一致であれば、ECU10が偽ECUであると判
断する。
【0021】以下には、外部ツール20によるECU1
0の正偽判定に際し、ECU10及び外部ツール20内
の各マイコン11,21により実施される処理の流れを
図3及び図4のフローチャートに従い説明する。始め
に、外部ツール20の処理の流れを図3のフローチャー
トで説明する。
0の正偽判定に際し、ECU10及び外部ツール20内
の各マイコン11,21により実施される処理の流れを
図3及び図4のフローチャートに従い説明する。始め
に、外部ツール20の処理の流れを図3のフローチャー
トで説明する。
【0022】例えば修理工場等において作業者が外部ツ
ール20を操作することで図3の処理がスタートし、先
ずステップ101では、乱数発生処理を実行して乱数R
tを設定し、続くステップ102では、コマンド送信を
実施する。すなわち、乱数Rtをサム値算出指令と共に
ECU10に送信する。また、ステップ103ではタイ
マセットを行う。このステップ101〜103が通信前
処理に相当する。
ール20を操作することで図3の処理がスタートし、先
ずステップ101では、乱数発生処理を実行して乱数R
tを設定し、続くステップ102では、コマンド送信を
実施する。すなわち、乱数Rtをサム値算出指令と共に
ECU10に送信する。また、ステップ103ではタイ
マセットを行う。このステップ101〜103が通信前
処理に相当する。
【0023】その後、この外部ツール20では、コマン
ド受信に対するECU10からの受信確認を行う。すな
わち、タイムアウトしていないことを条件に(ステップ
104がNO)、ステップ105では、前記ステップ1
02のコマンド送信に対する応答をECU10から受信
したか否かを判別する。応答が無いままタイムアウトし
た場合(ステップ104がYES)、ステップ102に
戻り、再度同じ乱数を用いてコマンド送信を実施する。
そして、タイマセット、受信確認の各処理を再び実施す
る。
ド受信に対するECU10からの受信確認を行う。すな
わち、タイムアウトしていないことを条件に(ステップ
104がNO)、ステップ105では、前記ステップ1
02のコマンド送信に対する応答をECU10から受信
したか否かを判別する。応答が無いままタイムアウトし
た場合(ステップ104がYES)、ステップ102に
戻り、再度同じ乱数を用いてコマンド送信を実施する。
そして、タイマセット、受信確認の各処理を再び実施す
る。
【0024】なお、コマンド再送信の回数を予め制限し
ておき、例えばタイムアウトが3回繰り返されると、通
信異常であると判断し、その旨のコードを記憶すると共
に以降の処理を中止しても良い。また、1回でもタイム
アウトになると、その時点で通信異常と判断しても良
い。
ておき、例えばタイムアウトが3回繰り返されると、通
信異常であると判断し、その旨のコードを記憶すると共
に以降の処理を中止しても良い。また、1回でもタイム
アウトになると、その時点で通信異常と判断しても良
い。
【0025】コマンド送信に対する応答を受信すると、
ステップ106に進み、以降の受信後処理を実施する。
すなわち、ステップ106では、ECU10から受信し
た暗号化サム値Xtを復号化し、サム値Xsumの生デ
ータを抽出する。また、続くステップ107では、予め
登録されている真のサム値Xrefを取り出す。
ステップ106に進み、以降の受信後処理を実施する。
すなわち、ステップ106では、ECU10から受信し
た暗号化サム値Xtを復号化し、サム値Xsumの生デ
ータを抽出する。また、続くステップ107では、予め
登録されている真のサム値Xrefを取り出す。
【0026】その後、ステップ108では、サム値Xs
um(生データ)と真のサム値Xrefとを比較し、両
サム値が一致すると判別されれば(ステップ109がY
ES)、ECU正常である旨を判断する。
um(生データ)と真のサム値Xrefとを比較し、両
サム値が一致すると判別されれば(ステップ109がY
ES)、ECU正常である旨を判断する。
【0027】また、両サム値が不一致であれば(ステッ
プ109がNO)、ステップ110で予め定めた規定回
数だけ通信を繰り返したか否かを判別する。NOであれ
ばステップ101に戻る。これにより、別の乱数が再設
定され、上述した処理が繰り返し実施される。そして、
乱数の再設定及びそれに付随するサム値判定の処理が規
定回数(例えば3回)だけ繰り返されてもサム値不一致
のままであれば、ステップ110がYESとなり、EC
U異常である旨を判断する。
プ109がNO)、ステップ110で予め定めた規定回
数だけ通信を繰り返したか否かを判別する。NOであれ
ばステップ101に戻る。これにより、別の乱数が再設
定され、上述した処理が繰り返し実施される。そして、
乱数の再設定及びそれに付随するサム値判定の処理が規
定回数(例えば3回)だけ繰り返されてもサム値不一致
のままであれば、ステップ110がYESとなり、EC
U異常である旨を判断する。
【0028】次に、ECU10の処理の流れを図4のフ
ローチャートに従い説明する。先ずステップ201で
は、外部ツール20よりコマンドを受信したか否かを判
別し、YESであればステップ202に進み、受信デー
タから乱数Rtを抽出する。
ローチャートに従い説明する。先ずステップ201で
は、外部ツール20よりコマンドを受信したか否かを判
別し、YESであればステップ202に進み、受信デー
タから乱数Rtを抽出する。
【0029】その後、ステップ203では、算出式 Xsum=ΣData(i) により、サム値Xsumを算出する。すなわち、フラッ
シュメモリ13内の規定されたアドレス領域についてア
ドレスiのデータを全て加算し、その和をサム値Xsu
mとする。
シュメモリ13内の規定されたアドレス領域についてア
ドレスiのデータを全て加算し、その和をサム値Xsu
mとする。
【0030】その後、ステップ204では、前記受信し
た乱数Rtでサム値Xsumを暗号化して暗号化サム値
Xtを求め、続くステップ205では、暗号化サム値X
tを外部ツール20に送信する。このデータ送信によ
り、外部ツール20では、前記図3のステップ105で
データ受信が確認されることとなる。
た乱数Rtでサム値Xsumを暗号化して暗号化サム値
Xtを求め、続くステップ205では、暗号化サム値X
tを外部ツール20に送信する。このデータ送信によ
り、外部ツール20では、前記図3のステップ105で
データ受信が確認されることとなる。
【0031】なお本実施の形態では、図3のステップ1
01,102の処理が本発明の「第1のステップ」に、
図4のステップ203,204の処理が「第2のステッ
プ」に、図4のステップ205の処理が「第3のステッ
プ」に、図3のステップ106〜109の処理が「第4
のステップ」に、それぞれ該当する。
01,102の処理が本発明の「第1のステップ」に、
図4のステップ203,204の処理が「第2のステッ
プ」に、図4のステップ205の処理が「第3のステッ
プ」に、図3のステップ106〜109の処理が「第4
のステップ」に、それぞれ該当する。
【0032】以上詳述した本実施の形態によれば、以下
に示す効果が得られる。つまり、上記ECU10の検査
方法によれば、不正改造を行おうとする者に正しいサム
値(算出したサム値Xsum)が漏れ知れる可能性は低
くなる。また、仮に正規のECU10が不正改造され、
フラッシュメモリ13の正しいサム値を外部ツール20
側に返信できるような不正なプログラムが偽ECUに組
み込まれたとしても、外部ツール20では、暗号化デー
タを受信すると共にその暗号化データを復号化した後、
サム値の比較判定を行うので、不正改造されたECUが
正規なECUとしてなりすますことが極めて困難にな
る。その結果、ECU10を正しく検査し、ひいては不
正改造の防止を図ることができる。
に示す効果が得られる。つまり、上記ECU10の検査
方法によれば、不正改造を行おうとする者に正しいサム
値(算出したサム値Xsum)が漏れ知れる可能性は低
くなる。また、仮に正規のECU10が不正改造され、
フラッシュメモリ13の正しいサム値を外部ツール20
側に返信できるような不正なプログラムが偽ECUに組
み込まれたとしても、外部ツール20では、暗号化デー
タを受信すると共にその暗号化データを復号化した後、
サム値の比較判定を行うので、不正改造されたECUが
正規なECUとしてなりすますことが極めて困難にな
る。その結果、ECU10を正しく検査し、ひいては不
正改造の防止を図ることができる。
【0033】また、サム値不一致の場合、新たに乱数R
tを設定して再検査を行うので、一時的な通信異常が原
因で正しく検査されなかった場合にも、再通信により適
正な検査が実施できる。またここで、乱数Rtを再設定
するためにECU10と外部ツール20との間の送受信
データはその都度異なるので、通信線L1がモニタされ
ることを想定しても、正しいサム値が漏れ知れる可能性
は極めて低くなる。
tを設定して再検査を行うので、一時的な通信異常が原
因で正しく検査されなかった場合にも、再通信により適
正な検査が実施できる。またここで、乱数Rtを再設定
するためにECU10と外部ツール20との間の送受信
データはその都度異なるので、通信線L1がモニタされ
ることを想定しても、正しいサム値が漏れ知れる可能性
は極めて低くなる。
【0034】(第2の実施の形態)次に、本発明におけ
る第2の実施の形態を説明する。但し、本実施の形態で
は、上述した第1の実施の形態と同等であるものは説明
を簡略化し、第1の実施の形態との相違点を中心に説明
する。
る第2の実施の形態を説明する。但し、本実施の形態で
は、上述した第1の実施の形態と同等であるものは説明
を簡略化し、第1の実施の形態との相違点を中心に説明
する。
【0035】上記第1の実施の形態では不正改造が容認
される可能性は極めて低いものの、万が一、暗号化アル
ゴリズムが不正改造者に漏れ知れた場合、不正改造が可
能となる。その対策として、本実施の形態では、複数の
暗号化アルゴリズム(算出式)を用意し、そのうちどの
アルゴリズムを使用するかを外部ツール20から指示す
る方法を提案する。なお本実施の形態では、制御システ
ムとして前記図1の構成をそのまま流用する。
される可能性は極めて低いものの、万が一、暗号化アル
ゴリズムが不正改造者に漏れ知れた場合、不正改造が可
能となる。その対策として、本実施の形態では、複数の
暗号化アルゴリズム(算出式)を用意し、そのうちどの
アルゴリズムを使用するかを外部ツール20から指示す
る方法を提案する。なお本実施の形態では、制御システ
ムとして前記図1の構成をそのまま流用する。
【0036】本実施の形態におけるECU10の正偽判
定(検査)の概要を、図6を用いて説明する。なお図6
では、処理順序を表すため、(1)〜(8)の連続番号
を付している。
定(検査)の概要を、図6を用いて説明する。なお図6
では、処理順序を表すため、(1)〜(8)の連続番号
を付している。
【0037】先ず始めに、サム値の算出指令と、乱数R
tと、暗号化アルゴリズムの識別コードIDとを含む送
信データを通信線L1を介して外部ツール20からEC
U10に送信する(図の(1))。このとき、外部ツー
ル20の送信データは、例えば前記図5(a)のフレー
ム構成に対し、データとして暗号化アルゴリズムの識別
コードIDを追加した構成となる。
tと、暗号化アルゴリズムの識別コードIDとを含む送
信データを通信線L1を介して外部ツール20からEC
U10に送信する(図の(1))。このとき、外部ツー
ル20の送信データは、例えば前記図5(a)のフレー
ム構成に対し、データとして暗号化アルゴリズムの識別
コードIDを追加した構成となる。
【0038】ECU10側では、フラッシュメモリ13
内のデータのサム値Xsumを算出すると共に、外部ツ
ール20からの送信データに含まれる暗号化アルゴリズ
ムの識別コードIDに基づき、それに相応する暗号化の
算出式を取り出す(図の(2),(3))。また、この
算出式を用い、乱数Rtに応じてサム値Xsumを暗号
化する(図の(4))。つまり、算出式 Xt=f(Xsum,Rt) により、暗号化サム値Xtを算出する。ここで、図示の
如く、暗号化IDが0x01,0x02,・・・0x0
Fのように与えられる場合、それに対応する算出式はf
(*,*),g(*,*),・・・t(*,*)とな
り、これら何れかの算出式を用いてサム値Xsumが暗
号化される。その後、暗号化サム値Xtを通信線L1を
介して外部ツール20に送信する(図の(5))。
内のデータのサム値Xsumを算出すると共に、外部ツ
ール20からの送信データに含まれる暗号化アルゴリズ
ムの識別コードIDに基づき、それに相応する暗号化の
算出式を取り出す(図の(2),(3))。また、この
算出式を用い、乱数Rtに応じてサム値Xsumを暗号
化する(図の(4))。つまり、算出式 Xt=f(Xsum,Rt) により、暗号化サム値Xtを算出する。ここで、図示の
如く、暗号化IDが0x01,0x02,・・・0x0
Fのように与えられる場合、それに対応する算出式はf
(*,*),g(*,*),・・・t(*,*)とな
り、これら何れかの算出式を用いてサム値Xsumが暗
号化される。その後、暗号化サム値Xtを通信線L1を
介して外部ツール20に送信する(図の(5))。
【0039】外部ツール20では、その時の暗号化アル
ゴリズムの識別コードIDに相応する復号化の算出式を
取り出し、その算出式にて暗号化サム値Xtを復号化す
る(図の(6),(7))。つまり、算出式 Xsum=f-1(Xt,Rt) により、サム値Xsumを算出する。
ゴリズムの識別コードIDに相応する復号化の算出式を
取り出し、その算出式にて暗号化サム値Xtを復号化す
る(図の(6),(7))。つまり、算出式 Xsum=f-1(Xt,Rt) により、サム値Xsumを算出する。
【0040】その後、前記の如く算出したサム値Xsu
mと、予め登録されている真のサム値Xrefとを比較
判定する(図の(8))。そして、両者が一致すれば、
ECU10が正規ECUであると判断し、不一致であれ
ば、ECU10が偽ECUであると判断する。
mと、予め登録されている真のサム値Xrefとを比較
判定する(図の(8))。そして、両者が一致すれば、
ECU10が正規ECUであると判断し、不一致であれ
ば、ECU10が偽ECUであると判断する。
【0041】以下には、外部ツール20によるECU1
0の正偽判定に際し、ECU10及び外部ツール20内
の各マイコン11,21により実施される処理の流れを
図7及び図8のフローチャートに従い説明する。
0の正偽判定に際し、ECU10及び外部ツール20内
の各マイコン11,21により実施される処理の流れを
図7及び図8のフローチャートに従い説明する。
【0042】始めに、外部ツール20の処理の流れを図
7のフローチャートで説明する。但し、図7は前記図3
の一部のみを変更したものであり、実際には前記図3そ
のものに対し、ステップ301,302の処理を追加し
たことのみが相違する。以下、前記図3との相違点を中
心に説明する。
7のフローチャートで説明する。但し、図7は前記図3
の一部のみを変更したものであり、実際には前記図3そ
のものに対し、ステップ301,302の処理を追加し
たことのみが相違する。以下、前記図3との相違点を中
心に説明する。
【0043】図7において、乱数発生処理の後、ステッ
プ301では、多数の暗号化アルゴリズムの中から一つ
を選択する。そして、続くステップ102では、その暗
号化アルゴリズムの識別コードIDを、乱数Rt及びサ
ム値算出指令と共にECU10へ送信する。
プ301では、多数の暗号化アルゴリズムの中から一つ
を選択する。そして、続くステップ102では、その暗
号化アルゴリズムの識別コードIDを、乱数Rt及びサ
ム値算出指令と共にECU10へ送信する。
【0044】その後、ECU10からの受信確認を終え
ると、ステップ302では、暗号化アルゴリズムの識別
コードIDに対応する復号化の算出式を取り出す。そし
てそれ以降、図3で前述した通り、暗号化サム値Xtの
復号化、真のサム値Xrefとの比較判定等を行い、E
CU10の正偽判定を実施する。
ると、ステップ302では、暗号化アルゴリズムの識別
コードIDに対応する復号化の算出式を取り出す。そし
てそれ以降、図3で前述した通り、暗号化サム値Xtの
復号化、真のサム値Xrefとの比較判定等を行い、E
CU10の正偽判定を実施する。
【0045】次に、ECU10の処理の流れを図8のフ
ローチャートに従い説明する。この図8の処理は前記図
4に置き換えて実施される。図8では、外部ツール20
からのコマンド受信の旨を判別すると、ステップ401
からステップ402に進み、受信データから乱数Rtと
暗号化アルゴリズムの識別コードID(アルゴリズムN
o.)とを抽出する。
ローチャートに従い説明する。この図8の処理は前記図
4に置き換えて実施される。図8では、外部ツール20
からのコマンド受信の旨を判別すると、ステップ401
からステップ402に進み、受信データから乱数Rtと
暗号化アルゴリズムの識別コードID(アルゴリズムN
o.)とを抽出する。
【0046】その後、ステップ403では、フラッシュ
メモリ13内の規定されたアドレス領域についてアドレ
スiのデータを全て加算し、その和によりサム値Xsu
mを算出する。
メモリ13内の規定されたアドレス領域についてアドレ
スiのデータを全て加算し、その和によりサム値Xsu
mを算出する。
【0047】その後、ステップ404では、指定の暗号
化アルゴリズムを取り出し、続くステップ405では、
サム値Xsumを暗号化して暗号化サム値Xtを求め
る。更にステップ406では、暗号化サム値Xtを外部
ツール20に送信する。このデータ送信により、外部ツ
ール20では、前記図7のステップ105でデータ受信
が確認されることとなる。
化アルゴリズムを取り出し、続くステップ405では、
サム値Xsumを暗号化して暗号化サム値Xtを求め
る。更にステップ406では、暗号化サム値Xtを外部
ツール20に送信する。このデータ送信により、外部ツ
ール20では、前記図7のステップ105でデータ受信
が確認されることとなる。
【0048】なお本実施の形態では、上記第1の実施の
形態との違いとして、図7のステップ301の処理が
「第1のステップ」に含まれ、同ステップ302の処理
が「第4のステップ」に含まれる。また、図8のステッ
プ402〜405の処理が「第2のステップ」に、同ス
テップ406の処理が「第3のステップ」に、それぞれ
該当する。
形態との違いとして、図7のステップ301の処理が
「第1のステップ」に含まれ、同ステップ302の処理
が「第4のステップ」に含まれる。また、図8のステッ
プ402〜405の処理が「第2のステップ」に、同ス
テップ406の処理が「第3のステップ」に、それぞれ
該当する。
【0049】以上第2の実施の形態によれば、複数の暗
号化アルゴリズムを択一的に使うことにより、不正改造
を行おうとする者に暗号化アルゴリズムが知られたとし
ても、実際に使われた暗号化アルゴリズムに対応させて
サム値を解明するのは非常に困難となる。それ故、EC
U10の不正改造を、より一層困難なものとすることが
できる。またこの場合、各々の暗号化アルゴリズムが簡
単なものであっても、不正改造者がそのアルゴリズムを
認識し、不正改造者両を車検に通す等、不正行為を行お
うとすることが困難になる。
号化アルゴリズムを択一的に使うことにより、不正改造
を行おうとする者に暗号化アルゴリズムが知られたとし
ても、実際に使われた暗号化アルゴリズムに対応させて
サム値を解明するのは非常に困難となる。それ故、EC
U10の不正改造を、より一層困難なものとすることが
できる。またこの場合、各々の暗号化アルゴリズムが簡
単なものであっても、不正改造者がそのアルゴリズムを
認識し、不正改造者両を車検に通す等、不正行為を行お
うとすることが困難になる。
【0050】(第3の実施の形態)複雑な制御が要求さ
れるECUには、高い演算負荷を分散させるために複数
のマイコン(CPU)を備えて構成されるものがある。
例えば2個のマイコンを持つ2マイコンシステムのEC
Uにおいては、前記のフラッシュメモリを搭載し、エン
ジンの主要制御を受け持つメイン側のマイコンと、制御
プログラムを市場で書き換え不可能なROMを搭載し、
主要制御以外の制御を受け持つサブ側のマイコンとで構
成することがある。
れるECUには、高い演算負荷を分散させるために複数
のマイコン(CPU)を備えて構成されるものがある。
例えば2個のマイコンを持つ2マイコンシステムのEC
Uにおいては、前記のフラッシュメモリを搭載し、エン
ジンの主要制御を受け持つメイン側のマイコンと、制御
プログラムを市場で書き換え不可能なROMを搭載し、
主要制御以外の制御を受け持つサブ側のマイコンとで構
成することがある。
【0051】図9は、本実施の形態における制御システ
ムの概要を示す構成図である。図9の構成では、前記図
1の構成との違いとして、ECU30は、第1マイコン
(第1マイクロコンピュータ)31と第2マイコン(第
2マイクロコンピュータ)32とを備える。第1マイコ
ン31は、燃料噴射制御や点火時期制御等、エンジンの
主要な制御を受け持つマイコンであり、CPU31aと
フラッシュメモリ31bとを実装する。また、第2マイ
コン32は、トランスミッション制御等を受け持つマイ
コンであり、CPU32aと、プログラムを市場で書き
換え不可能なROM32bとを実装する。
ムの概要を示す構成図である。図9の構成では、前記図
1の構成との違いとして、ECU30は、第1マイコン
(第1マイクロコンピュータ)31と第2マイコン(第
2マイクロコンピュータ)32とを備える。第1マイコ
ン31は、燃料噴射制御や点火時期制御等、エンジンの
主要な制御を受け持つマイコンであり、CPU31aと
フラッシュメモリ31bとを実装する。また、第2マイ
コン32は、トランスミッション制御等を受け持つマイ
コンであり、CPU32aと、プログラムを市場で書き
換え不可能なROM32bとを実装する。
【0052】こうした2マイコンシステムのECU30
において、第2マイコン32のROM32b内には、第
1マイコン31の正偽判定を行うために用いる暗号化ア
ルゴリズムが格納されている。
において、第2マイコン32のROM32b内には、第
1マイコン31の正偽判定を行うために用いる暗号化ア
ルゴリズムが格納されている。
【0053】図10は、第1マイコン31の処理と第2
マイコン32の処理とを個々に示すフローチャートであ
る。先ずは、図10(a)に従い、第1マイコン31の
処理の流れを説明する。
マイコン32の処理とを個々に示すフローチャートであ
る。先ずは、図10(a)に従い、第1マイコン31の
処理の流れを説明する。
【0054】図10(a)では、外部ツール20からの
コマンド受信の旨を判別すると、ステップ501からス
テップ502に進み、受信データから乱数Rtを抽出す
る。その後、ステップ503では、フラッシュメモリ3
1b内の規定されたアドレス領域についてアドレスiの
データを全て加算し、その和によりサム値Xsumを算
出する。その後、ステップ504では、前記受信した乱
数Rtと、前記算出したサム値Xsumとを第2マイコ
ン32に送信する。
コマンド受信の旨を判別すると、ステップ501からス
テップ502に進み、受信データから乱数Rtを抽出す
る。その後、ステップ503では、フラッシュメモリ3
1b内の規定されたアドレス領域についてアドレスiの
データを全て加算し、その和によりサム値Xsumを算
出する。その後、ステップ504では、前記受信した乱
数Rtと、前記算出したサム値Xsumとを第2マイコ
ン32に送信する。
【0055】続くステップ505では、第2マイコン3
2へのデータ送信に応答して当該第2マイコン32から
データ受信をしたか否かを判別する。この受信データに
は、第2マイコン32で暗号化された暗号化サム値Xt
が含まれており、データ受信を確認した後、ステップ5
06では、暗号化サム値Xtを外部ツール20に送信す
る。このデータ送信により、外部ツール20では、前記
図3のステップ105でデータ受信が確認されることと
なる。
2へのデータ送信に応答して当該第2マイコン32から
データ受信をしたか否かを判別する。この受信データに
は、第2マイコン32で暗号化された暗号化サム値Xt
が含まれており、データ受信を確認した後、ステップ5
06では、暗号化サム値Xtを外部ツール20に送信す
る。このデータ送信により、外部ツール20では、前記
図3のステップ105でデータ受信が確認されることと
なる。
【0056】次に、第2マイコン32の処理の流れを図
10(b)のフローチャートに従い説明する。図10
(b)では、前記図10(a)のステップ504におけ
るデータ送信を伴い、第1マイコン31からのデータ受
信の旨を判別すると、ステップ601からステップ60
2に進み、受信データから乱数Rtとサム値Xsumと
を抽出する。その後、ステップ603では、ROM32
b内に用意されている所定の暗号化アルゴリズムを用
い、サム値Xsumを暗号化して暗号化サム値Xtを求
める。続くステップ604では、暗号化サム値Xtを第
1マイコン31に送信する。このデータ送信により、第
1マイコン31では、前記図10(a)のステップ50
5でデータ受信が確認されることとなる。そして更に、
このデータが外部ツール20に送信される。
10(b)のフローチャートに従い説明する。図10
(b)では、前記図10(a)のステップ504におけ
るデータ送信を伴い、第1マイコン31からのデータ受
信の旨を判別すると、ステップ601からステップ60
2に進み、受信データから乱数Rtとサム値Xsumと
を抽出する。その後、ステップ603では、ROM32
b内に用意されている所定の暗号化アルゴリズムを用
い、サム値Xsumを暗号化して暗号化サム値Xtを求
める。続くステップ604では、暗号化サム値Xtを第
1マイコン31に送信する。このデータ送信により、第
1マイコン31では、前記図10(a)のステップ50
5でデータ受信が確認されることとなる。そして更に、
このデータが外部ツール20に送信される。
【0057】なお本実施の形態では、上記第1の実施の
形態との違いとして、図10(a)のステップ503,
504及び図10(b)のステップ603の処理が「第
2のステップ」に、図10(a)のステップ506の処
理が「第3のステップ」に、それぞれ該当する。
形態との違いとして、図10(a)のステップ503,
504及び図10(b)のステップ603の処理が「第
2のステップ」に、図10(a)のステップ506の処
理が「第3のステップ」に、それぞれ該当する。
【0058】以上第3の実施の形態によれば、第2マイ
コン32のROM32bに暗号化アルゴリズムを記憶さ
せておくので、暗号化アルゴリズムを不正に書き換える
ことが不可能となり、不正改造防止が更に強化される。
コン32のROM32bに暗号化アルゴリズムを記憶さ
せておくので、暗号化アルゴリズムを不正に書き換える
ことが不可能となり、不正改造防止が更に強化される。
【0059】上記第3の実施の形態では、第2マイコン
32のROM32bに所定の暗号化アルゴリズムを記憶
させる構成であったが、この構成を変更しても良い。例
えば、既述した第2の実施の形態のように、第2マイコ
ン32のROM32bに複数の暗号化アルゴリズムを記
憶させておき、外部ツール20から指定される識別コー
ドに従い、複数の暗号化アルゴリズムの中から一つを選
択する構成としても良い。
32のROM32bに所定の暗号化アルゴリズムを記憶
させる構成であったが、この構成を変更しても良い。例
えば、既述した第2の実施の形態のように、第2マイコ
ン32のROM32bに複数の暗号化アルゴリズムを記
憶させておき、外部ツール20から指定される識別コー
ドに従い、複数の暗号化アルゴリズムの中から一つを選
択する構成としても良い。
【0060】また、同じく第3の実施の形態では、外部
ツール20から送信される乱数Rtを一旦第1マイコン
31で受信し、その後、サム値と共に第2マイコン32
へ転送したが、この乱数Rtを外部ツール20から第2
マイコン32へ直接送信する構成としても良い。
ツール20から送信される乱数Rtを一旦第1マイコン
31で受信し、その後、サム値と共に第2マイコン32
へ転送したが、この乱数Rtを外部ツール20から第2
マイコン32へ直接送信する構成としても良い。
【図1】発明の実施の形態における制御システムの概略
構成を示すブロック図。
構成を示すブロック図。
【図2】ECUの正偽判定の様子を示す説明図。
【図3】外部ツールの処理の流れを示すフローチャー
ト。
ト。
【図4】ECUの処理の流れを示すフローチャート。
【図5】送信データ及び受信データのフレーム構成を示
す図。
す図。
【図6】第2の実施の形態においてECUの正偽判定の
様子を示す説明図。
様子を示す説明図。
【図7】第2の実施の形態において外部ツールの処理の
流れを示すフローチャート。
流れを示すフローチャート。
【図8】第2の実施の形態においてECUの処理の流れ
を示すフローチャート。
を示すフローチャート。
【図9】第3の実施の形態において制御システムの概略
構成を示すブロック図。
構成を示すブロック図。
【図10】第3の実施の形態において第1マイコン及び
第2マイコンの処理の流れを示すフローチャート。
第2マイコンの処理の流れを示すフローチャート。
10…ECU、11…マイコン、12…CPU、13…
フラッシュメモリ、20…外部ツール、30…ECU、
31…第1マイコン、31b…フラッシュメモリ、32
…第2マイコン、32b…ROM。
フラッシュメモリ、20…外部ツール、30…ECU、
31…第1マイコン、31b…フラッシュメモリ、32
…第2マイコン、32b…ROM。
フロントページの続き (72)発明者 青木 千鶴 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内 Fターム(参考) 5B048 AA14 CC02 DD06
Claims (6)
- 【請求項1】車載制御ユニット内のメモリについてデー
タのサム値を求め、該サム値により本制御ユニットを検
査する車載制御ユニットの検査方法において、 乱数を発生させ、その乱数をサム値の算出指令と共に外
部ツールから制御ユニットへ送信する第1のステップ
と、 前記メモリのサム値を算出すると共に、該サム値を前記
乱数に応じて暗号化する第2のステップと、 前記暗号化したデータを外部ツールに送信する第3のス
テップと、 外部ツールで受信したデータを復号化すると共に、その
データ中のサム値を予め用意された真のサム値と比較
し、その比較判定の結果から車載制御ユニットを検査す
る第4のステップと、からなることを特徴とする車載制
御ユニットの検査方法。 - 【請求項2】車載制御ユニット内のメモリは、電気的に
書き換え可能な不揮発性メモリである請求項1に記載の
車載制御ユニットの検査方法。 - 【請求項3】前記第4のステップにおいてサム値が不一
致となった場合、前記第1のステップに戻って新たに乱
数を設定し、それに続く第2〜第4のステップを再度実
施する請求項1又は2に記載の車載制御ユニットの検査
方法。 - 【請求項4】複数の暗号化アルゴリズムを車載制御ユニ
ットに予め用意しておき、 前記第1のステップでは、複数の暗号化アルゴリズムの
中から一つを指定してそれを表す識別データを、乱数と
サム値の算出指令と共に外部ツールから制御ユニットへ
送信し、 前記第2のステップでは、前記識別データによる指定通
りの暗号化アルゴリズムを使って暗号化を行い、 その後、前記第4のステップでは、前記指定した暗号化
アルゴリズムに対応する復号化の算出式を取り出して受
信データを復号化し、サム値を抽出する請求項1又は2
に記載の車載制御ユニットの検査方法。 - 【請求項5】車載制御ユニットは、電気的に書き換え可
能な不揮発性メモリを実装した第1マイクロコンピュー
タと、書き換え不可能なROMを実装した第2マイクロ
コンピュータとを備え、第2マイクロコンピュータのR
OMに、前記不揮発性メモリのサム値を暗号化するため
の暗号化アルゴリズムを記憶させておく請求項1〜4の
何れかに記載の車載制御ユニットの検査方法。 - 【請求項6】請求項5に記載の車載制御ユニットの検査
方法において、 前記第2のステップは、前記不揮発性メモリのサム値を
第1マイクロコンピュータから第2マイクロコンピュー
タへ送信するステップと、第2マイクロコンピュータに
て前記ROM内の暗号化アルゴリズムでサム値を暗号化
した後、その暗号化データを第1マイクロコンピュータ
に返信するステップと、を含むものである車載制御ユニ
ットの検査方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000012803A JP2001202266A (ja) | 2000-01-21 | 2000-01-21 | 車載制御ユニットの検査方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000012803A JP2001202266A (ja) | 2000-01-21 | 2000-01-21 | 車載制御ユニットの検査方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001202266A true JP2001202266A (ja) | 2001-07-27 |
Family
ID=18540477
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000012803A Pending JP2001202266A (ja) | 2000-01-21 | 2000-01-21 | 車載制御ユニットの検査方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001202266A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004254286A (ja) * | 2002-10-31 | 2004-09-09 | Matsushita Electric Ind Co Ltd | 通信装置、通信システムおよびアルゴリズム選択方法 |
US7251551B2 (en) | 2003-09-24 | 2007-07-31 | Mitsubishi Denki Kabushiki Kaisha | On-vehicle electronic control device |
JP2009114932A (ja) * | 2007-11-06 | 2009-05-28 | Keihin Corp | 通信異常検知装置 |
JP4997347B1 (ja) * | 2011-03-14 | 2012-08-08 | 信義 武藤 | 電気自動車 |
JP2015517685A (ja) * | 2012-05-29 | 2015-06-22 | ▲ホア▼▲ウェイ▼技術有限公司 | メディアデータ処理を実装するための方法、装置およびシステム |
WO2018078928A1 (ja) * | 2016-10-27 | 2018-05-03 | 株式会社デンソー | 不正防止装置及び不正防止ユニット |
WO2023109889A1 (zh) * | 2021-12-15 | 2023-06-22 | 潍柴动力股份有限公司 | 发动机ecu刷写方法、刷写诊断方法及设备 |
-
2000
- 2000-01-21 JP JP2000012803A patent/JP2001202266A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004254286A (ja) * | 2002-10-31 | 2004-09-09 | Matsushita Electric Ind Co Ltd | 通信装置、通信システムおよびアルゴリズム選択方法 |
US7251551B2 (en) | 2003-09-24 | 2007-07-31 | Mitsubishi Denki Kabushiki Kaisha | On-vehicle electronic control device |
JP2009114932A (ja) * | 2007-11-06 | 2009-05-28 | Keihin Corp | 通信異常検知装置 |
JP4997347B1 (ja) * | 2011-03-14 | 2012-08-08 | 信義 武藤 | 電気自動車 |
WO2012124045A1 (ja) * | 2011-03-14 | 2012-09-20 | 株式会社ユニバンス | 電気自動車 |
JP2015517685A (ja) * | 2012-05-29 | 2015-06-22 | ▲ホア▼▲ウェイ▼技術有限公司 | メディアデータ処理を実装するための方法、装置およびシステム |
WO2018078928A1 (ja) * | 2016-10-27 | 2018-05-03 | 株式会社デンソー | 不正防止装置及び不正防止ユニット |
JP2018069893A (ja) * | 2016-10-27 | 2018-05-10 | 株式会社デンソー | 不正防止装置及び不正防止ユニット |
TWI642569B (zh) * | 2016-10-27 | 2018-12-01 | 電裝股份有限公司 | Improper prevention device and improper prevention unit |
WO2023109889A1 (zh) * | 2021-12-15 | 2023-06-22 | 潍柴动力股份有限公司 | 发动机ecu刷写方法、刷写诊断方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111131313B (zh) | 智能网联汽车更换ecu的安全保障方法及系统 | |
US10491392B2 (en) | End-to-end vehicle secure ECU unlock in a semi-offline environment | |
JP6505318B2 (ja) | 車両の電子制御ユニットへの不正アクセスイベントの通知 | |
CN111142500B (zh) | 车辆诊断数据的权限设置方法、装置及车载网关控制器 | |
US20110083161A1 (en) | Vehicle, maintenance device, maintenance service system, and maintenance service method | |
CN105827586A (zh) | 通信设备、lsi、程序和通信系统 | |
JP5772692B2 (ja) | 車載制御装置の認証システム及び車載制御装置の認証方法 | |
JP6712538B2 (ja) | 改竄検知システム | |
JP2022109024A (ja) | 車両制御システム | |
WO2020137852A1 (ja) | 情報処理装置 | |
US12120506B2 (en) | Devices, methods, and computer program for releasing transportation vehicle components, and vehicle-to-vehicle communication module | |
US20230401317A1 (en) | Security method and security device | |
US9893886B2 (en) | Communication device | |
US20230205887A1 (en) | Secure automotive system | |
JP4253979B2 (ja) | 車載制御ユニットの検査方法 | |
CN115174065B (zh) | 一种保护客车eps标定报文信息安全的系统 | |
CN109495269B (zh) | 车载端对接入设备的可信验证方法及其系统、车载端 | |
JP2001202266A (ja) | 車載制御ユニットの検査方法 | |
JP7067508B2 (ja) | ネットワークシステム | |
JP2011170530A (ja) | 認証システムの暗号演算式設定装置 | |
CN116248280B (zh) | 免密钥发行的安全模组防盗用方法、安全模组及装置 | |
JP2025514707A (ja) | セキュリティポリシの違反に対する安全な対応方法 | |
CN115017529A (zh) | 一种汽车诊断软件的加密方法 | |
EP3598692B1 (en) | Control device | |
CN113868606B (zh) | 一种应用软件授权方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060316 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080401 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080530 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080924 |