(57)【要約】  安全なロケーション・シェアリング・システムは、発信者に、発信者のロケーションを受信者とシェアすることを可能にする。発信側の各デバイスは、そのデバイスのロケーション情報をその指定精細度を付加して、生成し、暗号化し、そしてさらに、１つの以上の受信側デバイスに配布されるように、配布サービスに発信する。配布サービスはロケーション情報の安全な配布を提供するものの、発信者の高精度のロケーション情報には、暗号化されたままでいるためにアクセスできない。暗号化の解除は受信側デバイスによりなされる。発信者は発信者ロケーション情報を、異なる受信者と、様々な細精度レベルを設定してシェアリングをすることができる。発信者は、少なくとも２つのディメンションのロケーション情報の細精度レベルを定義できる：１つは空間的、他は時間的である。より低い精細度のロケーション・シェアリングの場合には、発信者デバイスのロケーションを乱数化或いは不透明化する。【選択図】  図１Ｂ
2013541260.tif 000002
【特許請求の範囲】
【請求項１】
デバイスの１つ以上のハードウエアプロセッサにより実行される、コンピュータ実施の方法であって、
前記デバイスのロケーションを記述するロケーション情報を取得する工程と、
前記ロケーション情報の精細度の指定を受信する工程と、
指定された前記精細度に基づいて前記ロケーション情報を修正する工程と、
修正された前記ロケーション情報を暗号化する工程と、
暗号化された前記ロケーション情報を、一人または複数人の受信者に対する配布のために、配布サービスに発信する工程、
とを具備することを特徴とする方法。
【請求項２】
ロケーション情報の精細度の指定を受信する前記工程は：  
前記ロケーション情報の空間的精細度の指定を受信する工程を含むことを特徴とする請求項１に記載の方法。
【請求項３】
ロケーション情報の精細度の指定を受信する前記工程は：  
前記ロケーション情報の時間的精細度の指定を受信する工程を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記ロケーション情報を修正する前記工程は：  
前記モバイル装置のロケーションを、このモバイル装置の前記修正されたロケーションが、このモバイル装置のロケーションを含む地理的エリアの中にあるように、乱数化する工程を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記修正されたロケーション情報を暗号化するステップは：
前記ロケーション情報について指定された精細度に関連付けられた公開ロケーション鍵を用いて、前記修正されたロケーション情報を暗号化するステップを具備する、ことを特徴とする請求項１に記載の方法。
【請求項６】
さらに、前記一人または複数人の受信者に関連付けられた公開メッセージ鍵を用いて、秘密ロケーション鍵を含むメッセージを暗号化する工程と、
前記メッセージを、前記一人または複数人の受信者に配布するために、前記配布サービスに送信する工程とを含む、ことを特徴とする請求項１の方法。
【請求項７】
携帯デバイスの１つ以上のハードウエアプロセッサにより実行される、コンピュータ実施の方法であって、
発信側デバイスから暗号化されたロケーション情報を受信する工程であって、このロケーション情報は、高精細度のロケーションから、指定の精細度に従って修正されたロケーション情報である、工程と、
前記発信側デバイスによって提供される復号情報を用いて前記ロケーション情報を復号化する工程、
とを具備することを特徴とする方法。
【請求項８】
前期復号情報は前記発信者側デバイスからもたらされた秘密ロケーション鍵を含むことを特徴とする請求項７の方法。
【請求項９】
さらに、前記発信側デバイスから暗号化されたメッセージを受信する工程と、
前記メッセージを復号化して秘密ロケーション鍵を復号化する工程、
とを具備することを特徴とする請求項８の方法。
【請求項１０】
前記デバイスの表示装置上に地図を表示し、
前記復号化されたロケーション情報に基づいて、前記地図の上に、前記発信者デバイスのロケーションを含む地理的領域を前記地図上に画成する図形オブジェクトを重ねる、ことを特徴とする請求項７の方法。
【請求項１１】
可変精細度のロケーション情報をシェアするために、
プロセッサと、
前記プロセッサに接続されたメモリと、を有するシステムであって、
このシステムは、前記プロセッサにより実行されると、このプロセッサをして、
前記デバイスのロケーションを記述するロケーション情報を取得する工程と、
前記ロケーション情報の精細度の指定を受信する工程と、
指定された前記精細度に基づいて前記ロケーション情報を修正する工程と、
修正された前記ロケーション情報を暗号化する工程と、
暗号化された前記ロケーション情報を、一人または複数人の受信者に対する配布のために、配布サービスに発信する工程、
を含む命令群を実行させるべく、前記メモリは、当該命令群を記憶することを特徴とするシステム。
【請求項１２】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記ロケーション情報の精細度の指定を受信する工程と、
前記ロケーション情報の空間的精細度の指定を受信する工程と、
を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項１１に記載のシステム。
【請求項１３】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記ロケーション情報の時間的精細度の指定を受信する工程と、
を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項１１に記載のシステム。
【請求項１４】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
携帯デバイスのロケーション情報を、その携帯デバイスの修正後のロケーションがこのデバイスのロケーションを含む１つの地理的領域の内部にあるように、乱数化する工程、
を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項１１に記載のシステム。
【請求項１５】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記一人または複数人の受信者に関連付けられた公開メッセージ鍵を用いて、秘密ロケーション鍵を含むメッセージを暗号化する工程と、
前記メッセージを前記配布サービスに前記一人または複数人の受信者に配布する目的で送信する工程と、を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項１１に記載のシステム。
【請求項１６】
可変精細度のロケーション情報をシェアするために、
プロセッサと、
前記プロセッサに接続されたメモリと、
を有するシステムであって、
このシステムは、前記プロセッサにより実行されると、このプロセッサをして、
発信側デバイスから暗号化されたロケーション情報を受信する工程であって、このロケーション情報は、高精細度のロケーションから、指定の精細度に従って修正されたロケーション情報である、工程と、
前記発信側デバイスによって提供される復号情報を用いて前記ロケーション情報を復号化する工程、
とを含む動作を前記プロセッサに実行させる、命令である、ことを特徴とするシステム。
【請求項１７】
前記情報を復号化するステップは、発信者デバイスによりもたらされる、ことを特徴とする請求項１６のシステム。
【請求項１８】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記発信側デバイスから暗号化されたメッセージを受信する工程と、
前記メッセージを復号化して秘密ロケーション鍵を復号化する工程、
とを具備することを特徴とする請求項１７のシステム。
【請求項１９】
地図を表示する表示装置であって、前記復号化されたロケーション情報に基づいて、前記地図の上に、前記発信者デバイスのロケーションを含む地理的領域を前記地図上に画成する図形オブジェクトを重ねる、表示装置を具備する、請求項１６のシステム。
【請求項２０】
前記メッセージと公開メッセージ鍵とは、２つの異なる通信チャンネル越しに受け取る、請求項１８のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
本開示は、広くは、多数のデバイス間のロケーション・シェアリングに関連する。
【０００２】
複数人でロケーション（場所）を共有することは現代のモバイル端末装置にとってはポピュラーなアプリケーションである。既存のロケーション・シェアリングシステムは、ユーザに、ロケーション情報の精細度に対する制御を提供していない。また、ロケーション・シェアリングをサポートするネットワークは、外部からの攻撃に対する防御はなされても、シェアされているロケーション情報については、内々には通じているものである。ユーザは、自分のロケーション情報をハンドリングしているサーバを稼動している会社が、ユーザのロケーション情報の歓迎されざる使用を行わない筈のものとして信頼せざるを得ない。結局のところ、既存のロケーション・シェアリングシステムは、ロケーション情報の受け手に対して、一時的にせよ、より高い特権を付与する手段を提供するものではない。
【発明の概要】
【０００３】
本開示の安全なロケーション・シェアリングシステムは、発信者（パブリッシャー）側に、発信者のロケーションを受信者（サブスクライバー）側との間でシェアリングすることを許すものである。発信者側の個々のデバイス（装置）は、そのロケーション情報を、指定した精細度で生成し、暗号化し、受信者側の１つ以上のデバイスに配布するために配布サービスに対して発信する。この配布サービスは、ロケーション情報の配布リストに従った安全な配布を提供するものである。しかし、発信者側の高精細度のロケーション情報は、受信者側のデバイスで復号化されるまでは暗号化されたままなので、配布サービスは高精細度のロケーション情報にアクセスできないことになる。発信者側は、自分のロケーション情報を、異なる受信者若しくは受信者グループとの間で、夫々異なるレベルの精細度に従ってシェアさせることができる。発信者は、ロケーション情報の精細度について少なくとも２つのディメンション若しくは次元、即ち、空間ディメンションと時間ディメンションの２つ、を選択できる。より低精細度のロケーション情報シェアリングに対しては、発信者デバイスは、その発信者デバイスの精細なロケーションを、乱数化処理し、または別の方法で、「ぼんやり」したものにすることができる。発信者は、一人若しくはグループの受信者を、より低いロケーション精細度またはより高いロケーション精細度方向に、発信者側デバイスに、新たなキー対を生成することにより、変更設定することができる。
【０００４】
実施形態としてのこのコンピュータ実施の方法は、発信側デバイスの１つ以上のハードウエア・プロセッサによって実行される。本方法は、発信側デバイスのロケーションを表す情報を取得することにより始まり、当該ロケーション情報の精細度の指定が得られる。その精細度は空間的な、そして／または、時間的なものである。ロケーション情報は、指定の精細度に従って修正される。修正されたロケーション情報は公開ロケーション鍵を用いて暗号化してもよい。暗号化されたロケーション情報は、１つ以上の受信側デバイスに配布されるべく配布サービスに発信することができる。秘密ロケーション鍵を用いて受信側デバイスにある当該修正されたロケーション情報を復号化することができる。この秘密ロケーション鍵は発信側デバイスで暗号化されたメッセージに含めさせることができる。当該メッセージは受信者側に配布する目的で上記配布サービスに送信される。秘密のロケーション鍵は受信者側により、受信者側の秘密メッセージ鍵を用いて暗号化されたメッセージから復号化される。
【０００５】
実施形態としてのコンピュータ実施の方法は、受信側デバイスの１つ以上のハードウエア・プロセッサによって実行される。本方法は、受信者側デバイスが発信側デバイスからの暗号化されたロケーション情報を受信することにより始まるものであり、ここで、受信したロケーション情報は、高精細度のロケーション情報を、指定の精細度で修正しておいたものである。秘密ロケーション鍵は、発信者に関連付けられた公開メッセージ鍵で発信者側デバイススにより暗号化されたメッセージに含まれており、受信側デバイスが受け取ったそのメッセージの中に含まれる。この秘密ロケーション鍵は上記メッセージから発信者の対応秘密メッセージ鍵を用いて復元することができる。受信側デバイスはその秘密ロケーション鍵を用いて当該ロケーション情報を復元することができる。復元されたロケーション情報は受信者側デバイス上に表示され、或いは、当該デバイスでランしているアプリケーションにより用いられる。
【０００６】
様々な精細度のロケーション・シェアリングの実施形態を１つ以上提案することにより、次の長所のうちの、１つまたはそれ以上の長所を提供することができる、その長所とは、（１）発信者側が、シェアリングされている自分のロケーションの精細度を、自分で制御できること、（２）ロケーション・シェアリングを提供する側のネットワーク自体は暗号化されたロケーション情報にアクセスすることはできず、このロケーション情報は、適正なアクセス権限（例えば秘密鍵）を有している受信者側デバイスによってのみ復元できること、（３）発信者側は、より高い或いはより低い精細度の発信者ロケーション情報に一時的にアクセスする権限を受信者に付与することができること。
【０００７】
様々な精細度のロケーション・シェアリングの実施形態の詳細な説明が添付の図面並びに明細書によってなされている。
他の特長、側面、有利な点はそれら明細書、図面、そして特許請求の範囲により自ずと明らかになる。
【図面の簡単な説明】
【０００８】
【図１Ａ】図１Ａは可変精細度ロケーション・シェアリングシステムのブロック図である。
【図１Ｂ】図１Ｂは、あるロケーション・シェアリング・アプリケーションのユーザインターフェースの例を図示する。
【図１Ｃ】図１Ｃは可変精細度ロケーション・シェアリング用の公開鍵暗号系を説明する図である。
【図２】図２Ａは、送信側デバイスによって実行される可変精細度ロケーション・シェアリング方法にかかる処理フロー図であり、図２Ｂは、送信側デバイスによって実行される可変精細度ロケーション・シェアリング方法にかかる処理フロー図である。
【図３】図３Ａは、受信側デバイスによって実行される可変精細度ロケーション・シェアリング方法にかかる処理フロー図であり、図３Ｂは、受信側デバイスによって実行される可変精細度ロケーション・シェアリング方法にかかる処理フロー図である。
【図４】図４は、図１乃至３にて説明されている機能や処理を実現する送信側、受信側のデバイスのハードウエアブロック図である。  同じ番号は同じ種類のものを表す。
【発明を実施するための形態】
【０００９】
＜精細度可変のロケーション・シェアリング・システム＞
図１Ａは、精細度可変ロケーション・シェアリング・システム１００のブロック図である。実施形態のシステム１００は、互いにネットワーク１０４（例えばインターネット）を介して通信を行うことのできる、位置認識デバイス１０２ａ−１０２ｃと配布サービス１０６とを有する。デバイス１０２ａ乃至１０２ｃは、スマートフォン、ｅ−メールデバイス、ゲームデバイス、ラップトップコンピュータ、電子タブレット、メディアプレイヤー、その他の、通信機能を有するあらゆる位置認識デバイスなどのような、モバイル（携帯）デバイスを含む。デバイス１０２ａ−１０２ｃの各々は、ユーザ入力を容易にするためのユーザインターフェースを提示する表示面を有することができる。この表示面は、１つ以上の指またはスタイラスペンによる多重接触入力に応答可能な接触検知面であってよい。
【００１０】
実施形態のデバイス１０２ａ乃至１０２ｃは、現在のロケーション情報を決定し若しくは受信することができるものがある。例えば、１つ以上のデバイス１０２ａ乃至１０２ｃはグローバル・ポジショニング・システム（ＧＰＳ）を有し、または、それに接続可能である。他の例では、ロケーション情報は、デバイスに、無線通信ネットワーク送信機器（例えば、ＷｉＦｉ，  Ｃｅｌｌ−ＩＤ）や三角測量技術を用いてデバイス位置を決定するサービスにより、提供される。本実施例では、ロケーション情報は、位置座標（例えば、緯度、経度、高度）として、ゲートウエイ１０８やセルタワー（携帯電話基地局）１０６を介してデバイス１０２ｂに対して提供される。また、デバイス１０２ｃについては、ロケーション情報は無線ネットワークアクセス装置１１０（例えば無線ルーター）を介して提供されるが、デバイス１０２ａについては固定である。同図に示した例では、デバイス１０２ａはＣｈａｒｌｉｅにより操作され、デバイス１０２ｂはＡｌｉｃｅ、デバイス１０２ｃはＢｏｂにより操作されている。
【００１１】
配布サービス１０６は、発信側デバイスや受信側デバイスとの通信用の１つ以上のサーバコンピュータを有することができる。例えば、配布サービスは、電話通信キャリア業者またはインタネットサービスプロバイダ（ＩＳＰ）などであってよい。ある種の実施形態としては、配布サービス１０６は、公開鍵基盤（ＰＫＩ）における信頼できる第三者機関（ＴＴＰ）であってもよい。また、配布サービス１０６は民間または公共ネットワークの一部であってもよい。また、配布サービス１０６は、色々な情報、例えば、暗号化されたロケーション、受信者用配布リスト、公開鍵、証明書、ブラックリストなどの情報を記憶するための記憶装置であってよい。
【００１２】
図示の例では、Ａｌｉｃｅは自分のロケーション情報について、Ｂｏｂとの間では精細度の低いシェアリングを、Ｃｈａｒｌｉｅとの関係では精細度の高いシェアリングを望んでいる。「精細度の高いロケーション」をシェアリングすることは、発信側デバイスのロケーションを、それも、当該発信側デバイスで利用可能な位置決め技術によって提供されるままのロケーションを相手とシェアリングすることを意味する。従って、「精細度の高い（ｐｒｅｃｉｓｅ）ロケーション」とは必ずしも「正確（ｅｘａｃｔ）」なロケーションであることを意味しない。実際、「精細度の高いロケーション」は、当該発信側デバイスに装備された位置決め技術に固有の、或いは、その技術によって引き起こされる位置誤差故に、「正確なロケーション」とは異なるものである。「精細度の低い（ｉｍｐｒｅｃｉｓｅ）ロケーション」とは、当該発信側デバイスが現在位置しているところの、所定の地理的な領域をシェアリングすること意味する。ある例では、可変精細度のロケーション・シェアリングが、図１Ｃに関連して説明されるように、公開鍵暗号化を用いて実施することができる。
【００１３】
Ａｌｉｃｅ、Ｂｏｂ、Ｃｈａｒｌｉｅは彼らの夫々のデバイスにロケーション・シェアリング・アプリケーションを呼び出すことができる。ロケーション・シェアリング・アプリケーションの１つ以上のユーザインターフェースを用いて、Ａｌｉｃｅは、Ｂｏｂが彼女の精細度の低いロケーション情報を受信するように、また、Ｃｈａｒｌｉｅが精細度の高いロケーション情報を受信するように指定することができるものとする。例えば、Ａｌｉｃｅは、Ｃｈａｒｌｉｅと親密な関係を有し、それ故に、Ｃｈａｒｌｉｅと、彼女の精細度の高いロケーション情報をシェアしたいと願っている。他方、ＡｌｉｃｅのＢｏｂとの関連度は、Ｂｏｂが彼女の正確なロケーションを知らないようにする程度の、より低い親密さというものである。
【００１４】
デバイス１０２ｂでロケーション・シェアリング・アプリケーションを使い、Ａｌｉｃｅは自分の高精細度と低精細度のロケーション情報を配布サービス１０６に送信する。Ｃｈａｒｌｉｅについては、Ａｌｉｃｅの高精細度ロケーション情報（即ち、ＧＰＳ位置情報）がデバイス１０２ｂにて暗号化はされるが修正無しで送信される。Ｂｏｂについては、Ａｌｉｃｅの高精細度ロケーション情報は修正を受けて低精細度にされて暗号化される。双方の暗号化されたロケーション情報は配布サービス１０６に送信される。ＢｏｂとＣｈａｒｌｉｅを含む配布リストも、また、配布サービス１０６に送られる。この配布リストは、配布サービス１０６側に格納された予め定義の受信者リストであってよい。配布サービス１０６側は、この配布リストを用いてＡｌｉｃｅの低精細度ロケーション情報と高精細度ロケーション情報の夫々をＢｏｂとＣｈａｒｌｉｅの夫々に、図１Ｂに示されているように、指定の時間精細度（例えば、２時間毎、または、３０分毎の更新）に基づいて一度の更新で若しくは別々の更新で配布することができる。
【００１５】
Ａｌｉｃｅの高精細度と低精細度のロケーション情報は公開鍵暗号を用いて暗号化され且つ配布される。ロケーション情報は暗号化された状態で配布サービス１０６に留まり、従って、配布サービス１０６自体はロケーション情報にアクセスできない、何故ならば、ＢｏｂとＣｈａｒｌｉｅだけが復号化するための情報（例えば、秘密ロケーション鍵）を占有しているからである。
【００１６】
実施形態では、Ａｌｉｃｅの低精細度ロケーションは、Ａｌｉｃｅの高精細度ロケーションを指定の空間精細度パラメータに基づいて乱数処理することにより生成する。この乱数処理は、高精細度の位置座標に乱数処理を行って修正した位置座標が有界の地理的領域内に入るようにして適用される。例えば、Ａｌｉｃｅが自分の空間精細度を、Ａｌｉｃｅの高精細度ロケーションの５マイル以内と指定した場合には、低精細度のロケーションは、Ａｌｉｃｅの高精細度ロケーションの５マイル以内で、ランダムに生成することができる。Ａｌｉｃｅの低精細度のロケーションと、当該空間精細度（例えば５マイル）を示す表示とが配布サービス１０６に発信され、Ｂｏｂに送られ、その結果、Ｂｏｂのデバイス上に表示された地図上で、有界の地理的領域（例えば半径５マイルの円）が提示可能となる。地図に表示された円若しくは他の地理的境界は、Ａｌｉｃｅがその境界で囲まれた地理的領域の５マイル以内にいることを示している。ある実施形態では、円若しくは他の様々な形状とサイズの地理的グリッド単位を用いたり、或いは、そして、様々な度合の地理的粒度（例えば、国、周、地域、都市などの）で表示することの方が、地理的領域としては、円よりも寧ろ使いやすい場合もある。
【００１７】
ある実施形態では、適当な経験則を用いて、特別の地理的境界が、Ａｌｉｃｅの実際のロケーションを含むこと不可能な地理的領域、例えば、海岸線とその海岸線に沿った水域の両方を包含するような境界円を包含する否かを決定する、ことができる。また、ある実施形態では、Ｂｏｂのデバイス上に表示されている上記低精細度のロケーションの更新は、Ａｌｉｃｅが上記円によって囲まれた上記地理的領域を出るときにだけ、なすようにすることもできる。尤も、Ｂｏｂは更新を順にトラックし、各円のオーバーラップを見ることにより、Ａｌｉｃｅのより精細度の高いロケーションを推定することはできよう。
＜精細度選択のユーザインターフェースの実施例＞
【００１８】
図１Ｂは、ロケーション・シェアリング・アプリケーションのユーザインターフェース１１８の例を図示する。この例では、そのロケーション・シェアリング・アプリケーションが、アリス操作の携帯デバイス１０２ｂ上で実行されている。Ａｌｉｃｅはスライドコントロール１２０を用いて自分の共有されているロケーションの時間精細度および／または空間精細度を調整することができる。時間精細度はロケーション更新に頻度によらせることができる。空間精細度は、位置誤差（例えば、発信側デバイスからの距離として測った場合の）の大きさに基づかせることができる。例えば、ＡｌｉｃｅはＢｏｂにＡｌｉｃｅのロケーションをプラマイ１０マイル以内の精細度で知って欲しいと思っている。スライドコントロール１２０をユーザインターフェース１１８の右側に動かすことはＡｌｉｃｅの共有化されているロケーションをさらに高精細度にすることを意味し、同じく、スライドコントロール１２０をユーザインターフェース１１８の左側に動かすことはＡｌｉｃｅの共有化されているロケーションをさらに低い精細度にすることを意味する。ある実施形態では、現時点での精細度値は発信者または任意のアプリケーションから選択することができる。他のコントロール、例えば、時間精細度と空間精細度を調整するための別々のコントロールを設ける用にすること可能である。
実施例：  安全なロケーションシェアリングのための暗号化システム
【００１９】
図１Ｃは、可変精細度のロケーションシェアリングのための公開鍵暗号化システムを図示する。この公開鍵暗号化システムは、数学的に関連した非対称暗号鍵対を用いて可変精細度ロケーション情報を発行するものであり、ここで、上記暗号鍵対は秘密におかれている秘密鍵と発行された公開鍵とからなる。ロケーション情報は公開ロケーション鍵を用いて暗号化されるもので、対応する秘密ロケーション鍵を用いて初めて復号化できる。非対称鍵対は、また、これを用いて、暗号化されたロケーション情報を含むメッセージの真正性の防護を図ることができる。真正性の防護は、そのメッセージのデジタル署名を秘密メッセージ鍵を用いて創成することによりなされる。可変精細度ロケーション・シェアリング目的の適当な非対称鍵技術の例が、ＲＳＡ公開鍵（たとえばｖｅｒｓｉｏｎ  ２．１）、これに限定されるものではないが、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎの鍵交換プロトコルを含む。他の非対称鍵技術として、デジタル署名標準（ＤＳＳ）やいろいろな楕円曲線技術を用いることができる。
【００２０】
実施形態では、メッセージ鍵対とロケーション鍵対という、２つのタイプの鍵対が用いられ手いる。システム１００のユーザ（例えばＡｌｉｃｅ、Ｂｏｂ、Ｃｈａｒｌｉｅ）は、各々、個々のユーザ間で安全なメッセージを受けるときに用いる公開と秘密のメッセージ鍵を有する署名付き証明書を持っている。公開のメッセージ鍵は配布サービス１０６又は他のＴＴＰにより配布される。その結果、いかなる発信者も自分のメッセージを、任意の受信者の公開メッセージ鍵を用いて暗号化することができる。これは、その公開メッセージ鍵が、対応秘密メッセージ鍵を用いることのできる当該受信者のみが読み取り可能だからからである。デバイス１０２ａ−１０２ｃの各々は、図１Ｃに示すような、セットアップ鍵とシェアリング鍵とを格納するための、夫々の安全鍵ストア１２２ａ−１２２ｃを含む。
【００２１】
セットアップ鍵には個人メッセージ鍵対を含ませることができる。例えば、Ａｌｉｃｅの鍵ストア１２２ｂはＡｌｉｃｅの個人メッセージ鍵対  （ａ＿ｍｓｇ＿ｐｒｉｖとａ＿ｍｓｇ＿ｐｕｂ）を、Ｂｏｂの鍵ストア１２２ｃはＢｏｂの個人メッセージ鍵対  （ｂ＿ｍｓｇ＿ｐｒｉｖとｂ＿ｍｓｇ＿ｐｕｂ）を、Ｃｈａｒｌｉｅの鍵ストア１２２ａはＣｈａｒｌｉｅの個人メッセージ鍵対  （ｃ＿ｍｓｇ＿ｐｒｉｖとｃ＿ｍｓｇ＿ｐｕｂ）を含む。セットアップ鍵は、また、他者の公開メッセージ鍵を含むことができる。例えば、Ａｌｉｃｅの鍵ストア１２２ｂはＢｏｂの公開メッセージ鍵（ｂ＿ｍｓｇ＿ｐｕｂ）とＣｈａｒｌｉｅの公開メッセージ鍵（ｃ＿ｍｓｇ＿ｐｕｂ）を含み、Ｂｏｂの鍵ストア１２２ｃは、Ａｌｉｃｅの公開メッセージ鍵（ａ＿ｍｓｇ＿ｐｕｂ）とＣｈａｒｌｉｅの公開メッセージ鍵（ａ＿ｍｓｇ＿ｐｕｂ）とを含み、Ｃｈａｒｌｉｅの鍵ストア１２２ａはＡｌｉｃｅの公開メッセージ鍵（ａ＿ｍｓｇ＿ｐｕｂ）とＢｏｂの公開メッセージ鍵（ｂ＿ｍｓｇ＿ｐｕｂ）とを含む。
【００２２】
これらのシェアリング鍵は可変精細度のロケーション情報の共有の安全を図るのに使うことができる。例えば、ＡｌｉｃｅはＢｏｂとの間では、２時間毎に１０マイルの精細度での彼女の低精細ロケーション情報を共有するのを望んでいる、とする。Ａｌｉｃｅのデバイス１０２ｂは、新たにロケーション鍵対（ａ＿ｌｏｃ１＿ｐｕｂ，  ａ＿ｌｏｃ１＿ｐｒｉｖ）を生成することができる。この鍵対を用いて、前記の２時間毎に１０マイルという、指定の空間と時間精細度を有する低精細ロケーション情報を暗号化できる。加えて、Ａｌｉｃｅは、Ｃｈａｒｌｉｅとの間では、彼女の正確なロケーション情報の共有を望んでいる。Ａｌｉｃｅのデバイス１０２ｂは、もう一つの新たなロケーション鍵対（ａ＿ｌｏｃ２＿ｐｕｂ，  ａ＿ｌｏｃ２＿ｐｒｉｖ）を生成することができ、この鍵対はＡｌｉｃｅの精細なロケーション情報を暗号化するのに用いることができる。Ａｌｉｃｅは秘密ロケーション鍵（ａ＿ｌｏｃ１＿ｐｒｉｖ）をＢｏｂに配送してもらうために配布サービス１０６に送る、この鍵はＢｏｂの公開メッセージ鍵（ｂ＿ｍｓｇ＿ｐｕｂ）により暗号化されていたものである。配布サービス１０６は当該暗号化されたメッセージをＢｏｂとＣｈａｒｌｉｅに配送する。Ｂｏｂは暗号化されたそのメッセージを自分の秘密メッセージ鍵（ｂ＿ｍｓｇ＿ｐｒｉｖ）を用いて復号化して秘密ロケーション鍵（ａ＿ｌｏｃ１＿ｐｒｉｖ）を得る。同様に、Ｃｈａｒｌｉｅも、暗号化された前記メッセージを自分の秘密メッセージ鍵（ｃ＿ｍｓｇ＿ｐｒｉｖ）を用いて復号化して秘密ロケーション鍵（ａ＿ｌｏｃ２＿ｐｒｉｖ）を得る。
【００２３】
ある第１の指定スケジュールに従って、或いは、起動イベントの発生に応じて、Ａｌｉｃｅは彼女の低精細ロケーションを、彼女の低精細ロケーション（ａ＿ｌｏｃ１＿ｐｕｂ）用の公開ロケーション鍵を用いて配布サービス１０６に送る。配布サービス１０６は、そのメッセージを、Ｂｏｂのデバイス１０２ｃに送る。このデバイス１０２ｃ上で走っている復号化プロセスは、この低精細ロケーションを対応する秘密ロケーション鍵（ａ＿ｌｏｃ１＿ｐｒｉｖ）を用いて復号化する、というもので、これは、Ｂｏｂのデバイス１０２ｃでのみ可能なことである。
【００２４】
第２の指定スケジュールに従って、或いは、起動イベントの発生に応じて、Ａｌｉｃｅは彼女の精細なロケーションを彼女の精細なロケーション用の公開ロケーション鍵（ａ＿ｌｏｃ２＿ｐｕｂ）を用いて配布サービス１０６に送る。配布サービス１０６は、そのメッセージを、Ｃｈａｒｌｉｅのデバイス１０２ａに送る。このデバイス１０２ａ上で走っている復号化プロセスは、この精細なロケーションを対応する秘密ロケーション鍵（ａ＿ｌｏｃ２＿ｐｒｉｖ）を用いて復号化する、というもので、これは、Ｃｈａｒｌｉｅのデバイス１０２ａでのみ可能なことである。ある実施形態状況下では、上記の第１の第２の指定スケジュールは共に同じであり、２つの暗号化されたロケーションがＢｏｂとＣｈａｒｌｉｅに送られる、こともあり得るが、Ｃｈａｒｌｉｅのみが秘密ロケーション鍵ａ＿ｌｏｃ２＿ｐｒｉｖを用いてＡｌｉｃｅの高精細ロケーション情報を復号化することができる。Ｂｏｂだけが秘密ロケーション鍵（ａ＿ｌｏｃ１＿ｐｒｉｖ）を有するので、ＢｏｂだけがＡｌｉｃｅの低精細ロケーション情報を復号化できる。ロケーション情報は、受信側デバイスで復号化されるまでは、暗号化されたままに留まるので、配布サービスはＡｌｉｃｅの高精細度ロケーションにアクセスすることはできないので、彼女のプライバシーは保たれる。
【００２５】
ロケーション・シェアリングの粒度を、ある既存の受信者グループ内で高めるために、１つの送信者側デバイスが、さらに高精細度のロケーション情報を同じロケーション鍵を用いながら、もっと頻度高くして促進することができる。ある受信者を、第１の精細度レベルを有するロケーション情報を受ける現在の第１の受信者グループから、第２の、即ち、より精細度の高い第２精細度レベルの第２の受信者グループに移動するためには、発信者側デバイスが、当該受信者に、適切な秘密ロケーション鍵を、そのある受信者の公開メッセージ鍵を付けて送る。
【００２６】
ある受信者の精細度レベルを下げるためには、発信者側が、それに関連付けられた公開と秘密のロケーション鍵を使うのを停止して、その発信者がその高精細度のロケーション情報を今後は確実に使うことができないようにすればよい。新たなロケーション鍵対は発信者側デバイスにより発生させることができ、秘密鍵は、そのグループ内のダウンロードされていない残りの受信者に再配布することができる。ダウンロードされているその受信者は、もう一つの、その新しい低くされた精細度レベルの秘密ロケーション鍵を当該発信者から得ることができる。
【００２７】
発信者は、より高精細度のロケーション情報を、特定の一人または１グループの受信者との間でシェアしたいと思うかも知れない。既に公開した低レベルの精細度に対してより高精細度のロケーション情報のそのような秘密鍵を配布することは、これらの受信者により高精細度のロケーション情報にアクセスすることを永久的に許すことになり、これは予定しないことであるかも知れない。それ故に、新しいロケーション鍵対は発信者側デバイスによって生成され、その秘密鍵は一時的なシェアリングのためにその受信者達に送られる。
発信者側デバイスのユーザインターフェースは、どの受信者がロケーション情報を受け取ることができるかを明確にすることができ、当該レベルの精細度にあるロケーション情報の公開若しくは発信を自動的に停止するためのタイムリミットを与えることができる。そのタイムリミットとは、手動で指定された期間若しくは終了時刻であり、または、発信側デバイス上のもう一つのトリガーイベントに結びつけられたものであってよい。ここでトリガーイベントとは、電話発信の終了、発信者側カレンダーなどでのあるイベントの終了などである。
る。
【００２８】
ロケーション情報の発信若しくは公開を一時的に停止するために、発信者デバイスは受信者デバイスへの当該ロケーション情報の送信を停止することができる。このシナリオでは、暗号化鍵管理は不要である。一時的なアップグレードとのときのように、発信者は、発信者側のカレンダー内での１つのイベントとして、手動により、その一時停止の期間若しくは終了時刻をセットし、または、その一時停止をもう一つのトリガーイベントに縛り付ける、ことなどができる。
＜処理フローの例（発信者デバイス）＞
【００２９】
図２Ａと図２Ｂは、発信者デバイスによって実行される可変精細度ロケーション・シェアリング・プロセス２００と２０６のフローチャートである。プロセス２００、２０６は、図４に示されたような構造のデバイスによって実行される。プロセス２０６は、２つの異なるレベルの精細度を有する二人の受信者グループのために実行されるところの、発信者側デバイスの処理例である。プロセス２０６は、しかしながら、二人以上の受信者グループについてのみならず、必要とする限りは任意人数の受信者並びに２つ以上の精細度以上について使用可能であある。
【００３０】
図２Ａを参照して、ある実施形態では、プロセス２００は、秘密ロケーション鍵を含む１つのメッセージを、１つ以上の受信者デバイスの公開メッセージ鍵を用いて暗号化することにより始まる（ステップ２０２）。この暗号化されたメッセージは配布サービスに向けて発信されて１つ以上の受信者デバイスに配布される（ステップ２０４）。この秘密ロケーション鍵というのは、この発信者デバイスのロケーションに対応するものであり、図１Ｃに示したように、指定した空間精細度と時間精細度を有するものである。
【００３１】
図２Ｂを参照して、プロセス２０６は、スケジュールベースでまたはトリガーイベントに応答する形で、上記発信者デバイスのロケーションを記述するロケーション情報を得るところから始まる（ステップ２０８）。このロケーション情報は色々の位置認識技術から得ることが可能であり、それらの技術として、これらの限定されるものではないが、ＧＰＳ、ＷｉＦｉやＣｅｌｌ−ＩＤ位置認識技術がある。
【００３２】
受信者グループＩ、ＩＩとシェアしている精細度レベルのリストを取り出す（ステップ２１０）。この例では、１つの高精細度レベルが受信者グループＩ（２１２）について取り出され、１つの低精細度レベルが受信者グループＩＩについて取り出される（ステップ２１６）。空間的精細度レベル及び／または時間的精細度レベルは、ユーザインターフェース（例えば図１Ｂに示した如きユーザインターフェース）を用いて、または、アプリケーション（例えばＡＰＩを介して）プログラムにより、上記の受信者グループについて指定可能である。
【００３３】
受信者グループＩについては、無修正のロケーション情報が公開ロケーション鍵Ｉを用いて暗号化される（ステップ２１４）。指定のスケジュールまたはトリガイベントに応答して、上記の暗号化されたロケーション情報が受信者グループＩへ配給するために、配布サービスに発信される（ステップ２２２）。
【００３４】
受信者グループＩＩについては、ロケーション情報は、受信者グループＩＩに対して指定された精細度レベルで修正される（ステップ２１８）。例えば、発信者が１０マイルの空間精細度を有しているのであれば、上に例示した位置認識技術によって提供されるロケーション情報は乱数化処理されて、半径１０マイルの円内に入る地理的領域内に含まれるように修正される。時間的精細度は発信者によりまた指定可能である。例えば、発信者はロケーションの更新が２時間毎に受信者デバイスに向けて発信される。修正されたロケーション情報は、公開ロケーション鍵ＩＩを用いて暗号化され、図２Ａに関連して説明したように、秘密ロケーション鍵に対応づけられる（ステップ２２０）。指定のスケジュールまたはトリガーイベントに対して応答する形で、暗号化され修正された受信者グループＩＩ用のロケーション情報が受信者グループＩＩに配布されるように配布サービスに送られる（２２２）。
【００３５】
発信者デバイスはロケーション鍵対を乱数生成器から、例えばＲＳＡ方式の鍵生成技術を用いて生成することができる。公開ロケーション鍵は各メッセージに含められて受信者デバイス毎に配布サービスを介して別々に配布される。メッセージは、受信者デバイス毎にユニークな公開を用いて個々に暗号化される。ある実施形態では、公開メッセージ鍵をＴＴＰサービスを用いて通信チャンネルを介して配布するようにしてもよいが、この場合の通信チャンネルは秘密ロケーション鍵を含む上記メッセージを送受信する通信チャンネルと異ならせる。
＜処理フローの例（受信者デバイス）＞
【００３６】
図３Ａと図３Ｂは、受信者デバイスによりなされる、可変精細度のロケーション・シェアリング・プロセス３００、３０６のフローチャートである。プロセス３００、３０６は、図４の構造を有するデバイスによって実現することができる。
【００３７】
図３Ａを参照して、ある実施形態では、プロセス３００は、発信者デバイスからの暗号化されたメッセージの受信により始まる（ステップ３０２）。このメッセージは受信者デバイスに関連付けられた公開メッセージ鍵を用いて暗号化されたものであってよい。秘密ロケーション鍵は上記暗号化されたメッセージから、対応の秘密メッセージ鍵を用いて、復元できる（ステップ３０４）。ある実施形態では、公開メッセージ鍵をＴＴＰサービスを用いて通信チャンネルを介して配布するようにしてもよいが、この場合の通信チャンネルは上記メッセージを受信する通信チャンネルと異ならせる。  
【００３８】
図３Ｂを参照して、あるスケジュールに従って、または、あるトリガーイベントに応ずる形で暗号化されているロケーション情報を発信者デバイスから受信する（ステップ３０８）。このロケーション情報は暗号化されたロケーション情報から前に受信してあった秘密ロケーション鍵を用いて、図３Ａに説明されているように、復元できる（ステップ３１０）。変形的には、発信者デバイスのロケーションを表示するようにしてもよい。例えば、発信者デバイスは、地図を、発信者デバイスの位置を表すマーカー（例えば押しピン形状）を設けた地図を表示することができる（ステップ３１２）。もしもロケーションが指定の空間的精細度に関して低いような場合には、そのときは、円を地図上に重ね、その円の中心に「押しピン」を置くようにする。円の半径は当該指定空間精細度に依存させてよい。
デバイス構造の実施例
【００３９】
図４は、図３に関連して説明された機能やプロセスを実現するための、発信側或いは受信側のデバイスのハードウエア構造の実施例を示すブロックである。このデバイスは、メモリインターフェース４０２、１つ以上のデータ処理装置や画像処理装置４０４、周辺装置インターフェース４０６などを含む。これら、メモリインターフェース４０２、１つ以上のデータ処理装置や画像処理装置４０４、周辺装置インターフェース４０６は、個別回路若しくは１つ以上の集積回路に実装されてよい。これら、様々な素子は、例えば、１つ以上の通信バスや信号線によって結合されている。
【００４０】
センサー、デバイス、サブシステムなどが、複数の機能を実現するために周辺インターフェース４０６に接続可能である。例えば、運動センサ−４１０、光センサ４１２、近接センサー４１４が、周辺装置インターフェース４０６に接続され、モバイル装置に、位置確認、照明、接近などの機能を実現する。ロケーションプロセッサ４１５（例えば、ＧＰＳ受信器）が周辺装置インターフェース４０６に結合され、地理的な位置決めに用いられる。また、電子地磁気センサ４１６（例えば、集積回路チップ）が周辺装置インターフェース４０６に結合され、磁北の方向を決定するのに用いるデータを提供する。かくして、地磁気センサ４１６は、電子的コンパスとして機能する。加速度計４１７を周辺装置インターフェース４０６に接続させて携帯デバイスの移動の速度と方向変化を決定することもできる。
【００４１】
カメラサブシステム４２０並びに光学センサ４２２（例えば、電荷結合素子（ＣＣＤ）や相補型金属酸化物半導体（ＣＭＯＳ）型光学センサなどを用いて写真やビデオクリップの記録などの、カメラ機能を容易に達成できる。
【００４２】
通信機能は１つ以上の無線通信サブシステム４２４を通して実現する。このサブシステムは、無線周波数帯の受信器と送信機並びに（若しくは）光（赤外線）送受信器を有するようにできる。通信サブシステム４２４の特定の設計や実施化は携帯デバイスが動作する通信ネットワークに依存する。例えば、携帯デバイスは、ＧＳＭ（登録商標）ネットワーク、ＧＰＲＳネットワーク、ＥＤＧＥネットワーク、ＷｉＦｉまたはＷｉＭａｘネットワーク、そして、Ｂｌｕｅｔｏｏｔｈ（登録商標）ネットワークなどの通信サブシステム４２４を有してもよい。特に、無線通信サブシステム４２４は携帯デバイスが他の無線デバイスの既知ステーションとして構成できるような、ホスティング・プロトコルを含むことができる。
【００４３】
オーディオ・サブシステム４２６は、スピーカ４２８とマイク４３０に接続されて、音声認識、音声複製、音声デジタル記録、テレフォニー機能などの音声認識利用機能を実現するのを容易にする。
【００４４】
入力／出力サブシステム４４０は、タッチスクリーンコントローラ４４２や（または）他の入力トロら４４４を含めることができる。タッチ・スクリーン・コントローラ４４２はタッチスクリーン４４６若しくはパッドに接続されている。タッチ・スクリーン・コントローラ４４２とタッチスクリーン４４６は、例えば、タッチ接触技術を用いての、互いの、接触、移動、離反を検出することができる、このタッチ接触技術には、これらに限定されるものではないが、容量性、抵抗性、赤外光利用、表面弾性波技術など、または、タッチスクリーン４４６との１つまたは複数のポイントでの接触を決定できる他の近接センサアレイ、などがある。
【００４５】
他の入力コントローラ４４４を他の入力／制御デバイス４４８（例えば、１つ以上のボタンや、ロッカースイッチ、サムホイール、赤外ポート、ＵＳＢポート、スタイラスなどのポインター・デバイス）に接続することができる。この１つ以上のボタン（不図示）はスピーカ４２８やマイク４３０用の上昇／下降ボタンを含むものである。
【００４６】
ある実施形態では、そのようなボタンを第１の期間だけ押すと、タッチスクリーン４４６のロックが解除され、前記第１の期間よりも長い第２の期間だけ押されると、このデバイスへの電力供給をオンしまたはオフすることができる。ユーザは１つ以上の上記ボタンの機能性をカスタマイズできる。タッチスクリーン４４６は、例えば、仮想の、またはソフトの、ボタンやキーボードを実現することができる。
【００４７】
ある実施形態では、本デバイスは記録した、ＭＰ３、ＡＡＣ、ＭＰＥＧ形式などの、オーディオ・ファイルやビデオ・ファイルを提示できる。ある実施形態では、本デバイスは、ＩＰｏｄ（登録商標）などのＭＰ３プレイヤーの機能を提示できる。本デバイスは、それ故に、ＩＰｏｄと互換性のあるピンコネクタを含めることができる。他の入力／出力／制御デバイスを使用可能である。
【００４８】
メモリ・インターフェース４０２をメモリ４５０に接続できる。メモリ４５０は、高速ＲＡＭや、磁気ディスク記憶装置、光記憶装置、フラッシュメモリ（ＮＡＮＤ型やＮＯＲ型を含む）などの不揮発性メモリを含む。メモリ４５０は、オペレーティング・システム４５２（例えば、Ｄａｒｗｉｎ、ＲＴＸＣ、ＬＩＮＵＸ（登録商標）、ＵＮＩＸ（登録商標）、ＯＳ  Ｘ、ＷＩＮＤＯＷＳ（登録商標）、さらには、ＶｘＷｏｒｋｓなどの埋め込み型オペレーティングシステム）を記憶する。オペレーティング・システム４５２は基本的なシステムサービスをハンドリングするためのと、ハードウエアに依存したタスクを実行するための命令群とを有する。ある実施形態では、オペレーティング・システム４５２は、カーネル（例えば、ＵＮＩＸ（登録商標）のカーネル）を含むことができる。
【００４９】
メモリ４５０は、１つ以上の追加のデバイスや、１つ以上のコンピュータや、１つ以上のサーバとの通信を実現する通信命令群４５４を格納する。メモリ４５０は、図１乃至図４に示されたグラフィックユーザインターフェース処理を実行するグラフィカル・ユーザインターフェース命令群４５６を含むもので、このグラフィックユーザインターフェース処理には、センサ関連の処理と機能を実現するセンサ信号処理命令群４５８と、電話関連の処理と機能を実現する電話命令群４６０と、電子メッセ−ジング処理と機能（ＳＭＳや  ＭＭＳやウエッブブラウジング機能を実現する電子メッセージ処理命令群４６２などが含まれる。メモリ４５０は、また、セキュリティ命令群、ウエッブビデオ関連の処理と機能を実現するウエッブビデオ命令群、ウエッブ・ショッピングに関連する処理と機能を実現するウェッブショッピング命令群などの、他のソフトウエア命令群を有する。
【００５０】
メモリ４５０は、さらに、ロケーション・シェアリング処理命令群４７２や暗号化／復号化命令群４７４などと共に、図１乃至３に関連して説明した前述の機能やユーザインターフェースや処理を実現するための他の様々な命令群４７６を有する。
【００５１】
前述の命令群やアプリケーションの各々は１つ以上の上述の種々の機能を実行する一組の命令に対応する。これらの命令群は別々のソフトウエアプログラムやプロセジャやモジュールとして実現されている必要はない。メモリ４５０は、追加の命令即ち２、３の命令群を含むことができる。さらに、携帯デバイスの様々な機能はハードウエアやソフトウエア内に、さらには、１つ以上の信号処理回路や当該アプリケーションに特化した集積回路内に実施されてもよい。
【００５２】
上述の機能は、少なくとも１つのプログラム可能なプロセッサを含むような、プログラム可能ステム上で実行可能な１つまたは複数のコンピュータプログラム内で有利に実現できる、ここで、そのプロセッサとは、データ記憶システムや少なくとも１つの入力デバイス或いは少なくとも１つの出力デバイスからデータや命令を受信し、或いは、これらへデータを送信するように接続されている。コンピュータプログラムとは、コンピュータ内で、直接的か間接的かは問わずに用いられて、ある活動を行い、或いは、ある結果をもたらすものである、一組の命令を言う。コンピュータプログラムはいかなる形式（例えば、オブジェクト型Ｃ言語プログラムやＪａｖａ（登録商標）など）のプログラミング言語（これには、コンパイル型やインタプリター型をも含む）で書かれていてよく、また、コンピュータプログラムは、スタンドアロンプログラムとして、或いは、モジュール、コンポーネント或いはサブルーチン、若しくは他のコンピュータ環境下使用に供され得る他のプログラム単位を含む、あらゆる形式でも展開可能である。
【００５３】
複数の命令からなるプログラムの実行に好適なプロセッサとしては、汎用の或いは特定用途に特化されたマイクロプロセッサ群、若しくは、単独プロセッサ即ち複数のプロセッサ若しくはコアからなる１つｊのプロセッサを含むものである。一般的には、プロセッサは、ＲＯＭやＲＡＭから命令やデータを受ける。コンピュータの基本的な部分は命令を実行するプロセッサと、命令やデータを記憶するメモリである。一般的には、コンピュータは、１つ以上の大規模記憶装置（ｍａｓｓ  ｓｔｏｒａｇｅ  ｄｅｖｉｃｅｓ）、そのような装置には磁気ディスク（内蔵ハードディスクや着脱式ディスク）や光磁気ディスクや光ディスクなどを含む、を備え、或いは、通信可能に接続されている。コンピュータプログラム命令やデータを優待的に実現する記憶装置には、あらゆる種類の、不揮発性メモリ（これには、例示ではあるが、ＥＰＲＯＭやＥＥＰＲＯＭなどの半導体メモリ装置、フラッシュメモリ装置、内蔵ハードディスクや着脱式ディスクなどの磁気ディスク、光磁気ディスク、そして、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭディスクなどを含む。
【００５４】
ユーザとの対話を提供するために、コンピュータ上には、ユーザに情報を可視的に提示するための、ＣＲＴやＬＣＤモニタなどの表示装置が、そして、キーボードやポインティングデバイス（マウス、トラックボール）などのポインティングデバイスが、ユーザがコンピュータに情報入力をできるようにするために設けられている。
【００５５】
これらの特長的機能は、バック−エンド・コンポーネント或いはフロント−エンド・コンポーネントを有するコンピュータシステムにおいて実現可能であり、バック−エンド・コンポーネントには、データ・サーバ、アプリケーションサーバやインターネットサーバなどのミドルウエア・コンポーネントがあり、フロント−エンド・コンポーネントグラフィカル・ユーザインターフェースやインターネットブラウザなどを具備するクライアント・コンピュータなどがある。上記システムのこれらコンポーネントはコンピュータネットワークなどのあらゆる携帯若しくは媒体のデジタルデータにより結合されている。通信ネットワークの例として、例えば、ＬＡＮやＷＡＮそして、インターネットを形成するコンピュータやネットワークがある。
【００５６】
そのようなコンピュータはクライアントとサーバを含むことができる。クライアントとサーバは一般的には互いに離間しており、典型的には、ネットワークを介して内部で会話を行う。クライアントとサーバの関係は、夫々のコンピュータ上でランし、互いに、クライアント−サーバ関係を有するコンピュータプログラムの理由で生まれる。
【００５７】
これまでに開示した実施形態の特徴点やステップはＡＰＩを用いて実現可能である。ＡＰＩは、コールするアプリケーションと、サービスを提供し、データを提供し、演算や計算を実行する他のソフトウエアコード（例えば、オペレーティング・システム、ライブラリ・ルーチン、関数）との間で渡される１つ以上のパラメータである。
【００５８】
このＡＰＩは、１つまたは複数のコールとして、即ち、ＡＰＩ仕様ドキュメントに記載のコール取り決めに基づいて、パラメータリスト若しくは他のデータ構造を介して１つまたは複数のパラメータの送受信を行う、プログラムコード内の１つまたは複数の「コール」として実現できる。１つのパットラメ他は、定数、キー、データ構造、オブジェクトクラス、変数、データタイプ、ポインタ、アレイ、リスト、若しくはもう一つのコールであることができる。ＡＰＩコールとパラメータは、あらゆるプログラム言語で可能である。これらのプログラム言語は、プログラマが当該ＡＰＩをサポートする機能にアクセスのに使う、「語彙」とコール取り決めを定義するものである。
【００５９】
実施形態では、ＡＰＩコールは、アプリケーションに、そのアプリケーションをランしているデバイスの使用可能な能力、例えば、入力機能、出力機能、処理機能、電源機能、通信機能などの、をレポートする。
【００６０】
ここまでに複数の実施形態を説明してきた。にもかかわらず、様々な修正が可能であることを理解すべきである。例えば、１つ以上の実施形態の要素を組合せ、または、削除し、または修正し、または、補充して更なる実施形態を提案することも可能である。さらに他の例として、上述の図面に示されていたロジックフローは、好ましい結果を得るために、図示のその特定の順序や、シーケンシャルの順序を必要とするものではない。さらに、他のステップを加え、または、ステップを削除し、他のコンポーネントを追加し、或いは削除してもよい。従って、他の種々の実施形態も後述の特許請求の範囲のスコープ内に包含されるのとして考慮されるべきである。
【図１Ａ】
2013541260.tif 000003
【図１Ｂ】
2013541260.tif 000004
【図１Ｃ】
2013541260.tif 000005
【図２】
2013541260.tif 000006
【図３】
2013541260.tif 000007
【図４】
2013541260.tif 000008
【手続補正書】
【提出日】平成25年4月25日(2013.4.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
デバイスの１つ以上のハードウエアプロセッサにより実行される、コンピュータ実施の方法であって、
前記デバイスのロケーションを記述するロケーション情報を取得する工程と、
前記ロケーション情報の精細度の指定を受信する工程と、
指定された前記精細度に基づいて前記ロケーション情報を修正する工程と、
修正された前記ロケーション情報を暗号化する工程と、
暗号化された前記ロケーション情報を、一人または複数人の受信者に対する配布のために、配布サービスに発信する工程、
とを具備することを特徴とする方法。
【請求項２】
ロケーション情報の精細度の指定を受信する前記工程は：  
前記ロケーション情報の空間的精細度の指定を受信する工程を含むことを特徴とする請求項１に記載の方法。
【請求項３】
ロケーション情報の精細度の指定を受信する前記工程は：  
前記ロケーション情報の時間的精細度の指定を受信する工程を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記ロケーション情報を修正する前記工程は：  
前記モバイル装置のロケーションを、このモバイル装置の前記修正されたロケーションが、このモバイル装置のロケーションを含む地理的エリアの中にあるように、乱数化する工程を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記修正されたロケーション情報を暗号化するステップは：
前記ロケーション情報について指定された精細度に関連付けられた公開ロケーション鍵を用いて、前記修正されたロケーション情報を暗号化するステップを具備する、ことを特徴とする請求項１に記載の方法。
【請求項６】
さらに、前記一人または複数人の受信者に関連付けられた公開メッセージ鍵を用いて、秘密ロケーション鍵を含むメッセージを暗号化する工程と、
前記メッセージを、前記一人または複数人の受信者に配布するために、前記配布サービスに送信する工程とを含む、ことを特徴とする請求項１の方法。
【請求項７】
精細度はある精細度レンジ内の精細度値で表現され特定される、ことを特徴とする請求項１に記載の方法。
【請求項８】
前記ロケーション情報の精細度の前記指定は、前記一人または複数人の受信者の内の、少なくとも１グループの受信者に関連づけられた精細度レベルを含む、ことを特徴とする請求項１に記載の方法。
【請求項９】
前記ロケーション情報の精細度の指定を受信する前記工程は、精細度レベルのリストを受信し、受信した前記精細度レベルの前記リスト中の１つの精細度レベルを選択する工程を含む、ことを特徴とする請求項１に記載の方法。
【請求項１０】
前記受信した精細度レベルのリスト内の前記精細度レベルは、前記一人または複数人の受信者の中の一人の受信者の識別子に基づいて選択する、ことを特徴とする請求項９に記載の方法。
【請求項１１】
前記一人の受信者の識別子は、前記受信者たちが属する受信者グループを含む、ことを特徴とする請求項９に記載の方法。
【請求項１２】
前記ロケーション情報の精細度は、前記デバイスのユーザインターフェースから受信され、このユーザインターフェースは、前記デバイスのユーザに、前記一人または複数人の受信者の中から少なくとも１つのグループ受信者に送られようとする、そのロケーション情報の精細度を調節することを可能にする、ことを特徴とする請求項１に記載の方法。
【請求項１３】
前記ユーザインターフェースは、前記ユーザに、前記ロケーション情報の少なくとも１つの時間に関する精細度と、このロケーション情報の少なくとも１つの空間に関する精細度を調節せしめる、ことを特徴とする請求項１２に記載の方法。
【請求項１４】
さらに、各々が夫々の精細度に結びつけられたところの、複数の暗号鍵の中から１つの暗号鍵を選択する工程を具備し、
前記選択された暗号化鍵は前記指定された精細度に関連付けられている、ことを特徴とする請求項１に記載の方法。
【請求項１５】
携帯デバイスの１つ以上のハードウエアプロセッサにより実行される、コンピュータ実施の方法であって、
発信側デバイスから暗号化されたロケーション情報を受信する工程であって、このロケーション情報は、高精細度のロケーションから、指定の精細度に従って修正されたロケーション情報である、工程と、
前記発信側デバイスによって提供される復号情報を用いて前記ロケーション情報を復号化する工程、
とを具備することを特徴とする方法。
【請求項１６】
前期復号情報は前記発信者側デバイスからもたらされた秘密ロケーション鍵を含むことを特徴とする請求１５の方法。
【請求項１７】
さらに、前記発信側デバイスから暗号化されたメッセージを受信する工程と、
前記メッセージを復号化して秘密ロケーション鍵を復元する工程、
とを具備することを特徴とする請求項１６の方法。
【請求項１８】
前記デバイスの表示装置上に地図を表示し、
前記復号化されたロケーション情報に基づいて、前記地図の上に、前記発信者デバイスのロケーションを含む地理的領域を前記地図上に画成する図形オブジェクトを重ねる、ことを特徴とする請求項１５の方法。
【請求項１９】
精細度はある精細度レンジ内の精細度値で表現され特定される、ことを特徴とする請求項１５に記載の方法。
【請求項２０】
前記ロケーション情報は精細度を指定するデータを含むことを特徴とする請求項１５に記載の方法。
【請求項２１】
前記暗号化され受信されたロケーション情報は、複数の細精度レベルに対するデータを含む、ことを特徴とする請求項１５に記載の方法。
【請求項２２】
前記発信者側のデバイスにより提供される復号化情報は、前記細精度レベルの内の少なくとも第１のレベルに対応するデータの復号化を付勢し、一方、前記細精度レベルの内の少なくとも第２のレベルに対応するデータの復号化を付勢させない、ことを特徴とする請求項２１に記載の方法。
【請求項２３】
前記発信者側のデバイスにより提供される復号化情報は、前記指定された精細度に関連付けられている、ことを特徴とする請求項１５に記載の方法。
【請求項２４】
可変精細度のロケーション情報をシェアするために、
プロセッサと、
前記プロセッサに接続されたメモリと、を有するシステムであって、
このシステムは、前記プロセッサにより実行されると、このプロセッサをして、
前記デバイスのロケーションを記述するロケーション情報を取得する工程と、
前記ロケーション情報の精細度の指定を受信する工程と、
指定された前記精細度に基づいて前記ロケーション情報を修正する工程と、
修正された前記ロケーション情報を暗号化する工程と、
暗号化された前記ロケーション情報を、一人または複数人の受信者に対する配布のために、配布サービスに発信する工程、
を含む命令群を実行させるべく、前記メモリは、当該命令群を記憶することを特徴とするシステム。
【請求項２５】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記ロケーション情報の空間的精細度の指定を受信する工程と、
を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項２４に記載のシステム。
【請求項２６】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記ロケーション情報の時間的精細度の指定を受信する工程と、
を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項２４に記載のシステム。
【請求項２７】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
携帯デバイスのロケーション情報を、その携帯デバイスの修正後のロケーションがこのデバイスのロケーションを含む１つの地理的領域の内部にあるように、乱数化する工程、
を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項２４に記載のシステム。
【請求項２８】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記一人または複数人の受信者に関連付けられた公開メッセージ鍵を用いて、秘密ロケーション鍵を含むメッセージを暗号化する工程と、
前記メッセージを前記配布サービスに前記一人または複数人の受信者に配布する目的で送信する工程と、を含む動作を前記プロセッサに実行させる、命令である、ことを特徴とする請求項２４に記載のシステム。
【請求項２９】
精細度はある精細度レンジ内の精細度値で表現され特定される、ことを特徴とする請求項２４に記載のシステム。
【請求項３０】
可変精細度のロケーション情報をシェアするために、
プロセッサと、
前記プロセッサに接続されたメモリと、
を有するシステムであって、
このシステムは、前記プロセッサにより実行されると、このプロセッサをして、
発信側デバイスから暗号化されたロケーション情報を受信する工程であって、このロケーション情報は、高精細度のロケーションから、指定の精細度に従って修正されたロケーション情報である、工程と、
前記発信側デバイスによって提供される復号情報を用いて前記ロケーション情報を復号化する工程、
とを含む動作を前記プロセッサに実行させる、命令である、ことを特徴とするシステム。
【請求項３１】
前記情報を復号化するステップは、発信者デバイスによりもたらされる、ことを特徴とする請求項３０のシステム。
【請求項３２】
前記メモリは命令群を有し、この命令群は、前記プロセッサにより実行されると、
前記発信側デバイスから暗号化されたメッセージを受信する工程と、
前記メッセージを復号化して秘密ロケーション鍵を復号化する工程、
とを具備することを特徴とする請求項３１のシステム。
【請求項３３】
地図を表示する表示装置であって、前記復号化されたロケーション情報に基づいて、前記地図の上に、前記発信者デバイスのロケーションを含む地理的領域を前記地図上に画成する図形オブジェクトを重ねる、表示装置を具備する、請求項３０のシステム。
【請求項３４】
前記メッセージと公開メッセージ鍵とは、２つの異なる通信チャンネル越しに受け取る、請求項３２のシステム。
【請求項３５】
精細度はある精細度レンジ内の精細度値で表現され特定される、ことを特徴とする請求項３０に記載のシステム。
【国際調査報告】
2013541260.tif 000009
2013541260.tif 000010
2013541260.tif 000011