(57)【要約】  【課題】車両盗難に対するセキュリティ性を向上させる。  【解決手段】イモビライザ１２は、ＥＣＵ１３から受信する乱数を入力値として所定の関数を繰り返し演算し、該演算結果を応答信号としてＥＣＵ１３に返信する一方、ＥＣＵ１３では応答信号に基づいて所定の認証作業を行いエンジン１４の始動を許可するものであって、エンジン動作中にＥＣＵ１３からイモビライザ１２に変換回数ｍを予め送信しておくと共に該送信後に変換回数ｍをＥＣＵ１３から削除する処理を行い、次いで、エンジン停止中に、ＥＣＵ１３はイグニッションキー１１の認証信号をイモビライザ１２から受信すると、乱数Ｐ，Ｒを要求信号としてイモビライザ１２に送信する一方、イモビライザ１２では、要求信号に含まれる乱数Ｐ，Ｒを入力値として関数を変換回数ｍだけ繰り返し演算し、その演算結果を応答信号としてＥＣＵ１３に送信する。  【選択図】図２
2006142981.tif 000002
【特許請求の範囲】
【請求項１】
車両の走行駆動手段を制御するＥＣＵへ接続されるイモビライザによりイグニッションキーの認証を行うと共に、該イモビライザと前記ＥＣＵとの間で認証作業を行うことで前記走行駆動手段の始動を制御して車両盗難を防止するシステムにおいて、
前記イモビライザは、前記ＥＣＵから受信する乱数を入力値として所定の関数を繰り返し演算し、前記繰り返し演算の結果を応答信号として前記ＥＣＵに返信する一方、前記ＥＣＵでは該応答信号に基づいて認証作業を行い、認証が確認された場合に前記走行駆動手段の始動を許可する構成とし、前記関数の演算を繰り返す変換回数は毎回の認証作業ごとに変更していることを特徴とする車両盗難防止システム。
【請求項２】
前記走行駆動手段の動作中に、前記ＥＣＵから前記イモビライザに前記変換回数を予め送信しておくと共に、該送信後に送信済みの変換回数を前記ＥＣＵから削除する処理を行い、
前記走行駆動手段の停止中に、前記イグニッションキーを正しく認証した認証信号が前記イモビライザから前記ＥＣＵに送信されると、前記ＥＣＵは前記乱数を要求信号として前記イモビライザに送信する一方、前記イモビライザでは、前記要求信号に含まれる乱数を入力値として前記関数を前記変換回数だけ繰り返し演算し、その演算結果を応答信号として前記ＥＣＵに送信する構成としている請求項１に記載の車両盗難防止システム。
【請求項３】
前記走行駆動手段の動作中に前記ＥＣＵから前記イモビライザに送信される前記変換回数をｍ、ＥＣＵで関数演算される変換回数をｎ、前記走行駆動手段の停止中に前記ＥＣＵから前記イモビライザに送信される乱数をＰ，Ｒ、一方向性ハッシュ関数をＨ（ｘ，ｙ）、ｘ，ｙを変数、ｍ，ｎを自然数（ｍ＜ｎ）とすると、
前記ＥＣＵでは、前記走行駆動手段の動作中に、乱数Ｐ，Ｒを初期入力値として、前記一方向性ハッシュ関数Ｈの繰り返し演算である
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｎ＝Ｈ（Ｈｎ−１，Ｒ）
を演算して、Ｈｎを第１関数値として保存しておくと共にＨ１〜Ｈｎ−１を削除し、次いで、
前記イモビライザでは、前記走行駆動手段の停止中に、前記要求信号として受信した乱数Ｐ，Ｒを初期入力値として、前記変換回数ｍを用いて前記一方向性ハッシュ関数Ｈの繰り返し演算である
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｍ＝Ｈ（Ｈｍ−１，Ｒ）
を演算し、第２関数値Ｈｍを前記応答信号として前記ＥＣＵに返信し、
前記ＥＣＵでは、認証作業として、前記受信した第２関数値Ｈｍと前記乱数Ｒとを入力値として前記一方向性ハッシュ関数Ｈを（ｎ−ｍ）回だけ演算することによりＨｎの値を演算し、この演算結果を前記第１関数値Ｈｎと照合して一致した場合に前記走行駆動手段の始動許可を行う構成としている請求項２に記載の車両盗難防止システム。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載のシステムに用いられるもので、イグニッションキーを認証するイモビライザに接続されると共に車両に搭載された走行駆動手段を制御するＥＣＵであって、
乱数を生成する乱数発生部と、前記関数の変換回数を生成する変換回数発生部と、前記イモビライザからイグニッションキーの認証信号を受信すると前記乱数発生部で生成された乱数を要求信号として前記イモビライザに送信する要求信号送信部と、前記イモビライザからの応答信号に基づいて認証作業を行い該認証が確認された場合に前記走行駆動手段の始動を許可する照合部とを備えていることを特徴とするＥＣＵ。
【請求項５】
前記走行駆動手段の動作中に前記変換回数を前記イモビライザに送信する変換回数送信部と、該送信後に送信済みの変換回数を前記ＥＣＵから削除する削除指令部と、乱数を保存する乱数保存部とを備え、
前記要求信号送信部は、前記イモビライザからイグニッションキーの認証信号を受信すると前記乱数保存部に保存された乱数を要求信号として前記イモビライザに送信する構成としている請求項４に記載のＥＣＵ。
【請求項６】
請求項１乃至請求項３のいずれか１項に記載のシステムに用いられるもので、車両の走行駆動手段を制御するＥＣＵに接続されると共にイグニッションキーの認証を行うイモビライザであって、
前記イグニッションキーの暗証コードが正しく認証された場合に認証信号を前記ＥＣＵに送信する暗証コード認証部と、前記ＥＣＵから受信する乱数および前記変換回数に基づいて所定の関数を繰り返し演算しその演算結果を応答信号として前記ＥＣＵに送信する応答信号送信部とを備えていることを特徴とするイモビライザ。
【請求項７】
前記走行駆動手段の動作中に前記ＥＣＵから受信する前記変換回数を予め保存する変換回数保存部を備え、
前記応答信号送信部は、前記変換回数保存部に保存されている変換回数と前記ＥＣＵからの要求信号に含まれる乱数とに基づいて所定の関数を繰り返し演算しその演算結果を応答信号として前記ＥＣＵに送信する構成としている請求項６に記載のイモビライザ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両盗難防止システム、それに用いるＥＣＵおよびイモビライザに関し、詳しくは、車両盗難を防止する際のセキュリティ性を向上させるものに関する。
【背景技術】
【０００２】
従来より、車両の不正解錠による盗難を防止するものとしてイモビライザを搭載した車両が提供されている。その一例として、ユーザが所有するイグニッションキーに暗証コードを登録していると共に、同一の暗証コードを登録したイモビライザを車両側のキーシリンダに付設し、該イモビライザがイグニッションキーおよびエンジンＥＣＵと通信して所要の認証処理を行うものがある。その具体的な処理手順は、図５に示すように、イグニッションキーがキーシリンダに差し込まれると、イグニッションキーに内蔵された小型発信器から暗証コードがイモビライザに送信される（Ｓ１）。イモビライザでは受信した暗証コードと自己に予め登録している暗証コードとが一致するかを照合する認証作業を行う（Ｓ２）。
【０００３】
次いで、イグニッションキーが回されてエンジンの始動が要求されると、前記暗証コードの認証結果がエンジンＥＣＵに送信され、エンジンＥＣＵは正しく認証されていることが確認された場合に、乱数Ｒを暗号化してイモビライザに送信する（Ｓ３）。イモビライザ側では受信した乱数Ｒを変数として所定の関数Ｆ（ｘ）を演算し（Ｓ４）、その演算結果である関数値Ｆ（Ｒ）をエンジンＥＣＵに返信する（Ｓ５）。エンジンＥＣＵでは受信したＦ（Ｒ）を復元し、先に送信した乱数と一致するかの照合を行う（Ｓ６）。その照合結果が一致していればエンジンの始動を行い（Ｓ７）、不一致であればエンジンの始動を許可しない。
【０００４】
しかしながら、前記構成の場合には関数Ｆ（ｘ）が固定であるため、第三者がイモビライザとエンジンＥＣＵとの通信経路に不正アクセスして乱数Ｒおよび関数値Ｆ（Ｒ）を盗み取れば、そこから関数Ｆ（ｘ）を推定することができる。関数Ｆ（ｘ）が分かれば、第三者はエンジンＥＣＵから送信される乱数を通信経路から読み取ることで関数値Ｆ（Ｒ）を算出することができ、関数値Ｆ（Ｒ）をエンジンＥＣＵに強制的に送信すればエンジンを始動することができるため、車両盗難に対するセキュリティ性が十分でないという問題がある。
【０００５】
また、特開２０００−２５５７４号公報では、エンジンＥＣＵにおける認証用の乱数発生にＡ／Ｄ変換値を使うことで、発生する乱数を予測しにくくしてセキュリティ性を向上させている。
しかしながら、イモビライザとエンジンＥＣＵとの通信経路に不正アクセスすることで、通信中に乱数および関数値を盗聴することができるため、固定の関数Ｆ（ｘ）を推定するのが容易であることには違いがなく、前記問題は解決されていない。
【特許文献１】特開２０００−２５５７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、前記問題に鑑みてなされたもので、イモビライザの通信経路に不正アクセスされても車両盗難ができないようにセキュリティ性を向上させることを課題としている。
【課題を解決するための手段】
【０００７】
前記課題を解決するため、本発明は、車両の走行駆動手段を制御するＥＣＵへ接続されるイモビライザによりイグニッションキーの認証を行うと共に、該イモビライザと前記ＥＣＵとの間で認証作業を行うことで前記走行駆動手段の始動を制御して車両盗難を防止するシステムにおいて、
前記イモビライザは、前記ＥＣＵから受信する乱数を入力値として所定の関数を繰り返し演算し、前記繰り返し演算の結果を応答信号として前記ＥＣＵに返信する一方、前記ＥＣＵでは該応答信号に基づいて認証作業を行い、認証が確認された場合に前記走行駆動手段の始動を許可する構成とし、前記関数の演算を繰り返す変換回数は毎回の認証作業ごとに変更していることを特徴とする車両盗難防止システムを提供している。
【０００８】
前記構成とすると、関数は認証作業の度に変換回数を変更する繰り返し演算としており固定関数としていないので、イモビライザとＥＣＵとの間の通信経路を盗聴されても、関数を推定することはできず、関数のロバスト性を強化することができる。したがって、ＥＣＵでの認証作業に必要な応答信号を作成することが困難となり、車両盗難に対するセキュリティ性を向上させることが可能となる。なお、関数の入力値である乱数は２つ以上とすると、関数の演算に必要な情報の分散度が高まりセキュリティ性が向上するため好ましい。
【０００９】
前記走行駆動手段の動作中に、前記ＥＣＵから前記イモビライザに前記変換回数を予め送信しておくと共に、該送信後に送信済みの変換回数を前記ＥＣＵから削除する処理を行い、
前記走行駆動手段の停止中に、前記イグニッションキーを正しく認証した認証信号が前記イモビライザから前記ＥＣＵに送信されると、前記ＥＣＵは前記乱数を要求信号として前記イモビライザに送信する一方、前記イモビライザでは、前記要求信号に含まれる乱数を入力値として前記関数を前記変換回数だけ繰り返し演算し、その演算結果を応答信号として前記ＥＣＵに送信する構成としていることが好ましい。
【００１０】
前記構成とすると、イモビライザで関数を演算するのに必要となる関数の変換回数（繰り返し回数）は、走行駆動手段の動作中に予めＥＣＵからイモビライザに送信しているので、通信経路から変換回数を盗み取ることはできない。即ち、走行駆動手段が動作しているときは、車両の走行中あるいはアイドリング中でありユーザが車両に乗車しているため、第三者がイモビライザとＥＣＵとの間の通信経路に不正アクセスすることは困難となり、前記変換回数が通信中に盗み取られるのを防止することができる。かつ、前記変換回数をイモビライザに送信した後はＥＣＵから削除して残さないようにしているので、第三者は駐車中に不正解錠してＥＣＵ内を覗き見たとしても、関数を演算するのに必要となる変換回数を知ることができない。
したがって、第三者は、ＥＣＵでの認証作業に必要な応答信号を作成することができず、車両盗難に対するセキュリティ性を飛躍的に向上させることが可能となる。
【００１１】
前記走行駆動手段の動作中に前記ＥＣＵから前記イモビライザに送信される前記変換回数をｍ、ＥＣＵで関数演算される変換回数をｎ、前記走行駆動手段の停止中に前記ＥＣＵから前記イモビライザに送信される乱数をＰ，Ｒ、一方向性ハッシュ関数をＨ（ｘ，ｙ）、ｘ，ｙを変数、ｍ，ｎを自然数（ｍ＜ｎ）とすると、
前記ＥＣＵでは、前記走行駆動手段の動作中に、乱数Ｐ，Ｒを初期入力値として、前記一方向性ハッシュ関数Ｈの繰り返し演算である
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｎ＝Ｈ（Ｈｎ−１，Ｒ）
を演算して、Ｈｎを第１関数値として保存しておくと共にＨ１〜Ｈｎ−１を削除し、次いで、
前記イモビライザでは、前記走行駆動手段の停止中に、前記要求信号として受信した乱数Ｐ，Ｒを初期入力値として、前記変換回数ｍを用いて前記一方向性ハッシュ関数Ｈの繰り返し演算である
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｍ＝Ｈ（Ｈｍ−１，Ｒ）
を演算し、第２関数値Ｈｍを前記応答信号として前記ＥＣＵに返信し、
前記ＥＣＵでは、認証作業として、前記受信した第２関数値Ｈｍと前記乱数Ｒとを入力値として前記一方向性ハッシュ関数Ｈを（ｎ−ｍ）回だけ演算することによりＨｎの値を演算し、この演算結果を前記第１関数値Ｈｎと照合して一致した場合に前記走行駆動手段の始動許可を行う構成としていると好ましい。
【００１２】
前記構成のように繰り返し演算を行う関数として一方向性ハッシュ関数を用いると、一方向性ハッシュ関数は出力である関数値から入力値を逆算するのが困難であるので、第三者がＥＣＵ内を覗き見て第１関数値を知ったとしても入力値である乱数を知ることはできない。したがって、イモビライザからＥＣＵへの応答信号として必要な第２関数値を割り出すことはできず、車両盗難に対するセキュリティ性を大幅に向上させることができる。また、ＥＣＵが応答信号として受信した第２関数値Ｈｍに一方向性ハッシュ関数Ｈを演算する回数ｎ−ｍは、ＥＣＵ内で予め固定的に設定しておくことが好ましい。なお、一方向性ハッシュ関数とは、ある値を入力した時に別の値に変換する関数で、長いデータが入力されても特定データ長に変換され、入力が違えば変換された出力も異なり、また、変換された出力から逆変換して入力を探すことはできないという特徴を有する関数をいう。
【００１３】
前述の車両盗難防止システムを実現するＥＣＵとして、本発明は、イグニッションキーを認証するイモビライザに接続されると共に車両に搭載された走行駆動手段を制御するＥＣＵであって、
乱数を生成する乱数発生部と、前記関数の変換回数を生成する変換回数発生部と、前記イモビライザからイグニッションキーの認証信号を受信すると前記乱数発生部で生成された乱数を要求信号として前記イモビライザに送信する要求信号送信部と、前記イモビライザからの応答信号に基づいて認証作業を行い該認証が確認された場合に前記走行駆動手段の始動を許可する照合部とを備えていることを特徴とするＥＣＵを提供している。
【００１４】
また、前記ＥＣＵは、前記走行駆動手段の動作中に前記変換回数を前記イモビライザに送信する変換回数送信部と、該送信後に送信済みの変換回数を前記ＥＣＵから削除する削除指令部と、乱数を保存する乱数保存部とを備え、
前記要求信号送信部は、前記イモビライザからイグニッションキーの認証信号を受信すると前記乱数保存部に保存された乱数を要求信号として前記イモビライザに送信する構成としていると好ましい。
【００１５】
また、前述の車両盗難防止システムを実現するイモビライザとして、本発明は、車両の走行駆動手段を制御するＥＣＵに接続されると共にイグニッションキーの認証を行うイモビライザであって、
前記イグニッションキーの暗証コードが正しく認証された場合に認証信号を前記ＥＣＵに送信する暗証コード認証部と、前記ＥＣＵから受信する乱数および前記変換回数に基づいて所定の関数を繰り返し演算しその演算結果を応答信号として前記ＥＣＵに送信する応答信号送信部とを備えていることを特徴とするイモビライザを提供している。
【００１６】
また、前記走行駆動手段の動作中に前記ＥＣＵから受信する前記変換回数を予め保存する変換回数保存部を備え、
前記応答信号送信部は、前記変換回数保存部に保存されている変換回数と前記ＥＣＵからの要求信号に含まれる乱数とに基づいて所定の関数を繰り返し演算しその演算結果を応答信号として前記ＥＣＵに送信する構成としていると好ましい。
【発明の効果】
【００１７】
以上の説明より明らかなように、本発明によれば、認証に用いる関数は所定の関数の繰り返し演算とし、認証作業の度に関数の変換回数（繰り返し回数）を変更として固定関数としていないので、イモビライザとＥＣＵとの間の通信経路を盗聴されても、関数を推定することはできず、関数のロバスト性を強化することができる。また、イモビライザで関数を演算するのに必要となる関数の変換回数は、ユーザが車両に乗車している走行駆動手段の動作中に予めＥＣＵからイモビライザに送信しているので、通信経路から変換回数を盗み取ることはできない。以上より、第三者はＥＣＵでの認証作業に必要な関数値を算出することができず、車両盗難に対するセキュリティ性が大幅に向上する。
【発明を実施するための最良の形態】
【００１８】
本発明の実施形態を図面を参照して説明する。
図１は第１実施形態の車両盗難防止システムを示し、ユーザが所有するイグニッションキー１１と、車両の運転席に設置されているキーシリンダ１５に付設されるイモビライザ１２と、車両に搭載されたエンジン１４（走行駆動手段）を制御するエンジンＥＣＵ（Electronic Control Unit）１３とを備えている。イモビライザ１２は通信線Ｌ１を介してエンジンＥＣＵ１３に接続されていると共に、エンジンＥＣＵ１３は通信線Ｌ２を介してエンジン１４の点火装置（図示せず）等と接続されている。
イグニッションキー１１は、そのユーザに固有の暗証コードが登録された暗証コード保存部１６と、暗証コードをイモビライザ１２に送信する発信器１７とを内蔵している。
【００１９】
次に、イモビライザ１２の構成について説明する。
イモビライザ１２は、受信器１８と、暗証コード保存部１９と、暗証コード認証部２０と、入出力手段２１と、変換回数保存部２２と、関数保存部２３と、関数演算部２４と、要求信号受信部２５と、応答信号送信部２６とを備えている。
詳しくは、受信器１８は、イグニッションキー１１の発信器１７から送信される暗証コードを受信する。暗証コード保存部１９は、イグニッションキー１１の暗証コード保存部１６に登録されている暗証コードと同一の暗証コードを登録している。暗証コード認証部２０は、受信器１８で受信した暗証コードと自己の暗証コード保存部１９に登録されている暗証コードとが一致するか照合して正しく認証された場合に認証信号をエンジンＥＣＵ１３に送信する構成としている。入出力手段２１は、エンジンＥＣＵ１３と信号線Ｌ１を介して接続する通信インターフェースである。
【００２０】
変換回数保存部２２は、エンジン動作中にエンジンＥＣＵ１３から受信する変換回数ｍ（＝ｎ−１）を予め保存する。関数保存部２３は、２つの変数ｘ，ｙを入力として所定の演算を行う一方向性ハッシュ関数Ｈ（ｘ，ｙ）を保存している。要求信号受信部２５は、エンジンＥＣＵ１３から要求信号を受信して、該要求信号に含まれる第２乱数Ｒを関数演算部２４に渡す。関数演算部２４は、第１乱数保存部２２に保存されている第１乱数Ｐと要求信号受信部２５で受信された第２乱数Ｒとに基づいて、関数保存部２３に保存された一方向性ハッシュ関数Ｈ（ｘ，ｙ）により後述する繰り返し演算を行う。応答信号送信部２６は、関数演算部２４での演算結果である第２関数値Ｈｎ−１を応答信号としてエンジンＥＣＵ１３に送信する。
【００２１】
次に、エンジンＥＣＵ１３の構成について説明する。
エンジンＥＣＵ１３は、乱数発生部２９と、乱数保存部３１と、要求信号送信部３２と、変換回数発生部４１と、変換回数送信部３３と、応答信号受信部３４と、関数演算部３５と、関数保存部３６と、関数値保存部３７と、削除指令部３８と、照合部３９と、出力手段４０とを備えている。
詳しくは、乱数発生部２９は、一方向性ハッシュ関数Ｈ（ｘ，ｙ）の２つの変数ｘ，ｙに代入される初期値となる２つの乱数Ｐ、Ｒを生成する。乱数保存部３１は、乱数発生部２９で生成された乱数Ｐ，Ｒを保存する。要求信号送信部３２は、イモビライザ１２の暗証コード認証部２０から認証信号を受信すると第１乱数Ｐおよび第２乱数Ｒを要求信号としてイモビライザ１２に送信する。変換回数発生部４１は、一方向性ハッシュ関数Ｈ（ｘ，ｙ）の演算を繰り返す回数、即ち、変換回数ｎをランダムに生成する。変換回数送信部３３は、変換回数発生部４１で生成された変換回数から１減じた値ｍ（＝ｎ−１）を変換回数として送信する。応答信号受信部３４は、イモビライザ１２の応答信号送信部２６から送信される応答信号を受信する。
【００２２】
関数演算部３５は、エンジン動作中に、乱数発生部２９で生成された第１乱数Ｐおよび第２乱数Ｒとに基づいて、関数保存部３６に保存された一方向性ハッシュ関数Ｈ（ｘ，ｙ）を用いて後述する繰り返し演算を行う。また、関数演算部３５は、エンジン停止中には、イモビライザ１２から受信した応答信号に基づいて後述する一方向性ハッシュ関数Ｈ（ｘ，ｙ）の演算を１回行う。関数保存部３６は、２つの変数ｘ，ｙを入力として所定の演算を行う一方向性ハッシュ関数Ｈ（ｘ，ｙ）を保存している。関数値保存部３７は、関数演算部３５での演算結果である第１関数値Ｈｎを保存する。削除指令部３８は、変換回数ｍをイモビライザ１２へ送信した後で、かつ、第１関数値Ｈｎを関数値保存部３７に保存した後に、変換回数ｍを削除する指令を行う。照合部３９は、イモビライザ１２からの応答信号に含まれる第２関数値Ｈｎ−１と関数値保存部３７に保存されている第１関数値Ｈｎとに基づいて後述する認証作業を行う。出力手段４０は、照合部３９で認証が確認された場合にエンジン１４の始動を許可する信号をエンジン１４側に送信する。
【００２３】
次に、図２のフロー図に基づいて車両盗難を防止する処理の手順を説明する。
まず、駐車車両のエンジン１４の始動可否を判断する認証作業に備えて、駐車前のエンジン動作中に予め行っておく予備処理について説明する。エンジンＥＣＵ１３の乱数発生部２９で第１乱数Ｐと第２乱数Ｒを生成する（Ｓ１０）。
エンジンＥＣＵ１３の関数演算部３５では、関数保存部３６に保存されている一方向性ハッシュ関数Ｈ（ｘ，ｙ）に対して第１乱数Ｐおよび第２乱数Ｒを初期入力値とし、かつ、変換回数発生部４１でランダムに生成された変換回数をｎ回（例えば、ｎ＝１００）として、
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｎ＝Ｈ（Ｈｎ−１，Ｒ）
と繰り返し演算を行い、第１関数値Ｈｎを算出する（Ｓ１１）。即ち、第１関数値Ｈｎはワンタイムパスワードの一種であるＳ／ＫＥＹを使用して算出されている。
【００２４】
次いで、前記算出した第１関数値Ｈｎを関数値保存部３７に登録保存すると共に、第１乱数Ｐおよび第２乱数Ｒを乱数保存部３１に登録保存する（Ｓ１２）。その後、削除指令部３８により関数値Ｈ１〜Ｈｎ−１をエンジンＥＣＵ１３から削除する（Ｓ１３）。
次いで、変換回数ｎより１減じた値である変換回数ｍを変換回数送信部３３からイモビライザ１２へ送信する（Ｓ１４）。イモビライザ１２側では受信した変換回数ｍを変換回数保存部２２に保存しておく（Ｓ１５）。その後、削除指令部３８により変換回数ｍをエンジンＥＣＵ１３から削除する（Ｓ１６）
以上で、エンジン始動時の認証作業に備えた予備処理を終了する。
【００２５】
次に、ユーザが駐車中の車両のエンジン１４を始動させる際の認証作業について説明する。
まず、ユーザがイグニッションキー１１をキーシリンダ１５に挿入すると、イグニッションキー１１の暗証コード保存部１６に登録された暗証コードが発信器１７により送信され（Ｓ１７）、イモビライザ１２の受信器１８で受信される。イモビライザ１２では、受信した暗証コードが自己の暗証コード保存部１９に保存された暗証コードと一致するかを暗証コード認証部２０で照合し、一致する場合にはエンジンＥＣＵ１３に認証信号を送信する（Ｓ１８）。なお、一致しなかった場合には認証信号が送信されずに次のステップに移らないためエンジン１４の始動を行うことができない。
【００２６】
前記認証信号を受信したエンジンＥＣＵ１３では、要求信号送信部３２から第１乱数Ｐおよび第２乱数Ｒが要求信号として送信される（Ｓ１９）。イモビライザ１２では、第１乱数Ｐおよび第２乱数Ｒが要求信号受信部２５で受信され、関数演算部２４に渡される。
関数演算部２４では、関数保存部２３に保存されている一方向性ハッシュ関数Ｈ（ｘ，ｙ）に対して、前記第１乱数Ｐと第２乱数Ｒとを初期入力値とし、かつ、一方向性ハッシュ関数Ｈ（ｘ，ｙ）の変換回数を予め受信していた変換回数ｍ（＝ｎ−１）とし（例えば、ｍ＝９９）として、
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｍ＝Ｈ（Ｈｍ−１，Ｒ）
と繰り返し演算を行い、第２関数値Ｈｍ、即ち第２関数値Ｈｎ−１を算出する（Ｓ２０）。
【００２７】
次いで、応答信号送信部２６から第２関数値Ｈｎ−１を応答信号としてエンジンＥＣＵ１３に返信する（Ｓ２１）。エンジンＥＣＵ１３では、第２関数値Ｈｎ−１が応答信号受信部３４で受信され、関数演算部３５に渡される。
関数演算部３５では、関数保存部３６に保存されている一方向性ハッシュ関数Ｈ（ｘ，ｙ）に対して、第２乱数Ｒと受信した第２関数値Ｈｎ−１とを入力値として、
Ｈｎ＝Ｈ（Ｈｎ−１，Ｒ）
を演算する（Ｓ２２）。
照合部３９では、この演算結果であるＨｎの値と、関数値保存部３７にエンジン動作中に保存していた第１関数値Ｈｎの値とが一致するかを照合し、照合があえば出力手段４０を介してエンジン１４に始動許可が送信される（Ｓ２２）。一方、照合があわなかった場合には始動許可が送信されずにエンジン１４の始動を行うことができない。
【００２８】
以上によれば、エンジンＥＣＵ１３の照合部４０での照合作業に必須となる第２関数値Ｈｎ−１が第三者に知得されるのを確実に防止することができる。
即ち、第２関数値Ｈｎ−１を演算するのに必須となる変換回数ｍと乱数Ｐ，Ｒとはイモビライザ１２とエンジンＥＣＵ１３とに分散保存されており、変換回数ｍをイモビライザ１２に送信した後はエンジンＥＣＵ１３から変換回数ｍを削除しているので、第三者は駐車中に不正解錠してイモビライザ１２あるいはエンジンＥＣＵ１３のいずれか一方を覗き見たとしても、変換回数ｍおよび乱数Ｐ、Ｒの両方を知ることはできない。かつ、変換回数ｍはユーザが車両に乗車しているエンジン動作中に予めエンジンＥＣＵ１３からイモビライザ１２に送信しているので通信中に通信線Ｌ１から変換回数ｍを盗み取ることもできない。
【００２９】
また、イモビライザ１２およびエンジンＥＣＵ１３の関数演算部２４、３５で行われる演算を、一方向性ハッシュ関数Ｈ（ｘ，ｙ）の繰り返し演算として、認証作業ごとに一方向性ハッシュ関数Ｈ（ｘ、ｙ）の変換回数ｎ、ｍの値を変えているので、関数演算部２４、３５で行われる演算関数を推定することは困難である。また、一方向性ハッシュ関数Ｈ（ｘ，ｙ）は出力値から入力値を逆算するのが困難であるので、第三者がエンジンＥＣＵ１３内を覗き見て第１関数値Ｈｎを知得しても、第２関数値Ｈｎ−１を推定することはできない。
したがって、イモビライザ１２からエンジンＥＣＵ１３への応答信号として必須な第２関数値Ｈｎ−１を第三者は求めることができず、車両盗難に対するセキュリティ性が飛躍的に向上する。
【００３０】
なお、本実施形態の車両の走行駆動手段はエンジン１４としているが、電気自動車等の場合には前記走行駆動手段は車輪を駆動するモータ装置とするとよい。
また、本実施形態ではｍ＝ｎ−１として、応答信号に基づいてエンジンＥＣＵ１３で一方向性ハッシュ関数Ｈを演算（Ｓ２２）する回数（ｎ−ｍ）は１回としているが、ｎ−ｍは１に限定されない。即ち、イモビライザ１２での変換回数をｍ＝ｎ−ｓ（ｓは自然数、ｓ＜ｎ）として、エンジン停止中のエンジンＥＣＵ１３での応答信号に基づいた変換回数をｓ回とするとよい。
【００３１】
図３および図４は第２実施形態を示す。
第１実施形態との相違点は、第１乱数Ｐもエンジン動作中にエンジンＥＣＵ１３からイモビライザ１２に予め送信している点である。
【００３２】
本実施形態のイモビライザ１２’は、エンジン動作中にエンジンＥＣＵ１３から受信する第１乱数Ｐを予め保存する第１乱数保存部２７を備えている。
エンジンＥＣＵ１３’は、エンジン動作中に第１乱数Ｐをイモビライザ１２に送信する第１乱数送信部３０と、乱数発生部２９で生成された第２乱数Ｒを後で行われる認証作業に備えて保存する第２乱数保存部３１とを備えている。
なお、他の構成は第１実施形態と同様であるので同一符号を付して説明を省略する。
【００３３】
次に、図４のフロー図に基づいて車両盗難を防止する処理の手順を説明する。
まず、駐車車両のエンジン１４の始動可否を判断する認証作業に備えて、駐車前のエンジン動作中に予め行っておく予備処理について説明する。エンジンＥＣＵ１３’の乱数発生部２９で第１乱数Ｐと第２乱数Ｒを生成し（Ｓ３０）、第１乱数Ｐを第１乱数送信部３０からイモビライザ１２’へ送信する（Ｓ３１）。イモビライザ１２’側では受信した第１乱数Ｐを第１乱数保存部２２に保存しておく（Ｓ３２）。
【００３４】
エンジンＥＣＵ１３’の関数演算部３５では、関数保存部３６に保存されている一方向性ハッシュ関数Ｈ（ｘ，ｙ）に対して第１乱数Ｐおよび第２乱数Ｒを初期入力値とし、かつ、変換回数発生部４１で生成された自然数を変換回数ｎ（例えば、ｎ＝１００）として、
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｎ＝Ｈ（Ｈｎ−１，Ｒ）
と繰り返し演算を行い、第１関数値Ｈｎを算出する（Ｓ３３）。
【００３５】
次いで、前記算出した第１関数値Ｈｎを関数値保存部３７に登録保存すると共に、第２乱数Ｒを第２乱数保存部３１に登録保存する（Ｓ３４）。その後、削除指令部３８により第１乱数Ｐと関数値Ｈ１〜Ｈｎ−１とをエンジンＥＣＵ１３’から削除する（Ｓ３５）。
次いで、変換回数ｎより１減じた値である変換回数ｍを変換回数送信部３３からイモビライザ１２’へ送信する（Ｓ３６）。イモビライザ１２’側では受信した変換回数ｍを変換回数保存部２２に保存しておく（Ｓ３７）。その後、削除指令部３８により変換回数ｍをエンジンＥＣＵ１３’から削除する（Ｓ３８）
以上で、エンジン始動時の認証作業に備えた予備処理を終了する。
【００３６】
次に、ユーザが駐車中の車両のエンジン１４を始動させる際の認証作業について説明する。
まず、ユーザがイグニッションキー１１をキーシリンダ１５に挿入すると、イグニッションキー１１の暗証コード保存部１６に登録された暗証コードが発信器１７により送信され（Ｓ３９）、イモビライザ１２’の受信器１８で受信される。イモビライザ１２’では、受信した暗証コードが自己の暗証コード保存部１９に保存された暗証コードと一致するかを暗証コード認証部２０で照合し、一致する場合にはエンジンＥＣＵ１３’に認証信号を送信する（Ｓ１７）。
【００３７】
前記認証信号を受信したエンジンＥＣＵ１３’では、要求信号送信部３２から第２乱数Ｒが要求信号として送信される（Ｓ４１）。イモビライザ１２’では、第２乱数Ｒが要求信号受信部２５で受信され、関数演算部２４に渡される。
関数演算部２４では、関数保存部２３に保存されている一方向性ハッシュ関数Ｈ（ｘ，ｙ）に対して、前記第２乱数Ｒと、第１乱数保存部２２で予め受信していた第１乱数Ｐとを初期入力値とし、かつ、一方向性ハッシュ関数Ｈ（ｘ，ｙ）の変換回数を前記受信した変換回数ｍとし（例えば、ｍ＝９９）として、
Ｈ１＝Ｈ（Ｐ，Ｒ）
Ｈ２＝Ｈ（Ｈ１，Ｒ）
・
・
Ｈｍ＝Ｈ（Ｈｍ−１，Ｒ）
と繰り返し演算を行い、第２関数値Ｈｍ、即ち第２関数値Ｈｎ−１を算出する（Ｓ４２）。
【００３８】
次いで、応答信号送信部２６から第２関数値Ｈｎ−１を応答信号としてエンジンＥＣＵ１３’に返信する（Ｓ４３）。エンジンＥＣＵ１３’では、第２関数値Ｈｎ−１が応答信号受信部３４で受信され、関数演算部３５に渡される。
関数演算部３５では、関数保存部３６に保存されている一方向性ハッシュ関数Ｈ（ｘ，ｙ）に対して、第２乱数Ｒと受信した第２関数値Ｈｎ−１とを入力値として、
Ｈｎ＝Ｈ（Ｈｎ−１，Ｒ）
を演算する（Ｓ４４）。
照合部３９では、この演算結果であるＨｎの値と、関数値保存部３７にエンジン動作中に保存していた第１関数値Ｈｎの値とが一致するかを照合し、照合があえば出力手段４０を介してエンジン１４に始動許可が送信される（Ｓ４５）。
【００３９】
以上によれば、入力値として用いられる複数の乱数Ｐ，Ｒのうち一部の乱数Ｐもエンジン動作中にエンジンＥＣＵ１３’からイモビライザ１２’に送信しているので、通信経路から第１乱数Ｐを盗み取ることも困難となり、セキュリティ性が更に向上する。
【図面の簡単な説明】
【００４０】
【図１】本発明の第１実施形態の車両盗難防止システムを示すブロック図である。
【図２】第１実施形態の認証手順を示すフロー図である。
【図３】第２実施形態の車両盗難防止システムを示すブロック図である。
【図４】第２実施形態の認証手順を示すフロー図である。
【図５】従来例の認証手順を示すフロー図である。
【符号の説明】
【００４１】
１１    イグニッションキー
１２    イモビライザ
１３    エンジンＥＣＵ
１４    エンジン
１５    キーシリンダ
Ｌ１、Ｌ２    通信線
【図１】
2006142981.tif 000003
【図２】
2006142981.tif 000004
【図３】
2006142981.tif 000005
【図４】
2006142981.tif 000006
【図５】
2006142981.tif 000007