【文献】
Frank Leong (NXP Semiconductors),"Secure RF Ranging"[online],IEEE 802.15-18/0107r1,2018年 3月 5日,Internet<URL:https://mentor.ieee.org/802.15/dcn/18/15-18-0107-01-004z-secure-rf-ranging.pptx>
【文献】
Frank Leong (NXP Semiconductors)他,"HRP UWB SRDEV PPDU Text Contribution"[online],IEEE 802.15-18/0286r0,2018年 7月 5日,Internet<URL:https://mentor.ieee.org/802.15/dcn/18/15-18-0286-00-004z-hrp-uwb-srdev-ppdu-text-contribution.docx>
(58)【調査した分野】(Int.Cl.,DB名)
前記メッセージ認証コードの前記第1の推定値と、前記メッセージ認証コードの前記第2の推定値とが前記指定された程度に類似していると判定したことに応じて、前記第2のSTSを含む前記第2のメッセージの受信時間に基づいて、前記無線通信デバイスと前記証明者デバイスとの間の範囲を判定するように構成されている測距モジュールを更に備える、請求項5に記載の無線通信デバイス。
前記第1のSTSを符号化することは、前記第1のSTSの複数のサブブロックを前記検証者メッセージのそれぞれのビットで符号化することを含み、各サブブロックが複数のパルスを含む、請求項5に記載の無線通信デバイス。
前記第1のSTSのサブブロックを符号化することは、第1の値を有する前記検証者メッセージの前記それぞれのビットに応じて、前記サブブロックの前記複数のパルスの前記極性を反転させることと、第2の値を有する前記検証者メッセージの前記それぞれのビットに応じて、前記サブブロックの前記複数のパルスの前記元の極性を維持することと、を含む、請求項8に記載の無線通信デバイス。
前記第1のSTSのサブブロックを符号化することは、第1の値を有する前記検証者メッセージの前記それぞれのビットに応じて、前記サブブロックのうちの少なくとも1つのパルスの前記極性を反転させることと、第2の値を有する前記検証者メッセージの前記それぞれのビットに応じて、前記サブブロックのうちの前記少なくとも1つのパルスの前記元の極性を維持することと、を含む、請求項14に記載の方法。
【発明を実施するための形態】
【0024】
本明細書で説明される特徴は、様々な修正及び代替形態を受け入れる余地があるが、その特定の実施形態を例として図面に示し、本明細書で詳細に説明する。しかし、図面及びそれらに対する詳細な説明は、開示されている特定の形態に限定することを意図するものではなく、逆に、その意図は、添付の「特許請求の範囲」によって定義されるような本主題の趣旨及び範囲内に収まる、全ての修正、均等物、及び代替物を包含することである点を理解されたい。
【0025】
(参照による組み込み)
例示的なUWB通信プロトコルの様々な詳細は、その全体が本明細書に開示されているかかのように参照により本明細書に組み込まれる、IEEE 802.15.4−2015に開示されている。
【0026】
(専門用語)
以下は、本開示で使用される用語の定義である。
【0027】
記憶媒体−様々な種類の非一時的メモリデバイス又は記憶デバイスのうちの任意のもの。用語「記憶媒体」は、インストール媒体、例えば、CD−ROM、フロッピーディスク又はテープデバイス、DRAM、DDR RAM、SRAM、EDO RAM、Rambus RAMなどの、コンピュータシステムメモリ又はランダムアクセスメモリ、フラッシュ、磁気媒体、例えばハードドライブ、又は光記憶装置などの、不揮発性メモリ、レジスタ、又はその他の同様の種類のメモリ要素などを含むことが意図されている。記憶媒体は、他の種類の非一時的メモリ、並びにそれらの組合せも含んでもよい。加えて、記憶媒体は、プログラムが実行される第1のコンピュータシステムに位置してもよく、又はインターネットなどのネットワークを通じて第1のコンピュータシステムに接続する、第2の異なるコンピュータシステムに位置してもよい。後者の例では、第2のコンピュータシステムは、実行のために、プログラム命令を第1のコンピュータシステムに提供することができる。用語「記憶媒体」は、異なる位置、例えば、ネットワークを通じて接続された異なるコンピュータシステムに存在することができる2つ以上の記憶媒体を含んでもよい。記憶媒体は、1つ以上のプロセッサによって実行することができるプログラム命令(例えば、コンピュータプログラムとして具現化された)を記憶してもよい。
【0028】
キャリア媒体−上述のような記憶媒体、並びにバス、ネットワークなどの物理的伝送媒体、及び/又は電気信号、電磁信号、若しくはデジタル信号などの信号を伝送する他の物理的伝送媒体。
【0029】
プログラム可能ハードウェア要素−プログラム可能相互接続を介して接続された複数のプログラム可能機能ブロックを備える、様々なハードウェアデバイスを含む。例としては、FPGA(Field Programmable Gate Array、フィールドプログラマブルゲートアレイ)、PLD(Programmable Logic Device、プログラム可能論理デバイス)、FPOA(Field Programmable Object Array、フィールドプログラマブルオブジェクトアレイ)、及びCPLD(Complex PLD、複合PLD)を含む。プログラム可能機能ブロックは、細かい粒度のもの(組合せロジック又はルックアップテーブル)から粗い粒度のもの(算術ロジックユニット又はプロセッサコア)にまで及ぶことができる。プログラム可能ハードウェア要素はまた、「再構成可能論理」と称されることがある。
【0030】
コンピュータシステム−パーソナルコンピュータシステム(PC)、メインフレームコンピュータシステム、ワークステーション、ネットワーク装置、インターネット装置、携帯情報端末(PDA)、テレビシステム、グリッドコンピューティングシステム、又はその他のデバイス若しくはデバイスの組合せ、を含む様々な種類のコンピューティング又は処理システムのうちの任意のもの。一般的に、用語「コンピュータシステム」は、記憶媒体からの命令を実行する少なくとも1つのプロセッサを有する任意のデバイス(又はデバイスの組合せ)を包含するように広義に定義することができる。
【0031】
ユーザ装置(UE)(又は「UEデバイス」)−移動式又は携帯式であり、無線通信を実行する様々な種類のコンピュータシステムデバイスのうちの任意のもの。UEデバイスの例としては、携帯電話若しくはスマートフォン(例えば、iPhone(登録商標)、Android(登録商標)ベースの電話)、ポータブルゲームデバイス(例えば、Nintendo DS(登録商標)、PlayStation(登録商標)Portable(商標)、Gameboy(登録商標)Advance(商標)、iPhone(登録商標))、ラップトップ、ウェアラブルデバイス(例えば、スマートウォッチ、スマートグラス)、PDA、ポータブルインターネットデバイス、音楽プレーヤ、データ記憶デバイス、又は他のハンドヘルドデバイスなどが挙げられる。一般に、用語「UE」又は「UEデバイス」は、ユーザによって容易に持ち運ばれ、無線通信が可能なあらゆる電子、コンピューティング及び/又は電気通信デバイス(又はデバイスの組合せ)を包含するように広義に定義することができる。
【0032】
無線デバイス−無線通信を実行する様々な種類のコンピュータシステムデバイスのうちの任意のもの。無線デバイスは、携帯式(若しくは移動式)とすることができる、又は特定の位置に定置若しくは固定することができる。UEは、無線デバイスの一例である。
【0033】
通信デバイス−通信を実行する様々な種類のコンピュータシステム又はデバイスのうちの任意のものであって、通信は、有線又は無線とすることができる。通信デバイスは、携帯式(若しくは移動式)とすることができる、又は特定の位置に定置若しくは固定することができる。無線デバイスは、通信デバイスの一例である。UEは、通信デバイスの別の例である。
【0034】
基地局−用語「基地局」(「eNB」とも呼ばれる)は、その通常の意味の全範囲を有し、少なくとも、固定位置に設置され、無線セルラ通信システムの一部として通信するために使用される無線通信局を含む。
【0035】
リンクバジェットが制限された−その通常の意味の全範囲を含み、少なくとも、リンクバジェットが制限されていないデバイスに対して又は無線アクセス技術(radio access technology、RAT)規格が開発されたデバイスに対して、制限された通信能力、又は制限された電力を呈する無線デバイス(例えば、UE)の特性を含む。リンクバジェットが制限された無線デバイスは、相対的に制限された受信能力及び/又は送信能力を経験することがあり、それは、デバイス設計、デバイスのサイズ、バッテリのサイズ、アンテナのサイズ若しくは設計、送信電力、受信電力、現在の伝送媒体状態、及び/又は他の要因などの、1つ以上の要因に起因する場合がある。そのようなデバイスは、本明細書で「リンクバジェットが制限された」(又は「リンクバジェットが制約された」)デバイスと呼ばれる場合がある。デバイスは、そのサイズ、バッテリ電力、及び/又は送信/受信電力により、本質的にリンクバジェットが制限される場合がある。例えば、LTE又はLTE−Aを介して基地局と通信しているスマートウォッチは、その縮小された送信/受信電力及び/又は縮小されたアンテナにより、本質的にリンクバジェットが制限される場合がある。スマートウォッチなどのウェアラブルデバイスは、一般的にリンクバジェットが制限されたデバイスである。あるいは、デバイスは、本質的にリンクバジェットが限定されない場合があり、例えば、LTE又はLTE−Aを介した通常の通信のために充分なサイズ、バッテリ電力、及び/又は送信/受信電力を有する場合があるが、例えば、セルの縁部にあるスマートフォンなどの、現在の通信条件により一時的にリンクバジェットが限定される場合がある。用語「リンクバジェットが限定された」は、電力制限を含む又は包含し、したがって、電力が限定されたデバイスは、リンクバジェットが限定されたデバイスと考え得ることを留意されたい。
【0036】
処理素子(又はプロセッサ)−様々な要素又は要素の組合せを指す。処理素子は、例えば、ASIC(Application Specific Integrated Circuit、特定用途向け集積回路)などの回路、個別のプロセッサコアの一部分若しくは回路、プロセッサコア全体、個別プロセッサ、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)などのプログラム可能ハードウェアデバイス、及び/又は複数のプロセッサを含むシステムのより大きい部分を含む。
【0037】
Wi−Fi−用語「Wi−Fi」は、その通常の意味の全範囲を有するものであり、無線LAN(WLAN)アクセスポイントによってサービスが提供され、これらのアクセスポイントを通じてインターネットへの接続性を提供する、無線通信ネットワーク又はRATを少なくとも含む。最新のWi−Fiネットワーク(又は、WLANネットワーク)は、IEEE802.11標準規格に基づくものであり、「Wi−Fi」という名称で市場に出ている。Wi−Fi(WLAN)ネットワークは、セルラネットワークとは異なるものである。
【0038】
自動的に−ユーザ入力が、アクション又は動作を直接指定若しくは実行することなく、コンピュータシステム(例えば、コンピュータシステムによって実行されるソフトウェア)又はデバイス(例えば、回路機構、プログラム可能ハードウェア要素、ASICなど)によって、それらのアクション又は動作が実行されることを指す。したがって、用語「自動的」は、ユーザが入力を提供して操作を直接実行するような、ユーザによって手動で実行され又は指定される操作とは対照的である。自動手順は、ユーザが提供する入力によって開始されてもよいが、「自動的に」実行される後続のアクションはユーザによって指定されるものではなく、すなわち、実行するべき各アクションをユーザが指定する「手動」では実行されない。例えば、ユーザが、各フィールドを選択し、情報を明示する入力を提供することによって(例えば、情報のタイピング、チェックボックスの選択、ラジオボタンの選択などによって)、電子フォームに記入することは、コンピュータシステムが、ユーザアクションに応じて、フォームを更新しなければならない場合であっても、手動でフォームに記入することである。フォームは、コンピュータシステムによって自動的に記入されてもよく、この場合、コンピュータシステム(例えば、コンピュータシステム上で実行されるソフトウェア)は、そのフィールドに対する回答を指定するユーザ入力を何ら使用することなく、そのフォームのフィールドを分析して、フォームに記入する。上述のように、ユーザは、フォームの自動記入を呼び出すことができるが、フォームの実際の記入には関与しない(例えば、ユーザがフィールドに対する回答を手動で指定することはなく、むしろ、それらは自動的に完了される)。本明細書は、ユーザが取った動作に応じて自動的に実行される様々な動作の例を提供する。
【0039】
構成されている−様々な要素が、タスクを実行する「ように構成されている」と説明され得る。そのような文脈において「構成されている」は、動作中のタスクを実行する「構造を有する」ことを一般的に意味する広範な説明である。このように、要素は、タスクを現在実行していない場合であっても、そのタスクを実行するように構成することができる(例えば、電気導体のセットは、2つのモジュールが接続されていなくても、モジュールを別のモジュールへ電気的に接続するように構成されていてもよい)。いくつかの文脈において、「構成されている」は、動作中のタスクを実行する「回路を有する」ことを一般的に意味する広範な説明であってもよい。このように、要素は、現在オンでなくても、そのタスクを実行するように構成することができる。一般に、「構成されている」に対応する構造を形成する回路は、ハードウェア回路を含んでもよい。
【0040】
本明細書の記載では、便宜上、様々な要素がタスクを実行するように説明され得る。そのような説明は、語句「構成されている」を含むように解釈されるべきである。1つ以上のタスクを実行するように構成されている要素の説明は、米国特許法112条第6パラグラフのその要素についての解釈を引き起こさないことが、明確に意図されている。
【0041】
個人特定可能な情報の使用は、ユーザのプライバシーを維持するための業界又は政府の要件を満たす又は上回ると一般に認識されているプライバシーポリシー及びプラクティスに従うべきであることに十分に理解されたい。特に、個人特定可能な情報データは、意図的でない又は許可されていないアクセス又は使用のリスクを最小限に抑えるように管理及び取り扱いされるべきであり、許可された使用の性質はユーザに明確に示されるべきである。
【0042】
(
図1−無線通信システム)
図1は、本開示の態様を実装することができる例示的な(かつ簡易化された)無線通信システム100を示す。
図1のシステムはあり得るシステムの単なる一例にすぎず、この開示の実施形態は所望に応じて様々なシステムの任意のものにおいて実施されてよいことに留意されたい。
【0043】
図示するように、例示的な無線通信システムは、別の(「第2の」)無線デバイス104と通信する(「第1の」)無線デバイス102を含む。第1の無線デバイス102及び第2の無線デバイス104は、セキュア測距無線通信技術を含む可能性のある、様々な無線通信技術のいずれかを使用して無線通信することができる。
【0044】
1つの可能性として、第1の無線デバイス102及び第2の無線デバイス104は、超広帯域(UWB)通信技術(例えば、IEEE 802.15.4 WPAN通信)、及び/又はWPAN若しくはWLAN無線通信に基づく他の技術を使用して、セキュア測距を実行することができる。無線デバイス102及び無線デバイス104の一方又は両方はまた、Bluetooth(BT)(登録商標)、Bluetooth Low Energy(BLE)、WLAN(例えば、IEEE 802.11/Wi−Fi)、近距離通信(NFC)、GSM(登録商標)、UMTS(WCDMA(登録商標)、TDSCDMA)、LTE、LTE−ADVANCED(LTE−A)、NR、3GPP2 CDMA2000(例えば、1xRTT、1xEV−DO、HRPD、eHRPD)、Wi−MAX、GPSなどのうちのいずれかなどの、1つ以上の追加の無線通信プロトコルを介して通信可能であり得る。
【0045】
無線デバイス102、104は、様々なタイプの無線デバイスのうちのいずれかであってもよい。1つの可能性として、無線デバイス102、104のうちの1つ以上は、スマートフォン、ハンドヘルドデバイス、ウェアラブルデバイス、タブレット、自動車、又は事実上任意のタイプのモバイル無線機器などの、実質的にポータブルな無線ユーザ機器(UE)デバイスであってもよい。別の可能性として、無線デバイス102、104のうちの1つ以上は、セットトップボックス、メディアプレーヤ(例えば、オーディオ若しくは視聴覚デバイス)、ゲームコンソール、デスクトップコンピュータ、アプライアンス、ドア、又は様々な他のタイプのデバイスのうちのいずれかなどの、実質的に定置型デバイスであってもよい。
【0046】
無線デバイス102、104の各々は、無線通信の実行を容易にするように構成されている無線通信回路を含むことができ、無線通信回路は、様々なデジタル及び/又はアナログ無線周波数(RF)構成要素と、メモリ、フィールドプログラマブルゲートアレイ(FPGA)などのプログラム可能ハードウェア要素、及び/又は様々な他の構成要素のうちのいずれかに記憶されたプログラム命令を実行するように構成されているプロセッサと、を含んでもよい。無線デバイス102及び/又は無線デバイス104は、そのような構成要素の一部又は全てを使用して、本明細書に記載される方法の実施形態のいずれか、又は本明細書に記載される方法の実施形態のいずれかの任意の部分を実行してもよい。
【0047】
無線デバイス102、104の各々は、1つ以上の無線通信プロトコルを使用して通信するための1つ以上のアンテナを含んでもよい。場合によっては、受信及び/又は送信チェーンの1つ以上の部分が、複数の無線通信規格間で共有されてもよい。例えば、デバイスは、部分的又は全体的に共有される無線通信回路を使用する(例えば、共有無線機又は少なくとも共有無線構成要素を使用して)Bluetooth(登録商標)又はUWBのいずれかを使用して、通信するように構成されてもよい。共用される通信回路は、無線通信を実行するために、単一のアンテナを含んでもよいし、又は(例えばMIMO用の)複数のアンテナを含んでもよい。あるいは、デバイスは、デバイスと通信するように構成された無線通信プロトコル毎に、(例えば、別個のアンテナ及び他の無線機構成要素を含む)別個の送信チェーン及び/又は受信チェーンを含んでもよい。更なる可能性として、デバイスは、複数の無線通信プロトコル間で共有される1つ以上の無線機又は無線機構成要素と、単一の無線通信プロトコルによって排他的に使用される1つ以上の無線機又は無線機構成要素とを含んでもよい。例えば、デバイスは、LTE又はCDMA2000 1xRTTのいずれかを使用して通信するための共有無線機と、UWB、Wi−Fi及び/又はBluetooth(登録商標)の各々を使用して通信するための別個の無線機とを含んでもよい。他の構成も可能である。
【0048】
前述のように、本開示の態様は、
図1の無線通信システムと共に実装されてもよい。例えば、無線デバイス102、104は、
図4〜
図9に関して本明細書に後で記載される1つ以上のセキュア測距無線通信技術又は特徴を使用して通信することができる。このような技術(及び/又は本明細書に記載される他の技術)を利用することによって、無線デバイス(単数又は複数)は、(少なくともいくつかの実施形態に従って)高度にセキュアな測距通信を達成することができる。
【0049】
(
図2−3−例示的なデバイスブロック図)
図2は、本開示の様々な態様と共に使用するために構成され得る、例示的な無線デバイス200を示す。例えば、デバイス200は、無線デバイス102又は無線デバイス104の一例であり得る。デバイス200は、様々なタイプのデバイスのいずれかであってもよく、様々なタイプの機能性のいずれかを実行するように構成されてもよい。デバイス200は、実質的にポータブルなデバイスであってもよく、又は、様々なタイプのデバイスのいずれかを含む可能性がある、実質的に定置型デバイスであってもよい。デバイス200は、
図4〜
図9の一部又は全てに関して本明細書に後で図示及び/又は記載される技術又は特徴のいずれかなどの、1つ以上のセキュア測距無線通信技術又は特徴を実行するように構成されてもよい。
【0050】
図示するように、デバイス200は、処理素子202を含んでもよい。処理素子は、1つ以上のメモリ素子を含んでもよく、又はそれに結合されてもよい。例えば、デバイス200は、1つ以上のメモリ媒体(例えば、メモリ206)を含んでもよく、メモリ媒体は、様々なタイプのメモリのうちのいずれかを含んでもよく、様々な機能のうちのいずれかを果たしてもよい。例えば、メモリ206は、処理素子202用のシステムメモリとして機能するRAMであり得る。他のタイプ及び機能もまた可能である。
【0051】
加えて、デバイス200は、無線通信回路230を含んでもよい。無線通信回路は、様々な通信要素(例えば、無線通信用アンテナ、アナログ及び/又はデジタル通信回路/コントローラなど)のうちのいずれかを含むことができ、1つ以上の無線通信プロトコルを使用してデバイスが無線通信することを可能にし得る。
【0052】
場合によっては、無線通信回路230は、例えば、処理素子202に加えて、自身の処理素子(例えば、ベースバンドプロセッサ)を含み得ることに留意されたい。例えば、処理素子202は、その主機能がデバイス200内のアプリケーション層動作をサポートし得る「アプリケーションプロセッサ」であってもよく(又はそれを含んでもよい)、一方、無線通信回路230は、その主機能が(例えば、デバイス200と他のデバイスとの間の無線通信を容易にするために)デバイス200内のベースバンド層動作をサポートし得る「ベースバンドプロセッサ」を含んでもよい。換言すれば、場合によっては、デバイス200は、複数の処理素子を含んでもよい(例えば、マルチプロセッサデバイスであってもよい)。マルチプロセッサアーキテクチャを利用する他の構成もまた(例えば、アプリケーションプロセッサ/ベースバンドプロセッサ構成の代わりに又はそれに加えて)可能である。
【0053】
デバイス200は、デバイス200の意図される機能に応じて、デバイス機能を実装するための様々な他の構成要素(図示せず)のうちのいずれかを更に含んでもよく、他の構成要素は、更なる処理素子及び/若しくはメモリ素子(例えば、オーディオ処理回路)、1つ以上の電源要素(バッテリ電力及び/若しくは外部電源に依存し得る)、ユーザインタフェース要素(例えば、ディスプレイ、スピーカ、マイクロフォン、カメラ、キーボード、マウス、タッチスクリーンなど)、並びに/又は様々な他の構成要素のうちのいずれかを含んでもよい。
【0054】
処理素子202、メモリ206、及び無線通信回路230などの、デバイス200の構成要素は、1つ以上の相互接続インタフェースを介して動作可能に結合されてもよく、相互接続インタフェースは、様々なタイプのインタフェースのうちのいずれかを含むことができ、場合によっては複数のタイプのインタフェースの組合せを含むことができる。一実施例として、USB高速チップ間(HSIC)インタフェースを、処理素子間のチップ間通信のために備えることができる。代替的に(又は追加的に)、ユニバーサル非同期受信機送信機(UART)インタフェース、シリアル周辺インタフェース(SPI)、集積回路間(I2C)、システム管理バス(SMBus)、及び/又は様々な他の通信インタフェースのいずれかを、様々なデバイス構成要素間の通信に使用することができる。他のタイプのインタフェース(例えば、処理素子202内の通信用チップ内インタフェース、デバイス200の内部又は外部の周辺構成要素との通信用周辺インタフェースなど)もまた、デバイス200の一部として備えることができる。
【0055】
図3は、
図2に示すデバイス200の1つの可能な例示的実装であり得る、無線デバイス300の1つの可能なブロック図を示す。図示するように、無線デバイス300は、様々な目的のための諸部分を含み得る、システムオンチップ(SOC)301を含んでもよい。例えば、図示するように、SOC301は、無線デバイス300に対するプログラム命令を実行し得るプロセッサ(単数又は複数)302と、グラフィック処理を実行し、ディスプレイ360に表示信号を提供し得る表示回路304とを含んでもよい。SOC301はまた、例えば、ジャイロスコープ、加速度計、及び/又は様々な他の動き感知構成要素のうちのいずれかを使用して、無線デバイス300の動きを検知できる動き感知回路370を含んでもよい。プロセッサ(単数又は複数)302はまた、プロセッサ(単数又は複数)302からアドレスを受信し、それらのアドレスをメモリ(例えば、メモリ306、読み出し専用メモリ(read only memory、ROM)350、フラッシュメモリ310)内の位置に変換するように構成することができる、メモリ管理ユニット(memory management unit、MMU)340に結合されてもよい。MMU340は、メモリ保護及びページテーブル変換又は設定を実行するように構成されていてもよい。いくつかの実施形態では、MMU340はプロセッサ(単数又は複数)302の一部として含まれてもよい。
【0056】
図示するように、SOC301は、無線デバイス300の様々な他の回路に結合することができる。例えば、無線デバイス300は、(例えば、NANDフラッシュ310を含む)様々なタイプのメモリ、(例えば、コンピュータシステム、ドック、充電ステーションなどに結合するための)コネクタインタフェース320、ディスプレイ360、及び(例えば、UWB、LTE、LTE−A、CDMA2000、Bluetooth(登録商標)、Wi−Fi、NFC、GPS用などの)無線通信回路330を含んでもよい。
【0057】
無線デバイス300は、基地局及び/又は他のデバイスとの無線通信を実行するために、少なくとも1つのアンテナ、並びに一部の実施形態では複数のアンテナ335a及び335bを含んでもよい。例えば、無線デバイス300は、アンテナ335a及び335bを使用して、無線通信を実行することができる。上述したように、無線デバイス300は、いくつかの実施形態では、複数の無線通信規格又は無線アクセス技術(RAT)を使用して無線で通信するように構成されてもよい。
【0058】
無線通信回路330は、UWBロジック332、セルラモデム334、及び追加のWLAN/PANロジック336を含み得る。UWBロジック332は、例えば、802.15プロトコルに従って、又はセキュア測距通信のために、無線デバイス300がUWB通信を実行することを可能にするためのものである。WLAN/PANロジック336は、無線デバイス300が、Wi−Fi及び/又はBluetooth(登録商標)通信などの、他のWLAN及び/又はPAN通信を実行することを可能にするためのものである。セルラモデム334は、1つ以上のセルラ通信技術に従って、セルラ通信を実行することを可能とし得る。
【0059】
本明細書で説明されるように、無線デバイス300は、本開示の実施形態を実装するためのハードウェア及びソフトウェア構成要素を含んでもよい。例えば、無線デバイス300の無線通信回路330(例えば、UWBロジック332)のうちの1つ以上の構成要素は、例えば、記憶媒体(例えば、非一時的コンピュータ可読記憶媒体)に記憶されたプログラム命令を実行するプロセッサ、FPGA(フィールドプログラマブルゲートアレイ)として構成されているプロセッサによって、及び/又はASIC(特定用途向け集積回路)を含み得る専用ハードウェア構成要素を使用して、本明細書で説明される方法の一部又は全てを実行するように構成されてもよい。
【0060】
(セキュア測距)
UWBパケットのセキュア測距シーケンス(例えば、セキュアなトレーニングシーケンス(STS))を生成するためのシステム又は装置におけるブロック図の例示的部分を、
図4に示す。例示的部分では、暗号学的にセキュアな乱数(又は疑似乱数)発生器(CSPRNG)402を使用して、多数のランダムビットc
iを生成する。CSPRNG 402を使用して生成されたビットは、パルスマッパ404の使用を通じてパルスの極性及び位置にマッピングされる。いくつかの実装では、マッピングは任意であってもよい。他の実装では、マッピングは、所定のアルゴリズムに従って実行されてもよい。例示的な一例では、CSPRNG 402は、2
16ビット(又は他の数のビット)c
iを生成してもよく、各ビットは、単一パルスの極性+/−1を判定してもよいし、又は表してもよい。パルスは、例えば、
図5に示す例示的なパルスシーケンスをもたらす、8つのパルス位置(又は他の数のパルス位置)によって広げられてもよい。次いで、パルスはUWB変調器406によって変調され得る。
【0061】
他の例示的な実装では、例えば、以下で更に論じるように、パルス位置を判定するビットのうちの1つ以上、又はパルスシーケンス全体は、それらの間にガードインターバルを用いて2つ以上のより小さいセクションにセグメント化することができる。
【0062】
いくつかの実装によれば、CSPRNG 402、パルスマッパ404、並びに/又は変調器406は、UWBロジック332などの無線通信回路(例えば、230及び/若しくは330)又はその一部に含まれてもよい。
【0063】
測距セキュリティは、暗号チャレンジ応答プロトコルと共に、STSフレームの使用を可能にするように、STSフレームを変更することによって強化することができる。デバイスA及びデバイスBを含むチャレンジ応答プロトコルは、デバイスBによって抽出された第1の経路をデバイスAが有効にすることを可能にする。
以下でより詳細に説明する一実施例では、デバイスBは、その受信した第1の経路に基づいて、デバイスAによって送信された多数の「チャレンジ」ビットを復号しようと試みることができる。
次いで、デバイスBは、例えば公開鍵方式を使用して、セキュア応答をデバイスAに返送することができる。デバイスAは、デバイスBからの応答を有効にすることができ、それによって、デバイスBの到着時間の判定を有効にすることができる。他の実装では、変更されたSTS構造を、チャレンジ応答プロトコルを利用することなく実施することができる。
【0064】
図6は、UWBパケットのセキュア測距シーケンスを生成するためのシステム又は装置のブロック図の変更部分である。いくつかの実装によれば、
図6に示すシステムは、UWBロジック332などの、無線通信回路(例えば、230及び/若しくは330)又はその一部に含まれてもよい。図示するように、CSPRNG 602は、
図4のように、パルスマッパ604の使用を通じて、パルスの極性及び位置にマッピングされ得る多数の乱数ビットc
iを生成することができる。セキュア測距技術は、STSパルスシーケンスを2つ以上のサブブロックに論理的に分割することを更に含んでもよい。ガードインターバルは、サブブロック間に挿入されてもよい。更に、
図6の例では、i番目のサブブロック内の一部の/全てのパルスの極性は、例えばフリップサブブロック極性モジュール608などのエンコーダによって、ビットb
iで乗算され得る。したがって、サブブロックは、値b
iを「符号化する」(又は、表現するため符号化される)ことができる。ビットb
iは、例えば、ビット発生器610によって任意の方法で生成することができるが、いくつかの実装では、ビットb
iは、例えば、チャレンジ応答プロトコルにおけるチャレンジビットに対応してもよく、1つ以上の上位層によって提供されてもよい。任意の数のビットb
i、したがって任意の数のサブブロックは、その数が基本的なSTS生成メカニズムと一致する限り、選択されてもよい。更に、選択される数は、感度、セキュリティなどを含む1つ以上の要件などであるが、これらに限定されない1つ以上の要因に基づき得る。
例えば、より高いレベルのセキュリティが望まれる場合、より多数のチャレンジビットを表す、より多数のビットb
iが使用されてもよい。符号化パルスは、UWB変調器606によって変調され、例えば送信回路(図示せず)によって、UWB波形としてデバイスBに送信され得る。
【0065】
図7は、開示された技術を使用して生成された3つの連続するサブブロックの例を示す。
図7の例では、i番目のサブブロック内の実線のパルス極性は、b
i=0に対応し、破線のパルス極性は、b
i=1に対応する。
【0066】
STSフレーム長、又はパルスの数及び/若しくは位置の変化は必要ではないことに留意されたい。加えて、変更されたSTSシーケンスの暗号セキュリティ特性は、サブブロックを修正するビットb
iがc
iと無関係である限り、元のシーケンスc
iと類似となる。したがって、元のシーケンス用に設計された受信機及びセキュリティプロトコルは、わずかな調節のみを必要とする変更された配列と共になお使用され得る。
【0067】
これらの技術を使用する一実施例では、例示的なパケットフォーマット(又はフレームフォーマット)は、以下のフレーム要素(又はフレームセグメント)の一部又は全てを含んでもよい。
【0068】
公知のプリアンブルシーケンス、例えば、周期的パルスシーケンス、
【0069】
プリアンブルの終わりをマークするスタートオブフレームデリミタ(SFD)、
【0070】
例えば、以下で更に論じるような、メッセージ符号化(メッセージ符号化STS、又は「ME−STS」)を有する上記ランダムパルスシーケンスに従ったセキュアなトレーニングシーケンス(STS)、及び
【0071】
任意選択的に、PHYヘッダー(PHR)及びデータペイロード。
【0072】
IEEE 802.15.4−2015のUWB HRPチャプタは、プリアンブル、SFD、並びにPHR及びデータペイロードセグメントを生成する方法の例を示す。
【0073】
STSは、SFDとPHRとの間の代わりに、データペイロードの後に実装されてもよいことに留意されたい。更に、いくつかの実施態様では、PHR及びデータペイロードは、一緒に省略されてもよい。
【0074】
図8は、いくつかの実施形態に係る、時間が上から下に経過するときの、例示的な実装における信号フロー図を示す。具体的には、
図8は、マスター又は検証者デバイスであり得るデバイスAと、スレーブ又は証明者デバイスであり得るデバイスBとの間で伝達される信号を示す。デバイスA及びデバイスBの各々は、無線デバイス200及び/又は無線デバイス300などの無線デバイスであってもよい。
【0075】
デバイスAは、ランダム「チャレンジ」(又は検証者)シーケンスMv[i]、i=0...L
c-1を生成することができ、ここで、iはシーケンス内のビットインデックスであり、L
cはビット数におけるチャレンジシーケンス長である。L
cは、例えば、16、32、64、又は任意の他のビット数であってもよい。チャレンジシーケンスは、接続されたデバイスBを含む他の全てのデバイスに未知であり得ることが好ましい。
シーケンスMvは、上記でビットb
iと呼ばれたものを表すことに留意されたい。
【0076】
デバイスAはまた、暗号学的にセキュアなランダムシーケンスを生成することによって、初期STSシーケンスを準備することができる。このランダムSTSシーケンスは、デバイスA及びデバイスBの両方に既知である。
いくつかの実施態様では、ランダムSTSシーケンスは、パケットからパケットへ、例えば、暗号生成プロセスに基づいて変化し得る。初期STSシーケンスは、100〜1,000パルス、1,000〜10,000パルス、数万パルス、数十万パルス、数百万パルスなどの多数のランダムパルスL
pを表すことができる。
ランダムSTSシーケンスは、デバイスA及びB以外の任意のデバイスには未知であり得ることが好ましい。
【0077】
デバイスAは、パルスL
pの総数をL
sパルスのセグメント(又はサブブロック)に細分化してもよい。Mv[0]がビット値0を有する場合、第1のL
sパルスの極性は変化しないままであってもよく、Mv[0]がビット値1を有する場合、反転されてもよい。他の実装では、ビット値0が極性を反転させ、一方、ビット値1がビット値を変化させないままにする。第2の検証者メッセージビット、Mv[1]を使用して、L
sパルスの第2のサブブロックを反転させる(又は反転させない)かどうかなどを判定することができる。いくつかの実施形態では、Lpは、L
cに対応する倍数(例えば、L
s*L
c=L
p)で、L
sの整数倍であってもよい。このプロセスは、メッセージ符号化STS(ME−STS)を作成する。本実施例では、メッセージは、検証者メッセージMvを表す。得られたパルスシーケンスは、メッセージ符号化検証者STS(MEV−STS)と呼ばれる。
【0078】
デバイスAは、検証者メッセージ(WRF−VM)を含む無線測距フレームを生成することができる。WRF−VMは、いくつかのシナリオでは、所望に応じて、周期的プレアンブル、SFD、MEV−STS、並びに/又は他のPHR及びペイロードデータを含んでもよい。
【0079】
デバイスAは、WRF−VMをデバイスBに送信してもよい。
【0080】
デバイスBは、周期的プリアンブルを受信し、既知の周期的プリアンブルからチャネル推定値(又はチャネルインパルス応答、CIR)を抽出することができる。デバイスBはまた、反射などの多数の伝搬経路であってもよい第1の伝搬経路の位置を、CIRから抽出することができる。第1の経路は、最短測定距離、又は視線(LOS)経路に対応する。
【0081】
デバイスBは、例えば、SFD(これもまた公知である)に基づいて、MEV−STSの開始を判定することができ、次いで、STSシーケンスはデバイスAとデバイスBの両方に既知であるので、(伝播チャネルによって「不鮮明にされた」)L
s受信パルスの各サブブロックを、STSシーケンスからのL
s期待パルスの対応するセグメントに相関させることができる。
次に、各サブブロックの相関結果を使用して、i番目のサブブロックに対する検証者メッセージビットMv[i]の極性を検出する(例えば、従来のスライシングを通じて推定する)ことができる。いくつかの実装では、検出/スライシング動作は、プレアンブルCIRにおいて導出される第1の経路の位置のみを使用する。このようにして、デバイスBは、デバイスAによって送信された元の検証者メッセージMvの推定値を、このメッセージが第1の(最も直接的又は最短の)伝搬経路によって実際に伝えられる(送信される)という仮定の下で再作成する。受信メッセージは、必ずしも常には真の送信メッセージと一致しないため、Mv’と呼ぶことにする。(例えば、ノイズ、攻撃などによる)損失が発生しなかった場合、Mv’はMvと同一となる。
【0082】
デバイスBは、同様に構成されたフレーム、例えば、無線測距フレーム証明者メッセージ(WRF−PM)をデバイスAに送信することができる。例えば、WRF−PMは、第2のME−STSメッセージを含んでもよい。具体的には、デバイスBは、デバイスBとデバイスAの両方に既知である第2のSTSシーケンスを生成することができる。
デバイスBは、例えば、第1のSTSシーケンスが検証者メッセージMvを使用して符号化されたのと同じ又は類似の方法で、証明者メッセージMpを使用して第2のSTSシーケンスをメッセージ符号化することができる。例えば、デバイスBは、第2のSTSのパルス総数を、L
sパルスのサブブロックに細分化することができ、対応するビットMp[i]の値に基づいて、i番目のサブブロックのパルス極性を変更することができる。したがって、第2のME−STSのメッセージは、証明者メッセージMpを表す。得られたパルスシーケンスは、メッセージ符号化証明者STS(MEP−STS)と呼ばれる。
【0083】
デバイスBは、(デバイスAを含む)任意の他のデバイスには未知であり得る証明者メッセージMpをランダムに生成することができる。証明者メッセージMpは、検証者メッセージMvと同じ長さを有してもよく、又は異なる長さを有してもよい。
【0084】
MEP−STSは、デバイスAに返送される応答パケットWRF−PMに含まれてもよい。
【0085】
デバイスBはまた、第3のフレーム(デバイスBからデバイスAに送信された2番目)、例えば、無線測距フレーム認証メッセージ(WRF−AM)を、デバイスAに送信することができる。WRF−AMは、第3のME−STSメッセージを含んでもよい。例えば、デバイスBは、暗号学的にセキュアなマッピングメカニズムを使用して、受信メッセージMv’及び証明者メッセージMpを、Mv’及びMp:MAC(Mv’,Mp)に依存するメッセージ認証コード(MAC)にマッピングすることができる。新しいメッセージMaを生成するこのマッピングメカニズムは、いくつかの実装では、HMACなどの周知のハッシュメカニズムであってもよい。チャレンジメッセージと応答メッセージとの間のマッピングメカニズムは、デバイスA及びデバイスBの両方に既知であるが、他のデバイスには未知であることに留意されたい。得られる認証メッセージMa=MAC(Mv’,Mp)を使用して、例えば、第1のSTSシーケンスが検証者メッセージMvを使用して符号化されたのと同じ又は類似の方法で、デバイスA及びBの両方に既知である新しい(第3の)STSシーケンスを符号化することができる。得られたパルスシーケンスは、メッセージ符号化認証STS(MEA−STS)と呼ばれる。MEA−STSは、デバイスAに送信されるパケットWRF−AMに含まれてもよい。
【0086】
デバイスAは、デバイスBから2つのフレーム(WRF−PM及びWRF−AM)を受信し、WRF−VMを受信すると実行されるデバイスBと同様の機能を実行してもよい。例えば、デバイスAは、(WRF−PMのプリアンブルに基づいて)その局所的に推定されたCIRを使用して、第1の経路にコミットし、ビット毎に抽出を実行して、再構成Mp’を生成することによって、証明者メッセージMpを抽出することができる。デバイスAは同様に、(WRF−AMのプリアンブルに基づいて)その局所的に推定されたCIRを使用して、第1の経路にコミットし、ビット毎に抽出を実行して、再構成Ma’を生成することによって、認証メッセージMaを抽出することができる。
【0087】
次いで、デバイスAは、メッセージMv(それが生成したもの)及びメッセージMp’を使用して、期待される認証コードMaのローカルバージョン、すなわちMa_rec=MAC(Mv,Mp’)を生成(再構成)することができる。
【0088】
次いで、デバイスAは、例えば(ソフトウェア及び/又はハードウェアを含む)比較器ロジックを使用して、再構成Ma_recとMa’とを比較することができ、比較器ロジックは、例えばUWBロジック332又はプロセッサ302(単数又は複数)に含まれてもよい。十分に近い一致があると判定したことに応じて(例えば、一致ビットのパーセンテージが所定の閾値を満たす場合)、デバイスAは、交換を成功としてマークすることができる。次に、2つのデバイスA及びB(WRF−VM及びWRF−PMのCIR)によって測定されるように、2つのローカルCIRから抽出された第1の経路に基づいて、飛行時間(ToF)(例えば、片道及び/又は往復)を計算することができる。デバイスAは、ToFに基づいて、デバイスAとデバイスBとの間の範囲(例えば、物理的距離又は伝搬距離)を計算することができる。
【0089】
あるいは、デバイスAは、マッピングメカニズムの逆をMa’に適用して、Maを生成するために使用される検証者メッセージMv’及び/又は証明者メッセージMpのローカルバージョンを再構築することができる。
検証者メッセージのローカルバージョンは、Mv’’と呼ばれることがあり、証明者メッセージのローカルバージョンは、Mp’’と呼ばれることがある。例えば、デバイスAは、マッピングメカニズムの逆と共に証明者メッセージMpを使用して、検証者メッセージMv’’のローカルバージョンを再構成することができる。別の例として、デバイスAは、マッピングメカニズムの逆と共に検証者メッセージMv’を使用して、証明者メッセージMp’’のローカルバージョンを再構成することができる。次いで、デバイスAは、ローカルバージョンMv’’をMvと比較してもよく、及び/又はローカルバージョンMp’’をMp’と比較してもよい。十分に近い一致があると判定したことに応じて、デバイスAは、交換を成功としてマークすることができる。
【0090】
いくつかの実装では、着信WRF−VMフレームの第1の経路と、発信WRF−PMの発送時間との間のデバイスBにおけるターンアラウンドタイムは、固定されていてもよく、及び/又はデバイスA及びBの両方に先験的に既知であってもよい。
これは、デバイスAが、デバイスBから明示的なタイムスタンプ(又はタイムスタンプデルタ)をたとえ知ることがなくても、飛行時間全体を計算するのに役立つ。
【0091】
前述の技術は、検証者メッセージ及び証明者メッセージ、Mv及びMpが、所与のブロックが所与のメッセージビットに対応するようにブロックに編成された、によるパルスのランダムな暗号学的にセキュアなトレーニングシーケンス(STS)の上に符号化される、独自のメカニズムを提供する。
【0092】
なお、上述したように、メッセージビットを使用して、L
sパルスのサブブロック全体の極性を符号化(反転又は非反転)することができることに留意されたい。いくつかの他の実装では、メッセージビットは、それぞれのサブブロック内のLbパルスの位置などの、Lsパルスのサブブロックの別の特性を変更するために使用することができる。
【0093】
また、例えば、デバイスA及びデバイスBの両方が、両方のデバイスには既知であるが他のデバイスには未知であるSTSを生成する方法を知るのを確実にする、暗号学的にセキュアなSTS生成プロセス、及びデバイスA及びBのみに既知でもある、MvからMpへの暗号学的にセキュアなチャレンジツーレスポンスマッピング機能が、暗号鍵などの好適な暗号化メカニズムを通して1つ以上のより上位の処理層において取り扱うことができることに留意されたい。
【0094】
加えて、メッセージを符号化するための「サブブロック極性反転」は、パルスマッパの前に(例えば、xor機能などを使用して)バイナリドメイン内で、又はパルスマッパの後に明示的に極性を反転することによって、行われてもよいことに留意されたい。当業者であれば、様々な他の実装を選択して、パルスの最終的なME−STSシーケンスに対する同じ効果を達成することができることを認識するであろう。
【0095】
パケットのME−STS部分は、1つ以上のアクティブセグメント及び1つ以上のギャップ(又はガードインターバル)を含み得る。本技術では、ギャップは、STS符号化において生成されたパルスの送信中の、2つの時間インターバル間の沈黙期間である。
図9は、3つのギャップ(開始、中間、及び終了)並びに2つのアクティブセグメント(A及びB)を有する例示的なフォーマットを示す。メッセージ符号化STSは、生成されたメッセージ符号化STSパルスを1つ以上のアクティブセグメント上にマッピングすることによって、そのような構造(又はその任意の適応)を使用することができる。更に、アクティブセグメントの前及び/若しくは後に、並びに/又は2つのアクティブセグメント間にギャップを含めることができる。メッセージ符号化サブブロック内のパルス数は、アクティブセグメント内のパルス数と一致してもよく、それによって、メッセージ符号化STSマップの連続するサブブロックが、連続するSTSアクティブセグメント上にマッピングされる。いくつかのシナリオでは、ギャップは、マルチパス環境で受信されるときにサブブロックの重複を低減又は排除するために十分に長くてもよい。
【0096】
上述の例示的な実施形態に加えて、本開示の更なる実施形態は、様々な形態のいずれかで実現することができる。例えば、いくつかの実施形態は、コンピュータにより実施される方法、コンピュータ可読記憶媒体、又はコンピュータシステムとして実現することができる。他の実施形態は、ASICなどのカスタム設計されたハードウェアデバイスの1つ以上を使用して、実現することができる。更なる他の実施形態は、FPGAなどの1つ以上のプログラム可能なハードウェア要素を使用して実現されてもよい。
【0097】
いくつかの実施形態では、永続的コンピュータ可読メモリ媒体は、プログラム命令及び/又はデータを記憶するように構成されてもよく、プログラム命令は、コンピュータシステムによって実行されると、コンピュータシステムに、本方法を、例えば、本明細書に記載された方法の実施形態のうちのいずれか、又は、本明細書に記載された方法の実施形態の任意の組合せ、又は、本明細書に記載された方法の実施形態のうちのいずれかの任意のサブセット、又は、そのようなサブセットの任意の組合せを実行させる。
【0098】
いくつかの実施形態では、デバイス(例えば、無線デバイス102又は104)は、プロセッサ(又はプロセッサのセット)及び記憶媒体を含むように構成されてもよい。ここで、記憶媒体はプログラム命令を記憶し、プロセッサは、記憶媒体からプログラム命令を読み込み、実行するように構成される。プログラム命令は、本明細書に記載されている種々の方法の実施形態の任意のもの(又は、本明細書に記載されている方法の実施形態の任意の組合せ、又は、本明細書に記載されている方法の実施形態のいずれかの任意のサブセット、又はこのようなサブセットの任意の組合せ)を実施するために実行可能である。デバイスは、様々な形態のいずれかで実現されてもよい。
【0099】
上述の実施形態は十分に詳細に記載されているが、上述の開示が十分に理解されれば、当業者には数多くの変形形態及び修正形態が明らかとなるであろう。以下の特許請求の範囲は、そのような変形形態及び修正形態の全てを包含すると解釈されることを意図している。