(57)【要約】【課題】サーバ装置に保持されているファイルを、ユーザの個人情報を公開することなく、通信装置の地理的な近接関係に基づいて通信装置のユーザ間で共有する仕組みを提供する。【解決手段】ユーザ端末＃１は、共有対象のファイルの送信元を示す送信元情報を暗号化して、共有対象のファイルの情報とともに近接する他のユーザ端末にブロードキャストする。当該ファイル情報が示すファイルを、他のユーザ端末＃２が取得する場合、ユーザ端末＃２は、受信したファイル情報及び暗号化情報を含むファイル取得要求を、ファイルコントローラ２に送信する。ファイルコントローラ２は、受信したファイル取得要求に含まれる暗号化情報を復号化して得られる情報と、ファイル情報とに基づいて、ユーザ端末＃１、＃２の代わりにクラウドサーバ１にアクセスし、ファイルを取得し、ユーザ端末＃２のユーザ２がクラウドサーバ１上に割り当てられているディレクトリに保存する。【選択図】図２
2014191477.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置と、各通信装置のユーザのデータを保持するためのディレクトリを有するサーバ装置と通信可能なコントローラ装置とを備え、各通信装置のユーザ間でファイルを共有するためのファイル共有システムであって、
前記複数の通信装置のそれぞれは、
共有対象のファイルの送信元を示す送信元情報を暗号化して暗号化情報を生成する暗号化手段と、
前記共有対象のファイルを示すファイル情報と前記暗号化情報とを、近接する他の通信装置に対して無線通信によってブロードキャストするブロードキャスト手段と、
他の通信装置から受信された前記ファイル情報が示す前記共有対象のファイルを取得する際に、当該ファイル情報と、当該ファイル情報とともに受信された暗号化情報とを含む取得要求を、前記コントローラ装置に送信する要求手段と
を備え、
前記コントローラ装置は、
通信装置から前記取得要求を受信すると、当該取得要求に含まれる暗号化情報を復号して送信元情報を生成する復号手段と、
前記取得要求に含まれるファイル情報が示す前記共有対象のファイルを、前記送信元情報が示すサーバ装置から取得して、前記取得要求の送信元である通信装置のユーザのデータを保持するサーバ装置に保存する取得手段と
を備えることを特徴とするファイル共有システム。
【請求項２】
前記送信元情報は、前記共有対象のファイルを提供するユーザを示す第１のユーザ情報と、前記共有対象のファイルを保持するサーバ装置を示すサーバ情報とを含み、
前記取得手段は、
前記第１のユーザ情報に対応付けて前記コントローラ装置が保持している認証情報を用いて、前記送信元情報に含まれるサーバ情報が示すサーバ装置にアクセスして、前記共有対象のファイルを取得する
ことを特徴とする請求項１に記載のファイル共有システム。
【請求項３】
前記取得要求は、当該取得要求の送信元である通信装置のユーザを示す第２のユーザ情報を更に含み、
前記取得手段は、
前記第２のユーザ情報に対応付けて前記コントローラ装置が保持している認証情報及びサーバ情報を用いて、当該サーバ情報が示すサーバ装置にアクセスして、当該サーバ装置に、取得した前記共有対象のファイルを保存する
ことを特徴とする請求項２に記載のファイル共有システム。
【請求項４】
前記コントローラ装置は、前記サーバ装置にアクセスするための、通信装置のユーザに対応する認証情報及びサーバ情報の登録を受け付ける登録手段を備え、
前記登録手段は、前記登録を受け付けた際に、登録されたサーバ情報が示すサーバ装置内の、前記ユーザのデータを保持するためのディレクトリに、前記共有対象のファイルを保持するためのサブディレクトリを作成し、
前記取得手段は、取得した前記共有対象のファイルを保存する際には、前記登録手段によって作成されたサブディレクトリに前記共有対象のファイルを保存する
ことを特徴とする請求項３に記載のファイル共有システム。
【請求項５】
前記複数の通信装置のそれぞれは、特定のファイルを示すファイル情報を含むファイル要求を、近接する他の通信装置に対して無線通信によってブロードキャストするファイル要求手段を更に備え、
他の通信装置から前記ファイル要求が受信され、かつ、当該ファイル要求を受信した通信装置のユーザのデータを保持するサーバ装置に前記特定のファイルが保持されていると、前記ブロードキャスト手段は更に、前記特定のファイルに対応する前記ファイル情報及び前記暗号化情報とを、近接する他の通信装置に対してブロードキャストする
ことを特徴とする請求項１乃至４のいずれか１項に記載のファイル共有システム。
【請求項６】
前記暗号化手段は、前記コントローラ装置から提供された、前記複数の通信装置に対して共通の公開鍵を用いて前記送信元情報を暗号化して前記暗号化情報を生成し、
前記復号手段は、前記公開鍵に対応した秘密鍵を用いて前記暗号化情報を復号して前記送信元情報を生成する
ことを特徴とする請求項１乃至５のいずれか１項に記載のファイル共有システム。
【請求項７】
前記ブロードキャスト手段は、同一のアクセスポイントと無線通信可能な他の通信装置に対して、前記ファイル情報と前記暗号化情報とを、前記アクセスポイントを介してブロードキャストすることを特徴とする請求項１乃至６のいずれか１項に記載のファイル共有システム。
【請求項８】
前記ブロードキャスト手段は、前記ファイル情報と前記暗号化情報とを、近接する他の通信装置に対して無線通信によって直接ブロードキャストすることを特徴とする請求項１乃至６のいずれか１項に記載のファイル共有システム。
【請求項９】
前記ファイル情報は、ファイル名、ファイルサイズ、及びファイルの更新時刻の少なくとも１つを含むことを特徴とする請求項１乃至８のいずれか１項に記載のファイル共有システム。
【請求項１０】
前記コントローラ装置は、前記サーバ装置に組み込まれていることを特徴とする請求項１乃至９のいずれか１項に記載のファイル共有システム。
【請求項１１】
通信装置であって、
共有対象のファイルの送信元を示す送信元情報を暗号化して暗号化情報を生成する暗号化手段と、
前記共有対象のファイルを示すファイル情報と、前記暗号化情報とを、近接する他の通信装置に対して無線通信によってブロードキャストするブロードキャスト手段と、
他の通信装置から受信された前記ファイル情報が示す前記共有対象のファイルを取得する際に、当該ファイル情報と、当該ファイル情報とともに受信された暗号化情報とを含む取得要求をコントローラ装置に送信することによって、前記コントローラ装置に、前記取得要求に含まれるファイル情報が示す前記共有対象のファイルを、前記暗号化情報を復号して生成される送信元情報が示すサーバ装置から取得させ、前記取得要求の送信元である通信装置のユーザのデータを保持するサーバ装置に保存させる要求手段と
を備えることを特徴とする通信装置。
【請求項１２】
通信装置のユーザのデータを保持するためのディレクトリを有するサーバ装置と通信可能なコントローラ装置であって、
第１の通信装置に近接する第２の通信装置からブロードキャストされ、前記第１の通信装置によって受信された、共有対象のファイルを示すファイル情報と、当該ファイルの送信元を示す送信元情報を暗号化して生成される暗号化情報と、を含む取得要求を、前記第１の通信装置から受信すると、当該取得要求に含まれる暗号化情報を復号して送信元情報を生成する復号手段と、
前記取得要求に含まれるファイル情報が示す前記共有対象のファイルを、前記送信元情報が示すサーバ装置から取得して、前記取得要求の送信元である通信装置のユーザのデータを保持するサーバ装置に保存する取得手段と
を備えることを特徴とするコントローラ装置。
【請求項１３】
請求項１１に記載の通信装置としてコンピュータを機能させるためのプログラム。
【請求項１４】
請求項１２に記載のコントローラ装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、近接した通信装置間におけるクラウドサービス型のファイル共有技術に関する。
【背景技術】
【０００２】
近年、インターネット上のサーバが記憶資源や計算資源を提供し、場所、端末等を問わず、いつでもどこでも同じ情報にユーザがアクセスできるようにするクラウドサービスが普及している（例えば、非特許文献１〜５を参照。）。クラウドサービスでは、例えばクラウドサーバ上のディレクトリが各ユーザに割り当てられ、各ユーザは割り当てられたディレクトリに情報を格納する。ユーザは、インターネットに接続可能な環境に存在する限り、クラウドサーバ上のディレクトリに格納された情報に、どこからでもアクセスすることが可能である。また、クラウドサービスでは、複数のユーザから成るグループを作成し、作成したグループ内でファイルを共有することで、グループ内での情報共有を実現できる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】ｈｔｔｐｓ：／／ｗｗｗ．ｄｒｏｐｂｏｘ．ｃｏｍ／
【非特許文献２】ｈｔｔｐｓ：／／ａｃｃｏｕｎｔｓ．ｇｏｏｇｌｅ．ｃｏｍ／
【非特許文献３】ｈｔｔｐｓ：／／ｌｏｇｉｎ．ｌｉｖｅ．ｃｏｍ／
【非特許文献４】ｈｔｔｐ：／／ｖｐｓ．ｓａｋｕｒａ．ａｄ．ｊｐ／
【非特許文献５】ｈｔｔｐ：／／ｗｗｗ．ｓｐｐｄ．ｎｅ．ｊｐ／ｄｅｓｋｔｏｐ／
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の非クラウドサービス型の情報共有のための仕組みとして、アドホックネットワーキングやＤＴＮ（Delay Tolerant Networking）のように、地理的に近接した端末間でバケツリレー式に情報を伝達する技術が存在する。例えば、Ｗｉ−Ｆｉ（登録商標）規格に対応した無線通信デバイスを搭載したスマートフォンやＰＣ等の端末は、当該無線通信デバイスを用いた端末間の通信をサポートしている。このような端末間では、搭載された無線通信デバイスを利用して、非クラウドサービス型の情報共有を実現できる。
【０００５】
一方で、既存のクラウドサービスにおいて、上述のような地理的な近接関係に基づいた情報共有の仕組みを実現することは容易ではない。既存のクラウドサービス（Ｄｒｏｐｂｏｘのようなファイル共有サービスや、仮想サーバ、仮想デスクトップサービス等）においてユーザ間でファイル共有等の情報共有を行う際には、共有範囲となるグループを予め設定しておく必要がある。例えば、ファイルの送信者は、ユーザ名等のクラウドサービス用の個人情報を、ファイルの受信者に対して予め提供する必要がある。しかし、ユーザが特定の他のユーザだけでなく不特定の第３者に対して、地理的な近接関係に基づいてファイルを提供する場合、自らの個人情報（アカウント情報）をそのような第３者に対して公開することは望ましくない。
【０００６】
本発明は、上述の問題に鑑みてなされたものである。本発明は、サーバ装置に保持されているファイルを、ユーザの個人情報を公開することなく、通信装置の地理的な近接関係に基づいて通信装置のユーザ間で共有する仕組みを提供することを目的としている。
【課題を解決するための手段】
【０００７】
本発明は、例えば、ファイル共有システムとして実現できる。本発明の一態様の係るファイル共有システムは、複数の通信装置と、各通信装置のユーザのデータを保持するためのディレクトリを有するサーバ装置と通信可能なコントローラ装置とを備え、各通信装置のユーザ間でファイルを共有するためのファイル共有システムであって、前記複数の通信装置のそれぞれは、共有対象のファイルの送信元を示す送信元情報を暗号化して暗号化情報を生成する暗号化手段と、前記共有対象のファイルを示すファイル情報と前記暗号化情報とを、近接する他の通信装置に対して無線通信によってブロードキャストするブロードキャスト手段と、他の通信装置から受信された前記ファイル情報が示す前記共有対象のファイルを取得する際に、当該ファイル情報と、当該ファイル情報とともに受信された暗号化情報とを含む取得要求を、前記コントローラ装置に送信する要求手段とを備え、前記コントローラ装置は、通信装置から前記取得要求を受信すると、当該取得要求に含まれる暗号化情報を復号して送信元情報を生成する復号手段と、前記取得要求に含まれるファイル情報が示す前記共有対象のファイルを、前記送信元情報が示すサーバ装置から取得して、前記取得要求の送信元である通信装置のユーザのデータを保持するサーバ装置に保存する取得手段とを備えることを特徴とする。
【０００８】
また、本発明は、例えば、通信装置として実現できる。本発明の一態様の係る通信装置は、共有対象のファイルの送信元を示す送信元情報を暗号化して暗号化情報を生成する暗号化手段と、前記共有対象のファイルを示すファイル情報と、前記暗号化情報とを、近接する他の通信装置に対して無線通信によってブロードキャストするブロードキャスト手段と、他の通信装置から受信された前記ファイル情報が示す前記共有対象のファイルを取得する際に、当該ファイル情報と、当該ファイル情報とともに受信された暗号化情報とを含む取得要求をコントローラ装置に送信することによって、前記コントローラ装置に、前記取得要求に含まれるファイル情報が示す前記共有対象のファイルを、前記暗号化情報を復号して生成される送信元情報が示すサーバ装置から取得させ、前記取得要求の送信元である通信装置のユーザのデータを保持するサーバ装置に保存させる要求手段とを備えることを特徴とする。
【０００９】
また、本発明は、例えば、コントローラ装置として実現できる。本発明の一態様の係るコントローラ装置は、第１の通信装置に近接する第２の通信装置からブロードキャストされ、前記第１の通信装置によって受信された、共有対象のファイルを示すファイル情報と、当該ファイルの送信元を示す送信元情報を暗号化して生成される暗号化情報と、を含む取得要求を、前記第１の通信装置から受信すると、当該取得要求に含まれる暗号化情報を復号して送信元情報を生成する復号手段と、前記取得要求に含まれるファイル情報が示す前記共有対象のファイルを、前記送信元情報が示すサーバ装置から取得して、前記取得要求の送信元である通信装置のユーザのデータを保持するサーバ装置に保存する取得手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、サーバ装置に保持されているファイルを、ユーザの個人情報を公開することなく、通信装置の地理的な近接関係に基づいて通信装置のユーザ間で共有する仕組みを提供できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係るシステムの概略的な構成図。
【図２】本発明の一実施形態に係る、ユーザ端末＃１の動作がトリガとなって、ユーザ端末＃１のユーザ＃１がクラウドサーバ上で保持しているファイルを共有する場合のシーケンス図。
【図３】本発明の一実施形態に係る、ユーザ端末＃２の動作がトリガとなって、ユーザ端末＃１のユーザ＃１がクラウドサーバ上で保持しているファイルを共有する場合のシーケンス図。
【発明を実施するための形態】
【００１２】
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。
【００１３】
＜システム構成＞
図１は、本発明の一実施形態に係るシステムの概略的な構成を示す図である。図１に示すシステムは、本発明のファイル共有システムの一例であり、クラウドサーバ１、ファイルコントローラ２、及び複数のユーザ端末４（ユーザ端末＃１〜＃３）から成る。ネットワーク３は、移動通信網及びインターネットをまとめて表現したものである。図１では、１つのクラウドサーバ１のみを示しているが、その数は例示である。また、ユーザ端末＃１〜＃３の３つのユーザ端末４を示しているが、その数は例示である。なお、本実施形態において、クラウドサーバ１、ファイルコントローラ２、及び複数のユーザ端末４は、それぞれサーバ装置、コントローラ装置、及び複数の通信装置の一例である。
【００１４】
ユーザ端末４は、例えばスマートフォン、ＰＣなどの端末（通信装置）で、Ｗｉ−Ｆｉ（無線ＬＡＮ）規格及び３Ｇ／ＬＴＥ規格などに対応した無線通信デバイスを備える。ユーザ端末４は、例えば、３Ｇ／ＬＴＥ規格に対応した無線通信デバイスを用いてネットワーク３に無線接続することで、ネットワーク３上のクラウドサーバ１及びファイルコントローラ２にアクセスできる。ただし、ユーザ端末４は、Ｗｉ−Ｆｉ規格に対応した無線通信デバイスを、アクセスポイントを介して無線通信を行うインフラモードで用いてネットワーク３に無線接続することで、クラウドサーバ１及びファイルコントローラ２にアクセスしてもよい。
【００１５】
図１に示すユーザ端末＃１〜＃３は、Ｗｉ−Ｆｉ規格に従った無線通信によって互いに直接通信を行うことが可能な程度に、地理的に近接した範囲内に位置しているものとする。ユーザ端末＃１〜＃３は、直接通信を行う場合には、Ｗｉ−Ｆｉ規格のアドホックモードを利用して無線通信を行えばよい。ただし、ユーザ端末＃１〜＃３は、Ｗｉ−Ｆｉ規格のインフラモードを利用して、同一のアクセスポイント（図示せず）を介して通信を行ってもよい。なお、本実施形態では、ユーザ端末＃１〜＃３の間の通信をＷｉ−Ｆｉ規格に従って行うものとするが、Ｂｌｕｅｔｏｏｔｈ（登録商標）などの任意の無線規格を利用することができる。
【００１６】
クラウドサーバ１は、ユーザ端末４にクラウドサービスを提供するサーバであり、各ユーザ端末のユーザに割り当てた、当該ユーザのデータを保持するための記憶領域（ディレクトリ）を有している。ユーザは、ユーザ端末４を用いてネットワーク３にアクセス可能な環境にいる限り、クラウドサーバ１上のディレクトリに格納されたデータにアクセスすることが可能である。
【００１７】
クラウドサーバ１は、ディレクトリを割り当てたユーザの認証情報を保持しており、ユーザ名及びパスワードを認証情報として用いたアクセス認証を行う。ユーザ端末４が、クラウドサーバ１に接続し、ユーザ名及びパスワードを用いたアクセス認証に成功すると、クラウドサーバ１は、当該ユーザ端末４のユーザに割り当てたディレクトリへのアクセスを許可する。なお、本実施形態では詳細には説明しないものの、クラウドサーバ１において複数のユーザから成るグループでファイル共有を行う場合にも、同様のアクセス認証によって、当該グループに割り当てたディレクトリへのアクセスを許可する。その場合、クラウドサーバ１は、グループに参加しているユーザのリストをグループごとに保持していればよい。
【００１８】
本実施形態では、クラウドサーバ１のディレクトリに保持されているファイルを、クラウドサーバ１においてグループを予め設定することなく、地理的に近接しているユーザ端末４のユーザ間で共有する例について説明する。具体的には、共有対象のファイルを提供するユーザの個人情報（アカウント情報）を、ファイルの提供を受けるユーザに対して公開することなく、近接するユーザ端末４のユーザ間でクラウドサービス上のファイルを共有する例について説明する。本実施形態では、このような仕組みを実現するために、ネットワーク３上に配置したファイルコントローラ２を利用する。
【００１９】
ファイルコントローラ２は、クラウドサーバ１と通信可能であり、ユーザ端末４のユーザの代わりに、クラウドサーバ１上に保持されているファイルの受け渡しを行うネットワークノードである。ファイルコントローラ２は、クラウドサーバ１にアクセスするための情報を、ユーザ管理テーブルとして保持している。具体的には、ユーザ管理テーブルには、ユーザごとに以下の情報が登録される。
・アカウント情報（ファイルコントローラ２へのログイン用）
‐ユーザ名
‐パスワード
・クラウドサービス情報
‐クラウドサーバ１のＵＲＬ（サーバ情報）
‐クラウドサーバ１へのログイン用のユーザ名及びパスワード（認証情報）
なお、クラウドサービス情報は、後述するように、ユーザ端末４によるユーザ登録処理によって、ファイルコントローラ２へ登録される。ユーザが複数のクラウドサービス（クラウドサーバ１）を利用している場合は、ユーザ管理テーブルに、上記のクラウドサービス情報の項目が複数登録すればよい。
【００２０】
ファイルコントローラ２は、共有対象のファイルの送信元を示す送信元情報を暗号化及び復号するための、公開鍵及び秘密鍵のペアを一つ有している。ファイルコントローラ２は、秘密鍵については自ら保持しておき、公開鍵についてはファイルコントローラ２を利用する全ユーザ端末４に予め提供（配布）しておく。
【００２１】
ユーザ端末４は、ファイルコントローラ２を利用するための情報として、以下の情報を保持している。
・ユーザ名（ファイルコントローラ２へのログイン用のアカウント情報）
・公開鍵（ファイルコントローラ２から提供）
なお、ユーザ名は、ファイルコントローラ２に登録されているアカウント情報に含まれるユーザ名と同一である。また、ユーザ端末４は、クラウドサーバ１上のユーザのディレクトリに保持しているファイルのリストを保持しているものとする。ユーザは、ユーザ端末４が保持しているリストを参照することで、クラウドサーバ１上のディレクトリに保持しているファイルを把握できる。
【００２２】
＜ファイル共有の手順＞
以下、図２及び図３を参照して、ユーザ端末４が、ファイルコントローラ２を利用してクラウドサーバ１上のディレクトリに保持しているファイルを共有する際の、クラウドサーバ１、ファイルコントローラ２及びユーザ端末４の動作について説明する。
【００２３】
（ユーザ登録処理）
まず、図２及び図３に示すファイル共有が開始される前提として、ユーザ端末４のユーザは、ファイルコントローラ２に、自らが利用しているクラウドサーバ１に関する情報（クラウドサービス情報）を登録しておく必要がある。ファイルコントローラ２は、ユーザ端末４から、クラウドサーバ１にアクセスするための、ユーザ端末４のユーザに対応するクラウドサービス情報の登録を受け付ける。ユーザは、ユーザ端末４の起動時などの任意のタイミングに、ファイルコントローラ２へログインして、クラウドサービス情報を登録できる。ファイルコントローラ２へのログインは、ユーザ端末４内で保持しているユーザ名と、例えばユーザ操作によって入力される、当該ユーザ名に対応するパスワードとを認証情報として用いて行えばよい。
【００２４】
ファイルコントローラ２は、ユーザ端末４から、クラウドサービス情報の登録を受け付けた際には、登録されたサーバ情報（ＵＲＬ）が示すクラウドサーバ１の、登録が完了したユーザのディレクトリに、ファイル共有用のサブディレクトリを作成してもよい。具体的には、ファイルコントローラ２は、クラウドサーバ１に、登録された認証情報を用いてログインしてアクセスしたディレクトリに、共有対象のファイル（対象ファイル）を保持するためのサブディレクトリ（例えば「./direct_file_share/」）を作成すればよい。これにより、図２及び図３を用いて説明するファイル共有によって得られたファイルとその他のファイルとを、ユーザが明確に区別することが可能になる。
【００２５】
（第１の例）
次に、図２を参照して、ユーザ端末＃１のユーザ＃１がクラウドサーバ１上で保持している特定のファイル（Ｆｉｌｅ＿Ａ）を、近接ノード（例えば、ユーザ端末＃２、＃３）のユーザと共有する例について説明する。特に、ここではユーザ端末＃１の動作がトリガとなって、特定のファイル（Ｆｉｌｅ＿Ａ）を、近接するユーザ端末＃２のユーザ＃２と共有する例について説明する。
【００２６】
まず、Ｓ２１で、ユーザ端末＃１は、対象ファイル（Ｆｉｌｅ＿Ａ）の送信元を示す送信元情報を暗号化して、暗号化送信元情報（暗号化情報）を生成する。なお、暗号化送信元情報が既に生成されている場合には、改めて暗号化を実行する必要はない。
【００２７】
暗号化送信元情報（Ｅｉｎｆｏ）は、例えば以下のように生成できる。
Ｅｉｎｆｏ＝Ｅ＿ｐｕｂ(random_string＋user_name＋server_info)
ここで、Ｅ＿ｐｕｂ(ｘ) は、ｘという文字列（メッセージ）を、ファイルコントローラ２から提供された公開鍵で暗号化することを表し、記号「＋」は、バイト列をつなげ合わせる（concatenate）ことを表す。また、「random_string」は、例えば８バイトのランダム文字列であり、「user_name」は、ユーザ名（ユーザ＃１）を示す文字列であり、「server_info」は、対象ファイル（Ｆｉｌｅ＿Ａ）が保持されているクラウドサーバ１のＵＲＬ及びディレクトリを示す文字列である。例えば、「server_info」が「http://cloud.service.com/directoryX/」である場合、「http://cloud.service.com/」というクラウドサーバ１（クラウドサービス）上の、ユーザ＃１に割り当てられた「directoryX」というディレクトリに、共有対象のファイルが存在することを示す。
【００２８】
本実施形態では、上述の文字列「random_string＋user_name＋server_info」が送信元情報に相当する。また、「user_name」は、共有対象のファイルを提供するユーザを示すユーザ情報（第１のユーザ情報）に、「server_info」は、共有対象のファイルを保持するサーバ装置を示すサーバ情報に相当する。送信元情報は、ユーザ情報とサーバ情報とが含まれた状態で、ファイルコントローラ２から提供された公開鍵を用いて暗号化される。
【００２９】
Ｓ２２で、ユーザ端末＃１は、以下の情報を含むファイル名広告を、Ｗｉ−Ｆｉ規格のアドホックモードを利用した無線通信で、近接する他のユーザ端末（例えばユーザ端末＃２、＃３）に直接ブロードキャストする。ファイル名広告には、
・ファイル情報：ファイル名（Ｆｉｌｅ＿Ａ）
・暗号化送信元情報
が含まれる。なお、ファイル情報は、共有対象のファイルを示す情報である。
【００３０】
以下では、Ｓ２２でユーザ端末＃１からブロードキャストされたファイル広告がユーザ端末＃２で受信され、ユーザ＃２がそのファイル名広告によって広告されたファイル（Ｆｉｌｅ＿Ａ）を取得する場合を想定する。この場合、Ｓ２３で、ユーザ端末＃２は、ユーザ＃２の操作に応じて、以下の情報を含むファイル取得要求を、ファイルコントローラ２に送信する。
・ユーザ情報：ユーザ名（ユーザ＃２）
・ファイル情報：ファイル名（Ｆｉｌｅ＿Ａ）
・暗号化送信元情報
なお、ファイル取得要求に含まれるユーザ情報は、当該要求の送信元であるユーザ端末のユーザを示すユーザ情報（第２のユーザ情報）に相当する。また、ユーザ名は、ユーザ端末＃２のユーザを示すユーザ名（ユーザ＃２）であり、残りのファイル情報及び暗号化情報は、ユーザ端末＃１から受信したファイル広告に含まれていた情報である。
【００３１】
ファイルコントローラ２は、ファイル取得要求をいずれかのユーザ端末４から受信すると、当該要求に含まれるファイル情報が示す対象ファイルを、暗号化送信元情報を復号して得られる送信元情報が示すクラウドサーバ１から取得する。更に、ファイルコントローラ２は、取得したファイルを、ファイル取得要求の送信元であるユーザ端末のユーザのデータを保持するクラウドサーバ１に保存する。なお、本実施形態では、送信元情報が示すクラウドサーバ１と、取得したファイルの保存先となるクラウドサーバ１とが同一である場合を例として説明するが、それらのサーバは異なっていてもよい。即ち、送信元情報が示すクラウドサーバ１と、ファイルを取得するユーザ＃２に割り当てられたディレクトリが存在するクラウドサーバ１とが、異なっていてもよい。
【００３２】
具体的には、まず、ファイルコントローラ２は、Ｓ２４で、受信したファイル取得要求から、ユーザ情報（ユーザ名：ユーザ＃２）、ファイル情報（ファイル名：Ｆｉｌｅ＿Ａ）、及び暗号化送信元情報を取り出すとともに、暗号化送信元情報を復号する。ファイルコントローラ２は、暗号化送信元情報を、暗号化に用いられた公開鍵に対応する、ファイルコントローラ２が保持する秘密鍵で復号して、送信元情報を生成（復元）する。これにより、ファイルコントローラ２は、対象ファイル（Ｆｉｌｅ＿Ａ）を提供するユーザ（ユーザ＃１）を示すユーザ情報であるユーザ名（user_name）と、当該ファイルを保持するクラウドサーバ１を示すサーバ情報（server_info）とを送信元情報から取り出す。
【００３３】
このようにして得られた情報を用いて、Ｓ２５以下で、ファイルコントローラ２は、対象ファイル（Ｆｉｌｅ＿Ａ）を、クラウドサーバ１上のユーザ＃１のディレクトリから取得して、クラウドサーバ１上のユーザ＃２のディレクトリに保存する処理を行う。
【００３４】
Ｓ２５で、ファイルコントローラ２は、ファイルを提供するユーザ＃１のユーザ情報に対応付けてユーザ管理テーブルに保持している認証情報を用いて、対象ファイル（Ｆｉｌｅ＿Ａ）を保持するクラウドサーバ１に、ユーザ端末＃１の代わりにアクセスする。クラウドサーバ１におけるアクセス認証に成功すると、ファイルコントローラ２は、クラウドサーバ１に対象ファイルを要求する。クラウドサーバ１は、ファイルコントローラ２からの要求に応じて、Ｓ２６で、対象ファイルをユーザ＃１のディレクトリから取り出して、Ｓ２７で、取り出した対象ファイルをファイルコントローラ２に送信する。
【００３５】
クラウドサーバ１から対象ファイルを受信すると、ファイルコントローラ２は、Ｓ２７で、ファイル取得要求から取り出したユーザ情報（ユーザ名：ユーザ＃２）に対応付けてユーザ管理テーブルに保持しているクラウドサービス情報（認証情報及びサーバ情報）を用いて、対象ファイルを保存する。具体的には、ファイルコントローラ２は、クラウドサービス情報に含まれる認証情報を用いて、当該クラウドサービス情報に含まれるサーバ情報が示すクラウドサーバ１にアクセスする。（ここでのアクセス先のクラウドサーバ１は、上述のように、対象ファイルの送信元のクラウドサーバ１と同一であるものとする。）クラウドサーバ１におけるアクセス認証に成功すると、ファイルコントローラ２は、クラウドサーバ１に対象ファイルを送信（保存）する。
【００３６】
クラウドサーバ１は、Ｓ２９で、ファイルコントローラ２から対象ファイルを受信すると、アクセス認証に成功したユーザ＃２のディレクトリに（上述のサブディレクトリを作成している場合には、当該サブディレクトリに）、受信したファイルを保存する。
【００３７】
（第２の例）
図２の例では、ユーザ端末＃１の動作がトリガとなって、特定のファイル（Ｆｉｌｅ＿Ａ）を、近接するユーザ端末＃２のユーザ＃２と共有する例について説明している。次に、図３を参照して、ユーザ端末＃２の動作がトリガとなって、ユーザ端末＃１のユーザ＃１がクラウドサーバ１上で保持している特定のファイル（Ｆｉｌｅ＿Ａ）を共有する例について説明する。具体的には、ユーザ端末＃２のユーザ＃２が、近接する他のユーザ端末（ユーザ端末＃１、＃３）が特定のファイル（Ｆｉｌｅ＿Ａ）をクラウドサーバ１上に保持しているか否かを確認し、保持している場合に当該ファイルを取得する例について説明する。
【００３８】
図３では、図２と共通する処理を実行するステップに、図２と同様の参照符号を付している。以下では、それらのステップについては説明を省略する。まず、Ｓ３１で、ユーザ端末＃２は、特定のファイル（Ｆｉｌｅ＿Ａ）を示すファイル情報（ファイル名）を含むファイル要求を、Ｗｉ−Ｆｉ規格のアドホックモードを利用した無線通信で、近接する他のユーザ端末（例えば、ユーザ端末＃１、＃３）に対して直接ブロードキャストする。
【００３９】
ユーザ端末＃２からブロードキャストされたファイル要求をユーザ端末＃１が受信すると、ユーザ端末＃１は、Ｓ３２で、ファイル要求に含まれるファイル情報が示す特定のファイル（Ｆｉｌｅ＿Ａ）を、クラウドサーバ１上に保持しているか否かを判定する。ここで、ユーザ端末＃１は、内部に保持している上述のリストを参照することで、特定のファイル（Ｆｉｌｅ＿Ａ）を、クラウドサーバ１上のユーザ＃１のディレクトリに保持しているか否かを判定する。ユーザ端末＃２は、ファイルを保持していないと判定した場合には、何らの動作も行わない一方で、ファイルを保持していると判定した場合には、Ｓ２１以降の処理を実行する。
【００４０】
Ｓ２１及びＳ２２では、ユーザ端末＃１は、ユーザ端末＃２から受信したファイル要求で要求されている特定のファイル（Ｆｉｌｅ＿Ａ）を共有対象のファイルとして、図２と同様に、ファイル名広告をブロードキャストする。ユーザ端末＃２は、当該ファイル名広告を受信すると、当該ファイル名広告に基づいてファイル取得要求をファイルコントローラ２に送信する。これにより、ユーザ端末＃２のユーザ＃２は、要求した特定のファイル（Ｆｉｌｅ＿Ａ）を、他のユーザ＃１からクラウドサーバ１上で取得することができる。
【００４１】
このように本実施形態では、ユーザ端末＃１のユーザ＃１がクラウドサーバ１上のファイルを他のユーザに提供する際、ユーザ端末＃１は、送信元情報を暗号化して、共有対象のファイルの情報とともに近接する他のユーザ端末にブロードキャストする。ブロードキャストされたファイル情報が示すファイルを、他のユーザ端末＃２が取得する場合、ユーザ端末＃２は、受信したファイル情報及び暗号化情報を含むファイル取得要求を、ファイルコントローラ２に送信する。ファイルコントローラ２は、受信したファイル取得要求に含まれる暗号化情報を復号化して得られる情報と、ファイル情報とに基づいて、ユーザ端末＃１、＃２の代わりにクラウドサーバ１にアクセスして、ファイルを取得する。更に、ファイルコントローラ２は、取得したファイルを、ユーザ端末＃２のユーザ＃２がクラウドサーバ１上に割り当てられているディレクトリに保存する。
【００４２】
本実施形態によれば、共有対象のファイルの送信元を示す情報を暗号化した状態で、近接したユーザ端末間で送受信するため、クラウドサーバ１に保持されているファイルを共有する際に、ユーザの個人情報（アカウント情報）を他のユーザに公開することがない。即ち、クラウドサーバ１に保持されているファイルを、ユーザの個人情報を公開することなく、ユーザ端末４の地理的な近接関係に基づいてユーザ端末４のユーザ間で共有することができる。また、ファイルコントローラ２がユーザ端末４に代わってファイルの取得及び保存を行うので、地理的な近接関係に基づくファイル共有の際にユーザ端末間で生じうるデータトラヒックを削減できる。
【００４３】
＜その他の実施形態＞
上述の実施形態は、種々に変形して実施することも可能である。例えば、ファイル名広告（Ｓ２２）、ファイル取得要求（Ｓ２３）、ファイル要求（Ｓ３１）等に含まれるファイル情報には、共有対象のファイルを特定可能な情報が含まれていればよく、例えば、ファイル名（Ｆｉｌｅ＿Ａ）、ファイルサイズ、及びファイルの更新時刻のうちの、少なくとも１つが含まれていればよい。
【００４４】
また、上述の実施形態では、Ｗｉ−Ｆｉ規格のアドホックモードを利用した無線通信によって、ファイル名広告（Ｓ２２）及びファイル要求（Ｓ３１）を行っている。しかし、本発明は、近接するユーザ端末間で、それらの情報が伝送できればよいため、ファイル名広告（Ｓ２２）及びファイル要求（Ｓ３１）をＷｉ−Ｆｉ規格のインフラモードを利用した無線通信によって行うことも可能である。この場合、ユーザ端末は、ファイル名広告及びファイル要求を、同一のアクセスポイントと無線通信可能な他のユーザ端末に対して、当該アクセスポイントを介してブロードキャストすればよい。また、ファイル名広告及びファイル要求は、Ｗｉ−Ｆｉ規格に限らず、Ｂｌｕｅｔｏｏｔｈ（登録商標）などの任意の無線規格を利用して行うことも可能である。
【００４５】
また、例えば、上述の実施形態では、ファイルコントローラ２とクラウドサーバ１とは個別のネットワークノードとして説明しているが、ファイルコントローラ２の機能は、クラウドサーバ１に組み込まれていてもよい。即ち、ファイルコントローラ２をクラウドサーバ１に組み込んで、１つのネットワークノードとして構成してもよい。その場合、ファイルコントローラ２という独立したネットワークノードが不要となるため、システム構成をより簡易にすることが可能である。更に、共有対象のファイルの送信元のクラウドサーバ１と、当該ファイルの保存先となるクラウドサーバ１とが同一である場合には、ディレクトリ間のファイルのコピー操作のみによって、ファイルの共有を実現することが可能となる。
【００４６】
なお、本発明は、コンピュータを通信装置（ユーザ端末４）又はコントローラ装置（ファイルコントローラ２）として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
【図１】
2014191477.tif 000003
【図２】
2014191477.tif 000004
【図３】
2014191477.tif 000005