(57)【特許請求の範囲】
【請求項１】
車両（１０；Ｖ）に取り付けることが意図され、ユーザ端末（２０；Ｔ）から要求を受信して、前記車両（１０）の機能を制御するように設計される電子ユニット（１１）であって、
−カウンタおよび期間を表すデータの項目を記憶するように設計される記憶ユニット（１４）と、
−前記期間と等しい周期で前記カウンタの値を周期的に修正する手段と、
−前記カウンタが所与の値の範囲内にあるときにのみ前記機能を制御する、制御手段とを備え、
下限（ＮＢ１）および上限（ＮＢ２）を受信する手段を備え、前記所与の値の範囲が、前記下限（ＮＢ１）と前記上限（ＮＢ２）との間で規定され、
ルート鍵と、受信した前記下限（ＮＢ１）および前記上限（ＮＢ２）とに基づいて、仮想鍵（ＶＫ）を導出する手段を備える、電子ユニット（１１）。
【請求項２】
−前記ユーザ端末（２０；Ｔ）にチャレンジ（ＲＮＤ’）を送信する手段と、
−前記仮想鍵（ＶＫ）および前記チャレンジ（ＲＮＤ’）によって、予期される応答を計算する手段と、
−前記ユーザ端末（２０；Ｔ）から応答（Ｒ）を受信する手段とを備え、
受信した前記応答（Ｒ）が前記予期される応答と一致するときにのみ、前記制御手段が前記機能を制御するようにさらに設計される、
請求項１に記載の電子ユニット。
【請求項３】
前記カウンタの前記周期的な修正が、前記カウンタの周期的な増分である、請求項１又は２に記載の電子ユニット。
【請求項４】
前記機能が、前記車両のドアのロック解除である、請求項１〜３のいずれか一項に記載の電子ユニット。
【請求項５】
請求項１〜４のいずれか一項に記載の電子ユニット（１１）と、サーバ（５０；Ｓ）と、で実行される方法であって、
−前記電子ユニット（１１）および前記サーバ（５０；Ｓ）を相互認証するステップと、
−相互認証に成功した場合は、前記記憶ユニット（１４）に記憶された初期値で前記カウンタを初期化するステップとを含む、方法。
【請求項６】
前記カウンタの前記初期化が、前記車両に関連する物理的対象に対する、ユーザの動作が検知されたときにのみ行われる、請求項５に記載の方法。
【請求項７】
サーバ（５０；Ｓ）と、車両（１０；Ｖ）の電子ユニット（１１）とを同期する方法であって、前記電子ユニットによって、請求項５または６のいずれか一項に記載の方法を実行すること、ならびに、
−前記記憶ユニット（１４）に記憶された前記初期値で、前記記憶ユニット（１４）内に記憶された前記カウンタが初期化されたときから、前記期間と等しい周期で、前記記憶ユニット（１４）内に記憶された前記カウンタを周期的に修正するステップと、
−前記サーバ（５０；Ｓ）に記憶された前記初期値で、前記サーバ（５０；Ｓ）内のカウンタを初期化するステップ（Ｅ４０）と、
−前記サーバ（５０；Ｓ）に記憶された前記初期値で、前記サーバ（５０；Ｓ）内に記憶されたカウンタが初期化されたときから、前記期間と等しい周期で、前記サーバ（５０；Ｓ）内に記憶された前記カウンタを周期的に修正するステップとを含む、方法。
【請求項８】
−前記電子ユニット（１１）および前記サーバ（５０；Ｓ）を相互認証するステップと、
−相互認証に成功した場合は、前記サーバ（５０；Ｓ）に記憶されたカウンタの現在の値を前記電子ユニット（１１）に送信して、前記電子ユニット（１１）の前記記憶ユニット（１４）に記憶された前記カウンタを、前記現在の値で初期化するステップとを含む、
サーバ（５０；Ｓ）と請求項１〜４のいずれか一項に記載の電子ユニット（１１）とを同期する方法。
【請求項９】
−前記電子ユニットを製造する段階で、前記記憶ユニット（１４）に、前記期間を表す前記データの項目および初期値を入力するステップと、
−前記サーバ（５０；Ｓ）および前記電子ユニット（１１）でのそれぞれの同期において、前記初期値で前記カウンタを初期化するステップとを含む、
サーバ（５０；Ｓ）と請求項１〜４のいずれか一項に記載の電子ユニット（１１）とを同期する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯電話等のユーザ端末による車両の機能の制御に関する。
【０００２】
より具体的には、電子ユニット、このタイプの電子ユニットで実行される方法、サーバと電子ユニットとの間で時間枠を共有する方法、およびサーバと電子ユニットとを同期する方法に関する。
【０００３】
本発明は、制御される機能が車両のドアのロック解除である場合に、特に好適に使用される。
【背景技術】
【０００４】
車両のユーザが通常使用している携帯電話等のユーザ端末によって、車両のドアのロックを解除する等、自動車両のいくつかの機能を制御することが提案されている。
【０００５】
本当に許可されている人物にのみ、この制御を可能にするために、仮想鍵が使用され、これはユーザ端末に記憶されて、ドアのロック解除を制御する前に、車両の電子制御ユニットが有効性を確認する。
【０００６】
いくつかの事例、例えば、車両を貸し出す状況においては、ユーザ端末で機能を制御できる可能性を、時間で制限することが所望される場合もある。
【発明の概要】
【０００７】
このような状況において、本発明は、車両に取り付けることが意図され、ユーザ端末から要求を受信して、車両の機能を制御するように設計される電子ユニットを提案し、これは、
−カウンタおよび期間を表すデータの項目を記憶するように設計される記憶ユニットと、
−前述の期間と等しい周期でカウンタの値を周期的に修正する手段と、
−カウンタが所与の値の範囲内にあるときにのみ機能を制御する、制御手段とを備えることを特徴とする。
【０００８】
したがって、ユーザ端末で機能を制御できる可能性を時間で制限するために、専用のカウンタが使用される。このようなカウンタは異なっていてもよく、すなわち、固有の値で初期化され、かつ固有の周期で修正されて電子ユニットに記憶されるので、車両ごとに違っていてもよい。このようなカウンタは、したがって車両の時計等の従来の時間枠と比較して、改ざんすることがより困難である。
【０００９】
カウンタの値を周期的に修正する手段、および制御手段は、プロセッサによって、ならびにコンピュータプログラムに適合させた命令によって、実際に実行することができ、この命令は、プロセッサに関連付けたメモリに記憶される。代替案では、これらの手段は、通常はＡＳＩＣと呼ばれる、特定用途向け集積回路（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）等の専用の電子回路によって実行されてもよい。
【００１０】
随意選択として提案され、したがって限定されることのない他の特徴は、以下の通りである。
−電子ユニットは、下限および上限を受信する手段を備え、所与の値の範囲が、下限と上限との間で規定される。
−電子ユニットは、ルート鍵と、受信した上限および下限とに基づいて、仮想鍵を導出する手段を備える。
−電子ユニットは、ユーザ端末にチャレンジを送信する手段、仮想鍵およびチャレンジによって、予期される応答を計算する手段、ならびにユーザ端末から応答を受信する手段を備える。
−制御手段は、受信した応答が予期した応答と一致するときにのみ、機能を制御するように設計される。
−カウンタの周期的な修正は、カウンタの周期的な増分である。
−前述の機能は、車両のドアのロック解除および／または車両の始動である。
【００１１】
この機能は、車両のドアをロックすることであってもよく、あるいは車両のトランクをロックまたはロック解除すること、あるいは車両のグローブボックスをロックまたはロック解除すること、あるいは車両のエンジンを始動または停止することであってもよい。
【００１２】
また、本発明は、先に提案した電子ユニットで実行される方法を提案し、これは以下のステップを含む。
−電子ユニットおよびサーバを相互認証するステップと、
−相互認証に成功した場合は、記憶ユニットに記憶された初期値でカウンタを初期化するステップ。
【００１３】
カウンタの初期化は、車両に関連する物理的対象（例えば、車両の物理的な鍵、または車両の手動制御）に対する、ユーザの動作が検知されたときにのみ行われることも想定することができる。
【００１４】
本発明は、サーバと、車両の電子ユニットとの間で時間枠を共有する方法をさらに提案し、この方法は、直前に述べたように、電子ユニットによって方法を実行することと、以下のステップとを含む。
−サーバに記憶された初期値で、サーバ内のカウンタを初期化するステップと、
−前述の期間と等しい周期で、サーバ内に記憶されたカウンタを周期的に修正するステップ。
【００１５】
本発明は、前述のようにサーバと電子ユニットとを同期する方法をさらに提案し、この方法は、以下のステップを含む。
−電子ユニットおよびサーバを相互認証するステップと、
−相互認証に成功した場合は、サーバに記憶されたカウンタの現在の値を電子ユニットに送信し、かつ現在の値で、電子ユニットの記憶ユニットに記憶されたカウンタを初期化するステップ。
【００１６】
考えられる代替案によれば、前述のように、サーバと電子ユニットとを同期するこのような方法は、以下のステップを含む。
−電子ユニットの製造段階で、代表データの項目および初期値を記憶ユニットに入力するステップと、
−サーバおよび電子エンティティでのそれぞれの同期において、初期値で、すなわちサーバから電子ユニットに値を送信することなく、カウンタを初期化するステップ。
【００１７】
添付の図面を参照する以降の説明は、限定されることのない例として提供され、本発明の特徴、およびこれを実行できる方法を明確に説明する。
【図面の簡単な説明】
【００１８】
【図１】特に車両とユーザ端末とを備える、本発明を実行できる状況の例を示す。
【図２】図１の車両およびユーザ端末の構成部品を、本発明の理解に役立つように概略的に示す。
【図３】ユーザ端末で車両の機能を制御するサービスに登録する方法の、主なステップを示す。
【図４】ユーザ端末で車両の機能を制御する方法の例の、主なステップを示す。
【図５】カウンタを再同期する方法の例の、主なステップを示す。
【発明を実施するための形態】
【００１９】
図１は、本発明を実行できる状況の例を示す。
【００２０】
この状況では、後述するように、車両１０は、電子制御ユニット（ｅｌｅｃｔｒｏｎｉｃ  ｃｏｎｔｒｏｌ  ｕｎｉｔ、ＥＣＵ）１１を備え、これは例えば、ユーザ端末２０で車両１０の機能（このような機能は、例えば、車両１０のドアのロック解除であってもよい）を制御するためのデータを、ユーザ端末２０と交換するために、無線リンクを介して、おそらくは「スマートフォン」タイプの携帯電話等の、ユーザ端末２０と通信することができる。
【００２１】
電子制御ユニット１１とユーザ端末２０との間の通信に使用される無線リンクは、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）タイプのものである。
【００２２】
ユーザ端末２０は、特に、携帯電話ネットワーク３０に接続するようにさらに設計され、これは特に、ラジオリンクを介してユーザ端末２０と通信中の基地局３２と、インターネット等の公衆ネットワーク４０に接続するためのゲートウェイ３４とを有する。
【００２３】
サーバ５０もまた、公衆ネットワーク４０に接続され、その結果、ユーザ端末２０とサーバ５０とは、携帯電話ネットワーク３０および公衆ネットワーク４０を介して通信して、データを交換することができる。サーバ５０は、この事例では、電子制御ユニット１１の製造者によって管理される。
【００２４】
図２は、車両１０およびユーザ端末２０の構成部品を、本発明の理解に役立つように概略的に示す。
【００２５】
車両１０は、特に、前述の電子制御ユニット１１と、アクチュエータ１５（この事例では、車両１０のドアをロック解除できるように設計される）と、アクチュエータ１７（車両を始動できるように設計される）と、無線通信モジュール１６と、ユーザインターフェース１８とを備える。
【００２６】
車両識別番号（Ｖｅｈｉｃｌｅ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｎｕｍｂｅｒ）ＶＩＮが車両１０に割り当てられ、通し番号Ｎが電子制御ユニット１１に割り当てられる。車両１０の識別番号ＶＩＮと、この車両１０が備える電子制御ユニット１１の通し番号Ｎとの間の関連性は、サーバ５０（これは、車両１０の製造者、または供給者であってもよい）が管理するデータベースＤに保持される。
【００２７】
電子制御ユニットは、プロセッサ１２と、書き換え可能な不揮発性メモリまたはハードディスク等の、記憶ユニット１４とを備える。
【００２８】
記憶ユニット１４は、特に、命令を含むコンピュータプログラムを記憶し、プロセッサ１２がこの命令を実行すると、電子制御ユニット１１が後述する方法を実行できるようになる。
【００２９】
また、記憶ユニット１４は、後述する方法の一部として使用されるデータ、特に、後述のように使用される、暗号鍵ＰｒＫ（例えば秘密鍵）およびルート鍵（または親鍵）ＭＫを記憶する。
【００３０】
暗号鍵ＰｒＫおよび／またはルート鍵ＭＫは、例えば、この電子制御ユニット１１が車両１０に取り付けられる前の、電子制御ユニット１１の製造中に記憶ユニット１４に書き込まれる。
【００３１】
暗号鍵ＰｒＫおよびルート鍵ＭＫもまた、電子制御ユニット１１の通し番号Ｎに関連付けられて、サーバ５０（前述したように、電子制御ユニット１１の製造者によって管理される）で記憶される。
【００３２】
また、記憶ユニット１４は、カウンタの初期値ＩおよびステップＰの期間等、多様なカウンタに対する構成情報を記憶する。この情報もまた、電子制御ユニット１１の製造中に、この電子制御ユニット１１を車両１０に取り付ける前に、記憶ユニット１４に書き込むことができ、電子制御ユニット１１の通し番号Ｎに関連付けられて、サーバ５０の他の場所に記憶される。
【００３３】
カウンタの構成情報（この場合は初期値ＩおよびステップＰの期間）が電子制御ユニットによって異なり、したがって車両によって異なるという点において、このカウンタは多様である。言い換えれば、各電子制御ユニット（したがって各車両）は、それらに固有のカウンタ構成情報を記憶する。したがって既に示したように、サーバＳは、各電子制御ユニットの通し番号に関連付けられた、カウンタのこの構成情報を記憶する。
【００３４】
ユーザ端末２０は、プロセッサ２２、メモリ２４（例えば、書き換え可能な不揮発性メモリ）、無線通信モジュール２６および携帯電話ネットワーク３０での通信用のモジュール２８を備える。
【００３５】
ユーザ端末２０の無線通信モジュール２６は、車両１０の無線通信モジュール１６と無線リンク（この事例では、前述のようにＢｌｕｅｔｏｏｔｈタイプのもの）を確立することを可能にし、これを介して、具体的にはさらに後述するように、電子制御ユニット１１のプロセッサ１２と、ユーザ端末２０のプロセッサ２２とは、データを交換することができる。
【００３６】
通信モジュール２８は、ユーザ端末２０（正確には、このユーザ端末２０が備えるプロセッサ２２）が、既に示したように、携帯電話ネットワーク３０に、または公衆ネットワーク４０に接続された他のデバイス、特にサーバ５０とデータを交換できるようにする。いくつかの実施形態では、通信モジュールはスマートカードを含むことができ、これは、携帯電話サービスへの加入に関連付けられた通信データを記憶して、携帯電話ネットワーク３０への接続を確立できるようにする。
【００３７】
図３は、ユーザ端末２０で車両１０の機能を制御するサービスに登録する（または加入する）方法の主なステップを示す。
【００３８】
なお、このような方法を実行する前に、ユーザ端末２０は、車両１０の機能を制御するための特定の準備はされておらず、車両１０に関するデータを有していない。したがってこれは、例えば車両１０の所有者が通常使用している携帯電話であってもよい。
【００３９】
同様に、この方法を実行する前は、ユーザ端末２０は車両１０に認識されておらず、したがって、車両１０は、このユーザ端末２０に関連付けられたデータについての情報を有していない。
【００４０】
図３の方法を実行するために、ユーザＵ（この事例では、車両１０の動作に関与する人物）は、従来の手段（例えば物理的な鍵）によって、車両１０（図３においてＶでも参照される）にアクセスすることが考えられる。
【００４１】
この事例で述べる実施形態では、ユーザＵは、ユーザ端末２０を保有して使用し、前述のように、これはまず（例えば、Ｂｌｕｅｔｏｏｔｈタイプの）無線リンクを介して電子制御ユニット１１と通信し、次に、基地局３１までのラジオリンクを介し、その後、携帯電話ネットワーク３０と公衆ネットワーク４０とを介して、サーバ５０（図３ではＳで参照される）と通信する。
【００４２】
したがって、後述するように、ユーザ端末２０は、この事例で述べる実施形態では、車両Ｖ（正確には電子制御ユニット１１）と、サーバＳとの間のデータの交換を可能にする、ゲートウェイとして使用することができる。
【００４３】
あるいは、車両Ｖ（すなわち電子制御ユニット１１）と、サーバＳとの間の他の通信手段、例えば、車両Ｖが備えており、車両Ｖと携帯電話ネットワーク３０との間に（直接的な）通信を確立するように設計される、通信モジュールが使用されてもよい。
【００４４】
図３の方法は、ステップＥ２から始まり、ユーザＵは、サーバＳ（図１では符号５０で参照される）に、ユーザ識別名ＵＩＤと、車両Ｖ（図１では符号１０で参照される）の識別名であるＶＩＮとを伝達する。考えられる実施形態では、ユーザＵは、このために、（例えば、ユーザ端末２０のプロセッサ２２が実行したブラウザにサーバＳのｈｔｔｐアドレスを入力して）サーバＳに接続し、例えば、前述の識別名であるＵＩＤ、ＶＩＮをフォームに入力して、サーバＳに送信する。別の考えられる実施形態では、事前にユーザ端末２０にインストールしたアプリケーションが、ユーザＵに対して、これらの識別名を入力してサーバ５０に送信することを求める。
【００４５】
例えば、ユーザ識別名ＵＩＤは、車両を貸し出す会社の名前を含む。しかしながら、代わりに別のタイプのデータがユーザを識別するために用いられてもよく、したがって、ユーザ識別名は、電子アドレス、電話番号（例えば、ＭＳＩＳＤＮ番号等の、携帯電話サービスへの加入に際して割り当てられた番号）、あるいはユーザＵのユーザ端末の識別名（例えば、ＩＭＥＩ番号）であってもよい。
【００４６】
車両識別名ＶＩＮは、例えば、「車両識別番号（Ｖｅｈｉｃｌｅ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｎｕｍｂｅｒ）」タイプのものである。
【００４７】
ステップＥ４において、サーバＳは、ユーザ識別名Ｕおよび車両識別名ＶＩＮを受信し、このステップではこれらの識別名を、ユーザ端末で車両の機能を制御するサービスへの登録が進行している車両専用の区域に記憶する。
【００４８】
電子制御ユニット１１の通し番号Ｎは、例えばステップＥ２において、例えば、ユーザＵによってサーバＳに伝達される。このために、通し番号Ｎは事前にユーザに供給され、例えば、車両のユーザマニュアルに綴じ込まれたラベルに印刷されている、かつ／あるいはユーザインターフェース１８によってユーザがアクセスすることができる。
【００４９】
サーバＳは、したがって、ステップＥ１０において、（前述の）記憶された暗号鍵ＰｒＫを、この通し番号Ｎと関連付けて判定することができる。
【００５０】
サーバＳは、次に、乱数ＲＮＤ等のチャレンジを生成する（ステップＥ１２）。
【００５１】
サーバＳは、次に、ステップＥ１４において、暗号鍵ＰｒＫを用いて暗号関数ｆを適用することによって、このチャレンジに関連付けられる応答ＲＥＳＰを計算し、これは、ＲＥＳＰ＝ｆ（ＲＮＤ，ＰｒＫ）で表すことができる。
【００５２】
サーバＳは、したがって、ステップＥ１６において、チャレンジＲＮＤおよび応答ＲＥＳＰの一部、この事例では、応答ＲＥＳＰの一部を形成する、最下位ワードである最下位バイト（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｙｔｅ、ＬＳＢ）を車両Ｖに、正確には電子制御ユニット１１に送信することができる。
【００５３】
前述したように、サーバＳ（図１では符号５０で参照される）は、この事例では、ユーザ端末２０を介して電子制御ユニット１１と通信する。
【００５４】
電子制御ユニット１１は、チャレンジＲＮＤおよび応答の部分ＬＳＢを受信し、次に、ステップＥ１８において、前述のように記憶ユニット１４に記憶された暗号鍵ＰｒＫを用いて、受信したチャレンジＲＮＤに暗号関数ｆを適用することによって、予期される応答ＲＥＳＰ’を計算し、これはＲＥＳＰ’＝ｆ（ＲＮＤ，ＰｒＫ）で表される。
【００５５】
電子制御ユニット１１は、次にステップＥ２０において、ステップＥ１８で計算された、応答ＲＥＳＰ’の部分ＬＳＢ’（受信した応答ＲＥＳＰの一部に対応し、この事例では最下位ワード）が、サーバＳから受信した応答の部分ＬＳＢと全く同一であることを確認する。
【００５６】
この同一性が確認されない場合は、電子制御ユニット１１は、ステップＥ２１を実行して、登録プロセスを終了する。実際に、これはステップＥ１４の計算に使用された暗号鍵がステップＥ１８の計算に使用されたものとは異なっていることと、したがってエラーが発生したこととを意味する（例えば、ステップＥ２において誤った車両識別名を送信したため）。また、その後エラーメッセージが、例えば、車両Ｖのユーザインターフェース１８に表示されてもよい。
【００５７】
同一性が確認された場合は、電子制御ユニット１１は、ステップＥ２２において、ステップＥ１８で計算された、応答ＲＥＳＰ’の別の部分、この事例では最上位ワードである最上位バイト（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｙｔｅ）ＭＳＢ’をサーバＳに送信する。
【００５８】
サーバＳは、応答ＲＥＳＰ’の、この他の部分ＭＳＢ’を受信し、ステップＥ２４において、ステップＥ１４で計算した応答ＲＥＳＰの部分ＭＳＢ（受信した応答ＲＥＳＰ’の部分ＭＳＢ’に対応し、この事例では最上位ワード）が、電子制御ユニット１１から受信した応答の部分ＭＳＢ’と全く同一であることを確認する。
【００５９】
この同一性が確認されない場合は、サーバはステップＥ２５を実行して、登録プロセッサを終了する。実際に、これは、サーバＳの通信相手が予期される応答を計算できておらず、おそらくはこの相手が予期した車両ではなく、したがって暗号鍵ＰｒＫを保持していないためであることを意味する。
【００６０】
通常動作では、同一性が確認されて、サーバＳと電子制御ユニット１１との間で相互認証が行われる。
【００６１】
サーバＳは、次に、ユーザＵが車両Ｖにいることを確認するコマンドＣＭＤを電子制御ユニット１１に送信することによって、登録方法を継続させる（ステップＥ２６）。
【００６２】
コマンドＣＭＤを受け取ると、電子制御ユニット１１は、ステップＥ２８において、ユーザインターフェース１８を介して、１つ以上の動作ＡＣＴを行うことをユーザＵに要求する表示の生成を制御する。
【００６３】
この表示は、視覚的な表示（例えば、光信号またはユーザインターフェース１８の画面上での表示）、ならびに／あるいは音声による表示（例えば、特定の音または声によるメッセージ）であってもよい。要求される１つ以上の動作は、物理的な鍵の使用（例えば、場合によっては同時に、物理的な鍵の１つ以上のボタンを押下する、あるいは物理的な鍵でエンジンを始動および／または停止する）、ならびに／あるいはユーザインターフェース１８のボタンを押下する、ドアを開閉する、エンジンを始動および／または停止する等の、ユーザＵの車両Ｖに対する動作を含んでもよい。
【００６４】
ユーザは、ステップＥ３０において、要求された（複数の）動作ＡＣＴを行う。
【００６５】
電子制御ユニット１１は、ステップＥ３２において、ユーザＵが行った動作が、（例えば、ユーザが動作を完了するための所定の期間をおくことによって）要求した動作ＡＣＴと完全に一致するかどうかを検知する。
【００６６】
失敗した場合（例えば、規定の時間内にユーザＵが要求された動作を行わない場合）は、電子制御ユニット１１は、ステップＥ３４を実行して、登録プロセスを終了する。また、エラーメッセージが、車両Ｖのユーザインターフェース１８に表示されてもよい。
【００６７】
しかしながら、ユーザが規定の時間内に要求された動作ＡＣＴを正しく行った場合は、登録を行うために必要な全ての条件が満たされ、ユーザ端末で車両の機能を制御するためのサービスを開始できるとみなされる。
【００６８】
なお、登録を検証するために、ユーザ端末２０が受信して表示した１回限りの使用コードを、車両１０のユーザインターフェース１８に入力する等の、他の条件を想定可能である。このような１回限りの使用コードは、例えば、いくつかの実施形態では、前述したように、ステップＥ２の識別名を入力できるようにするアプリケーションの実行中に、サーバ５０によって、公衆ネットワーク４０を介してユーザ端末２０に送信することができる。あるいは、これも先に想定したように、特に電話番号がユーザ識別名を形成しているときは、ユーザ端末２０が使用する、加入に関連付けられた電話番号（ＭＳＩＳＤＮ番号）を使用して（例えば、ショートメッセージすなわちＳＭＳ（「Ｓｈｏｒｔ  Ｍｅｓｓａｇｅ  Ｓｙｓｔｅｍ」の略）の形式で）、この１回限りの使用コードをユーザ端末２０に送信することができる。この場合は、サーバ５０は、電話ネットワークを通じてデータを送信するように設計される。
【００６９】
次に、前述のように、記憶ユニット１４に記憶された構成情報を使用して、電子制御ユニット１１内でカウンタが開始され、この事例で述べる実施形態では、カウンタは、初期値Ｉに初期化されて、周期Ｐで周期的に増分される（ステップＥ３６）。カウンタが所与のビット数にわたって記憶されるときは、カウンタが増分して最大値（カウンタのビット数によって決まる）のオーバーフローを引き起こした際は、ゼロにリセットされる。
【００７０】
電子制御ユニット１１は、サーバＳに、（電子制御ユニット１１の要求でユーザが行った動作ＡＣＴによって）ユーザの存在が検知されたことと、したがってサービスを開始できることを示すメッセージをさらに送信する（ステップＥ３８）。
【００７１】
このメッセージを受信して、サーバＳもまた、車両識別名ＶＩＮに関連付けて、かつ電子制御エンティティ１１の通し番号Ｎに関連付けて記憶された構成情報に基づいてカウンタを開始し（ステップＥ４０）、この事例では構成情報は、初期値Ｉおよびカウンタの増分の周期Ｐである。
【００７２】
したがってカウンタは、電子制御ユニット１１に記憶されたカウンタと、サーバ５０に記憶されたカウンタとのギャップが、おそらくは非常に小さい状態で（特に、ステップＥ３６とＥ４０とを隔てている期間が短いことにより）、制御ユニット１１内とサーバＳ内とで同時に進行するが、これが弊害をもたらすことはない。
【００７３】
次に、サーバＳは、サービスへの本登録を決定し、このために、サービスの加入者を記憶する領域に、ユーザ識別名ＵＩＤ、車両識別名ＶＩＤ、ならびにカウンタが使用される場合は、カウンタの現在の値（周期Ｐで周期的に増加する）、および場合によっては通し番号Ｎを、関連付けて記憶することができる（ステップＥ４２）。関連付けて記憶されたユーザ識別名ＵＩＤと、車両識別名ＶＩＤとは、提示されたサービスに対する、車両の所有権の電子証明とみなすことができる。
【００７４】
サーバＳは、次に、例えば、ユーザ端末２０に仮想鍵ＶＫを送信することによって、車両の機能を制御するサービスへのアクセス権をユーザＵに伝達し、仮想鍵ＶＫは、以降の例で示すように、ユーザ端末２０がこのような機能（例えば、車両のドアを開ける）を制御することを許可する。仮想鍵ＶＫは、ユーザ端末２０に記憶される（ステップＥ４４）。実際に、仮想鍵ＶＫは、事前にユーザ端末２０のメモリ２４にダウンロードされ、ユーザ端末２０のプロセッサ２２によって実行可能なアプリケーション、例えば、先に想定したように、ステップＥ２を実行するアプリケーションに、サーバ５０から送信することができる。あるいは、仮想鍵ＶＫは、これも先に想定したように、特に電話番号がユーザ識別名を形成しているときは、ユーザ端末２０が使用する、加入に関連付けられた電話番号（ＭＳＩＳＤＮ番号）を使用して、ユーザ端末２０に送信されてもよい。
【００７５】
この事例で述べる実施形態では、仮想鍵ＶＫは、例えば、後述するように構成された一時鍵であり、車両貸出業者の職員が、この車両が実際に貸し出されるのを待つ間に、車両にアクセスできるようにする。
【００７６】
図４は、（図１では符号２０で参照されるタイプの）ユーザ端末Ｔで、車両Ｖ（図１では符号１０で参照される）の機能を制御する方法の例の主なステップを示す。
【００７７】
必然的に、後述するステップ以外のステップが、車両１０の電子制御ユニット１１と、ユーザ端末２０との間に通信チャネルを確立するために、特に前もって実際に実行され得る。
【００７８】
この事例で述べる制御方法は、車両Ｖが、予め定められた期間でユーザに貸し出される場合に、特によく適合する。
【００７９】
このために一時仮想鍵ＶＫが使用され、これは、貸出期間開始時のカウンタ（前述したように、車両Ｖの電子制御ユニット１１と、サーバＳとに並行して取り付けられる）の値ＮＢ１と、貸出期間終了時のカウンタの値ＮＢ２とを考慮して導出される。
【００８０】
仮想鍵ＶＫを生成するために、サーバＳは、例えば、車両貸出業者から、車両識別名ＶＩＮ、貸出開始時間および貸出終了時間を受信し、記憶ユニット１４で読み出されたカウンタの構成情報に基づいて、対象の電子制御ユニット１１（その通し番号Ｎは、例えば、図３の方法に従って、受信した車両識別名ＶＩＮに関連付けられている）に配置され、貸出開始時間に対応するカウンタの値ＮＢ１と、貸出終了時間に対応する、このカウンタの値ＮＢ２とを決定する。
【００８１】
次に、（前述のように、通し番号Ｎに関連付けて記憶された）ルート鍵ＭＫ、開始値ＮＢ１および終了値ＮＢ２を使用して、例えば、これらの要素に導出関数ｇを適用することによって仮想鍵ＶＫが生成され、これは、ＶＫ＝ｇ（ＭＫ，ＮＢ１，ＮＢ２）で表される。
【００８２】
サーバＳは、次に、ユーザ（車両を借りる人物）の通常端末Ｔ（例えば携帯電話）に、例えば、この通常端末Ｔが本当にサービスを受ける資格があることを（ＩＭＥＩ番号および／またはＭＳＩＳＤＮ番号等の、端末に関連付けられた加入者番号等の端末の識別名に基づいて）確認するステップの後に、仮想鍵ＶＫおよび値ＮＢ１、ＮＢ２を送信し、仮想鍵ＶＫおよび値ＮＢ１、ＮＢ２は、その後端末Ｔ内に記憶される。（なお、この事例で使用される端末Ｔは、したがって通常は、図３の状況で使用されるものではない。）
【００８３】
その後、端末Ｔで車両Ｖの機能を制御することが可能になる。
【００８４】
このために、ステップＥ１０２において、端末Ｔは、開始値ＮＢ１および終了値ＮＢ２と共に、機能を実行する要求を車両Ｖの電子制御ユニット１１に送信する（ステップＥ１０２）。
【００８５】
電子制御ユニット１１は、次に、ステップＥ１０４において、使用するカウンタの現在の値が、本当に値ＮＢ１と値ＮＢ２との間にあることを確認する（これは、前述した値ＮＢ１およびＮＢ２の構成によれば、現在の時点が貸出期間内であることを意味する）。
【００８６】
そうでない場合は、電子制御ユニット１１は、ステップＥ１０６において、要求された機能を行うことなく（すなわち、この場合は車両Ｖのドアをロック解除することなく）、この方法を終了する。対応する表示を端末Ｔに表示させるために、場合によっては失敗のメッセージを端末Ｔに送信してもよい。
【００８７】
ステップＥ１０４において、肯定的な確認が行われた場合は、この方法はステップＥ１０８に進み、電子制御ユニット１１は、（前述のように記憶ユニット１４に記憶された）ルート鍵ＭＫ、開始値ＮＢ１および終了値ＮＢ２に基づいて、前述のようにサーバＳで行われたのと同じ計算によって、この場合はこれらの要素に導出関数ｇを適用することによって、仮想鍵ＶＫを計算し、この事例では、電子制御ユニット１１は、ＶＫ＝ｇ（ＭＫ，ＮＢ１，ＮＢ２）を計算する。
【００８８】
電子制御ユニット１１は、次に、ステップＥ１１０において、乱数ＲＮＤ’等のチャレンジを生成し、このチャレンジをユーザ端末Ｔに送信する。
【００８９】
ユーザ端末Ｔは、ステップＥ１１２において、このチャレンジを受信する。
【００９０】
ステップＥ１１４において、ユーザ端末Ｔ（すなわち、実際にはそのプロセッサ）は、（前述したように、前もってサーバＳから受信した）仮想鍵ＶＫを用いて、受信したチャレンジＲＮＤ’に暗号関数ｈを適用して応答Ｒを取得し、これは、Ｒ＝ｈ（ＲＮＤ’，ＶＫ）で表される。他のデータ、例えば、車両識別名ＶＩＮを、場合によっては、このステップで行う計算に使用することができる。
【００９１】
同時に、電子制御ユニットは、ステップＥ１１５において、その一部に対して、予期される応答を取得するために、（通常動作において）同じ計算を行い、この事例では、Ｒ’が、この計算の結果として示され、これはＲ’＝ｈ（ＲＮＤ’，ＶＫ）で表される。
【００９２】
ユーザ端末Ｔは、（ステップＥ１１４で計算された）予期される応答Ｒを電子制御ユニット１１に送信する（ステップＥ１１６）。
【００９３】
電子制御ユニット１１は、次にステップＥ１１８において、ユーザ端末Ｔから受信した応答Ｒが、予期される応答Ｒ’と本当に同一であることを確認し、この端末において、電子制御ユニット１１は、ユーザ端末Ｔは、車両へのアクセス権を与える仮想鍵ＶＫを本当に保持しているとみなすことができる。
【００９４】
ステップＥ１１８において、確認に失敗した場合（前述した通常の動作ではなく、おそらくは悪意ある人物が、仮想鍵ＶＫを知ることなく車両にアクセスしようとしている場合）は、電子制御ユニット１２０は、ステップＥ１２０において、要求された機能を行うことなく（すなわち、この場合は車両Ｖのドアをロック解除することなく）、この方法を終了する。対応する表示を端末Ｔに表示させるために、場合によっては失敗のメッセージを端末Ｔに送信してもよい。
【００９５】
ステップＥ１１８において、ユーザ端末Ｔから受信した応答Ｒと、電子制御ユニット１１によって計算された予期される応答Ｒ’とが、同一であることが確認されたときに、ステップＥ１２２が実行され、このステップでは、電子制御ユニットは、アクチュエータ１５に（あるいは、車両の始動の場合はアクチュエータ１７に）、対応するコマンドを送信することによって、要求された機能、この場合は車両のドアのロック解除を行う。
【００９６】
直前に述べた例では、簡単な認証が使用されるが、例えば、所望される機能が車両の始動であるときは、代替的に相互認証を使用することが可能である。
【００９７】
図５は、前述において使用されたカウンタを再同期する方法の例の、主なステップを示す。
【００９８】
このような再同期は、動作の不具合が検知されたとき、またはサービスが中断されたときに必要であり、例えば、バッテリが供給する電力が喪失して、新しいバッテリに交換した場合がこれに相当する。
【００９９】
この事例で述べた方法は、後述するように、サーバ５０（図５ではＳで参照される）と、車両１０（図５ではＶで参照される）、またはより正確には電子制御ユニット１１との間のデータの交換を必要とする。このようなデータの交換は、前述のように、（図１〜図３を参照して既に示した手順に従って）ユーザ端末２０を介して、あるいはその代わりに、電子制御ユニット１１が携帯電話ネットワーク３０に直接アクセスすることによって可能になる。
【０１００】
不具合が検知されたとき（例えば、車両１０のバッテリからの電力供給が喪失した場合は、電源の回復時に不具合が検知される）、また場合によっては、車両のユーザが、ユーザ端末で車両の機能を制御できるように回復させることを要求したときに、図５の方法が開始される。
【０１０１】
この方法は、ステップＥ２００において、電子制御ユニット１１が、サーバＳに、場合によっては車両の状態表示を伴う同期要求を送信することによって開始される。
【０１０２】
この要求を受け取ると、サーバＳは、乱数ＲＮＤ’’等のチャレンジを生成する（ステップＥ２０２）。
【０１０３】
サーバＳは、次に、ステップＥ２０４において、暗号鍵ＰｒＫを用いて、暗号関数ｆ（例えば、図２を参照して前述したように、登録に必要な相互認証中に使用される）を適用することによって、このチャレンジＲＮＤ’’に関連付けられた応答ＲＥＳＰ’’を計算し、これは、ＲＥＳＰ’’＝ｆ（ＲＮＤ’’，ＰｒＫ）で表すことができる。
【０１０４】
サーバＳは、したがって、ステップＥ２０６において、チャレンジＲＮＤ’’および応答ＲＥＳＰ’’の一部、この事例では、応答ＲＥＳＰ’’の一部を形成する、最下位ワードＬＳＢ’’を車両Ｖに、正確には電子制御ユニット１１に送信することができる。
【０１０５】
電子制御ユニット１１は、チャレンジＲＮＤ’’および応答の部分ＬＳＢを受信し、次に、ステップＥ２０８において、前述のように記憶ユニット１４に記憶された暗号鍵ＰｒＫを用いて、受信したチャレンジＲＮＤ’’に暗号関数ｆを適用することによって、応答ＲＥＳＰ’’を計算し、これはＲＥＳＰ’’’＝ｆ（ＲＮＤ’’，ＰｒＫ）で表される。
【０１０６】
電子制御ユニット１１は、次にステップＥ２１０において、ステップＥ２０８で計算された、応答ＲＥＳＰ’’’の部分ＬＳＢ’’’（受信した応答ＲＥＳＰ’’の一部に対応し、この事例では最下位ワード）が、サーバＳから受信した応答の部分ＬＳＢ’’と全く同一であることを確認する。
【０１０７】
この同一性が確認されない場合は、電子制御ユニット１１は、ステップＥ２１２を実行して、再同期プロセスを終了する。
【０１０８】
同一性が確認された場合は、電子制御ユニット１１は、ステップＥ２１４において、ステップＥ２０８で計算された応答ＲＥＳＰ’’’の別の部分、この事例では最上位ワードＭＳＢ’’’をサーバＳに送信する。
【０１０９】
サーバＳは、応答ＲＥＳＰ’’’からこの他の部分ＭＳＢ’’’を受信し、ステップＥ２１６において、ステップＥ２０４で計算した応答ＲＥＳＰ’’の部分ＭＳＢ’’（受信した応答ＲＥＳＰ’’’の部分ＭＳＢ’’’に対応し、この事例では最上位ワード）が、電子制御ユニット１１から受信した応答の部分ＭＳＢ’’’と全く同一であることを確認する。
【０１１０】
この同一性が確認されない場合は、サーバはステップＥ２１８を実行して、同期プロセッサを終了する。実際に、これは、サーバＳの通信相手が予期される応答を計算できておらず、おそらくはこの相手が予期した車両ではなく、したがって暗号鍵ＰｒＫを保持していないためであることを意味する。
【０１１１】
通常動作では、同一性が確認されて、サーバＳと電子制御ユニット１１との間で相互認証が行われる。
【０１１２】
サーバＳは、次に、電子制御ユニット１１内に記憶されたカウンタの値ＣＶおよびカウンタの状態（カウントが進行中であるか、あるいは停止しているか）を伝達する要求を電子制御ユニット１１に送信することによって（ステップＥ２２０）、再同期方法を継続させる。
【０１１３】
電子制御ユニット１１は、この要求を受信し、その結果として、ステップＥ２２２において、カウンタの値ＣＶおよびカウンタの状態（カウントが進行中／停止中）をサーバＳに送信する。
【０１１４】
サーバＳは、この情報を受信して、ステップＥ２２４において、カウンタが停止しているかどうか、あるいは受信した値ＣＶが、サーバＳ内に記憶されたカウンタの値ＣＳと異なっているかどうかを、所定の閾値ｄよりも差が大きい（すなわち、｜ＣＶ−ＣＳ｜＞ｄで、｜ｘ｜はｘの絶対値）ことから判定することができる。
【０１１５】
これらの条件が、いずれも確認されない場合（すなわち、受信した状態が、カウンタが作動していることを示し、サーバ内に記憶されたカウンタＣＳと、電子制御ユニット内に記憶されたカウンタＣＶとの差が許容可能なとき）は、再同期は不必要とみなされ、この方法は、後述するステップＥ２３０に直接進む。
【０１１６】
これらの条件のうちの１つが確認された場合（すなわち、カウンタが停止している、あるいは受信した値ＣＶが、サーバＳ内に記憶されたカウンタの値ＣＳと異なっており、所定の閾値ｄよりも差が大きい場合）は、サーバＳは、カウンタを値ＣＳ（サーバＳ内に記憶されたカウンタの現在の値）にリセットして、カウンタを開始するコマンドを電子制御ユニットに送信する（ステップＥ２２６）。
【０１１７】
電子制御ユニット１１は、このコマンドを受信して、ステップＥ２２８において、受信した値ＣＳに初期化してから、記憶しているカウンタを開始する。電子制御ユニット１１は、次に、カウンタの開始を確認するメッセージを送信する。
【０１１８】
この確認メッセージを受け取ると、サーバＳは、ステップＥ２３０を実行し、再同期方法を終了する。カウンタは、前述のように、周期Ｐでの周期的な増分によって、サーバＳと、車両Ｖの電子制御ユニット１１とで同時に増分される。
【０１１９】
考えられる代替案によれば、サーバＳから電子制御ユニット１１に送信された値は、再同期には使用されず、電子ユニットの製造中に、記憶ユニット１４に入力された値（初期値Ｉ、増分周期Ｐ）が使用される。この場合は、サーバおよび電子エンティティでのそれぞれの同期において、カウンタは、記憶ユニット１４に記憶された初期値Ｉで初期化される。
【図１】
0006728185.tif 000002
【図２】
0006728185.tif 000003
【図３】
0006728185.tif 000004
【図４】
0006728185.tif 000005
【図５】
0006728185.tif 000006