(57)【要約】【課題】簡素な構成にて、よりセキュリティレベルの高い通信方法を提供すること。【解決手段】ＥＣＵは、テスタから乱数要求を受信すると、乱数αを生成するとともに、その応答時間Δｔ１をランダムに設定する（ステップ１０２）。一方、テスタは、その乱数αの応答時間Δｔ２を測定し（ステップ１０１〜ステップ１０４）、この測定された応答時間Δｔ２を、上記応答により共有された乱数αに基づき演算された要求側鍵情報Ｓ２とともにＥＣＵに送信する。そして、ＥＣＵは、認証側鍵情報Ｓ１と要求側鍵情報Ｓ２とが一致し（ステップ１０８：ＹＥＳ）、且つ応答時間Δｔ２と応答時間Δｔ１との差が所定の閾値β以下である場合（|Δｔ１−Δｔ２|≦β、ステップ１０９：ＹＥＳ）には、テスタを「正規のテスタ」であると判定する（ステップ１１０）。【選択図】図２
2007153021.tif 000002
【特許請求の範囲】
【請求項１】
車内ネットワークを介して接続された電子制御装置とテスタとの通信方法であって、
前記電子制御装置は、前記テスタの乱数要求に対する応答時間をランダムに設定するとともにその応答時間を記憶し、該応答により共有された乱数に基づき生成した認証側鍵情報と前記テスタ側において生成されたテスタ側鍵情報とを照合するとともに、前記記憶された応答時間と前記テスタ側において計測された応答時間とを照合することにより、前記テスタが正規のテスタであるか否かを判定すること、を特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、乱数要求に対する応答により認証側と要求側との間で共有された乱数に基づく鍵情報を照合することにより正規の通信要求であるか否かを判定する通信方法に関するものである。
【背景技術】
【０００２】
従来、車両においては、多岐にわたる電子制御化が進められており、その主体たる電子制御装置（ＥＣＵ）もまた増加の一途を辿っている。そのため、近年では、車内ネットワーク（LAN:Local Area Network或いはCAN:Control Area Network等）を用いて複数の電子制御装置を共通の制御線上に接続することにより、その配線の複雑化を回避するとともに、これら複数のＥＣＵによる統合的な制御を可能としたものが増えている（例えば、非特許文献１参照）。
【０００３】
ところで、こうした車内ネットワークには、専用のテスタを用いた通信により、迅速なる故障診断、或いはソフトウェア仕様更新のためのパラメータの書き込み及びリプログラミング等を容易に行うことができるという特徴がある。しかしながら、車両のＥＣＵにおけるソフトウェアの変更は、車両の安全性及び信頼性に直接的に関わるものであり、過誤等による誤った（或いは不正な）変更は当然に容認されるべきものではない。そのため、車内ネットワークに接続されたＥＣＵとテスタとの間の通信では、テスタからの乱数要求に対してＥＣＵが応答することにより、テスタ側とＥＣＵ側とで一の乱数を共有し、ＥＣＵは、この乱数に基づき該ＥＣＵ側及びテスタ側において個別に生成された二つの鍵情報を照合する。そして、その照合により該テスタが正規のテスタであると判定した場合には、その後の通信を許可するようになっている。
【非特許文献１】「新車内通信システムの開発」，三菱自動車テクニカルレビュー，２００４，Ｎｏ．１６
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、こうした通信プロトコルは、基本的に、その車内ネットワークシステムに応じた規格に従ったものである（例えば「KWP2000 on CAN」等）。従って、上記共有した乱数から鍵情報を生成する演算方法を取得し、その規格に順ずる通信プロトコルを有するものさえ用いれば、当該ＥＣＵに対応した正規のテスタではない汎用ツール等であっても「正規のテスタ」と認識させることが可能である。このため、過誤や不正アクセスによる誤ったソフトウェアの変更がなされる可能性は否定できず、この点において、なお改善の余地を残すものとなっていた。
【０００５】
本発明は、上記問題点を解決するためになされたものであって、その目的は、簡素な構成にて、よりセキュリティレベルの高い通信方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記問題点を解決するために、請求項１に記載の発明は、車内ネットワークを介して接続された電子制御装置とテスタとの通信方法であって、前記電子制御装置は、前記テスタの乱数要求に対する応答時間をランダムに設定するとともにその応答時間を記憶し、該応答により共有された乱数に基づき生成した認証側鍵情報と前記テスタ側において生成されたテスタ側鍵情報とを照合するとともに、前記記憶された応答時間と前記テスタ側において計測された応答時間とを照合することにより、前記テスタが正規のテスタであるか否かを判定すること、を要旨とする。
【０００７】
上記構成によれば、時間的要素を加えることで、過誤或いは不正なアクセスを効果的に防止して、誤ったソフトウェアの変更による不具合の発生を防ぐことができる。また、一般的な組み込みＯＳ及び汎用の通信ドライバが実装されている場合、乱数要求・送信時にコールされる関数があることから、そのコールタイミングにより応答時間を計測することが可能である。従って、僅かなソフトウェアの変更で実現可能であり、簡素な構成にて、よりセキュリティレベルの高い通信システムを構築することができる。
【発明の効果】
【０００８】
本発明によれば、簡素な構成にて、よりセキュリティレベルの高い通信方法を提供することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明を具体化した一実施形態を図面に従って説明する。
図１に示すように、本実施形態の車両１は、各種のアクチュエータ２（２ａ〜２ｃ）と、これらの作動をそれぞれ制御する複数の電子制御装置（ＥＣＵ）３（３ａ〜３ｃ）とを備えており、これら各アクチュエータ２及びＥＣＵ３は、共通の車内ネットワーク（CAN:Control Area Network）４を介して接続されている。また、車内ネットワーク４には、コネクタ５が設けられており、該コネクタ５には、同車内ネットワーク４の通信プロトコルを用いて対応するＥＣＵ３と通信可能なテスタ６が接続可能となっている。そして、このテスタ６により、各アクチュエータ２及びＥＣＵ３の故障診断、並びにＥＣＵ３についてのパラメータの書き込み及びリプログラミング等を行うことができるようになっている。
【００１０】
（通信開始時の認証方法）
次に、各ＥＣＵとテスタとの通信開始時の認証方法について説明する。
例えば、テスタ６とＥＣＵ３（３ａ）との通信開始時、本実施形態では、図２のフローチャートに示すように、先ず、要求側であるテスタ６が、ＥＣＵ３（３ａ）に対して乱数要求（Ｓｅｅｄ要求）を行うとともに、その応答時間Δｔ２の計測を開始する（ステップ１０１）。
【００１１】
次に、認証側となるＥＣＵ３（３ａ）は、その乱数要求に応じて乱数αを生成するとともに、その応答時間Δｔ１をランダムに設定し（ステップ１０２）、該応答時間Δｔ１の経過を待ってテスタ６に上記乱数αを送信する（ステップ１０３）。そして、テスタ６は、この乱数αの受信をもって上記計測中の応答時間Δｔ２を確定する（ステップ１０４）。尚、上記応答時間Δｔ１は、タイムオーバーが発生しない範囲に設定されることはいうまでもない。
【００１２】
次に、上記ステップ１０１〜ステップ１０４における乱数αの要求・応答により、テスタ６とＥＣＵ３（３ａ）とで一の乱数αが共有されると、テスタ６及びＥＣＵ３（３ａ）は、それぞれ、この乱数αに基づく認証側鍵情報Ｓ１及び要求側鍵情報Ｓ２を演算する（ステップ１０５，１０６）。尚、このステップ１０５，１０６における認証側鍵情報Ｓ１及び要求側鍵情報Ｓ２の演算は、ＥＣＵ３（３ａ）側及びテスタ６側において、それぞれ個別に行われるものであるが、その演算内容は同一である。従って、テスタ６が「正規のテスタ」であるならば、これら認証側鍵情報Ｓ１及び要求側鍵情報Ｓ２は互いに一致することになる。そして、本実施形態では、テスタ６は、この上記ステップ１０６において演算された要求側鍵情報Ｓ２を、上記計測した応答時間Δｔ２とともに、ＥＣＵ３（３ａ）に送信する（ステップ１０７）。
【００１３】
次に、ＥＣＵ３（３ａ）は、認証側鍵情報Ｓ１と要求側鍵情報Ｓ２とを照合、即ち互いに一致するか否かを判定し（ステップ１０８）、一致する場合（Ｓ１＝Ｓ２、ステップ１０８：ＹＥＳ）には、続いて、テスタ６側において計測された応答時間Δｔ２と、自らが設定した応答時間Δｔ１とを照合する（ステップ１０９）。尚、本実施形態では、このステップ１０９における「照合」は、計測された応答時間Δｔ２と応答時間Δｔ１との差が所定の閾値β以内であるか否かにより行われる。そして、ＥＣＵ３（３ａ）は、その差が所定の閾値β以内であると判定した場合（|Δｔ１−Δｔ２|≦β、ステップ１０９：ＹＥＳ）には、テスタ６が「正規のテスタ」であると認証し、以降の通信を許可する（ステップ１１０）。
【００１４】
一方、上記ステップ１０８において、認証側鍵情報Ｓ１と要求側鍵情報Ｓ２とが互いに一致しない場合（ステップ１０８：ＮＯ）、又は上記ステップ１０９において、応答時間Δｔ２と応答時間Δｔ１との差が所定の閾値βを超える場合（|Δｔ１−Δｔ２|＞β、ステップ１０９：ＮＯ）には、ＥＣＵ３（３ａ）は、テスタ６が「正規のテスタ」ではないと判定し、以降の通信を拒否する（ステップ１１１）。そして、ＥＣＵ３（３ａ）は、上記ステップ１１０又はステップ１１１の判定結果をテスタ６へと送信する（ステップ１１２）。
【００１５】
以上、本実施形態によれば、時間的要素を加えることで、過誤或いは不正なアクセスを効果的に防止して、誤ったソフトウェアの変更による不具合の発生を防ぐことができる。また、一般的な組み込みＯＳ及び汎用の通信ドライバが実装されている場合、乱数要求・送信時にコールされる関数があることから、そのコールタイミングにより応答時間Δｔ２を計測することが可能である。従って、僅かなソフトウェアの変更で実現可能であり、簡素な構成にて、よりセキュリティレベルの高い通信システムを構築することができる。
【００１６】
なお、本実施形態は以下のように変更してもよい。
・本実施形態では、本発明を車内ネットワーク４にＣＡＮを用いた構成に具体化したが、車内ＬＡＮを用いた構成に具体化してもよい。そして、更らには、車内ネットワークに限らず、一般的なネットワーク通信に適用してもよい。
【００１７】
次に、以上の実施形態から把握することのできる請求項以外の技術的思想を記載する。
（付記１）乱数要求に対する応答時間をランダムに設定するとともにその応答時間を記憶し、該応答により共有された乱数に基づき生成した認証側鍵情報と要求側において生成された要求側鍵情報とを照合するとともに、前記記憶された応答時間と前記要求側において計測された応答時間とを照合することにより、正規の通信要求であるか否かを判定する通信方法。
【図面の簡単な説明】
【００１８】
【図１】車両の通信システムを示す概略構成図。
【図２】通信開始時の認証手順を示すフローチャート。
【符号の説明】
【００１９】
１…車両、２（２ａ〜２ｃ）…アクチュエータ、３（３ａ〜３ｃ）…電子制御装置（ＥＣＵ）、４…車内ネットワーク、５…コネクタ、６…テスタ、α…乱数、Δｔ１，Δｔ２…応答時間、Ｓ１…認証側鍵情報、Ｓ２…要求側鍵情報、β…閾値。
【図１】
2007153021.tif 000003
【図２】
2007153021.tif 000004