(57)【要約】一実施形態では、オンラインサービスを提供する１つまたは複数のサーバは、オンラインサービスの第１のユーザと関連付けられた第１のクライアントコンピューティングデバイスにトークンを送信する。トークンは、第１のユーザのユーザ識別子に少なくとも部分的に基づいてサーバによって生成される。サーバは、オンラインサービスの第２のユーザと関連付けられた第２のクライアントコンピューティングデバイスからトークンを受信する。このトークンは、無線接続を通じて第１のクライアントコンピューティングデバイスから第２のクライアントコンピューティングデバイスに送信されている。サーバは、第１のユーザのユーザ識別子に少なくとも部分的に基づいてトークンを検証し、トークンが検証された場合に、サーバは、第２のユーザにアクセス可能なデータを判定する。サーバはさらに、第２のクライアントコンピューティングデバイスに、第２のユーザにアクセス可能なデータの少なくとも一部を送信する。
2016515272.tif 000002
【特許請求の範囲】
【請求項１】
オンラインサービスを提供するシステムの１つまたは複数のサーバによって、前記オンラインサービスの第１のユーザと関連付けられた第１のクライアントコンピューティングデバイスにトークンを送信することであって、前記トークンは、前記第１のユーザのユーザ識別子に少なくとも部分的に基づいて前記サーバによって生成されることと、
前記サーバによって、前記オンラインサービスの第２のユーザと関連付けられた第２のクライアントコンピューティングデバイスから前記トークンを受信することであって、前記トークンは、前記第１のクライアントコンピューティングデバイスから前記第２のクライアントコンピューティングデバイスに無線接続を通じて送信されていることと、
前記サーバによって、前記第１のユーザの前記ユーザ識別子に少なくとも部分的に基づいて前記トークンを検証すること、
前記トークンが検証された場合に、前記サーバによって、前記第２のユーザにアクセス可能なデータを判定すること、
前記サーバによって、前記第２のクライアントコンピューティングデバイスに、前記第２のユーザにアクセス可能なデータの少なくとも一部を送信すること
を備える方法。
【請求項２】
前記第２のユーザにアクセス可能なデータは、前記第１のユーザの前記ユーザ識別子を含む、請求項１に記載の方法。
【請求項３】
前記トークンを検証することが更に、前記第１および第２のクライアントコンピューティングデバイスと関連付けられたそれぞれの位置に基づいて行われる、請求項１に記載の方法。
【請求項４】
前記トークンは前記サーバによって検証された後に失効する、請求項１に記載の方法。
【請求項５】
前記第１のクライアントコンピューティングデバイスに前記トークンを送信することが、前記第１のクライアントコンピューティングデバイスと前記サーバとの間の安全な接続を通じて行われる、請求項１に記載の方法。
【請求項６】
前記無線接続は、Ｗｉ−Ｆｉ（登録商標）、ブルートゥース（登録商標）、ピアツーピアセルラ、または無線周波数識別（ＲＦＩＤ）プロトコルに基づいている、請求項１に記載の方法。
【請求項７】
前記無線接続には、前記オンラインサービスの第３のユーザと関連付けられた第３のクライアントコンピューティングデバイスが含まれる、請求項１に記載の方法。
【請求項８】
前記システムは、複数のノードと、該複数のノードをつなぐエッジとからなるグラフを備えたソーシャルネットワーキングシステムであり、少なくとも前記グラフにおける第１のノードが前記第１のユーザに対応し、前記グラフにおける第２のノードが前記第２のユーザに対応し、
前記オンラインサービスは、前記ソーシャルネットワーキングシステムによって提供されるソーシャルネットワーキングサービスであり、
前記トークンを検証することが更に、前記第１のノードから前記第２のノードまで前記グラフ内を移動するエッジの最小数に基づいて行われる、請求項１に記載の方法。
【請求項９】
前記第２のユーザにアクセス可能なデータは、前記グラフにおける複数のノードのリストを含み、前記複数のノードのリストにおける各ノードが、前記第１および第２のノードにつながっている、請求項８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、ソーシャルネットワークに関する。
【背景技術】
【０００２】
ソーシャルネットワーキングウェブサイトを含み得るソーシャルネットワーキングシステムは、そのユーザ（個人または組織など）が、システムと対話したり、システムを通じて相互に対話したりすることを可能にする。ソーシャルネットワーキングシステムは、ユーザからの入力によって、ユーザと関連付けられたユーザプロフィールを作成して、そのユーザプロフィールをソーシャルネットワーキングシステムに記憶することができる。ユーザプロフィールは、人口統計情報、通信チャネル情報、およびユーザの個人的関心に関する情報を含むことができる。また、ソーシャルネットワーキングシステムは、ユーザからの入力によって、ユーザとソーシャルネットワーキングシステムの他のユーザとの関係の記録を作成および記憶するとともに、サービス（例えば、ウォールポスト、フォトシェアリング、イベント編成、メッセージング、ゲーム、または広告）を提供してユーザ間での社会的対話を促進することができる。
【０００３】
ソーシャルネットワーキングシステムは、そのサービスに関連するコンテンツまたはメッセージを、１つまたは複数のネットワーク上で、ユーザのモバイルコンピューティングデバイスまたは他のコンピューティングデバイスに送信することができる。また、ユーザは、ソーシャルネットワーキングシステム内におけるユーザのユーザプロフィールおよび他のデータにアクセスするために、ユーザのモバイルコンピューティングデバイスまたは他のコンピューティングデバイスにソフトウェアアプリケーションをインストールすることができる。ソーシャルネットワーキングシステムは、ユーザに結びついた他のユーザの集約記事のニュースフィードなど、コンテンツオブジェクトの個人用セットを生成して、ユーザに表示することができる。
【発明の概要】
【０００４】
特定の実施形態では、ソーシャルネットワーキングシステムの１つまたは複数のユーザの各クライアントコンピューティングデバイスは、安全な接続を通じてソーシャルネットワーキングシステムに接続し、そのソーシャルネットワーキングシステムからそれぞれのユーザと関連付けられたワンタイムトークンを取得することができる。第１のユーザの第１のクライアントコンピューティングデバイスは、そのトークンを第２のユーザの第２のクライアントコンピューティングデバイスにピアツーピア無線ネットワークを通じて送信することができる。次いで、第２のクライアントコンピューティングデバイスは、トークンをソーシャルネットワーキングシステムに送信することができる。ソーシャルネットワーキングシステムは、トークンが第１のユーザと関連付けられていることを検証することができる。ソーシャルネットワーキングシステムは、トークンが検証された場合、ソーシャルグラフおよび第１のユーザのプライバシー設定を探索して、第２のユーザにアクセス可能なデータを判定することができる。ソーシャルネットワーキングシステムは、第２のユーザにアクセス可能なデータの少なくとも一部を、第２のクライアントコンピューティングデバイスに送信することができる。トークンが検証されて、第２のユーザにアクセス可能なデータが判定された後、第１のクライアントコンピューティングデバイスと第２のクライアントコンピューティングデバイスとの間のピアツーピア無線ネットワークの代わりに、ソーシャルネットワーキングシステムを通じて、第１のクライアントコンピューティングデバイスと第２のクライアントコンピューティングデバイスとの間（つまり、第１のユーザと第２のユーザとの間）の情報共有および対話を促進することができる。
【図面の簡単な説明】
【０００５】
【図１】ソーシャルネットワーキングシステムと関連付けられた例示的なネットワーク環境を示す図である。
【図２】例示的なソーシャルグラフを示す図である。
【図３】無線データのプライバシーを維持する例示的な方法を示す図である。
【図４】例示的なピアツーピアネットワークを示す図である。
【図５】例示的なコンピュータシステムを示す図である。
【発明を実施するための形態】
【０００６】
図１は、ソーシャルネットワーキングシステムと関連付けられた例示的なネットワーク環境１００を示す。ネットワーク環境１００は、ユーザ１０１、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、およびサードパーティーシステム１７０を含み、ネットワーク１１０によって相互に接続されている。図１は、ユーザ１０１、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、サードパーティーシステム１７０、およびネットワーク１１０の特定の配置を示しているが、本開示は、ユーザ１０１、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、サードパーティーシステム１７０、およびネットワーク１１０の任意の適切な配置を想定している。限定ではなく一例として、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、およびサードパーティーシステム１７０のうちの２つ以上が、ネットワーク１１０をバイパスして、相互に直接接続されてもよい。別の例として、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、およびサードパーティーシステム１７０のうちの２つ以上が、全体的にまたは部分的に、相互に物理的または論理的に同一場所に配置されてもよい。さらに、図１は、特定の数のユーザ１０１、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、サードパーティーシステム１７０、およびネットワーク１１０を示しているが、本開示は、任意の適切な数のユーザ１０１、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、サードパーティーシステム１７０、およびネットワーク１１０を想定している。限定ではなく一例として、ネットワーク環境１００は、複数のユーザ１０１、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、サードパーティーシステム１７０、およびネットワーク１１０を含んでもよい。
【０００７】
特定の実施形態において、ユーザ１０１は、ソーシャルネットワーキングシステム１６０と対話または通信する、あるいはソーシャルネットワーキングシステム１６０を通じて対話または通信する、個人（人間のユーザ）、エンティティ（例えば、企業、ビジネス、またはサードパーティーのアプリケーション）、またはグループ（例えば、個人のまたはエンティティの）であってもよい。特定の実施形態では、ソーシャルネットワーキングシステム１６０は、オンラインソーシャルネットワークをホスティングする、ネットワークにアドレス指定可能なコンピューティングシステムであってもよい。ソーシャルネットワーキングシステム１６０は、例えば、オンラインソーシャルネットワークに関連するユーザプロフィールデータ、コンセプトプロフィールデータ、ソーシャルグラフ情報、または他の適切なデータなどのソーシャルネットワーキングデータを生成、記憶、受信、および送信してもよい。ソーシャルネットワーキングシステム１６０は、ネットワーク環境１００の他のコンポーネントによって直接またはネットワーク１１０を介してアクセスされてもよい。特定の実施形態では、ソーシャルネットワーキングシステム１６０は、認証サーバ（または他の適切なコンポーネント）を含むことができる。認証サーバは、例えば、適切なプライバシー設定を設定することによって、ユーザ１０１に対し、ユーザの行為をソーシャルネットワーキングシステム１６０によってロギングさせること、または他のシステム（例えば、サードパーティーシステム１７０）によって共有させることをオプトインまたはオプトアウトすることを可能にする。ユーザのプライバシー設定は、ユーザと関連付けられた何の情報がロギングされ得るか、ユーザと関連付けられた情報がどのようにロギングされ得るか、ユーザと関連付けられた情報がいつロギングされ得るか、誰がユーザと関連付けられた情報をロギングし得るか、ユーザと関連付けられた情報が誰と共有され得るか、およびユーザと関連付けられた情報が何の目的でロギングもしくは共有され得るかを決定することができる。認証サーバは、必要に応じて、ブロッキング、データハッシング、匿名化、または他の適切な技術を通じて、ソーシャルネットワーキングシステム１６０のユーザの１つまたは複数のプライバシー設定を実施するために使用されてもよい。特定の実施形態では、サードパーティーシステム１７０は、ウェブサイトおよびアプリケーションをホスティングすることができる、ネットワークにアドレス指定可能なコンピューティングシステムであってもよい。サードパーティーシステム１７０は、限定するものではないが、例えば、ウェブページ、テキスト、画像、ビデオ、音声、またはアプリケーションなどのサードパーティーシステムデータを生成、記憶、受信、および送信してもよい。サードパーティーシステム１７０は、ネットワーク環境１００の他のコンポーネントによって直接またはネットワーク１１０を介してアクセスされてもよい。特定の実施形態では、１つまたは複数のユーザ１０１は、１つまたは複数のクライアントシステム１３０を使用してソーシャルネットワーキングシステム１６０またはサードパーティーシステム１７０にアクセスし、それらにデータを送信したり、それらからデータを受信したりしてもよい。クライアントシステム１３０は、ソーシャルネットワーキングシステム１６０またはサードパーティーシステム１７０に、直接あるいはネットワーク１１０を介して、またはサードパーティーシステムを介してアクセスしてもよい。限定ではなく一例として、クライアントシステム１３０は、ソーシャルネットワーキングシステム１６０を介してサードパーティーシステム１７０にアクセスしてもよい。クライアントシステム１３０は、例えば、パーソナルコンピュータ、ラップトップコンピュータ、セルラ電話、スマートフォン、またはタブレットコンピュータなどの任意の適切なコンピューティングデバイスであってもよい。特定の実施形態では、クライアントシステム１３０は、運動器具、電化製品、自動車、自転車、心拍数モニタ、または血圧モニタであってもよい。
【０００８】
本開示は、任意の適切なネットワーク１１０を想定している。限定ではなく一例として、ネットワーク１１０の１つまたは複数の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク（ＶＰＮ）、ローカルエリアネットワーク（ＬＡＮ）、無線ＬＡＮ（ＷＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、無線ＷＡＮ（ＷＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、インターネットの一部、公衆交換電話網（ＰＳＴＮ）の一部、セルラ電話網、またはそれらのうち２つ以上の組み合わせを含んでもよい。ネットワーク１１０は、１つまたは複数のネットワーク１１０を含んでもよい。
【０００９】
リンク１５０は、クライアントシステム１３０、ソーシャルネットワーキングシステム１６０、およびサードパーティーシステム１７０を、通信ネットワーク１１０に、または相互に接続することができる。本開示は、任意の適切なリンク１５０を想定している。特定の実施形態では、１つまたは複数のリンク１５０は、１つまたは複数の有線リンク（例えば、デジタル加入者線（ＤＳＬ）またはデータオーバーケーブルサービスインターフェイス仕様（ＤＯＣＳＩＳ）等）、無線リンク（例えば、Ｗｉ−Ｆｉ（登録商標）もしくは８０２．１１、ＷｉＭＡＸ（登録商標）、またはテレビホワイトスペース上の無線通信等）、または光学リンク（例えば、同期型光ネットワーク（ＳＯＮＥＴ）または同期デジタルハイアラーキ（ＳＤＨ）等）を含む。特定の実施形態では、１つまたは複数のリンク１５０の各々は、アドホックネットワーク、イントラネット、エクストラネット、ＶＰＮ、ＬＡＮ（例えば、イーサネット（登録商標））、ＷＬＡＮ、ＷＡＮ、ＷＷＡＮ、ＭＡＮ、インターネットの一部、ＰＳＴＮの一部、セルラ技術によるネットワーク（例えば、ＧＳＭ（登録商標）、ＧＰＲＳ、ＵＭＴＳ、またはＬＴＥ）、衛星通信技術によるネットワーク、別のリンク１５０、または２つ以上のそのようなリンク１５０の組み合わせを含む。リンク１５０は、必ずしもネットワーク環境１００全体を通じて同一である必要はない。１つまたは複数の第１のリンク１５０は、１つまたは複数の第２のリンク１５０とは、１つまたは複数の点で異なっていてもよい。
【００１０】
図２は、例示的なソーシャルグラフ２００を示している。特定の実施形態では、ソーシャルネットワーキングシステム１６０は、１つまたは複数のデータストア内に１つまたは複数のソーシャルグラフ２００を記憶してもよい。特定の実施形態では、ソーシャルグラフ２００は、複数のユーザノード２０２や複数のコンセプトノード２０４を含み得る複数のノードと、それらノードを接続する複数のエッジ２０６とを含んでもよい。図２に示される例示的なソーシャルグラフ２００は、２次元の視覚マップ表現で、教示を目的に示されている。特定の実施形態では、ソーシャルネットワーキングシステム１６０、クライアントシステム１３０、またはサードパーティーシステム１７０は、ソーシャルグラフ２００および適切なアプリケーションに対する関連するソーシャルグラフ情報にアクセスしてもよい。ソーシャルグラフ２００のノードおよびエッジは、例えば、データストア（ソーシャルグラフデータベースなど）に、データオブジェクトとして記憶されてもよい。そのようなデータストアは、ソーシャルグラフ２００のノードまたはエッジの１つまたは複数の検索可能または照会可能なインデックスを含んでもよい。
【００１１】
特定の実施形態では、ユーザノード２０２は、ソーシャルネットワーキングシステム１６０のユーザに対応してもよい。限定ではなく一例として、ユーザは、ソーシャルネットワーキングシステム１６０と対話あるいは通信する、またはソーシャルネットワーキングシステム１６０を通じて対話あるいは通信する、個人（人間であるユーザ）、エンティティ（例えば、企業、ビジネスもしくはサードパーティーアプリケーション）、またはグループ（例えば、個人のもしくはエンティティの）であってもよい。特定の実施形態では、ユーザがソーシャルネットワーキングシステム１６０にアカウントを登録するとき、ソーシャルネットワーキングシステム１６０は、ユーザに対応するユーザノード２０２を作成し、ユーザノード２０２を１つまたは複数のデータストアに記憶してもよい。本明細書で説明されるユーザおよびユーザノード２０２は、必要に応じて、登録ユーザ、および登録ユーザと関連付けられたユーザノード２０２を意味し得る。加えて、または代替として、本明細書で説明されるユーザおよびユーザノード２０２は、必要に応じて、ソーシャルネットワーキングシステム１６０に登録されていないユーザを意味し得る。特定の実施形態では、ユーザノード２０２は、ユーザによって提供される情報、またはソーシャルネットワーキングシステム１６０を含む種々のシステムによって収集される情報と関連付けられてもよい。限定ではなく一例として、ユーザは、氏名、プロフィール画像、コンタクト情報、誕生日、性別、配偶者の有無、家族状態、職業、学歴、嗜好、関心、または他の人口統計情報を提供してもよい。特定の実施形態では、ユーザノード２０２は、ユーザと関連付けられた情報に対応する１つまたは複数のデータオブジェクトと関連付けられてもよい。特定の実施形態では、ユーザノード２０２は、１つまたは複数のウェブページに対応してもよい。
【００１２】
特定の実施形態では、コンセプトノード２０４は、コンセプト（concept）に対応し得る。限定ではなく一例として、コンセプトは、場所（例えば、映画館、レストラン、ランドマーク、もしくは都市）、ウェブサイト（例えば、ソーシャルネットワーキングシステム１６０と関連付けられたウェブサイト、もしくはウェブ−アプリケーションサーバと関連付けられたサードパーティーウェブサイト）、エンティティ（例えば、人、ビジネス、グループ、スポーツチーム、もしくは著名人）、ソーシャルネットワーキングシステム１６０、もしくはウェブアプリケーションサーバなどの外部サーバに位置することができるリソース（例えば、音声ファイル、ビデオファイル、デジタル写真、テキストファイル、構造化文書、もしくはアプリケーション）、不動産もしくは知的財産（例えば、彫刻、絵画、映画、ゲーム、歌曲、アイデア、写真、もしくは書物）、ゲーム、活動、アイデアもしくは理論、別の適切なコンセプト、または２つ以上のそのようなコンセプトに対応してもよい。コンセプトノード２０４は、ユーザによって提供されるコンセプトの情報、またはソーシャルネットワーキングシステム１６０を含む種々のシステムによって収集される情報と関連付けられてもよい。限定ではなく一例として、コンセプトの情報は、氏名もしくは表題、１つまたは複数の画像（例えば、本の表紙の画像）、位置（例えば、アドレスもしくは地理的位置）、ウェブサイト（ＵＲＬと関連付けることができる）、コンタクト情報（例えば、電話番号もしくは電子メールアドレス）、他の適切な情報、またはそのような情報の任意の適切な組み合わせを含んでもよい。特定の実施形態では、コンセプトノード２０４は、コンセプトノード２０４と関連付けられた情報に対応する１つまたは複数のデータオブジェクトと関連付けられてもよい。特定の実施形態では、コンセプトノード２０４は１つまたは複数のウェブページに対応してもよい。
【００１３】
特定の実施形態では、ソーシャルグラフ２００におけるノードは、ウェブページ（「プロフィールページ」と称する場合もある）を表してもよく、またはウェブページによって表されてもよい。プロフィールページは、ソーシャルネットワーキングシステム１６０によってホスティングされてもよく、またはソーシャルネットワーキングシステム１６０にアクセス可能であってもよい。プロフィールページはまた、サードパーティーシステム１７０のサーバと関連付けられたサードパーティーウェブサイト上でホスティングされてもよい。限定ではなく一例として、特定の外部ウェブページに対応するプロフィールページは特定の外部ウェブページであってもよく、かつプロフィールページは、特定のコンセプトノード２０４に対応してもよい。プロフィールページは、他のユーザの全てまたは選択されたサブセットによって参照可能であってもよい。限定ではなく一例として、ユーザノード２０２は、対応するユーザプロフィールページを有してもよく、対応するユーザは、そのページにおいて、コンテンツを追加し、告知し、または自己紹介をすることができる。限定ではなく他の例として、コンセプトノード２０４は、対応するコンセプトプロフィールページを有してもよく、１つまたは複数のユーザは、そのページにおいて、特に、コンセプトノード２０４に対応するコンセプトと関連して、コンテンツを追加し、告知し、または自己紹介をすることができる。
【００１４】
特定の実施形態では、コンセプトノード２０４は、サードパーティーウェブページ、またはサードパーティーシステム１７０によってホスティングされるリソースを表してもよい。サードパーティーウェブページまたはリソースは、とりわけ、コンテンツ、選択可能もしくは他のアイコン、またはアクションもしくはアクティビティを表す他の相互に動作可能なオブジェクト（例えば、ＪａｖａＳｃｒｉｐｔ（登録商標）、ＡＪＡＸ、もしくはＰＨＰのコードで実装することができる）を含んでもよい。限定ではなく一例として、サードパーティーウェブページは、「いいね」、「チェックイン」、「たべる」、「おすすめ」または別の適切なアクションもしくはアクティビティなどの、選択可能なアイコンを含んでもよい。サードパーティーウェブページを参照するユーザは、クライアントシステム１３０に、ユーザのアクションを示すメッセージをソーシャルネットワーキングシステム１６０に送信させるアイコン（例えば、「たべる」）を選択することによって、アクションを行ってもよい。メッセージに応答して、ソーシャルネットワーキングシステム１６０は、ユーザに対応するユーザノード２０２と、サードパーティーウェブページもしくはリソースに対応するコンセプトノード２０４との間のエッジ（例えば、「たべる」エッジ）を作成し、エッジ２０６を１つまたは複数のデータストアに記憶してもよい。
【００１５】
特定の実施形態では、ソーシャルグラフ２００における一対のノードは、１つまたは複数のエッジ２０６によって相互につながれてもよい。一対のノードをつなぐエッジ２０６は、一対のノード間の関係を表してもよい。特定の実施形態では、エッジ２０６は、一対のノード間の関係に対応する１つまたは複数のデータオブジェクトまたは属性を含んでもよく、またはそれらを表してもよい。限定ではなく一例として、第１のユーザは、第２のユーザが第１のユーザの「友達」であることを示してもよい。このインジケーションに応答して、ソーシャルネットワーキングシステム１６０は、「友達申請」を第２のユーザに送信してもよい。第２のユーザが「友達申請」を確認した場合、ソーシャルネットワーキングシステム１６０は、ソーシャルグラフ２００において、第１のユーザのユーザノード２０２を第２のユーザのユーザノード２０２につなぐエッジ２０６を作成し、エッジ２０６をソーシャルグラフ情報として１つまたは複数のデータストアに記憶してもよい。図２の例では、ソーシャルグラフ２００は、ユーザ「Ａ」のユーザノード２０２とユーザ「Ｂ」のユーザノード２０２との友達関係を示すエッジ２０６、およびユーザ「Ｃ」のユーザノード２０２とユーザ「Ｂ」のユーザノード２０２との友達関係を示すエッジを含む。本開示では、特定のユーザノード２０２をつなぐ特定の属性を有する特定のエッジ２０６について説明および示しているが、本開示は、ユーザノード２０２をつなぐ任意の適切な属性を有する任意の適切なエッジ２０６を想定している。限定ではなく一例として、エッジ２０６は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係、フォロワー関係、ビジター関係、加入者関係、上司／部下関係、相互関係、非相互関係、別の適切なタイプの関係、または２つ以上のそのような関係を表してもよい。また、本開示では概して、つながれているノードについて説明するが、本開示はまた、つながれているユーザまたはコンセプトについても説明する。なお、つながれているユーザまたはコンセプトとは、必要に応じて、１つまたは複数のエッジ２０６によってソーシャルグラフ２００においてつながれているそれらのユーザおよびコンセプトに対応するノードを意味する。
【００１６】
特定の実施形態では、ユーザノード２０２とコンセプトノード２０４との間のエッジ２０６は、コンセプトノード２０４と関連付けられたコンセプトに対して、ユーザノード２０２と関連付けられたユーザによって行われる特定のアクションまたはアクティビティを表してもよい。限定ではなく一例として、図２に示すように、ユーザは、各々、エッジのタイプまたはサブタイプに対応し得るコンセプトを、「いいね！」、「通った」、「プレイした」、「聴いた」、「料理した」、「勤務した」、または「観た」として表すことができる。コンセプトノード２０４に対応するコンセプトプロフィールページは、例えば、選択可能な「チェックイン」アイコン（例えば、クリック可能な「チェックイン」アイコン）または選択可能な「お気に入りに追加」アイコンを含んでもよい。同様に、ユーザがそれらのアイコンをクリックした後、ソーシャルネットワーキングシステム１６０は、個別のアクションに対応するユーザのアクションに応答して、「お気に入り」エッジまたは「チェックイン」エッジを作成してもよい。限定ではなく別の例として、ユーザ（ユーザ「Ｃ」）は、特定のアプリケーション（オンラインのミュージックアプリケーションであるＳＰＯＴＩＦＹ（登録商標）を使用して、特定の歌（「ランブルオン」）を聴くことができる。このケースでは、ソーシャルネットワーキングシステム１６０は、ユーザに対応するユーザノード２０２と、歌およびアプリケーションに対応するコンセプトノード２０４との間で「聴いた」エッジ２０６および「使用した」エッジ（図２で示すような）を作成して、ユーザが歌を聴き、アプリケーションを使用したことを示してもよい。さらに、ソーシャルネットワーキングシステム１６０は、歌およびアプリケーションに対応するコンセプトノード２０４の間で、「プレイした」エッジ２０６（図２で示すような）を作成して、特定の歌が特定のアプリケーションによって再生されたことを示してもよい。このケースでは、「プレイした」エッジ２０６は、外部音声ファイル（歌「イマジン」）上で外部アプリケーションのＳＰＯＴＩＦＹ（登録商標）によって行われたアクションに対応する。本開示では、ユーザノード２０２およびコンセプトノード２０４をつなぐ特定の属性を有する特定のエッジ２０６について説明するが、本開示は、ユーザノード２０２およびコンセプトノード２０４をつなぐ任意の適切な属性を有する任意の適切なエッジ２０６を想定している。さらに、本開示では、単一の関係を表す、ユーザノード２０２とコンセプトノード２０４との間の関係について説明するが、本開示は、１つまたは複数の関係を表す、ユーザノード２０２とコンセプトノード２０４との間のエッジを想定している。限定ではなく一例として、エッジ２０６は、ユーザが特定のコンセプトを好むこと、および特定のコンセプトで使用していることの両方を表してもよい。代わりに、別のエッジ２０６は、ユーザノード２０２とコンセプトノード２０４との間（図２に示すようなユーザ「Ｅ」に対するユーザノード２０２と、「ＳＰＯＴＩＦＹ」（登録商標）に対するコンセプトノード２０４との間）の各々のタイプ関係（または、単一の関係の複数）を表してもよい。
【００１７】
特定の実施形態では、ソーシャルネットワーキングシステム１６０は、ソーシャルグラフ２００においてユーザノード２０２とコンセプトノード２０４との間でエッジ２０６を作成してもよい。限定ではなく一例として、コンセプトプロフィールページを参照するユーザは（例えば、ユーザのクライアントシステム１３０にホスティングされたウェブブラウザ特殊用途アプリケーションを使用することによって）、「いいね」アイコンをクリックまたは選択することによって、コンセプトノード２０４により表されるコンセプトをユーザが好んでいるかを示してもよく、「いいね」アイコンによって、ユーザのクライアントシステム１３０が、コンセプトプロフィールページと関連付けられたコンセプトをユーザが好んでいることを示すメッセージをソーシャルネットワーキングシステム１６０に送信することができる。メッセージに応答して、ソーシャルネットワーキングシステム１６０は、ユーザとコンセプトノード２０４との間の「いいね」エッジ２０６によって示されるように、ユーザと関連付けられたユーザノード２０２とコンセプトノード２０４との間でエッジ２０６を作成してもよい。特定の実施形態では、ソーシャルネットワーキングシステム１６０は、エッジ２０６を１つまたは複数のデータストアに記憶してもよい。特定の実施形態では、エッジ２０６は、特定のユーザのアクションに応答して、ソーシャルネットワーキングシステム１６０によって自動的に形成されてもよい。限定ではなく一例として、第１のユーザが写真をアップロードし、動画を閲覧し、または歌を聴く場合、第１のユーザに対応するユーザノード２０２と、それらのコンセプトに対応するコンセプトノード２０４との間でエッジ２０６が形成されてもよい。本開示においては、特定の方式で特定のエッジ２０６を形成することを説明するが、本開示は、任意の適切な方式で任意の適切なエッジ２０６を形成することを想定している。
【００１８】
また、任意の２つのノード間の分離の度合いが、１つのノードから別のノードまでソーシャルグラフを移動するのに必要なホップ（またはエッジ）の最小数として規定される。この２つのノード間の分離の度合いは、ソーシャルグラフにおいて２つのノードによって表されるユーザ間の関係またはコンセプト間の関係の指標とみなすことができる。
【００１９】
ソーシャルネットワーキングシステムは、ユーザに関連付けることができる記録されたアクティビティまたはアクションに基づいて、頻繁に更新されたコンテンツをユーザに提供してもよい。特定の実施形態では、ソーシャルネットワーキングシステムは、ニュースフィードサービスをサポートしてもよい。特定の実施形態では、ニュースフィードは、１つまたは複数のニュースフィード記事を含むデータフォーマットを備えてもよい。各ニュースフィード記事は、具体的な主題またはトピックに関連するコンテンツを含んでもよい。特定の実施形態では、ソーシャルネットワーキングシステムは、具体的なユーザのアクションに関連するアクティビティまたはアクションをニュースフィード記事に集約してもよい。例えば、第１のユーザは、写真をソーシャルネットワーキングシステムに投稿してもよく、ソーシャルネットワーキングシステムの他のユーザは、写真に関連する種々のアクティビティまたはアクションを行ってもよい。他のユーザは、写真、写真への投稿コメントを「いいね」と表したり、１つまたは複数の特定のユーザを写真にタグ付けしたりしてもよい。ソーシャルネットワーキングシステムは、写真に関連するアクティビティを、写真の画像や、第１のユーザのプロフィール画像や、他のユーザによる写真の「いいね」の総数や、写真に関連する１つまたは複数のコメントを備えるニュースフィード記事に集約してもよい。別の例として、第１のユーザは、場所（例えば、ランドマーク、レストラン、デパートメントストア）に対応するウェブページ（ソーシャルネットワーキングシステムまたはサードパーティーシステムによって維持される）をチェックインしてもよい。ソーシャルネットワーキングシステムの他のユーザは、チェックインアクティビティを「いいね」と表したり、またはチェックインアクティビティに関連するコメントを投稿したりしてもよい。ソーシャルネットワーキングシステムは、チェックインアクティビティに関連するアクティビティを、ウェブページのリンクおよび画像や、第１のユーザのプロフィール画像や、他のユーザによるチェックインアクティビティの「いいね」の総数や、チェックインアクティビティに関連する１つまたは複数のコメントを備えるニュースフィード記事に集約してもよい。ソーシャルネットワーキングシステムはまた、ウェブページ、またはウェブページに関連する広告（例えば、ウェブページに関連するビジネスからのオンラインクーポン）を、更新したニュースフィード記事に集約してもよい。特定の実施形態では、ソーシャルネットワーキングシステムは、１つまたは複数のニュースフィード記事を含むニュースフィードを、参照するユーザに提示してもよい。例えば、参照するユーザのクライアントデバイスによってホスティングされるアプリケーション（例えば、ウェブブラウザ）またはオペレーティングシステムは、ソーシャルネットワーキングシステムからニュースフィードを取り出し、そのニュースフィードをアプリケーションのユーザインタフェースに表示してもよい。アプリケーションは、ニュースフィードにおける各ニュースフィード記事を、アプリケーションのユーザインタフェースにおいて（または、オペレーティングシステムのグラフィカルユーザインタフェースにおいて）、それぞれのフレーム（例えば、ハイパーテキストマークアップ言語、またはＨＴＭＬのｉＦｒａｍｅ（登録商標））に表示してもよい。
【００２０】
ソーシャルネットワーキングシステムは、ソーシャルグラフ情報に基づいて、アクティビティまたはアクションをニュースフィード記事に集約してもよい。例えば、ソーシャルネットワーキングシステムは、ソーシャルグラフ上において、参照するユーザからの指定された分離度合いの範囲内（例えば、２つの分離度合いの範囲内）に存在するユーザによって行われるアクティビティまたはアクションに関連するニュースフィード記事を含むニュースフィードを、参照するユーザに対して集約してもよい。ソーシャルネットワーキングシステムは、プライバシー設定に基づいて、アクティビティまたはアクションをニュースフィード記事に集約してもよい。例えば、ユーザは、ユーザによって行われた特定のアクティビティの情報にどの他のユーザがアクセスすることができるかを指定してもよい。ソーシャルネットワーキングシステムは、参照するユーザにアクセス可能なアクティビティに関連するニュースフィード記事を含むニュースフィードを、参照するユーザに対して集約してもよい。
【００２１】
オンラインサービスは、オンラインサービスのユーザにサービスおよびデータを提供してもよい。例えば、ウェブポータルシステムは、電子メール、ゲーム、ショッピング、ニュース、天気予報、株式相場、およびスポーツの結果などのオンラインサービスを提供してもよい。別の例では、ソーシャルネットワーキングウェブサイトは、ウォールポスト、フォトシェアリング、イベントオーガニゼーション、メッセージング、ゲーム、または広告などの、オンラインソーシャルネットワーキングサービスを提供してもよい。オンラインサービスは、ユーザに対し、オンラインサービスに登録して、オンラインサービスにより提供されるサービスおよびデータにアクセスすることを依頼してもよい。オンラインサービスはまた、ユーザに対し、オンラインサービスにアクセスするユーザを認証するためのユーザ認証情報（例えば、ユーザ識別子およびパスワード）をセットアップすることを問い合わせてもよい。ユーザは、クライアントコンピューティングデバイスによって表示される（オンラインサービスの）ログインユーザインタフェース（例えば、クライアントコンピューティングデバイス上で稼動するウェブブラウザにより表示されるログインウェブページ）でユーザ認証情報を提供することによって、クライアントコンピューティングデバイス上のオンラインサービスにアクセスしてもよい。オンラインサービスは、特定のユーザに対するプライバシー設定に基づいて、特定のユーザと関連付けられた特定の情報をどのようにオンラインサービスの別のユーザと共有することができるかを判定してもよい。
【００２２】
オンラインサービスのユーザは、ローカル無線ネットワーク上で、情報を共有し、または相互に対話してもよい。例えば、オンラインサービスのユーザは、２人のユーザのブルートゥース（登録商標）対応の携帯電話間でのブルートゥース（登録商標）接続を使用して、近くの別のユーザと、情報（例えば、電子メールアドレス、電話番号、およびプロフィール画像など）を共有してもよい。特定の実施形態では、ソーシャルネットワーキングシステム上の人々のグループは、ブルートゥース（登録商標）もしくはＷｉ−Ｆｉ（登録商標）ダイレクト、またはピアツーピア無線接続を使用して、集会またはイベントにおいて写真を撮り、かつ写真を共有し、もしくは写真における集会の出席者を自動的にタグ付けして、出席者のリストを自動的に確立してもよい。特定の実施形態では、近くにいる個人のグループは、一時的なメッセージングを通信する。ユーザが相互に近くにいるとき、一時的なメッセージングが自動的に開始されてもよい。特定の実施形態では、ピアのグループに基づいて、相互に伝言するユーザのリストが自動的に生成されてもよい。ローカル無線ネットワーク上で情報を共有したり、他のユーザと対話したりすることは、オンラインサービスでのユーザの経験を高めることができる。しかしながら、ローカル無線ネットワーク上でのデータ伝送がオンラインサービスのプライバシー設定によるものではなく、物理的な近隣者によって判定されることが多いので、ローカル無線ネットワーク上で情報を共有することが、オンラインサービスのプライバシー設定に結びつかないことがある。プライバシーの不安がない場合でさえ、ある部屋の何人かの人々が同一の通信セッションに参加して相互の関係を知っているときに自動グループ生成が行われることを保証する確立された方法が存在しないことがある。ローカル無線ネットワーク上でのオンラインサービスのユーザの情報を簡易にブロードキャストすることは、ユーザのプライバシー設定に基づいて情報にアクセスすることが許可されていない人々に情報を公開してしまうことがある。特定の実施形態は、無線データのプライバシーを維持しながら、無線接続上で情報を共有する方法を説明する。特定の実施形態は、オンラインサービスを通じて、手動でのユーザ入力なしに、無線データのプライバシーを維持することができる。
【００２３】
図３は、無線データのプライバシーを維持する例示的な方法３００を示す。方法３００は、オンラインサービスを提供するシステムの１つまたは複数のサーバによって実装されてもよい。例えば、方法３００は、ソーシャルネットワーキングシステムの１つまたは複数のサーバによって実装されてもよい。方法３００は、ステップ３１０において開始することができる。特定の実施形態では、ステップ３１０において、オンラインサービスを提供するシステムの１つまたは複数のサーバは、オンラインサービスの第１のユーザと関連付けられた第１のクライアントコンピューティングデバイスにトークンを送信することができる。第１のユーザは、個人またはエンティティ（例えば、ビジネス、ライブラリ、アプリケーション）であってもよい。第１のユーザは、先に説明したソーシャルネットワーキングシステムの任意の適切なオブジェクト（例えば、ユーザ、コンセプト）であってもよい。第１のクライアントコンピューティングデバイスは、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、セルラ電話、スマートフォン、または第１のユーザと関連付けられた任意の適切なクライアントコンピューティングデバイスであってもよい。サーバが、第１のクライアントコンピューティングデバイスとサーバとの間で、安全な接続を通じて（例えば、ハイパーテキストトランスファープロトコルセキュアもしくはＨＴＴＰＳプロトコル、またはセキュアソケットレイヤもしくはＳＳＬプロトコルに基づいて）、第１のクライアントコンピューティングデバイスにトークンを送信してもよい。
【００２４】
特定の実施形態では、サーバは、第１のユーザのユーザ識別子に少なくとも部分的に基づいてトークンを生成してもよい。例えば、サーバは、オンラインサービスの第１のユーザのユーザ識別子を暗号化することによってトークンを生成してもよい。例えば、サーバは、ワンタイムパッドアルゴリズムに基づいて第１のユーザのユーザ識別子を暗号化してもよい。他の実施形態では、サーバは、番号（例えば、乱数、連続した乱数）を生成し、その番号を安全な接続を通じて第１のクライアントコンピューティングデバイスに送信してもよい。特定の実施形態では、サーバは、（例えば、ＳＨＡ−２５６ハッシュアルゴリズムを使用して）第１のユーザのユーザ識別子のハッシュを生成してもよい。特定の実施形態では、サーバは、ユーザからの暗号化されたメッセージを復号化するためのセッション鍵を提供してもよい。第１のクライアントコンピューティングデバイスは、その番号で第１のユーザのユーザ識別子を暗号化することによって（例えば、その番号を暗号鍵として使用することによって）トークンを生成してもよい。特定の実施形態は、第１のユーザのユーザ識別子に基づいてトークンを生成する任意の適切な方法を想定している。
【００２５】
特定の実施形態では、トークンが切り捨てられ、物理無線プロトコル内で媒体アクセス制御（ＭＡＣ）識別子として使用されてもよい。アプリケーションレイヤにおける安全な接続の使用にも関わらず（例えば、ＨＴＴＰＳまたはＳＳＬプロトコルに基づいて）、Ｗｉ−Ｆｉ（登録商標）８０２．１１のＭＡＣレイヤおよびブルートゥース（登録商標）は、スタティックで一意な４８ビットの識別子（ＭＡＣアドレス）を利用してもよい。このＭＡＣアドレスは、おそらくは第１のユーザの位置のプライバシーを危険にさらすローカルな無線環境において追跡されることがある。限定されたユーザ環境内で衝突する可能性が小さいと仮定すると、サーバによって生成されたトークンをＭＡＣアドレスとして使用することが可能な場合がある。妥当なトークンのリフレッシュレートで第１のユーザの位置が追跡される可能性を低くすることができる。
【００２６】
特定の実施形態では、第１のクライアントコンピューティングデバイスは、無線接続を通じて、オンラインサービスの第２のユーザと関連付けられた第２のクライアントコンピューティングデバイスにトークンを送信してもよい。第２のユーザは、個人またはエンティティ（例えば、ビジネス、ライブラリ、アプリケーション）であってもよい。第２のユーザは、上述したようなソーシャルネットワーキングシステムの任意の適切なオブジェクト（例えば、ユーザ、コンセプト）であってもよい。無線接続は、Ｗｉ−Ｆｉ（登録商標）、ブルートゥース（登録商標）、ピアツーピアセルラ、近距離無線通信（ＮＦＣ）、赤外線（ＩＲ）、または無線周波数識別（ＲＦＩＤ）プロトコルに基づいてもよい。無線接続は、暗号化されてもよいし、または暗号化されなくてもよい。第１のクライアントコンピューティングデバイスから第２のクライアントコンピューティングデバイスに直接送信されることに加えて、トークンは最初に、オンラインサービスの別のユーザと関連付けられた別のクライアントコンピューティングデバイスに送信されてもよく、他のクライアントコンピューティングデバイスによって第２のクライアントコンピューティングデバイスに中継されてもよい。すなわち、無線接続はさらに、オンラインサービスの第３のユーザと関連付けられた第３のクライアントコンピューティングデバイスを備えてもよい。無線接続は、各々がオンラインサービスのユーザと関連付けられた複数のクライアントコンピューティングデバイスの間のピアツーピアネットワークを備えてもよい。トークンは、ピアツーピアネットワークを通じて第１のクライアントコンピューティングデバイスから第２のクライアントコンピューティングデバイスに送信されてもよい。特定の実施形態は、無線接続を通じて第１のクライアントコンピューティングデバイスから第２のクライアントコンピューティングデバイスにトークンを送信する任意の適切な方法を想定している。特定の実施形態では、ステップ３２０において、オンラインサービスを提供するシステムのサーバは、オンラインサービスの第２のユーザと関連付けられた第２のクライアントコンピューティングデバイスからトークンを受信してもよい。サーバはまた、第２のユーザのユーザ識別子を第２のクライアントコンピューティングデバイスから受信してもよい。トークン（および、第２のユーザのユーザ識別子）は、安全な接続を通じて第２のクライアントコンピューティングデバイスからサーバに送信されてもよい。
【００２７】
特定の実施形態では、ステップ３３０において、サーバは、第１のユーザのユーザ識別子に少なくとも部分的に基づいてトークンを検証してもよい。例えば、サーバは、トークンを復号し、復号したトークンが第１のユーザのユーザ識別子に一致することを検証してもよい。一部の実施形態では、トークンは、サーバによって検証された後に失効してもよい。すなわち、トークンは、ワンタイムトークン（「ノンス」（nonce））であってもよい。
【００２８】
特定の実施形態では、ステップ３４０において、サーバは、トークンが検証された場合、第２のユーザにアクセス可能なデータを判定してもよい。サーバは、第１のユーザによって（または、オンラインサービスを提供するシステムによって）設定された１つまたは複数のプライバシー設定に基づいて、第２のユーザにアクセス可能なデータを判定してもよい。例えば、第１のユーザは、第１のユーザのコンタクト情報（例えば、電話番号、電子メールアドレス、およびインスタントメッセージもしくはＩＭユーザ識別子など）へのアクセスを有するユーザのリスト（例えば、オンラインサービスのユーザ識別子のリスト）を作成してもよい。第２のユーザ（例えば、第２のユーザのユーザ識別子）をリストと比較することによって、サーバは、第１のユーザのコンタクト情報が第２のユーザにアクセス可能であるかを判定してもよい。
【００２９】
ソーシャルネットワーキングシステムなどのオンラインサービスの場合、サーバは、ソーシャルネットワーキングシステムのソーシャルグラフにアクセスして、トークンを検証してもよい。サーバは、ソーシャルグラフにおいて、第１のユーザに対応する第１のノードと第２のユーザに対応する第２のノードとの間のエッジの数にさらに少なくとも基づいて（すなわち、第１のノードと第２のノードとの間の分離度合いに基づいて）トークンを検証してもよい。例えば、第１のユーザは、ソーシャルグラフにおける第１のユーザの第１および第２の段階の友達のみが第１のユーザの情報にアクセスすることができるという点で、プライバシー設定を設定してもよい。サーバは、トークンが第１のユーザと関連付けられ、かつソーシャルグラフ上で第２のユーザが第１のユーザから２つの分離度合いの範囲内に存在する場合に、トークンが有効であると判定してもよい。サーバは、トークンが有効である場合、第１のユーザの情報が第２のユーザにアクセス可能であると判定してもよい。
【００３０】
特定の実施形態では、ステップ３５０において、サーバは、第２のユーザにアクセス可能なデータの少なくとも一部を第２のクライアントコンピューティングデバイスに送信してもよい。例えば、サーバは、オンラインサービスの第１のユーザのユーザ識別子を、第２のクライアントコンピューティングデバイスに送信してもよい。第２のクライアントコンピューティングデバイスは、第２のクライアントコンピューティングデバイス上で稼動し、よって第２のユーザに第１のユーザの存在を通知するグラフィカルユーザインタフェースにおいて第１のユーザのユーザ識別子を表示してもよい。別の例では、上述したように、第１のユーザのコンタクト情報が第２のユーザにアクセス可能であるとサーバが判定した場合に、サーバは、第１のユーザのコンタクト情報の一部（例えば、電子メールアドレス）を第２のクライアントコンピューティングデバイスに送信し、第２のクライアントコンピューティングデバイスに電子メールアドレスを第２のユーザに表示させてもよい。さらなる別の例では、サーバは、ソーシャルネットワーキングシステムの第１および第２のユーザと共通の友達のリスト（例えば、ソーシャルグラフにおいて第１のユーザに対応する第１のノードと第２のユーザに対応する第２のノードとにそれぞれつながるノードに対応するユーザ）について、上述のソーシャルグラフにアクセスしてもよい。サーバは、第２のユーザに表示されることになる共通の友達のリストを第２のクライアントコンピューティングデバイスに送信してもよい。サーバはまた、第１のユーザに表示されることになる共通の友達のリストを第１のクライアントコンピューティングデバイスに送信してもよい。共通の友達のリストを、第１のユーザと第２のユーザとの「会話ブレーカ」（ソーシャルネットワーキングシステムにおいて、非常に近くにいるが、未だ第１の段階の友達ではない）とすることができる。
【００３１】
また、サーバは、第２のユーザに関連する情報を第１のクライアントコンピューティングデバイスに送信してもよい。例えば、サーバは、第２のユーザの氏名およびプロフィール画像を第１のクライアントコンピューティングデバイス（すなわち、第１のユーザ）に送信してもよい。
【００３２】
トークンが検証された場合、サーバは、第１のまたは第２のユーザと関連付けられたアプリケーションに関連する情報を第２のクライアントコンピューティングデバイスに送信してもよい。例えば、サーバは、第１のユーザが第１のクライアントコンピューティングデバイス上で現在行っているゲームアプリケーションの情報（例えば、ゲームアプリケーションへのリンク、ゲームアプリケーションの特定のステージ）を、第２のクライアントコンピューティングデバイスに送信してもよい。第２のユーザは、その情報に基づいて、ゲームアプリケーションにおいて（例えば、第１のユーザと同じゲームのステージにおいて）、第２のクライアントコンピューティングデバイスから第１のユーザと合流してもよい。サーバはまた、第２のクライアントコンピューティングデバイス上で稼働しているアプリケーションの状態を変更させてもよい。例えば、サーバは、第２のクライアントコンピューティングデバイス上で稼働しているニュースフィードアプリケーションを、ニュースフィード記事の表示を再順序付けさせ、それによって第１のユーザに関連する記事がニュースフィードアプリケーションによって表示されるニュースフィードのトップに配置されるようにするメッセージを、第２のクライアントコンピューティングデバイスに送信してもよい。別の例では、サーバは、第２のクライアントコンピューティングデバイス上で稼働しているアドレスブックアプリケーションに、第１のユーザの第１のコンタクト情報を表示させるようにする（例えば、コンタクトのリストのトップで）メッセージを、第２のクライアントコンピューティングデバイスに送信してもよい。
【００３３】
上述したように、無線ネットワーク上で第１のユーザの情報（例えば、ユーザ識別子）を簡易にブロードキャストする代わりに、第１のクライアントコンピューティングデバイスは、最初に、オンラインサービスを提供するシステムのサーバから、第１のユーザと関連付けられたトークンを受信し、無線接続上で、第２のユーザと関連付けられた第２のクライアントコンピューティングデバイスにトークンを送信（ブロードキャスト）してもよい。次いで、第２のクライアントコンピューティングデバイスは、オンラインサービスを提供するシステムのサーバにトークンを送信して、サーバに、トークンが第１のユーザと関連付けられていることを検証させてもよい。次いで、サーバは、第２のユーザにアクセス可能なデータを判定し（トークンが有効な場合）、第２のユーザにアクセス可能なデータの少なくとも一部を第２のクライアントコンピューティングデバイスに送信してもよい。ここで、トークンの生成、交換および検証、トークンが検証された場合の第２のユーザにアクセス可能なデータの判定、ならびに第２のユーザによる消費に対して有効な情報（第２のユーザにアクセス可能なデータ）を送信することは、ユーザの手動の入力なしに、バックグラウンドで行われてもよい。さらに、トークンがサーバによって検証された後、第１のクライアントコンピューティングデバイスと第２のクライアントコンピューティングデバイスとの間（および第１のユーザと第２のユーザとの間）の情報共有および対話は、必ずしも第１のクライアントコンピューティングデバイスと第２のクライアントコンピューティングデバイスとの間のピアツーピア無線接続を通じてではなく、オンラインサービスを提供するシステムを通じてであってもよい。
【００３４】
一部の実施形態では、サーバは、第１のおよび第２のクライアントコンピューティングデバイスと関連付けられたそれぞれの位置に基づいて、トークンを検証してもよい。例えば、第２のクライアントコンピューティングデバイスおよび第１のクライアントコンピューティングデバイスが第１のユーザの自宅の位置またはその近くにある場合、サーバは、トークンを検証し、かつ第２のユーザが第１のユーザの自宅における第１のユーザとともにあり、よって第１のユーザにとって信頼された人間である可能性が高いので、第１のユーザのプライバシー設定に関わらず、第２のユーザが第１のユーザの情報にアクセスすることができることを判定してもよい。同様に、第２のクライアントコンピューティングデバイスが第１のユーザの職場にあり、またはその近くにあるとサーバが判定した場合、サーバは、トークンを検証し、第２のユーザが第１のユーザにとって信頼された人間である可能性が高いので、第１のユーザのプライバシー設定に関わらず、第２のユーザが第１のユーザの情報にアクセスすることができることを判定してもよい。第１の（または、第２の）クライアントコンピューティングデバイスは、グローバルポジショニングシステムつまりＧＰＳ信号、セルラ信号三角測量、Ｗｉ−Ｆｉ（登録商標）ホットスポットの位置、または任意の適切な位置測量技術に基づいてその位置を判定し、その位置をサーバに送信してもよい。サーバは、第１の（または第２の）ユーザの位置チェックインアクティビティに基づいて、第１の（または第２の）クライアントコンピューティングデバイスの位置情報を判定してもよい。特定の実施形態は、第１および第２のクライアントコンピューティングデバイスの位置情報を判定する任意の適切な方法を想定している。
【００３５】
図４は、例示的なピアツーピアネットワークを示している。３人のユーザ４０１、４０２、４０３のモバイルデバイスは、Ｗｉ−Ｆｉ（登録商標）ダイレクト、ブルートゥース（登録商標）、セルラ直接通信、またはＲＦＩＤなどのピアツーピア無線通信プロトコルを通じて相互に通信している間は、相互に物理的に近接している。３人のユーザの各モバイルデバイスは、ソーシャルネットワーキングシステムのユーザのそれぞれのユーザ識別子に基づいて、ソーシャルネットワーキングシステムのサーバからトークンを受信する。モバイルデバイスは全て、各ペアの接続４０４、４０５、４０６を通じて、または通信プロトコルの範囲が制限された場合のより小さなサブセットを介したトークンの蓄積および通信を通じてトークンを交換する。モバイルデバイスは、他のモバイルデバイスから受信したそれぞれのトークンを、ユーザ識別子に変換するためにソーシャルネットワークに送信する。ユーザ「Ａ」４０１およびユーザ「Ｂ」４０２は、ソーシャルネットワーキングシステム上で友達（４０７）であり、したがって、各々がそれぞれのモバイルデバイス上で他の人の情報を自動的に（参照するために）受信してもよい。ユーザ「Ａ」およびユーザ「Ｃ」は友達ではないが、両者は、同一の学術機関への共有されたつながり（これは共有されたイベントまたは任意の同様にマッチした、学術的な、専門的な、もしくは個人的な努力であり得る）が、物理的な環境でソーシャルネットワーキングシステム情報の共有を可能にすることを指定している。学校「スタンフォード」４０８に相互に通った４０９，４１０ということによって、情報の共有がまた自動的となり得るが、追加的なコンテキストでは、共有されたつながりは友達関係を通じないことに留意されたい。それらの２人のユーザは、物理的に近接しているので、出会いの結果として、相互に「友達」となり得る。ユーザ「Ｂ」およびユーザ「Ｃ」は物理的に近接しているが、ソーシャルネットワーキングシステム上では相互の直接のつながりを有さず、それぞれのモバイルデバイスは、ソーシャルネットワーキングシステム上のプライバシー設定によって、モバイルデバイス上の相互の物理的な存在を示さない。
【００３６】
特定の実施形態は、必要に応じて、図３の方法の１つまたは複数のステップを繰り返してもよい。本開示は、図３の方法の特定のステップを、特定の順序で行うものとして説明および示しているが、本開示は、任意の適切な順序での図３の方法の任意の適切なステップを行うことを想定している。さらに、本開示は、図３の方法の特定のステップを実行する特定のコンポーネント、デバイス、またはシステムを説明および示しているが、本開示は、図３の方法の任意の適切なステップを実行する任意の適切なコンポーネント、デバイス、またはシステムの任意の適切な組み合わせを想定している。
【００３７】
図５は、例示的なコンピュータシステム５００を示している。特定の実施形態では、１つまたは複数のコンピュータシステム５００は、本明細書で説明または示した１つまたは複数の方法の１つまたは複数のステップを実行する。特定の実施形態では、１つまたは複数のコンピュータシステム５００は、本明細書で説明または示した機能を提供する。特定の実施形態では、１つまたは複数のコンピュータシステム５００上で稼働しているソフトウェアは、本明細書で説明または示した１つまたは複数の方法のうちの１つまたは複数のステップを実行し、あるいは、本明細書で説明または示した機能を提供する。特定の実施形態は、１つまたは複数のコンピュータシステム５００の１つまたは複数の部分を含む。ここで、コンピュータシステムへの言及は、必要に応じて、コンピューティングデバイスを包含することがあり、逆も同様である。さらに、コンピュータシステムへの言及は、必要に応じて、１つまたは複数のコンピュータシステムを包含することがある。
【００３８】
本開示は、任意の適切な数のコンピュータシステム５００を想定するとともに、本開示は、任意の適切な物理的形式をとるコンピュータシステム５００を想定している。限定ではなく一例として、コンピュータシステム５００は、組み込みコンピュータシステム、システムオンチップ（ＳＯＣ）、シングルボードコンピュータシステム（ＳＢＣ）（例えば、コンピュータオンモジュール（ＣＯＭ）またはシステムオンモジュール（ＳＯＭ）など）、デスクトップコンピュータシステム、ラップトップもしくはノートブックコンピュータシステム、インタラクティブキオスク、メインフレーム、コンピュータシステムのメッシュ、携帯電話、携帯情報端末（ＰＤＡ）、サーバ、タブレットコンピュータシステム、またはそれらのうち２つ以上の組み合わせであってもよい。必要に応じて、コンピュータシステム５００は、１つまたは複数のコンピュータシステム５００を含んでもよく、単一もしくは分散されてもよく、複数の位置にわたってもよく、複数のマシンにわたってもよく、複数のデータセンタにわたってもよく、あるいは、１つまたは複数のネットワークにおいて１つまたは複数のクラウドコンポーネントを含み得るクラウドに存在してもよい。必要に応じて、１つまたは複数のコンピュータシステム５００は、実質的な空間的または時間的な制限なしに、本明細書で説明または示した１つまたは複数の方法のうちの１つまたは複数のステップを実行してもよい。限定ではなく一例として、１つまたは複数のコンピュータシステム５００は、リアルタイムで、またはバッチモードで、本明細書で説明あるいは示した１つまたは複数の方法のうちの１つまたは複数のステップを実行してもよい。１つまたは複数のコンピュータシステム５００は、必要に応じて、異なる時間で、または異なる位置で、本明細書で説明あるいは示した１つまたは複数の方法のうちの１つまたは複数のステップを実行してもよい。
【００３９】
特定の実施形態では、コンピュータシステム５００は、プロセッサ５０２、メモリ５０４、記憶装置５０６、入力／出力（Ｉ／Ｏ）インタフェース５０８、通信インタフェース５１０、およびバス５１２を含む。本開示では、特定の配置において特定の数の特定のコンポーネントを有する特定のコンピュータシステムを説明および示しているが、本開示は、任意の適切な配置において任意の適切な数の任意の適切なコンポーネントを有する任意の適切なコンピュータシステムを想定している。
【００４０】
特定の実施形態では、プロセッサ５０２は、コンピュータプログラムを構成する命令などの命令を実行するハードウェアを含む。限定ではなく一例として、命令を実行するために、プロセッサ５０２は、内部レジスタ、内部キャッシュ、メモリ５０４、または記憶装置５０６から命令を取り出し（またはフェッチ）、それらを復号および実行し、次いで、１つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ５０４、または記憶装置５０６に書き込んでもよい。特定の実施形態では、プロセッサ５０２は、データ、命令、またはアドレスに対する１つまたは複数の内部キャッシュを含んでもよい。本開示は、必要に応じて、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ５０２を想定している。限定ではなく一例として、プロセッサ５０２は、１つまたは複数の命令キャッシュ、１つまたは複数のデータキャッシュ、および１つまたは複数の変換索引バッファ（ＴＬＢ）を含んでもよい。命令キャッシュにおける命令は、メモリ５０４または記憶装置５０６における命令のコピーであってもよく、命令キャッシュは、プロセッサ５０２によるそれらの命令の取り出しを加速させることができる。データキャッシュにおけるデータは、処理を行うためにプロセッサ５０２で実行する命令のためのメモリ５０４または記憶装置５０６におけるデータのコピーや、プロセッサ５０２で実行する後続命令によるアクセスのためにあるいはメモリ５０４もしくは記憶装置５０６への書き込みのためにプロセッサ５０２で実行された先の命令の結果や、他の適切なデータであってもよい。データキャッシュは、プロセッサ５０２による読み込み動作および書き込み動作を加速させることができる。ＴＬＢは、プロセッサ５０２に対する仮想アドレス変換を加速させることができる。特定の実施形態では、プロセッサ５０２は、データ、命令、またはアドレスに対する１つまたは複数の内部レジスタを含んでもよい。本開示は、必要に応じて、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ５０２を想定している。必要に応じて、プロセッサ５０２は、１つまたは複数の論理演算ユニット（ＡＬＵ）を含んでもよく、マルチコアプロセッサであってもよく、あるいは１つまたは複数のプロセッサ５０２を含んでもよい。本開示では、特定のプロセッサについて説明および示しているが、本開示は、任意の適切なプロセッサを想定している。
【００４１】
特定の実施形態では、メモリ５０４は、プロセッサ５０２が実行する命令や、プロセッサ５０２を動作させるためのデータを記憶するメインメモリを含む。限定ではなく一例として、コンピュータシステム５００は、記憶装置５０６または別のソース（例えば、別のコンピュータシステム５００）からメモリ５０４に命令をロードしてもよい。この場合、プロセッサ５０２は、メモリ５０４から内部レジスタまたは内部キャッシュに命令をロードしてもよい。命令を実行するために、プロセッサ５０２は、内部レジスタまたは内部キャッシュから命令を取り出し、それらを復号してもよい。命令を実行する間、またはその後、プロセッサ５０２は、１つまたは複数の結果（中間または最終結果とすることができる）を、内部レジスタまたは内部キャッシュに書き込んでもよい。この場合、プロセッサ５０２は、それらの結果のうちの１つまたは複数をメモリ５０４に書き込んでもよい。特定の実施形態では、プロセッサ５０２は、１つまたは複数の内部レジスタもしくは内部キャッシュあるいはメモリ５０４（記憶装置５０６やその他のものとは対照的なもの）において命令のみを実行したり、１つまたは複数の内部レジスタもしくは内部キャッシュあるいはメモリ５０４（記憶装置５０６やその他のものとは対照的なもの）においてデータのみを処理したりしてもよい。１つまたは複数のメモリバス（各々がアドレスバスおよびデータバスを含むことができる）は、プロセッサ５０２をメモリ５０４に結合し得る。バス５１２は、以下に説明するように、１つまたは複数のメモリバスを含んでもよい。特定の実施形態では、１つまたは複数のメモリ管理ユニット（ＭＭＵ）は、プロセッサ５０２とメモリ５０４との間に存在し、プロセッサ５０２によって要求されるメモリ５０４へのアクセスを促進することができる。特定の実施形態では、メモリ５０４は、ランダムアクセスメモリ（ＲＡＭ）を含む。このＲＡＭは、必要に応じて揮発性メモリであってもよい。必要に応じて、このＲＡＭは、ダイナミックＲＡＭ（ＤＲＡＭ）またはスタティックＲＡＭ（ＳＲＡＭ）であってもよい。さらに、必要に応じて、このＲＡＭは、単一ポートまたはマルチポートＲＡＭであってもよい。本開示は、任意の適切なＲＡＭを想定している。メモリ５０４は、必要に応じて、１つまたは複数のメモリ５０４を含んでもよい。本開示では、特定のメモリについて説明および示しているが、本開示は、任意の適切なメモリを想定している。
【００４２】
特定の実施形態では、記憶装置５０６は、データまたは命令に対する大容量記憶装置を含む。限定ではなく一例として、記憶装置５０６は、ハードディスクドライブ（ＨＤＤ）、フロッピー（登録商標）ディスクドライブ、フラッシュメモリ、光ディスク、磁気光ディスク、磁気テープ、もしくはユニバーサルシリアルバス（ＵＳＢ）、またはそれらのうち２つ以上の組み合わせを含んでもよい。記憶装置５０６は、必要に応じて、着脱可能または着脱不能（または固定）媒体を含んでもよい。記憶装置５０６は、必要に応じて、コンピュータシステム５００の内部または外部にあってもよい。特定の実施形態では、記憶装置５０６は、不揮発性、ソリッドステートメモリである。特定の実施形態では、記憶装置５０６は、読み出し専用メモリ（ＲＯＭ）を含む。必要に応じて、このＲＯＭは、マスクプログラムＲＯＭ、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電子的消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電気的消去再書き込みＲＯＭ（ＥＡＲＯＭ）、もしくはフラッシュメモリ、またはそれらのうち２つ以上の組み合わせであってもよい。本開示は、任意の適切な物理的形式をとる大容量記憶装置５０６を想定している。記憶装置５０６は、必要に応じて、プロセッサ５０２と記憶装置５０６との間の通信を促進する１つまたは複数の記憶制御ユニットを含んでもよい。必要に応じて、記憶装置５０６は、１つまたは複数の記憶装置５０６を含んでもよい。本開示では、特定の記憶装置について説明および示しているが、本開示は、任意の適切な記憶装置を想定している。
【００４３】
特定の実施形態では、Ｉ／Ｏインタフェース５０８は、コンピュータシステム５００と１つまたは複数のＩ／Ｏデバイスとの間の通信のための１つまたは複数のインタフェースを提供する、ハードウェア、ソフトウェア、またはその両方を含む。コンピュータシステム５００は、必要に応じて、それらのＩ／Ｏデバイスの１つまたは複数を含んでもよい。それらのＩ／Ｏデバイスの１つまたは複数によって、人間とコンピュータシステム５００との間の通信が可能になる。限定ではなく一例として、Ｉ／Ｏデバイスは、キーボード、キーパッド、マクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、静止カメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の適切なＩ／Ｏデバイス、またはそれらのうち２つ以上の組み合わせを含んでもよい。Ｉ／Ｏデバイスは、１つまたは複数のセンサを含んでもよい。本開示は、それらのための任意の適切なＩ／Ｏデバイスおよび任意の適切なＩ／Ｏインタフェース５０８を含み得る。必要に応じて、Ｉ／Ｏインタフェース５０８は、プロセッサ５０２がそれらＩ／Ｏデバイスのうちの１つまたは複数を駆動させることを可能にする１つまたは複数のデバイスまたはソフトウェアドライバを含んでもよい。Ｉ／Ｏインタフェース５０８は、必要に応じて、１つまたは複数のＩ／Ｏインタフェース５０８を含んでもよい。本開示は、特定のＩ／Ｏインタフェースについて説明および示しているが、本開示は、任意の適切なＩ／Ｏインタフェースを想定している。
【００４４】
特定の実施形態では、通信インタフェース５１０は、コンピュータシステム５００と、１つまたは複数の他のコンピュータシステムあるいは１つまたは複数のネットワークとの間の通信（例えば、パケットによる通信）のための１つまたは複数のインタフェースを提供する、ハードウェア、ソフトウェア、またはその両方を含む。限定ではなく一例として、通信インタフェース５１０は、イーサネット（登録商標）もしくは他の有線によるネットワークと通信するネットワークインタフェースコントローラ（ＮＩＣ）もしくはネットワークアダプタ、ＷＩ−ＦＩ（登録商標）ネットワークなどの無線ネットワークと通信する無線ＮＩＣ（ＷＮＩＣ）もしくは無線アダプタを含んでもよい。本開示は、任意の適切なネットワークおよび任意の適切な通信インタフェース５１０を想定している。限定ではなく一例として、コンピュータシステム５００は、アドホックネットワーク、パーソナルエリアネットワーク（ＰＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、もしくはインターネットの１つまたは複数の部分、またはそれらのうち２つ以上の組み合わせと通信してもよい。それらのネットワークの１つまたは複数のうちの１つまたは複数の部分は、有線または無線であってもよい。例として、コンピュータシステム５００は、無線ＰＡＮ（ＷＰＡＮ）（例えば、ＢＬＵＥＴＯＯＴＨ（登録商標）ＷＰＡＮなど）、ＷＩ−ＦＩ（登録商標）ネットワーク、ＷｉＭＡＸ（登録商標）ネットワーク、セルラ電話網、（例えば、汎欧州デジタル移動電話（ＧＳＭ）（登録商標）ネットワーク）、もしくは他の適切な無線ネットワーク、またはそれらのうち２つ以上の組み合わせと通信してもよい。コンピュータシステム５００は、必要に応じて、それらのネットワークのいずれかに対する任意の適切な通信インタフェース５１０を含んでもよい。通信インタフェース５１０は、必要に応じて、１つまたは複数の通信インタフェース５１０を含んでもよい。本開示では、特定の通信インタフェースについて説明および示しているが、本開示は、任意の適切な通信インタフェースを想定している。
【００４５】
特定の実施形態では、バス５１２は、コンピュータシステム５００のコンポーネントを相互に結合する、ハードウェア、ソフトウェア、またはその両方を含む。限定ではなく一例として、バス５１２は、アクセラレーテッド・グラフィック・ポート（ＡＧＰ）もしくは他のグラフィックスバス、拡張業界標準アーキテクチャ（ＥＩＳＡ）バス、フロント・サイド・バス（ＦＳＢ）、ハイパー・トランスポート（ＨＴ）インターコネクト、業界標準アーキテクチャ（ＩＳＡ）バス、インフィニバンド（ＩＮＦＩＮＩＢＡＮＤ）インターコネクト、ロー・ピン・カウント（ＬＰＣ）バス、メモリバス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）バス、ペリフェラル・コンポーネント・インターコネクト（ＰＣＩ）バス、ＰＣＩエクスプレス（ＰＣＩｅ）バス、シリアル・アドバンスト・テクノロジー・アタッチメント（ＳＡＴＡ）バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル（ＶＬＢ）バス、もしくは別の適切なバス、またはそれらのうち２つ以上の組み合わせを含んでもよい。バス５１２は、必要に応じて、１つまたは複数のバス５１２を含んでもよい。本開示では、特定のバスについて説明および示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
【００４６】
ここで、コンピュータ可読非一時的記憶媒体は、必要に応じて、１つまたは複数の半導体ベースもしくは他の集積回路（ＩＣ）（例えば、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）や特定用途ＩＣ（ＡＳＩＣ）など）、ハードディスクドライブ（ＨＤＤ）、ハイブリッドハードドライブ（ＨＨＤ）、光ディスク、光ディスクドライブ（ＯＤＤ）、磁気光ディスク、磁気光学ドライブ、フロッピー（登録商標）ディスケット、フロッピー（登録商標）ディスクドライブ（ＦＤＤ）、磁気テープ、ソリッドステートドライブ（ＳＳＤ）、ＲＡＭドライブ、セキュアデジタルカードもしくはドライブ、任意の他の適切なコンピュータ可読非一時的記憶媒体、または任意の適切なそれらのうち２つ以上の組み合わせを含んでもよい。コンピュータ可読非一時的記憶媒体は、必要に応じて、揮発性、不揮発性、または揮発性および不揮発性の組み合わせであってもよい。
【００４７】
本明細書において、「または」は、別段明示的に示されず別段文脈によっても示されない場合、包括的であり排他的ではない。したがって、本明細書において、「ＡまたはＢ」は、別段明示的に示されず別段文脈によっても示されない場合、「Ａ、Ｂ、または両方」を意味する。また、「および」は、別段明示的に示されず別段文脈によっても示されない場合、共にと別々の両方のことである。したがって、本明細書において、「ＡおよびＢ」は、別段明示的に示されず別段文脈によっても示されない場合、「共にまたは別々にＡおよびＢ」を意味する。
【００４８】
本開示の範囲は、当業者が認識することになる、本明細書に記載または示した例示的な実施形態の変形、置換、変化、改変、および変更をすべて含む。本開示の範囲は、本明細書に記載または示した例示的な実施形態に限定されない。また、本開示は、それぞれの実施形態を、特定の構成要素、要素、機能、動作、または工程を含みものとして本明細書に記載しかつ示したが、これらの実施形態のいずれも、当業者が認識することになる、本明細書のいずれかの箇所に記載または示された構成要素、要素、機能、動作、または工程のいずれかの任意の組合せまたは並べ替えを含むことができる。さらに、特許請求の範囲において、装置またはシステム、あるいは装置またはシステムの構成要素が、特定の機能を行うように適合された、ように配置された、ことが可能な、ように構成された、ことを可能にする、ように動作可能な、またはように動作する、などの言及は、その特定の機能が有効化され、作動され、またはアンロックされているかどうかにかかわらず、そのような装置、システム、または構成要素が、そのように適合され、配置され、可能であり、構成され、可能にし、動作可能であり、または動作する限り、こうした装置、システム、構成要素を含む。
【図１】
2016515272.tif 000003
【図２】
2016515272.tif 000004
【図３】
2016515272.tif 000005
【図４】
2016515272.tif 000006
【図５】
2016515272.tif 000007
【国際調査報告】
2016515272.tif 000008
2016515272.tif 000009