(57)【特許請求の範囲】
【請求項１】
第1の電子デバイスにおける、前記第1の電子デバイスと第2の電子デバイスとの間の相互認証の方法であって、
通信チャネルを介して前記第2の電子デバイスへ接続するステップと、
前記第2の電子デバイスによって検出可能な第1のオーディオ信号を、前記第1の電子デバイスのスピーカを介して出力するステップと、
前記第1の電子デバイスと前記第2の電子デバイスとの間の第1の推定距離を、前記通信チャネルを介して前記第2の電子デバイスから受信するステップであって、前記第1の推定距離は、前記第1のオーディオ信号に基づいて前記第2の電子デバイスによって計算される、ステップと、
指定された時間に第2のオーディオ信号を出力する要求を、前記通信チャネルを介して前記第2の電子デバイスへ送信するステップと、
前記第2のオーディオ信号を、前記第1の電子デバイスのマイクロホンを介して受信するステップであって、前記第2のオーディオ信号が、前記指定された時間に前記第2の電子デバイスによって出力される、ステップと、
前記第2のオーディオ信号が受信された時に対応する受信時間を記録するステップと、
前記指定された時間と前記受信時間との時間差を計算するステップと、
前記第1の電子デバイスと前記第2の電子デバイスとの間の第2の推定距離を、前記時間差に少なくとも部分的に基づいて計算するステップと、
前記第1の推定距離と前記第2の推定距離との差が、しきい量未満であることを判定するステップと、を備える方法。
【請求項２】
(i)前記第2の推定距離と、(ii)前記第1の推定距離と前記第2の推定距離との差が前記しきい量未満である旨の第1の通知とを、前記通信チャネルを介して前記第2の電子デバイスへ送信するステップ、をさらに備える請求項1に記載の方法。
【請求項３】
前記第1の推定距離と前記第2の推定距離との差が前記しきい量未満であると前記第2の電子デバイスが判定した旨の第2の通知を、前記通信チャネルを介して前記第2の電子デバイスから受信するステップ、をさらに備える請求項2に記載の方法。
【請求項４】
前記第1のオーディオ信号を出力するステップは、
指定された第1の時間に前記第1のオーディオ信号を出力する第1の要求を、前記通信チャネルを介して前記第2の電子デバイスから受信するステップと、
前記指定された第1の時間に、前記第1のオーディオ信号を、前記スピーカを介して出力するステップとを備える、請求項1に記載の方法。
【請求項５】
前記第1の電子デバイスと前記第2の電子デバイスとの間の前記第2の推定距離を計算するステップは、
前記時間差と、あらかじめ計算された音速値とに基づいて、前記第2の推定距離を計算するステップを備える、請求項1に記載の方法。
【請求項６】
前記通信チャネルを介して前記第2の電子デバイスへ接続するステップは、
ワイヤレスローカルエリアネットワーク(WLAN)またはワイヤレスパーソナルエリアネットワーク(WPAN)のうちの1つを介して前記第2の電子デバイスへ接続するステップを備える、請求項1に記載の方法。
【請求項７】
追加の電子デバイスに対して相互認証するように構成された電子デバイスであって、
通信チャネルを介して前記電子デバイスを前記追加の電子デバイスへ接続するように構成された通信モジュールと、
オーディオを出力するように構成されたスピーカと、
オーディオを検出するように構成されたマイクロホンと、
前記通信モジュール、前記スピーカ、および前記マイクロホンとインターフェースするように適合されたプロセッサとを備え、前記プロセッサは、
前記追加の電子デバイスによって検出可能な第1のオーディオ信号を前記スピーカに出力させること、
前記電子デバイスと前記追加の電子デバイスとの間の第1の推定距離を、前記通信チャネルを介して前記追加の電子デバイスから受信することであって、前記第1の推定距離は、前記第1のオーディオ信号に基づいて前記追加の電子デバイスによって計算される、こと、
指定された時間に第2のオーディオ信号を出力する要求を、前記通信チャネルを介して前記追加の電子デバイスへ送信すること、
第2のオーディオ信号を、前記マイクロホンを介して受信することであって、前記第2のオーディオ信号が、前記指定された時間に前記追加の電子デバイスによって出力される、こと、
前記第2のオーディオ信号が受信された時に対応する受信時間を記録すること、
前記指定された時間と前記受信時間との時間差を計算すること、
前記電子デバイスと前記追加の電子デバイスとの間の第2の推定距離を、前記時間差に少なくとも部分的に基づいて計算すること、および
前記第1の推定距離と前記第2の推定距離との差がしきい量未満であることを判定すること
を行うように構成された、電子デバイス。
【請求項８】
前記プロセッサはさらに、(i)前記第2の推定距離と、(ii)前記第1の推定距離と前記第2の推定距離との差が前記しきい量未満である旨の第1の通知とを、前記通信チャネルを介して前記追加の電子デバイスへ送信するように構成された、請求項7に記載の電子デバイス。
【請求項９】
前記プロセッサはさらに、前記第1の推定距離と前記第2の推定距離との差が前記しきい量未満であると前記追加の電子デバイスが判定した旨の第2の通知を、前記通信チャネルを介して前記追加の電子デバイスから受信するように構成された、請求項8に記載の電子デバイス。
【請求項１０】
前記第1のオーディオ信号を前記スピーカに出力させるために、前記プロセッサは、
指定された第1の時間に前記第1のオーディオ信号を出力する第1の要求を、前記通信チャネルを介して前記追加の電子デバイスから受信し、
前記指定された第1の時間に前記第1のオーディオ信号を前記スピーカに出力させるように構成された、請求項7に記載の電子デバイス。
【請求項１１】
前記電子デバイスと前記追加の電子デバイスとの間の前記第2の推定距離を計算するために、前記プロセッサは、
前記第2のオーディオ信号が受信された時に対応する受信時間を記録し、
前記指定された第2の時間と前記受信時間との時間差を計算し、
前記時間差と、あらかじめ計算された音速値とに基づいて、前記第2の推定距離を計算するように構成された、請求項7に記載の電子デバイス。
【請求項１２】
前記通信モジュールは、ワイヤレスローカルエリアネットワーク(WLAN)またはワイヤレスパーソナルエリアネットワーク(WPAN)のうちの1つを介して、前記電子デバイスを前記追加の電子デバイスへ接続するように構成された、請求項7に記載の電子デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、一般に、相互認証に関する。特に、本願は、帯域外チャネルによる通信を介して電子デバイスのセットを相互に認証するためのプラットフォームおよび技術に関する。
【背景技術】
【０００２】
相互認証は、各デバイスが他のデバイスのアイデンティティを保証され得るように互いを同時に認証する2つのデバイスによって適用される技術である。ある場合には、クライアントデバイスとサーバが相互に認証し得、他の場合では、2つのクライアントデバイスが相互に認証し得る。相互認証は、デバイスのためのセキュリティの追加レイヤを提供する。したがって、フィッシング、マルウェア、および他の一般的な攻撃のような、デバイスに呈される脅威が、低減または除去され得る。
【０００３】
相互認証のための様々な既存技術が存在する。一般に、相互認証を成功させるために、各デバイスは、他のデバイスからのチャレンジへの応答に成功しなければならない。いくつかの相互認証技術は、公開鍵と秘密鍵のペアを組み込む。他のいくつかの技術は、オーディオの出力および検出を介してのように、デバイスが互いを感知するステップを含む。しかしながら、オーディオを組み込む現在の相互認証技術は、より多くのデジタルデータベースの相互認証技術に与えられるセキュリティの追加レイヤを欠く。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、セキュリティの追加レイヤを有する、オーディオベースの相互認証技術のための好機が存在する。
【課題を解決するための手段】
【０００５】
1つの態様では、第1の電子デバイスと第2の電子デバイスとの間の相互認証の第1の電子デバイスにおける方法が提供される。この方法は、通信チャネルを介して第2の電子デバイスへ接続するステップと、第2の電子デバイスによって検出可能な第1のオーディオ信号を、第1の電子デバイスのスピーカを介して出力するステップと、第1の電子デバイスと第2の電子デバイスとの間の第1の推定距離を、通信チャネルを介して第2の電子デバイスから受信するステップと、第1の推定距離は、第1のオーディオ信号に基づいて第2の電子デバイスによって計算される、ステップとを含む。この方法はさらに、第2の電子デバイスによって出力された第2のオーディオ信号を、第1の電子デバイスのマイクロホンを介して受信するステップと、第1の電子デバイスと第2の電子デバイスとの間の第2の推定距離を、第2のオーディオ信号に基づいて計算するステップと、第1の推定距離と第2の推定距離との差がしきい量未満であることを判定するステップとを含む。
【０００６】
別の態様では、追加の電子デバイスに対して相互認証するように構成された電子デバイスが開示される。電子デバイスは、通信チャネルを介して電子デバイスを追加の電子デバイスへ接続するように構成された通信モジュールと、オーディオを出力するように構成されたスピーカと、オーディオを検出するように構成されたマイクロホンと、通信モジュール、スピーカ、およびマイクロホンとインターフェースするように適応されたプロセッサとを含む。プロセッサは、追加の電子デバイスによって検出可能な第1のオーディオ信号をスピーカに出力させ、電子デバイスと追加の電子デバイスとの間の第1の推定距離を、通信チャネルを介して追加の電子デバイスから受信するように構成され、第1の推定距離は、第1のオーディオ信号に基づいて追加の電子デバイスによって計算される。プロセッサはさらに、追加の電子デバイスによって出力された第2のオーディオ信号を、マイクロホンを介して受信し、電子デバイスと追加の電子デバイスとの間の第2の推定距離を、第2のオーディオ信号に基づいて計算し、第1の推定距離と第2の推定距離との差がしきい量未満であることを判定するように構成される。
【０００７】
さらなる態様では、追加の電子デバイスに対して相互認証するように構成された電子デバイスが開示される。電子デバイスは、電子デバイスを、通信チャネルを介して追加の電子デバイスへ接続するように構成された通信モジュールと、オーディオを出力するように構成されたスピーカと、オーディオを検出するように構成されたマイクロホンと、通信モジュール、スピーカ、およびマイクロホンとインターフェースするように適応されたプロセッサとを含む。プロセッサは、再生コマンドを検出し、追加の電子デバイスによって検出可能な第1のオーディオ信号をスピーカに出力させ、ここで、マイクロホンはスピーカによって出力された第1のオーディオ信号も検出し、プロセッサは、プロセッサがマイクロホンから第1のオーディオ信号を受信した時に対応する第1のオーディオ受信タイムスタンプを記録し、マイクロホンによって検出され、追加の電子デバイスによって出力された第2のオーディオ信号を、マイクロホンから受信するように構成される。プロセッサはさらに、プロセッサが第2のオーディオ信号を受信した時に対応する第2のオーディオ受信タイムスタンプを記録し、追加の電子デバイスが第1のオーディオ信号を検出し、第2のオーディオ信号を出力した時に基づくターンアラウンド時間を、通信チャネルを介して追加の電子デバイスから受信し、第1のオーディオ受信タイムスタンプ、第2のオーディオ受信タイムスタンプ、ローカル飛行時間一定値、およびターンアラウンド時間に基づいて、往復オーディオ飛行時間を計算するように構成される。
【０００８】
同一の参照番号が個別の図を通じて同一または機能的に類似の要素を称している添付図面は、以下の詳細説明とともに、明細書内に組み込まれ、明細書の一部を形成し、特許請求された実施形態を含む概念の実施形態をさらに例示し、これら実施形態の様々な原理および利点を説明するために役立つ。
【図面の簡単な説明】
【０００９】
【図１】いくつかの実施形態に従って、互いに通信し、様々な相互認証技術を容易にすることが可能な多数の電子デバイスの例示的な表現である。
【図２】いくつかの実施形態に従う相互認証技術の信号図である。
【図３】いくつかの実施形態に従う相互認証技術のタイミング図である。
【図４】いくつかの実施形態に従う相互認証技術のフロー図である。
【図５】いくつかの実施形態に従う電子デバイスのブロック図である。
【発明を実施するための形態】
【００１０】
相互認証は、各デバイスが他のデバイスのアイデンティティを保証され得るように互いを同時に認証する2つのデバイスによって適用される技術である。電子デバイスのペアの相互認証は、デバイスのためのセキュリティの追加レイヤを提供する。その結果、フィッシング、マルウェア、および他の一般的な攻撃のような、デバイスに呈される脅威が、低減または除去され得る。
【００１１】
本実施形態は、電子デバイスのペアによる相互認証のためのシステムおよび方法を提供する。態様に従って、電子デバイスのペアは、互いと物理的に近接し得、ワイヤレスローカルエリアネットワーク(WLAN)または他のタイプの通信ネットワークのような帯域外チャネルを介して互いに接続し得る。電子デバイスは、帯域外チャネルを介して、再生コマンドおよび/またはタイミングデータを交換し得る。各電子デバイスは、他の電子デバイスによって検出可能であるオーディオ信号を出力し得る。再生コマンド、タイミングデータ、および/または、オーディオ検出に基づいて、各電子デバイスは、様々なタイミングメトリックを計算し、タイミングメトリックを、帯域外チャネルを介して他の電子デバイスと交換し得る。タイミングメトリックに基づいて、各電子デバイスは、電子デバイス間の距離を推定し得、推定距離が同じまたは類似しているのであれば、電子デバイスは、互いを相互認証されたと見なし得る。
【００１２】
図1は、電子デバイスのペアが互いに相互に認証し得る環境100を描写する。環境100は、第1の電子デバイス105および第2の電子デバイス110を含む。電子デバイス105、110のそれぞれは、たとえば、デスクトップコンピュータ、ノートブックコンピュータ、モバイル電話、情報携帯端末(PDA)、スマートフォン、タブレットコンピュータ、マルチメディアプレーヤ、MP3プレーヤ、デジタルブロードキャスト受信機、遠隔コントローラ、デジタルカメラ、デジタルビデオレコーダ、または他の任意の電子装置のような任意のタイプの電子デバイスであり得る。電子デバイスのタイプに関わらず、電子デバイス105、110のそれぞれは、少なくともオーディオ出力構成要素、オーディオ入力構成要素、通信構成要素、および処理構成要素を装備し得ることが認識されるべきである。
【００１３】
電子デバイス105、110はそれぞれ、オーディオを出力するかまたはオーディオを検出するように構成されたオーディオ構成要素を含み得る。詳細には、第1の電子デバイス105は、格子窓108を備えたスピーカ109と、穴106を備えたマイクロホン107とを含み得る。同様に、第2の電子デバイス110は、格子窓113を備えたスピーカ114と、穴111を備えたマイクロホン112とを含み得る。スピーカ109、114のそれぞれは、電子オーディオ信号に基づいてオーディオを出力するように構成され、マイクロホン107、112のそれぞれは、検出された音を電気信号へ変換するように構成される。スピーカ109、114、スピーカ格子窓108、113、マイクロホン107、112、およびマイクロホン穴106、111の数、タイプ、サイズ、および場所は単なる例であり、他の数、タイプ、サイズ、および場所が構想されることが認識されるべきである。
【００１４】
図1に例示されるように、電子デバイス105、110のそれぞれはまた、コンテンツを表示するように構成された視覚構成要素103、102(たとえば、タッチスクリーンまたは電子ディスプレイ)をも含み得る。電子デバイス105、110のそれぞれはまた、電子デバイス105、110の各々のユーザからの入力を受信または検出するために、タッチスクリーンに組み込まれた容量性タッチセンサ、または、個別の機械的ボタンのような1つまたは複数のタッチ入力構成要素を含み得る。
【００１５】
第1の電子デバイス105は、通信ネットワーク115を介して、第2の電子デバイス110と通信する(または、単に接続する)ように構成され、その逆も同様に構成される。一般に、通信ネットワーク115を介した通信または接続は、電子デバイス105、110のオーディオ構成要素によって容易にされるオーディオ入力およびオーディオ出力機能とは別であるので、「帯域外」と見なされ得る。通信ネットワーク115は、任意のIEEE 802規格または他の規格に従って機能する任意のタイプのWLANまたはワイヤレスパーソナルエリアネットワーク(WPAN)であり得る。通信ネットワーク115はさらに、Bluetooth(登録商標)、Bluetooth(登録商標)低エネルギー、近距離無線通信(NFC)、無線自動識別(RFID)、および/または、他のタイプの短距離プロトコルのような様々な短距離通信プロトコルをサポートし得る。
【００１６】
相互認証を容易にするために、電子デバイス105、110のそれぞれは、通信ネットワーク115へ接続(すなわち、通信ネットワーク115を介して互いに接続)し得る。動作中、電子デバイス105は、オーディオ再生コマンドまたは要求に応じて、スピーカ109を介して、第1のオーディオ信号(たとえば、音色、音、オーディオファイル等)を出力する。電子デバイス105のマイクロホン107が第1のオーディオ信号出力を検出することに加えて、電子デバイス110のマイクロホン112が第1のオーディオ信号出力を検出する。
【００１７】
同様に、別の時間に、電子デバイス110は、追加のオーディオ再生コマンドまたは要求に応じて、スピーカ114を介して、第2のオーディオ信号(たとえば、音色、音、オーディオファイル等)を出力する。電子デバイス110のマイクロホン112が第2のオーディオ信号出力を検出することに加えて、電子デバイス105のマイクロホン107が第2のオーディオ信号出力を検出する。
【００１８】
電子デバイス105、110のそれぞれは、様々なオーディオ入力および出力イベントに関連付けられたタイムスタンプを記録し得る。詳細には、電子デバイス105、110のそれぞれは、以下のイベント、すなわち、各々のプロセッサによって発行された再生コマンド、各々のスピーカ109、114によって出力されたオーディオ、各々のマイクロホン107、112によって検出されたオーディオ、および、各々のプロセッサによって受信されたオーディオ入力のためのタイムスタンプを記録し得る。
【００１９】
タイムスタンプに基づいて、電子デバイス105、110のそれぞれは、オーディオ入力およびオーディオ出力イベントに関連付けられた様々な期間を計算し得る。詳細には、電子デバイス110は、マイクロホン112が第1のオーディオ信号を検出するときと、スピーカ114が第2のオーディオ信号を出力するときとの間の時間を計算し得、電子デバイス105は、スピーカ109が第1のオーディオ信号を出力するときと、マイクロホン112が第1のオーディオ信号を検出するときとの間の時間を計算し得る。電子デバイス105、110のそれぞれはまた、これら期間のうちの1つまたは複数、1つまたは複数の既知のレイテンシ値、および、1つまたは複数の定数(たとえば、音速)に基づいて、互いの間の推定距離「d」102を計算し得る。
【００２０】
電子デバイス105、110のそれぞれは、計算された期間、レイテンシ値、推定距離、および/または、他のデータを、通信ネットワーク115を介して送信し得る。他の電子デバイスから受信したデータに基づいて、電子デバイス105、110のそれぞれは、他の電子デバイスに対して相互認証し得る。詳細には、計算された期間および/または推定距離が同じであるか、または類似している(たとえば、しきいパーセンテージまたは量以内である)のであれば、電子デバイス105、110は、相互認証されていると見なされ得る。相互認証のための様々な技術がさらに、図2〜図4を参照して説明される。
【００２１】
図2は、相互認証技術を例示する信号図200を描写する。信号図200は、(図1に関して説明されるような電子デバイス105のような)デバイスA 205、および(図1に関して説明されるような電子デバイス110のような)デバイスB 210を含む。デバイスA 205およびデバイスB 210のそれぞれは、少なくとも1つのマイクロホン、スピーカ、プロセッサ、通信モジュール、およびタイマで構成され得る。さらに、デバイスA 205およびデバイスB 210のそれぞれは、セルラ信号、GPS信号、内部クロック、または別のソースを介して取得可能な共通の時間のような、共通の時間に従って動作し得ることが認識されるべきである。
【００２２】
信号図200は、デバイスA 205が通信チャネルを介してデバイスB 210へ接続したときに始まり得る。実施形態では、デバイスA 205およびデバイスB 210のそれぞれが、同じWLANに接続し得るか、または、デバイスA 205およびデバイスB 210が、WPAN接続、短距離通信プロトコル、または他の接続またはプロトコルを介して互いへ接続し得る。デバイスB 210は、通信チャネルを介してデバイスA 205へ要求を送信し得る(222)。この要求は、デバイスA 205が、時間「1」においてオーディオ信号「A」を出力することを指定する。実施形態では、デバイスB 210はまた、デバイスA 205へオーディオ信号「A」を送信し得るか、または、デバイスA 205が、オーディオ信号「A」へのローカルまたはリモートのアクセスを有し得る。
【００２３】
この要求を受信した後、デバイスA 205は、共通の時間を使用して、時間「1」においてオーディオ信号「A」を出力し得る(224)。さらに、デバイスB 210は、時間「2」においてオーディオ信号「A」を検出し得る(226)。オーディオ信号「A」を検出した後、デバイスB 210は、時間「1」、時間「2」、および音速のような一定値に基づいて、第1の距離を計算し得る(228)。第1の距離は、デバイスA 205とデバイスB 210の間の距離を表し得、デバイスB 210は、具体的には、時間「1」と時間「2」との間の経過時間に一定値を乗じることに基づいて第1の距離を計算し得る。
【００２４】
第1の距離を計算した後、デバイスB 210は、通信チャネルを介してデバイスA 205へ第1の距離を送信し得、デバイスA 205は、その後のアクセスのために、第1の距離を記憶し得る。デバイスA 205は、通信チャネルを介してデバイスB 210へ要求を送信し得る(232)。この要求は、デバイスB 210が時間「3」においてオーディオ信号「B」を出力することを指定する。実施形態では、デバイスA 205がまた、デバイスB 210へオーディオ信号「B」を送信し得るか、または、デバイスB 210が、オーディオ信号「B」へのローカルまたはリモートのアクセスを有し得る。この要求を受信した後、デバイスB 210は、共通の時間を使用して、時間「3」においてオーディオ信号「B」を出力し得る(234)。さらに、デバイスA 205は、時間「4」においてオーディオ信号「B」を検出し得る(236)。オーディオ信号「B」を検出した後、デバイスA 205は、時間「3」、時間「4」、および音速のような一定値に基づいて、第2の距離を計算し得る(238)。第2の距離も、デバイスA 205とデバイスB 210との間の距離を表し得、デバイスA 205は、具体的には、時間「3」と時間「4」の間の経過時間に一定値を乗じることに基づいて第2の距離を計算し得る。
【００２５】
デバイスA 205は、計算された第2の距離を、通信チャネルを介してデバイスB 210へ送信し得(240)、デバイスB 210は、その後のアクセスのために、第2の距離を記憶し得る。この点に関して、デバイスA 205とデバイスB 210との両方は、デバイスA 205とデバイスB 210との間の距離を独立して計算している。一般に、第1の距離および第2の距離が同じであるか、またはしきい量またはパーセンテージ以内であれば、デバイスA 205およびデバイスB 210は相互認証されていると見なされ得る。
【００２６】
したがって、デバイスA 205が第1の距離を第2の距離と比較し得る(242)か、および/または、デバイスB 210が第1の距離を第2の距離と比較し得る(244)。いくつかの実施態様では、デバイスA 205および/またはデバイスB 210は、第1の距離と第2の距離との間の個別に計算された差をしきい量またはパーセンテージと比較し得る。たとえば、差が0.5インチのしきい距離未満である場合、または、差が第1の距離または第2の距離のいずれかの5%以内である場合、第1の距離および第2の距離は正確であると見なされ得る(そして、デバイスA 205およびデバイスB 210は相互認証されていると見なされ得る)。デバイスA 205およびデバイスB 210の一方だけが距離の比較を実行し得ることが認識されるべきである。距離を比較する際に、デバイスA 205および/またはデバイスB 210は、任意の入力レイテンシ、出力レイテンシ、および/または、ローカル飛行時間レイテンシを考慮し得ることがさらに認識されるべきである。
【００２７】
(242)および(244)の比較を実行した後、デバイスA 205およびデバイスB 210は、距離が正確である(または不正確である)ことを相互に通知し得る(246)。距離が正確であれば、デバイスA 205およびデバイスB 210は相互認証されていると見なされ得る。いくつかの実施では、デバイスA 205およびデバイスB 210は、第1の距離および第2の距離がしきい量またはパーセンテージ以内にあるか否かを示すメッセージを、通信チャネルを介して互いに交換し得る。デバイスA 205およびデバイスB 210が認証を通知するための他の技術および通信が構想されることが認識されるべきである。
【００２８】
図3は、別の相互認証技術に関連付けられた例示的なタイミング図300である。タイミング図300は、(図1に関して説明されたような電子デバイス105のような)デバイスA 305と、(図1に関して説明されたような電子デバイス110のような)デバイスB 310とを例示する。デバイスA 305およびデバイスB 310のそれぞれは、少なくともマイクロホン、スピーカ、プロセッサ、通信モジュール、およびタイマで構成され得る。
【００２９】
デバイスA 305に関連付けられた線は、デバイスA 305に関連付けられたコマンド、入力、および出力を示し、デバイスB 310に関連付けられた線は、デバイスB 310に関連付けられたコマンド、入力、および出力を示す。さらに、タイミング図300の横方向の次元は、時間の進行を表す。本明細書で議論されるように、デバイスA 305およびデバイスB 310は、WLAN、WPAN、または他のネットワークのような通信チャネルを介して互いへ接続されることが認識されるべきである。デバイスA 305およびデバイスB 310の各々のタイマは、デバイスA 305およびデバイスB 310に関連付けられた線の上に描写されたイベントのそれぞれに関連付けられた個々のタイムスタンプを記録するように構成され得る。それを、デバイスA 305およびデバイスB 310の各々のプロセッサが使用して、様々な計算を実行し得る。
【００３０】
350(A0)において、デバイスA 305のプロセッサは、第1のオーディオ信号を出力するために、デバイスA 305のスピーカへオーディオ再生コマンドを発行し得る。実施形態では、デバイスA 305が、オーディオ再生コマンドを自動的に発行し得るか、または、ユーザまたは他のデバイス(たとえば、デバイスB 310)が、オーディオ再生コマンドを要求するために、デバイスA 305とインターフェースし得る。たとえば、デバイスB 310は、通信チャネルを介して、デバイスA 305へオーディオ再生コマンドを送信し得る。351では、デバイスA 305のスピーカが、第1のオーディオ信号を出力し得る。したがって、期間「ao」は、デバイスA 305の出力レイテンシ、または、プロセッサがオーディオ再生コマンドを発行したときと、スピーカが第1のオーディオ信号を出力したときとの間の時間の長さを表す。
【００３１】
352では、デバイスA 305のマイクロホンは、デバイスA 305のスピーカによって出力された第1のオーディオ信号を検出し得る(すなわち、デバイスA 305はそれ自身の出力オーディオ信号を検出する)。したがって、期間「af」は、デバイスA 305のための第1のオーディオ信号のローカル飛行時間を表し、ローカル飛行時間は、スピーカとマイクロホンとの間の距離に基づくのみならず、音速のような別の一定値に基づく一定値である。353(A1)では、デバイスA 305のプロセッサが、マイクロホンによって検出された第1のオーディオ信号を、そのマイクロホンから受信または検出し得る。したがって、期間「ai」は、デバイスA 305の入力レイテンシ、または、マイクロホンが第1のオーディオ信号を検出することと、プロセッサがマイクロホンから第1のオーディオ信号を受信することとの間の時間の長さを表す。
【００３２】
354では、デバイスB 310のマイクロホンが、デバイスA 305のスピーカによって出力された第1のオーディオ信号を検出し得る。したがって、期間「f」は、デバイスA 305のスピーカが第1のオーディオ信号を出力したときと、デバイスB 310のマイクロホンが第1のオーディオ信号を検出したときとの間の第1のオーディオ信号のオーディオ飛行時間を表す(363)。355(B1)では、デバイスB 310のプロセッサが、デバイスB 310のマイクロホンから、マイクロホンによって検出された第1のオーディオ信号を受信または検出し得る。したがって、期間「bi」は、デバイスB 310の入力レイテンシ、または、マイクロホンが第1のオーディオ信号を検出したときと、プロセッサがマイクロホンから第1のオーディオ信号を受信したときとの間の時間の長さを表す。
【００３３】
356(B2)では、デバイスB 310のプロセッサが、第2のオーディオ信号を出力するために、デバイスB 310のスピーカへオーディオ再生コマンドを発行し得る。実施形態では、デバイスB 310がオーディオ再生コマンドを自動的に発行し得るか、または、ユーザまたは他のデバイス(たとえば、デバイスA 305)が、オーディオ再生コマンドを要求するためにデバイスB 310とインターフェースし得る。たとえば、デバイスA 305が、通信チャネルを介して、デバイスB 310へオーディオ再生コマンドを送信し得る。357では、デバイスB 310のスピーカが、第2のオーディオ信号を出力し得る。したがって、期間「bo」は、デバイスB 310の出力レイテンシ、または、プロセッサがオーディオ再生コマンドを発行したときと、スピーカが第2のオーディオ信号を出力したときとの間の時間の長さを表す。
【００３４】
358では、デバイスB 310のマイクロホンが、デバイスB 310のスピーカによって出力された第2のオーディオ信号を検出し得る(すなわち、デバイスB 310が、自身の出力オーディオ信号を検出する)。したがって、期間「bf」は、デバイスB 310のための第2のオーディオ信号のローカル飛行時間を表し、ローカル飛行時間は、スピーカとマイクロホンとの間の距離に基づくのみならず、音速のような別の一定値に基づく一定値である。359(B3)では、デバイスB 310のプロセッサが、マイクロホンによって検出された第2のオーディオ信号を、そのマイクロホンから受信または検出し得る。したがって、期間「bi」は、デバイスB 310の入力レイテンシ、または、マイクロホンが第2のオーディオ信号を検出したときと、プロセッサがマイクロホンから第2のオーディオ信号を受信したときとの間の時間の長さを表す。
【００３５】
360では、デバイスA 305のマイクロホンが、デバイスB 310のスピーカによって出力された第2のオーディオ信号を検出し得る。したがって、期間「f」(365)は、デバイスB 310のスピーカが第2のオーディオ信号を出力したときと、デバイスA 305のマイクロホンが第2のオーディオ信号を検出したときとの間の第2のオーディオ信号のオーディオ飛行時間を表す。実施形態では、期間「f」(365)は、期間「f」(363)と同じである場合も異なる場合もある。361(A3)では、デバイスA 305のプロセッサが、マイクロホンによって検出された第2のオーディオ信号を、デバイスA 305のマイクロホンから受信または検出し得る。
【００３６】
期間「g」(364)は、デバイスB 310のマイクロホンが第1のオーディオ信号を検出したときと、デバイスB 310のスピーカが第2のオーディオ信号を出力したときとの間の「ターンアラウンド時間」を表す。デバイスB 310のプロセッサは、以下の式(1)を使用して、期間「g」(364)を計算し得る。
(1) g=(B3-B1)-bf
【００３７】
さらに、デバイスB 310は、ターンアラウンド時間(期間「g」(364))またはその一部を、通信チャネルを介してデバイスA 305へ送信し得る。いくつかの実施態様では、デバイスA 305は既にbfを記憶しており、したがって、デバイスB 310は、通信チャネルを介してデバイスA 305へ差(B3-B1)を送信し得る。
【００３８】
デバイスA 305のプロセッサは、以下の式(2)を使用して、期間「f」(363)、期間「g」(364)、および期間「f」(365)の結合を計算し得る。
(2) 2f+g=(A3-A1)+af
【００３９】
式(1)および式(2)の結合は、式(3)という結果になる。
(3) 2f=(A3-A1)-(B3-B1)+af+bf
【００４０】
2fは、デバイスA 305のスピーカが第1のオーディオ信号を出力したときと、デバイスB 310のマイクロホンが第1のオーディオ信号を検出したときとの間、および、デバイスB 310のスピーカが第2のオーディオ信号を出力したときと、デバイスA 305のマイクロホンが第2のオーディオ信号を検出したときとの間の時間の長さを表す「往復オーディオ飛行時間」に相当し得る。いくつかの実施では、「2f」の値の半分は「f」であり、期間「f」(363)および期間「f」(365)のうちの一方または両方に等しくなり得る。したがって、デバイスB 310が通信チャネルを介してデバイスA 305へターンアラウンド時間を通信することによって、デバイスA 305は「2f」を計算し、デバイスA 305およびデバイスB 310の相互認証を容易にし得る。実施形態では、デバイスA 305およびデバイスB 310は、互いに、通知のみならず、任意の計算をも交換し得る。
【００４１】
図4は、様々なオーディオ信号を出力および検出し、第2の電子デバイスと通信し、様々な計算を実行して、第2の電子デバイスに対して相互認証する(図1に関連して説明されたような電子デバイス105、110のいずれかのような)第1の電子デバイスのための方法400のフローチャートである。図4の描写されたフローチャートのステップの順序は、図示されたバージョンとは異なり得、実施に依存して、いくつかのステップが削除され得、および/または、他のいくつかのステップが追加され得る。
【００４２】
方法400は、第1の電子デバイスが通信チャネルを介して第2の電子デバイスへ接続405することで始まる。第1の電子デバイスまたは第2の電子デバイスのいずれかまたは両方が接続を開始し得、通信チャネルは、WLAN、WPAN、または他のタイプの接続であり得る。第1の電子デバイスは、指定された第1の時間に第1のオーディオ信号を出力せよとの第1の要求(またはコマンド)を、通信チャネルを介して、第2の電子デバイスから受信410し得る。第1の電子デバイスはまた、第2の電子デバイスから第1のオーディオ信号を受信し得るか、または、別のソースからの第1のオーディオ信号へアクセスし得るか、または、別のソースからの第1のオーディオ信号を取得し得る。実施形態では、第1の電子デバイスと第2の電子デバイスの両方が、共通のクロックもしくはタイマを維持し得るか、または、共通のクロックもしくはタイマへのアクセスを有し得る。
【００４３】
指定された第1の時間に、電子デバイスは、第2の電子デバイスによって検出可能である第1のオーディオ信号を、スピーカを介して出力415し得る。第1のオーディオ信号を検出した後、第2の電子デバイスは、第1のオーディオ信号の第1の受信時間と、指定された第1の時間と第1の受信時間との時間差と、音速のような一定値と、オプションとして(第2の電子デバイスおよび/または第1の電子デバイスの出力レイテンシおよび入力レイテンシのような)1つまたは複数の固定されたレイテンシとに基づいて、第1の推定距離を計算し得る。
【００４４】
第1の推定距離を計算した後、第2の電子デバイスは、第1の推定距離を、通信チャネルを介して第1の電子デバイスへ送信し得る。したがって、420では、第1の電子デバイスは、第1の推定距離を、通信チャネルを介して第2の電子デバイスから受信し得る。第1の電子デバイスは、指定された第2の時間に第2のオーディオ信号を出力せよとの第2の要求(またはコマンド)を生成し得、第2の要求を第2の電子デバイスへ送信425し得る。第1の電子デバイスはまた、第2のオーディオ信号を第2の電子デバイスへ送信し得るか、または、第2の電子デバイスが、別のソースからの第2のオーディオ信号へアクセスし得るか、または、別のソースからの第2のオーディオ信号を取得し得る。
【００４５】
いずれの場合も、第2の電子デバイスは、指定された第2の時間に第2のオーディオ信号を出力し得、第1の電子デバイスは、第2のオーディオ信号を、マイクロホンを介して受信し得る(430)。第1の電子デバイスは、第1の電子デバイスが第2のオーディオ信号を受信したときに対応する受信時間を記録し得る。さらに、第1の電子デバイスは、第2のオーディオ信号に基づいて、第1の電子デバイスと第2の電子デバイスとの間の第2の推定距離を計算し得る(435)。詳細には、第1の電子デバイスは、指定された第2の時間と記録された受信時間との時間差を計算し得、第1の電子デバイスは、時間差、音速のような一定値、および、オプションとして(第1の電子デバイスおよび/または第2の電子デバイスの出力レイテンシおよび入力レイテンシのような)1つまたは複数の固定されたレイテンシに基づいて、第2の推定距離を計算し得る。
【００４６】
第1の電子デバイスは、第1の推定距離と第2の推定距離とを比較し、これら距離の差がしきいパーセンテージまたは量未満であるか否かを判定440し得る。たとえば、しきいパーセンテージは5%または他の値であり得、しきい量は、1.0インチまたは他の値であり得る。距離の差がしきい値未満でない(「NO」)のであれば、処理は終了し得るか、または、他の機能へ進み得る。距離の差がしきい値未満である(「YES」)のであれば、第1の電子デバイスは、第2の電子デバイスと相互認証されたと見なされ得、第1の電子デバイスおよび第2の電子デバイスは、相互認証を通知445し得る。詳細には、第1の電子デバイスおよび第2の電子デバイスは、通知を交換し得る。いくつかの実施態様では、距離の差がしきい値未満であるか否かを第2の電子デバイスが独立して判定できるように、第1の電子デバイスは、第2の推定距離を、通信チャネルを介して第2の電子デバイスへ送信し得る。
【００４７】
図5は、議論されたように機能が実施され得る(図1に関して議論された電子デバイス105、110または他のデバイスのうちのいずれかのような)例示的な電子デバイス505を例示する。電子デバイス505は、プロセッサ597、または、他の類似のタイプのコントローラモジュールまたはマイクロコントローラのみならず、メモリ598をも含み得る。プロセッサ597は、単一のプロセッサ、または電子デバイス505のアプリケーション587およびユーザインターフェース591のセットを管理するためのアプリケーションプロセッサ、センサ596データを管理するためのセンサプロセッサ、および、オーディオデータを処理するためのオーディオプロセッサ594など、2つ以上の個別のプロセッサを含み得る。
【００４８】
メモリ598は、議論される機能を容易にすることが可能なオペレーティングシステム599を記憶し得る。プロセッサ597は、オペレーティングシステム599と、アプリケーション587のセットとを実行するために、メモリ598とインターフェースし得る。アプリケーションのセット587(これもメモリ598が記憶し得る)は、本明細書で議論したような相互認証技術に関連付けられた様々な計算および処理のために構成された認証アプリケーション588を含み得る。アプリケーションのセット587はまた、たとえば、音楽および娯楽アプリケーション、電話アプリケーション、メッセージングアプリケーション、カレンダアプリケーション、ソーシャルネットワーキングアプリケーション、ユーティリィティ、生産アプリケーション、ゲーム、旅行アプリケーション、通信アプリケーション、買物アプリケーション、ファイナンスアプリケーション、スポーツアプリケーション、写真アプリケーション、地図アプリケーション、天気アプリケーション、オンライン市場へ接続するためのアプリケーション、および/または、その他のアプリケーションのような1つまたは複数の他のアプリケーション589を含み得る。
【００４９】
プロセッサ597と、アプリケーションのセット587とは、相互認証に関連付けられた計算を実行するためにクロック586とインターフェースし得る。詳細には、クロック586は、タイマを維持し得、プロセッサ597は、タイマから、対応するタイムスタンプを取得し得、認証アプリケーション588は、タイムスタンプから、必要な記録および計算を行い得る。
【００５０】
メモリ598はさらに、相互認証機能に関連付けられた様々なパラメータおよびデータを記憶するように構成されたデータ記憶装置501を含み得る。実施形態に従って、認証アプリケーション588は、様々な計算のための適切なパラメータおよびデータを取得するために、データ記憶装置501とインターフェースし得る。一般に、メモリ598は、読取専用メモリ(ROM)、電子プログラマブル読取専用メモリ(EPROM)、ランダムアクセスメモリ(RAM)、消去可能電子プログラマブル読取専用メモリ(EEPROM)、および/または、他のハードドライブ、フラッシュメモリ、MicroSDカードおよびその他のような揮発性および/または不揮発性、固定および/またはリムーバブルメモリのうちの1つまたは複数の形態を含み得る。
【００５１】
電子デバイス505はさらに、1つまたは複数のワイヤまたはワイヤレスネットワーク515を介してデータを通信するために、1つまたは複数の外部ポート590とインターフェースするように構成された通信モジュール595を含み得る。たとえば、通信モジュール595は、電子デバイス505を別の電子デバイスへ接続するためのローカルエリアネットワークまたはパーソナルエリアネットワークを確立するために、外部ポート590を導入し得る。いくつかの実施形態に従って、通信モジュール595は、IEEE規格、3GPP規格、または他の規格に従って機能し、1つまたは複数の外部ポート590を介してデータを受信および送信するように構成された1つまたは複数のトランシーバを含み得る。さらに詳しくは、通信モジュール595は、電子デバイス505を、広域ネットワーク、ローカルエリアネットワーク、および/または、パーソナルエリアネットワークへ接続するように構成された1つまたは複数のWWAN、WLAN、および/またはWPANトランシーバを含み得る。
【００５２】
電子デバイス505はさらに、たとえば、1つまたは複数の加速度計、ジャイロスコープ、イメージングセンサ、近接センサ、位置モジュール、光センサ、赤外線センサ、タッチセンサ、NFC構成要素、および/または、他のセンサのような1つまたは複数のセンサ596を含み得る。電子デバイス505はさらに、ユーザへ情報を提示する、および/または、ユーザから入力を受信するように構成されたユーザインターフェース591を含み得る。図5に例示されるように、ユーザインターフェース591は、ディスプレイスクリーン593およびI/O構成要素592(たとえば、容量性または抵抗性のタッチセンサ式入力パネル、キー、ボタン、光、LED、カーソル制御デバイス、触覚式デバイス、およびその他)を含む。実施形態では、ディスプレイスクリーン593は、ディスプレイの単一の技術または組合せ技術を使用したタッチスクリーンディスプレイであり、ユーザによって見ることができるディスプレイ領域上に重ね合わされた薄い透明のタッチセンサ構成要素を含み得る。たとえば、そのようなディスプレイは、容量性ディスプレイ、抵抗性ディスプレイ、表面弾性波(SAW)ディスプレイ、光学イメージングディスプレイ等を含み得る。ユーザインターフェース591はさらに、オーディオデータを出力するための1つまたは複数のスピーカ509、および、オーディオを検出または受信するための1つまたは複数のマイクロホン507のようなハードウェア構成要素を含むオーディオモジュール594を含み得る。
【００５３】
一般に、実施形態に従うコンピュータプログラム製品は、コンピュータ読取可能なプログラムコードがその中に具現化されたコンピュータ使用可能記憶媒体(たとえば、標準的なランダムアクセスメモリ(RAM)、光ディスク、ユニバーサルシリアルバス(USB)ドライブ等)を含み、コンピュータ読取可能なプログラムコードは、本明細書で説明されたような機能を容易にするために(たとえば、オペレーティングシステム599と接続して動作する)プロセッサ597によって実行されるように適応される。この点に関して、プログラムコードは、任意の所望される言語で実施され得、マシンコード、アセンブリコード、バイトコード、解釈可能なソースコード等(たとえば、C、C++、Java(登録商標)、Actionscript、Objective-C、Javascript、CSS、XML、および/またはその他)として実施され得る。
【００５４】
したがって、これらシステムおよび方法は、向上された相互認証技術を提供することが前述した開示から明らかであろう。詳細には、互いに認証するために電子デバイスが使用するデータを交換するための、電子デバイスのための様々な通信チャネルである実施形態。したがって、実施態様は、セキュアなデータ送信および他の機能を有利に有効にする。
【００５５】
この開示は、その技術の真の、意図された、正しい範囲および精神を限定するのではなく、その技術に従う様々な実施形態をどのように製作し使用するのかを説明することが意図されている。前述の説明は、網羅的であることも、または、開示された正確な形態を限定することも意図されていない。上記教示を考慮して、修正または変形が可能である。実施形態は、説明された技術の原理およびその現実的な応用の最良の例示を提供するために、および、当業者が、本技術を、様々な実施形態において、および、様々な実施形態とともに、考慮された特定の用途へ適合されるものとして利用することを有効にするために、選択され説明された。そのようなすべての修正および変形は、これらが公平に、合法的に、および正当に権利を与えられる範囲に従って解釈される場合、特許を求める本願の係属中に補正され得るような添付された特許請求の範囲、およびそのすべての均等物によって決定されるような実施形態の範囲内である。
【符号の説明】
【００５６】
100  環境
102  距離
102  視覚構成要素
103  視覚構成要素
105  電子デバイス
106  穴
107  マイクロホン
108  格子窓
109  スピーカ
110  電子デバイス
111  穴
112  マイクロホン
113  格子窓
114  スピーカ
115  ネットワーク
200  信号図
205  デバイスA
210  デバイスB
300  タイミング図
305  デバイスA
310  デバイスB
363  期間
364  期間
365  期間
501  データ記憶装置
505  電子デバイス
507  マイクロホン
509  スピーカ
515  ネットワーク
586  クロック
587  アプリケーションのセット
588  認証アプリケーション
589  他のアプリケーション
590  外部ポート
591  ユーザインターフェース
592  I/O構成要素
593  ディスプレイスクリーン
594  オーディオモジュール
595  通信モジュール
596  センサのセット
597  プロセッサ
598  メモリ
599  オペレーティングシステム
【要約】
電子デバイスのペアを相互認証するための実施形態が提供される。いくつかの態様に従って、電子デバイスは、帯域外通信チャネルを介して互いへ接続し得る。電子デバイスはそれぞれ、オーディオ信号を出力し、他の電子デバイスによって出力されたオーディオ信号を検出し得る。オーディオ出力および検出イベントに関連付けられたタイムスタンプに基づいて、電子デバイスのそれぞれは、関連する時間および距離パラメータを計算し、計算されたパラメータを、帯域外通信チャネルを介して他の電子デバイスへ送信し得る。電子デバイスは、相互認証を判定するために、計算されたパラメータを比較し得る。【図１】
0006321303.tif 000002
【図２】
0006321303.tif 000003
【図３】
0006321303.tif 000004
【図４】
0006321303.tif 000005
【図５】
0006321303.tif 000006