(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-21
(45)【発行日】2024-01-04
(54)【発明の名称】自動機能のためにアクセス制御システムと通信及び測距を行うモバイルデバイス
(51)【国際特許分類】
H04W 12/06 20210101AFI20231222BHJP
H04W 4/40 20180101ALI20231222BHJP
H04W 88/06 20090101ALI20231222BHJP
H04W 12/041 20210101ALI20231222BHJP
H04W 12/63 20210101ALI20231222BHJP
H04W 64/00 20090101ALI20231222BHJP
【FI】
H04W12/06
H04W4/40
H04W88/06
H04W12/041
H04W12/63
H04W64/00 140
H04W64/00 171
【外国語出願】
(21)【出願番号】P 2022056874
(22)【出願日】2022-03-30
(62)【分割の表示】P 2021095259の分割
【原出願日】2018-08-21
【審査請求日】2022-04-27
(32)【優先日】2017-09-29
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-05-18
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】503260918
【氏名又は名称】アップル インコーポレイテッド
【氏名又は名称原語表記】Apple Inc.
【住所又は居所原語表記】One Apple Park Way,Cupertino, California 95014, U.S.A.
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】レヴィナ, ブレント エム.
(72)【発明者】
【氏名】ブラムリー, ロバート ダブリュ.
(72)【発明者】
【氏名】ハリハラン, スリラム
【審査官】望月 章俊
(56)【参考文献】
【文献】米国特許出願公開第2016/0302074(US,A1)
【文献】特開2010-090581(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04W4/00-H04W99/00
H04B7/24-H04B7/26
3GPP TSG RAN WG1-4
SA WG1-4
CT WG1、4
(57)【特許請求の範囲】
【請求項1】
モバイルデバイスとアクセス制御システムとの間で通信を実行するための方法であって、前記方法が、前記モバイルデバイスによって、
第1の時間インスタンスにおいて、
第1の無線プロトコルを使用して、前記アクセス制御システムへ第1の測距要求メッセージ内の第1のパルスセットを送信することと、
前記第1の無線プロトコルを使用して、前記アクセス制御システムから測距応答メッセージ(単数又は複数)の第1のセット内の第2のパルスセットを受信することと、
前記第1のパルスセットの送信時間(単数又は複数)の第1のセット、及び前記第2のパルスセットの受信時間(単数又は複数)の第1のセットに対応する、第1の距離情報を判定することと、
前記第1の時間インスタンスより後の第2の時間インスタンスにおいて、
前記第1の無線プロトコルを使用して、前記アクセス制御システムへ第2の測距要求メッセージ内の第3のパルスセットを送信することと、
前記第1の無線プロトコルを使用して、前記アクセス制御システムから測距応答メッセージ(単数又は複数)の第2のセット内の第4のパルスセットを受信することと、
前記第3のパルスセットの送信時間(単数又は複数)の第2のセット、及び前記第4のパルスセットの受信時間(単数又は複数)の第2のセットに対応する、第2の距離情報を判定することと、
前記アクセス制御システムへ、前記第1の距離情報及び前記第2の距離情報に対応する動き情報を送信することにより、前記アクセス制御システムが前記モバイルデバイスの動きに基づいて動作を実行することを可能にすることと、
を実行することを備える、方法。
【請求項2】
請求項1に記載の方法であって、更に、
共有シークレットを使用して、前記モバイルデバイスと前記アクセス制御システムとの間に通信チャネルを作成することであって、前記通信チャネルは第2の無線プロトコルを使用し、前記第1の無線プロトコルは前記第2の無線プロトコルにより使用されるパルス幅よりも小さいパルス幅を使用する、ことと、
前記通信チャネルを使用して、1つ以上の測距能力を前記アクセス制御システムと通信することと、
を備える、方法。
【請求項3】
請求項2に記載の方法であって、更に、前記通信チャネルを作成する前に、前記第2の無線プロトコルを使用して前記アクセス制御システムを認証することであって、前記アクセス制御システムを認証することは、
前記アクセス制御システムにチャレンジを送信することであって、前記チャレンジが、暗号化キーを使用して前記アクセス制御システムの制御ユニットによって処理されて応答を提供する、ことと、
前記アクセス制御システムから前記応答を受信することと、
前記応答を予期された結果と比較して、前記アクセス制御システムの前記制御ユニットを認証することと、
を含む、ことを備える、方法。
【請求項4】
請求項1に記載の方法であって、測距応答メッセージ(単数又は複数)の前記第1のセット及び測距応答メッセージ(単数又は複数)の前記第2のセットの各々は、前記アクセス制御システムの複数のアンテナユニットからの複数の測距応答メッセージを含み、各測距応答メッセージは、前記複数のアンテナユニットの個別のアンテナユニットからのものであり、かつ、前記個別のアンテナユニットに固有の識別情報を含む、
方法。
【請求項5】
請求項4に記載の方法であって、前記第1の測距要求メッセージ及び前記第2の測距要求メッセージの各々は、前記複数のアンテナユニットへブロードキャストされる、
方法。
【請求項6】
請求項1に記載の方法であって、更に、
前記アクセス制御システムへ、
前記第1の測距要求メッセージ内の前記第1のパルスセット、及び測距応答メッセージ(単数又は複数)の前記第1のセット内の前記第2のパルスセットに対応する、第1のタイムスタンプセットと、
前記第2の測距要求メッセージ内の前記第3のパルスセット、及び測距応答メッセージ(単数又は複数)の前記第2のセット内の前記第4のパルスセットに対応する、第2のタイムスタンプセットと、
を送信することを備え、
前記第1のタイムスタンプセット及び前記第2のタイムスタンプセットが、前記アクセス制御システムの制御ユニットによって使用されて、前記アクセス制御システムからの前記モバイルデバイスの、第1の距離及び第2の距離をそれぞれ判定するように構成可能である、
方法。
【請求項7】
請求項6に記載の方法であって、前記アクセス制御システムは、前記第1の距離及び前記第2の距離に基づいて前記モバイルデバイスの軌道を判定し、前記軌道に基づいて前記動作を判定するように構成される、
方法。
【請求項8】
請求項7に記載の方法であって、前記動作が、前記アクセス制御システムのドアセットのうちの特定のドアをロック解除することである、
方法。
【請求項9】
請求項2に記載の方法であって、前記1つ以上の測距能力は、前記モバイルデバイスと前記アクセス制御システムとの間で前記第1の無線プロトコルを用いて通信される測距メッセージ用のフォーマットを指定する、
方法。
【請求項10】
請求項2に記載の方法であって、前記第1の無線プロトコルが超広帯域(UWB)であり、前記第2の無線プロトコルがBluetooth(登録商標)であり、前記第1の無線プロトコルが第1のアンテナを使用し、前記第2の無線プロトコルが第2のアンテナを使用し、前記モバイルデバイスがモバイル電話である、
方法。
【請求項11】
請求項1に記載の方法であって、前記アクセス制御システムは車両である、
方法。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願への相互参照)
本出願は、2017年9月29日に出願された「Mobile Device For Communicating And Ranging With Access Control System For Automatic Functionality」と題する米国特許仮出願第62/565,637号の利益を主張する、2018年5月18日に出願された「Mobile Device For Communicating And Ranging With Access Control System For Automatic Functionality」と題する米国特許出願第15/983,388号のPCT出願である。この出願の開示は、参照によりその全体が本明細書に組み込まれる。
【背景技術】
【0002】
自動車には、多くの場合、フォブを持っている人が近づくと、自動車のドアを自動的にロック解除できる近接キーフォブが付属している。人々は多くの場合、キーフォブと共に自分の電話又はスマートウォッチを持っている。両方のアイテムを携行することは不便であり得る。しかしながら、電話と自動車との間で典型的に使用される標準的な通信プロトコル(例えば、Bluetooth(登録商標))を使用して、電話と自動車との間の正確な距離測定値を取得することは困難であり得、それによってドアのロック解除の適切な制御が困難になる。
【発明の概要】
【0003】
正確な距離測定値を提供するために、実施形態では、2つの異なる無線プロトコルを使用することができる。第1の無線プロトコル(例えば、Bluetooth(登録商標))を使用して、車両の認証を実行し、モバイルデバイス(例えば、電話又は腕時計)と車両との間で測距能力を交換することができる。第2の無線プロトコル(例えば、超広帯域、UWB)では、第1の無線プロトコルによって使用されるパルス幅よりも小さいパルス幅を使用することができる(例えば、1ns対1μs)。パルス幅をより狭くすると、距離(測距)測定に対してより向上した精度を提供することができる。
【0004】
例示的な測距能力には、モバイルデバイスと車両との間の測距メッセージ用のフォーマット、使用する周波数範囲、車両のアンテナユニット数、及び第2の無線プロトコルを使用する測距メッセージ用の暗号化プロトコルを指定することを含み得る。そのような測距能力を指定するために第1の無線プロトコルを使用することにより、モバイルデバイスは、それぞれが異なる設定及び能力を有する様々な車両と接続し、それらを使用することが可能になる。
【0005】
モバイルデバイスは、車両の1つ以上のアンテナユニットに第1のパルスセットを含む測距要求メッセージを送信し、第2のパルスセットを含む1つ以上の測距応答メッセージを受信することができる。様々な実施形態では、そのようなパルスの送信及び受信の時間は、車両がモバイルデバイスと車両との間の距離を判定できるように、又はモバイルデバイスが車両に送信するための距離を判定できるように、判定されて車両に送信され得る。(例えば、ユーザによって設定される)様々な機能を、閾値を跨ぐ距離、又は閾値を超える距離の変化率に基づいて、自動的に実行することができる。
【0006】
他の実施形態は、本明細書に記載される方法に関連付けられたシステム、ポータブルコンシューマデバイス、及びコンピュータ可読媒体を対象とする。
【0007】
以下の詳細な説明及び添付図面を参照することによって、本開示の実施形態の性質及び利点のより良好な理解を得ることができる。
【図面の簡単な説明】
【0008】
【
図1】本発明の実施形態に係る、車両に対する自動化された距離ベースアクセス制御のための方法を示すフローチャートである。
【0009】
【
図2】本発明の実施形態に係る、第1の無線プロトコルを使用して車両と通信し、第2の無線プロトコルを使用して測距及び測距への参加を認証及び準備する、モバイルデバイスの誇張された動きを示す。
【0010】
【
図3】本発明の実施形態に係る、BT及びUWBプロトコルを伴う、モバイルデバイスと車両との間の通信のシーケンス図を示す。
【0011】
【
図4】本発明の実施形態に係る、モバイルデバイスと、車両の3つのアンテナとを伴う測距動作のシーケンス図を示す。
【0012】
【
図5】本発明の実施形態に係る、ペアリングプロセスのシーケンス図を示す。
【0013】
【
図6】本発明の実施形態に係る、測距間隔ネゴシエーションを示す。
【0014】
【
図7】本発明の実施形態に係る、キーリフレッシュネゴシエーションを示す。
【0015】
【
図8】本発明の実施形態に係る、1対多測距を示す。
【0016】
【
図9】本発明の実施形態に係る、モバイルデバイスとアクセス制御システムとの間の通信を実行するための方法のフローチャートである。
【0017】
【
図10】例示的なモバイルデバイスのブロック図である。
【発明を実施するための形態】
【0018】
実施形態では、認証及び測距のために自動車とセキュアに通信して、ユーザが自動車に近づいたときに適時にドアをロック解除するモバイルデバイス(例えば、電話若しくはウォッチ又は他のアクセサリ)を提供することができる。また、ライト、エンジン、ヒータ、エアコンをオンにする、又は自動車からモバイルデバイスに情報を提供するなど、ロック解除以外の他の動作を提供することもできる。セキュア通信には、第1の無線プロトコルに典型的に関係するキー交換を伴うことができるだけではなく、第1の無線プロトコルで生じるキーネゴシエーションも伴うことができるが、キーは、例えば、超広帯域(UWB)の測距で使用される第2の無線プロトコルと共に、後に使用される。暗号キーはまた、モバイルデバイスと車両とを互いに認証するためのチャレンジレスポンスメッセージの一部として使用することができる。
【0019】
認証の一部として、異なるアクセス特権を提供することができる。例えば、所有者の子供が電話を持っていたとしても、その電話のアクセス特権は後部座席をロック解除することだけに制限され、エンジンを起動することができない。様々な実施形態では、そのようなアクセス特権は(例えば、特定の機能のために電話から自動車にコマンドが提供される場合)、電話内にプログラムすることができ、又は特定の電話用に自動車内にプログラムすることができ、デバイス識別子を使用して特定の電話がいつ車両と通信しているかを判定することができる。いくつかの実施形態は、車両に近づいている複数の人々にまで拡張することができ、それぞれが測距を独立して実行できる別個のモバイルデバイスを備える。
【0020】
いくつかの実施形態では、Bluetooth(登録商標)(例えば、BTと総称される、クラシックで、高速な、又は低いエネルギー(BTLE))を使用して、モバイルデバイスを車両で認証することができる。しかし、BTパルスは幅が広く(例えば、1マイクロ秒)、正確な距離測定値を可能にしない。代わりに、UWBを、パルスがより狭いとき(例えば、~1ナノ秒)に距離測定用に使用することができ、それによってより良好な飛行時間計算を可能にする。UWBは、保証データ転送遅延が望まれる、認証及び他のデータ通信に適していなくてもよい。
【0021】
したがって、モバイルデバイスは、(例えば、家庭用ロックの一部として)車両や建物などのアクセス制御システムとの認証及び測距能力(例えば、測距用メッセージフォーマット、アンテナユニット数、暗号化プロトコルなど)の交換のために、第1の無線プロトコル(例えば、BT)を使用することができる。車両の例には、自動車、トラック、ボート、及び列車が含まれる。加えて、第1の無線を介したメッセージは、測距プロセスを開始することができ、測距プロセスは、2つのデバイス間の距離を判定するために、第1の無線プロトコルで使用されるパルスよりも狭いパルスで、第2の無線プロトコル(例えば、UWB)を使用する。定義された機能は、車両(又は、ゲート、ドアなどのロックを含む建物又は他の構造(例えば、フェンス)などの他のアクセス制御システム)からの様々な距離において実行することができ、例えば、5メートル離れてライトを点灯させ、2メートル離れて車両をロック解除することができる。車両に関する以下の検討のいずれもが、他のアクセス制御システムにも適用可能である。
I.2つのプロトコルを使用した通信及び測距
【0022】
モバイルデバイス(例えば、電話、タブレット、又は腕時計)と車両との間の第1の無線プロトコルリンクを認証のために使用することができ、次いで、距離情報の測距及び交換のために、第2の無線プロトコル(例えば、UWB)を使用して開始及び制御することができる。例えば、第1の無線プロトコルは、セキュリティキー、測距間隔をネゴシエーションし、UWBを介して測距を開始するための低電力フレームワークを提供することができる。
【0023】
図1は、本発明の実施形態に係る、車両に対する自動化された距離ベースアクセス制御のための方法100を示すフローチャートである。方法100は、一般に、車両の動作に影響を及ぼすように、両方のデバイスに対して提示される。当業者であれば、どのステップがどのデバイスによって実行されるかを理解するであろう。
【0024】
ブロック110において、モバイルデバイス及び車両は、第1の無線プロトコルを使用してペアリングされる。更に詳細に後述するように、ペアリング(例えば、BTペアリング)は、様々な技術のうちのいずれか1つを介して、モバイルデバイスと車両との間の認証を伴うことができる。ペアリングにより、共有シークレットが両方のデバイス上に保存される結果となり得、共有シークレットは、(例えば、チャレンジレスポンスを介して)将来の認証、及び/又はモバイルデバイスと車両との間のメッセージの暗号化のために使用することができる。モバイルデバイスは、初期セットアップ及びペアリングの間に、中心的な役割を引き受けることができる。
【0025】
モバイルデバイス及び車両のアイデンティティアドレス(例えば、メディアアクセス制御(MAC)アドレス)を、ペアリング中に交換することができる。例えば、各BTデバイスに対して固有の48ビットアドレスを使用することができる。モバイルデバイスは、解決可能プライベートアドレスを使用し、アドレスを定期的に循環させることができ、例えば、BTLEプライバシーのモードが使用されるときに生じ得るタイミング間隔で、ランダム値を変更することができる。加えて、解決キー(例えば、BTアイデンティティ解決キー(IRK))をペアリング時に交換することができ、それによって、認証目的で、広告パケット内のランダムMACアドレスを実際のMACアドレスにデバイスが変換することを可能にする。車両が複数のBTコントローラをサポートしている場合、全てのコントローラは、同じアイデンティティアドレス及び解決キーを使用してもよい。各コントローラは、任意の時点で、異なるランダム解決可能アドレスを有してもよい。
【0026】
ブロック120において、車両及び/又はモバイルデバイスを、モバイルデバイスがあるときに第1の無線プロトコルを使用して認証することができる。この認証は、ペアリング直後、又はどこか後の時点で発生してもよい。例えば、モバイルデバイスと車両とをペアリングすることができ、次いで、ユーザは車両を離れることができる。次いで、ユーザは、翌日又は任意の後の時間に戻ることができ、ペアリングプロセス中に取得された情報を使用して認証を実行することができる。一例として、いったんペアリングされると、モバイルデバイスは常に広告モードとなり、車両への全ての後続の接続において、周辺的な役割を引き受けることができる。モバイルデバイスは、それぞれが異なるペイロードを有する複数の広告パケットを送信してもよい。ペイロード内の解決可能ランダムアドレスが車両によって使用されて、例えば、IRKを使用して、ペアリングされたデバイスを識別することができる。車両は、ペイロードに基づいて広告パケットをフィルタリングすることができる。
【0027】
車両は、ペアリングされたモバイルデバイスから広告パケットを受信すると、モバイルデバイスへのBT(例えば、BTLE)接続を開始することができ、それによって車両がこの接続のための中央デバイスとして機能する。BT接続は、接続を生成する要望を示し、かつ、車両の識別子を含む応答メッセージを車両が送信することによって、開始することができる。接続間隔(例えば、30ms)が、モバイルデバイスによって必要とされ得る。
【0028】
ブロック130において、モバイルデバイス及び車両は、第1の無線プロトコルを使用して測距能力を交換することができる。測距能力の交換により、モバイルデバイスと車両との間のシグナリングが、両方のデバイスによって一貫した方法で実行されることを確実にすることができる。そのような交換により、モバイルデバイスは、新たな車両、例えば、異なる数及び種類のアンテナユニットを有する車両に適応することが可能になる。例示的な測距能力には、モバイルデバイスと車両との間の測距メッセージ用のフォーマット、使用する周波数範囲、車両のアンテナユニット数、及び第2の無線プロトコルを使用する測距メッセージ用の暗号化プロトコルを指定することを含み得る。
【0029】
ブロック140において、第1の無線プロトコルを使用して、測距を開始することができる。いくつかの実施態様では、開始では、モバイルデバイス又は車両から送信された測距要求メッセージによって開始することができる。応答するデバイスは、開始通知イベント(メッセージ)を用いて応答することができる。いったん開始通知イベントが発生すると、例えば、開始メッセージを受信する特定の時間内で対応する無線機をオンにすることによって、第2の無線プロトコルを使用して測距を実行することができる。更なる実施例及び詳細が、本明細書に提供されている。
【0030】
ブロック150において、第2の無線プロトコル(例えば、UWB)を使用して、測距を実行することができる。第1の無線プロトコルを用いた開始信号の後、車両は、第2の無線プロトコルに対応する1つ以上の車両アンテナユニットを用いて特定の時間に測距信号のスキャンを開始することができる。1つ以上の車両アンテナユニットは、1つ以上の測距要求メッセージを受信し、1つ以上の測距応答メッセージを送信することができる。制御ユニットが、1つ以上の車両アンテナユニットのそれぞれにあるか又はそれらの間で共有されていると、このような測距メッセージの種々のレベルの処理を実行して、例えば、タイムスタンプを判定することができる。モバイルデバイスは、測距応答メッセージを受信して、1つ以上の測距要求メッセージの送信に対するタイムスタンプと、1つ以上の測距応答メッセージに対するタイムスタンプとを判定することができる。モバイルデバイスは、モバイルデバイスと車両との間の距離を判定するために、これらのタイムスタンプを車両に送信することができる。他の実装形態では、モバイルデバイスは、測距信号の送信時間及び受信時間に基づいて距離を判定することができる。測距は、停止測距要求が処理されるまで続き得る。
【0031】
ブロック160において、車両は、測距に基づいて所定の動作を実行することができる。例えば、車両は、モバイルデバイスが第1の閾値内にあると判定することができ、それによって第1の動作が実行され、例えば、車両のライトが点灯される。経時的に距離を判定するために、更なる測距を実行することができる。モバイルデバイスがより近い閾値内にあるときに、第2の動作を実行することができ、例えば、ドアをロック解除することができる。
【0032】
いくつかの実施形態では、動作は、モバイルデバイスの軌道、例えば、モバイルデバイスが車両のどちら側に近づいているかに依存し得る。例えば、モバイルデバイスが助手席側に近づいている場合、潜在的に、助手席ドアだけがロック解除され得る。モバイルデバイスが車両の後部に近づいている場合、トランク又はハッチがロック解除され得る。
【0033】
図2は、第1の無線プロトコルを使用して車両205と通信して、測距を認証及び準備するモバイルデバイス210の誇張された動きを示している。次いで、モバイルデバイスは、本発明の実施形態に係る第2の無線プロトコルを使用して測距に参加する。モバイルデバイス210及び車両205は、例えば、共有シークレットを介して2つのデバイス間でセキュアチャネルが既に確立されているように、既にペアリングされていると想定する。モバイルデバイス210は、3つの時間T1~T3で示されている。これらの時間の間のモバイルデバイス210の実際の動きは、例示を容易にするために距離が誇張されているため、典型的には、示されるものよりも小さい。車両205は、BTアンテナ及び4つのUWBアンテナ1~4を含むが、他の数のUWBアンテナも可能である。
【0034】
T1の第1のインスタンスにおいて、モバイルデバイス210は、第1の無線プロトコルを使用して車両を認証することができ、逆もまた同様である。例えば、モバイルデバイス210は、非暗号化乱数を車両205に送信することができる。車両205は、ペアリング時に確立された共有シークレットを使用して乱数を暗号化し、メッセージ内の暗号化された値をモバイルデバイス210に送信することができ、モバイルデバイス210は、メッセージを復号して同じ乱数が受信されたことを確認する。
【0035】
認証後、なおも名目上はT1において、モバイルデバイス210及び車両205は、後続の時間(例えば、時間T2及びT3)に生じる測距についての情報を交換することができる。交換された情報により、両方のデバイスが同じ方法で測距を実行し、測距が同期された方法で生じることを確実にすることができる。
【0036】
時間T2において、モバイルデバイス210又は車両205は、一連のパルスを含み得る初期測距メッセージを送信することができる。これらのパルスは、時間T1において第1の無線プロトコルで使用されるパルスよりも狭くなる。モバイルデバイス210は、車両の4つのUWBアンテナ1~4のそれぞれが初期測距メッセージを受信できるように、初期測距メッセージをブロードキャストすることができる。モバイルデバイス210は、初期測距メッセージが送信された正確な時間を(例えば、ナノ秒の精度まで)追跡することができる。UWBアンテナのそれぞれは測距応答メッセージを送信することができ、測距応答メッセージは、どのUWBアンテナが特定の応答メッセージを送信したかを識別する識別子を含むことができる。モバイルデバイス210は、4つのUWB測距応答メッセージを受信するための正確な時間を追跡することができる。
【0037】
いくつかの実施形態では、モバイルデバイス210は、追跡時間を車両205に送信することができ、車両は、UWBアンテナ1~4のそれぞれにおける初期測距メッセージを受信するそれ自身の追跡時間と、4つの測距応答メッセージのそれぞれを送信する時間とを使用して、モバイルデバイスと車両との間の距離を判定することができる。例えば、2つのデバイスのクロックが同期しているときに、メッセージのそれぞれを送信する時間と受信する時間との差を用いて距離を判定することができる。別の例として、初期測距応答メッセージを受信して測距応答メッセージを送信する時間遅延を、モバイルデバイス210における送信時間及び受信時間から差し引いてラウンドトリップ時間を得ることができる。ラウンドトリップ時間は、電磁信号の速度に基づいて距離に変換することができる。車両内の異なるUWBアンテナの既知の位置を使用して、車両205に対するモバイルデバイス210の位置を三角測量することができる。
【0038】
他の実施形態では、モバイルデバイス210は、車両205からの距離を判定することができる。例えば、車両が交換する測距情報に、車両のUWBアンテナの相対位置と、測距要求メッセージの受信と測距応答メッセージの送信との間の予期される遅延とが含まれる場合、モバイルデバイス210は、測距メッセージを送信及び受信する追跡時間を使用して距離を判定することができる。
II.例示的なプロトコル及びシグナリング
【0039】
2つの無線プロトコルは、BT及びUWBであり得る。各無線プロトコルについての詳細は、モバイルデバイスと車両との間のメッセージングのシーケンスに関する更なる詳細と共に以下に記載する。
A.第1の無線プロトコル(例えば、Bluetooth)
【0040】
モバイルデバイス及び車両は、第1の無線プロトコル(例えば、BT)用の複数のアンテナを有してもよい。BTは、2.4~2.485GHzのISM帯域における短波長超高周波(UHF)電波を使用することができる。
【0041】
第1の無線プロトコルの特定のモードは、比較的長い範囲にわたって使用することができる。例えば、1つのBT無線機は、125kbps又は500kbpsの下位パケット符号化を使用することによって、及び最大送信電力を(例えば、+20dBmまで)増加することによって、通信範囲を増大させることができる。そのような無線機は、広告パケットとデータパケットとの両方に使用することができ、最大20メートルまでしか機能し得ないより低い電力モードとは対照的に、最大100メートルまでの範囲を提供することができる。したがって、ユーザが、毎秒1.5メートルの速度で移動しながら車両に近づいている場合、100メートルの範囲は依然として、認証のため、及び測距パラメータのネゴシエーション並びに測距開始メッセージの送信には十分な時間を提供し得る。通信を確立するためのそのような追加の時間は、そうしないとモバイルデバイスの検出及び測距の開始を遅延させる可能性がある、他の自動車からの干渉が存在し得る場合に有利であり得る。
【0042】
しかし、これらのパケットは、およそ2~8倍より長い持続時間、例えば、最大約16ミリ秒となる場合があるため、測距には適していない。1マイクロ秒のパルスは、+/-300メートルの範囲を提供する。また、BT用の通常の電力モードでさえ、測距には適さないパルスを提供する。
B.UWB
【0043】
第2の無線プロトコルは、第1の無線プロトコルよりも狭いパルス、例えば、半値全幅(FWHM)においてより狭い全幅を有する。いくつかの実施態様では、第2の無線プロトコル(例えば、UWB)は、5cm又はそれよりも良い距離精度を提供することができる。様々な実施形態では、周波数範囲は3.1~10.6GHzであり得る。複数のチャネル、例えば、6.5GHzの1つのチャネル、8GHzの別のチャネルを使用することができる。そのように、場合によっては、第2の無線プロトコルは、第1の無線プロトコルの周波数範囲と重複しない。モバイルデバイス及び車両は、第2の無線プロトコル用の複数のアンテナを有してもよい。
【0044】
第2の無線プロトコルは、UWBの一タイプであるIEEE802.15.4によって指定することができる。歴史的に、UWBは、高帯域幅通信用に使用されていたが、GPSとの干渉があった。パルスベースUWBシステム内の各パルスは、UWB帯域幅全体(例えば、500MHz)を占有することができ、それによってパルスを時間的(すなわち、狭い時間幅、例えば、0.5ns~数ナノ秒)に局所化することを可能にする。距離に関して、パルスは、500MHz幅パルスに対して幅60cm未満、及び1.3GHz帯域幅パルスに対して23cm未満とすることができる。帯域幅がそのように広く、実空間における幅がそのように狭いため、非常に正確な飛行時間測定値を取得することができる。
C.シーケンス図
【0045】
図3は、本発明の実施形態に係る、BT及びUWBプロトコルを伴う、モバイルデバイス300と車両350との間の通信のシーケンス図を示す。モバイルデバイス300及び車両350は既にペアリングされていると想定されるため、車両はモバイルデバイスのクレデンシャルを有し、モバイルデバイスは車両のクレデンシャルを有する。モバイルデバイス300は、画面オフ状態にあるか、又はユーザによってアクティブに使用されている可能性がある。シーケンス図のステップは、任意選択的であってもよい。
【0046】
301において、モバイルデバイス300のBTアンテナは、例えば低エネルギー(LE)モードで広告信号を送信する。モバイルデバイスは、ユーザが任意のユーザ入力を提供する必要なく、いくつかのデューティサイクルで広告信号をブロードキャストすることができる。モバイルデバイス300に広告信号を送信させることは、車両350が広告信号を送信するよりも好ましい場合がある。車両が広告をしていた場合、過度の広告が存在し得る。例えば、駐車場内の全ての自動車が広告している場合(例えば、ビーコン信号の広告の使用に利用可能なチャネルが3つしかない場合)、チャネルは飽和状態になり得る。別の問題は、モバイルデバイスがポケット内にある場合、電池セーブモードになり、非常に低いデューティサイクルでスキャンする必要があり得るため、車両が、例えば20ミリ秒毎に高レートでスキャンして接続を確立しなければならないことである。
【0047】
302において、車両350のBTアンテナは、あるデューティサイクルでスキャンする。いくつかの実施形態では、車両350は、2つ以上のBTアンテナを有することができ、BTアンテナのいずれも、モバイルデバイス300からの広告信号を検出することができる。広告及びスキャンは、2つのデバイスが互いを検出するための発見プロセスの一部であり得、それによって接続を作成することができる。
【0048】
303において、2つのデバイス間にBT接続が作成される。例えば、車両350は、車両350のクレデンシャル(例えば、識別子)を含むメッセージで応答することができ、モバイルデバイス300は、そのクレデンシャルで応答することができる。いくつかの実装では、各デバイスは、例えば、接続に使用される他の情報である暗号キーを取得するために、以前にペアリングされたデバイス用に記憶されたアドレスでネットワークアドレスをチェックすることができる。
【0049】
304において、2つのデバイスのプロセッサは、それぞれのBTアンテナデバイスと通信して信号処理を実行し、信号を送信するためのBTアンテナデバイスに制御信号を提供するためにアウェークされる。例えば、モバイルデバイス300のオペレーティングシステムは、ペアリングされたデバイスのデータベース(例えば、テーブル)にアクセスして、記憶されたクレデンシャルを車両350から取得されたクレデンシャルとマッチングさせることができる。同様に、車両350のエンジン制御ユニット(ECU)は、ペアリングされたデバイスのデータベースにアクセスして、記憶されたクレデンシャルをモバイルデバイス300から取得されたクレデンシャルとマッチングさせることができる。各デバイスのプロファイルのそれぞれからの情報は、通信の後の段階で使用することができる。
【0050】
いくつかの実施形態では、ECUは、そのような機能でプログラムされ得る。他の実施形態では、ソフトウェアアップグレードをECUに適用することができる。更に、ECUは、製造後に追加される1つ以上のハードウェアデバイスを含むことができ、そのような1つ以上のハードウェアデバイスは、第1又は第2の無線プロトコルを実行するアンテナとインタフェースすることができる。そのようなアンテナはまた、製造後、例えば、アフターマーケット設置の一部として追加されてもよい。
【0051】
305において、暗号化キーは、2つのデバイスのそれぞれによって導出される。例えば、受信されたクレデンシャルに一致する対応するプロファイルには、共有シークレットを含むことができ、これを使用して暗号化キーを導出することができる。導出は、例えば、カウンタ又はタイムスタンプに基づいて、デフォルト手順に従って実行することができる。
【0052】
この段階の一部として、第1のレベルのチャレンジレスポンスを、認証の一部として実行することができる。例えば、モバイルデバイス300は、乱数を車両350に提供することができ、車両350は、暗号化キーを使用して応答を提供することができる。モバイルデバイス300は、乱数に対応する予期される暗号化値に、応答をマッチングさせることができる。
【0053】
306において、通信チャネルがセットアップされる。通信チャネルは、アプリケーション層とより下位層との間の中間層、例えば、ホストコントローラインタフェース(HCI)を含むことができる。いくつかの実施形態では、中間層は、論理リンク制御及び適応プロトコル(L2CAP)層であり得る。この層は、ホストとプロトコルスタックとの間で交換されるデータに対する、プロトコル多重化能力、セグメンテーション、及び再アセンブリ動作を担当することができる。
【0054】
307において、モバイルデバイス300と車両350との間で、セキュリティハンドシェイクが実行される。セキュリティハンドシェイクは、典型的なBT認証の上に、車両をロック解除するための追加レベルの保護を提供することができる。モバイルデバイス300及び車両350はそれぞれ、キーを記憶できるハードウェアセキュアエレメントを有することができる。セキュアエレメント内のキーは、追加レベルの認証に対するチャレンジレスポンスで使用することができる。様々な実施形態では、キーは、製造業者によって追加されるか、又はプロビジョニングプロセスで取得されるハードウェアキーであり得る。プロビジョニングプロセスの場合、デバイスのそれぞれは、サーバ(例えば、ウェブサイト)と通信することができ、サーバは、ハードウェアセキュアエレメント内に記憶されるキーを提供することができる。ハードウェアセキュアエレメントは、アプリケーション並びにそれらの機密及び暗号化データ(例えば、キー管理)をセキュアにホスティングできる、耐タンパープラットフォーム(典型的には、1つのチップセキュアマイクロコントローラ)であり得る。
【0055】
BT回路と通信しているモバイルデバイス300上のアプリケーションは(例えば、オペレーティングシステム、又はオペレーティングシステム上にインストールされたアプリケーションの一部として)、セキュアエレメントと通信することができ、特定の車両への接続のセキュアエレメントに通知することができる。セキュアエレメントは、車両350に送信されるチャレンジ(例えば、乱数)を生成することができる。いったん受信されると、車両350は、そのセキュアエレメントにチャレンジを送信することができ、セキュアエレメントが応答を生成し得る。モバイルデバイス300上のセキュアエレメントは、例えば、プロビジョニングされたデバイスのハードウェアキーを知ることによって、応答を確認することができる。セキュアエレメントは、車両がペアリングされた後にプロビジョニングサーバから取得することができる、マッチングされている車両のクレデンシャルをキーに記憶することができる。
【0056】
他の実施態様では、モバイルデバイス300は、自身がどの車両とペアリングされているかを追跡し、どの車両が現在接続されているかを判定することができる。セキュアエレメントは、その車両に対するキープロビジョニングに基づいて、チャレンジを生成することができる。認証を介して、車両350は、どのモバイルデバイスが現在のリンクに対応するかを知り、したがってどのキーを使用してチャレンジに応答するかを知る。車両350は、ペアリングプロセス中にモバイルデバイスに対応するキーを取得することができる。他の実施形態では、車両350でチャレンジを開始させることができる。
【0057】
チャレンジメッセージには、メッセージのタイプがチャレンジであることを示す情報を含むことができる。そのようなメッセージのパケット定義におけるそのような情報の場所は、オペレーティングシステム又はインストールされたアプリケーションで定義された第1の無線プロトコルを介して、測距サービスの一部として追加することができる。
【0058】
他の実施形態では、このセキュリティハンドシェイク用の1つ以上の新たなキー(例えば、共有シークレット)は、全ての対話セッション後、例えば、車両がロック解除された後に、交換することができる。次いで、次の対話セッション(すなわち、ユーザが車両を次回使用するとき)のために、1つのデバイスは、チャレンジの一部として他のデバイスにデータを送信することができ、他のデバイスは、データを暗号化するか、又は変換を実行して予期される値と比較される応答を取得することができる。
【0059】
308において、任意の追加データが交換される。例えば、車両は、例えば、ユーザによって定義され得るように、タンク内の燃料又は他の情報についての情報を送信してもよい。いくつかの実施態様では、情報は、通知又はポップアップウィンドウとして現れ得る。
【0060】
309において、モバイルデバイス300と車両350との間で、測距セットアップハンドシェイクが交換される。測距セットアップハンドシェイクには、2つのデバイスの測距能力を含むことができる。異なる車両は異なる数のUWB受信機を有することができ、又は車両が少数だけをオンにしたい場合があるため、車両上のUWB受信機についての情報を提供することができる。粗い測距が最初に生じてもよく、モバイルデバイスがより近くになった後にUWB受信機を使用してより細かい測距が生じてもよい。例えば、車両のエンジンをユーザが始動させることが可能になる前に高精度が得られるように、モバイルデバイスが車両内にあると推定される場合、より多くの受信機をオンにすることができる。どのUWB受信機を最初にオンにするかは、ユーザが車両のどちら側に近づいているかに依存し得る。他の設定/パラメータは、例えば、ソフトウェア又は物理的構成要素の動的決定又は更新の一部として、ペアリング後又は測距手順の間に提供されてもよい。
【0061】
測距能力の他の例には、アンテナの数、それらのアンテナの場所(例えば、アンテナ間の相対距離、及び/又はECUなどの車両内の起点間の相対距離)、使用するアンテナの数、暗号化プロトコル、パケットフォーマット、動作モード、及びサポートされる周波数範囲が含まれる。そのような能力は、車両又はモバイルデバイスのソフトウェア更新を反映して、新たな又は異なる能力をもたらすことができる。
【0062】
測距セットアップハンドシェイクには、測距の頻度又は測距スケジュール方法など(例えば、複数の車両又は複数のモバイルデバイスがある場合-ラウンドロビン、一度に1つ、又は他のオプション)、測距の実行方法についてのネゴシエーションを含むことができる。例えば、車両の近くに複数のデバイス(例えば、家族全員が1台の自動車に向かっている)、又はモバイルデバイスの近くに複数の車両(例えば、ガレージ内に3台の自動車)が存在してもよい。モバイルデバイスは、それが3つの異なる車両に接続されていると知り得るため、モバイルデバイスは、各車両に対してより低いレート(例えば、25ミリ秒)の測距測定を望むか、又は特定の時間/周波数をスケジューリングして各車両で測距を実行することができる。同様に、車両は、複数のデバイスが近くにあるときに、そのようなスケジューリングを実行してもよい。測距セットアップハンドシェイクはまた、車両が互いに通信しているかどうかにも依存し得る。
【0063】
測距セットアップハンドシェイクは、例えば、車両がUWB無線機をオンにしてパケットの検索を開始すべき時間を調整することによって、測距が開始される時間を指定することができる。BTを介して送信された開始メッセージは、例えば、以下に詳述する特定のメッセージを用いて、使用することができる。UWB無線機がオンであるときのデューティサイクルは、例えば、1KHz又は10KHzに指定することができる。例えば、開始メッセージが受信されると、デバイスは、開始メッセージから100ミリ秒(又は追加のマージンに対して90ミリ秒)、及び更にその後1KHz毎に、測距を開始することに同意することができる。
【0064】
測距セットアップハンドシェイクは、UWB測距用の新たなセッションキーのセットを導出することができる。キーは、例えば、各セッション又は全てのN番目のセッション毎に、定期的に更新することができる。いくつかの実施形態では、セッションキーは、セキュリティハンドシェイクに対するチャレンジレスポンスで使用された共通の共有シークレットから導出することができ、導出は、デフォルト又はネゴシエーション手順を使用する。したがって、測距セットアップハンドシェイクは、測距に対して予期されることについて、車両及びモバイルデバイスに通知するための制御チャネルとして機能することができる。
【0065】
310において、例えば、UWBメッセージを使用して、測距が実行される。いくつかの実施形態では、測距は、モバイルが測距要求メッセージを車両の1つ以上のアンテナに送信することによって実行することができる。車両アンテナは応答をすることができ、モバイルデバイスは、潜在的に、異なる時間に測距応答メッセージを受信することができる。3つのアンテナノードを使用するそのような例が、
図4に提供されている。他の実施例では、より多くのアンテナノード、例えば6~8個を含み得る。単一のノードは、1つの送受信機と、潜在的に、2つ以上のアンテナとを有し得る。
【0066】
図4に、本発明の実施形態に係る、モバイルデバイス400と、車両の3つのアンテナ452~456とを伴う測距動作のシーケンス図を示す。この
図4の例では、モバイルデバイス400は、アンテナ452~456(例えば、異なるノードのそれぞれ)によって受信される単一のパケットをブロードキャストする。別の実装形態では、モバイルデバイス400は、各ノードにパケットを送信し、各ノードにその別個のパケットに応答させることができる。車両が特定のアンテナをリッスンして、どの車両アンテナが関与しているかを両デバイスが知ることができる、又はメッセージがどのアンテナに対するものであるかをパケットが示すことができる。例えば、第1のアンテナは、受信したパケットに応答することができ、応答が受信されると、異なるアンテナに別のパケットを送信することができる。しかし、この代替手順にはより多くの時間及び電力がかかる。
【0067】
図4に、T1において送信され、時間T2、T3、及びT4においてアンテナ452~456でそれぞれ受信される測距要求410を示す。したがって、アンテナ(例えば、UWBアンテナ)は実質的に同時にリッスンして、独立して応答する。アンテナ452~456は測距応答420を提供し、これらは時間T5、T6、及びT7において、それぞれ送信される。モバイルデバイス400は、時間T8、T9、及びT10において、測距応答をそれぞれ受信する。任意選択的な測距メッセージ430を送信することができ(T11に示す)、それらは時間T12、T13、及びT14にアンテナ452~456によってそれぞれ受信される。距離/時間情報440を測距メッセージのセット後に送信することができ、情報を制御ユニットに中継することができる1つのアンテナによって受信されることのみが必要とされる場合がある。図示する例では、モバイルデバイス400が追跡したタイムスタンプがアンテナ452~456のうちの少なくとも1つに送信され、それによって、例えば車両内のアンテナの場所に基づいて、車両が、車両からの距離を判定することができる。他の例では、モバイルデバイス400は、距離を判定し、その距離を車両に送信することができる。
【0068】
いくつかの実施形態では、どの測距応答がどのアンテナからのものであるかを判定するために、車両は、例えば測距セットアップハンドシェイクの間に送信するべき応答メッセージの順番をモバイルデバイスに通知することができる。他の実施形態では、測距応答は、識別子を含むことができる。識別子はどのアンテナがメッセージを送信したかを示す。これらの識別子は測距セットアップハンドシェイクにおいて取り決めることができる。
【0069】
測距メッセージ430を用いると、精度の向上を可能にすることができる。アンテナは互いに同期クロックとすることができるが、応答時間(例えば、T2とT5との間の遅延)は遅延が異なることがある。例えば、T5-T2とT6-T3とは異なることがある。測距メッセージ430により、アンテナノードのそれぞれに対して異なるターンアラウンドタイムに対する復元性を提供することができる。ターンアラウンドタイムにこのような差があると、1メートル又は2メートルの測距誤差が生じる可能性がある。測距メッセージ430を加えることによって、実施形態では、異なるターンアラウンドタイムに起因する誤差を減らすことができる。
【0070】
メッセージ410~430は、例えば、少数パルスを含むことによって、ペイロード内にデータをほとんど含まなくできる。より少ないパルスの使用が、有利であり得る。車両及び(潜在的にポケット内)モバイルデバイスの環境によって、測定が難しくなる可能性がある。別の例として、モバイルデバイスが近づいてくる方向とは異なる方向に車両アンテナが向いている場合がある。したがって、各パルスに対して高低を用いることが望ましいが、特定の時間窓内に(例えば、1ミリ秒にわたって平均して)どのくらいの電力を使用できるかに関して政府による規制(並びに電池に対する懸念)がある。これらのメッセージ内のパケットフレームは、150~180マイクロ秒長のオーダーとすることができる。メッセージ440のパケットフレームは、例えば200又は250マイクロ秒の長さに、より長くすることができる。
【0071】
311において、更なる測距を実行することができる。例えば、軌道を判定するのに使用することができる、2つ以上の距離を判定することができる。軌道が車両に向かう動きを示している(例えば、指定された測定回数に対して距離がより小さくなっている)場合、車両は、車両に入るユーザの意図を推測することができる。別の例として、異なる動作を異なる距離閾値で実行することができ、例えば、1つの距離閾値でライトをオンにし、より近い距離閾値で車両をロック解除し、更により近い距離閾値で(例えば、ユーザがボタンを押下した後に)エンジンをオンにすることを可能にすることができる。
【0072】
312において、車両350のエンジン制御ユニットは、距離及び/又は距離の変化率、並びに軌道に基づいて、どの動作(単数又は複数)を実行すべきかを判定することができる。特定の動作は、ユーザによってモバイルデバイス及び/又は車両にプログラムされた設定(単数又は複数)に依存し得る。モバイルデバイスと車両との間の更なる通信を使用して、BTを介した通信を含む、実行すべき動作を判定することもでき、例えば、エアコン又はヒータをオンにするかどうかについてユーザに入力を促すこともできる。
【0073】
D.パルス
測距メッセージのそれぞれの一つ(フレーム又はパケットとも呼ばれる)は、変調される情報を表し得るパルスのシーケンスを含むことができる。フレーム内の各データシンボルは、シーケンスであり得る。パケットは、例えば物理層及びMAC層の、ヘッダ情報を含むプリアンブルを有し、宛先アドレスを含むことができる。いくつかの実施態様では、パケットフレームは、タイミングをラインアップできる、同期部分及び開始フレーム区切り(SFD)を含むことができる。
【0074】
パケットには、セキュリティが構成されている方法を含むことができ、暗号化された情報、例えば、どのアンテナがパケットを送信するかの識別子、を含むことができる。暗号化された情報は、認証のために使用することができる。測距動作の場合、データのコンテンツは、判定される必要がない場合がある。いくつかの実施形態では、特定のデータ片のパルス用タイムスタンプを使用して、送信と受信との間の差を追跡することができる。したがって、コンテンツを使用して、パルスをマッチングすることができる。いくつかの実施態様では、暗号化された情報は、メッセージが対応するステージを認証するインジケータを含むことができ、例えば、測距要求410はステージ1に対応することができ、測距応答420はステージ2に対応することができ、測距メッセージ430はステージ3に対応することができる。
【0075】
E.距離の判定
狭いパルス(例えば、~1ns幅)を使用して、距離を正確に判定することができる。高帯域幅(例えば、500MHzのスペクトル)は、狭いパルス及び正確な位置判定を可能にする。パルスの相互相関は、パルスの幅の小さな断片であるタイミング精度を提供することができ、例えば、数百又は数十ピコ秒以内の精度を提供し、サブメータレベルの測距精度を提供する。パルスは、受信機によって認識されるいくつかのパターンにおいて、プラス1及びマイナス1の測距波形を表すことができる。
【0076】
距離測定では、飛行時間測定とも呼ばれる、ラウンドトリップ時間測定を使用することができる。上述のように、モバイルデバイスは、タイムスタンプのセットを送信することができ、タイムスタンプのセットは、2つのデバイス間のクロック同期の必要性を除去することができる。
III.認証及びセキュアチャネル確立(ペアリング)
【0077】
上述のように、BT通信チャネル(又はその一部)は、例えば、ユーザが新たなモバイルデバイス及び/又は新たな車両を取得するときに、ペアリングプロセス中に確立することができる。いくつかの実施態様では、ペアリングは、BT広告を開始する車両によって開始される。ペアリングを開始するための広告ペイロードは、様々なデータを含むことができる。他の実施態様では、モバイルデバイスは、車両とのペアリングを開始することができる。いったんペアリングが完了すると、モバイルデバイスは、チャネル(例えば、接続指向L2CAPチャネル)をセットアップすることができる。測距サービスメッセージ交換して能力を交換し、セキュリティキーを交換してUWBペアリングを完了するために、接続指向チャネルを使用することができる。
【0078】
いったん車両及びiOSデバイスがペアリングされると、後続のBT接続を車両によって開始することができる。車両はまた、ペアリング中に作成されたリンクキーを使用して暗号化されたリンクをセットアップするために、標準BT暗号化ハンドシェイクを開始することができる。モバイルデバイス又は車両は、BTを介した測距ハンドシェイクを最初に開始することによって、UWB測距を開始することができる。ペアリングに関する更なる詳細を、以下に提供する。
【0079】
ペアリングは、2つのデバイス(例えば、電話及び車両の制御ユニット)が互いに関連して接続(例えば、Bluetooth(登録商標)接続)を作成する方法である。ペアリングが生じると、2つのデバイスは互いに通信することができる。ペアリングは、一般に、例えば、イニシエータデバイスの設定ページ上で発見されたデバイスを選択することにより、ユーザによって手動で開始される。次いで、イニシエータデバイスは、まだペアリングされていないレスポンダデバイスにペアリング要求を送信することができる。ペアリングは、通常、2つのデバイス間で1回生じる。ペアリング後、2つのデバイス間の接続は、自動的に認証される。
【0080】
ペアリングを続行するために、2つのデバイス間で、認証用のパスワード又は「パスキー」が交換され得る。パスキーは、両方のデバイスが互いにペアリングすることに同意したことを確認するために使用される。2つのデバイスがペアリングされると、デバイスは、他のデバイスのアイデンティティについて確認することができる。ペアリングを完了するために、2つのデバイスは、デバイス間の全ての将来の通信に使用される共有シークレットキー(単数又は複数)を生成する。
【0081】
Bluetooth(登録商標)(BT)低エネルギーの場合、セキュリティマネージャプロトコル(SMP)が、3つのフェーズでペアリングを実行する。フェーズ1では、2つのデバイスはそれらの入力及び出力能力を告知し、これがフェーズ2の好適な方法を判定するために使用される。フェーズ2では、2つのデバイスが互いに認証され、フェーズ3で使用されるキー用のキー生成方法を判定する。より具体的には、フェーズ2では、2つのデバイスは、フェーズ1でのペアリング要求及びペアリング応答パケットからのIO能力を使用して、どの認証方法を使用すべきかを判定する。典型的には、4つの認証技術、すなわち、Just Works(登録商標)、数値比較、パスキー、及び帯域外(OOB)が利用可能である。フェーズ3では、各デバイスは、将来の通信のために、1つ以上のキーを他のデバイスに配信することができる。例示的なキーには、(a)暗号化された接続用のセッションキーを生成するために使用されるロングタームキー(LTK)、(b)データに署名し署名を検証するために使用される接続署名解決キー(CSRK)、及び(c)プライベートアドレスを生成するために使用されるアイデンティティ解決キー(IRK)、が含まれる。Bluetooth(登録商標)4.2デバイスでは、Elliptic Curve Diffie Hellman(ECDH)公開キー暗号法を使用して、LTKが交換/生成される。
【0082】
Just Works(登録商標)では、デバイスは、それらの公開キーを交換する。次いで、レスポンダデバイスは、ナンス(例えば、ランダムなシード値)を生成し、ナンス及び両方の公開キーを使用して確認値Cbを生成する。次いで、レスポンダデバイスは、イニシエータデバイスにナンスと共にCbを送信する。次いで、イニシエータデバイスは、(両方の公開キーと共に)レスポンダデバイスのナンスを使用して、Cbにマッチングするべきそれ自身の確認値Caを生成する。確認値がマッチングする場合、接続は続行する。イニシエータデバイスは、それ自身のナンスを生成し、それをレスポンダデバイスに送信することができ、それ自身の検証を実行することができる。
【0083】
数値比較は、Just Works(登録商標)と同じ手順に従うが、終了時に別のステップを追加する。2つのデバイスが、確認値がマッチングすることを確認すると、両方のデバイスは、独立して、両方のナンスを使用して最終的な6桁の確認値を生成する。デバイスは両方とも、それらの計算された値をユーザに表示する。次いで、ユーザは、両方の値がマッチングしていることを手動でチェックし、接続を確認する。この追加のステップにより、このペアリング方法がマンインザミドル(MITM)攻撃からの保護を提供することを可能にする。
【0084】
パスキーでは、デバイスの一方又は両方に、6桁の数字が入力される。2つのデバイスは、パスワード、以前に交換された公開キー、及びナンスを使用して、接続を認証する。このプロセスは、パスキーの全てのビットに対してビット毎に行うことができる。例えば、1つのデバイスが、パスキーの1ビットに対する確認値を計算し、それを他のデバイスに明らかにする。次いで、他のデバイスは、そのパスキーの最初のビットに対するそれ自身の確認値を計算し、第1のデバイスに明らかにする。このプロセスは、パスキーの全てのビットが交換されており、マッチングすることが確認されるまで継続する。このパスキー方式は、MITM攻撃に対して復元力がある。
【0085】
帯域外(OOB)では、近距離無線通信(NFC)などの外部通信手段を使用して、ペアリングプロセスで使用されるいくつかの情報(例えば、公開キー、ナンス、及び確認値)を交換する。ペアリングは、Bluetooth(登録商標)無線機を使用して完了するが、OOBメカニズムからの情報を必要とする。これは、OOBメカニズム内に存在するMITM保護のレベルのみを提供する。
【0086】
図5は、本発明の実施形態に係る、ペアリングプロセス500のシーケンス図を示す。ペアリングプロセスは、イニシエータデバイス502(例えば、電話)及びレスポンダデバイス504(例えば、車両)を伴う。各デバイスは、入力及び出力(IO)に対するその能力を判定する。ペアリングリンク内の各デバイスに関して、IO能力は、暗号化共有シークレットキーを作成するそれらの能力を判定する。公開キー暗号法を使用することができる。
【0087】
ステップ505において、ユーザは、レスポンダデバイス504上で発見モードを起動する。他のBluetoothデバイスに見つかるため、デバイスは、広告信号が送信されるように、発見可能なモードに設定されるべきである。広告信号により、近傍の他のデバイスがその存在を検出し、接続を確立しようと試みることを可能にする。例えば、ユーザは、レスポンダデバイス504上のボタンを起動することができる。
【0088】
ステップ510において、レスポンダデバイス504は、ユーザの起動に応じて広告信号を発する。イニシエータデバイス502は、広告信号を検出することができる。例えば、イニシエータデバイス502は、広告信号を定期的にスキャンすることができる。ユーザは、イニシエータデバイス502がそのようなスキャンを実行し、かつ、スキャンレートを設定し、又はスキャンレートがデフォルトで設定され得ることを可能にすることができる。広告信号は、デバイスのタイプ(例えば、電話、ヘッドセットなど)、デバイス名(例えば、ユーザ又は製造者によって割り当てられた)などの、識別子を含むことができる。
【0089】
ステップ515において、ユーザは、レスポンダデバイス504のユーザインタフェースにユーザ入力を提供することによって、ペアリングプロセスを開始する。例えば、ユーザは、設定ページにナビゲートし、レスポンダデバイス504が広告信号を介して検出されていることを判定し、レスポンダデバイス504とペアリングするオプションを選択することができる。
【0090】
ステップ520において、ペアリング要求メッセージが、イニシエータデバイス502からレスポンダデバイス504に送信される。一例として、ペアリング要求メッセージには、イニシエータデバイス502のIO能力、認証データ可用性、認証要件、キーサイズ要件、及び他のデータを含むことができる。
【0091】
ステップ525において、ペアリング応答メッセージがレスポンダデバイス504から送信され、ペアリング要求メッセージと同じ情報の多くを含む。ステップ520及び525は、フェーズ1の一部として生じ得る。デバイスは、例えば、認証オプションを選択し認証を実施するために、メッセージ内の情報を使用して認証を実行することができる。
【0092】
ステップ530では、例えば上述の4つのモードのうちの1つを介して、認証が実行される。認証では、デバイスが、使用されている暗号化キーに対応する別のデバイスと通信することを確立することができる。認証は、1つのデバイス又は両方のデバイスによって確認することができる。認証は、フェーズ2として実行することができる。
【0093】
ステップ535では、キーは、例えばフェーズ3の一部として交換される。キーの交換は、デバイスが互いに接続(リンク)するたびにペアリング(例えば、フェーズ1及び2)が実行される必要がないように、ボンディングプロセスに対応することができる。したがって、将来の通信を暗号化するために、キーを使用することができる。例えば、広告信号は、レスポンダデバイスを識別することができ、イニシエータデバイスは、2つのデバイスが既にペアリングされていることを判定することができる。次いで、イニシエータデバイスは、1つ以上のキーの使用を続行してレスポンダデバイスにメッセージを送信することができ、レスポンダデバイスは、その記憶されたキーを使用してメッセージを解読するか、そうでなければメッセージを読み取ることができる。
【0094】
後になって、ステップ540では、通信用のリンクが、デバイス間で自動的に確立される。ちょうど説明したように、このリンクは、交換されたキーを使用することができる。また、デバイスは既にペアリングされているため、いったん広告信号が検出されると、リンクを介してメッセージが直ちに送信され得る。しかし、この自動接続は、ペアリングプロセスが既に実行されていることを必要とする。デバイスは、広告信号内のデータを既にペアリングされているデバイスのリストと比較することによって、他のデバイスが既にペアリングされていると判定することができる。
IV.測距サービス-第1のプロトコル
【0095】
様々な実施形態では、測距サービスは、一次サービスとして又は二次サービスとしてインスタンス化されてもよい。提供されるいくつかの実施例では、測距サービスは、BT接続指向チャネル上で交換され得るメッセージを定義する。モバイルデバイス及び車両の両方は、データベースをサポートすることができ、測距サービスとは無関係に、データベースと対話するために定義された手順を使用することができる。車両は、中央デバイスとして機能することができ、チャネルを開くことができる。第1の無線プロトコルを使用して測距サービスを確立するため(例えば、セキュリティハンドシェイク307、データ交換308、及び測距セットアップハンドシェイク309を実施するための)プロトコルの態様を、いくつかの例示的なメッセージシーケンスが後に続く、以下で説明する。
A.プロトコル
【0096】
測距サービスメッセージフォーマット用の例示的なフォーマットは、メッセージのタイプを示すコード(例えば、1オクテット長)を提供することができる。長さフィールド(例えば、2オクテット長)は、コードフィールド及び長さフィールドを含まない場合もある、メッセージのデータフィールドのオクテットでのサイズを示すことができる。データフィールドは、長さが可変であり得る。したがって、コードフィールドは、データフィールドのフォーマットを判定することができ、長さフィールドは、データフィールドの長さを示すことができる。以下のセクションでは、モバイルデバイスと車両との間のUWB測距をネゴシエーション、開始、及び完了するための測距サービスメッセージの例示的な詳細を提供する。
1.測距能力要求/応答
【0097】
全ての接続の開始時に測距セットアップ(能力)ハンドシェイクを開始して、モバイルデバイス及び車両上のUWBデバイスの状態を交換することができる。測距能力要求メッセージは、特定のIDコード(例えば、1)を有することができる。このメッセージのいくつかの例示的パラメータには、サポートされた特徴マスク、必要な特徴マスク、ソフトウェアバージョン、リンク識別子、UWB無線機デバイスの数、及びUWBデバイス記述子が含まれる。
【0098】
ソフトウェアバージョンパラメータは、イニシエータデバイス上で実行する現在の測距ソフトウェアバージョンを示すことができる。リンク識別子は、レスポンダが受信したUWBパケットをイニシエータとのBT接続にマッチングさせることを可能にする乱数であり得る。したがって、リンク識別子は、UWBメッセージ内に含まれ得る。
【0099】
モバイルデバイスと車両との両方は、2つの特徴マスク、すなわち、サポートされた特徴マスク及び必要な特徴マスクを維持することができる。サポートされた特徴マスクは、サポートされた特徴を示し得る。特徴マスクパラメータは、全ての特徴のビットマスクであり得る。各特徴に対して、単一のビットを指定することができ、例えば、特徴がサポートされている場合は1に設定され、そうでない場合は0に設定することができる。例示的な特徴はセキュア測距であり、1対1測距(例えば、1デバイス対1デバイス)、及び1対多測距(例えば、1つのモバイルデバイス対複数の車両、又は複数の車両対複数のモバイルデバイス)である。必要な特徴マスクは、必要な特徴を示すことができる。例えば、セキュア測距及び1対1測距のためのサポートが必須であり得る。
【0100】
UWBデバイス記述子は、利用可能な各UWBアンテナデバイス(例えば、アンテナ、又は2つ以上のアンテナを有するノード)に対して1つのエントリを有することができる。特徴要求メッセージは、イニシエータデバイス上の各UWBデバイスに対して1つのUWBデバイス記述子エントリを有することができる。UWBアンテナデバイスのそれぞれは、以下のパラメータを有するUWBデバイス記述子によって特徴付けることができる。すなわち、ファームウェアバージョン-現在のUWBファームウェアのバージョン、ハードウェアバージョン-現在のUWBハードウェアのバージョン、製造業者の名前-UWB製造者の名前。
【0101】
利用可能なUWBデバイスの数は、特定の測距セッションに指定することができる。リンク識別子は、BTリンクをUWBパケットにマッピングすることができる。較正データは、ペアリング又は全ての接続において交換することができる。
【0102】
測距能力応答メッセージは、測距能力要求メッセージと同様であり得る。レスポンダは、このメッセージを送信するために指定されてもよい。レスポンダが、測距能力要求メッセージの要求された特徴にリストされたいかなる特徴もサポートしていない場合、レスポンダは、サポートされていない特徴エラーコードと共に追加の測距コマンド完了メッセージで応答することができる。測距能力応答メッセージには、パラメータ、すなわち、サポートされた特徴、ソフトウェアバージョン、UWBデバイスの数、及びUWBデバイス記述子を含むことができる。
2.測距セキュリティキー要求/応答
【0103】
要求及び応答は、キーを交換するためのハンドシェイクで使用することができ、ペアリング時に共有シークレットを導出することができる。周期的なキーリフレッシュもまた、使用することができる。いくつかの実施態様では、ハンドシェイクを全ての接続で実行し、チャレンジ/レスポンスを実施することができる。
3.測距開始/停止要求
【0104】
測距セッションは、パラメータのセットを含む測距開始要求コマンドを送信することによって開始することができる。受信デバイスは、それ自身の測距開始要求で応答することによって異なるパラメータを提案するか、又は要求を受け入れるか、を決定することができる。受信デバイスが要求を受け入れることを決定した場合、測距開始通知イベントを送信することができる。セキュア測距が必要であり、セキュリティハンドシェイクが完了していない場合、この要求は、不十分な認証エラーコードと共に追加の測距コマンド完了メッセージで拒否され得る。
【0105】
測距開始要求の例には、最小測距間隔(例えば、30ms)、最大測距間隔(例えば、2,550ms)、測距オフセット(例えば、30ms~2,550ms)、及び測距タイムアウト(例えば、300ms~25.5s)を含むことができる。測距間隔は、連続する各測距試行間の時間量を定義することができる。最小及び最大測距間隔は、許容可能な最小及び最大測距期間を、例えばミリ秒単位で指定することができる。モバイルデバイス又は車両のいずれかが、測距を開始することを要求してもよい。
【0106】
測距モードは、測距停止要求を送信することにより、モバイルデバイス又は車両のいずれかによって退出することができる。要求されたデバイスは、成功の状態コードで完了した測距コマンドで応答することができる。
4.測距イベント通知
【0107】
イベント通知は、中央及び周辺デバイスによって生成されるイベントをカプセル化するために使用することができる。サブイベントコードは、以下のサブイベントパラメータを有するイベントパラメータの最初のもの(例えば、最初のオクテット)とすることができる。測距サブイベントタイプの例は、次のとおりである。すなわち、測距コマンド完了サブイベント(パラメータ:状態)、測距能力更新サブイベント(パラメータ:UWBデバイスの数及びUWBデバイス記述子)、測距開始サブイベント(パラメータ:測距間隔及び測距オフセット)、測距セッション状態変更サブイベント(パラメータ:セッション状態)、及び測距デバイス状態変更サブイベント(パラメータ:デバイス状態)。
【0108】
測距コマンド完了サブイベントは、レスポンダによって送信され、イニシエータによって送信されたコマンドが完了したことを示し得る。状態パラメータは、コマンドが成功したかどうかを示すことができる。
【0109】
測距能力更新サブイベントは、測距用のUWBセンサの可用性の任意の変化を示すことができる。このイベントは任意選択的であり、受信デバイスによって無視されてもよい。このイベントは、初期測距用に利用できないか又は適しているUWBセンサのサブセットをイニシエータデバイスが有していることを示すために使用することができる。このイベント用のパラメータは、UWBデバイスの数であり得る。
【0110】
測距開始サブイベントは、イニシエータからの測距開始要求に応じて送信することができる。レスポンダは、受け入れられた測距間隔及び測距オフセットで、このイベントを送信できる。測距オフセットパラメータは、このイベントに対する開始UWBセッションの粗い推定値を提供することができる。このイベントを使用して、測距間隔及びオフセットを0に設定することにより、ワンショットの即時測距セッションをトリガすることができる。以前の測距開始要求メッセージは、即時測距セッションには必要とされない。レスポンダは、即時要求によって無視されてもよい。測距間隔のパラメータは、30ms~2,550msとすることができ、即時測距を要求するために0に設定することができる。測距オフセットのパラメータは、30ms~2,550msとすることができ、即時測距を要求するために0に設定することができる。
【0111】
UWB関連アクションの開始、進行、及び完了を示すために、測距セッション状態変更サブイベントのセットを生成することができる。これらのサブイベントは、モバイルデバイス及び車両の両方によって生成することができる。セキュリティキーリフレッシュイベントは、新たなセキュリティキーのセットを要求するために、車両又はモバイルデバイスによって開始されてもよい。ロック及びロック解除イベントは、成功した測距セッション後に、車両によって生成することができる。このサブイベントのセットの例には、以下が含まれる。すなわち、測距セッションキーリフレッシュサブイベント(例えば、イニシエータが全てのセキュリティキーのリフレッシュを必要とする場合)、測距セッションロック開始サブイベント(例えば、イニシエータがロック動作を実行している場合)、測距セッションロック完了サブイベント(例えば、イニシエータがロック動作を完了した場合)、測距セッションロック解除開始サブイベント(例えば、イニシエータがロック解除動作を実行している場合)、測距セッションロック解除完了サブイベント(例えば、イニシエータがロック解除動作を完了した場合)、測距セッションイグニション開始サブイベント(例えば、イニシエータがイモビライザ動作を実行している場合)、測距セッションイグニション完了サブイベント(例えば、イニシエータがイモビライザ動作を完了した場合)、及び測距セッションタイムアウトサブイベント(例えば、イニシエータがタイムアウトにより測距を停止した場合)。
【0112】
測距デバイス状態変更サブイベントのセットは、車両又はモバイルデバイスの状態の変化に応じて生成され得る。デバイス状態パラメータは、イニシエータの新たな状態を示す。サブイベントの例には、以下が含まれる。すなわち、測距デバイス無効化サブイベント(例えば、イニシエータが受信機を有効なキーとして認識しない場合)、測距デバイス認証サブイベント(例えば、イニシエータがデバイスのローカル認証を完了した場合)、及び測距デバイス有効化サブイベント(例えば、イニシエータが受信機を有効なデバイスとして認識する場合)。
【0113】
測距デバイス無効化サブイベントが車両によって使用されて、モバイルデバイスが無効化され、もはやモバイルデバイスがユーザ認証を完了するまでいかなるアクションも実行できないことを示すことができる。イニシエータ又はレスポンダがこのイベントに応じて任意の既存の測距セッションを停止することを決定した場合、イニシエータ又はレスポンダは、測距停止要求メッセージを送信することができる。
【0114】
測距デバイス認証完了サブイベントは、イニシエータデバイスがユーザのローカル認証を実行したことを示すことができる。レスポンダはこのイベントを受け入れ、イニシエータデバイスがレスポンダ上でアクションを実行することを可能にし得る。
【0115】
測距デバイス有効化サブイベントがイニシエータによって使用されて、受信機がイニシエータ上で任意の動作を実行するための有効なデバイスとして再有効化されていることを示すことができる。このイベントに応じて、測距セッションを、イニシエータ又は受信機によって開始することができる。
【0116】
測距デバイスは、そのエラー状況に厳密にマッチングするエラーコードを使用することができる。例示的なエラーコードには、以下が含まれる。すなわち、成功、不十分な認証、測距タイムアウト、最大測距クライアント制限超過、及びサポートされていない特徴。
B.メッセージシーケンス
【0117】
このセクションでは、測距サービスメッセージを使用する、車両とモバイルデバイスとの間の例示的な対話を示す。通信チャネルが既に確立されていると想定する。
【0118】
図6は、本発明の実施形態に係る、測距間隔ネゴシエーションを示す。第1の測距開始要求は、イニシエータ600がレスポンダ650に送信することができる。レスポンダ650は、それに応じてそれ自身の第2の測距開始要求610を、しかし異なる測距パラメータのセットと共に、送信することができる。測距交換メッセージ615~625は、例えば、パラメータによって定義されるように、測距能力のネゴシエーションの一部として送信することができる。リモート側からの測距パラメータが許容可能である場合、レスポンダ650は、測距セッション用のパラメータと共に測距開始サブイベントを送信することができる。
【0119】
図7は、本発明の実施形態に係る、キーリフレッシュネゴシエーションを示す。セキュリティキーリフレッシュ要求715は、リフレッシュサブイベント705及び停止メッセージ710が送信された後、イニシエータ700(モバイルデバイス又は車両)によって開始することができ、その後、UWB測距セッションを一時停止することができる。イニシエータ700は、後続の測距セッション用のセキュリティパラメータをレスポンダ750に提供でき、レスポンダ750は、セキュリティキー応答720を提供することができる。セキュリティキーが正常にリフレッシュされると、イニシエータ700は、開始サブイベント730が後に続く測距開始要求メッセージ725を使用して、新たなUWB測距セッションを開始することができる。
【0120】
測距キーリフレッシュハンドシェイクは、指定された時間内で完了することが必要とされ得る。ハンドシェイクが完了する前にタイマが満了すると、現在のセキュリティパラメータで測距セッションが再開される場合がある。UWB無線機は、タイムアウトによって引き起こされる任意のドリフトを補償するために、再同期する必要があり得る。
V.測距サービス-第2のプロトコル
【0121】
第2の無線プロトコル(例えば、UWB)を介した測距サービスに使用される例示的なメッセージの説明を、例示的なメッセージシーケンスと共に後述する。UWBメッセージングの更なる詳細は、参照により組み込まれる、IEEE規格802.15.4(登録商標)(2016)の「IEEE Standard for Low-Rate wireless networks」に見出すことができる。
A.プロトコル
【0122】
UWB測距開始要求は、UWB測距セッションの開始を示して、イニシエータとレスポンダとの間の正確な調整を可能にすることができる、任意選択的なメッセージである。
【0123】
UWB測距停止要求は、測距セッションの終了を示すことができる任意選択的なメッセージである。セッションは、キーを更新する必要があるため、例えば、もはやデバイス間の測距を実行する必要がなくなったため、又は1つ以上のデバイスが測距の終了を望むために、終了することができる。
【0124】
UWB測距開始イベントメッセージは、UWB測距開始要求メッセージに応じて送信することができる。UWB測距停止イベントメッセージは、UWB測距停止要求メッセージに応じて送信することができる。
【0125】
UWB測距交換メッセージは、任意選択的に暗号化されたプリアンブルをセキュア測距に対して提供する、及びイニシエータとレスポンダとの間の必要なラウンドトリップ時間タイムスタンプを転送する、という二重の目的を有し得る。このメッセージの例示的なパラメータには、有効時間、送信及び受信タイムスタンプ、タイムスタンプ不確定性、タイムスタンプ有効性、RSSI、及び状態を含むことができる。このイベントは、単一の双方向測距交換、又は1対1測距若しくは1対多測距のいずれかに対する3方向を超える測距交換の一部としてトリガすることができる。
【0126】
UWB測距交換メッセージの例示的なパラメータの更なる説明は、以下のとおりである。有効性タイムスタンプは、絶対時間ベースであり得る。測距ノードの数は、メッセージ内の有効な測距タイムスタンプの数に対応することができる。インデックス(node_x_index)は、レスポンダノードリスト内へのインデックスであり得る。測距タイムスタンプnode_xは、特定のノードから直近に受信又は送信されたUWBパケットのタイムスタンプに対応し得る。例えば、様々な信頼度で1.5cm~3.6mの値範囲を有し得る、測距タイムスタンプ不確実性node_x 1である。RSSI_node_x 1は、受信パケットのdBmでのRSSIとすることができる。測距状態node_xは、ノードxの状態を提供することができる。ノードx_antennaは、パケットを受信又は送信するnode_x用のどのアンテナかを画定することができる。
【0127】
UWB測距状態の例は、次のとおりであり得る。すなわち、成功(パケットの受信及び送信の成功)、タイムスタンプオーバーフロー(タイムスタンプカウンタオーバーフロー)、トランザクション期限切れ(トランザクションが長すぎて期限切れになった)、フレームが長すぎる、利用不可能なキー(セキュア測距には利用できないキー)、サポートされていないセキュリティ(サポートされていないセキュア測距モード)、及びサポートされていない測距(サポートされていない測距モード)。
B.メッセージシーケンス
【0128】
1対1測距のいくつかの実施形態では、レスポンダが最初のUWB測距交換パケットを見ることができるとすぐに、各レスポンダ(例えば、UWB無線機)がイニシエータとのUWB測距交換を実行することができる。
図6は、3パケット交換を伴う両面双方向測距を示す。示されていない1つの任意選択的な交換は、イニシエータ600に送信されているレスポンダ650での最終パケットの受信時間である。これは、イニシエータが全てのタイムスタンプからより正確な範囲を計算することを望む場合に実行され得る。
【0129】
図8は、本発明の実施形態に係る、1対多測距を示す。1対多測距では、例えば、イニシエータからの最初のUWB測距交換パケットの後に所定のシーケンシャル順序でイニシエータと、各レスポンダにUWB測距交換を実行させることができる。
【0130】
図8は、イニシエータ800と3つのレスポンダ852~856のそれぞれとの間の3つのパケット交換を伴う両面双方向測距を示す。(例えば、第1の無線プロトコルを使用する)測距開始要求802は、測距開始イベントメッセージ804で応答することができるレスポンダ852~856によって受信することができる。レスポンダ1、2、及び3はそれぞれ、イニシエータ800から最初の測距パケット810を受信するが、異なる時間に応答する。それらはまた、イニシエータ800から最終測距パケット840を全て受信することができ、これは
図4のメッセージ430に対応し得る。1つの任意選択的な交換は、イニシエータ800に送り返される各レスポンダ852~856でのメッセージ840の受信時間である。これは、イニシエータ800が全てのタイムスタンプからより正確な範囲を計算することを望む場合に実行され得る。
【0131】
車両が2つ以上のUWB送受信機を含み得る1対多測距をサポートするために、アドレッシングの特別なプロビジョニングを定義することができる。ソースアドレス及び宛先アドレスの4つの最下位ビット(LSB)を使用して、意図された送受信機を、例えば、0x0~0xEの可能な送受信機IDで定義することができる。1対多測距の場合、宛先アドレスは、パケットが全ての送受信機宛であることを示す特定の値(例えば、0xF)に設定することができる。
VI.方法
【0132】
図9は、本発明の実施形態に係る、モバイルデバイスと(例えば、車両又は建物に関連付けられた)アクセス制御システムとの間の通信を実行するための方法900のフローチャートである。方法900は、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されるプログラムコードを記憶するメモリとを含み得るモバイルデバイス(又は他のコンピューティングデバイス)によって実行することができる。方法900の態様は、方法100と同様の方法で実行することができる。
【0133】
ブロック910において、第1の無線プロトコルが(例えば、第1のアンテナを介して)使用されて、アクセス制御システムを認証する。第1の無線プロトコルは、BTであり得る。認証では、本明細書に記載されるように、モバイルデバイスとアクセス制御システム(例えば、車両)との間で以前に実行されたペアリングプロセス中に交換された情報を使用することができる。認証には、モバイルデバイスとアクセス制御システムとの間のチャレンジレスポンス手順を伴うことができる。アクセス制御システムからの識別子を使用して、所与のチャレンジに対する予期応答を判定することができ、例えば、アクセス制御システムによって使用されることが予期されるキーを取得して応答を生成し、キーを使用して(例えば、応答の復号又は再生成によって)応答を認証することができる。アクセス制御システムはまた、モバイルデバイスを認証することができる。
【0134】
認証は、アクセス制御システムの制御ユニットのものであり得る。例えば、チャレンジ(例えば、乱数)を、アクセス制御システムに送信することができる。アクセス制御システムの制御ユニット(例えば、
図3のECU)は、暗号化キーを使用してチャレンジ上で動作して、応答を提供することができる。暗号化キーは、アクセス制御システムとのモバイルデバイスのペアリング中に確立された共有シークレットに由来するか、又は共有シークレットとすることができる。応答は、アクセス制御システムから受信され、予期された結果と比較されて、その結果、アクセス制御システムの制御ユニットを認証することができる。一例として、応答を復号して元のチャレンジと比較することができ、又はモバイルデバイスが(例えば、同じ暗号化キーを使用して)チャレンジを暗号化し、その結果を受信した応答と比較することができる。認証の別の例として、アクセス制御システムの制御ユニットのデジタル署名を、第1の無線プロトコルを使用して受信することができる。デジタル署名は、制御ユニットの公開キーを使用して確認することができ、それによってアクセス制御システムの制御ユニットを認証する。
【0135】
認証後、ブロック920において、共有シークレットを使用して、モバイルデバイスとアクセス制御システム(例えば、車両の制御ユニット)との間にセキュアチャネルが作成される。セキュアチャネルは、第1の無線プロトコルを使用することができる。共有シークレットは、モバイルデバイスとアクセス制御システムとの間のペアリングプロセス中に確立することができる。共有シークレットは、ブロック910の認証に使用することができる。セキュアチャネルの作成は、アクセス制御システムから取得された識別子を使用して、ペアリングされたデバイスのデータベース(例えば、テーブル)にアクセスして、1つ以上の暗号化キーを判定すること、例えば、Elliptic-curve Diffie-Hellman(ECDH)キーペアを導出するか又は取り出すことによって、実行することができる。
【0136】
ブロック930において、第2の無線プロトコルを使用して実行される測距のために、セキュアチャネルを使用して、アクセス制御システムと測距能力を通信する。一例として、測距能力は、例えば、本明細書に記載されるように、モバイルデバイスとアクセス制御システムとの間の測距メッセージ用のフォーマットを指定することができる。測距能力の他の例として、アンテナの数、それらのアンテナの場所(例えば、アンテナ間及び/又はECUなどのアクセス制御システム内の起点間の相対距離)、使用するアンテナの数、暗号化プロトコル、パケットフォーマット、動作モード、及びサポートされる周波数範囲、を含む。
【0137】
ブロック940において、第2の無線プロトコルを使用して、測距要求メッセージ内の第1のパルスセットをアクセス制御システムに送信することができる。第2の無線プロトコルでは、第1の無線プロトコルによって使用されるパルス幅よりも小さいパルス幅を使用することができる。いくつかの実施形態では、第1の無線プロトコルはBluetooth(登録商標)(例えば、BTLE)であり、第2の無線プロトコルはUWBである。
【0138】
ブロック950において、1つ以上の測距応答メッセージ内の第2のパルスセットが、アクセス制御システムから(例えば、第2のアンテナを使用して)受信される。1つ以上の測距応答メッセージは、(例えば、
図4及び
図8に示すように)複数の測距応答メッセージであり得る。各測距応答メッセージは、アクセス制御システムの異なるアンテナユニット(例えば、異なるノード)からのものとすることができ、特定のアンテナユニットに固有の識別情報を含み、そのような識別情報は暗号化されてもよい。いくつかの実施態様では、測距要求メッセージは、例えば、
図4の測距要求410又は
図8に示すように、複数の測距応答メッセージにブロードキャストすることができる。他の実施態様では、別個の測距要求メッセージを、様々なアンテナユニットに送信することができる。
【0139】
ブロック960において、第1のパルスセットの送信時間(単数又は複数)及び第2のパルスセットの受信時間(単数又は複数)に対応する距離情報が判定される。距離情報は、例えば、
図4に示すように、測距要求メッセージ内の第1のパルスセットと、1つ以上の測距応答メッセージ内の第2のパルスセットとに対応するタイムスタンプを含むことができる。タイムスタンプは、例えば、本明細書で説明するように、アクセス制御システムからのモバイルデバイスの距離を判定するために、アクセス制御システムの制御ユニットが使用するように構成可能とすることができる。
【0140】
いくつかの実施形態では、モバイルデバイスは距離を判定することができる。例えば、モバイルデバイスは、第1のパルスセットの送信時間(単数又は複数)、及び第2のパルスセットの受信時間(単数又は複数)を使用して、距離を判定することができる。したがって、距離情報は距離を含むことができる。
【0141】
ブロック970において、距離情報がアクセス制御システムに送信され、それによってアクセス制御システムが動作を実行することを可能にする。距離情報は、第1の無線プロトコル(例えば、セキュアチャネルを使用して)又は第2の無線プロトコルのいずれかを使用して、送信することができる。様々な実施形態では、動作は、アクセス制御システムのドア(例えば、全てのドア、又はユーザアクセス特権に基づく特定のドア、又は最も近いドア)をロック解除すること、ヒータ若しくはエアコンをオンにすること、又は車両のスタートボタンを有効にすること、であり得る。そのような動作はいずれも、閾値を超える、距離又は距離の変化率(例えば、車両に向かう速度)に基づいてトリガされ得る。複数のそのような閾値は、例えば、本明細書に記載されるように、異なる動作に使用されてもよい。
VII.例示的なデバイス
【0142】
図10は、モバイルデバイスであり得る、例示的なデバイス1000のブロック図である。デバイス1000は、一般的に、コンピュータ可読媒体1002と、処理システム1004と、入出力(I/O)サブシステム1006と、無線回路1008と、スピーカ1050及びマイクロフォン1052を含むオーディオ回路1010とを備える。これらの構成要素は、1つ以上の通信バス又は信号ライン1003によって結合することができる。デバイス1000は、ハンドヘルド型コンピュータ、タブレットコンピュータ、モバイル電話、ラップトップコンピュータ、タブレットデバイス、メディアプレーヤ、パーソナルデジタルアシスタント(PDA)、キーフォブ、自動車のキー、アクセスカード、多機能デバイス、モバイル電話、ポータブルゲーミングデバイス、自動車のディスプレイユニットなど(これらの物品のうちの2つ以上の組み合わせを含む)を含む、任意のポータブル電子デバイスとすることができる。
【0143】
図10に示すアーキテクチャは、デバイス1000に対するアーキテクチャの一例に過ぎず、デバイス1000は、図示したものよりも多い構成要素、若しくはより少ない構成要素、又は異なる構成の構成要素を有することができることが明らかである。
図10に示す種々の構成要素は、1つ以上の信号処理回路及び/若しくは特定用途向け集積回路を含む、ハードウェア、ソフトウェア、又はハードウェア並びにソフトウェアの双方の組み合わせとして実装することができる。
【0144】
無線回路1008を使用して、無線リンク又はネットワークを介して、アンテナシステム、RF送受信機、1つ以上の増幅器、チューナ、1つ以上の発振器、デジタル信号プロセッサ、コーデックチップセット、メモリなど、1つ以上の他のデバイスの従来の回路と情報を送受信する。無線回路1008は、例えば、本明細書で説明するような種々のプロトコルを使用することができる。例えば、無線回路1008は、1つの無線プロトコル(例えば、Bluetooth(登録商標))用に1つの構成要素を有し、別の無線プロトコル(例えば、UWB)用に別個の構成要素を有することができる。異なるプロトコルに対して異なるアンテナを用いることができる。
【0145】
無線回路1008は、周辺機器インタフェース1016を介して処理システム1004に結合されている。インタフェース1016は、周辺機器と処理システム1004との間に通信を確立して維持するために、従来の構成要素を含むことができる。無線回路1008が(例えば、発話認識アプリケーション又は音声コマンドアプリケーションにおいて)受信した音声及びデータ情報を、周辺機器インタフェース1016を介して1つ以上のプロセッサ1018に送信する。1つ以上のプロセッサ1018は、媒体1002上に記憶された1つ以上のアプリケーションプログラム1034に対する種々のデータフォーマットを処理するように構成可能である。
【0146】
周辺機器インタフェース1016により、デバイスの入出力周辺機器がプロセッサ1018及びコンピュータ可読媒体1002に結合されている。1つ以上のプロセッサ1018は、コントローラ1020を介してコンピュータ可読媒体1002と通信する。コンピュータ可読媒体1002は、1つ以上のプロセッサ1018が使用するためのコード及び/又はデータを記憶できる任意のデバイス又は媒体とすることができる。媒体1002は、キャッシュ、主メモリ、及び補助メモリを含むメモリ階層を含むことができる。
【0147】
デバイス1000はまた、種々のハードウェア構成要素に電力を供給する電力システム1042を含む。電力システム1042は、電力管理システム、1つ以上の電源(例えば、電池、交流(AC))、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ(例えば、発光ダイオード(LED))、並びにモバイルデバイス内での電力の生成、管理、及び分配に典型的に関連付けられる任意の他の構成要素、を含むことができる。
【0148】
いくつかの実施形態では、デバイス1000はカメラ1044を含む。いくつかの実施形態では、デバイス1000はセンサ1046を含む。センサ1046には、加速度計、コンパス、ジャイロメータ、圧力センサ、音声センサ、光センサ、気圧計などを含むことができる。センサ1046を使用して、場所の聴覚サイン又は光サインなどの場所の様相を感知することができる。
【0149】
いくつかの実施形態では、デバイス1000は、GPSユニット1048と呼ばれることもあるGPS受信機を含むことができる。モバイルデバイスは、全地球測位システム(GPS)などの衛星航法システムを用いて、位置情報、タイミング情報、高度、又は他のナビゲーション情報を取得することができる。動作中に、GPSユニットは、地球の周りを軌道を描いて回るGPS衛星から信号を受信することができる。GPSユニットは信号を分析して移動時間及び距離推定を行う。GPSユニットはモバイルデバイスの現在位置(現在場所)を判定することができる。これらの推定に基づいて、モバイルデバイスは、場所固定、高度、及び/又は現在速度を判定することができる。場所固定は、緯度情報及び経度情報などの地理座標例とすることができる。
【0150】
1つ以上のプロセッサ1018は、媒体1002に記憶された様々なソフトウェア構成要素を実行して、デバイス1000のための様々な機能を実行する。いくつかの実施形態では、ソフトウェア構成要素は、オペレーティングシステム1022、通信モジュール(又は命令セット)1024、場所決めモジュール(又は命令セット)1026、本明細書で説明する測距動作の一部として使用される測距モジュール1028、及び他のアプリケーション(又は命令セット)1034を含む。
【0151】
オペレーティングシステム1022は、iOS、MacOS、Darwin、RTXC、LINUX、UNIX、OSX、WINDOWS、又はVxWorksなどの組み込みオペレーティングシステムを含む、任意の好適なオペレーティングシステムとすることができる。オペレーティングシステムは、一般的なシステムタスク(例えば、メモリ管理、記憶デバイス制御、電力管理など)を制御及び管理するための、手順、命令のセット、ソフトウェア構成要素、及び/又は運転手を含むことができ、種々のハードウェア構成要素とソフトウェア構成要素との間の通信を容易にする。
【0152】
通信モジュール1024は、1つ以上の外部ポート1036を介した、又は無線回路1008を介した、他のデバイスとの通信を容易にし、無線回路1008及び/又は外部ポート1036から受信したデータを取り扱うための様々なソフトウェア構成要素を含む。外部ポート1036(例えば、USB、FireWire(登録商標)、ライトニングコネクタ、60ピンコネクタなど)は、他のデバイスに直接的に結合するか、又はネットワーク(例えば、インターネット、無線LANなど)を介して間接的に結合するように適応されている。
【0153】
場所決め/動きモジュール1026は、現在位置(例えば、座標又は他の地理的場所識別子)及びデバイス1000の動きを判定することを支援することができる。最新の位置決定システムは、全地球測位システム(GPS)、「セルID」に基づくセルラーネットワーク位置決定、及びWi-Fiネットワークに基づくWi-Fi位置決定技術などの衛星ベースの位置決定システムを含む。またGPSは、複数の衛星が見えることに基づいて位置推定値を判定する。衛星は屋内又は「ビルの谷間」では見えない(又は信号が弱い)場合がある。いくつかの実施形態では、場所決め/動きモジュール1026は、GPSユニット1048からデータを受信して信号を分析して、モバイルデバイスの現在位置を判定する。いくつかの実施形態では、場所決め/動きモジュール1026は、Wi-Fi又はセルラー位置決め技術を使用して現在場所を判定することができる。例えば、モバイルデバイスの場所を、近くのセルサイト及び/又はWi-Fiアクセスポイントの知識を用いて、またそれらの場所の知識を用いて推定することができる。Wi-Fi又はセルラー送信機を識別する情報は、無線回路1008で受信され、場所決め/動きモジュール1026に伝達される。いくつかの実施形態では、場所決めモジュールは1つ以上の送信機IDを受信する。いくつかの実施形態では、一連の送信機IDを参照データベース(例えば、セルIDデータベース、Wi-Fi参照データベース)と比較することができる。参照データベースは、送信機IDを対応する送信機の位置座標にマッピングするか又は相関させて、対応する送信機の位置座標に基づいてデバイス1000に対する推定位置座標を計算する。使用する特定の場所決め技術とは関係なく、場所決め/動きモジュール1026は、場所固定を導き出すことができる情報を受信し、その情報を解釈して、地理座標、緯度/経度、又は他の場所固定データなどの場所情報を返す。
【0154】
測距モジュール1028は、測距メッセージを、例えば、無線回路1008に接続されているアンテナへ送信/アンテナから受信することができる。様々な目的のため、例えば、車両の送信アンテナを識別するため、(例えば、車両に送信するために)メッセージのタイムスタンプを判定するため、及び潜在的には車両からモバイルデバイス1000までの距離を判定するために、メッセージを使用することができる。
【0155】
モバイルデバイス上の1つ以上のアプリケーションプログラム1034は、限定することなく、ブラウザ、アドレス帳、連絡先リスト、電子メール、インスタントメッセージング、ワードプロセッシング、キーボードエミュレーション、ウィジェット、JAVA対応アプリケーション、暗号化、デジタル著作権管理、音声認識、音声複製、(MP3又はAACファイルなどの1つ以上のファイルに記録された録音済み音楽を再生する)音楽プレーヤなどを含む、デバイス1000上にインストールされた任意のアプリケーションを含むことができる。
【0156】
グラフィックスモジュール、時間モジュールなどの他のモジュール又は命令セット(図示せず)があってもよい。例えば、グラフィックスモジュールは、グラフィックオブジェクト(限定することなく、テキスト、ウェブページ、アイコン、デジタル画像、アニメーションなどを含む)をレンダリングし、アニメ-ションし、及びディスプレイ面上に表示するための従来の種々のソフトウェア構成要素を含むことができる。別の例では、タイマモジュールはソフトウェアタイマとすることができる。またタイマモジュールをハードウェアに実装することもできる。時間モジュールは、任意の数の事象に対して種々のタイマを維持することができる。
【0157】
I/Oサブシステム1006をディスプレイシステム(図示せず)に結合することができ、ディスプレイシステムは、タッチ感知ディスプレイとすることができる。ディスプレイシステムは、ユーザに対する視覚出力をGUIに表示する。この視覚出力は、テキスト、グラフィック、ビデオ、及びこれらの任意の組み合わせを含むことができる。視覚出力の一部又は全ては、ユーザインタフェースオブジェクトに対応することができる。ディスプレイは、LED(発光ダイオード)、LCD(液晶ディスプレイ)技術、又はLPD(発光ポリマーディスプレイ)技術を用いることができるが、他の実施形態では他のディスプレイ技術を用いることができる。
【0158】
いくつかの実施形態では、I/Oサブシステム1006は、ディスプレイ、並びにキーボード、マウス、及び/又はトラックパッドなどのユーザ入力デバイスを含むことができる。いくつかの実施形態では、I/Oサブシステム1006は、タッチ感知ディスプレイを含むことができる。またタッチ感知ディスプレイは、触知接触及び/又は触覚接触に基づくユーザからの入力を受け入れることができる。いくつかの実施形態では、タッチ感知ディスプレイは、ユーザ入力を受け入れるタッチ感知面を形成する。タッチ感知ディスプレイ/タッチ感知面は(媒体1002内の任意の関連するモジュール及び/又は命令セットと共に)、タッチ感知ディスプレイ上の接触(及び、いずれかの動き又は接触の解除)を検出し、検出した接触を、接触が生じたときにタッチスクリーン上に表示されるユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー)との対話に変換する。いくつかの実施形態では、タッチ感知ディスプレイとユーザとの間の接触点は、ユーザの1本以上の指に対応する。ユーザは、スタイラス、ペン、指などの任意の好適な物体又は付属物を用いてタッチ感知ディスプレイと接触することができる。タッチ感知ディスプレイ面は、任意の好適なタッチ感度技術を用いて接触並びにその任意の動き又は解除を検出することができる。タッチ感度技術としては、容量性、抵抗性、赤外線、及び表面弾性波技術、並びに他の近接センサアレイ又は他の要素であって、タッチ感知ディスプレイとの1つ以上の接触点を判定するものが挙げられる。
【0159】
更に、電力制御、スピーカ音量制御、着信音量、キーボード入力、スクローリング、ホールド、メニュー、スクリーンロック、通信をクリアにして終了することなどの種々の機能を制御又は実行するために、I/Oサブシステムを、プッシュボタン、キー、スイッチ、ロッカボタン、ダイアル、スライダスイッチ、スティック、LEDなどの1つ以上の他の物理的制御デバイス(図示せず)に結合することができる。いくつかの実施形態では、タッチスクリーンに加えて、デバイス1000は、特定の機能をアクティブ化又は非アクティブ化するためのタッチパッド(図示せず)を含むことができる。いくつかの実施形態では、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、デバイスのタッチ感知エリアである。タッチパッドは、タッチ感知ディスプレイとは別個のタッチ感知面、又はタッチ感知ディスプレイによって形成されたタッチ感知面の延長部分とすることができる。
【0160】
いくつかの実施形態では、本明細書で説明した動作の一部又は全部を、ユーザのデバイス上で実行するアプリケーションを用いて実行することができる。回路、ロジックモジュール、プロセッサ、及び/又は他の構成要素を、本明細書で説明した種々の動作を実行するように構成してもよい。当業者には、そのような設定を、実装形態に応じて、具体的な構成要素の設計、セットアップ、相互接続、及び/又はプログラミングを通じて実現することができ、また、同様に実装形態に応じて、構成されている構成要素は、異なる動作のために再構成可能であってもよいし、又は再構成可能でなくてもよいことが理解されるであろう。例えば、プログラマブルプロセッサを、好適な実行可能コードを提供することによって構成することができ、専用の論理回路を、論理ゲートと他の回路素子とを好適に接続することによって構成することができる。
【0161】
本出願で説明したソフトウェア構成要素又は機能のいずれかを、例えば、Java、C、C++、C#、Objective-C、Swift、又はPerl又はPythonなどのスクリプト言語、など、任意の好適なコンピュータ言語を用いて、例えば、従来の又はオブジェクト指向の技術を用いて、プロセッサによって実行すべきソフトウェアコードとして実装してもよい。ソフトウェアコードを、記憶及び/又は送信するためにコンピュータ可読媒体上に一連の命令又はコマンドとして記憶してもよい。好適な非一時的コンピュータ可読媒体としては、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、ハードドライブ若しくはフロッピーディスクなどの磁気媒体、又はコンパクトディスク(CD:compact disk)若しくはDVD(digital versatile disk、デジタル多用途ディスク)などの光学媒体、フラッシュメモリ、などを挙げることができる。コンピュータ可読媒体は、このような記憶デバイス又は送信デバイスの任意の組み合わせであってもよい。
【0162】
本開示の様々な特徴を組み込んだコンピュータプログラムを、様々なコンピュータ可読記憶媒体上で符号化してもよく、好適な媒体には、磁気ディスク若しくはテープ、コンパクトディスク(CD)若しくはDVD(デジタル多用途ディスク)などの光学記憶媒体、フラッシュメモリなどが含まれる。プログラムコードで符号化されるコンピュータ可読記憶媒体を、互換性のあるデバイスと共にパッケージ化するか、又は他のデバイスとは別個に提供してもよい。加えて、プログラムコードは、インターネットを含む、様々なプロトコルに準拠する有線ネットワーク及び/又は無線ネットワークを介して、符号化して送信してもよいため、例えばインターネットダウンロードを介して、配信が可能となる。任意のこのようなコンピュータ可読媒体は、単一のコンピュータ製品(例えば、ソリッドステートドライブ、ハードドライブ、CD、又はコンピュータシステム全体)上に又はその内部にあってもよく、システム又はネットワーク内の異なるコンピュータ製品上に又はその内部に存在してもよい。コンピュータシステムは、本明細書で述べた結果のいずれかをユーザに提供する、モニタ、プリンタ、又は他の好適なディスプレイを含んでもよい。
【0163】
本開示が特定の実施形態に関して説明されてきたが、本開示は、以下の請求項の範囲内にある全ての修正物及び均等物に及ぶことが意図されていることを理解されたい。
【0164】
「1つの(a)」、「1つの(an)」、又は「その(the)」の記載は、特に反対の記載がない限り、「1つ以上の(one or more)」を意味することが意図されている。「又は(or)」を用いた場合、特に反対の記載がない限り、「排他的論理和(含まずに「又は」)」ではなく「包含的論理和(含んで「又は」)」を意味することが意図されている。「第1の」要素に言及した場合、第2の要素が提供されることが必ずしも必要とされるとは限らない。更に「第1の」要素又は「第2の」要素に言及しても、特に断らない限り、言及した構成要素を特定の場所に制限するわけではない。
【0165】
本明細書で言及される全ての特許、特許出願、刊行物、及び記載は、全ての目的のために、その全体が参照により組み込まれる。従来技術であると認められるものはない。