(57)【要約】【課題】クラウドストレージサービスの共有フォルダーを利用しつつ、複数のユーザーがそれぞれのクライアント端末からＷｅｂＤＡＶプロトコルで、共有フォルダー内の暗号化されたファイルにアクセスして、その暗号化されたファイルを共有できるようにする。【解決手段】  中継処理部１３は、クラウドストレージサービス上でそのユーザーに対してアクセスが許可されている共有フォルダーのリストをクラウドストレージ通信部１１で取得しＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供し、共有フォルダーを指定したファイル保存要求が受信されると、そのファイルを暗号化した暗号化後のファイルを、指定された共有フォルダーにクラウドストレージ通信部１１で保存し、共有フォルダーにおけるファイルの読み出し要求が受信されると、そのファイルを復号した復号後のファイルをＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供する。【選択図】  図１
2015215703.tif 000002
【特許請求の範囲】
【請求項１】
クラウドストレージサービスを提供するクラウドストレージサーバーとの通信を行うクラウドストレージ通信部と、
クライアント端末装置との通信をＷｅｂＤＡＶプロトコルで行うＷｅｂＤＡＶ通信部と、
ファイルの暗号化を行う暗号化部と、
暗号化されたファイルの復号を行う復号部と、
（ａ）前記クライアント端末装置のユーザーが前記クラウドストレージサービス上で所有する所有フォルダーのリストを前記クラウドストレージ通信部で取得し前記ＷｅｂＤＡＶ通信部で前記クライアント端末装置に提供し、（ｂ）前記クラウドストレージサービス上で前記クライアント端末装置のユーザーに対してアクセスが許可されている共有フォルダーのリストを前記クラウドストレージ通信部で取得し前記ＷｅｂＤＡＶ通信部で前記クライアント端末装置に提供し、（ｃ）前記所有フォルダーまたは前記共有フォルダーを指定したファイル保存要求を前記ＷｅｂＤＡＶ通信部が受信すると、そのファイルを前記暗号化部に暗号化させて、暗号化後のファイルを、指定された前記所有フォルダーまたは前記共有フォルダーに前記クラウドストレージ通信部で保存し、（ｄ）前記所有フォルダーまたは前記共有フォルダーにおけるファイルの読み出し要求を前記ＷｅｂＤＡＶ通信部が受信すると、そのファイルを前記復号部に復号させて、復号後のファイルを前記ＷｅｂＤＡＶ通信部で前記クライアント端末装置に提供する中継処理部と、
を備えることを特徴とする暗号化サーバー。
【請求項２】
前記クラウドストレージ通信部は、ＡＰＩで前記クラウドストレージサーバーにアクセスし、
前記クラウドストレージ通信部は、第１のＡＰＩで前記所有フォルダーのリストを前記クラウドストレージサーバーから取得し、前記第１のＡＰＩとは異なる第２のＡＰＩで前記共有フォルダーのリストを前記クラウドストレージサーバーから取得すること、
を特徴とする請求項１記載の暗号化サーバー。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化サーバーに関するものである。
【背景技術】
【０００２】
Ｗｉｎｄｏｗｓ（登録商標）などのオペレーティングシステムでは、ＷｅｂＤＡＶ（Web-based Distributed Authoring and Versioning）プロトコルに基づいて、エクスプローラーなどのファイラーで、インターネット上のファイルやフォルダーにアクセス可能となっている（例えば特許文献１参照）。
【０００３】
他方、近年、Google Driveなどのクラウドストレージサービスにおいて、ユーザー間でファイルやフォルダーの共有が可能になっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１２０７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＷｅｂＤＡＶプロトコルを使用してクラウドストレージサービス上にファイルを保存する際に、情報漏洩の可能性を低減させるために、中間サーバー（つまり、暗号化サーバー）によって暗号化し、暗号化されたファイルをクラウドストレージサービスで保存することが考えられる。
【０００６】
一般的に、あるユーザーがＷｅｂＤＡＶプロトコルを使用してクラウドストレージサービス上にアクセスする場合、そのユーザーのＩＤを提示することで、クラウドストレージサービスにおいてそのユーザーが所有するフォルダーおよびファイルへのアクセスが可能となる。
【０００７】
そのため、上述の中間サーバーが、あるユーザーから提供されたファイルを暗号化して、暗号化されたファイルをそのユーザーのファイルとしてクラウドストレージサービスに保存し、保存されているそのユーザーの暗号化されたファイルを読み出して復号し、元のファイルをそのユーザーへ提供することが可能である。
【０００８】
他方、Google Driveなどのクラウドストレージサービスでは、クラウドストレージサービス上におけるユーザーＡの所有するフォルダーの共有設定によって、別の特定ユーザーＢによるそのフォルダーへのアクセスを許可することができる。つまり、ユーザーＡの所有するフォルダーを、ユーザーＡ，Ｂの共有フォルダーとして使用することができる。例えばGoogle Driveでは、ユーザーＢは、ウェブブラウザーでクラウドストレージサービスにログインすると、ユーザーＢ自身が所有するフォルダーとは別に、仮想フォルダーである「共有アイテム」として、他のユーザーＡの所有する共有フォルダーにアクセスできる。
【０００９】
しかしながら、その特定ユーザーＢが、クライアント端末装置でウェブブラウザーではなくファイラーを使用してＷｅｂＤＡＶプロトコルで中間サーバーを介してクラウドストレージサービスにアクセスする際には、自己の所有するフォルダーおよび暗号化されたファイルのリストを取得できるものの、他のユーザーＡの共有設定によってその特定ユーザーＢがアクセス可能なフォルダーのリストをＷｅｂＤＡＶプロトコルで取得することは困難である。
【００１０】
したがって、クラウドストレージサービスの共有フォルダーを利用しつつ、複数のユーザーがそれぞれのクライアント端末からＷｅｂＤＡＶプロトコルで、暗号化されたファイルにアクセスすることは困難である。
【００１１】
本発明は、上記の問題に鑑みてなされたものであり、クラウドストレージサービスの共有フォルダーを利用しつつ、複数のユーザーがそれぞれのクライアント端末からＷｅｂＤＡＶプロトコルで、共有フォルダー内の暗号化されたファイルにアクセスして、その暗号化されたファイルを共有できるようにする暗号化サーバーを得ることを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る暗号化サーバーは、クラウドストレージサービスを提供するクラウドストレージサーバーとの通信を行うクラウドストレージ通信部と、クライアント端末装置との通信をＷｅｂＤＡＶプロトコルで行うＷｅｂＤＡＶ通信部と、ファイルの暗号化を行う暗号化部と、暗号化されたファイルの復号を行う復号部と、中継処理部とを備える。中継処理部は、（ａ）クライアント端末装置のユーザーがクラウドストレージサービス上で所有する所有フォルダーのリストをクラウドストレージ通信部で取得しＷｅｂＤＡＶ通信部でクライアント端末装置に提供し、（ｂ）クラウドストレージサービス上でクライアント端末装置のユーザーに対してアクセスが許可されている共有フォルダーのリストをクラウドストレージ通信部で取得しＷｅｂＤＡＶ通信部でクライアント端末装置に提供し、（ｃ）所有フォルダーまたは共有フォルダーを指定したファイル保存要求をＷｅｂＤＡＶ通信部が受信すると、そのファイルを暗号化部に暗号化させて、暗号化後のファイルを、指定された所有フォルダーまたは共有フォルダーにクラウドストレージ通信部で保存し、（ｄ）所有フォルダーまたは共有フォルダーにおけるファイルの読み出し要求をＷｅｂＤＡＶ通信部が受信すると、そのファイルを復号部に復号させて、復号後のファイルをＷｅｂＤＡＶ通信部でクライアント端末装置に提供する。
【発明の効果】
【００１３】
本発明によれば、クラウドストレージサービスの共有フォルダーを利用しつつ、複数のユーザーがそれぞれのクライアント端末からＷｅｂＤＡＶプロトコルで、共有フォルダー内の暗号化されたファイルにアクセスして、その暗号化されたファイルを安全に共有できる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態に係る暗号化サーバーの構成を示すブロック図である。
【図２】図２は、クラウドストレージサービスでのフォルダー構成の一例を示す図である。
【図３】図３は、図１に示すクライアント端末装置のファイラーの画面例を示す図である。
【発明を実施するための形態】
【００１５】
以下、図に基づいて本発明の実施の形態を説明する。
【００１６】
図１は、本発明の実施の形態に係る暗号化サーバーの構成を示すブロック図である。図１に示す暗号化サーバー１は、インターネットなどのネットワーク２に接続されており、ネットワーク２には、クラウドストレージサーバー３が接続されており、さらに、クライアント端末装置４が接続される。クライアント端末装置４は、ＷｅｂＤＡＶプロトコルで暗号化サーバー１にアクセスし、暗号化サーバー１は、クライアント端末装置４からのＷｅｂＤＡＶプロトコルに従った要求に応じてクラウドストレージサーバー３にアクセスする。
【００１７】
暗号化サーバー１は、ネットワークインターフェイスなどの通信装置を備えたコンピューターであって、サーバープログラムを実行することで、各種処理部として動作する。クラウドストレージサーバー３は、Google Driveなどのウェブベースのクラウドストレージサービスを提供するフロントエンドサーバーである。クライアント端末装置４は、ＷｅｂＤＡＶプロトコルでネットワーク上のファイル管理を行うことができる。例えばＷｉｎｄｏｗｓ（登録商標）などのオペレーティングシステムを有するパーソナルコンピューターである。なお、Ｗｉｎｄｏｗｓ（登録商標）では、エクスプローラーがＷｅｂＤＡＶプロトコルを使用してネットワーク上のファイル管理を行うことができる。
【００１８】
図１に示す暗号化サーバー１は、クラウドストレージ通信部１１、ＷｅｂＤＡＶ通信部１２、中継処理部１３、暗号化部１４、および復号部１５を備える。
【００１９】
クラウドストレージ通信部１１は、ネットワーク２を介してクラウドストレージサーバー３との通信を行う。クラウドストレージ通信部１１は、クラウドストレージサービス用のＡＰＩ（Application Programming Interface）でクラウドストレージサーバー３にアクセスする。クラウドストレージ通信部１１は、具体的には、ＡＰＩとして定義されているコマンドをＨＴＴＰ（Hypertext Transfer Protocol）でクラウドストレージサーバー３へ送信する。
【００２０】
ＷｅｂＤＡＶ通信部１２は、クライアント端末装置４との通信をＷｅｂＤＡＶプロトコルで行う。
【００２１】
中継処理部１３は、（ａ）クライアント端末装置４のユーザーがクラウドストレージサービス上で所有する所有フォルダーのリストをクラウドストレージ通信部１１で取得しＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供し、（ｂ）クラウドストレージサービス上でクライアント端末装置４のユーザーに対してアクセスが許可されている共有フォルダー（他のユーザーにより所有されている共有フォルダー）のリストをクラウドストレージ通信部１１で取得しＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供し、（ｃ）上述の所有フォルダーまたは上述の共有フォルダーを指定したファイル保存要求をＷｅｂＤＡＶ通信部１２が受信すると、そのファイルを暗号化部１４に暗号化させて、暗号化後のファイルを、指定された所有フォルダーまたは共有フォルダーにクラウドストレージ通信部１１でクラウドストレージサービスへ保存し、（ｄ）上述の所有フォルダーまたは上述の共有フォルダーにおけるファイルの読み出し要求をＷｅｂＤＡＶ通信部１２が受信すると、そのファイルを復号部１５に復号させて、復号後のファイルをＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供する。
【００２２】
この実施の形態では、クラウドストレージ通信部１１は、第１のＡＰＩで上述の所有フォルダーのリストをクラウドストレージサーバー３から取得し、第１のＡＰＩとは異なる第２のＡＰＩで上述の共有フォルダーのリストをクラウドストレージサーバー３から取得する。
【００２３】
暗号化部１４は、ファイルの暗号化を行う。復号部１５は、暗号化されたファイルの復号を行う。つまり、クライアント端末装置４からクラウドストレージサービスへファイルが保存される際には、暗号化サーバー１の暗号化部１４でそのファイルが暗号化され、クラウドストレージサービスに保存されているファイル（暗号化されているファイル）がクライアント端末装置４へ読み出される際には、暗号化サーバー１の復号部１５でそのファイルが復号される。なお、暗号化部１４および復号部１５により使用される暗号鍵については、ユーザーごとに異なるようにしてもよいし、共通としてもよい。また、１人のユーザーが複数の暗号鍵を所有し使用してもよい。さらに、暗号化サーバー１において、共有するファイルの暗号鍵を、共有設定で指定されている他のユーザーと共有させることで、安全にファイルを共有できる。
【００２４】
図２は、クラウドストレージサービスでのフォルダー構成の一例を示す図である。図２（Ａ）は、ウェブブラウザーで表示されるクラウドストレージサービスのフォルダー構成を含む画面例を示す図である。図２（Ｂ）は、図２（Ａ）に示すフォルダー構成のツリー図である。
【００２５】
あるユーザーがウェブブラウザーを使用してクラウドストレージサービスにログインすると、例えば図２（Ａ）に示すような画面がクライアント端末装置４に表示される。図２に示す例では、クラウドストレージサービスにおいて、このユーザーが所有するフォルダーとして、「ＷｅｂＤＡＶ」フォルダーと「ｈｏｇｅ」フォルダーが作成されている。また、図２（Ｂ）に示すように、「ＷｅｂＤＡＶ」フォルダーには、サブフォルダーが作成されている。
【００２６】
この実施の形態では、暗号化サーバー１により暗号化されたファイルは、暗号化ファイル保存用に作成された「ＷｅｂＤＡＶ」フォルダー内のサブフォルダー（例えば図２（Ｂ）のＥＮＣ１またはＥＮＣ２）に保存される。つまり、ファイルシステムにおける「ＷｅｂＤＡＶ」フォルダー以下のエリアが、暗号化されたファイルの保存エリアとされる。
【００２７】
このため、中継処理部１３は、このユーザーが所有するフォルダーのうち、暗号化されたファイルに使用されないフォルダー（例えば、上述「ｈｏｇｅ」フォルダー）を、クライアント端末装置４からのＷｅｂＤＡＶプロトコルでのリスト要求に対する応答に含めないようにしている。
【００２８】
また、ウェブブラウザーで、図２（Ａ）に示す「共有アイテム」フォルダーを開くと、他のユーザーが所有する共有フォルダーが表示される。なお、ウェブブラウザーを使用して、自己の所有するフォルダーおよび共有フォルダーにファイルを保存することは可能であるが、暗号化サーバー１を経由していないため、暗号化されずにファイルが保存されることになる。
【００２９】
次に、上記暗号化サーバーの動作について説明する。図３は、図１に示すクライアント端末装置４のファイラーの画面例を示す図である。
【００３０】
まず、クライアント端末装置４のファイラーが、ユーザー操作に基づいて、ＷｅｂＤＡＶプロトコルで暗号化サーバー１にアクセスしてくると、中継処理部１３は、ＷｅｂＤＡＶ通信部１２で、初期フォルダー（つまり、アクセス時のルートフォルダー）内のリストとして、「ＷｅｂＤＡＶ」フォルダー（つまり、暗号化されたファイルの保存エリアの最上位フォルダー）および「共有アイテム」フォルダーを含むリストをクライアント端末装置４へ送信する。クライアント端末装置４のファイラーは、このリストを受信すると、例えば図３（Ａ）に示すように、受信したリストを表示する。なお、図３におけるＩＰアドレス「192.168.1xx.xxx」は、暗号化サーバー１のＩＰアドレスである。
【００３１】
そして、例えばユーザーが「共有アイテム」フォルダーをダブルクリックで選択すると、クライアント端末装置４のファイラーが、そのユーザー操作に基づいて、「共有アイテム」フォルダー内のフォルダーおよびファイルのリストの送信要求をＷｅｂＤＡＶプロトコルで暗号化サーバー１へ送信する。中継処理部１３は、その要求をＷｅｂＤＡＶ通信部１２で受信すると、クラウドストレージ通信部１１で所定のＡＰＩを使用して、当該クライアント端末装置４のユーザーのユーザーＩＤを指定して、そのユーザーＩＤに対してアクセス許可が設定されている他のユーザーの所有する共有フォルダーのリストをクラウドストレージサーバー３から取得する。なお、このとき、共有フォルダーのリストとして、各共有フォルダーのフォルダーＩＤ、名称、所有者ユーザーの名称などの属性情報が取得される。
【００３２】
なお、ユーザーＩＤは、上述の要求とともにクライアント端末装置４から取得してもよいし、クライアント端末装置４のＩＰアドレスなどの識別子と関連付けて登録しておき、上述の要求の送信元の識別子から特定するようにしてもよい。
【００３３】
そして、中継処理部１３は、「共有アイテム」フォルダー内のフォルダーおよびファイルのリストとして（つまり、上述の送信要求の応答として）、取得した共有フォルダーのリストを、ＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供する。クライアント端末装置４のファイラーは、このリストを受信すると、例えば図３（Ｂ）に示すように、受信したリストを表示する。
【００３４】
なお、中継処理部１３は、取得した共有フォルダー名に所有者ユーザー名を追加し、共有フォルダー名に所有者ユーザー名を追加したものを共有フォルダー名として、クライアント端末装置４に提供する。例えば図３（Ｂ）における「ENC-air1」フォルダーは、ユーザー「air1」の所有する共有フォルダー「ENC」を示しており、「ENC-air2」フォルダーは、ユーザー「air2」の所有する共有フォルダー「ENC」を示している。
【００３５】
そして、例えば、ユーザーが「ENC-air2」フォルダーをダブルクリックで選択すると、クライアント端末装置４のファイラーが、そのユーザー操作に基づいて、「ENC-air2」フォルダー内のフォルダーおよびファイルのリストの送信要求をＷｅｂＤＡＶプロトコルで暗号化サーバー１へ送信する。中継処理部１３は、その要求をＷｅｂＤＡＶ通信部１２で受信すると、クラウドストレージ通信部１１で所定のＡＰＩを使用して、「ENC-air2」フォルダーのフォルダーＩＤおよび上述のユーザーＩＤを指定して、「ENC-air2」フォルダー内のフォルダーおよびファイルのリストをクラウドストレージサーバー３から取得する。
【００３６】
そして、中継処理部１３は、「ENC-air2」フォルダー内のフォルダーおよびファイルのリストとして、取得したリストを、ＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供する。クライアント端末装置４のファイラーは、このリストを受信すると、例えば図３（Ｃ）に示すように、受信したリストを表示する。
【００３７】
図３（Ｃ）に示す例では、「ENC-air2」フォルダー内には、「Hello.doc」ファイルが含まれている。
【００３８】
例えば、ユーザーが「Hello.doc」ファイルを別の場所にドラッグアンドドロップしたり、ダブルクリックしてファイルオープンしようとした場合、クライアント端末装置４のファイラーが、そのユーザー操作に基づいて、「Hello.doc」ファイルの送信要求をＷｅｂＤＡＶプロトコルで暗号化サーバー１へ送信する。中継処理部１３は、その要求をＷｅｂＤＡＶ通信部１２で受信すると、クラウドストレージ通信部１１で所定のＡＰＩを使用して、上述のユーザーＩＤを指定して、そのファイルをクラウドストレージサーバー３から取得する。そして、中継処理部１３は、取得したファイルを、復号部１５で復号した後、復号後のファイルをＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供する。クライアント端末装置４のファイラーは、そのファイルを受信すると、その受信したファイルを使用してユーザー操作に対応する処理を実行する。
【００３９】
また、例えば、ユーザーが、別のファイルを、図３（Ｃ）に示す「ENC-air2」フォルダーにドラッグアンドドロップで追加した場合、クライアント端末装置４のファイラーが、そのユーザー操作に基づいて、「ENC-air2」フォルダーへのそのファイルの追加要求およびそのファイルをＷｅｂＤＡＶプロトコルで暗号化サーバー１へ送信する。中継処理部１３は、その要求およびファイルをＷｅｂＤＡＶ通信部１２で受信すると、そのファイルを暗号化部１４で暗号化した後、クラウドストレージ通信部１１で所定のＡＰＩを使用して、「ENC-air2」フォルダーのフォルダーＩＤおよび上述のユーザーＩＤを指定して、暗号化後のファイルをクラウドストレージサービス上のユーザー「air2」の「ENC」フォルダー内へ追加させる。
【００４０】
そして、ファイルの追加が完了すると、中継処理部１３は、「ENC-air2」フォルダー内のフォルダーおよびファイルのリストに、そのファイルのファイル名を追加して、ＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供する。
【００４１】
以上のように、上記実施の形態によれば、中継処理部１３は、（ａ）クライアント端末装置４のユーザーがクラウドストレージサービス上で所有する所有フォルダーのリストをクラウドストレージ通信部１１で取得しＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供し、（ｂ）クラウドストレージサービス上でそのユーザーに対してアクセスが許可されている共有フォルダーのリストをクラウドストレージ通信部１１で取得しＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供し、（ｃ）所有フォルダーまたは共有フォルダーを指定したファイル保存要求をＷｅｂＤＡＶ通信部１２が受信すると、そのファイルを暗号化部１４に暗号化させて、暗号化後のファイルを、指定された所有フォルダーまたは共有フォルダーにクラウドストレージ通信部１１で保存し、（ｄ）所有フォルダーまたは共有フォルダーにおけるファイルの読み出し要求をＷｅｂＤＡＶ通信部１２が受信すると、そのファイルを復号部１５に復号させて、復号後のファイルをＷｅｂＤＡＶ通信部１２でクライアント端末装置４に提供する。
【００４２】
これにより、ユーザーのクライアント端末装置４とクラウドストレージサーバー３との中間に暗号化サーバー１を配置し本来ＷｅｂＤＡＶプロトコルのみではアクセスできない他のユーザーの共有フォルダーを別途取得することで、クライアント端末装置４からのＷｅｂＤＡＶプロトコルでの要求に基づき、クラウドストレージサービス上で共有されている他のユーザーが所有する暗号化されたファイルにアクセスできるようになる。
【００４３】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【産業上の利用可能性】
【００４４】
本発明は、例えば、クライアント端末装置とクラウドサーバーとの間で中継を行う中間サーバーに適用可能である。
【符号の説明】
【００４５】
１  暗号化サーバー
３  クラウドストレージサーバー
４  クライアント端末装置
１１  クラウドストレージ通信部
１２  ＷｅｂＤＡＶ通信部
１３  中継処理部
１４  暗号化部
１５  復号部
【図１】
2015215703.tif 000003
【図２】
2015215703.tif 000004
【図３】
2015215703.tif 000005