(57)【要約】  システムは、第１のリンクキーデータパケットを生成するセンサと、車両（３０）の制御モジュールを（２０）を備える。制御モジュールは、第２のリンクキーデータパケットを生成し、センサは、制御モジュールとセンサを電気的に結合する配線リンクを使用して、信号情報を制御モジュールに通信するように構成される。信号情報は、無線通信リンクを介して送信される通信信号の特性に対応する情報を含む。
2021516921.tif 000002
【特許請求の範囲】
【請求項１】
第１のリンクキーデータパケットを生成するように構成されたセンサと、
車両（３０）の制御モジュール（２０）と、
制御モジュールは、第２のリンクキーデータパケットを生成するように構成され、
（ｉ）第１のリンクキーデータパケットの第１の認証応答が第２のリンクキーデータパケットの第２の認証応答と整合すること、および（ｉｉ）ユーザデバイス（１０）が無線通信リンク（５０）によって制御モジュールの通信ゲートウェイ（２９）に接続されることに応じて、センサは、制御モジュールとセンサを電気的に結合する配線リンクを使用して、信号情報を制御モジュールに通信するように構成され、信号情報は、無線通信リンクを介して送信される通信信号の特性に対応する情報を含むシステム。
【請求項２】
第１の認証応答は、第１のプレリンクキーと制御モジュールのランダムチャレンジ値に基づいて生成される請求項１に記載のシステム。
【請求項３】
第１のプレリンクキーは、ユーザがセンサとユーザデバイスの少なくとも１つのインターフェース（４５）でＰＩＮを入力することに応じて生成される請求項２に記載のシステム。
【請求項４】
制御モジュールのランダムチャレンジ値は、制御モジュールによって生成される乱数である請求項２または３に記載のシステム。
【請求項５】
センサは、第１のプレリンクキーとランダムチャレンジ値に対して暗号化処理を実行することにより、第１の認証応答を生成する請求項２乃至４のいずれか１項に記載のシステム。
【請求項６】
第２の認証応答は、第２のプレリンクキーとＩＤ値に基づいて生成される請求項１乃至５のいずれか１項に記載のシステム。
【請求項７】
ＩＤ値は、複数のセンサからセンサを一意に識別するように構成される請求項６に記載のシステム。
【請求項８】
制御モジュールは、第２のプレリンクキーとＩＤ値に対して暗号化処理を実行することにより、第２の認証応答を生成する請求項６または７に記載のシステム。
【請求項９】
未承認デバイス（６０）が制御モジュールに電気的に結合されることを示す第１の認証応答に応じて、制御モジュールは、ユーザデバイスにメッセージを送信するように構成され、メッセージは、未承認デバイスが制御モジュールと通信しようとしていることを示す請求項１乃至８のいずれか１項に記載のシステム。
【請求項１０】
配線リンクは、ローカル相互接続ネットワーク（ＬＩＮ）を含み、無線通信リンクはブルートゥースローエナジー（ＢＬＥ）通信リンクである請求項１乃至９のいずれか１項に記載のシステム。
【請求項１１】
センサを使用して、第１のリンクキーデータパケットを生成すること、
車両（３０）の制御モジュール（２０）を使用して、第２のリンクキーデータパケットを生成すること、
制御モジュールは、非一時的メモリに格納された命令を実行するように構成される少なくとも１つのプロセッサを含み、
制御モジュールを使用して、第１のリンクキーデータパケットの第１の認証応答が第２のリンクキーデータパケットの第２の認証応答と整合するかどうかを判定すること、
制御モジュールを使用して、ユーザデバイス（１０）が無線通信リンク（５０）によって制御モジュールの通信ゲートウェイ（２９）に接続されているかどうかを判定すること、
（ｉ）第１の認証応答が第２の認証応答と整合すること、および（ｉｉ）ユーザデバイスが無線通信リンクによって制御モジュールの通信ゲートウェイに接続されることに応じて、センサを使用して、制御モジュールとセンサを電気的に結合する配線リンクを使用し、信号情報を制御モジュールに通信すること、を備え、信号情報は、無線通信リンクを介して送信される通信信号の特性に対応する情報を含む方法。
【請求項１２】
センサを使用して、第1のプレリンクキーと制御モジュールのランダムチャレンジ値に基づいて第1の認証応答を生成することをさらに備える請求項１１に記載の方法。
【請求項１３】
センサを使用して、ユーザがセンサとユーザデバイスの少なくとも１つのインターフェース（４５）でＰＩＮを入力することに応じて、第1のプレリンクキーを生成することをさらに備える請求項１２に記載の方法。
【請求項１４】
制御モジュールのランダムチャレンジ値は、制御モジュールによって生成される乱数である請求項１２または１３に記載の方法。
【請求項１５】
センサを使用して、第１のプレリンクキーとランダムチャレンジ値に対して暗号化処理を実行することにより、第１の認証応答を生成することをさらに備える請求項１２乃至１４のいずれか１項に記載の方法。
【請求項１６】
制御モジュールを使用して、第２のプレリンクキーとＩＤ値に基づいて第２の認証応答を生成することをさらに備える請求項１１乃至１５のいずれか１項に記載の方法。
【請求項１７】
ＩＤ値は、複数のセンサ（３１）からセンサを一意に識別するように構成される請求項１６に記載の方法。
【請求項１８】
制御モジュールを使用して、第２のプレリンクキーとＩＤ値に対して暗号化処理を実行することにより、第２の認証応答を生成することをさらに備える請求項１６または１７に記載の方法。
【請求項１９】
未承認デバイス（６０）が制御モジュールに電気的に結合されることを示す第１の認証応答に応じて、制御モジュールを使用して、ユーザデバイスにメッセージを送信し、メッセージは、未承認デバイスが制御モジュールと通信しようとしていることを示す請求項１１乃至１８のいずれか１項に記載の方法。
【請求項２０】
配線リンクは、ローカル相互接続ネットワーク（ＬＩＮ）を含み、無線通信リンクはブルートゥースローエナジー（ＢＬＥ）通信リンクである請求項１１乃至１９のいずれか１項に記載の方法。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本出願は、２０１８年３月２８日に出願された米国仮出願番号６２／６４８９８７と、２０１９年３月２０日に出願された米国特許出願番号１６／３５９１１６の利益を主張する。上記の出願の開示全体が、参照によって本明細書に組み入れられる。
【技術分野】
【０００２】
本開示は、未承認デバイスがパッシブエントリ／パッシブスタートシステムを攻撃することを防ぐためのシステムおよび方法に関し、より具体的には、未承認デバイスが、ＬＩＮバス通信システムやＣＡＮバス通信システムなどの車両通信バスシステムに侵入することによって、パッシブエントリパッシブスタートシステムを攻撃することを防ぐためのシステムおよび方法に関する。
【背景技術】
【０００３】
この欄は、必ずしも公知技術に該当しない、本開示に関連する背景情報を提供する。
【０００４】
従来、キーレスエントリシステムを含む車両システムである、パッシブエントリ／パッシブスタート（ＰＥＰＳ）システムは、事前に車両の中央ＰＥＰＳ電子制御装置（ＥＣＵ）とペアリングされたキーフォブの所有者が、単にドアハンドルを掴むことによって車両へアクセスすること、および、ボタンをプッシュすることで車両を始動することを可能にする。ボタンプッシュに応答して、中央ＰＥＰＳ ＥＣＵは、キーフォブが車両にアクセスする権限を与えられているかどうかを判定してキーフォブを認証し、複数の車両アンテナによって示される信号強度を使用して、キーフォブの位置を推定する。キーフォブが認証され、認可しているゾーン内に位置する場合、車両の機能がユーザに利用可能にされる（例えば、ドアがアンロックされ、または、車両が始動される）。
【０００５】
しかし、従来のＰＥＰＳシステムは、ＰＥＰＳシステムが悪意のある攻撃を受ける可能性のある物理的な脆弱性を含んでいる。一例として、ユーザは、デバイスを車載診断（ＯＢＤ−ＩＩ）ポートに接続することにより、ＰＥＰＳシステムを攻撃する可能性がある。デバイスを使用して、ユーザは、車両のコントローラエリアネットワーク（ＣＡＮ）および／またはローカル相互接続ネットワーク（ＬＩＮ）の信号を操作し、および／または信号を注入すると、それにより、ユーザに車両の機能をアクティブ／非アクティブ化する能力が与えられる。別の例として、ユーザはコンパクトディスク（ＣＤ）プレーヤと車両のパススルーデバイスを介してＰＥＰＳシステムを攻撃する可能性がある。具体的には、ユーザは車両のＣＤプレーヤにＣＤを挿入し、そのＣＤは、例えばWindows Media Audio（ＷＡＮ）またはＭＰＥＧ−３オーディオ（ＭＰ３）ファイルを実行しつつ、車両のＣＡＮおよび／またはＬＩＮに別個に信号を注入する命令を含む可能性がある。
【０００６】
さらに、従来のＰＥＰＳシステムは、ＰＥＰＳシステムが悪意のある攻撃を受ける可能性のある無線の脆弱性を含んでいる。一例として、ユーザは、受動的盗聴、中間者（ＭＩＴＭ）攻撃、およびＰＥＰＳシステムの様々なテレメトリックリンクのＩＤ追跡によって、ＰＥＰＳシステムを攻撃する可能性がある。 
【発明の概要】
【０００７】
この欄は、開示の概要を提供するが、その全範囲またはその全特徴の包括的な開示ではない。
【０００８】
本開示は、第１のリンクキーデータパケットを生成するように構成されたセンサを含むシステムを提供する。システムは、車両の制御モジュールを含み、制御モジュールは、第２のリンクキーデータパケットを生成するように構成される。（ｉ）第１のリンクキーデータパケットの第１の認証応答が第２のリンクキーデータパケットの第２の認証応答と整合すること、および（ｉｉ）ユーザデバイスが無線通信リンクによって制御モジュールの通信ゲートウェイに接続されることに応じて、センサは、制御モジュールとセンサを電気的に結合する配線リンクを使用して、信号情報を制御モジュールに通信するように構成される。信号情報は、無線通信リンクを介して送信される通信信号の特性に対応する情報を含む。
【０００９】
いくつかの構成では、第１の認証応答は、第１のプレリンクキーと制御モジュールのランダムチャレンジ値に基づいて生成される。
【００１０】
いくつかの構成では、第１のプレリンクキーは、ユーザがセンサとユーザデバイスの少なくとも１つのインターフェースでＰＩＮを入力することに応じて生成される。
【００１１】
いくつかの構成では、制御モジュールのランダムチャレンジ値は、制御モジュールによって生成される乱数である。
【００１２】
いくつかの構成では、センサは、第１のプレリンクキーとランダムチャレンジ値に対して暗号化処理を実行することにより、第１の認証応答を生成する。
【００１３】
いくつかの構成では、第２の認証応答は、第２のプレリンクキーとＩＤ値に基づいて生成される。
【００１４】
いくつかの構成では、ＩＤ値は、複数のセンサからセンサを一意に識別するように構成される。
【００１５】
いくつかの構成では、制御モジュールは、第２のプレリンクキーとＩＤ値に対して暗号化処理を実行することにより、第２の認証応答を生成する。
【００１６】
いくつかの構成では、未承認デバイスが制御モジュールに電気的に結合されることを示す第１の認証応答に応じて、制御モジュールは、ユーザデバイスにメッセージを送信するように構成される。メッセージは、未承認デバイスが制御モジュールと通信しようとしていることを示す。
【００１７】
いくつかの構成では、配線リンクは、ローカル相互接続ネットワーク（ＬＩＮ）を含み、無線通信リンクはブルートゥースローエナジー（ＢＬＥ）通信リンクである。
【００１８】
さらに、本開示は、センサを使用して、第１のリンクキーデータパケットを生成することを含む方法を提供する。方法は、車両の制御モジュールを使用して、第２のリンクキーデータパケットを生成することを含み、制御モジュールは、非一時的メモリに格納された命令を実行するように構成される少なくとも１つのプロセッサを含む。方法は、制御モジュールを使用して、第１のリンクキーデータパケットの第１の認証応答が第２のリンクキーデータパケットの第２の認証応答と整合するかどうかを判定することをさらに含む。この方法は、制御モジュールを使用して、ユーザデバイスが無線通信リンクによって制御モジュールの通信ゲートウェイに接続されているかどうかを判定することをさらに含む。この方法は、（ｉ）第１の認証応答が第２の認証応答と整合すること、および（ｉｉ）ユーザデバイスが無線通信リンクによって制御モジュールの通信ゲートウェイに接続されることに応じて、センサを使用して、制御モジュールとセンサを電気的に結合する配線リンクを使用し、信号情報を制御モジュールに通信することをさらに含む。信号情報は、ＢＬＥ通信リンクを介して送信される通信信号の特性に対応する情報を含む。
【００１９】
いくつかの構成では、方法は、センサを使用して、第1のプレリンクキーと制御モジュールのランダムチャレンジ値に基づいて第1の認証応答を生成することを含む。
【００２０】
いくつかの構成では、方法は、センサを使用して、ユーザがセンサとユーザデバイスの少なくとも１つのインターフェースでＰＩＮを入力することに応じて、第1のプレリンクキーを生成することをさらに含む。
【００２１】
いくつかの構成では、制御モジュールのランダムチャレンジ値は、制御モジュールによって生成される乱数である。
【００２２】
いくつかの構成では、方法は、センサを使用して、第１のプレリンクキーとランダムチャレンジ値に対して暗号化処理を実行することにより、第１の認証応答を生成することをさらに含む。
【００２３】
いくつかの構成では、方法は、制御モジュールを使用して、第２のプレリンクキーとＩＤ値に基づいて第２の認証応答を生成することをさらに含む。
【００２４】
いくつかの構成では、ＩＤ値は、複数のセンサからセンサを一意に識別するように構成される。
【００２５】
いくつかの構成では、方法は、制御モジュールを使用して、第２のプレリンクキーとＩＤ値に対して暗号化処理を実行することにより、第２の認証応答を生成することをさらに含む。
【００２６】
いくつかの構成では、方法は、未承認デバイスが制御モジュールに電気的に結合されることを示す第１の認証応答に応じて、制御モジュールを使用して、ユーザデバイスにメッセージを送信することをさらに含む。メッセージは、未承認デバイスが制御モジュールと通信しようとしていることを示す。
【００２７】
いくつかの構成では、配線リンクは、ローカル相互接続ネットワーク（ＬＩＮ）を含み、無線通信リンクはブルートゥースローエナジー（ＢＬＥ）通信リンクである。
【００２８】
さらなる適用可能範囲は、本明細書の説明から明らかとなろう。本概要の説明および特定の例は例示の目的だけを意図しており、本開示の範囲を限定することを意図していない。
【図面の簡単な説明】
【００２９】
本明細書で説明される図面は、選択された実施形態を図示する目的のためだけのものであり、全ての可能な実施例ではなく、また、本開示の範囲を限定することを意図するものでもない。
【図１】図１は、本開示によるＰＥＰＳシステムを備えた対象車両を示す。
【図２】図２は、本開示によるＰＥＰＳシステムのブロック図を示す。
【図３】図３は、本開示によるＰＥＰＳシステムのセンサのブロック図を示す。
【図４】本開示によるＰＥＰＳシステムの通信ゲートウェイを示す。
【図５Ａ】図５Ａは、本開示による、ＰＥＰＳシステムを備えた対象車両と、未承認デバイスを示す。
【図５Ｂ】図５Ｂは、本開示による、ＰＥＰＳシステムを備えた対象車両と、未承認デバイスを示す。
【図６】本開示によるＰＥＰＳシステムの各センサの複数のリンクキーを示す。
【図７】本開示によるリンクキーを生成するための例示的なアルゴリズムのフローチャートを示す。
【図８】本開示による未接続のセンサをペアリングするための例示的なアルゴリズムのフローチャートを示す。  複数の図面にわたって、対応する参照番号は、対応する部分を示す。
【発明を実施するための形態】
【００３０】
次に、添付の図面を参照して、例示的な実施形態がより詳細に説明される。
【００３１】
本開示は、例えば、ブルートゥースコンソーシアムの標準仕様に基づくコンシューマグレード無線プロトコルのような、コンシューマグレードの無線プロトコルを使用する、ＰＥＰＳシステムのような、位置特定システムを実現するためのシステム、方法、およびアーキテクチャに関する。具体的には、本開示は、車両と、スマートフォンまたはウェアラブルデバイスなどのＢＬＥ対応ユーザデバイスとの間の通信のため、ブルートゥースローエナジー（ＢＬＥ）通信プロトコルを使用するＰＥＰＳシステムに関する。具体的には、ＰＥＰＳシステムは、ユーザデバイスと車両との間の現存する接続を見つけ出し、ユーザデバイスと車両との間の通信のタイミングおよび信号特性を測定するように構成されたセンサネットワークを含む。さらに、ＰＥＰＳシステムは、センサネットワークによって測定された物理的特性を収集する制御モジュールも含む。物理的特性に基づいて、制御モジュールはユーザデバイスの位置を決定することができる。あるいは、本開示は、ブルートゥースまたはＢＬＥを使用して無線通信接続を確立することを説明するが、本明細書で説明するシステムおよび方法は、Ｗｉ−Ｆｉ、Ｗｉ−Ｆｉダイレクト、超広帯域（ＵＷＢ）通信、および／またはインパルス無線（ＩＲ）ＵＷＢ通信などの他の無線通信プロトコルで使用され得る。
【００３２】
さらに、センサネットワークの各センサは、配線接続を介して制御モジュールと通信することができる。その上、センサネットワークのセンサと制御モジュール間の通信のセキュリティを強化するために、各々のセンサはリンクキーに関連付けられ、対応するリンクキーが制御モジュールのリンクキーに一致する場合に、制御モジュールは、各々のセンサからの通信を受信する。
【００３３】
図１および図２を参照すると、位置特定システムとも言及され得るＰＥＰＳシステム１は、車両３０内に設けられ、通信ゲートウェイ２９、まとめてセンサ３１と呼ばれる、複数のセンサ３１Ａ〜３１Ｆを含む。ＰＥＰＳシステム１は、制御モジュール２０を含む。追加的にまたは代替的に、ＰＥＰＳシステムは車両３０全体に分散された複数の制御モジュール２０を含み、例えば、車両インターフェース４５を介して互いに通信することができる。さらに、いくつかの制御モジュール２０は、単一の電子制御ユニット（ＥＣＵ）に統合されてもよく、または車両インターフェース４５を使用して互いに通信することができる。車両インターフェース４５は、例えば、メインモジュール間の通信のためのコントローラエリアネットワーク（ＣＡＮ）バス、および／または、センサ３１間の通信のためのローカル相互接続ネットワーク（ＬＩＮ）などのより低いデータレート通信を含むことができる。車両インターフェース４５はまた、クロック拡張周辺インターフェース（ＣＸＰＩ）バスを含むことができる。追加的または代替的に、車両インターフェース４５は、ＣＡＮバス、ＬＩＮ、およびＣＸＰＩバス通信インターフェースの組み合わせを含むことができる。センサ３１の構造は、図３を参照して以下でさらに詳細に論じられる。
【００３４】
制御モジュール２０は、読み取り専用メモリ（ＲＯＭ）および／またはランダムアクセスメモリ（ＲＡＭ）などの非一時的メモリに格納された命令を実行するように構成された１つ以上のプロセッサも含むことができる。
【００３５】
制御モジュール２０は、例えば、アンテナ１９に接続されたＢＬＥチップセット２１を含む通信ゲートウェイ２９を含むことができる。図２に示すように、アンテナ１９は、車両３０内に配置されてもよい。あるいは、アンテナ１９は、車両３０の外部、または制御モジュール２０内に配置されてもよい。制御モジュール２０は、通信リンク５０を介した通信のためにユーザデバイス１０を認証するリンク認証モジュール２２も含むことができる。制御モジュール２０は、プッシュデータのためのデータ管理層２３も含むことができる。制御モジュール２０は、接続情報配信モジュール２４も含むことができる。制御モジュール２０は、タイミング制御モジュール２５も含むことができる。制御モジュール２０は、全地球測位システム（ＧＰＳ）モジュールおよび／または他のナビゲーションまたはロケーションモジュールなどのテレマティクスモジュール２６も含むことができる。制御モジュール２０は、ＰＥＰＳモジュール２７も含むことができる。制御モジュール２０は、ボディ制御モジュール２８も含むことができる。制御モジュール２０は、センサ処理および位置特定モジュール３２も含むことができる。制御モジュール２０は、セキュリティフィルタリングモジュール３３も含むこともできる。
【００３６】
図１および図２に示すように、ユーザデバイス１０は、通信リンク５０を介して車両３０の通信ゲートウェイ２９と通信することができる。限定するものではないが、ユーザデバイス１０は、スマートフォン、スマートウォッチ、ウェアラブル電子デバイス、キーフォブ、タブレットデバイス、または車両３０の所有者、運転者、乗員、および／または車両３０の整備士などの車両３０のユーザと関連付けられた他のデバイスなど、任意のブルートゥース対応通信デバイスとすることができる。上記のように、Ｗｉ−Ｆｉ、Ｗｉ−Ｆｉダイレクト、ＵＷＢ、および/またはＩＲＵＷＢなどの他の無線通信プロトコルを、ブルートゥースまたはＢＬＥの代わりに使用することができる。ユーザデバイス１０は、アンテナ１３に接続されたＢＬＥチップセット１１を含むことができる。ユーザデバイス１０は、読み取り専用メモリ（ＲＯＭ）やランダムアクセスメモリ（ＲＡＭ）などのコンピュータ読み取り可能な記憶モジュールまたはデバイスに保存されたアプリケーションソフトウェア１２も含むことができる。さらに、アプリケーションソフトウェア１２は、ユーザデバイス１０のプロセッサによって実行可能な命令を含む。ユーザデバイス１０は、ＧＰＳモジュール１４または他のデバイスロケーションサービスも含むことができる。
【００３７】
ユーザデバイス１０および通信ゲートウェイ２９は、ブルートゥース仕様により提供され、かつ定義される、ブルートゥース通信リンクを使用して通信リンク５０を確立することができる。例えば、ユーザデバイス１０と通信ゲートウェイ２９との間の通信リンク５０は、ＢＬＥ通信リンクであり得る。あるいは、上記のように、Ｗｉ−Ｆｉ、Ｗｉ−Ｆｉダイレクト、ＵＷＢ、および／またはＩＲＵＷＢ通信リンクがＢＬＥ通信リンクの代わりに使用されてもよい。
【００３８】
ＰＥＰＳシステム１は、ユーザデバイスとの通信リンク５０の追加の認証を提供するように構成され得る。例えば、通信ゲートウェイ２９は、リンク認証モジュール２２と通信して、ユーザデバイス１０を認証し、通信リンク５０を確立することができる。例えば、リンク認証モジュール２２は、チャレンジレスポンス認証を実行するように構成することができる。その場合、通信ゲートウェイ２９とユーザデバイス１０との間の通信に関するタイミング情報は、後述するように、車両インターフェース４５を介してセンサ３１と通信するタイミング制御モジュール２５に送信される。さらに、通信ゲートウェイ２９は、通信チャネルおよびチャネル切替パラメータに関する情報を接続情報配信モジュール２４に通信することができる。接続情報配信モジュール２４は、車両インターフェース４５を使用してセンサ３１の各々と通信し、センサ３１がいったん通信ゲートウェイ２９と同期されると、センサ３１が通信リンク５０を探し出して追跡するために必要な通信情報をセンサ３１に提供するように構成される。
【００３９】
図１および図２は、６個のセンサ３１Ａ〜３１Ｆを備えたＰＥＰＳシステム１を示しているが、任意の数のセンサを使用することができる。例えば、ＰＥＰＳシステムは、４、５、７、８、９、またはそれ以上のセンサを含むことができる。このように、本開示は６個のセンサを利用する例を提供するが、本開示に従って追加のまたはより少ないセンサを使用することができる。
【００４０】
図３を参照すると、センサ３１の各々は、アンテナ４３に接続されたＢＬＥチップセット４１を含む。図３に示すように、アンテナ４３は、センサ３１の内部に配置されてもよい。あるいは、アンテナ４３は、センサ３１の外部に配置されてもよい。センサ３１は、アンテナ４３を使用してＢＬＥ信号を受信し、具体的には、ＢＬＥ物理層（Physical layer：ＰＨＹ）コントローラ４６を使用してＢＬＥ物理層メッセージを受信する。センサ３１は、ＢＬＥ物理層メッセージを観察し、チャネルマップ再構築モジュール４２によって生成されるチャネルマップを使用して、例えば受信信号強度（ＲＳＳＩ）を含む、関連信号の物理的特性の測定を行うことができる。追加的にまたは代替的に、センサ３１は、例えば到着角度に関連するデータを含む、関連信号の物理的特性の他の測定値を決定することができる。追加的にまたは代替的に、センサ３１は、複数のセンサによって受信された信号の、到着時間差、到着時間、または到着角度データを決定するために、相互に通信することができ、および／または、車両インターフェース４５を介して通信ゲートウェイ２９と通信することができる。追加的にまたは代替的に、センサ３１は、ユーザデバイス１０と送受信される信号に関する往復飛行時間情報を測定し、決定することができる。センサ３１は、車両インターフェース４５を介して通信ゲートウェイ２９からタイミング情報およびチャネルマップ情報を受信する。タイミング同期モジュール４４は、車両インターフェース４５でのメッセージの受信時間を正確に測定し、タイミング情報をＢＬＥチップセット４１に渡すように構成されている。ＢＬＥチップセット４１は、チャネルマップ情報およびタイミング信号を取得し、特定の時間に特定のチャネルにＰＨＹコントローラ４６を同調させ、例えばブルートゥース仕様バージョン５．０において提案または採用される通常のデータレートを含む、ブルートゥース物理層仕様に準拠する、すべての物理層メッセージおよびデータを観察するように構成される。データ、タイムスタンプおよび測定された信号強度は、ＢＬＥチップセット４１によって、車両インターフェース４５を介して車両３０の通信ゲートウェイ２９および／または制御モジュール２０に報告される。
【００４１】
図４を参照すると、通信ゲートウェイ２９は、ＢＬＥ信号を受信するためにアンテナ１９に接続されたＢＬＥチップセット４１を含む。ＢＬＥチップセット４１は、例えば、ＢＬＥ仕様のバージョン５を含むＢＬＥ仕様に適合するブルートゥースプロトコルスタック４８を実装する。ＢＬＥチップセット４１は、読み取り専用メモリ（ＲＯＭ）またはランダムアクセスメモリ（ＲＡＭ）のようなコンピュータ可読媒体に保存されたアプリケーションコードによって実現されるアプリケーション４７も含む。さらに、アプリケーション４７は、ＢＬＥチップセット４１のプロセッサによって実行可能な命令を含む。アプリケーション４７は、データの有効性にかかわらず、ＢＬＥチップセット４１によって送受信されるタイムスタンプデータを、ＢＬＥチップセット４１が検査できるようにするために、ブルートゥース仕様外の修正を含んでもよい。例えば、アプリケーション４７は、ＢＬＥチップセット４１が送受信データを期待値と比較できるようにする。通信ゲートウェイ２９は、実際の送受信データを、車両インターフェース４５を介して車両３０の制御モジュール２０に送信するように構成される。あるいは、通信ゲートウェイ２９は、車両インターフェース４５を介してセンサ３１の各々からデータを受信するように構成することができる。アプリケーション４７は、さらに、センサ３１の各々が正しい時刻に正しいデータを受信したことを、ＢＬＥチップセット４１が確認できるように構成することができる。
【００４２】
引き続き図４を参照すると、通信ゲートウェイ２９は、例えば、センサ３１の各々が、通信ゲートウェイ２９によって維持されているユーザデバイス１０との接続を見つけ出し、引き続き、その接続を追跡するために必要となる継続中の接続およびタイミング信号に関する情報を提供するようにさらに構成される。ブルートゥースプロトコルスタック４８は、チャネルマップ、アクセス識別子、次のチャネル、および次のチャネルへの時間をアプリケーション４７へ提供するように構成される。ブルートゥースプロトコルスタック４８は、送信イベントおよび受信イベントのタイムスタンプのためのタイミング信号を、アプリケーション４７および／またはＢＬＥチップセット４１のデジタルＰＩＮ出力へ出力するように構成される。通信ゲートウェイ２９は、タイミング同期モジュール４４も含む。タイミング同期モジュール４４は、タイミング信号を受け入れるように構成され、接続情報メッセージおよび他の通信の正確なタイムスタンプを生成するために、車両インターフェース４５と連携して動作する。
【００４３】
図５Ａおよび図５Ｂを参照すると、ＰＥＰＳシステム１は、車両３０内に設けられ、通信ゲートウェイ２９およびセンサ３１を含む。上述したように、センサ３１は、ユーザデバイス１０によって通信リンク５０を介して通信ゲートウェイ２９に送信されるＢＬＥ信号の物理的特性の測定を行うように構成される。センサ３１は、例えば、ＢＬＥ信号のＲＳＳＩおよび通信リンク５０の到着角度に関連するデータを測定することができる。さらに、センサ３１は、ＢＬＥ信号の到着時間差、到着時間、到着角度、および／または往復飛行時間データを決定するように構成され得る。そして、ＢＬＥ信号の物理的特性および／またはデータを使用して、通信ゲートウェイ２９および／または制御モジュール２０は、ユーザデバイス１０と車両３０との間の距離を決定することができる。
【００４４】
一例として、通信ゲートウェイ２９が通信リンク５０を介してユーザデバイス１０に接続されたことに応じて、通信ゲートウェイ２９は、ユーザデバイス１０によって送信されたＢＬＥ信号に対応するデータをセンサ３１に提供することができる。通信ゲートウェイ２９によって提供されるＢＬＥ信号に対応するデータが、センサ３１によってユーザデバイス１０から取得されたＢＬＥ信号に対応するデータに一致する（例えば、センサ３１によって通信ゲートウェイ２９から受信されたＢＬＥ通信パケットが、センサ３１によってユーザデバイス１０から受信されたＢＬＥ通信パケットに一致する）ことに応じて、センサ３１は、ＢＬＥ信号のＲＳＳＩ測定値を生成するように構成される。
【００４５】
次いで、センサ３１は、ＬＩＮバスによって実現され得る、車両インターフェース４５を介して、ＲＳＳＩ測定値を制御モジュール２０に提供することができる。例えば、センサ３１は、制御モジュール２０への（無線の代わりに）有線接続を介してではあるが、ブルートゥース通信パケットを使用して通信することができる。さらに、センサ３１のそれぞれの第１のリンクキーデータパケットの第１の認証応答が第２のリンクキーデータパケットの第２の認証応答と整合する場合、センサ３１はＲＳＳＩ測定値を制御モジュール２０に提供してもよい。第１の認証応答、第２の認証応答、第１のリンクキーデータパケット、および第２のリンクキーデータパケットは、図６を参照して以下でさらに詳細に説明される。制御モジュール２０がセンサ３１からＲＳＳＩ測定値を受信することに応じて、制御モジュール２０は、センサ３１から受信したＲＳＳＩ測定値に基づいて、ユーザデバイス１０の位置、ユーザデバイス１０と車両３０との間の距離、および／またはユーザデバイス１０の軌跡を決定することができる。
【００４６】
ユーザデバイス１０の位置、ユーザデバイス１０と車両３０との間の距離、および／またはユーザデバイス１０の軌跡に基づいて、制御モジュール２０は、ミラー位置の設定、ハンドル位置の調整、運転者のシートポジションの調整、空調制御設定の変更、オーディオ／メディア設定の調整、車両ドアのロック解除、車両トランクのロック解除、車両の照明システムの起動、車両の始動などのような特定の車両機能を起動することができる。
【００４７】
しかしながら、制御モジュール２０に提供されるＲＳＳＩ測定値は、未承認デバイス６０によって改ざんおよび／または操作される可能性がある。一例として、図５Ａに示すように、未承認デバイス６０が（ＯＢＤ−ＩＩ）ポートに接続される場合、未承認デバイス６０は、車両インターフェース４５の信号を操作し、および／または、車両インターフェース４５に信号を直接注入するように構成されることが可能であり、それにより、ユーザに特定の車両機能をアクティブ化／非アクティブ化する能力を与える。
【００４８】
追加的または代替的に、図５Ｂに示すように、未承認デバイス６０は、ＰＥＰＳシステム１の無線脆弱性に基づいて、通信リンク５０を介して車両インターフェース４５の信号を操作し、および／または、車両インターフェース４５に信号を直接注入するように構成される可能性がある。一例として、未承認デバイス６０は、受動的盗聴、ＭＩＴＭ攻撃、およびＩＤ追跡攻撃を実行するように構成され得る。別の例として、未承認デバイス６０は、全体が参照により本明細書に組み込まれる、デンソーインターナショナルアメリカインコーポレーテッドによって２０１７年１０月１１日に出願された米国特許出願番号１５／７３０２６５に詳細に説明されているように、無線周波数（ＲＦ）分離攻撃を実行するように構成され得る。
【００４９】
図６を参照すると、ＰＥＰＳシステムの各センサに対する複数のリンクキーが示されている。図６に示すように、および上述のように、センサ３１は、ＬＩＮバスによって実現され得る、車両インターフェース４５を使用して、制御モジュール２０と通信するように構成される。さらに、未承認デバイス６０からの改ざんおよび/または攻撃を防ぐために、各々のセンサ３１は、対応するＢＬＥチップセット４１を使用して、第1のリンクキーデータパケットを生成するように構成され、制御モジュール２０は、第２のリンクキーデータパケットを生成するように構成され、および第２のリンクキーデータパケットのそれぞれは、センサ３１のうちの１つと関連付けられる。一例として、センサ３１Ａは、第１のリンクキーデータパケットを生成し、制御モジュール２０は、センサ３１Ａに関連付けられる第２のリンクキーデータパケットを生成する。第１のリンクキーデータパケットの認証応答が第２のリンクキーデータパケットの認証応答と整合する場合、制御モジュール２０はリンクキー７０Ａを生成する。リンクキー７０Ａの生成に応じて、センサ３１Ａおよび制御モジュール２０は、車両インターフェース４５を使用して通信するように構成される。第１のリンクキーデータパケット、第２のリンクキーデータパケット、および認証応答は、以下でさらに詳細に説明される。
【００５０】
第１のリンクキーデータパケットの認証応答が第２のリンクキーデータパケットの認証応答と整合しない場合、制御モジュール２０はリンクキー７０Ａを生成せず、したがって、制御モジュール２０はセンサ３１Ａと通信しない。さらに、以下でさらに詳細に説明するように、制御モジュール２０は、未承認デバイス６０がＰＥＰＳシステム１を攻撃しようとしていることを報告してもよい。
【００５１】
上記の実施形態は、第１のリンクキーデータパケットの認証応答が第２のリンクキーデータパケットの認証応答と整合する場合にリンクキー７０Ａを生成することを説明するが、認証応答の突き合わせは、対応するリンクキー７０Ｂ−７０Ｆ（まとめてリンクキー７０と呼ばれるリンクキー７０Ａ−７０Ｆ）を生成するために、センサ３１Ｂ−３１Ｆのそれぞれに対して実行されてもよい。
【００５２】
第１のリンクキーデータパケットのそれぞれは、第１のプレリンクキーを含むことができ、第１のプレリンクキーは、対応するセンサが車両インターフェース４５を介して制御モジュール２０に電気的に結合され、ユーザがセンサに対応するＰＩＮを入力すると生成され得る。一例として、センサ３１Ａの第１のプレリンクキーは、ユーザが、センサ３１Ａのインターフェースで、または、ユーザデバイス１０で実行するアプリケーションのアプリケーションインターフェースを使用して、対応するＰＩＮを入力することに応じて生成される１２８ビットの数であってもよく、アプリケーションは、ユーザデバイス１０とセンサ３１Ａとの間の通信を可能とするように構成される。さらに、第１のリンクキーデータパケットは、対応するセンサを一意に識別するＩＤ値も含むことができる。一例として、センサ３１ＡのＩＤ値は、センサ３１Ａを一意に識別する４８ビットのアドレスであってもよい。さらに、対応するセンサのＩＤ値は、制御モジュール２０に提供されてもよい。
【００５３】
第２のリンクキーデータパケットのそれぞれは、第２のプレリンクキーを含むことができ、第２のプレリンクキーは、センサが車両インターフェース４５を介して制御モジュール２０に電気的に結合されるときに生成され得る。一例として、制御モジュール２０の第２のプレリンクキーは、制御モジュール２０の製造業者および／または開発者によって制御モジュール２０に割り当てられた値に基づく１２８ビットの数であり得る。第２のリンクキーデータパケットのそれぞれは、対応するセンサが車両インターフェース４５を介して制御モジュール２０に結合されるときに生成されるランダムチャレンジ値も含み得る。
一例として、ランダムチャレンジ値は、制御モジュール２０によって生成されたランダムな３２ビットの数によって表され得る。 さらに、ランダムチャレンジ値のそれぞれが対応するセンサに提供される。
【００５４】
各々のセンサ３１は、対応するランダムチャレンジ値と、対応する第１のプレリンクキーに基づいて第１の認証応答を生成するように構成される。さらに、制御モジュール２０は、対応するセンサのＩＤ値と、第２のプレリンクキーに基づいて、対応する第２の認証応答を生成するように構成される。一例として、センサ３１および制御モジュール２０は、チャレンジレスポンス認証処理のような、第１の認証応答と対応する第２の認証応答を生成するために、暗号化処理を実行しても良い。
【００５５】
上述のように、第１の認証応答と対応する第２の認証応答とが整合する場合、制御モジュール２０は、対応するリンクキーを生成する。リンクキーの生成に応じて、対応するセンサと制御モジュール２０は、車両インターフェース４５を使用して通信するように構成される。そうではなく、第１の認証応答と対応する第２の認証応答とが整合しない場合、制御モジュール２０は対応するリンクキーを生成せず、それにより対応するセンサと制御モジュール２０が車両インターフェース４５を使用して通信することを防ぐ。
【００５６】
追加的にまたは代替的に、第１の認証応答と、対応する第２の認証応答とが整合せず、第１の認証応答が、センサ３１の1つによって生成されなかったことを示す（例えば、ＩＤ値は未承認デバイス６０であることを示す）場合、制御モジュール２０は、未承認デバイス６０が車両インターフェース４５を介して制御モジュール２０に接続しようとしていることを決定するように構成され得る。したがって、制御モジュール２０は、未承認デバイス６０と制御モジュール２０との間の通信を無効にし、未承認デバイス６０の存在を、例えば、車両３０のユーザに関連付けられているユーザデバイス１０に報告することができる。
【００５７】
図７を参照すると、リンクキーを生成するための例示的な制御アルゴリズム７００のフローチャートが示されている。制御アルゴリズム７００は、例えば、ユーザがセンサを制御モジュール２０に電気的に結合したときに、７０４で始まる。７０８で、制御アルゴリズム７００は、センサを使用して、第１のプレリンクキーを生成する。７１２で、制御アルゴリズム７００は、制御モジュール２０を使用して、対応する第２のプレリンクキーを生成する。７１６で、制御アルゴリズム７００は、センサを使用して、ＩＤ値を制御モジュール２０に送信する。７２０で、制御アルゴリズム７００は、制御モジュール２０を使用して、ランダムチャレンジ値をセンサに送信する。７２４で、制御アルゴリズム７００は、センサを使用して、第１のプレリンクキーとランダムチャレンジ値に基づいて第１の認証応答を生成する。７２８において、制御アルゴリズム７００は、制御モジュール２０を使用して、第２のプレリンクキーとＩＤ値に基づいて、対応する第２の認証応答を生成する。
【００５８】
７３２で、制御アルゴリズム７００は、制御モジュール２０を使用して、第１の認証応答が第２の認証値と整合するかどうかを判定する。そうである場合、制御アルゴリズム７００は７３６に進む。そうでない場合、制御アルゴリズム７００は７４０に進む。７３６で、制御アルゴリズム７００は、車両インターフェース４５を介してセンサと制御モジュール２０との間の通信を許可し、次いで７５２に進む。７４０で、制御アルゴリズム７００は、車両インターフェース４５を介したセンサと制御モジュール２０との間の通信を無効にし、次いで７４４に進む。７４４において、制御アルゴリズム７００は、第１の認証応答がセンサに対応するかどうかを判定する。そうである場合、制御アルゴリズム７００は７５２に進む。そうでない場合、制御アルゴリズム７００は７４８に進む。７４８で、制御アルゴリズム７００は、センサに未承認デバイス６０としてフラグを立て、未承認デバイス６０の存在を、例えば、車両３０のユーザに関連付けられたユーザデバイス１０に報告する。７５２で、制御アルゴリズム７００が終了する。
【００５９】
図８を参照すると、新しいセンサをインストールするための例示的な制御アルゴリズム８００のフローチャートが示されている。制御アルゴリズム８００は、例えば、ユーザが新しいペアリングされていないセンサを取得すると、８０４で始まる。８０８で、制御アルゴリズム８００は、制御モジュール２０がペアリングされていないセンサに電気的に結合されているかどうかを判定する。そうである場合、制御アルゴリズム８００は８１２に進む。そうでない場合、制御アルゴリズム８００は、制御モジュール２０がペアリングされていないセンサに電気的に結合されるまで８０８に留まる。８１２で、制御アルゴリズム８００は、制御モジュール２０を使用して、ペアリングされていないセンサの存在に対応するメッセージをユーザデバイス１０に送信する。
【００６０】
８１６で、制御アルゴリズム８００は、ユーザデバイス１０のユーザインターフェースを使用して、センサを制御モジュール２０にペアリングするための案内を表示する。一例として、ユーザインターフェースは、ペアリングされていないセンサに対応するＰＩＮを入力するためのグラフィカルユーザインターフェース要素を表示することができる。別の例として、ユーザインターフェースは、新しいセンサが制御モジュール２０に電気的に結合されたことを示すメッセージを表示してもよく、ユーザインターフェースは、ユーザが新しいセンサのインストールを承認したことを確認するグラフィカルユーザインターフェース要素を含んでもよい。具体的には、ユーザが新しいセンサのインストールを承認したことを確認するために、グラフィカルユーザインターフェース要素は、ユーザの選択に応じて、リンクキーを生成するよう制御モジュール２０に命令するように構成される。
【００６１】
８２０で、制御アルゴリズム８００は、リンクキーを生成するよう制御モジュール２０に命令することに対応する入力をユーザデバイス１０が受信するかどうかを判定する（例えば、ユーザデバイス１０は、ユーザから正しいＰＩＮを受信するか）。そうである場合、制御アルゴリズムは８２４に進み、リンクキーを生成し、図７で説明したように、センサと制御モジュール２０との間の通信を可能にする。そうでない場合、制御アルゴリズム８００は８２８に進み、可能性のある未承認デバイス６０の存在を示すメッセージをユーザデバイス１０に送信する。次いで、制御アルゴリズム８００は８３２で終了する。
【００６２】
前述の説明は、本質的に単なる例示にすぎず、本開示、その適用、または使用を限定することを決して意図するものではない。本開示の広範な教示は様々な形態で実施することができる。したがって、本開示は特定の例を含むが、図面、明細書、および添付の特許請求の範囲を検討すれば他の変更態様が明らかになるので、本開示の真の範囲はそのように限定されるべきではない。本開示の原理を変更することなく、方法内の１つまたは複数のステップが異なる順序で（または同時に）実行されてもよいことを理解されたい。さらに、各々の実施形態は特定の特徴を有するものとして上記に説明されているが、本開示の任意の実施形態に関して説明されたこれらの特徴のうちのいずれか１つまたは複数は、任意の他の実施形態で実施されること、および／または、組み合わせが明示的に説明されていなくとも、任意の他の実施形態の特徴と組み合わせることが可能である。言い換えれば、説明された実施形態は相互に排他的ではなく、１つまたは複数の実施形態の相互の入れ替えは、本開示の範囲内に留まる。
【００６３】
要素間（例えば、モジュール間、回路要素間、半導体層間など）の空間的および機能的関係は、「接続され」、「係合され」、「結合され」、「隣接して」、「の隣に」、「の上に」、「上」、「下」、および「配置され」を含む、様々な用語を用いて説明される。第１および第２要素間の関係が、上記開示において説明されているとき、「直接」であると明示的に記載されていない限り、その関係は第１および第２要素間に他の介在要素が存在しない直接的な関係であり得るが、第１および第２要素間に１つまたは複数の介在要素が（空間的または機能的に）存在する間接的な関係でもあり得る。本明細書で使用されるように、Ａ、Ｂ、およびＣのうちの少なくとも１つとのフレーズは、非排他的論理和を使用する論理（ＡまたはＢまたはＣ）を意味すると解釈されるべきであり、「Ａの少なくとも１つ、Ｂの少なくとも１つ、およびＣの少なくとも１つ」を意味すると解釈されるべきではない。
【００６４】
図面において、矢じりで示される矢印の方向は、概して、説明に重要な情報（データまたは命令など）の流れを示す。例えば、要素Ａと要素Ｂが様々な情報を交換するが、要素Ａから要素Ｂに送信される情報が説明に関連する場合、矢印は要素Ａから要素Ｂを指すことがある。この一方向の矢印は、他の情報が要素Ｂから要素Ａに送信されないことを意味しない。さらに、要素Ａから要素Ｂに送信された情報について、要素Ｂは、要素Ａに、情報の要求または情報の受信確認を送信する場合がある。
【００６５】
以下の定義を含む本出願では、用語「モジュール」または用語「コントローラ」は、用語「回路」と置き換えることができる。「モジュール」という用語は、特定用途向け集積回路（ＡＳＩＣ）、デジタル，アナログ，またはアナログ／デジタル混合ディスクリート回路、デジタル，アナログ，またはアナログ／デジタル混合集積回路、組み合わせ論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、コードを実行するプロセッサ回路（共有、専用、またはグループ）、プロセッサ回路によって実行されるコードを記憶するメモリ回路（共有、専用、またはグループ）、説明された機能を提供する他の適切なハードウェアコンポーネント、あるいは、システムオンチップなどにおける上記のいくつかまたはすべての組み合わせ、を指すか、一部であるか、または含むことができる。
【００６６】
モジュールは、１つ以上のインターフェース回路を有することができる。いくつかの例では、インターフェース回路は、ローカルエリアネットワーク（ＬＡＮ）、インターネット、ワイドエリアネットワーク（ＷＡＮ）、またはそれらの組み合わせに接続される有線または無線インターフェースを含むことができる。本開示の任意の所与のモジュールの機能は、インターフェース回路を介して接続される複数のモジュール間で分散されてもよい。例えば、複数のモジュールが負荷平衡を可能にし得る。さらなる例では、サーバ（リモート、またはクラウドとしても知られる）モジュールは、クライアントモジュールに代わっていくつかの機能を達成してもよい。
【００６７】
上記で使用される、コードという用語は、ソフトウェア、ファームウェア、および／またはマイクロコードを含むことができ、プログラム、ルーチン、機能、クラス、データ構造、および／またはオブジェクトを指すことがある。共有プロセッサ回路との用語は、複数のモジュールからのコードの一部または全部を実行する単一のプロセッサ回路を包含する。グループプロセッサ回路との用語は、追加のプロセッサ回路と組み合わせて、１つまたは複数のモジュールからのコードの一部または全部を実行するプロセッサ回路を包含する。複数のプロセッサ回路への言及は、個別のダイ上の複数のプロセッサ回路、単一のダイ上の複数のプロセッサ回路、単一のプロセッサ回路の複数のコア、単一のプロセッサ回路の複数のスレッド、またはこれらの組み合わせを包含する。共有メモリ回路との用語は、複数のモジュールからのコードの一部または全部を格納する単一のメモリ回路を包含する。グループメモリ回路との用語は、追加のメモリと組み合わせて、１つまたは複数のモジュールからのコードの一部または全部を格納するメモリ回路を包含する。
【００６８】
メモリ回路との用語は、コンピュータ可読媒体との用語のサブセットである。本明細書で使用されるコンピュータ可読媒体との用語は、（搬送波上などの）媒体を通って伝播する一時的な電気信号または電磁信号を含まない。したがって、コンピュータ可読媒体との用語は、有形の非一時的なものと見なすことができる。非一時的で有形のコンピュータ可読媒体の非限定的な例は、（フラッシュメモリ回路、消去可能プログラマブル読み出し専用メモリ回路、またはマスク読み出し専用メモリ回路などの）不揮発性メモリ回路、（ＳＲＡＭ回路やＤＲＡＭ回路などの）揮発性メモリ回路、（アナログまたはデジタル磁気テープまたはハードディスクドライブなどの）磁気記憶媒体、および（ＣＤ、ＤＶＤ、またはブルーレイディスクなどの）光記憶媒体である。
【００６９】
本出願に記載されている装置および方法は、コンピュータプログラムで具現化された１つまたは複数の特定の機能を実行するように汎用コンピュータを構成することによって作成された専用コンピュータによって部分的または完全に実施され得る。上記の機能ブロックおよびフローチャート要素は、ソフトウェアの仕様として役立ち、熟練した技術者またはプログラマーの日常業務によってコンピュータプログラムに変換することができる。
【００７０】
コンピュータプログラムは、少なくとも１つの非一時的な有形のコンピュータ可読媒体に格納されるプロセッサ実行可能命令を含む。コンピュータプログラムはまた、格納されたデータを含むかまたはそれに依存することができる。コンピュータプログラムは、専用コンピュータのハードウェアと相互作用する基本入出力システム（ＢＩＯＳ）、専用コンピュータの特定のデバイスと相互作用するデバイスドライバ、１つ以上のオペレーティングシステム、ユーザアプリケーション、バックグラウンドサービス、バックグラウンドアプリケーションなどを含んでも良い。
【００７１】
コンピュータプログラムは、（ｉ）ＨＴＭＬ（ハイパーテキストマークアップ言語）またはＸＭＬ（拡張マークアップ言語）のような解析される記述テキスト、（ｉｉ）アセンブリコード、（ｉｉｉ）コンパイラによってソースコードから生成されるオブジェクトコード、（ｉｖ）インタプリタによる実行のためのソースコード、（ｖ）ジャストインタイムコンパイラによるコンパイルおよび実行のためのソースコードなどを含むことができる。単なる例として、ソースコードは、C、C++、C＃、Objective-C、Swift、Haskell、Go、SQL、R、Lisp、Java（登録商標）、Fortran、Perl、Pascal、Curl、OCaml、Javascript（登録商標）、HTML5（ハイパーテキストマークアップ言語第５改訂版）、Ada、ASP（Active Server Pages）、PHP（ハイパーテキストプリプロセッサ）、Scala、Eiffel、Smalltalk、Erlang、Ruby、Flash（登録商標）、Visual Basic（登録商標）、Lua、MATLAB、SIMULINK、およびPython（登録商標）を含む言語の構文法を使って書くことができる。
【００７２】
上述した実施形態の説明は、例示および説明の目的のために提供されている。それは、網羅的であることも、開示を限定することも意図するものではない。特定の実施形態の個々の要素や特徴は、一般に、その特定の実施形態に限定されることなく、具体的に図示または説明されなくとも、適用可能である場合、交換可能であり、選択された実施形態で使用することが可能である。同上のものはまた、多くのやり方で変更されてもよい。そのような変更は、本開示からの逸脱として見なすべきではなく、全てのそのような修正は、本開示の範囲内に含まれることが意図される。
【図１】
2021516921.tif 000003
【図２】
2021516921.tif 000004
【図３】
2021516921.tif 000005
【図４】
2021516921.tif 000006
【図５Ａ】
2021516921.tif 000007
【図５Ｂ】
2021516921.tif 000008
【図６】
2021516921.tif 000009
【図７】
2021516921.tif 000010
【図８】
2021516921.tif 000011
【国際調査報告】
2021516921.tif 000012
2021516921.tif 000013
2021516921.tif 000014