(57)【特許請求の範囲】
【請求項１】
ワイヤレスアクセスポイントから、前記ワイヤレスアクセスポイントと複数の他のワイヤレスアクセスポイントとの間のそれぞれの距離を表す位置データを位置プロバイダシステムによって受信することと、
複数のネットワークデバイスから、前記ワイヤレスアクセスポイントと前記複数のネットワークデバイスとの間のそれぞれの距離を表わす他の位置データを前記位置プロバイダシステムによって受信することと、
前記ワイヤレスアクセスポイントから受信される前記位置データと、前記複数のネットワークデバイスから受信される前記他の位置データとに基づき、前記位置データが、前記他の位置データとは異なるしきい値量より大きいかどうかを前記位置プロバイダシステムによって決定することと、
前記位置データが異なる前記しきい値量より大きいと決定することに応答して、前記複数のネットワークデバイスからの前記他の位置データに基づいて、前記ワイヤレスアクセスポイントの位置を前記位置プロバイダシステムによって決定することと、
前記位置データが異なる前記しきい値量以下であると決定することに応答して、前記ワイヤレスアクセスポイントからの前記位置データに基づいて前記ワイヤレスアクセスポイントの前記位置を前記位置プロバイダシステムによって決定することと、
署名された位置データを形成するために、クレデンシャルにより前記ワイヤレスアクセスポイントの前記位置に前記位置プロバイダシステムによって署名することと、
前記署名された位置データを前記ワイヤレスアクセスポイントに前記位置プロバイダシステムによって通信することとを含む、方法。
【請求項２】
前記ワイヤレスアクセスポイントの前記位置を決定することに応答して、前記ワイヤレスアクセスポイントの前記位置と、トークンと、ソース識別子とを含むタプルを前記位置プロバイダシステムによって生成することをさらに含み、
前記ワイヤレスアクセスポイントの前記位置に署名することは、前記署名された位置データを形成するために、前記位置プロバイダシステムの公開鍵により前記タプルに署名することを含む、請求項１に記載の方法。
【請求項３】
前記ワイヤレスアクセスポイントの前記位置が最後に決定されてからしきい値量の時間が経過したかどうかを前記位置プロバイダシステムによって決定することをさらに含み、さらに、
前記ワイヤレスアクセスポイントの前記位置が最後に決定されてから少なくとも前記しきい値量の時間が経過したと決定することに応答して、
前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントとの間のそれぞれのアップデートされた距離を表すアップデートされた位置データを前記ワイヤレスアクセスポイントから前記位置プロバイダシステムによって受信することと、
前記ワイヤレスアクセスポイントと前記複数のネットワークデバイスとの間のそれぞれのアップデートされた距離を表わすアップデートされた他の位置データを前記複数のネットワークデバイスから前記位置プロバイダシステムによって受信することと、
前記ワイヤレスアクセスポイントから受信される前記アップデートされた位置データと、前記複数のネットワークデバイスから受信される前記アップデートされた他の位置データとに基づき、前記アップデートされた位置データが、前記アップデートされた位置データとは異なるしきい値量より大きいかどうかを前記位置プロバイダシステムによって決定することとを含み、さらに、
前記アップデートされた位置データが異なる前記しきい値量より大きいと決定することに応答して、
前記ワイヤレスアクセスポイントが悪意のあるワイヤレスアクセスポイントであると前記位置プロバイダシステムによって決定することと、
前記ワイヤレスアクセスポイントの前記位置をアップデートすることを差し控えることとを含み、さらに、
前記アップデートされた位置データが異なる前記しきい値量以下であると決定することに応答して、
前記ワイヤレスアクセスポイントについてのアップデートされた位置を前記位置プロバイダシステムによって決定することと、
署名されたアップデートされた位置データを形成するために、前記クレデンシャルにより前記ワイヤレスアクセスポイントの前記アップデートされた位置を前記位置プロバイダシステムによって署名することとを含み、前記署名されたアップデートされた位置データは前記位置データが最後にアップデートされた時間を含んでおり、さらに、
前記署名されたアップデートされた位置データを前記ワイヤレスアクセスポイントに、前記位置プロバイダシステムによって通信することを含む、請求項１または２に記載の方法。
【請求項４】
前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントとの間のそれぞれの距離を表す前記位置データは、前記複数の他のワイヤレスアクセスポイントの各々についてのそれぞれの受信信号強度インジケーション情報、または、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間のラウンドトリップトラベルタイム推定のうちの１つ以上を含む、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
前記複数の他のワイヤレスアクセスポイントの各々についての前記受信信号強度インジケーション情報、または、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間の前記それぞれのラウンドトリップトラベルタイム推定のうちの１つ以上に基づいて、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間の距離を前記位置プロバイダシステムによって決定することをさらに含み、
前記位置データが前記他の位置データと異なる前記しきい値量より大きいか否かを決定することは、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間の前記距離に基づく、請求項４に記載の方法。
【請求項６】
前記ワイヤレスアクセスポイントの前記位置は、前記ワイヤレスアクセスポイントの緯度および経度を含む、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記位置データはさらに、前記ワイヤレスアクセスポイントのベーシックサービスセットアイデンティフィケーション（basic service set identification）を含んでおり、
前記署名された位置データは、前記ワイヤレスアクセスポイントの前記ベーシックサービスセットアイデンティフィケーションを含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
ワイヤレスアクセスポイントから、前記ワイヤレスアクセスポイントと複数の他のワイヤレスアクセスポイントとの間のそれぞれの距離を表す位置データを受信し、かつ、複数のネットワークデバイスから、前記ワイヤレスアクセスポイントと前記複数のネットワークデバイスとのそれぞれの距離を表わす他の位置データを受信するネットワークインターフェイスと、
１つ以上のモジュールを格納するメモリと、
１つ以上のプロセッサとを含み、前記１つ以上のプロセッサは前記１つ以上のモジュールを実行して、
前記ワイヤレスアクセスポイントから受信される前記位置データと、前記複数のネットワークデバイスから受信される他の位置データとに基づき、前記位置データが、前記他の位置データとは異なるしきい値量より大きいかどうか決定することと、
前記位置データが異なる前記しきい値量より大きいと決定することに応答して、前記複数のネットワークデバイスからの前記他の位置データに基づいて、前記ワイヤレスアクセスポイントの位置を決定することと、
前記位置データが異なる前記しきい値量以下であると決定することに応答して、前記ワイヤレスアクセスポイントからの前記位置データに基づいて前記ワイヤレスアクセスポイントの前記位置を決定することと、
署名された位置データを形成するためにクレデンシャルにより前記ワイヤレスアクセスポイントの前記位置に署名することと、
前記署名された位置データを前記ワイヤレスアクセスポイントに前記ネットワークインターフェイスを介して通信することとを行う、位置プロバイダシステム。
【請求項９】
前記１つ以上のプロセッサはさらに、前記１つ以上のモジュールを実行して、
前記ワイヤレスアクセスポイントの前記位置を決定することに応答して、前記ワイヤレスアクセスポイントの前記位置と、トークンと、ソース識別子とを含むタプルを生成することと、
前記署名された位置データを形成するために前記位置プロバイダシステムの公開鍵により前記タプルに署名することとを行う、請求項８に記載の位置プロバイダシステム。
【請求項１０】
前記１つ以上のプロセッサはさらに、前記１つ以上のモジュールを実行して、
前記ワイヤレスアクセスポイントの前記位置が最後に決定されてからしきい値量の時間が経過したかどうかを決定することと、
前記ワイヤレスアクセスポイントの前記位置が最後に決定されてから少なくとも前記しきい値量の時間が経過したと決定することに応答して、
前記ワイヤレスアクセスポイントから前記ネットワークインターフェイスを介して、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントとの間のそれぞれのアップデートされた距離を表すデータを表わすアップデートされた位置データを受信することと、
前記複数の他のワイヤレスアクセスポイントから前記ネットワークインターフェイスを介して、前記ワイヤレスアクセスポイントと前記複数のネットワークデバイスとの間のそれぞれのアップデートされた位置データを受信することと、
前記ワイヤレスアクセスポイントから受信される前記アップデートされた位置データと、前記複数のネットワークデバイスから受信される前記アップデートされた他の位置データとに基づき、前記アップデートされた位置データが、前記アップデートされた位置データとは異なる前記しきい値量より大きいかどうかを決定することとを行い、さらに、
前記アップデートされた位置データが異なる前記しきい値量より大きいと決定することに応答して、
前記ワイヤレスアクセスポイントが悪意のあるワイヤレスアクセスポイントであると決定することと、
前記ワイヤレスアクセスポイントの前記位置をアップデートすることを差し控えることとを行い、さらに、
前記アップデートされた位置が異なる前記しきい値量以下であると決定することに応答して、
前記ワイヤレスアクセスポイントについてアップデートされた位置を決定することと、
署名されたアップデートされた位置データを形成するために、前記クレデンシャルにより前記ワイヤレスアクセスポイントの前記アップデートされた位置を署名することとを行い、前記署名されたアップデートされた位置データは前記位置データが最後にアップデートされた時間を含んでおり、さらに、
前記署名されたアップデートされた位置データを前記ワイヤレスアクセスポイントに、前記ネットワークインターフェイスを介して通信することを行う、請求項８または９に記載の位置プロバイダシステム。
【請求項１１】
前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントとの間のそれぞれの距離を表す前記位置データは、前記他のワイヤレスアクセスポイントの各々についての受信信号強度インジケーション情報、または、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間のそれぞれのラウンドトリップトラベルタイム推定のうちの１つ以上を含む、請求項８〜１０のいずれか１項に記載の位置プロバイダシステム。
【請求項１２】
前記１つ以上のプロセッサはさらに、前記１つ以上のモジュールを実行して、
前記複数の他のワイヤレスアクセスポイントの各々についての前記受信信号強度インジケーション情報、または、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間の前記ラウンドトリップトラベルタイム推定のうちの１つ以上に基づき、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間のそれぞれの距離を決定することを行ない、
前記位置データが異なる前記しきい値量より大きいか否かを決定することは、前記ワイヤレスアクセスポイントと前記複数の他のワイヤレスアクセスポイントの各々との間の距離に基づく、請求項１１に記載の位置プロバイダシステム。
【請求項１３】
前記ワイヤレスアクセスポイントの前記位置は前記ワイヤレスアクセスポイントの緯度および経度を含む、請求項８〜１２のいずれか１項に記載の位置プロバイダシステム。
【請求項１４】
前記位置データはさらに、前記ワイヤレスアクセスポイントのベーシックサービスセットアイデンティフィケーション（basic service set identification）を含んでおり、
前記署名された位置データは、前記ワイヤレスアクセスポイントの前記ベーシックサービスセットアイデンティフィケーションを含む、請求項８〜１３のいずれか１項に記載の位置プロバイダシステム。
【請求項１５】
請求項１〜７のいずれか１項に記載の方法をコンピュータに実行させる、プログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
背景
モバイルコンピューティングデバイスユーザは、グローバルポジショニングシステム（ＧＰＳ： global positioning system）の使用を介して自身の位置を決定することに慣れてきている。ＧＰＳは、スマートフォンユーザに位置について特定的な情報を提供するために、多くのスマートフォンアプリケーションによって使用されている。しかしながら、ＧＰＳは戸外で最良に機能する。ＧＰＳレシーバは、たとえば都市圏のビルディングによってＧＰＳ衛星信号がブロックされる場合、または、ＧＰＳレシーバが屋内にある場合には、位置を決定することがあまりできない。ＧＰＳレシーバはさらに、高電力要件を有する傾向があり、同等なＷｉ−Ｆｉ（登録商標）レシーバよりも位置情報の信頼性が低い傾向がある。
【０００２】
ワイヤレスアクセスポイントは、ＧＰＳ位置サービスが悪化した状況またはＧＰＳレシーバによって消費される電力が問題である状況において、モバイルコンピューティングデバイスの位置を決定するために使用され得る。ワイヤレスアクセスポイントに接続されるデバイスは、たとえば、周囲のＷｉ−Ｆｉ環境をスキャンし、かつ、検出されたワイヤレスアクセスポイントに対する当該デバイスの位置を決定することにより、周りのワイヤレスアクセスポイントの位置に対する自身の位置を計算し得る。いくつかのアプローチでは、デバイスは、当該スキャンによって明らかになるワイヤレスアクセスポイントの位置およびデバイスからのワイヤレスアクセスポイントの距離に基づいて、自身の位置を決定する。他のアプローチでは、周囲のＷｉ−Ｆｉ環境のスキャンによって、アクセスポイントおよびそれらの信号強度のリストが産出される。デバイスは、クラウドにおけるサービスにリストを送信し得、サービスはデバイスの位置を決定するために履歴認識（historical knowledge）を使用し得る。当該サービスは、デバイスの決定された位置を含む応答をデバイスに送信し得る。
【発明の概要】
【０００３】
概要
いくつかの例において、方法は、位置データに基づいて位置プロバイダによってワイヤレスアクセスポイントの位置を決定することを含み、位置データは複数のネットワークデバイスの各々からの位置データを含んでおり、各ネットワークデバイスについての位置データは、ネットワークデバイスの位置と、ワイヤレスアクセスポイントと各ネットワークデバイスとの間の距離を表すデータと含んでおり、さらに、ワイヤレスアクセスポイントの位置に基づいて、ワイヤレスアクセスポイントについての位置情報を位置プロバイダによって生成することと、署名された位置情報を形成するためにクレデンシャルにより位置情報に署名することと、署名された位置情報をワイヤレスアクセスポイントに通信することとを含む。
【０００４】
いくつかの例において、位置プロバイダは、ネットワーク接続と、メモリと、１つ以上のプロセッサとを含み、各プロセッサはメモリに接続されており、プロセッサは、メモリに格納される位置データに基づいてワイヤレスアクセスポイントの位置を決定することを行うように構成されており、位置データは複数のネットワークデバイスの各々からの位置データを含んでおり、各ネットワークデバイスについての位置データは、ネットワークデバイスの位置と、ワイヤレスアクセスポイントとネットワークデバイスとの間の距離を表すデータと含んでおり、プロセッサはさらに、ワイヤレスアクセスポイントについて決定された位置に基づいて、ワイヤレスアクセスポイントについての位置情報を生成することと、署名された位置情報を形成するためにクレデンシャルによりワイヤレスアクセスポイントについての位置情報に署名することと、署名された位置情報をメモリに格納することと、署名された位置情報をワイヤレスアクセスポイントに通信することと行うように構成される。
【０００５】
いくつかの例において、システムは、位置プロバイダと、位置プロバイダに接続される複数のワイヤレスアクセスポイントとを含み、複数のアクセスポイントは複数の第１のワイヤレスアクセスポイントを含んでおり、さらに、複数のワイヤレスアクセスポイントのうちの１つ以上のワイヤレスアクセスポイントに接続するように構成されるワイヤレスインターフェイスを含むモバイルコンピューティングデバイスを含み、位置プロバイダは、各ワイヤレスアクセスポイントについての位置を決定し、当該対応するワイヤレスアクセスポイントに、位置情報として位置を通信し、第１のワイヤレスアクセスポイントの各々についての位置情報は、位置プロバイダに関連付けられるデジタル署名で署名されており、複数のワイヤレスアクセスポイントのうちの各ワイヤレスアクセスポイントは、そのワイヤレスアクセスポイントについての位置情報を無線送信し、モバイルコンピューティングデバイスは、第１のワイヤレスアクセスポイントによって送信される署名された位置情報を受信し、各第１のワイヤレスアクセスポイントについての署名された位置情報が位置プロバイダによって署名されたことを照合し、位置プロバイダによって署名されたと照合された位置情報を有する第１のワイヤレスアクセスポイントは、照合された第１のワイヤレスアクセスポイントであり、モバイルコンピューティングデバイスは、照合された第１のワイヤレスアクセスポイントの各々への距離を計算し、モバイルコンピューティングデバイスは、照合された第１のワイヤレスアクセスポイントの各々への距離と、照合された第１のワイヤレスアクセスポイントの各々から受信される位置情報とに基づき、モバイルコンピューティングデバイスの位置を決定する。
【０００６】
いくつかの例において、方法は、複数のワイヤレスアクセスポイントの各々からそれぞれの署名された位置情報をワイヤレスデバイスによって受信することを含み、それぞれの署名された位置情報は、対応するワイヤレスアクセスポイントについての位置情報を含んでおり、さらに、それぞれの署名された位置情報に基づいて、それぞれの署名された位置情報のうちのいずれかが損なわれているかどうかをワイヤレスデバイスによって決定することと、損なわれていない署名された位置情報と、損なわれていない署名された位置データを有する各ワイヤレスアクセスポイントとワイヤレスデバイスとの間の距離を表すデータとに基づいて、ワイヤレスデバイスによってワイヤレスデバイスの位置を決定することとを含む。
【０００７】
いくつかの例において、デバイスは、メモリと、ワイヤレスインターフェイスと、メモリおよびワイヤレスインターフェイスに接続されるプロセッサとを含み、プロセッサは、複数のワイヤレスアクセスポイントの各々から受信される署名された位置情報と、モバイルコンピューティングデバイスと各ワイヤレスアクセスポイントとの間の距離を表すデータとをメモリに格納することを行うように構成されており、署名された位置情報は各ワイヤレスアクセスポイントについての位置を識別しており、プロセッサはさらに、いずれかのワイヤレスアクセスポイントの署名された位置情報が損なわれているかどうか決定するために、署名された位置情報をレビューすることと、損なわれていない署名された位置情報と、損なわれていない署名された位置データを有する各ワイヤレスアクセスポイントとモバイルコンピューティングデバイスとの間の距離を表すデータとに基づいて、モバイルコンピューティングデバイスの位置を決定することと、モバイルコンピューティングデバイスの位置をメモリに格納することとを行うように構成される。
【０００８】
１つ以上の例の詳細を添付の図面および以下の説明で述べる。本開示の他の特徴、目的および利点は、記載および図面ならびに添付の請求の範囲から明白になるであろう。
【図面の簡単な説明】
【０００９】
【図１】本開示の１つ以上の局面に従った、ワイヤレスアクセスポイントとのインタラクションを通じてモバイルコンピューティングデバイスが自身の位置を決定する例示的なシステムを示す概念図である。
【図２】本開示の１つ以上の局面に従った、例示的な位置プロバイダを示すブロック図である。
【図３】本開示の１つ以上の局面に従った、例示的なモバイルコンピューティングデバイスを示すブロック図である。
【図４】アクセスポイント位置情報を介してデバイス位置を決定するための例示的なプロセスを示すフローチャートである。
【図５Ａ】本開示の１つ以上の局面に従った例示的な（緯度，経度，トークン）タプルを示す図である。
【図５Ｂ】本開示の１つ以上の局面に従った、例示的な署名された（緯度，経度，トークン，ベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ））タプルを示す図である。
【図６】アクセスポイント位置情報を介してデバイス位置を決定するための例示的なプロセスを示すフローチャートである。
【図７】本開示の１つ以上の局面に従った、他のネットワークデバイスとのインタラクションを通じてアクセスポイントが自身の位置を決定する例示的なシステムを示す概念図である。
【図８】本開示の１つ以上の局面に従った、アクセスポイントの位置を決定するための例示的なプロセスを示すフローチャートである。
【図９】本開示の１つ以上の局面に従った、アクセスポイントの位置を決定するための別の例示的なプロセスを示すフローチャートである。
【図１０】本開示の１つ以上の局面に従った、位置プロバイダがアクセスポイントの位置を決定する例示的なプロセスを示すフローチャートである。
【図１１】本開示の１つ以上の局面に従った、モバイルコンピューティングデバイスが、アクセスポイント位置情報において送信される国識別子に基づいて、スキャンするべきＷｉ−Ｆｉチャネルを選択する動作の例示的なモードを示すフローチャートである。
【図１２Ａ】本開示の１つ以上の局面に従った、国識別子ベースの例示的な（緯度，経度，トークン）タプルを示す図である。
【図１２Ｂ】本開示の１つ以上の局面に従った、国識別子ベースの例示的な署名された（緯度，経度，トークン，ＢＳＳＩＤ）タプルを示す図である。
【発明を実施するための形態】
【００１０】
詳細な説明
一般に、この開示は、ワイヤレスアクセスポイントを有するワイヤレスローカルエリアネットワーク（ＷＬＡＮ： wireless local area network）においてモバイルコンピューティングデバイスの位置を決定するための技術に関する。モバイルコンピューティングデバイスは、ＷＬＡＮ環境をスキャンし、１つ以上のアクセスポイントから信号を受信する。各アクセスポイント信号は、当該信号を送信するアクセスポイントの位置を詳述する位置情報を含む。デバイスは、周囲のアクセスポイントの各々への距離と、デバイスがアクセスポイントから受信する位置情報とに基づいて、アクセスポイントに対する自身の位置を決定する。いくつかのアプローチにおいて、周囲のアクセスポイントの各々への距離は、受信信号強度インジケーション（ＲＳＳＩ： received signal strength indication）に基づいて決定される。いくつかのアプローチでは、周囲のアクセスポイントの各々への距離は、ラウンドトリップトラベルタイム（ＲＴＴ： round trip travel time）推定に基づき決定される。
【００１１】
位置を決定するためのワイヤレスアクセスポイントの使用に関する問題は、アクセスポイントによって発行される位置情報が、スプーフィング（spoofed）されているものであるか、または、損なわれている（compromised）ものであり得、これによりデバイスの位置を決定するデバイスの能力が損なわれるということである。たとえば、アクセスポイントの位置には不正確な位置情報がロードされている場合があり、または、アクセスポイントは最終位置アップデート以降に移動されている場合がある。いずれにしても、モバイルコンピューティングデバイスは、これらのシナリオにおいて、その位置を正確に計算することができない可能性がある。さらに、損なわれているアクセスポイントは、誤ったベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ： basic service set identification）のような不正確な識別子を送信することにより別のアクセスポイントをスプーフィングし得るか、または、以前に発行された情報を取得し、それが属していない他のところに複製し得る。
【００１２】
これに対応するために、いくつかのアプローチでは、位置情報が損なわれたものであり得ることを検出し、かつ、スプーフィングを防止するように、位置情報は公開鍵証明書のようなデジタル署名（digital signature）で保護されている。いくつかのアプローチでは、位置情報は、位置情報を送信したはずのワイヤレスアクセスポイントの識別子（たとえばワイヤレスアクセスポイントのＢＳＳＩＤ）または古い位置情報を検出するためのアップデート日時といったセキュリティデータで保護され、これにより、位置情報が損なわれたものであり得ることを検出し、かつ、スプーフィングを防止する。
【００１３】
１つの例示的なアプローチにおいて、ワイヤレスアクセスポイントは、ワイヤレスローカルエリアネットワークをスキャンし、アクセスポイントと、周囲のアクセスポイントの各々への距離の推定を詳述する距離測定とのリストを位置プロバイダに提出することによって、それらの位置を決定する。クラウドにおいて動作する位置サービスは、アクセスポイントと、それらの関連付けられる距離測定とのリストを受信し、アクセスポイントの位置を決定し、信頼された位置情報として署名された位置情報をアクセスポイントに戻す。１つの例示的なアプローチにおいて、署名された位置情報は、位置情報の古さ（age）を伝達するために使用される最終アップデートインジケータを含む。
【００１４】
図１は、本開示の１つ以上の局面に従った、モバイルコンピューティングデバイスが、ワイヤレスアクセスポイントとのインタラクションを通じて自身の位置を決定する例示的なシステムを示す概念図である。図１の例示的なアプローチにおいて、システム１０は、ワイヤレスネットワークリンク１６を介して３つ以上のワイヤレスアクセスポイント１４に接続されたモバイルコンピューティングデバイス１２を含んでいる。１つ以上のアクセスポイント１４はさらに、クラウドベース位置サービス１８のような位置プロバイダへリンク２２を介して接続される。いくつかの例示的なアプローチでは、リンク２２は、クラウドベース位置サービス１８のような位置プロバイダへの有線ネットワーク接続を含む。いくつかの例示的なアプローチでは、リンク２２は、クラウドベース位置サービス１８へのワイヤレスネットワーク接続を含む。モバイルコンピューティングデバイス１２はさらに、クラウドベース位置サービス１８のような位置プロバイダへリンク２０を通じて接続され得る。１つの例示的なアプローチでは、リンク２０は、たとえばセルラーネットワークを介するクラウドベース位置サービス１８へのワイヤレスネットワーク接続を含む。
【００１５】
いくつかの例示的なアプローチでは、モバイルコンピューティングデバイス１２は、携帯電話、タブレットコンピュータ、ラップトップコンピュータ、コンピュータウォッチ（computerized watch）、コンピュータアイウェア（computerized eyewear）、コンピュータグローブ（computerized glove）または任意の他のタイプのポータブルコンピューティングデバイスのような個々のモバイルデバイスを表わす。モバイルコンピューティングデバイス１２の付加的な例は、携帯情報端末（ＰＤＡ）、ポータブルゲームシステム、メディアプレイヤー、ｅブックリーダ、モバイルテレビジョンプラットフォーム、自動車ナビゲーションおよびエンターテイメントシステム、または、ネットワーク１６のようなネットワークを介して情報を受信するように構成される任意の他のタイプのモバイル、ウェアラブルおよび非ウェアラブルコンピューティングデバイスを含む。
【００１６】
動作において、モバイルコンピューティングデバイス１２は、ワイヤレスアクセスポイント１４から受信される位置情報に基づいて位置を決定し得る一方、ワイヤレスアクセスポイント１４は、位置サービス１８から位置情報を受信し得る。１つの例示的なアプローチでは、位置サービス１８は、位置データに基づき、各ワイヤレスアクセスポイント１４の位置を決定し得、当該位置を位置情報としてワイヤレスアクセスポイント１４の各々に送信し得る。１つのそのようなアプローチでは、位置データは、複数のネットワークデバイスの各々からの位置データを含んでおり、各ネットワークデバイスについての位置データは、ネットワークデバイスの位置と、ワイヤレスアクセスポイントと各ネットワークデバイスとの間の距離を表すデータとを含んでいる。
【００１７】
１つの例示的なアプローチでは、位置サービス１８は、各ワイヤレスアクセスポイント１４の位置に基づいて、ワイヤレスアクセスポイント１４についての位置情報を生成し得、署名された位置情報を形成するためにクレデンシャルにより位置情報に署名し得、署名された位置情報をワイヤレスアクセスポイント１４に通信し得る。クレデンシャルは、公開鍵もしくは秘密鍵、信頼された認証局（certification authority）によって発行される公開鍵証明書、電子署名、デジタル署名、または、位置情報を暗号化するか、位置情報のソースを照合するか、もしくは、位置情報のソースを暗号化および照合するための任意の他のメカニズムであり得る。
【００１８】
１つ以上の第１のワイヤレスアクセスポイント１４について、位置情報は、照合されている場合にはそれぞれの位置情報が信頼され得ることを示すセキュリティデータを含み得る。１つのそのような例示的なアプローチでは、複数のワイヤレスアクセスポイント１４のうちの各第１のワイヤレスアクセスポイント１４は、そのワイヤレスアクセスポイント１４についての署名された位置情報をモバイルコンピューティングデバイス１２に送信し得る。そのようなアプローチでは、モバイルコンピューティングデバイス１２は、署名された位置情報のデジタル署名に基づいて各第１のワイヤレスアクセスポイント１４を照合し得、照合された第１のワイヤレスアクセスポイント１４の各々への距離を計算し得、照合された第１のワイヤレスアクセスポイント１４の各々から受信される署名された位置情報と、照合された第１のワイヤレスアクセスポイント１４の各々への距離とに基づき、モバイルコンピューティングデバイス１２の位置を決定し得る。
【００１９】
いくつかの例示的なアプローチでは、複数のワイヤレスアクセスポイント１４はさらに、１つ以上の第２のワイヤレスアクセスポイントを含み得る。位置プロバイダは、各第２のワイヤレスアクセスポイント１４の位置を決定し、署名されていない位置情報として対応する第２のワイヤレスアクセスポイントの各々にその位置を送信し得る。各第２のワイヤレスアクセスポイント１４は、モバイルコンピューティングデバイス１２に、その第２のワイヤレスアクセスポイント１４についての署名されていない位置情報を送信し得る。モバイルコンピューティングデバイス１２は、第２のワイヤレスアクセスポイントの各々への距離を計算し得るとともに、照合された第１のワイヤレスアクセスポイントの各々から受信される署名された位置情報と、第２のワイヤレスアクセスポイントの各々から受信される署名されていない位置情報と、照合された第１のワイヤレスアクセスポイントの各々への距離と、第２のワイヤレスアクセスポイントの各々への距離とに基づきモバイルコンピューティングデバイスの位置を決定し得る。
【００２０】
１つのアプローチでは、ワイヤレスアクセスポイント１４は、自身のビーコン信号において、または、モバイルコンピューティングデバイス１２からの探査（probe）に応答して、自身の位置を発行し得る。モバイルコンピューティングデバイス１２は、モバイルコンピューティングデバイス１２の現在の位置を決定するよう、アクセスポイント１４から受信される位置情報を使用し得る。たとえば、モバイルコンピューティングデバイス１２は、各アクセスポイント１４から受信されるそれぞれの受信信号強度インジケーション（ＲＳＳＩ）推定に基づいて、各アクセスポイント１４への距離を決定し得る。モバイルコンピューティングデバイス１２は、自身の位置を決定するために、それぞれのＲＳＳＩ推定と組み合わせて、近くのアクセスポイント１４によって発行される位置情報を使用し得る。いくつかのそのようなアプローチでは、デバイス１２は、以下に詳述されるように、位置照合のためにクラウドベース位置サービス１８に、その計算された位置を通信し得る。
【００２１】
上で言及されたように、いくつかのアプローチでは、モバイルコンピューティングデバイス１２は、ＲＳＳＩに基づいて、周囲のアクセスポイントの各々への距離を計算し得る。他のアプローチでは、モバイルコンピューティングデバイス１２は、ラウンドトリップトラベルタイム（ＲＴＴ）推定に基づいて、周囲のアクセスポイントの各々への距離を計算し得る。いくつかのアプローチでは、上で言及されたように、位置情報は、位置情報が損なわれた可能性がある時を検出し、スプーフィングを防止するように、公開鍵証明書のようなデジタル署名で保護される。いくつかのアプローチでは、モバイルコンピューティングデバイス１２は、送信を行うアクセスポイント１４のソース識別子が、署名された位置情報に埋め込まれるソース識別子とマッチすることを照合するために、署名された位置情報に埋め込まれるソース識別子を使用し得る。いくつかのそのようなアプローチでは、ソース識別子は、ベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）として含み得、モバイルコンピューティングデバイス１２は、ワイヤレスアクセスポイントから受信される署名された位置情報におけるＢＳＳＩＤが、ワイヤレスアクセスポイントを識別するＢＳＳＩＤとマッチすることを照合し得る。
【００２２】
位置情報を送信可能にするために、いくつかの例示的なアプローチにおけるワイヤレスアクセスポイントは、位置プロバイダを介して自身の位置を決定する。いくつかのアプローチでは、位置プロバイダは、位置サービス１８のようなクラウドベースサービスである。いくつかのそのようなアプローチでは、ワイヤレスアクセスポイント１４は、周囲のワイヤレスアクセスポイント１４への距離を決定するよう、周囲のワイヤレスアクセスポイントと通信し得る。その後、ワイヤレスアクセスポイント１４は、周囲のワイヤレスアクセスポイントと、周囲のワイヤレスアクセスポイント１４への距離（たとえばＲＳＳＩまたはＲＴＴによる測定）とのリストをクラウドベース位置サービス１８に送信し得る。クラウドベース位置サービス１８は、アクセスポイントの位置を決定し得、要求を行ったアクセスポイントへ位置情報の署名されたコピーを送信し得る。その後、ワイヤレスアクセスポイント１４は、位置情報がモバイルコンピューティングデバイス１２の位置を決定するためにモバイルコンピューティングデバイス１２によって使用され得るように、モバイルコンピューティングデバイス１２による要求に応答して、または、そのビーコン信号の部分として、位置情報を送信する。
【００２３】
１つの例示的なアプローチでは、システム１０は、アクセスポイントによって送信される位置情報にセキュリティデータを添付することによってスプーフィングを制限し得る。セキュリティデータに基づいたモバイルコンピューティングデバイス１２によるセキュリティチェックがフェイルした場合、モバイルコンピューティングデバイス１２は、アクセスポイント位置が損なわれていると仮定し得る。別の例示的なアプローチでは、位置情報は、当該情報が信頼できるかどうか決定するようモバイルコンピューティングデバイス１２によって使用されるデジタル署名を含んでいる。
【００２４】
各ワイヤレスアクセスポイント１４は、そのワイヤレスアクセスポイントについての位置情報を受信し得、ビーコン信号送信として当該位置情報をモバイルコンピューティングデバイス１２に送信し得る。１つの例示的なアプローチでは、各モバイルコンピューティングデバイス１２は、ワイヤレスアクセスポイント１４によって送信される位置情報を受信し得、セキュリティデータを使用して、信頼された位置情報であると識別される位置情報を照合し、複数のワイヤレスアクセスポイントの各々から受信される信頼された位置情報に基づいてそのモバイルコンピューティングデバイスの位置を決定し得る。１つのそのような例示的なアプローチにおいて、モバイルコンピューティングデバイスの位置は、事前認識または他のソースから得られたモバイルデバイス位置についての認識を考慮する。
【００２５】
１つの例示的なアプローチでは、各モバイルコンピューティングデバイス１２は、ワイヤレスアクセスポイント１４によって送信される位置情報を受信し得、セキュリティデータを使用して、信頼された位置情報として識別される位置情報を照合し得、信頼された位置情報に基づいて複数のワイヤレスアクセスポイントの各々への距離を計算し得、複数のワイヤレスアクセスポイントの各々から受信される信頼された位置情報と、複数のワイヤレスアクセスポイントの各々への距離とに基づいて、そのモバイルコンピューティングデバイスの位置を決定し得る。
【００２６】
図２は、本開示の１つ以上の局面に従った、例示的な位置プロバイダを示すブロック図である。図２に示される例において、位置プロバイダサーバ２００は位置サービス１８をホストする。１つの例示的なアプローチでは、位置プロバイダサーバ２００は、通信チャネル２０４を介して１つ以上の通信ユニット２０２と１つ以上のストレージデバイス２０６とに接続される１つ以上のプロセッサ２０１を含む。
【００２７】
位置プロバイダサーバ２００は、図１の位置サービス１８の１つの例示的な実現例を示しており、図１のシステム１０の文脈において以下に説明される。図２は、位置プロバイダの１つの特定の例のみを示しており、位置サービス１８のような位置プロバイダの他の例は、他の場合において使用されてもよく、例示的な位置プロバイダサーバ２００に含まれるコンポーネントのサブセットを含んでもよく、または、図２に示されない付加的なコンポーネントを含んでもよい。
【００２８】
位置プロバイダサーバ２００は、ワイヤレスアクセスポイント１４の位置を決定し、かつ、位置プロバイダによって計算される他の位置に対してモバイルコンピューティングデバイス１２の位置を照合するためのメカニズムをワイヤレスアクセスポイント１４に与え得る。図２の例において示されるように、位置プロバイダサーバ２００のストレージデバイス２０６は、位置決定モジュール２１０およびセキュリティモジュール２１２を含む。
【００２９】
位置プロバイダサーバ２００のストレージデバイス２０６は、デバイス位置データストア２２０Ａと、スキャン結果データストア２２０Ｂと、位置情報データストア２２０Ｃ（まとめて「データストア２２０」）とをさらに含む。通信チャンネル２０４は、コンポーネント間通信のためにコンポーネント２００、２０２および２０６の各々を（物理的に、通信可能に、および／または、動作可能に）相互接続し得る。いくつかの例では、通信チャンネル２０４は、システムバス、ネットワーク接続、プロセス間通信データ構造、または、データを通信するための任意の他の技術を含み得る。
【００３０】
位置プロバイダサーバ２００の１つ以上の通信ユニット２０２は、図１のリンク１６、２０および２２のようなネットワークリンクを介して１つ以上のネットワーク上でネットワーク信号を送信および／または受信することによって、図１のモバイルコンピューティングデバイス１２およびワイヤレスアクセスポイント１４のような外部ネットワークデバイスと通信し得る。たとえば、位置プロバイダサーバ２００は、通信ユニット２０２を使用して、モバイルコンピューティングデバイス１２と情報を交換するようリンク２０を介して無線信号を送信および／または受信し得る。通信ユニット２０２の例は、（たとえばイーサネット（登録商標）カードのような）ネットワークインターフェイスカード、光学トランシーバ、無線周波数トランシーバ、ＧＰＳレシーバ、または、情報を送信および／もしくは受信し得る任意の他のタイプのデバイスを含む。通信ユニット２０２の他の例は、有線ネットワークと、ワイヤレスネットワークと、短波無線と、セルラーデータ無線と、ワイヤレスイーサネットネットワーク無線と、ユニバーサルシリアルバス（ＵＳＢ）コントローラとを含み得る。
【００３１】
位置プロバイダサーバ２００内の１つ以上のストレージデバイス２０６は、位置プロバイダサーバ２００の動作の間の処理のための情報を格納し得る（たとえば、位置サービス１８は、位置プロバイダサーバ２００での実行の間にモジュール２１０および２１２によってアクセスされるデータを格納し得る）。いくつかの例において、ストレージデバイス２０６は一時メモリであり、これは、ストレージデバイス２０６の主目的が長期間の格納ではないことを意味する。位置プロバイダサーバ２００上のストレージデバイス２０６は、揮発性メモリとして、情報の短期間の格納のために構成されており、したがって、電源がオフにされると、格納されたコンテンツを保持しない。揮発性メモリの例は、ランダムアクセスメモリ（ＲＡＭ）と、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）と、スタティックランダムアクセスメモリ（ＳＲＡＭ）と、当該技術において公知の揮発性メモリの他の形態とを含む。
【００３２】
ストレージデバイス２０６はさらに、いくつかの例において、１つ以上のコンピュータ読取可能記憶媒体を含む。ストレージデバイス２０６は揮発性メモリより大きな量の情報を格納するように構成され得る。ストレージデバイス２０６はさらに、不揮発性メモリスペースとして情報の長期間の格納のために構成され得、電源オン／オフサイクルの後でも情報を保持し得る。不揮発性メモリの例は、磁気ハードディスク、光学ディスク、フロッピー（登録商標）ディスク、フラッシュメモリ、または、電気的プログラム可能メモリ（ＥＰＲＯＭ： electrically programmable memory）または電気的消去可能プログラム可能メモリ（ＥＥＰＲＯＭ： electrically erasable and programmable memory）の形態を含む。ストレージデバイス２０６は、モジュール２１０および２１２に関連付けられるプログラム命令および／またはデータを格納し得る。
【００３３】
１つ以上のプロセッサ２０１は、位置プロバイダサーバ２００内で機能を実現し、および／または、命令を実行し得る。たとえば、位置プロバイダサーバ２００上のプロセッサ２０１は、モジュール２１０および２１２の機能を実行する、ストレージデバイス２０６によって格納される命令を受信および実行し得る。プロセッサ２０１によって実行されるこれらの命令は、プログラム実行中に、位置プロバイダサーバ２００にストレージデバイス２０６内に情報を格納させ得る。プロセッサ２０１は、アクセスポイント１４およびモバイルコンピューティングデバイス１２の位置を決定するためにモジュール２１０および２１２の命令を実行し得る。すなわち、モジュール２１０および２１２は、本願明細書において記載される位置プロバイダサーバ２００のさまざまなアクションまたは機能を実行するようプロセッサ２０１によって動作可能であり得る。
【００３４】
ストレージデバイス２０６は、ワイヤレスアクセスポイント１４およびモバイルコンピューティングデバイス１２の位置を決定することに関係する情報を格納するための任意の好適な記憶媒体を表わす。ストレージデバイス２０６に格納される情報は、１つ以上のモジュール２１０および２１２が、ストレージデバイス２０６のうちの１つ以上からの情報を要求する入力を提供し、かつ、当該入力に応答して、ストレージデバイス２０６内に格納された情報を受信するように、検索可能および／または分類され得る。
【００３５】
いくつかの例示的なアプローチでは、デバイス位置データストア２２０Ａは、プロセッサ２０１が位置決定モジュール２１０を実行することによって決定されるようなデバイス位置情報を含む。いくつかのそのようなアプローチでは、モバイルコンピューティングデバイス１２およびワイヤレスアクセスポイント１４のようなネットワークデバイスについて決定される位置情報の署名されていないバージョンは、プロセッサ２０１による内部アクセスのためにデバイス位置データストア２２０Ａに主として維持され得る。
【００３６】
いくつかの例示的なアプローチでは、たとえばワイヤレスアクセスポイント１４およびモバイルコンピューティングデバイス１２といったネットワークデバイスによって位置プロバイダサーバ２００に提示されるスキャン結果は、スキャン結果データストア２２０Ｂに格納され、それらのスキャンと、他のワイヤレスアクセスポイント１４によって提出されるスキャンとの間のずれ（anomalies）を検出するために使用される。最後に、署名されたトリプル（triple）またはタプルのような位置情報は、位置情報データストア２２０Ｃに格納される。
【００３７】
いくつかの例では、位置決定モジュール２１０は、ワイヤレスアクセスポイント１４によって提供されるスキャンされた情報から各ワイヤレスアクセスポイントの位置を決定し、対応するワイヤレスアクセスポイントに当該位置を位置情報として送信する。いくつかのそのような例において、位置情報は、位置情報を署名された位置情報として識別するセキュリティデータを含んでいる。各ワイヤレスアクセスポイント１４は、そのワイヤレスアクセスポイントについての位置情報を受信し、モバイルコンピューティングデバイス１２に無線送信として当該位置情報を送信する。いくつかの例示的なアプローチでは、ワイヤレスアクセスポイントは、新しい位置情報を受け入れる前に、予期される位置サービス１８から受信される位置情報を照合する。
【００３８】
いくつかの例では、セキュリティモジュール２１２は、ワイヤレスアクセスポイント１４から受信されるスキャンされた情報が、デバイス位置データストア２２０Ａおよびスキャン結果データストア２２０Ｂに格納される際に、他のワイヤレスアクセスポイント１４から受信される情報、および、いくつかの場合においてはモバイルコンピューティングデバイス１２によって提供される位置情報と一貫していることを確認するためにチェックする。
【００３９】
いくつかの例では、セキュリティモジュール２１２は、署名された位置情報を形成するために位置情報に署名してから、署名された位置情報をワイヤレスアクセスポイント１４に送信し得る。位置情報はたとえば、位置サービス１８の公開鍵を使用して署名され得る。
【００４０】
図３は、本開示の１つ以上の局面に従った、例示的なモバイルコンピューティングデバイス１２を示すブロック図である。図３のモバイルコンピューティングデバイスは、図１のモバイルコンピューティングデバイス１２のより詳細な例であり、図１のシステム１０の文脈において以下に説明される。図３は、モバイルコンピューティングデバイス１２の１つのみの特定の例を示しており、モバイルコンピューティングデバイス１２の他の多くの例が使用されてもよく、いくつかは、例示的なモバイルコンピューティングデバイス１２に含まれるコンポーネントのサブセットを含んでもよく、または、図３に示されていない付加的なコンポーネントを含んでもよい。図３に示される例では、モバイルコンピューティングデバイス１２は、通信チャネル４０４を介して１つ以上の通信ユニット４０２と、１つ以上のユーザインターフェイス４０８と、１つ以上のストレージデバイス４０６とに接続される１つ以上のプロセッサ４００を含む。
【００４１】
一例では、モバイルコンピューティングデバイス１２は、ワイヤレスアクセスポイント１４の位置を詳述する位置情報を受信し、モバイルワイヤレスデバイスの位置を決定し、位置サービス１８によって計算される他の位置に対して計算された位置を照合する。図３の例に示されるように、モバイルコンピューティングデバイス１２のストレージデバイス４０６は、位置決定モジュール４１０およびセキュリティモジュール４１２を含んでいる。
【００４２】
位置プロバイダサーバ２００のストレージデバイス４０６は、スキャン結果データストア４２０Ｂおよび位置情報データストア４２０Ｃ（まとめて「データストア４２０」）をさらに含む。通信チャンネル４０４は、コンポーネント間通信のためにコンポーネント４００、４０２および４０６の各々を（物理的に、通信可能に、および／または、動作可能に）相互接続し得る。いくつかの例では、通信チャンネル４０４は、システムバス、ネットワーク接続、プロセス間通信データ構造、または、データを通信するための任意の他の方法を含み得る。
【００４３】
モバイルコンピューティングデバイス１２の１つ以上の通信ユニット４０２は、１つ以上のネットワーク（図１においてリンク１６および２０として示される）上でネットワーク信号を送信および／または受信することによって、図１の（たとえばリンク２０を使用して）位置サービス１８および（たとえばリンク１６を使用して）ワイヤレスアクセスポイント１４といった外部ネットワークデバイスと通信し得る。たとえば、モバイルコンピューティングデバイス１２は、通信ユニット２０２を使用して、位置サービス１８と情報を交換するようリンク２０を介して無線信号を送信および／または受信し得る。通信ユニット４０２の例は、（たとえばイーサネット（登録商標）カードのような）ネットワークインターフェイスカード、光学トランシーバ、無線周波数トランシーバ、ＧＰＳレシーバ、または、情報を送信および／または受信し得る任意の他のタイプのデバイスを含む。通信ユニット４０２の他の例は、有線ネットワークと、ワイヤレスネットワークと、短波無線と、セルラーデータ無線と、ワイヤレスイーサネットネットワーク無線と、ユニバーサルシリアルバス（ＵＳＢ）コントローラとを含み得る。
【００４４】
モバイルコンピューティングデバイス１２内の１つ以上のストレージデバイス４０６は、モバイルコンピューティングデバイス１２の動作中の処理のために情報を格納し得る（モバイルコンピューティングデバイス１２はたとえば、モジュール４１０および４１２として示されるソフトウェアによって、モバイルコンピューティングデバイス１２において実行中にアクセスされるデータをストレージデバイス４０６内に格納し得る）。いくつかの例において、ストレージデバイス４０６は一時メモリであり、これは、ストレージデバイス４０６の主目的が長期間の格納ではないことを意味する。モバイルコンピューティングデバイス１２上のストレージデバイス４０６は、揮発性メモリとして、情報の短期間の格納のために構成され得、したがって、電源がオフにされると、格納されたコンテンツを保持しない。揮発性メモリの例は、ランダムアクセスメモリ（ＲＡＭ）と、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）と、スタティックランダムアクセスメモリ（ＳＲＡＭ）と、当該技術において公知の揮発性メモリの他の形態とを含む。
【００４５】
ストレージデバイス４０６はさらに、いくつかの例において、１つ以上のコンピュータ読取可能記憶媒体を含む。ストレージデバイス４０６は揮発性メモリより大きな量の情報を格納するように構成され得る。ストレージデバイス４０６はさらに、不揮発性メモリスペースとして情報の長期間の格納のために構成され得、電源オン／オフサイクルの後でも情報を保持し得る。不揮発性メモリの例は、磁気ハードディスク、光学ディスク、フロッピー（登録商標）ディスク、フラッシュメモリ、または、電気的プログラム可能メモリ（ＥＰＲＯＭ： electrically programmable memory）または電気的消去可能プログラム可能メモリ（ＥＥＰＲＯＭ： electrically erasable and programmable memory）の形態を含む。ストレージデバイス４０６は、モジュール４１０および４１２に関連付けられるプログラム命令および／またはデータを格納し得る。
【００４６】
１つ以上のプロセッサ４００は、モバイルコンピューティングデバイス１２内で機能を実現し、および／または、命令を実行し得る。たとえば、モバイルコンピューティングデバイス１２上のプロセッサ４００は、モジュール４１０および４１２の機能を実行する、ストレージデバイス４０６によって格納される命令を受信および実行し得る。プロセッサ４００によって実行されるこれらの命令は、プログラム実行中に、モバイルコンピューティングデバイス１２にストレージデバイス４０６内に情報を格納させ得る。プロセッサ４００は、モバイルコンピューティングデバイス１２の位置を決定するためにモジュール４１０および４１２の命令を実行し得る。すなわち、モジュール４１０および４１２は、本願明細書において記載されるモバイルコンピューティングデバイス１２のさまざまなアクションまたは機能を実行するようプロセッサ４００によって動作可能であり得る。
【００４７】
データストア４０６は、モバイルコンピューティングデバイス１２の位置を決定することに関係する情報を格納するための任意の好適な記憶媒体を表わす。データストア４０６において格納される情報は、１つ以上のモジュール４１０および４１２が、データストア４０６の１つ以上からの情報を要求する入力を提供し得、当該入力に応答して、データストア４０６において格納される情報を受信し得るように、検索可能および／または分類され得る。
【００４８】
いくつかの例示的なアプローチでは、ワイヤレスアクセスポイント１４から受信されるスキャン結果は、スキャン結果データストア４２０Ｂに格納され、モバイルコンピューティングデバイス１２の位置を決定するために使用される。いくつかのそのような例示的なアプローチでは、以前のスキャン結果は、新しく得られたスキャン結果が以前のスキャン結果と一致しているかどうか決定するよう、新しく得られたスキャン結果と比較され得る。いくつかの例示的なアプローチでは、スキャン結果は、ワイヤレスアクセスポイントの位置と、ワイヤレスアクセスポイントへの距離の測定とを含んでいる。いくつかのそのような例示的なアプローチでは、距離測定はＲＳＳＩの関数である一方、他の例示的なアプローチでは、距離測定はＲＴＴの関数である。
【００４９】
いくつかの例において、ワイヤレスアクセスポイント１４から受信される位置情報は、位置情報の局面を守るセキュリティデータを含んでいる。
【００５０】
いくつかの例示的なアプローチでは、位置情報データストア４２０Ｃは、プロセッサ４００が位置決定モジュール４１０を実行することによって決定されるような位置情報を含む。いくつかの例では、位置決定モジュール４１０は、ワイヤレスアクセスポイント１４から受信される位置情報と、ワイヤレスアクセスポイントへの距離とに基づき、モバイルコンピューティングデバイス１２の位置を決定し、位置情報データストア４２０Ｃに位置を格納する。
【００５１】
いくつかの例では、セキュリティモジュール４１２は、ワイヤレスアクセスポイント１４から受信される位置情報が信頼された位置サービス１８からであるということを照合する。いくつかのそのような例において、これは、位置情報が、予期された信頼された位置プロバイダによって署名されていることを照合することを含む。いくつかの例において、セキュリティモジュール４１２は、位置情報が最新であることをチェックする。いくつかのそのような例において、セキュリティモジュール４１２はさらに、位置情報が予期されたワイヤレスアクセスポイント１４からであることをチェックする。
【００５２】
いくつかの例において、セキュリティモジュール４１２は、位置サービス１８にその最新の位置を送信するよう位置サービス１８と通信する。いくつかのそのような例では、位置サービス１８は、位置を受信し、当該位置が、ワイヤレスアクセスポイント１４および他のモバイルコンピューティングデバイス１２から受信した他の情報と一貫しているかどうか決定するためにチェックする。
【００５３】
図４は、ワイヤレスアクセスポイント位置情報を介してデバイス位置を決定するための例示的なプロセスを示すフローチャートである。図４は、図１のシステム１０の文脈で以下に説明される。たとえば、モバイルコンピューティングデバイス１２は、本開示の１つ以上の局面に従って、モバイルコンピューティングデバイス１２の位置を決定するための動作４０〜４６を実行し得る。
【００５４】
図４に示される例において、モバイルコンピューティングデバイス１２はワイヤレスアクセスポイント１４の各々からビーコン信号を受信する（４０）。モバイルコンピューティングデバイス１２は、署名された位置情報をビーコン信号の各々から抽出し（４２）、そのワイヤレスアクセスポイントの位置を識別するために各ワイヤレスアクセスポイントからの署名された位置情報を使用する。モバイルコンピューティングデバイス１２は、署名された位置情報を提供したアクセスポイント１４のうちの２つ以上への距離を計算し（４４）、各ワイヤレスアクセスポイント１４の位置および各ワイヤレスアクセスポイント１４への距離の関数としてその位置を計算する（４６）。
【００５５】
いくつかの例示的なアプローチでは、モバイルコンピューティングデバイス１２は、位置情報が信頼された位置サービス１８からかどうか決定するために位置情報をレビューし得る。いくつかの例では、位置情報が信頼された位置サービス１８からかどうか決定することは、位置情報が、予期された信頼された位置プロバイダによって署名されることを照合することを含む。
【００５６】
代替例において、各モバイルコンピューティングデバイス１２は、その近隣のアクセスポイント１４を探査し、送信を行うアクセスポイント１４の位置を識別する署名された位置情報を含む応答を受信する。モバイルコンピューティングデバイス１２は、応答から位置情報を抽出し、署名された位置情報を提供した各アクセスポイント１４への距離を計算する。その後、両者はモバイルコンピューティングデバイス１２の位置を計算するために使用される。また、いくつかのそのような例示的なアプローチでは、モバイルコンピューティングデバイス１２は、位置情報が上で詳述されたような信頼された位置サービス１８からかどうか決定するよう、位置情報をレビューする。
【００５７】
いくつかの例示的なアプローチでは、セキュリティモジュール４１２は、位置情報が最新かどうか決定するためにチェックを行う。１つのそのような例示的なアプローチでは、各ビーコン信号は、ワイヤレスアクセスポイント１４の位置情報がアップデートされた最終時間の指示を含む。１つの例示的なアプローチでは、デジタル署名され、予め規定された期間内にアップデートされていれば、位置情報は信頼されるものとして処理される。
【００５８】
いくつかの例示的なアプローチでは、セキュリティモジュール４１２は、位置情報が予期されたワイヤレスアクセスポイント１４からかどうか決定するためにチェックを行う。１つのそのような例示的なアプローチでは、各ビーコン信号は、アクセスポイントに関連付けられる識別子を含む。１つのそのようなアプローチでは、識別子はワイヤレスアクセスポイント１４のＢＳＳＩＤである。
【００５９】
アクセスポイント位置に関する履歴認識のキャッシュを維持することによって、クラウドベース位置サービス１８へのネットワーク接続の欠如が時々発生することを補償することが可能である。１つの例示的なアプローチでは、履歴認識はクラウドにおいて維持され、そのデータへのオフラインアクセスを可能にする。
【００６０】
１つの例示的なアプローチでは、ワイヤレスアクセスポイント１４およびモバイルコンピューティングデバイス１２の位置は、信頼された位置情報のみに基づき計算され得るか、信頼された位置情報と信頼された位置情報を提供しないワイヤレスアクセスポイント１４から受信された情報との組み合わせに基づき計算され得るか、信頼された位置情報と、その位置が決定されているワイヤレスアクセスポイント１４またはモバイルコンピューティングデバイス１２上に格納された履歴位置情報との組み合わせに基づき計算され得るか、または、信頼された位置情報と、信頼されていない位置情報と、履歴位置情報との組み合わせに基づき計算され得る。
【００６１】
１つの例示的なアプローチでは、モバイルコンピューティングデバイス１２は、ＢＳＳＩＤによってインデキシングされた履歴位置情報のテーブルを維持する。履歴位置情報のテーブルは、たとえば署名された位置情報がワイヤレスアクセスポイントから利用可能でない場合、ワイヤレスアクセスポイント１４の位置を得るために使用され得る。この問題に対応するために、１つの例示的なアプローチでは、以下により詳細に議論されるように、モバイルコンピューティングデバイス１２は、履歴認識をキャッシュに入れ、位置をマッチングする代わりにＢＳＳＩＤを使用して履歴位置情報に基づいて位置を識別し得る。１つのアプローチでは、モバイルコンピューティングデバイス１２は、モバイルコンピューティングデバイス１２のワイヤレスチップセットによって実行される三角測量がある（緯度，経度）組み合わせにデバイス１２を配置する場合に、位置ベースのリマインダをトリガする。これにより、特定チャネルにて特定のＢＳＳＩＤを捜す必要性が除去され、ジオフェンス（geofence）のより正確な識別が可能になる。
【００６２】
図５Ａは、本開示の１つ以上の局面に従った例示的な（緯度，経度，トークン）タプル５００を示す。上述したように、位置情報は、ビーコン信号として各ワイヤレスアクセスポイント１４によって送信されるか、または、モバイルコンピューティングデバイス１２による探査に応答して各ワイヤレスアクセスポイント１４によって送信されるかのいずれかである。図５Ａに示される例において、位置情報は、緯度５０２、経度５０４およびトークン５０６を含むトリプル５００として送信される。トークン５０６は、いくつかの例において、ある文脈内でその位置を表示するようモバイルコンピューティングデバイス１２によって使用される記述情報を含み得る。たとえば、トークン５０６は、モバイルコンピューティングデバイス１２によって受信されると、モバイルコンピューティングデバイス１２の位置を示すマップにラベル付けするために使用される、「４階駐車場」のようなテキストを含み得る。トークン５０６は、他の例示的なアプローチでは、ソース識別子または最終アップデートインジケータのようなセキュリティデータを含み得る。
【００６３】
ワイヤレスアクセスポイントはその位置に関して偽り得、デバイス１２自身の位置についてデバイス１２による計算を誤らせる（throwing off）。これを防止するために、システム１０は「信頼された位置プロバイダ」を実現する。信頼された位置プロバイダの背景にある考えは、アクセスポイントによって発行される位置情報が、一般に（緯度，経度，トークン）トリプレットを生成したエンティティのような信頼された位置プロバイダによって署名され得、その署名がデバイス１２によって照合され得るということである。デバイス１２がその位置プロバイダを信頼すれば、その信頼された位置プロバイダからの位置情報は、選択される目的が何であれ、そのデバイスによって使用され得る。
【００６４】
１つの例示的なアプローチでは、位置サービス１８は、署名に（緯度，経度，トークン）トリプレットを提供する。１つのそのようなアプローチでは、署名は公開鍵証明書であるが、他の証明技術も同様に使用され得る。信頼された位置プロバイダは、デバイス２００上に、単に当該デバイス上に公開証明書をインストールすることによって提供され得る。その後、その証明書において利用可能な鍵は、位置情報が確かにその特定の位置プロバイダによって生成されたものであり、不正な変更を加えられていないということを照合するために使用される。
【００６５】
スプーフィングのような位置攻撃（location attack）を防止するために、位置トリプレットは、アクセスポイント１４の予期されたＢＳＳＩＤ、および、署名された位置情報への最終アップデートの時間といった項目を含めるように拡張され得る。情報をより信頼性のあるものにするために、１つの例示的なアプローチでは、位置情報は周期的に（たとえば週に１度または１日に１度）リフレッシュされる。いくつかのそのようなアプローチでは、デバイス１２は、相対的に新しい情報のみを選ぶポリシーを含み得、これにより、古くなったデータに依拠することから生じる問題を回避する。
【００６６】
図５Ｂは、本開示の１つ以上の局面に従った、例示的な署名された（緯度，経度，トークン，ＢＳＳＩＤ，最終アップデート）タプルを示す。図５Ｂに示される例では、位置情報は、緯度５０２、経度５０４、トークン５０６、ソース識別子５０８および最終アップデート５１０を含むタプル５２０として送信される。図５Ｂに示される例では、ソース識別子５０８は、位置情報を送信したと考えられるワイヤレスアクセスポイントの予期されたＢＳＳＩＤである。モバイルコンピューティングデバイス１２は、タプル５２０を受信し、タプル５２０が予期された信頼された位置サービス１８からであるということを署名を介して照合し、その後、タプル５２０がタプル５２０を送信したワイヤレスアクセスポイントからであること（すなわち、タプル５２０におけるＢＳＳＩＤにマッチするＢＳＳＩＤを有するということ）を照合する。いくつかの例示的なアプローチでは、信頼されたプロバイダ１８は、公開鍵５１２によりタプル５２０に署名する。
【００６７】
図５Ａに関して上述されたように、トークン５０６は、いくつかの例において、ある文脈においてその位置を表示するよう、モバイルコンピューティングデバイス１２によって使用される記述情報を含む。たとえば、トークン５０６は、モバイルコンピューティングデバイス１２によって受信されると、モバイルコンピューティングデバイス１２の位置を示すマップにラベル付けするために使用される、「４階駐車場」のようなテキストを含み得る。
【００６８】
図６は、ワイヤレスアクセスポイント位置情報を介してデバイス位置を決定するための例示的なプロセスを示すフローチャートである。図６は、図１のシステム１０の文脈において以下に記載される。たとえば、ワイヤレスアクセスポイント１４またはモバイルコンピューティングデバイス１２のようなワイヤレスデバイスは、本開示の１つ以上の局面に従った、ワイヤレスデバイスの位置を決定するための動作５０〜５６を実行し得る。１つの例示的なアプローチでは、ワイヤレスデバイスは、複数のワイヤレスアクセスポイント１４の各々からそれぞれの署名された位置情報を受信し、それぞれの署名された位置情報は、対応するワイヤレスアクセスポイントについての位置情報を含む。ワイヤレスデバイスは、それぞれの署名された位置情報に基づいて、それぞれの署名された位置情報のうちのいずれかが損なわれているかどうかを決定し、損なわれていない署名された位置情報と、損なわれていない署名された位置データを有する各ワイヤレスアクセスポイントとワイヤレスデバイスとの間の距離を表すデータとに基づき、ワイヤレスデバイスの位置を決定する。
【００６９】
図６に示される例において、モバイルコンピューティングデバイス１２はワイヤレスアクセスポイント１４の各々からビーコン信号を受信する（５０）。位置情報はビーコン信号の各々から抽出される（５１）。各ワイヤレスアクセスポイントからの情報は、そのワイヤレスアクセスポイントの位置を識別する。位置情報は、署名されているかまたは署名されていない場合がある。
【００７０】
５２において、特定のワイヤレスアクセスポイント１４から受信される位置情報が署名されているまたは署名されていないかどうかを決定するためにチェックが行われる。署名されていれば、５３において、署名された位置情報が損なわれたかどうか決定するようチェックが行われる。いくつかのアプローチでは、デジタル署名が予期された位置プロバイダとマッチしない場合、または、署名された位置情報がセキュリティ上の問題を引き起こすセキュリティデータを含んでいる場合、署名された位置情報は損なわれている。いくつかのアプローチでは、署名された位置情報は、署名された位置情報を送信するワイヤレスアクセスポイントの予期されたＢＳＳＩＤを含む。５３において、予期されたＢＳＳＩＤがワイヤレスアクセスポイント１４のＢＳＳＩＤとマッチするかどうか決定するようチェックが行われる。マッチしていなければ、署名された位置情報は損なわれている。署名された位置情報が損なわれている場合、信頼された情報が廃棄され得、デバイス１２が位置情報の別のセットについて待機するので、制御は５０に移り得る。
【００７１】
いくつかのアプローチでは、たとえば、アップデート時間が古すぎることを５３でのチェックが示している場合には、署名された位置情報は損なわれている。そうであれば、署名された位置情報が損なわれており、信頼された情報が廃棄され、デバイス１２が位置情報の別のセットについて待機するので、制御は５０に移る。
【００７２】
５２において位置情報が署名されていない場合、または、５３において署名された位置情報が損なわれていない場合、制御は５４に移り、各アクセスポイント１４への距離が計算される（５４）。５５において、位置を計算するために、デバイス１２が十分なワイヤレスアクセスポイント１４から位置情報を受信しているかどうか決定するようにチェックが行われ、受信していなければ、デバイス１２が位置情報の別のセットについて待機するので、制御は５０に移る。
【００７３】
５５において、デバイス１２は、蓄積された位置情報がモバイルコンピューティングデバイス１２の位置を計算するのに十分であると決定すると、制御は５６に移り、デバイス１２はモバイルコンピューティングデバイス１２の位置を計算する。いくつかの例示的なアプローチでは、各モバイルコンピューティングデバイス１２は、ワイヤレスアクセスポイントの各々から受信される位置情報と、モバイルコンピューティングデバイスと各ワイヤレスアクセスポイントとの間の距離を表すデータとに基づき、モバイルコンピューティングデバイス１２の位置を決定する。
【００７４】
いくつかの例示的なアプローチでは、署名されている位置情報および署名されていない位置情報の両方は、デバイス１２の位置を計算するために使用される。いくつかのそのようなアプローチでは、署名された位置情報を介して受信される情報にプレファレンスが与えられる。
【００７５】
代替例において、各モバイルコンピューティングデバイス１２は、その近隣のアクセスポイント１４を探査し、送信を行うアクセスポイント１４の位置を識別する位置情報を含む応答を受信する。位置情報は応答から抽出され、各アクセスポイント１４への距離が計算される。その後、両者はモバイルコンピューティングデバイス１２の位置を計算するために使用される。また、いくつかのそのような例示的なアプローチでは、モバイルコンピューティングデバイス１２は、位置情報が上で詳述されたような信頼された位置サービス１８からかどうか決定するよう、位置情報をレビューする。
【００７６】
いくつかの例では、位置情報が最新であるというチェックがセキュリティモジュール４１２によって行われる。いくつかの例において、位置情報が予期されたワイヤレスアクセスポイント１４からであるというチェックがセキュリティモジュール４１２によって行われる。
【００７７】
図７は、本開示の１つ以上の局面に従った、他のネットワークデバイスとのインタラクションを通じてアクセスポイントがそれらの位置を決定する例示的なシステムを示す概念図である。１つの例示的なアプローチでは、ワイヤレスアクセスポイント１４は、それらのビーコン信号においてそれらの位置を発行するか、または、モバイルコンピューティングデバイス１２もしくは他のアクセスポイント１４からの探査に応答してそれらの位置を発行する。図７の例示的なアプローチでは、アクセスポイント１４はその近隣をスキャンし、ビーコン信号をリッスン（listen）することか、または、他のワイヤレスアクセスポイント１４を探査することのいずれかを行う。周囲のＷｉ−Ｆｉ環境のスキャンによって、他のアクセスポイント１４およびそれらの信号強度のリストが産出される。そのリストは位置サービス１８に送信される。
【００７８】
図７の例示的なアプローチでは、システム１０は、Ｗｉ−Ｆｉネットワークのリンク１６を介して接続される４つ以上のワイヤレスアクセスポイント１４を含む。ワイヤレスアクセスポイント１４のうちの１つ以上がネットワークリンク２２を介して位置プロバイダに接続される。いくつかのそのような例示的なアプローチでは、位置プロバイダはクラウドベース位置サービス１８である。
【００７９】
１つの例示的なアプローチでは、アクセスポイント１４は、それらのビーコン信号においてそれらの位置を発行するか、または、モバイルコンピューティングデバイス１２からの探査に応答してそれらの位置を発行する。ワイヤレスアクセスポイント１４は、他のアクセスポイント１４から受信される位置情報と、いくつかの場合において（モバイルコンピューティングデバイス１２のような）他のネットワークデバイスから受信される情報と、他のネットワークデバイスの各々への距離測定とを用いて、自身の位置を決定し得る。１つのそのようなアプローチでは、各アクセスポイントへの距離は、受信信号強度インジケーション（ＲＳＳＩ）推定に基づいて決定される。ワイヤレスアクセスポイント１４は、近くのアクセスポイント１４によって発行される位置情報を受信し、位置サービス１８がワイヤレスアクセスポイントの位置を決定することができるように受信信号強度インジケーション（ＲＳＳＩ）推定とともにその情報を位置サービス１８に送信する。
【００８０】
１つの例示的なアプローチでは、各ワイヤレスアクセスポイント１４はアクセスポイント信号を送信する。アクセスポイント信号は、信号を送信するアクセスポイントの位置を詳述する位置情報を含む。デバイスは、周囲のアクセスポイントの各々への距離と、アクセスポイントから受信される位置情報とに基づいて、自身の位置を決定する。
【００８１】
いくつかのアプローチでは、周囲のアクセスポイントの各々への距離は受信信号強度インジケーション（ＲＳＳＩ）に基づいて決定される。他のアプローチでは、周囲のアクセスポイントの各々への距離は、ラウンドトリップトラベルタイム（ＲＴＴ）推定に基づいて決定される。いくつかのアプローチでは、位置情報は、位置情報が損なわれた可能性がある時を検出し、スプーフィングを防止するように、公開鍵証明書のようなデジタル署名で保護される。いくつかのアプローチでは、アクセスポイントのベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）のようなアクセスポイント識別子が、署名された位置情報に埋め込まれており、送信を行うアクセスポイント１４が、当該位置情報におけるＢＳＳＩＤとマッチするＢＳＳＩＤを有するということを照合するために使用される。
【００８２】
いくつかのアプローチでは、位置プロバイダは、図１における位置サービス１８のようなクラウドベースサービスである。いくつかのそのようなアプローチでは、ワイヤレスアクセスポイントは、ワイヤレスアクセスポイントへの距離を決定するよう、周囲のアクセスポイントと通信する。その後、ワイヤレスアクセスポイントは、周囲のアクセスポイントおよび（ＲＳＳＩまたはＲＴＴによる）それらの距離のリストをクラウドベース位置サービス１８に送信する。クラウドベース位置サービスは、アクセスポイントの位置を決定し、要求を行ったアクセスポイントへ位置情報の署名されたコピーを送信する。その後、アクセスポイントは、位置情報が、自身の位置を決定するためにモバイルコンピューティングデバイス１２によって使用され得るように、モバイルコンピューティングデバイス１２による要求に応答して、または、そのビーコン信号の部分として、位置情報を送信する。
【００８３】
１つの例示的なアプローチでは、システムは、アクセスポイントによって送信される位置情報にセキュリティデータを添付することによってスプーフィングを制限する。セキュリティデータに基づいたセキュリティチェックがフェイルした場合、モバイルコンピューティングデバイスは、アクセスポイント位置が損なわれていると仮定する。別の例示的なアプローチでは、位置情報は、情報が信頼できる位置プロバイダからかどうか決定するために使用される署名を含む。
【００８４】
１つの例示的なアプローチでは、位置サービス１８は、各ワイヤレスアクセスポイント１４の位置を決定し、対応するワイヤレスアクセスポイントに当該位置を位置情報として送信する。いくつかのワイヤレスアクセスポイントの場合、位置情報は、位置情報を信頼された位置情報として識別するセキュリティデータを含んでいる。
【００８５】
図８は、本開示の１つ以上の局面に従った、アクセスポイントの位置を決定するための例示的なプロセスを示すフローチャートである。図８は、図７のシステム１０の文脈において以下に記載される。たとえば、ワイヤレスアクセスポイント１４は、本開示の１つ以上の局面に従って、ワイヤレスアクセスポイント１４の位置を決定するための動作６０〜６６を実行し得る。
【００８６】
１つの例示的なアプローチでは、アクセスポイント１４は、それらのビーコン信号においてそれらの位置を発行するか、または、モバイルコンピューティングデバイス１２もしくは他のアクセスポイント１４からの探査に応答してそれらの位置を発行する。図８の例示的なアプローチでは、６０において、アクセスポイント１４はその近隣をスキャンし、ビーコン信号をリッスン（listen）することか、または、ワイヤレスアクセスポイント１４もしくはモバイルコンピューティングデバイス１２のような他のネットワークデバイスを探査することのいずれかを行う。周囲のワイヤレス環境のスキャンによって、他のアクセスポイント１４（および、いくつかのアプローチでは、位置がわかっているモバイルコンピューティングデバイス１４）およびそれらの信号強度のリストが産出され得る。６２において、このリストは、位置サービス１８（ここではクラウドにおける位置プロバイダサービスとして示される）に送信され、位置サービス１８では、履歴認識がワイヤレスアクセスポイント１４の位置を決定するために使用される。１つのそのようなアプローチでは、当該リストは、スキャンされたアクセスポイント１４の各々のベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）と、たとえばＲＳＳＩまたはＲＴＴの推定に基づいた各アクセスポイントについての距離推定とを含む。その後、６４において、応答は、適切な位置情報とともにアクセスポイント１４へ送信され、６６において、ＡＰのビーコン信号でのベンダー特定情報要素（位置ＩＥ）において発行される。１つの例示的なアプローチでは、位置サービス１８は、アクセスポイント１４によって転送されるリストにおけるデータを検証し、アクセスポイントの位置について（緯度，経度，トークン）トリプレットを決定し、アクセスポイント１４にトリプレットを戻す。１つのそのようなアプローチでは、位置サービス１８は、デジタル署名によりタプルに署名してから、署名されたタプルをワイヤレスアクセスポイント１４に送信する。
【００８７】
１つの例示的なアプローチでは、ワイヤレスアクセスポイント１４がモバイルコンピューティングデバイス１２から検証された位置情報（すなわち位置プロバイダによって照合された位置情報）を受信する場合、ワイヤレスアクセスポイント１４は、ワイヤレスアクセスポイント１４の位置を決定するのに使用するために、デバイス１２の位置情報を位置プロバイダに転送し得る。
【００８８】
位置情報は、管理者にアクセスポイント１４にスタンプを押させるようにすることによって、または、設置の際の位置においてプログラムすることによってといった他の手段によって、アクセスポイント１４上に提供され得る。しかしながら、そのようにすることにはいくつかの不利益がある。たとえば、位置サービス１８は、提供が行われる場合、位置サービス１８に送信されるデータを検証することができない場合がある。
【００８９】
上に言及されたように、ワイヤレスアクセスポイント１４は、それらのＷｉ−Ｆｉの近隣をスキャンすると、他のワイヤレスアクセスポイント１４の位置ＩＥと、いくつかの場合においては各ワイヤレスアクセスポイント１４のサービスセット識別子（ＳＳＩＤ： Service Set Identifier）またはＢＳＳＩＤとを発見する。ワイヤレスアクセスポイント１４は、位置情報をパースし、一例では、そこから緯度、経度およびトークン（緯度，経度，トークン）情報を得る。スキャンの間、ワイヤレスアクセスポイント１４はさらに、アクセスポイントのＲＳＳＩを記録する。３つのそのようなアクセスポイントからこのすべての情報が与えられると、位置サービス１８は、ワイヤレスアクセスポイント１４の位置を計算する。アクセスポイントのうちのいずれかが、２方向ＲＴＴ（two-way RTT）を提供する場合、２方向ＲＴＴはＲＳＳＩの代わりに使用され得、同じ計算がより良好な結果を伴って行われる。
【００９０】
トークンはさらに、位置に特定的な情報を伝達するために使用され得る。たとえば、トークンは、「駐車場の３階」、都市もしくは国、または、デバイス１２のユーザの位置を確定するために当該ユーザによって使用され得る他の情報といった位置情報を伝達するために使用され得る。１つのそのようなアプローチでは、トークンは、ＲＳＳＩまたはＲＴＴ位置ポジショニングを介して微調整される大まかな位置を確立する。
【００９１】
上に言及されたように、ワイヤレスアクセスポイントは自身が存在する位置に関して偽り得、デバイス自身の位置についてのデバイスの計算を誤らせる（throwing off）。これは一般に、如何なる有用なアプリケーションも妨げることになる。これを防止するために、「信頼された位置プロバイダ」の新しい概念が導入される。その考えは、アクセスポイントによって発行される位置情報が、一般に（緯度，経度，トークン）トリプレットを生成したエンティティのような信頼された位置プロバイダによって署名され得、その署名がデバイス１２によって照合され得るということである。デバイス１２がその位置プロバイダを信頼すれば、その信頼された位置プロバイダからの位置情報は、選択される目的が何であれ、そのデバイスによって使用され得る。
【００９２】
１つの例示的なアプローチでは、位置サービス１８は、署名に（緯度，経度，トークン）トリプレットまたは（図５Ｂにおいて示されるような）（緯度，経度，トークン，ＢＳＳＩＤ）タプルを与える。１つのそのようなアプローチでは、署名は公開鍵証明書であるが、他の証明技術も同様に使用され得る。
【００９３】
信頼された位置プロバイダは、デバイス上に、単に当該デバイス上に公開証明書をインストールすることによって提供され得る。その証明書において利用可能な鍵は、位置情報が確かにその位置プロバイダによって生成されたものであり、不正な変更を加えられていないということを照合するために使用され得る。スプーフィングのようなさらなる位置攻撃を防止するために、位置トリプレットは、ワイヤレスアクセスポイント１４のＢＳＳＩＤおよびクエリーの時間のような他の情報を含むように拡張され得る。情報をより信頼性のあるものにするために、１つの例示的なアプローチでは、位置情報は周期的に（たとえば週に１度または１日に１度）リフレッシュされる。いくつかのそのようなアプローチでは、デバイス１２はさらに、相対的に新しい情報のみを選ぶポリシーを含み、これにより、古くなったデータに依拠することから生じる問題を回避する。
【００９４】
アクセスポイント１４は、他の態様で位置情報をスプーフィングし得る。たとえば、アクセスポイント１４は、クラウドにおける位置サービス１８へアクセスポイント１４が報告するスキャンデータにおいて不正確な値を渡し得る。このアプローチに対応するために、位置サービス１８は、アクセスポイント１４からの無効または不正確な要求を除去するためにチェックを実行し得る。まず、位置サービス１８は、１つのアクセスポイント１４から受信した情報を、周囲のアクセスポイント１４から受信した情報と比較し得る。これは、悪意のあるアクセスポイントを突き止めることを支援する。１つの例示的なアプローチでは、位置サービス１８は単に、悪意のあるアクセスポイントの位置情報をアップデートすることを拒絶し、その位置情報が古くなるようにする。いくつかのそのようなアプローチでは、デバイス１２は、予め規定された期間内にアップデートされていない位置情報を無視する。
【００９５】
１つのアプローチでは、位置プロバイダは、他のソースから受信される位置情報をメモリに格納し、格納された位置情報をワイヤレスアクセスポイントから受信される位置データにおける情報と比較し、それに従って位置データにおける情報を修正するように構成されるプロセッサ２０１を含む。
【００９６】
１つのアプローチでは、位置プロバイダは、ワイヤレスアクセスポイントから受信された、ワイヤレスアクセスポイント１４と特定のネットワークデバイスとの間の距離を表すデータを別のソースから受信された距離データと比較し、他のソースから受信された距離データの関数としてポイント１４と他のネットワークデバイスとの間の距離を修正する。
【００９７】
１つのアプローチでは、位置サービス１８は、すべての前述のアクセスポイント１４が同じ近傍に確かにあることを照合するようモバイルコンピューティングデバイス１２から得られたデータを使用する。１つの例示的なアプローチでは、このアプローチは、異なるワイヤレスアクセスポイントからのデータの比較に基づく技術と組み合わされ、これにより、非常に信頼性のある結果が生成される。
【００９８】
モバイルコンピューティングデバイス１２によってその位置を決定するために使用される位置情報をアクセスポイントに維持および配信させる上記技術は、非常に有効である。モバイルコンピューティングデバイスと異なり、アクセスポイント１４は典型的に移動しない。そのような固定されたポイントからのスキャンは、位置をモデリングするためのより良好なデータを位置サービス１８に提供する。さらに、アクセスポイント１４は、一般に壁または天井にマウントされ、デバイス１２と比較してＲＳＳＩの変動が非常に少ない（デバイス１２はポケット／財布／バッグなどの中にある場合があるためである）。そのようなアプローチはさらに、より良好なモデリング精度に寄与する。
【００９９】
上記の技術はさらに、位置サービス１８をホストするサーバ２００上の負荷を低減する。代わりに、デバイス１２は自身で位置を計算し得る。さらに、上記アプローチは、より良好なセキュリティを提供する。たとえば、システム１０は、トークン５０６における位置情報によって定義されるように特定のワイヤレスアクセスポイント１４が当該特定のワイヤレスアクセスポイントの位置になければ、特定のワイヤレスアクセスポイント１４に接続しない。最後に、上記アプローチは、空港での着陸のような共通のシナリオについてより速い位置決定を保証する。
【０１００】
図９は、本開示の１つ以上の局面に従った、アクセスポイントの位置を決定するための別の例示的なプロセスを示すフローチャートである。図９は、図７のシステム１０の文脈で以下に記載される。たとえば、ワイヤレスアクセスポイント１４は、本開示の１つ以上の局面に従って、ワイヤレスアクセスポイント１４の位置を決定するための動作８０〜８６を実行し得る。
【０１０１】
また、１つの例示的なアプローチでは、アクセスポイント１４は、それらのビーコン信号においてそれらの位置を発行するか、または、モバイルコンピューティングデバイス１２もしくは他のアクセスポイント１４からの探査に応答してそれらの位置を発行する。図９の例示的なアプローチでは、８０において、アクセスポイント１４はその近隣をスキャンし、ビーコン信号をリッスン（listen）することか、または、ワイヤレスアクセスポイント１４のような他のネットワークデバイスを探査することのいずれかを行う。周囲のＷｉ−Ｆｉ環境のスキャンにより、他のアクセスポイント１４およびそれらの信号強度のリストが産出される。８２において、このリストは位置サービス１８に送信され、位置サービス１８において、ワイヤレスアクセスポイント１４の位置を決定するために履歴認識が使用される。１つのそのようなアプローチでは、当該リストは、スキャンされたアクセスポイント１４の各々のベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）と、ＲＳＳＩまたはＲＴＴの推定に基づいた各アクセスポイントについての距離推定とを含む。その後、４４において、応答は、適切な位置情報とともにアクセスポイント１４へ送信され、８６において、ＡＰのビーコン信号でのベンダー特定情報要素（位置ＩＥ）において発行される。１つの例示的なアプローチでは、位置サービス１８は、アクセスポイント１４によって転送されるリストにおけるデータを検証し、アクセスポイントの位置について（緯度，経度，トークン，ＢＳＳＩＤ）タプルを決定し、タプルに署名し、その埋め込まれたＢＳＳＩＤを有する署名されたタプルをアクセスポイント１４に戻す。
【０１０２】
また、いくつかの例示的なアプローチでは、署名された位置情報は、アクセスポイント１４において周期的に（たとえば１日に１度）アップデートされ、これにより、情報のより良好な品質が保証されるとともに、上述されたように、悪意のあるアクセスポイントの影響を低減するためのメカニズムが提供される。いくつかのそのような例示的なアプローチでは、悪意のあるワイヤレスアクセスポイント１４は、データに適切なアップデート時間を提供することができないことによって、シャットアウトされ得る。
【０１０３】
図１０は、本開示の１つ以上の局面に従った、位置プロバイダがアクセスポイントの位置を決定する例示的なプロセスを示すフローチャートである。図１０は、図１のシステム１０の文脈で以下に記載される。たとえば、位置サービス１８は、本開示の１つ以上の局面に従って、ワイヤレスアクセスポイント１４の位置を決定するための動作１００〜１０８を実行し得る。図１０の例示的なアプローチでは、信頼された位置サービス１８は、他のアクセスポイント１４およびそれらの信号強度のリストをワイヤレスアクセスポイント１４から受信する（１００）。１つの例示的なアプローチでは、信頼された位置サービス１８は、アクセスポイント１４によって転送されたリストにおけるデータを検証し（１０２）、アクセスポイントの位置についての（緯度，経度，トークン，ＢＳＳＩＤ）タプルを決定し（１０４）、タプルに署名し（１０６）、署名されたタプルをアクセスポイント１４に戻す（１０８）。１つの例示的なアプローチでは、信頼された位置サービス１８は、署名に（緯度，経度，トークン，ＢＳＳＩＤ）タプルを提供する。１つのそのようなアプローチでは、署名は公開鍵証明書であるが、他の証明技術も同様に使用され得る。
【０１０４】
１つの例示的なアプローチでは、アクセスポイントの位置についての（緯度，経度，トークン，ＢＳＳＩＤ）タプルを決定することは、対象のＢＳＳＩＤの位置を計算するために、他の近隣のアクセスポイントまたはモバイルコンピューティングデバイスのような他のソースから提供されるスキャン結果を見ることを含む。１つの例示的なアプローチでは、アクセスポイントの位置を計算するのに十分なデータがない場合、または、位置プロバイダサービス１８がデータにおいて非一貫性を検出した場合、信頼された位置サービス１８は、問い合わせを行ったＷｉ−Ｆｉアクセスポイント１４に如何なる位置情報も提供しない。
【０１０５】
この技術は、信頼された位置プロバイダが複数のソースからデータを集めることを可能にし、これにより、特定の位置における特定のＢＳＳＩＤを特定する。（モバイルコンピューティングデバイスと異なり）ほとんどのアクセスポイントは移動せず、また、ほとんどのアクセスポイントには、（ポケット、財布などに配置される場合などにおいて）モバイルコンピューティングデバイスに時々発生するオクルージョンがないので、Ｗｉ−Ｆｉアクセスポイントから収集されるデータは一般に良好な品質のデータである。
【０１０６】
上述されたように、位置プロバイダサービス１８のような位置プロバイダは、アクセスポイントの位置を計算するのに十分なデータがない場合、または、位置プロバイダサービス１８がデータにおける非一貫性を検出した場合、アクセスポイント１４に位置情報を配信することを拒否し得る。そのようなアプローチはたとえば、アクセスポイントを除外するために使用され得る。いくつかの例示的なアプローチでは、位置プロバイダサービス１８は、代替的なソースによってそのワイヤレスアクセスポイントの位置が確認され得ない場合、アクセスポイント１４の位置の寄与を無視し得る。このアプローチはさらに、モバイルコンピューティングデバイスと共に使用され得る。すなわち、位置プロバイダサービス１８は、より良好な位置クロス確認のために、モバイルコンピューティングデバイス１２のうちの１つ以上から位置情報を収集し得る。
【０１０７】
１つの例示的なアプローチでは、位置プロバイダは、ワイヤレスアクセスポイントから受信される位置データを別のソースからの位置データと比較する。ワイヤレスアクセスポイントから受信される位置データが、別のソースからの位置データとは異なるしきい値量より大きい場合、位置プロバイダは、ワイヤレスアクセスポイントの位置を生成するために使用するように位置データを決定する。１つのそのようなアプローチでは、使用するべき適切な位置データは、ワイヤレスアクセスポイント１４およびモバイルコンピューティングデバイス１２のような他のワイヤレスデバイスから受信される位置データに最も近くマッチする位置データである。
【０１０８】
上述されたように、本アプローチには、特定のワイヤレスアクセスポイントに関する問題を検出するか、または、そのような問題を報告するためのメカニズムがない。この問題に対応するために、１つのアプローチでは、位置プロバイダサービス１８は、特定のエリアにおいてワイヤレスアクセスポイント１４の各々についての位置を周期的に決定および配信するように構成され得る。別のアプローチでは、ワイヤレスアクセスポイント１４は、特定のワイヤレスアクセスポイント１４に関する問題をより迅速に検出するために、それらの位置スキャンを毎日または毎週リフレッシュするように構成され得る。
【０１０９】
上述されたように、位置を決定するためにワイヤレスアクセスポイントを使用するモバイルコンピューティングデバイスは、アクセスポイントによって発行される位置情報がスプーフィングされているかまたは損なわれている場合がある攻撃に晒され、これにより、自身の位置を決定するモバイルコンピューティングデバイスの能力が損なわれる。現在のモバイルコンピューティングデバイスの場合、ワイヤレスアクセスポイントから受信される情報の忠実性は保証されない。上述されたように、いくつかのアプローチでは、システム１０は、位置情報が損なわれた可能性があることを検出するとともにスプーフィングを防止するために、公開鍵証明書のようなデジタル署名で位置情報を保護することによって、これに対処する。また、上述されたように、いくつかのアプローチでは、システム１０は、位置情報が損なわれた可能性があることを検出するとともにスプーフィングを防止するために、セキュリティデータを含むことによりスプーフィングおよび損なわれたデータの問題に対応する。いくつかのアプローチでは、セキュリティデータは、位置情報を送信したはずである（ワイヤレスアクセスポイントのＢＳＳＩＤのような）ワイヤレスアクセスポイントを識別する識別子を含む。いくつかのアプローチでは、セキュリティデータは、古くなった位置情報を検出するために使用されるアップデート日時を含んでいる。
【０１１０】
位置情報を保護するための署名の使用の利点は、情報が正しい位置プロバイダからであるかどうかと、署名された位置情報が損なわれているかどうかとを迅速に決定することができることである。位置情報における、位置を送信していると考えられるワイヤレスアクセスポイントのＢＳＳＩＤのようなワイヤレスアクセスポイント識別子の配信の利点は、当該識別子を送信された識別子と比較することができ、これがスプーフィングの試みかどうか決定することができることである。アップデート日時の使用の利点は、損なわれたワイヤレスアクセスポイントが最終的に無視されることを保証し得ることである。これらのすべての技術は、実施されると、ＷＬＡＮにおける位置決定のセキュリティおよび有効性を著しく増加させる。
【０１１１】
モバイルコンピューティングデバイスを構成するための位置情報の使用を次に議論する。１つの例示的なアプローチでは、モバイルコンピューティングデバイス１２は、アクセスポイント１４によって供給される位置情報を使用してデバイスの国または管轄を決定する。１つのそのようなアプローチでは、モバイルコンピューティングデバイス１２は、モバイルコンピューティングデバイスの使用に課され得る任意の制限を決定するためにこの情報を使用する。
【０１１２】
モバイルコンピューティングデバイス１２の動作についての要件は、国ごとに異なり、最初に国を入る際に、当該国に特定的なルールを決定するのは難しい。現在まで、デバイス１２が、国およびその国についてのルールを決定するのを支援することに利用可能である技術は存在しない。同時に、デバイス１２が新しいＷｉ−Ｆｉ環境に入ると、その自国のチャネル上でスキャンすることを試みる。これは、現在デバイスがある国が、自国のものと異なるＷｉ−Ｆｉチャネルを使用する場合に問題になり得る。たとえば、米国は、チャネル１〜１１の使用を認めている一方、日本は、チャネル１〜１３およびいくつかの場合にチャネル１４の使用を認めている。日本から米国への訪問者は、チャネル１２〜１４を使用することを認められないが、当該訪問者のモバイルコンピューティングデバイスは、その制限を認識しないか、または、その制限上で作動する。
【０１１３】
この問題に対応するための１つのアプローチは、モバイルコンピューティングデバイス１２に、マップ座標に関してモバイルコンピューティングデバイス１２の位置を通知するだけでなく、当該位置の国または管轄を通知するよう、ワイヤレスアクセスポイント１４によって送信される位置情報を使用することである。モバイルコンピューティングデバイス１２は、管轄を決定し、かつ、それに従って動作のためにＷｉ−Ｆｉ帯域を選択するようワイヤレスアクセスポイント１４から受信される国情報を使用し得る。
【０１１４】
別の例示的なアプローチでは、モバイルコンピューティングデバイス１２は、図５Ａおよび図５Ｂに示されるとともに図１０において上で議論したタプルのようなタプルに含まれる情報を使用して緯度および経度の関数として国を決定する。
【０１１５】
図１１は、本開示の１つ以上の局面に従った、モバイルコンピューティングデバイスが、アクセスポイント位置情報において送信される国識別子に基づいてスキャンするようにＷｉ−Ｆｉチャネルを選択する動作の例示的なモードを示すフローチャートである。図１１は、図１のシステム１０の文脈において以下に記載される。たとえば、本開示の１つ以上の局面に従って、モバイルコンピューティングデバイス１２の位置を決定するために、かつ、国と、その国におけるモバイルコンピューティングデバイス１２の動作に対する制限とを決定するために、ワイヤレスアクセスポイント１４は動作１２０を実行し得、モバイルコンピューティングデバイス１２は動作１２２〜１２６を実行し得る。
【０１１６】
１つの例示的なアプローチでは、各アクセスポイント１４は、位置インジケータを位置情報の部分として発行する。たとえば、アクセスポイントは、アクセスポイント１４が位置する国についての国コードを位置インジケータとして発行し得る（１２０）。デバイス１２は、新しい位置に入ると、位置情報を含むビーコンについて、すべての利用可能チャネル上でリッスンし、そのような位置情報において国コードを検出すると（１２２）、チャネル制限をレビューし（１２４）、その管轄について許可されたチャネル上のみ通信を行う（１２６）。１つのそのようなアプローチでは、緯度および経度、トークンまたはその両方に基づいて、国コードが期待された国コードとマッチしない場合、当該国コードは無視される。これが発生した場合、デバイス１２は、信頼されたアクセスポイント１４から受信される他の位置情報にのみ基づいて国コードを決定し得る。
【０１１７】
１つの例示的なアプローチでは、管理者によって有効化される場合のみ、アクセスポイント１４は国コードを発行する。そのようなアプローチは、たとえば旅行者がその国へ到着する位置でのみ国コードが有効化され得るという点において有利である。国コードを送信するオーバーヘッドは他の位置では回避される。
【０１１８】
１つの例示的なアプローチでは、トークンは国情報を伝達するために使用される。１つのそのようなアプローチでは、モバイルコンピューティングデバイス１２は、トークンを受信し、位置インジケータコードをデコードし、デバイス１２上でメモリにアクセスし、これにより、その国において許可されたチャネルを決定する。さらに、トークンは、「駐車場の３階」、都市もしくは国、または、デバイス１２のユーザによって自身の位置を確定するのに使用され得る他の情報といった位置情報を伝達するために使用され得る。
【０１１９】
図１２Ａは、本開示の１つ以上の局面に従った、国識別子ベースの例示的な（緯度，経度，トークン）トリプルを示す。図１２Ａに示される例において、位置情報は、緯度５０２、経度５０４およびトークン５０６を含むトリプル６００として送信される。トークン５０６は、図１１の議論において上述されたように、モバイルコンピューティングデバイス１２についての現在の国または管轄を決定する際に使用される国識別子６０２を含む。さらに、トークン５０６は、いくつかの例において、ある文脈内でその位置を表示するようモバイルコンピューティングデバイス１２によって使用される記述情報を含む。たとえば、トークン５０６は、モバイルコンピューティングデバイス１２によって受信されると、モバイルコンピューティングデバイス１２の位置を示すマップにラベル付けするために使用される、「４階駐車場」のようなテキストを含み得る。
【０１２０】
図１２Ｂは、本開示の１つ以上の局面に従った、国識別子ベースの例示的な署名された（緯度，経度，トークン，ＢＳＳＩＤ）タプルを示す。図１２Ｂに示される例では、位置情報は、緯度５０２、経度５０４、トークン５０６およびソース識別子５０８を含むタプル６２０として送信される。図１２Ｂに示される例では、ソース識別子５０８は、位置情報を送信したと考えられるワイヤレスアクセスポイントのベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）である。モバイルコンピューティングデバイス１２は、タプル６２０を受信し、タプル６２０が予期された信頼された位置サービス１８からであるということを照合し、その後、タプル６２０がタプル６２０を送信したワイヤレスアクセスポイントからであり、タプル６２０におけるＢＳＳＩＤにマッチするＢＳＳＩＤを有するということを照合する。いくつかの例示的なアプローチでは、信頼されたプロバイダ１８は、公開鍵５１２によりタプル６２０に署名する。
【０１２１】
図１２Ａを参照して上述されたように、トークン５０６は、いくつかの例において、図１１の議論において上述されたようにモバイルコンピューティングデバイス１２についての現在の国または管轄を決定する際に使用される国識別子６０２を含む。さらに、トークン５０６は、いくつかの例において、ある文脈内でその位置を表示するようモバイルコンピューティングデバイス１２によって使用される記述情報を含む。
【０１２２】
付記１．位置データに基づいて位置プロバイダによってワイヤレスアクセスポイントの位置を決定することを含み、位置データは複数のネットワークデバイスの各々からの位置データを含んでおり、各ネットワークデバイスについての位置データは、ネットワークデバイスの位置と、ワイヤレスアクセスポイントと各ネットワークデバイスとの間の距離を表すデータと含んでおり、さらに、ワイヤレスアクセスポイントの位置に基づいて、ワイヤレスアクセスポイントについての位置情報を位置プロバイダによって生成することと、署名された位置情報を形成するためにクレデンシャルにより位置情報に署名することと、署名された位置情報をワイヤレスアクセスポイントに通信することとを含む、方法。
【０１２３】
付記２．位置を決定することは、ワイヤレスアクセスポイントから受信される位置データを、別のソースからの位置データと比較することと、ワイヤレスアクセスポイントから受信される位置データが、別のソースからの位置データとは異なるしきい値量より大きい場合、ワイヤレスアクセスポイントの位置を生成するために使用するように位置データを決定することとを含む、付記１に記載の方法。
【０１２４】
付記３．ネットワークデバイスは、位置が分かっているモバイルコンピューティングデバイスを含む、付記１〜２のいずれか１つに記載の方法。
【０１２５】
付記４．位置情報を生成することは、緯度および経度で表現されるワイヤレスアクセスポイントの位置を決定することと、位置情報においてワイヤレスアクセスポイントの緯度および経度を記録することとを含む、付記１〜３のいずれか１つに記載の方法。
【０１２６】
付記５．位置情報を生成することは、緯度および経度で表現されるワイヤレスアクセスポイントの位置を決定することと、トークンならびにワイヤレスアクセスポイントの緯度および経度を含むタプルを形成することと、ワイヤレスアクセスポイントについての位置情報内にタプルを記録することとを含む、付記１〜４のいずれか１つに記載の方法。
【０１２７】
付記６．ワイヤレスアクセスポイントは、ベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ：basic service set identification）を含んでおり、タプルを形成することは、タプル内にワイヤレスアクセスポイントのＢＳＳＩＤを記録することを含む、付記１〜５のいずれか１つに記載の方法。
【０１２８】
付記７．位置情報を生成することは、他のソースから受信される位置情報を、ワイヤレスアクセスポイントから受信される位置データと比較することを含む、付記１〜６のいずれか１つに記載の方法。
【０１２９】
付記８．ネットワーク接続と、メモリと、１つ以上のプロセッサとを含み、各プロセッサはメモリに接続されており、プロセッサは、メモリに格納される位置データに基づいてワイヤレスアクセスポイントの位置を決定することを行うように構成されており、位置データは複数のネットワークデバイスの各々からの位置データを含んでおり、各ネットワークデバイスについての位置データは、ネットワークデバイスの位置と、ワイヤレスアクセスポイントとネットワークデバイスとの間の距離を表すデータと含んでおり、プロセッサはさらに、ワイヤレスアクセスポイントについて決定された位置に基づいて、ワイヤレスアクセスポイントについての位置情報を生成することと、署名された位置情報を形成するためにクレデンシャルによりワイヤレスアクセスポイントについての位置情報に署名することと、署名された位置情報をメモリに格納することと、署名された位置情報をアクセスポイントに通信することとを行うように構成される、位置プロバイダ。
【０１３０】
付記９．プロセッサは、他のソースから受信される位置情報をメモリに格納することと、格納された位置情報をワイヤレスアクセスポイントから受信される位置データにおける情報と比較することと、それに従って位置データにおける情報を修正することとを行うようにさらに構成される、付記８に記載の位置プロバイダ。
【０１３１】
付記１０．ワイヤレスアクセスポイントの位置を決定することは、ワイヤレスアクセスポイントから受信されワイヤレスアクセスポイントと特定のネットワークデバイスとの間の距離を表すデータを、別のソースから受信される距離データと比較することと、他のソースから受信される距離データの関数として、ワイヤレスアクセスポイントと特定のネットワークデバイスとの間の距離を表すデータを修正することとを含む、付記８〜９のいずれか１つに記載の位置プロバイダ。
【０１３２】
付記１１．位置プロバイダと、位置プロバイダに接続される複数のワイヤレスアクセスポイントとを含み、複数のアクセスポイントは複数の第１のワイヤレスアクセスポイントを含んでおり、さらに、複数のワイヤレスアクセスポイントのうちの１つ以上のワイヤレスアクセスポイントに接続するように構成されるワイヤレスインターフェイスを含むモバイルコンピューティングデバイスを含み、位置プロバイダは、各ワイヤレスアクセスポイントについての位置を決定し、対応するワイヤレスアクセスポイントに位置情報として位置を通信し、第１のワイヤレスアクセスポイントの各々についての位置情報は、位置プロバイダに関連付けられるデジタル署名で署名されており、複数のワイヤレスアクセスポイントのうちの各ワイヤレスアクセスポイントは、そのワイヤレスアクセスポイントについての位置情報を無線送信し、モバイルコンピューティングデバイスは、第１のワイヤレスアクセスポイントによって送信される署名された位置情報を受信し、各第１のワイヤレスアクセスポイントについての署名された位置情報が位置プロバイダによって署名されたことを照合し、位置プロバイダによって署名されていると照合された位置情報を有する第１のワイヤレスアクセスポイントは、照合された第１のワイヤレスアクセスポイントであり、モバイルコンピューティングデバイスは、照合された第１のワイヤレスアクセスポイントの各々への距離を計算し、モバイルコンピューティングデバイスは、照合された第１のワイヤレスアクセスポイントの各々への距離と、照合された第１のワイヤレスアクセスポイントの各々から受信される位置情報とに基づき、モバイルコンピューティングデバイスの位置を決定する、システム。
【０１３３】
付記１２．複数のワイヤレスアクセスポイントはさらに、１つ以上の第２のワイヤレスアクセスポイントを含んでおり、各第２のワイヤレスアクセスポイントは、モバイルコンピューティングデバイスに、その第２のワイヤレスアクセスポイントについての位置情報を送信し、モバイルコンピューティングデバイスは、第２のワイヤレスアクセスポイントの各々への距離を計算し、照合された第１のワイヤレスアクセスポイントの各々への距離と、第２のワイヤレスアクセスポイントの各々への距離と、第２のワイヤレスアクセスポイントの各々から受信される位置情報と、照合された第１のワイヤレスアクセスポイントの各々から受信される位置情報とに基づき、モバイルコンピューティングデバイスの位置を決定する、付記１１に記載のシステム。
【０１３４】
付記１３．位置情報は、ソース識別子および最終アップデートインジケータを含むセキュリティデータグループから選択されるセキュリティデータを含む、付記１１〜１２のいずれか１つに記載のシステム。
【０１３５】
付記１４．位置情報はタプルとして送信され、タプルは、緯度と、経度と、セキュリティデータを含むトークンとを含む、付記１１〜１３のいずれか１つに記載のシステム。
【０１３６】
付記１５．モバイルコンピューティングデバイスは、セキュリティデータを使用して、ワイヤレスアクセスポイントから受信される位置情報をチェックする、付記１１〜１４のいずれか１つに記載のシステム。
【０１３７】
付記１６．ソース識別子は、ワイヤレスアクセスポイントのベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）を含んでおり、モバイルコンピューティングデバイスは、位置情報におけるＢＳＳＩＤが、位置情報を送信するワイヤレスアクセスポイントのＢＳＳＩＤとマッチすることを照合する、付記１１〜１５のいずれか１つに記載のシステム。
【０１３８】
付記１７．位置情報は、ワイヤレスアクセスポイントのベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）を含んでおり、モバイルコンピューティングデバイスは、位置情報を送信するワイヤレスアクセスノードのＢＳＳＩＤが、ワイヤレスアクセスノードによって送信される位置情報に含まれるＢＳＳＩＤとマッチすることを照合し、位置情報におけるＢＳＳＩＤが、位置情報を送信するワイヤレスアクセスポイントのＢＳＳＩＤとマッチしない場合、モバイルコンピューティングデバイスの位置を決定するために位置情報が使用されるのを防止する、付記１１〜１６のいずれか１つに記載のシステム。
【０１３９】
付記１８．モバイルコンピューティングデバイスは、ＢＳＳＩＤによってインデキシングされる位置情報のテーブルを維持し、位置情報のテーブルは、信頼された位置情報がワイヤレスアクセスポイントから利用可能ではない場合、そのワイヤレスアクセスポイントのワイヤレスアクセスポイント位置を得るために使用される、付記１１〜１７のいずれか１つに記載のシステム。
【０１４０】
付記１９．特定のワイヤレスアクセスポイントについての位置情報は、アップデート時間を含んでおり、位置情報が古くなっていることをアップデート時間が示す場合、モバイルコンピューティングデバイスは、その特定のワイヤレスアクセスポイントについての位置情報を廃棄する、付記１１〜１８のいずれか１つに記載のシステム。
【０１４１】
付記２０．モバイルコンピューティングデバイスは、位置プロバイダに通信可能に接続されており、通信可能に接続されるモバイルコンピューティングデバイスは、複数のワイヤレスアクセスポイントの各々によって送信される位置情報に基づいて決定される自身の位置を照合のために位置プロバイダに通信する、付記１１〜１９のいずれか１つに記載のシステム。
【０１４２】
付記２１．複数のワイヤレスアクセスポイントの各々からそれぞれの署名された位置情報をワイヤレスデバイスによって受信することを含み、それぞれの署名された位置情報は、対応するワイヤレスアクセスポイントについての位置情報を含んでおり、さらに、それぞれの署名された位置情報に基づいて、それぞれの署名された位置情報のうちのいずれかが損なわれているかどうかをワイヤレスデバイスによって決定することと、損なわれていない署名された位置情報と、損なわれていない署名された位置データを有する各ワイヤレスアクセスポイントとワイヤレスデバイスとの間の距離を表すデータとに基づいて、ワイヤレスデバイスによってワイヤレスデバイスの位置を決定することとを含む、方法。
【０１４３】
付記２２．決定することは、照合のために位置プロバイダにワイヤレスデバイスの位置を送信することを含む、付記２１に記載の方法。
【０１４４】
付記２３．署名された位置情報は、最終アップデートインジケータを含んでおり、レビューすることは、アップデート時間が予め規定された量の時間より古い場合、署名された位置情報を損なわれているものとして処理することを含む、付記２１〜２２のいずれか１つに記載の方法。
【０１４５】
付記２４．署名された位置情報は、署名された位置情報を送信したワイヤレスアクセスポイントの位置を示す（緯度，経度，トークン）タプルを含んでおり、トークンはセキュリティデータを含んでおり、レビューすることは、セキュリティデータをレビューすることと、セキュリティデータが予想されたものでない場合、署名された位置情報を損なわれているものとして処理することとをさらに含む、付記２１〜２３のいずれか１つに記載の方法。
【０１４６】
付記２５．トークンは、トークンを含む署名された位置情報を送信するワイヤレスアクセスポイントのベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）とマッチするべきＢＳＳＩＤを含んでおり、レビューすることは、署名された位置情報からのＢＳＳＩＤを、署名された位置情報を送信したワイヤレスアクセスポイントのＢＳＳＩＤと比較することと、署名された位置情報からのＢＳＳＩＤが、署名された位置情報を送信したワイヤレスアクセスポイントのＢＳＳＩＤとマッチしない場合、署名された位置情報を損なわれているものとして処理することとを含む、付記２１〜２４のいずれか１つに記載の方法。
【０１４７】
付記２６．ワイヤレスデバイスはモバイルコンピューティングデバイスであり、位置情報は位置インジケータを含んでおり、モバイルコンピューティングデバイスは、位置インジケータに基づいてオペレーティングパラメータを変更する、付記２１〜２５のいずれか１つに記載の方法。
【０１４８】
付記２７．ワイヤレスデバイスはモバイルコンピューティングデバイスであり、位置情報は国コードを含んでおり、モバイルコンピューティングデバイスは、国コードに基づいて、スキャンするべきＷｉ−Ｆｉ帯域を選択する、付記２１〜２６のいずれか１つに記載の方法。
【０１４９】
付記２８．デバイスであって、メモリと、ワイヤレスインターフェイスと、メモリおよびワイヤレスインターフェイスに接続されるプロセッサとを含み、プロセッサは、複数のワイヤレスアクセスポイントの各々から受信される署名された位置情報と、モバイルコンピューティングデバイスと各ワイヤレスアクセスポイントとの間の距離を表すデータとをメモリに格納することを行うように構成されており、署名された位置情報は各ワイヤレスアクセスポイントについての位置を識別しており、プロセッサはさらに、いずれかのワイヤレスアクセスポイントの署名された位置情報が損なわれているかどうか決定するために、署名された位置情報をレビューすることと、損なわれていない署名された位置情報と、損なわれていない署名された位置データを有する各ワイヤレスアクセスポイントとモバイルコンピューティングデバイスとの間の距離を表すデータとに基づいて、モバイルコンピューティングデバイスの位置を決定することと、モバイルコンピューティングデバイスの位置をメモリに格納することとを行うように構成される、デバイス。
【０１５０】
付記２９．各ワイヤレスアクセスポイントについての署名された位置情報は、署名された位置情報を送信するワイヤレスアクセスポイントのＢＳＳＩＤとマッチするべきベーシックサービスセットアイデンティフィケーション（ＢＳＳＩＤ）を含んでおり、プロセッサはさらに、署名された位置情報からのＢＳＳＩＤを、署名された位置情報を送信したワイヤレスアクセスポイントのＢＳＳＩＤと比較することと、署名された位置情報からのＢＳＳＩＤが、署名された位置情報を送信したワイヤレスアクセスポイントのＢＳＳＩＤとマッチしない場合、署名された位置情報を損なわれているものとして処理することとを行うように構成される、付記２８に記載のデバイス。
【０１５１】
付記３０．複数のワイヤレスアクセスポイントはさらに、１つ以上のセキュアでないワイヤレスアクセスポイントを含んでおり、セキュアでないワイヤレスアクセスポイントは、署名されていない位置情報を送信し、プロセッサはさらに、セキュアでないワイヤレスアクセスポイントの各々への距離を計算するように構成されており、プロセッサはさらに、損なわれていない署名された位置情報を有するワイヤレスアクセスポイントの各々への距離と、セキュアでないワイヤレスアクセスポイントの各々への距離と、セキュアでないワイヤレスアクセスポイントから受信される署名がされていない位置情報と、損なわれていない署名がされている位置とに基づき、モバイルコンピューティングデバイスの位置を決定するように構成される、付記２８〜２９に記載のデバイス。
【０１５２】
１つ以上の例では、記載される機能は、ハードウェア、ソフトウェア、ファームウェア、または、その任意の組み合わせにおいて実現され得る。当該機能は、ソフトウェアで実現される場合、１つ以上の命令またはコードとして、コンピュータ読取可能媒体上に格納され得るか、またはコンピュータ読取可能媒体を介して送信され得、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ読取可能媒体は、コンピュータ読取可能記憶媒体を含み得、データ記憶媒体のような有形的な媒体に対応するか、または、たとえば通信プロトコルに従ってある場所から別の場所へコンピュータプログラムの転送を促進する任意の媒体を含む通信媒体に対応する。これにより、コンピュータ読取可能媒体は一般に、（１）一時的でない有形的なコンピュータ読取可能記憶媒体、または、（２）信号もしくは搬送波のような通信媒体に対応し得る。データ記憶媒体は、この開示に記載される技術の実現のために命令、コードおよび／またはデータ構造を抽出するよう、１つ以上のコンピュータまたは１つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラムプロダクトはコンピュータ読取可能媒体を含み得る。
【０１５３】
限定ではなく例として、そのようなコンピュータ読取可能記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭもしくは他の光学ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令またはデータ構造の形態で所望のプログラムコードを格納するために使用され得るとともにコンピュータによってアクセスされ得る任意の他の記憶媒体を含み得る。さらに、如何なる接続も適宜コンピュータ読取可能媒体と称される。たとえば、同軸ケーブル、光ファイバーケーブル、ツイストペア（twisted pair）、デジタル加入者線（ＤＳＬ： digital subscriber line）、または、赤外線、無線およびマイクロ波のようなワイヤレス技術を使用して命令がウェブサイト、サーバまたは他のリモートソースから送信される場合、当該同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または、赤外線、無線およびマイクロ波のようなワイヤレス技術が、媒体の定義に含まれる。しかしながら、コンピュータ読取可能記憶媒体およびデータ記憶媒体は、接続、搬送波、信号または他の一時的な媒体を含んでおらず、その代りに、一時的でない有形的な記憶媒体に向けられているということが理解されるべきである。本願明細書において使用されるようなディスク（disk）およびディスク（disc）は、コンパクトディスク（ＣＤ： compact disc）、レーザーディスク（登録商標）（laser disc）、光学ディスク（optical disc）、デジタルバーサタイルディスク（ＤＶＤ： digital versatile disc）、フロッピー（登録商標）ディスク（floppy disk）およびブルーレイ（登録商標）ディスク（Blu-ray（登録商標）disc）を含んでおり、ディスク（disk）は通常磁気的にデータを再生するものであり、ディスク（disc）はレーザーにより光学的にデータを再生するものである。上記のものの組み合わせもコンピュータ読取可能媒体の範囲内に含まれるべきである。
【０１５４】
命令は、１つ以上のデジタル信号プロセッサ（ＤＳＰ： digital signal processor）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ： application specific integrated circuit）、フィールドプログラマブルロジックアレイ（ＦＰＧＡ：field programmable logic array）、または、他の同等な集積論理回路または離散論理回路といった１つ以上のプロセッサによって実行され得る。したがって、本願明細書において使用される「プロセッサ」という用語は、本願明細書において記載される技術の実現に好適である上記の構造のいずれかまたは任意の他の構造を指し得る。さらに、いくつかの局面では、本願明細書において記載される機能は、専用ハードウェアおよび／またはソフトウェアモジュール内で提供され得る。さらに、当該技術は、１つ以上の回路または論理要素において完全に実現され得る。
【０１５５】
この開示の技術は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえばチップセット）を含むさまざまなデバイスまたは装置において実現され得る。さまざまなコンポーネント、モジュールまたはユニットはこの開示において、開示された技術を実行するように構成されるデバイスの機能的な局面を強調するよう記載されているが、必ずしも異なるハードウェアユニットによる実現を必要としない。むしろ、上述したように、さまざまなユニットは、あるハードウェアユニットにおいて組み合わされ得るか、または、好適なソフトウェアおよび／またはファームウェアに関連して、上述したように１つ以上のプロセッサを含む協働可能であるハードウェアユニットの集合によって提供され得る。
【０１５６】
さまざまな例が記載された。上記の例はＷｉ−Ｆｉネットワークの文脈において記載されているが、上記の技術は、任意のワイヤレスローカルエリアネットワークにおいて使用され得る。これらの例および他の例は添付の請求の範囲の範囲内にある。
【図１】
0006694952.tif 000002
【図２】
0006694952.tif 000003
【図３】
0006694952.tif 000004
【図４】
0006694952.tif 000005
【図５Ａ】
0006694952.tif 000006
【図５Ｂ】
0006694952.tif 000007
【図６】
0006694952.tif 000008
【図７】
0006694952.tif 000009
【図８】
0006694952.tif 000010
【図９】
0006694952.tif 000011
【図１０】
0006694952.tif 000012
【図１１】
0006694952.tif 000013
【図１２Ａ】
0006694952.tif 000014
【図１２Ｂ】
0006694952.tif 000015