(57)【特許請求の範囲】
【請求項１】
共有ファイルに関連するメッセージにアクセスすることが可能な権限を持つ、前記共有ファイルを保存した一つ以上の機器に対して、前記共有ファイルに関連するメッセージを送受信するように設定されたサーバーを含む、ファイル共有システム。
【請求項２】
前記サーバーは、前記一つ以上の機器から認証情報および前記共有ファイルの識別子を受信するように設定された、請求項１に記載のファイル共有システム。
【請求項３】
前記サーバーは、前記一つ以上の機器が前記共有ファイルに関連するメッセージにアクセスすることが可能な権限を持っているか否かを、前記認証情報および前記共有ファイルの識別子を用いてチェックするように設定された、請求項２に記載のファイル共有システム。
【請求項４】
前記認証情報は、ハッシュ関数によって認証キーおよび前記共有ファイルの識別子から生成された、請求項２に記載のファイル共有システム。
【請求項５】
前記サーバーは、前記共有ファイルの識別子に前記受信されたメッセージを対応させて保存するように設定された、請求項１に記載のファイル共有システム。
【請求項６】
前記サーバーは、前記共有ファイルの識別子に対応して保存されたメッセージを前記一つ以上の機器に送信するように設定された、請求項５に記載のファイル共有システム。
【請求項７】
前記サーバーは、前記共有ファイルの識別子に前記一つ以上の機器の各機器識別子を対応させて保存するように設定された、請求項１に記載のファイル共有システム。
【請求項８】
前記サーバーは、機器識別子が前記共有ファイルの識別子に対応して保存された前記一つ以上の機器に前記メッセージを送信するように設定された、請求項７に記載のファイル共有システム。
【請求項９】
前記サーバーは、前記共有ファイルに関連するメッセージ検索リクエストに対する応答として、前記共有ファイルの識別子に対応して保存された前記メッセージを前記一つ以上の機器へ送信するように設定された、請求項５に記載のファイル共有システム。
【請求項１０】
前記共有ファイルに関連するメッセージ検索リクエストを生成するように設定された前記一つ以上の機器を含む、請求項９に記載のファイル共有システム。
【請求項１１】
前記一つ以上の機器は、前記共有ファイルの実行に対するレスポンスとして、前記メッセージ検索リクエストを生成するように設定された、請求項１０に記載のファイル共有システム。
【請求項１２】
前記サーバーは、前記一つ以上の機器からのリクエストに対するレスポンスとして、前記共有ファイルの識別子を生成するように設定された、請求項１に記載のファイル共有システム。
【請求項１３】
前記共有ファイルのファイル名は、前記認証情報および前記共有ファイルの識別子を含む、請求項２に記載のファイル共有システム。
【請求項１４】
前記認証情報（および／または共有ファイルの識別子）と前記ファイル名の他の部分との間に、および／または前記認証情報と前記共有ファイルの識別子との間に、区別のために一つ以上の予め定義された文字を前記ファイル名に挿入する、請求項１３に記載のファイル共有システム。
【請求項１５】
前記認証情報および前記共有ファイルの識別子が前記共有ファイルのメタデータフィールドに挿入された、請求項２に記載のファイル共有システム。
【請求項１６】
前記認証情報および前記共有ファイルの識別子が、ファイルのヘッダーまたはフッターに含まれる新しいフォーマットのファイルとして生成され、前記共有ファイルが前記新しいフォーマットファイルのボディとして含まれる、請求項２に記載のファイル共有システム。
【請求項１７】
前記サーバーおよび／または前記一つ以上の機器は、前記共有ファイルに関連するメッセージを暗号化するように設定され、
前記一つ以上の機器は、前記認証キーを用いて、前記暗号化されたメッセージを復号化するように設定された、請求項４に記載のファイル共有システム。
【請求項１８】
前記サーバーは、前記一つ以上の機器にシステムメッセージを送信するように設定された、請求項１に記載のファイル共有システム。
【請求項１９】
前記共有ファイルに関連するメッセージを出力し或いは表示するように設定された一つ以上の機器を含む、請求項１に記載のファイル共有システム。
【請求項２０】
前記一つ以上の機器は、前記共有ファイルの実行に対するレスポンスとして、前記共有ファイルに関連する前記メッセージを出力または表示するように設定された、請求項１９に記載のファイル共有システム。
【請求項２１】
前記サーバーは、前記共有ファイルのハッシュ値と修正時間を用いて前記共有ファイルのバージョンを管理するように設定された、請求項１に記載のファイル共有システム。
【請求項２２】
サーバーが、共有ファイルに関連するメッセージにアクセスすることが可能な権限を持つ、前記共有ファイルを保存した一つ以上の機器に、前記共有ファイルに関連する一つ以上のメッセージを送信する段階を含む、ファイル共有方法。
【請求項２３】
前記サーバーが、前記一つ以上の機器から前記共有ファイルに関連する前記一つ以上のメッセージを受信する段階を含む、請求項２２に記載のファイル共有方法。
【請求項２４】
前記サーバーが、前記一つ以上の機器から認証情報および前記共有ファイルの識別子を受信する段階を含む、請求項２３に記載のファイル共有方法。
【請求項２５】
前記サーバーが、前記一つ以上の機器が前記共有ファイルに関連するメッセージにアクセスすることが可能な権限を持っているか否かを、前記認証情報および前記共有ファイルの識別子を用いてチェックする段階を含む、請求項２４に記載のファイル共有方法。
【請求項２６】
前記サーバーまたは前記一つ以上の機器が、ハッシュ関数によって認証キーおよび前記共有ファイルの識別子から前記認証情報を生成する段階を含む、請求項２４に記載のファイル共有方法。
【請求項２７】
前記サーバーが、前記共有ファイルの識別子に前記受信されたメッセージを対応させて保存する段階を含む、請求項２３に記載のファイル共有方法。
【請求項２８】
前記サーバーが、前記共有ファイルの識別子に対応して保存されたメッセージを前記一つ以上の機器に送信する段階を含む、請求項２７に記載のファイル共有方法。
【請求項２９】
前記サーバーが、前記共有ファイルの識別子に前記一つ以上の機器の各機器識別子を対応させて保存する段階を含む、請求項２２に記載のファイル共有方法。
【請求項３０】
前記サーバーが、機器識別子が前記共有ファイルの識別子に対応して保存された前記一つ以上の機器に前記メッセージを送信する段階を含む、請求項２９に記載のファイル共有方法。
【請求項３１】
前記サーバーが、前記共有ファイルに関連するメッセージ検索リクエストに対するレスポンスとして、前記共有ファイルの識別子に対応して保存された前記メッセージを前記一つ以上の機器に送信する段階を含む、請求項２７に記載のファイル共有方法。
【請求項３２】
前記一つ以上の機器が、前記共有ファイルに関連するメッセージ検索リクエストを生成する段階を含む、請求項３１に記載のファイル共有方法。
【請求項３３】
前記一つ以上の機器が、前記共有ファイルの実行に対するレスポンスとして、前記メッセージ検索リクエストを生成する、請求項３２に記載のファイル共有方法。
【請求項３４】
前記サーバーが、前記一つ以上の機器からのリクエストに対するレスポンスとして前記共有ファイルの識別子を生成する段階を含む、請求項２２に記載のファイル共有方法。
【請求項３５】
前記共有ファイルのファイル名が、前記認証情報および前記共有ファイルの識別子を含むように前記共有ファイルのファイル名を生成または変更する段階を含む、請求項２４に記載のファイル共有方法。
【請求項３６】
前記認証情報（および／または共有ファイルの識別子）と前記ファイル名の他の部分との間に、および／または前記認証情報と前記共有ファイルの識別子との間に、一つ以上の予め定義された文字を挿入する段階を含む、請求項３５に記載のファイル共有方法。
【請求項３７】
前記認証情報および前記共有ファイルの識別子を前記共有ファイルのメタデータフィールドに挿入する段階を含む、請求項２４に記載のファイル共有方法。
【請求項３８】
前記認証情報および前記共有ファイルの識別子をファイルのヘッダーまたはフッターとして、前記共有ファイルをファイルのボディとして構成する新しいフォーマットのファイルを生成する段階を含む、請求項２４に記載のファイル共有方法。
【請求項３９】
前記サーバーおよび／または前記一つ以上の機器が、前記共有ファイルに関連するメッセージを暗号化する段階と、
前記一つ以上の機器が、前記認証キーを用いて、前記暗号化されたメッセージを復号化する段階を含む、請求項２６に記載のファイル共有方法。
【請求項４０】
前記サーバーが前記一つ以上の機器にシステムメッセージを送信する段階を含む、請求項２２に記載のファイル共有方法。
【請求項４１】
前記一つ以上の機器が、前記サーバーから受信された前記共有ファイルに関連するメッセージを出力または表示する段階を含む、請求項２２に記載のファイル共有方法。
【請求項４２】
前記一つ以上の機器が、前記共有ファイルの実行に対するレスポンスとして、前記共有ファイルに関連するメッセージを出力または表示する段階を含む、請求項４１に記載のファイル共有方法。
【請求項４３】
前記サーバーが、前記共有ファイルのハッシュ値と修正時間を用いて前記共有ファイルのバージョンを管理する段階を含む、請求項２２に記載のファイル共有方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル共有システムおよびその方法に関するものである。より詳しくは、共有ファイルのファイル識別子を用いてメッセージをやり取りし、共有ファイルのバージョンを管理するシステムおよびその方法に関するものである。
【背景技術】
【０００２】
インスタントメッセージをやり取りする多者間メッセージ共有サービスがあるが、ほとんどメッセージ指向のサービスであるため、ファイル共有は付加的な機能に止まる。つまり、リアルタイムにてメッセージをやり取りし、簡単なファイルを共有するには便利であるが、特定のファイルに関するメッセージをやり取りする或いはファイルのバージョンを管理する用途には適さない。
【０００３】
一方、権限を持つ多数のユーザーがファイルをアップロードおよびダウンロードするファイル共有サービスもあるが、ほとんどファイル指向のサービスであるため、特定のファイルに関するメッセージをやり取りするためには別途のチャネルを利用しなければならない。つまり、電子メールやインスタントメッセンジャーなどを通じて、ファイルの登録や変更を別途通知しなければならず、特定のファイルに関するメッセージを別途やり取りしなければならないという不便さがある。
【０００４】
また、多数のユーザー間でファイルのバージョンを管理するために特化されたＣＶＳ（Ｃｏｎｃｕｒｒｅｎｔ  Ｖｅｒｓｉｏｎｓ  Ｓｙｓｔｅｍ）やＳＶＮ（Ｓｕｂｖｅｒｓｉｏｎ）などのサービスもあるが、ほとんどファイルのバージョンを管理するためにファイルのパスやファイル名に対する制約が伴う。すなわち、同じ内容のファイルがユーザーによってファイルのパスやファイル名を異ならせて保存されていても、同じファイルとして認識してファイルのバージョンを管理することが可能な機能はない。
【０００５】
そのため、ほとんどのユーザーは、ファイル名に日付やバージョン情報を挿入し、電子メールやインスタントメッセンジャーなどを通じてファイルを共有する。そして、電子メールやインスタントメッセンジャーなどを通じて、ファイルに関するメッセージをやり取りする。そのうちに、ファイルが修正される場合、再度ファイル名に日付やバージョン情報を変更して挿入し、ファイルを共有する不便さを経験している。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする技術的課題は、共有ファイルに関するメッセージを送受信するファイル共有システムおよびその方法を提供することである。
【０００７】
本発明が解決しようとする他の技術的課題は、ファイルのパスまたはファイル名が異なっても、多数のユーザー間で共有ファイルのバージョンを管理するファイル共有システムおよびその方法を提供することである。
【０００８】
本発明の技術的課題は上述した技術的課題に限定されず、上述していない別の技術的課題は以降の記載から通常の技術者に明確に理解できるだろう。
【課題を解決するための手段】
【０００９】
上記の技術的課題を解決するための本発明の一態様に係るファイル共有システムは、共有ファイルに関連するメッセージにアクセスすることが可能な権限を持つ、前記共有ファイルを保存した一つ以上の機器に対して、前記共有ファイルに関連するメッセージを送受信するように設定されたサーバーを含むことができる。
【００１０】
上記の技術的課題を解決するための本発明の他の態様に係るファイル共有システムは、一つ以上のバージョンおよび共有ファイル識別子を有する前記共有ファイルを保存し、一つ以上の機器から前記共有ファイルおよび前記共有ファイル識別子を受信し、前記共有ファイルのハッシュ値と修正時間を用いて、前記共有ファイル識別子に対応する前記受信された共有ファイルのバージョンを決定するように設定されたサーバーを含むことができる。
【００１１】
上記の技術的課題を解決するための本発明の別の態様に係るファイル共有方法は、サーバーが、共有ファイルに関連するメッセージにアクセスすることが可能な権限を持つ、前記共有ファイルを保存した一つ以上の機器に、前記共有ファイルに関連する一つ以上のメッセージを送信する段階を含むことができる。
【００１２】
上記の技術的課題を解決するための本発明の別の態様に係るファイル共有方法は、サーバーが、一つ以上のバージョンおよび共有ファイル識別子を有する前記共有ファイルを保存する段階と、前記サーバーが、一つ以上の機器から前記共有ファイルおよび前記共有ファイル識別子を受信する段階と、前記サーバーが、前記共有ファイルのハッシュ値と修正時間を用いて、前記共有ファイル識別子に対応する前記受信された共有ファイルのバージョンを決定する段階とを含むことができる。
【発明の効果】
【００１３】
前述したような本発明によれば、特定のファイルを共有している多数のユーザー間で共有ファイルのファイル識別子を用いてリアルタイムにてユーザーメッセージをやり取りすることができる。特に、ファイルの内容を変更しなくても、ユーザーメッセージをやり取りすることができるので、既存の方法とおり電子メールやインスタントメッセンジャーなどを通じてファイルを共有するとともにメッセージをやり取りする他のユーザーを排除しない。
【００１４】
また、共有ファイルのメタデータフィールドに挿入されたファイル識別子を用いて共有ファイルのバージョンを管理するので、ファイルを共有している各ユーザーが、それぞれの必要に応じて自分の端末にファイルのパスやファイル名を異ならせて保存しても、共有ファイルのバージョンを管理することができる。
【００１５】
本発明の効果は上述した効果に限定されず、上述していない別の効果は以降の記載から通常の技術者に明確に理解できるだろう。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施例において、ファイルを共有することを説明するための図である。
【図２】本発明の一実施例において、メッセージ管理サーバーが受信したユーザーメッセージを共有ファイルのファイル識別子に対応させて保存することを説明するためのフローチャートである。
【図３】本発明の一実施例において、メッセージ管理サーバーが受信したユーザーメッセージを共有ファイルのファイル識別子に対応して保存された他のユーザーにリアルタイムにて送信することを説明するための図である。
【図４】本発明の一実施例において、共有ファイルを保存する他の端末のユーザーがメッセージ管理サーバーに共有ファイルのファイル識別子に対応して保存されたユーザーメッセージを照会することを説明するための図である。
【図５】本発明の幾つかの実施例において、共有ファイルのファイル識別子を生成すること、共有ファイルの認証キーを生成すること、および前記認証キーと前記ファイル識別子を共有ファイルに挿入することを説明するための図である。
【図６ａ】本発明の幾つかの実施例において、共有ファイルの認証キーと共有ファイルのファイル識別子を共有ファイルに挿入することを説明するための図である。
【図６ｂ】本発明の幾つかの実施例において、共有ファイルの認証キーと共有ファイルのファイル識別子を共有ファイルに挿入することを説明するための図である。
【図６ｃ】本発明の幾つかの実施例において、共有ファイルの認証キーと共有ファイルのファイル識別子を共有ファイルに挿入することを説明するための図である。
【図７】本発明の一実施例において、メッセージ管理サーバーが受信した共有ファイルを共有ファイルのファイル識別子に対応させて保存することを説明するためのフローチャートである。
【図８】本発明の一実施例において、メッセージ管理サーバーが受信した共有ファイルを保存し、共有ファイルの登録に関するシステムメッセージを共有ファイルのファイル識別子に対応して保存された他のユーザーにリアルタイムにて送信することを説明するための図である。
【図９】本発明の一実施例において、共有ファイルを保存した他の端末のユーザーがメッセージ管理サーバーに共有ファイルのファイル識別子に対応して保存された共有ファイルのファイルバージョンを照会することを説明するための図である。
【図１０】本発明の一実施例において、各端末が自分の保有している共有ファイルのファイルバージョンを指し示すイメージを共有ファイルのアイコンに重畳させて表示することを説明するための図である。
【図１１】本発明の一実施例において、メッセージ管理サーバーに共有ファイルのファイル識別子に対応して保存された共有ファイルの特定のバージョンをダウンロードすることを説明するための図である。
【図１２】本発明の一実施例において、共有ファイルのファイルバージョンに応じてユーザーのメニューを異ならせて提供することを説明するための図である。
【図１３】本発明の一実施例で使用される、共有ファイルに関するユーザーメッセージを入力し照会するユーザーＵＩを説明するための図である。
【図１４】本発明の一実施例で使用される、メッセージ管理サーバーのハードウェア構成図である。
【図１５】本発明の一実施例に係るファイル共有システムを例示して示す概念図である。
【発明を実施するための形態】
【００１７】
以下、添付図面を参照して本発明の好適な実施例を詳細に説明する。
【００１８】
本発明の利点および特徴、そしてそれらを達成する方法は、添付図面と共に詳細に後述されている実施形態を参照すれば明確になるであろう。しかし、本発明は以下で開示する実施形態に限定されるものではなく、互いに異なる多様な形態で実現できる。但し、本実施形態は、本発明の開示を完全たるものにし、本発明の属する技術分野における通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであり、本発明は請求の範囲によってのみ定義される。明細書全体にわたり、同一の参照符号は同一の構成要素を示す。
【００１９】
他の定義がない限り、本明細書で使用されるすべての用語（技術および科学的用語を含む）は、本発明の属する技術分野における通常の知識を有する者に共通して理解できる意味で使用できる。また、一般に使用される辞書に定義されている用語は、明白に特に定義されていない限り、理想的または過度に解釈されない。本明細書で使用された用語は、実施形態を説明するためのものであり、本発明を制限しようとするものではない。本明細書において、単数形は、特別に言及しない限り、複数形も含む。
【００２０】
本明細書で使用される「含む（ｃｏｍｐｒｉｓｅｓ）」および／または「含む（ｃｏｍｐｒｉｓｉｎｇ）」は、言及された構成要素、段階、動作および／または素子は一つ以上の他の構成要素、段階、動作および／または素子の存在または追加を排除しない。
【００２１】
以下、本発明について添付図面に基づいてより詳細に説明する。
【００２２】
図１は本発明の一実施例において、ファイルを共有することを説明するための図である。
【００２３】
第１端末１０１ａのユーザーは、自分が持っている特定のファイルを第２端末１０１ｂのユーザーに電子メールやＵＳＢ、ＦＴＰ、ファイル共有サービスなどを通じて自由に伝達することができる。また、第１端末１０１ａのユーザーから共有ファイルの伝達を受けた第２端末１０１ｂのユーザーは、当該ファイルを、必要に応じてファイルのパスまたはファイル名を変更して保存することができる。
【００２４】
図１を参照すると、第１端末１０１ａのユーザーは、自分が持っている「月刊業務報告書．ｄｏｃｘ」ファイルを第２端末１０１ｂのユーザーに伝達し、第２端末１０１ｂのユーザーは、ファイルを「２０１５年４月報告書．ｄｏｃｘ」というファイル名で保存した。このように両方のユーザーが同じファイルを互いに異なるパスとファイル名で保存しても、共有ファイルに挿入されたファイル識別子を用いると、同じファイルとして認識することができる。共有ファイルのファイル識別子に対する説明と、ファイル識別子を共有ファイルに挿入することについては、図６ａから図６ｃまでで詳しく考察する。
【００２５】
ファイル識別子が挿入された共有ファイルを媒介にして、共有ファイルを持つユーザー同士でメッセージをリアルタイムにてやり取りすることができる。共有ファイルに関するメッセージをやり取りするために別途のユーザーフロントエンド（ｆｒｏｎｔ−ｅｎｄ）を持つこともできるが、直観的に簡便に使用することができるように各端末のオペレーティングシステムのファイルマネージャーと統合されて駆動されることも可能である。例えば、Ｗｉｎｄｏｗｓ（登録商標）オペレーティングシステムの「エクスプローラー」やＭａｃオペレーティングシステムの「ファインダー」上で共有ファイルに関するユーザーメニューを介してメッセージをやり取りする機能を提供することができる。
【００２６】
図１を参照すると、第１端末１０１ａのユーザーは、ウィンドウズ（登録商標）エクスプローラー１０３ａで共有ファイルを選択し、マウスの右クリックにてコンテキストメニューを有効にすることができる。ここで、メッセージ貼り付けメニューを選択し、第２端末１０１ｂのユーザーに伝えたいメッセージ「業務報告書の内容をご検討ください。」を入力すると、共有ファイルを有する第２端末１０１ｂのユーザーにメッセージが送信される。同様に、第２端末１０１ｂのユーザーもウィンドウズ（登録商標）エクスプローラー１０３ｂで共有ファイルを選択し、メッセージ貼り付けメニューをクリックして、「２０１５年４月販売量の修正が必要です。」というメッセージを入力すると、共有ファイルを有する第１端末１０１ａのユーザーに当該メッセージが送信される。このように、共有ファイルを有するユーザー間で、オペレーティングシステムから提供されるファイルマネージャーを用いて簡便にメッセージをやり取りすることにより、電子メールやインスタントメッセンジャーなどの別途のチャネルを用いてファイルに関するメッセージをやり取りする場合よりも効果的な意思伝達が可能である。共有ファイルを有するユーザー間でリアルタイムにてメッセージをやり取りすることについては、図２から図５までで詳しく説明する。
【００２７】
また、オペレーティングシステムから提供するファイルマネージャーを用いて、簡便に共有ファイルのファイルバージョンを管理することができる。特に、共有ファイルに挿入されたファイル識別子を用いてバージョン管理を行うことにより、各端末のユーザーが必要に応じて共有ファイルのファイルパスやファイル名を異ならせて保存していても、共有ファイルのファイルバージョンを管理することができるという利点がある。ファイル識別子が挿入された共有ファイルのファイルバージョン管理については図７から図１１までで詳しく説明する。
【００２８】
図２は本発明の一実施例において、メッセージ管理サーバーが受信したユーザーメッセージを共有ファイルのファイル識別子に対応させて保存することを説明するためのフローチャートである。
【００２９】
まず、第１端末の認証情報、共有ファイルのファイル識別子、共有ファイルに関するユーザーメッセージを第１端末から受信する（Ｓ１１００）。第１端末は、共有ファイルに関するユーザーメッセージをメッセージ管理サーバーに送信しようとする端末であって、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、スマートフォン（Ｓｍａｒｔ  Ｐｈｏｎｅ）など、共有ファイルを保存することが可能なストレージを有する端末である。第１端末の認証情報と共有ファイルのファイル識別子については、図５で詳しく後述する。共有ファイルに関するユーザーメッセージは、共有ファイルについて第１端末のユーザーが送信したいメッセージであって主にテキストであるが、これに限定されるものではない。一般に、インスタントメッセンジャー上でやり取りすることが可能なイメージやリンク、顔文字などもユーザーメッセージに含まれ得る。メッセージ管理サーバーは、移動通信、有・無線ネットワークなどを介して、第１端末の認証情報、共有ファイルのファイル識別子、共有ファイルに関するユーザーメッセージを受信することができる。
【００３０】
次の段階として、第１端末の認証情報を用いて、第１端末に対する認証を行う（Ｓ１２００）。第１端末の認証情報は、共有ファイルの認証キーと共有ファイルのファイル識別子をシード値とするハッシュ関数によって生成できる。メッセージ管理サーバーは、第１端末の認証情報を用いて、正当な権限を持つ端末からユーザーメッセージが受信されたかを確認することができる。
【００３１】
次の段階として、第１端末に対する認証が成功した場合に限り、ユーザーメッセージを共有ファイルのファイル識別子に対応させて保存する（Ｓ１３００）。ユーザーメッセージを共有ファイルのファイル識別子に対応させて保存するので、メッセージ管理サーバーがユーザーメッセージを他のユーザーに送信することができる。また、共有ファイルを保存した他の端末のユーザーも、共有ファイルのファイル識別子を用いてユーザーメッセージを照会することができる。これについては図３および図４で詳しく説明する。
【００３２】
図３は本発明の一実施例において、メッセージ管理サーバーが受信したユーザーメッセージを、共有ファイルのファイル識別子に対応して保存された他のユーザーにリアルタイムにて送信することを説明するための図である。
【００３３】
メッセージ管理サーバー１０は、第１端末１０１ａから受信したユーザーメッセージを共有ファイルのファイル識別子に対応させて保存する（Ｓ１３００）。その後、共有ファイルのファイル識別子に対応して保存された他のユーザーを検索する（Ｓ１４００）。他のユーザーは、第１端末１０１ａと同じ共有ファイルを保存した他の端末のユーザーであって、前もって他のユーザーの機器識別子が共有ファイルのファイル識別子にマッチングされてメッセージ管理サーバー１０に保存されている。他の端末の機器識別子を共有ファイルのファイル識別子に対応させて保存することについては、図４で詳しく説明する。
【００３４】
次の段階として、メッセージ管理サーバー１０は、検索された機器識別子に相応する各端末にユーザーメッセージを送信する（Ｓ１５００）。図３を参照すると、第２端末１０１ｂのユーザーも、第１端末１０１ａと同じ共有ファイルを持っているユーザーとして検索された。このため、メッセージ管理サーバー１０は、第１端末１０１ａから受信した共有ファイルに関するユーザーメッセージを第２端末１０１ｂへ送信する。これにより、ファイルを共有している多数のユーザー間で共有ファイルのファイル識別子を用いてリアルタイムにてユーザーメッセージをやり取りすることができる。
【００３５】
図４は本発明の一実施例において、共有ファイルを保存する他の端末のユーザーがメッセージ管理サーバーに共有ファイルのファイル識別子に対応して保存されたユーザーメッセージを照会することを説明するための図である。
【００３６】
第１端末１０１ａから受信したユーザーメッセージは、自動的にメッセージ管理サーバー１０によって共有ファイルを保存した他のユーザーにも送信される（Ｓ１５００）。ところが、場合によっては、共有ファイルを保存している端末であるにも拘わらず、まだ端末の機器識別子が共有ファイル識別子に対応して保存されないこともある。或いは、端末で個別に共有ファイル識別子に対応して保存されたユーザーメッセージを照会することもある。このような場合に備えて、メッセージ管理サーバー１０は、メッセージ照会リクエストを受け、これに対するレスポンスとして、共有ファイル識別子に対応して保存されたユーザーメッセージを送信することができる。
【００３７】
まず、共有ファイルに関するユーザーメッセージをメッセージ管理サーバー１０から照会しようとする第２端末１０１ｂから、第２端末の認証情報、共有ファイルのファイル識別子およびメッセージ照会リクエストを受信する（Ｓ１６００）。次の段階として、第２端末の認証情報を用いて、第２端末１０１ｂに対する認証を行う（Ｓ１７００）。
【００３８】
第２端末１０１ｂの認証情報および第２端末１０１ｂに対する認証を行う過程は、図２で説明した第１端末１０１ａの認証情報および第１端末１０１ａに対する認証を行う過程と同一である。
【００３９】
次の段階として、第２端末１０１ｂに対する認証が成功した場合に限り、共有ファイルのファイル識別子に対応して保存されたユーザーメッセージを検索する（Ｓ１８００）。次の段階として、メッセージ照会リクエストに応答して、検索されたユーザーメッセージを、第２端末１０１ｂへ送信する（Ｓ１９００）。これにより、ファイルを共有している多数のユーザー間でリアルタイムにてユーザーメッセージをやり取りするだけでなく、以前やり取りしたユーザーメッセージを照会して閲覧することもできる。
【００４０】
本発明の一実施例によれば、第２端末１０１ｂが共有ファイルを有効にすると、メッセージ照会リクエストをメッセージ管理サーバー１０へ自動的に送信することができる。第２端末１０１ｂのユーザーがメッセージ照会リクエストをメッセージ管理サーバー１０へ別途送信しなくても、共有ファイルを実行するだけでも、共有ファイルのファイル識別子に対応して保存されたユーザーメッセージを照会することができる。これにより、第１端末１０１ａのユーザーがユーザーメッセージを送信するときに、第２端末１０１ｂがオフラインなどの理由でユーザーメッセージをリアルタイムにて受信することができなかった場合でも、追って共有ファイルの実行と共にメッセージ照会リクエストを自動的に送信することにより、ユーザーメッセージを受信することができる。さらに、第２端末１０１ｂが共有ファイルを有効にする場合のみならず、第２端末１０１ｂのオペレーティングシステムが開始する場合に、メッセージ照会リクエストを送信することもできる。
【００４１】
本発明の一実施例によれば、検索されたユーザーメッセージを第２端末１０１ｂへ送信する段階（Ｓ１９００）は、第２端末１０１ｂの機器識別子を共有ファイル識別子に対応させて保存する段階を含むことができる。もし、第２端末１０１ｂが共有ファイルを保存している端末であるにも拘わらず、まだ端末の機器識別子が共有ファイル識別子に対応して保存されない場合には、メッセージ照会リクエストを通じて、追ってユーザーメッセージをリアルタイムにて受信することができる。
【００４２】
図５は本発明の幾つかの実施例において、共有ファイルのファイル識別子を生成すること、共有ファイルの認証キーを生成すること、および前記認証キーと前記ファイル識別子を共有ファイルに挿入することを説明するための図である。
【００４３】
今まで、図２および図３におけるユーザーメッセージの送信、および図４におけるメッセージ照会リクエストを考察した。これからは、ユーザーメッセージの送信やメッセージ照会リクエストにおいて共通に使用される各端末の認証情報および共有ファイルのファイル識別子を生成する過程を考察する。
【００４４】
共有ファイルのファイル識別子を用いてメッセージをやり取りし、バージョン管理を行うので、共有ファイルのファイル識別子は、メッセージ管理サーバー１０、および各端末内でグローバルに固有な値を持たなければならない。よって、共有ファイル識別子は、一般的にメッセージ管理サーバー１０で生成されて割り当てられる過程を経る。すなわち、特定の共有ファイルに関するユーザーメッセージをメッセージ管理サーバー１０へ最初に送信しようとする第１端末１０１ａから、共有ファイルに対するファイル識別子生成リクエストを受信し（Ｓ１１１０）、メッセージ管理サーバー１０でグローバルに固有な共有ファイルのファイル識別子を生成した後（Ｓ１１２０）、生成された共有ファイルのファイル識別子を第１端末１０１ａへ送信する（Ｓ１１３０）。共有ファイルのファイル識別子を生成する段階は、最初の１回の作業で十分であり、それ以降は、生成された共有ファイルのファイル識別子を用いてユーザーメッセージをやり取りするか、或いはメッセージ照会リクエストを行うことができる。但し、共有ファイルのファイル識別子が持つ、グローバルに固有な特性が保障できれば、共有ファイルのファイル識別子を生成する過程は各端末で行うこともできる。例えば、各端末の機器識別子と各端末内で管理するリニアカウンタの値を組み合わせて共有ファイルのファイル識別子を生成することもできるだろう。
【００４５】
また、共有ファイルに関するユーザーメッセージをメッセージ管理サーバー１０へ最初に送信しようとする第１端末１０１ａは、共有ファイルの認証キーを生成することもできる（Ｓ１１４０）。第１端末１０１ａは、認証キーを用いて、認証キーと共有ファイル識別子をシード値とするハッシュ関数によって認証情報を生成することができる（Ｓ１１５０）。ここで、ハッシュ関数は、可変長のデータ、すなわちシードをある固定長のデータにマッピング（ｍａｐｐｉｎｇ）することができるアルゴリズムを通称する。ハッシュ関数の演算結果は、マッピングされた固定長のデータであって、ハッシュ値、ハッシュコード、ハッシュサム、チェックサム、ハッシュなどと呼ばれる。ハッシュ関数は、シードから導出された結果から再びシードを算出し難い単方向の関数である。
【００４６】
メッセージ管理サーバー１０は、認証キーと共有ファイルのファイル識別子をシード値とするハッシュ関数によって生成された認証情報を用いて、各端末に対する認証を行い、ユーザーメッセージ送信やメッセージ照会リクエストを行うことができる。すなわち、認証情報と共有ファイルのファイル識別子は、共有ファイルを媒介として発生するすべてのトランザクションに不可欠なパラメータである。従って、共有ファイルを保存した各端末のユーザーは、認証情報と共有ファイルのファイル識別子を持っているべきである。もちろん、共有ファイルの伝達とは別個に、認証情報と共有ファイルのファイル識別子を伝達することもできるが、それよりは共有ファイルと一緒に伝達されることが利便性の観点から好ましい。また、認証情報を直接伝達することよりも、認証情報を生成することが可能な認証キーを共有ファイルと一緒に伝達することがセキュリティー性の観点から好ましい。
【００４７】
共有ファイルに関するユーザーメッセージをメッセージ管理サーバー１０へ最初に送信しようとする第１端末１０１ａは、共有ファイルの認証キーと共有ファイルのファイル識別子を共有ファイルに挿入する段階を持つことができる（Ｓ１１６０）。ファイル識別子を共有ファイルに挿入することについては、図６ａから図６ｃまでで詳しく説明する。
【００４８】
本発明の一実施例によれば、第１端末１０１ａは、共有ファイルの認証キーを用いて、ユーザーメッセージを暗号化し（Ｓ１１７０）、メッセージ管理サーバー１０へ暗号化されたユーザーメッセージを送信することができる（Ｓ１１００）。すなわち、ユーザーメッセージを送信するための第１端末１０１ａから、共有ファイルに挿入された認証キーを用いてユーザーメッセージを暗号化してメッセージ管理サーバー１０に送信すれば、メッセージ管理サーバー１０には、暗号化されたユーザーメッセージが保存される。そして、暗号化されたユーザーメッセージをメッセージ管理サーバー１０から受信した第２端末１０１ｂでは、共有ファイルに挿入された認証キーを抽出してユーザーメッセージを復号化することができる。これにより、メッセージ管理サーバー１０には暗号化されたユーザーメッセージが保存されてセキュリティー性を強化することができ、共有ファイルを有する各端末は、共有ファイルに挿入された認証キーを用いてユーザーメッセージを暗号化および復号化することができる。
【００４９】
図６ａから図６ｃまでは本発明の幾つかの実施例において、共有ファイルの認証キーと共有ファイルのファイル識別子を共有ファイルに挿入することを説明するための図である。
【００５０】
第１端末１０１ａは、共有ファイルのファイル名を共有ファイルの認証キーと共有ファイルのファイル識別子を含むように変更することができる（Ｓ１１６０）。図６ａを参照すると、元のファイル名が「２０１５決算報告．ｄｏｃｘ」である共有ファイルを、「２０１５決算報告＃認証キー＠ファイル識別子＃．ｄｏｃｘ」のようなファイル名に変更することができる。「＃」と「＠」を区切り文字にして、ファイル名から認証キーとファイル識別子を抽出することができる。
【００５１】
共有ファイルの認証キーと共有ファイルのファイル識別子は、共有ファイルのメタデータフィールドに挿入できる（Ｓ１１６０）。例えば、ＰＰＴ、ＤＯＣ、ＸＬＳなどの文書ファイル形式、ＪＰＥＧ、ＴＩＦＦなどの画像ファイル形式、ＭＰ３、ＭＰ４などの音楽ファイル形式は、多様な付加情報を書き込むことができるように、属性、ＥＸＩＦ、ＩＤ３などと呼ばれるメタデータフィールドを持つ。このように、メタデータフィールドに認証キーとファイル識別子を挿入すると、ファイル名に挿入することに比べて認証キーとファイル識別子がユーザーに直接露出しないという利点がある。図６ｂの例示では、ファイルのメタデータフィールド１１６１に共有ファイルの認証キーとファイル識別子が挿入されている。
【００５２】
共有ファイルの認証キーと共有ファイルのファイル識別子は、ヘッダーまたはフッターに挿入され、元の共有ファイルと結合できる（Ｓ１１６０）。つまり、共有ファイルにヘッダーまたはフッターを結合した新しい共有専用フォーマットのファイルが生成されるのである。このように、認証キーとファイル識別子を含むヘッダーまたはフッターを元の共有ファイルと結合して新しいフォーマットのファイルを生成することは、メタデータフィールドに認証キーとファイル識別子を挿入することよりもセキュリティー性を強化することができる。しかし、新しいフォーマットのファイルであるため、元の共有ファイルに接続されたアプリケーションで新しい共有フォーマットのファイルを確認することができないという欠点がある。これを克服するために、オペレーティングシステムで提供するファイルシステムフィルタードライバを設定して、元の共有ファイルに接続されたアプリケーションが、新しい共有フォーマットのファイルにおける、ヘッダーとフッターを除く元の共有ファイルにアクセスするように設定することができる。
【００５３】
図６ｃの例示では、共有専用フォーマットのファイルヘッダー１１６７に共有ファイルの認証キーおよびファイル識別子１１６３が挿入され、共有専用フォーマットファイルのボディ１１６５に元の共有ファイルが挿入されている。ユーザーは、このような共有専用フォーマットのファイルを、オペレーティングシステムのファイルフィルタードライバ１１６９を介して、元の共有ファイルに接続されたアプリケーションを利用してアクセスすることができる。
【００５４】
このように、共有ファイルの認証キーと共有ファイルのファイル識別子が挿入された共有ファイルを他のユーザーに伝達すると、共有ファイルを受信した他のユーザーは、再び認証キーを生成したりファイル識別子生成リクエストをしたりする必要がない。その代わりに、共有ファイルに挿入された認証キーとファイル識別子を抽出して、共有ファイルに関するユーザーメッセージをやり取りしたりメッセージ照会リクエストをしたりすることができる。
【００５５】
特に、認証キーとファイル識別子を共有ファイルのファイル名に挿入し或いは共有ファイルのメタデータフィールドに挿入する方法は、共有ファイルの内容を変更しない。つまり、ファイルの内容を変更せずに認証キーまたはファイル識別子を挿入すると、既存の方法とおりに電子メールやインスタントメッセンジャーなどを通じてファイルを共有しメッセージをやり取りする他のユーザーを排除しないという利点がある。また、認証キーとファイル識別子を共有ファイルのメタデータフィールドに挿入し或いは別途の共有専用フォーマットのファイルヘッダーまたはフッターに挿入する方法は、認証キーとファイル識別子をユーザーに露出させないことからセキュリティー性が強化されるという利点がある。
【００５６】
図７は本発明の一実施例において、メッセージ管理サーバーが受信した共有ファイルを共有ファイルのファイル識別子に対応させて保存することを説明するためのフローチャートである。
【００５７】
まず、共有ファイルをメッセージ管理者サーバーに登録しようとする第１端末から、第１端末の認証情報、共有ファイルのファイル識別子、共有ファイルを受信する（Ｓ２１００）。次の段階として、第１端末の認証情報を用いて、第１端末に対する認証を行う（Ｓ２２００）。次の段階として、第１端末に対する認証が成功した場合に限って、共有ファイルを共有ファイルのファイル識別子に対応させて保存する（Ｓ２３００）。
【００５８】
ここで、第１端末の認証情報や共有ファイルのファイル識別子は、図２から図５までで説明したのと同じである。共有ファイルを共有ファイルのファイル識別子にマッチングしてメッセージ管理サーバー１０に保存することにより、ファイル識別子を用いた共有ファイルのファイルバージョン管理が可能である。これについては図９で詳しく説明する。
【００５９】
また、共有ファイルのファイル名または共有ファイルのメタデータフィールドに共有ファイルのファイル識別子が挿入されているので、第１端末の認証情報、共有ファイルのファイル識別子、共有ファイルを受信する代わりに、第１端末の認証情報と共有ファイルを受信することもできる。共有ファイルからファイル識別子を抽出し、共有ファイルを抽出されたファイル識別子に対応させて保存することもできる。
【００６０】
図８は本発明の一実施例において、メッセージ管理サーバーが受信した共有ファイルを保存し、共有ファイルの登録に関するシステムメッセージを共有ファイルのファイル識別子に対応して保存された他のユーザーにリアルタイムにて送信することを説明するための図である。
【００６１】
図３では、共有ファイルのファイル識別子を用いて、共有ファイルを保存した各端末のユーザーにユーザーメッセージをリアルタイムにて送信することを考察した。同様に、メッセージ管理サーバー１０は、ユーザーメッセージだけでなく、システムメッセージも共有ファイルのファイル識別子に対応して保存された各ユーザーに送信することもできる。
【００６２】
メッセージ管理サーバー１０は、第１端末１０１ａから受信した共有ファイルを共有ファイルのファイル識別子に対応させて保存し（Ｓ２３００）、共有ファイルのファイル識別子に対応して保存された他のユーザーを検索する（Ｓ２４００）。次の段階として、メッセージ管理サーバー１０は、検索された機器識別子に相応する各端末にシステムメッセージを送信する（Ｓ２５００）。ここで、システムメッセージは、共有ファイルの登録についてメッセージ管理サーバー１０が生成したメッセージである。例えば、「ＯＯＯユーザーがＯＯＯ共有ファイルを２０１５年ＸＸ月ＸＸ日ＸＸ時ＸＸ分ＸＸ秒に登録しました」などというシステムメッセージを自動的に生成し、共有ファイルを保存した各端末のユーザーに送信することができる。これにより、共有ファイルのアップデートに関する情報を、簡便に共有ファイルを保存した各端末のユーザーに案内することができる。
【００６３】
メッセージ管理サーバー１０は、受信した共有ファイルを単に保存することに止まるのではなく、共有ファイルのハッシュ値および修正日時に基づいて共有ファイルのファイルバージョンを管理することができる。つまり、メッセージ保存サーバー１０が共有ファイルを受信すると、受信した共有ファイルのハッシュ値および修正日時を、既に保存された共有ファイルのハッシュ値および修正日時と比較して、新しいファイルであるか、既に保存されたファイルであるかを判断することができる。もし、受信した共有ファイルが新しいファイルであれば、受信した共有ファイルのファイルバージョンを決定し、メッセージ保存サーバー１０に受信した共有ファイルを保存することができる。これにより、共有ファイルのファイル識別子に対応して保存された様々なバージョンの共有ファイルをバージョン別に照会することができる。
【００６４】
さらに、決定された共有ファイルのファイルバージョンを受信した共有ファイルに挿入して、ファイルのバージョンが挿入された共有ファイルをメッセージ管理サーバー１０に保存することができる。ここで、共有ファイルのファイルバージョンは、各共有ファイルに対して線形的に増加するカウンタ値を用いて生成することができ、共有ファイルのメタデータフィールドに共有ファイルのファイルバージョンを挿入することができる。共有ファイルにファイルバージョンを挿入してメッセージ管理サーバー１０に保存すると、後述する本発明の一実施例において、端末に保存された共有ファイルとサーバーに保存された共有ファイルの最新バージョンとのバージョン差異をアイコンに数字で表示するときにサーバーの負担を減らすことができるという効果もある。
【００６５】
図９は本発明の一実施例において、共有ファイルを保存した他の端末のユーザーが、メッセージ管理サーバーに共有ファイルのファイル識別子と対応して保存された共有ファイルのファイルバージョンを照会することを説明するための図である。
【００６６】
まず、共有ファイルのファイルバージョンを照会しようとする第２端末１０１ｂから、第２端末の認証情報、共有ファイルのファイル識別子およびファイルバージョン照会リクエストを受信する（Ｓ２６００）。次の段階として、第２端末の認証情報を用いて、第２端末１０１ｂに対する認証を行う（Ｓ２７００）。次の段階として、第２端末１０１ｂに対する認証が成功した場合に限り、共有ファイルのファイル識別子に対応して保存された共有ファイルを検索する（Ｓ２８００）。次の段階として、ファイルバージョン照会リクエストに応答して、検索された共有ファイルのファイルバージョンを第２端末１０１ｂへ送信する（Ｓ２９００）。ファイルバージョン照会リクエストを介して、第２端末１０１ｂが保有している共有ファイルが最新のファイルであるか、それとも、その後にメッセージ管理サーバー１０にアップデートされた共有ファイルがあるかを確認することができる。
【００６７】
本発明の一実施例によれば、第２端末１０１ｂが共有ファイルを有効にすると、ファイルバージョン照会リクエストをメッセージ管理サーバー１０へ自動的に送信することができる。第２端末１０１ｂのユーザーがファイルバージョン照会リクエストをメッセージ管理サーバー１０へ別途送信せずとも、共有ファイルを実行するだけでも、共有ファイルのファイル識別子に対応して保存された共有ファイルのファイルバージョンを照会することができる。さらに、第２端末１０１ｂが共有ファイルを有効にする場合のみならず、第２端末１０１ｂのオペレーティングシステムが開始する場合に、ファイルバージョン照会リクエストを送信することもできる。
【００６８】
本発明の一実施例によれば、第２端末１０１ｂは、メッセージ管理サーバー１０から受信した共有ファイルのファイルバージョンを利用して、自分が保有している共有ファイルのファイルバージョンを決定することができる。そして、自分が保有している共有ファイルのファイルバージョンを、自分が保有している共有ファイルに挿入することができる。また、自分が保有している共有ファイルのファイルバージョンをアイコンなどによって視覚的に表示することもできる。
【００６９】
図１０は本発明の一実施例において、各端末が、自分の保有している共有ファイルのバージョンを指し示すイメージを共有ファイルのアイコンに重畳させて表示することを説明するための図である。
【００７０】
例えば、端末が保有している共有ファイルが、未だメッセージ管理サーバー１０に保存されてバージョン管理をしているファイルではない場合、アイコンにＳ（ｓａｖｅ）表示で表すことができる。または、端末が保有している共有ファイルが、メッセージ管理サーバー１０に保存された共有ファイルと同じである場合、アイコンにＮ（ｎｅｗ）表示で表すことができる。もし、端末が保有している共有ファイルが、メッセージ管理サーバー１０に保存された共有ファイルよりも古いバージョンである場合には、バージョンの差異をアイコンに数字で表すことができる。もし、端末が保有している共有ファイルが、メッセージ管理サーバー１０に保存された共有ファイルよりも最新である場合、すなわち共有ファイルを修正したが、まだメッセージ管理サーバー１０に保存されていない場合には、アイコンにＭ（ｍｏｄｉｆｙ）表示で表すことができる。
【００７１】
図１０を参照すると、Ａ段階で第１端末１０１ａのユーザーが「１０９２８」の共有ファイルのファイル識別子をもって、「ＢＢＢ」の内容を有する共有ファイルを生成した。まだメッセージ管理サーバー１０に保存する前なので、アイコンには「Ｓ」で表示される。その後、Ｂ段階で、第１端末１０１ａのユーザーが共有ファイルを第２端末１０１ｂのユーザーにも伝達し、メッセージ管理サーバー１０にも登録すれば、第１端末１０１ａおよび第２端末１０１ｂの両方とも最新バージョンのファイルを持っているので、「Ｎ」でアイコンに表示される。その後、Ｃ段階で第１端末１０１ａのユーザーが共有ファイルの内容を「ＣＣＣ」に変更すると、第１端末１０１ａは、修正されたファイルを持っているので、「Ｍ」でアイコンに表示される。その後、Ｄ段階で第１端末１０１ａのユーザーが共有ファイルをメッセージ管理サーバー１０に登録すれば、第１端末１０１ａは、最新バージョンのファイルを持っているので、「Ｎ」でアイコンに表示されるが、第２端末１０１ｂは、古いバージョンのファイルを持っているので、バージョンの差異を示す「１」がアイコンに表示される。最後に、Ｅ段階で第２端末１０１ｂのユーザーがメッセージ管理サーバー１０から最新バージョンのファイルをダウンロードすれば、第２端末１０１ｂも「Ｎ」でアイコンに表示される。
【００７２】
図１０の例示の如く、第１端末１０１ａのユーザーは、「１０９２８」の共有ファイルを第２端末１０１ｂのユーザーに最初１回だけ伝達すれば十分であり、それ以降は、ファイルの内容が変更されてもさらに第２端末１０１ｂのユーザーにファイルを再伝達する必要がない。第１端末１０１ａのユーザーが変更ファイルを再伝達する代わりに、第２端末１０１ｂのユーザーが自分でメッセージ管理サーバー１０から最新バージョンのファイルをダウンロードすればよい。これにより、簡単にファイルのバージョンを管理し、最新バージョンのファイルを共有することができるという利点がある。
【００７３】
図１１は本発明の一実施例において、メッセージ管理サーバーに共有ファイルのファイル識別子と対応して保存された共有ファイルの特定のバージョンをダウンロードすることを説明するための図である。
【００７４】
前述の如く、メッセージ管理サーバー１０によって共有ファイルのファイルバージョンを管理する場合、さらにバージョン情報を用いてバックアップしたり最新の共有ファイルにアップデートしたりするようにサポートすることができる。
【００７５】
まず、共有ファイルの特定のバージョンをメッセージ管理サーバー１０からダウンロードしようとする第２端末１０１ｂから、第２端末の認証情報、共有ファイルのファイル識別子、および特定のバージョンのダウンロードリクエストを受信する（Ｓ３６００）。次の段階として、第２端末の認証情報を用いて、第２端末１０１ｂに対する認証を行う（Ｓ３７００）。次の段階として、第２端末１０１ｂに対する認証が成功した場合に限り、共有ファイルのファイル識別子に対応して保存された共有ファイルの特定のバージョンを検索する（Ｓ３８００）。次の段階として、特定のバージョンのダウンロードリクエストに応答して、検索された共有ファイルの特定のバージョンを第２端末１０１ｂへ送信する（Ｓ３９００）。
【００７６】
共有ファイルのファイル識別子を用いて共有ファイルのファイルバージョンを管理することにより、ファイルを共有している各ユーザーが必要に応じてファイルのパスやファイル名を異ならせて変更し保存していても、ファイルのバージョン管理およびアップデートが可能である。
【００７７】
図１２は本発明の一実施例において、共有ファイルのバージョンに応じてユーザーのメニューを異ならせて提供することを説明するための図である。
【００７８】
今まで考察した、ユーザーメッセージの伝送、メッセージ照会リクエスト、共有ファイルの登録、ファイルバージョン照会リクエスト、特定のバージョンのダウンロードリクエストなどの機能は、別途のユーザーフロントエンドを持つこともできるが、直観的に簡単に使用できるように各端末のオペレーティングシステムのファイルマネージャーと統合されて駆動されることも可能である。
【００７９】
例えば、第１端末１０１ａのユーザーは、共有ファイルを保存する第１端末１０１ａのＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム上でエクスプローラーを実行して、共有ファイルが保存されたパスを探索する。エクスプローラーは、当該パス上で、共有ファイルを指し示すアイコンを表示し、アイコンの上でマウスを右クリックすると提供されるコンテキストメニューを介して共有ファイルに関する様々な機能を提供することができる。
【００８０】
ここで、ユーザーメッセージを伝送する場合を例として説明する。アイコンの上でマウスを右クリックして提供されたコンテキストメニューからメッセージ貼り付けというメニューを選択すると、ユーザーメッセージを入力するための別途のＵＩが提供される。ここで、ユーザーメッセージを入力するための別途のＵＩは、一般的なインスタントメッセンジャーのメッセージ入力ウィンドウに類似している。第１端末１０１ａが、前記ＵＩを介してメッセージコンテンツの入力を受け、入力されたメッセージをメッセージ管理サーバーへ送信する。メッセージ管理サーバーは、前記共有ファイルを保存する各端末に受信されたメッセージコンテンツを送信することができる。
【００８１】
図１２を参照すると、共有ファイルのバージョンに応じて提供される機能が変わることを確認することができる。以下、メニューを記載するときは、［］表示と共に説明する。まだ共有ファイルのファイル識別子が生成されていない一般的なファイルであれば（２１０）、［メッセージ貼り付け］というメニューのみ提供される。或いは、［ファイル識別子生成］というメニューのみ提供されることもある。次に、ファイル識別子が挿入された共有ファイルが未だバージョン管理されていない場合であれば（２２０）、「Ｓ」表示のアイコンと共に、［メッセージ貼り付け］、送受信したメッセージを照会する［メッセージ照会］および［ファイル登録］というメニューが提供される。共有ファイルをメッセージ管理サーバー１０に登録した場合（２３０）には、最新バージョンのファイルであるため、「Ｎ」表示のアイコンと共に、［メッセージ貼り付け］、［メッセージ照会］および［ファイルバージョン照会］というメニューが提供される。ファイルが修正された場合（２４０）には、「Ｍ」表示のアイコンと共に、［メッセージ貼り付け］、［メッセージ照会］、［最新ファイル登録］および［ファイルバージョン照会］というメニューが提供される。他の端末のユーザーが共有ファイルをアップデートした場合（２５０）には、共有ファイルのバージョン差異を示す「１」表示のアイコンと共に、［メッセージ貼り付け］、［メッセージ照会］、［最新ファイルダウンロード］および［ファイルバージョン照会］というメニューが提供される。このように、共有ファイルに関するメッセージ伝播およびファイルバージョン管理をオペレーティングシステムのファイルマネージャーと結合して提供することにより、ユーザーがオペレーティングシステムのファイルマネージャーをメッセージボードにして、ファイルに付箋を付けるように簡単に情報を入力し共有する。
【００８２】
図１３は本発明の一実施例で使用される、共有ファイルに関するユーザーメッセージを入力して照会するユーザーＵＩを説明するための図である。
【００８３】
本発明の一実施例によれば、共有ファイルに関するユーザーメッセージ入力および照会ＵＩ３１０は、インスタントメッセンジャーのメッセージ入力ＵＩに類似する。上段には、ファイルに関する情報、例えば、生成日時、生成者、最近登録日時、登録者、ファイルの容量、ファイルの簡単な内容などが提供される。また、ファイルのアップロードとダウンロード機能がボタンとして提供される。中段には、共有ファイルを持つユーザー間でやり取りしたメッセージが提供され、下段には、ユーザーメッセージを入力することが可能な入力ウィンドウが提供される。
【００８４】
図１４は本発明の一実施例で使用される、メッセージ管理サーバーのハードウェア構成図である。
【００８５】
図１４を参照すると、メッセージ管理サーバー１０は、一つ以上のプロセッサ５１０、メモリ５２０、ストレージ５６０およびインターフェース５７０を含む。プロセッサ５１０、メモリ５２０、ストレージ５６０およびインターフェース５７０は、システムバス５５０を介してデータを送受信する。
【００８６】
プロセッサ５１０は、メモリ５２０にロードされたコンピュータプログラムを実行し、メモリ５２０は、前記コンピュータプログラムをストレージ５６０からロード（ｌｏａｄ）する。前記コンピュータプログラムは、メッセージ受信オペレーション５２１、認証オペレーション５２３、およびメッセージ保存オペレーション５２５を含む。
【００８７】
メッセージ受信オペレーション５２１は、ネットワーク５７０を介して第１端末１０１ａの認証情報、共有ファイルの識別子および共有ファイルに関するユーザーメッセージを受信し、これをメモリ５２０にロードする。認証オペレーション５２３は、第１端末の認証情報を用いて、第１端末に対する認証を行い、その結果を生成する。メッセージ保存オペレーション５２５は、認証オペレーション５２３が生成した認証結果が成功である場合に限り、ユーザーメッセージを共有ファイルの識別子にマッチングして保存する。ここでマッチングされたデータを、それぞれシステムバス５５０を介してストレージ５６０の共有ファイルデータ５６１とユーザーメッセージデータ５６３に保存する。
【００８８】
メッセージ管理サーバー１０は、ネットワークインターフェース５７０を介して共有ファイルデータ５６１とユーザーメッセージデータ５６３を照会するためのインターフェースを提供する。
【００８９】
図１４の各構成要素は、ソフトウェア（Ｓｏｆｔｗａｒｅ）、またはＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）やＡＳＩＣ（Ａｐｐｌｉｗｃａｔｉｏｎ−Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などのハードウェア（Ｈａｒｄｗａｒｅ）を意味する。しかしながら、これらの構成要素は、ソフトウェアまたはハードウェアに限定される意味ではなく、アドレッシング（Ａｄｄｒｅｓｓｉｎｇ）することが可能な記憶媒体にあるように構成されてもよく、一つまたはそれ以上のプロセッサを実行させるように構成されてもよい。これらの構成要素内で提供される機能は、さらに細分化された構成要素によって実現でき、複数の構成要素を組み合わせて、特定の機能を実行する一つの構成要素として実現されてもよい。
【００９０】
図１５は本発明の一実施例に係るファイル共有システムを例示して示す概念図である。
【００９１】
図１５を参照すると、ファイル共有システムは、メッセージ管理サーバー１０、第１端末１０１ａ、および第２端末１０１ｂを含む。
【００９２】
メッセージ管理サーバー１０は、共有ファイルを保存するための共有ファイルＤＢ５６１と、メッセージを保存するためのメッセージＤＢ５６３を含む。また、各端末から共有ファイルに関連するメッセージを受信するメッセージ受信部５２１、受信したメッセージが正当なユーザーから送信されたものなのかを認証するメッセージ認証部５２３、および認証が成功した場合に限って、受信したメッセージを、共有ファイルを持つ他のユーザーへ送信するメッセージ処理部５２５を含む。また、各端末から受信した共有ファイルのバージョンを管理するファイルバージョン管理部５２７、および共有ファイルをバージョン別に共有ファイルＤＢ５６１に保存する共有ファイル保存部５２９を含む。
【００９３】
各端末は、ユーザーからメッセージの入力を受けてメッセージ管理サーバー１０に送信するメッセージ送信部６２１、メッセージ管理サーバー１０から、他の端末のユーザーが送信したメッセージを受信するメッセージ受信部６２３、およびメッセージ管理サーバー１０から最新バージョンのファイルをダウンロードし、或いは修正されたファイルをアップロードする共有ファイル管理部６２７を含む。
【００９４】
以上、添付図面を参照して本発明の実施例を説明したが、本発明の属する技術分野における通常の知識を有する者は、その技術的思想や必須の特徴を変更することなく、本発明が他の具体的な形態で実施され得るのを理解することができるだろう。したがって、以上で記述した実施例は、あらゆる面で例示的なもので、限定的なものではないと理解すべきである。
【図１】
0006462138.tif 000002
【図２】
0006462138.tif 000003
【図３】
0006462138.tif 000004
【図４】
0006462138.tif 000005
【図５】
0006462138.tif 000006
【図６ａ】
0006462138.tif 000007
【図６ｂ】
0006462138.tif 000008
【図６ｃ】
0006462138.tif 000009
【図７】
0006462138.tif 000010
【図８】
0006462138.tif 000011
【図９】
0006462138.tif 000012
【図１０】
0006462138.tif 000013
【図１１】
0006462138.tif 000014
【図１２】
0006462138.tif 000015
【図１３】
0006462138.tif 000016
【図１４】
0006462138.tif 000017
【図１５】
0006462138.tif 000018