JP5795554B2 - 差分暗号化によるファイル同期システム、その方法およびプログラム - Google Patents

差分暗号化によるファイル同期システム、その方法およびプログラム Download PDF

Info

Publication number
JP5795554B2
JP5795554B2 JP2012124817A JP2012124817A JP5795554B2 JP 5795554 B2 JP5795554 B2 JP 5795554B2 JP 2012124817 A JP2012124817 A JP 2012124817A JP 2012124817 A JP2012124817 A JP 2012124817A JP 5795554 B2 JP5795554 B2 JP 5795554B2
Authority
JP
Japan
Prior art keywords
file
synchronization
encrypted data
differential
client terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012124817A
Other languages
English (en)
Other versions
JP2013250759A (ja
Inventor
基樹 柿沼
基樹 柿沼
花舘 蔵之
蔵之 花舘
亮生 葛西
亮生 葛西
健佑 石津
健佑 石津
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Data Corp
Original Assignee
NTT Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Data Corp filed Critical NTT Data Corp
Priority to JP2012124817A priority Critical patent/JP5795554B2/ja
Publication of JP2013250759A publication Critical patent/JP2013250759A/ja
Application granted granted Critical
Publication of JP5795554B2 publication Critical patent/JP5795554B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、差分暗号化によるファイル同期システム、その方法およびプログラムに関し、より詳細には、サーバ上のストレージ領域にファイルを保存するオンラインストレージにおいて、通信障害時に編集中のファイルを安全に管理するファイル同期システム、その方法およびプログラムに関する。
今日、モバイル端末の操作性、携帯性、データ処理能力などの向上により、モバイル端末を業務用途で活用することが期待されている。しかし、モバイル端末を業務用途で用いる場合、モバイル端末の紛失等によりローカルに残る業務データが漏洩するリスクがある。ローカルに業務データを残さない方法としては、サーバ上のストレージ領域を用いる方法がある。
例えば、特許文献1には、クライアントで作成・更新されたドキュメントファイルの実体をオンラインサーバ側で管理するドキュメント管理システムが開示されている。特許文献1に記載のドキュメント管理システムでは、クライアントコンピュータのローカルストレージで作成・更新されたドキュメントファイルを、ネットワークを介してオンラインストレージサーバに自動的にアップロードし、アップロードが完了したドキュメントファイルを、クライアントコンピュータのローカルストレージから自動的に削除する。
このような技術により、クライアントコンピュータにはドキュメントファイルが保存されないため、クライアントコンピュータの紛失により、ローカルに保存されているドキュメントファイルが漏洩するリスクを回避することができる。また、オンラインサーバ側でドキュメントファイルを管理することにより、利用者は自宅のパーソナルコンピュータでドキュメントファイルを更新し、その更新後のドキュメントファイルを会社のパーソナルコンピュータで利用することができる。
特開2010−266933号公報
特許文献1のドキュメント管理システムでは、上述のように、クライアントコンピュータで更新されたドキュメントファイルのアップロードが完了すると、クライアントコンピュータのローカルストレージから自動的に削除される。しかしながら、クライアントコンピュータのローカルストレージのドキュメントファイルが更新される際に、クライアントコンピュータとオンラインストレージサーバとの通信が断絶している場合については何ら検討していない。
サーバとの通信障害時に、クライアントコンピュータで編集中のドキュメントファイルの更新内容が破棄されてしまうと、利用者は、通信回線が不安定になりやすい無線環境においては、安心してドキュメントファイルを編集することができない。一方、サーバとの通信障害時に、編集中のドキュメントファイルをクライアントコンピュータのローカルストレージに残し、オンライン時に同期を行う方式では、クライアントコンピュータの紛失による漏洩のリスクを回避することができなくなってしまう。
本発明は、このような問題に鑑みてなされたもので、その目的とするところは、クライアント端末とサーバとの通信が断絶している場合であっても、クライアント端末におけるローカルファイルの更新を可能としつつ、クライアント端末に残されたローカルファイルを安全に管理するシステムを提供することにある。
上記の課題を解決するために、本発明に係るファイル同期システムは、ファイル同期サーバとクライアント端末とを備え、前記ファイル同期サーバは、暗号鍵を格納する鍵記憶手段と、ファイルを格納するファイル記憶手段と、前記鍵記憶手段から暗号鍵を取得して、前記クライアント端末に配信する手段と、前記クライアント端末からファイル選択要求を受信して、当該ファイル選択要求に基づいて前記ファイル記憶手段から抽出したファイルを、前記クライアント端末に送信するファイル抽出手段と、前記クライアント端末からファイルの変更内容を含む同期要求を受信して、前記変更内容に基づいて前記ファイル記憶手段のファイルを更新し、前記クライアント端末に更新完了通知を送信する同期手段と、前記クライアント端末から差分暗号化データを含む復元要求を受信して、前記暗号鍵を前記鍵記憶手段から取得して、当該取得した暗号鍵を用いて前記差分暗号化データを復号し、前記復号した差分暗号化データを用いて前記ファイル記憶手段のファイルを更新する差分暗号化データ復元手段とを備え、前記クライアント端末は、差分暗号化データを格納する差分暗号化データ記憶手段と、前記ファイル同期サーバから配信される暗号鍵を保持する手段と、前記ファイル選択要求を前記ファイル同期サーバに送信するファイル選択手段と、単一のファイルに対して、前記ファイル同期サーバと同期がとれている第1のファイル、および前記第1のファイルに変更を加えた第2のファイルを格納する仮想ストレージを構築する仮想ストレージ管理手段であって、前記ファイル同期サーバからファイルを受信して、前記受信したファイルを前記仮想ストレージに第1のファイルとして格納し、前記第1のファイルが変更される場合、前記第1のファイルに変更を加えた第2のファイルを前記仮想ストレージに格納する仮想ストレージ管理手段と、ファイル比較イベントの発生に応答して、前記仮想ストレージの前記第1のファイルと前記第2のファイルとを比較して、両者の間に変更が生じる場合、ファイルの変更内容を含む前記同期要求を前記ファイル同期サーバに送信し、前記ファイル同期サーバとの同期処理中であることを示す同期情報を前記仮想ストレージ管理手段に送信する同期要求手段と、前記仮想ストレージ管理手段が、前記同期情報を受信後に前記ファイル同期サーバから前記更新完了通知を受信したか否かを判定し、前記更新完了通知を受信していない場合、前記仮想ストレージの前記第1のファイルと前記第2のファイルとの差分データを取得し、前記暗号鍵で前記差分データを暗号化して前記差分暗号化データを生成し、前記差分暗号化データ記憶手段に格納し、前記差分暗号化データを含む前記復元要求を前記ファイル同期サーバに送信する差分暗号化データ管理手段とを備え、前記仮想ストレージ管理手段は、前記同期要求手段から前記同期情報を受信した後、前記ファイル同期サーバから前記更新完了通知を受信すると、前記仮想ストレージの前記第1のファイルを前記第2のファイルで置き換えることを特徴とする。
本願発明は、クライアント端末とファイル同期サーバとの通信が断絶している場合、ファイル同期サーバと同期がとれているファイルと、変更後のファイルとの差分データを取得し、当該差分データを暗号化してクライアント端末に保存する。暗号化に用いる暗号鍵は、ファイル同期サーバにおいて管理し、一実施形態では、ファイル同期サーバとの初回接続時に、クライアント端末に配信されるものとする。クライアント端末が配信された暗号鍵をメモリ上で管理することにより、クライアント端末のシャットダウン時に暗号鍵は消去されるので、クライアント端末に残されたローカルファイルを安全に管理することができる。
また、暗号化するデータをすべてのデータではなく、差分データとすることで、クライアント端末の暗号化処理の負担を軽減することができる。これにより、暗号化処理の処理時間および消費電力が最小限になり、クライアント端末の処理能力が低い場合であっても、その処理負担による影響を最小限に抑えることができる。
クライアント端末に残された差分暗号化データは、クライアント端末とファイル同期サーバとの再接続時に、当該差分暗号化データをファイル同期サーバに転送することにより、ファイル同期サーバ側で差分暗号化データの復号化、およびファイルの復元処理を行う。これにより、オフライン時に、クライアント端末におけるローカルファイルの更新を可能としつつ、再接続時に、クライアント端末における更新内容をファイル同期サーバで復元することができる。
本発明の一実施形態に係るファイル同期システムの構成を示す図である。 本発明の一実施形態に係るファイル同期サーバの構成を示すブロック図である。 本発明の一実施形態に係る利用者情報記憶手段に格納された情報の一例を示す図である。 本発明の一実施形態に係るクライアント端末の構成を示すブロック図である。 本発明の一実施形態に係るファイル同期サーバとクライアント端末とがオンライン時のファイル同期システムの概念図である。 本発明の一実施形態に係るファイル同期サーバとクライアント端末とがオンライン時のファイル同期システムの概念図である。 本発明の一実施形態に係るファイル同期サーバとクライアント端末とがオフライン時のファイル同期システムの概念図である。 本発明の一実施形態に係るクライアント端末がシャットダウン時のファイル同期システムの概念図である。 本発明の一実施形態に係るファイル同期サーバとクライアント端末との再接続時のファイル同期システムの概念図である。 本発明の一実施形態に係る編集対象のファイルを取得する工程を示すフローチャートである。 本発明の一実施形態に係るファイルの同期を完了する工程を示すフローチャートである。 本発明の一実施形態に係るファイルの同期が完了する前にクライアント端末においてプログラムを終了する工程を示すフローチャートである。
図1は、本発明の一実施形態に係るファイル同期システムの構成を示す図である。ファイル同期システムは、複数のクライアント端末101a、101b、・・・、101n(以下、クライアント端末101と呼ぶ)を備え、各クライアント端末101は、通信回線102を介してファイル同期サーバ103と相互に通信可能に接続される。
クライアント端末101は、利用者によって使用される端末である。利用者Aは、例えば、自宅のパーソナルコンピュータ101a、モバイル端末101b、会社のパーソナルコンピュータ101cなど、複数のクライアント端末101を介して、ファイル同期サーバのストレージ領域に格納されたファイルを編集することができる。
ファイル同期サーバ103は、クライアント端末101を介して作成および編集されるファイルを格納するストレージ領域を有する。各利用者は、クライアント端末101を介して所定の認証処理を行うことにより、特定の利用者に関連付けてストレージ領域に格納されるファイルを作成および編集することができる。
次に、図2のブロック図を参照して、上記したファイル同期サーバの構成を詳細に説明する。なお、図2では、単一のコンピュータシステムを想定し、必要な機能構成だけを示しているが、ファイル同期サーバ103を、複数のコンピュータシステムによる多機能の分散システムの一部として構成することもできる。
ファイル同期サーバ103は、CPU201に、システムバス202を介してメモリ203、入力装置204、出力装置205、通信制御装置206および不揮発性記憶媒体(ROMやHDDなど)で構成される記憶装置207が接続された構成を有する。記憶装置207は、上記した機能を奏するためのソフトウェアプログラムを格納するプログラム格納領域と、随時取得するデータや処理結果としてのデータ等を格納するデータ格納領域とを備えている。以下に説明するプログラム格納領域の各手段は、実際は独立したソフトウェアプログラム、そのルーチンやコンポーネントなどであり、CPU201によって記憶装置207から呼び出されメモリ203のワークエリアに展開されて、データベース等を適宜参照しながら順次実行されることで、各機能を奏するものである。
データ格納領域は、利用者情報記憶手段208、およびファイル記憶手段209を備える。何れも、記憶媒体207内に確保された一定の記憶領域である。
利用者情報記憶手段208は、図3に示されるように、利用者ID、パスワード、暗号鍵を格納する。暗号鍵は、当該利用者IDに関連付けてファイル同期システムで管理されるファイルの暗号化、および複合化に用いられる。ファイル記憶手段209は、利用者IDに関連付けてファイルを格納する。
プログラム格納領域に格納されているサーバ用ソフトウェアプログラムは、本発明に関連するものだけを列挙すると、利用者登録手段210、認証手段211、ファイル抽出手段212、同期手段213、および差分暗号化データ復元手段214を備えている。
利用者登録手段210は、クライアント端末101を介した利用者からの利用者登録要求を受信して、利用者に関連付けられる暗号鍵を生成する。本実施形態では、利用者登録要求は利用者IDおよびパスワードを含み、利用者登録手段210は、利用者登録要求に含まれる情報を使用して、アルゴリズムによって暗号鍵を生成する。本実施形態では、ファイルの暗号化および複合化に共通鍵を用いるものとし、既知の共通鍵アルゴリズムを使用して暗号鍵を生成する。利用者登録手段210は、利用者登録要求に含まれる利用者ID、パスワード、および生成した暗号鍵を利用者情報記憶手段208に格納する。
認証手段211は、クライアント端末101を介した利用者からの認証要求を受信して、利用者情報記憶手段208を参照して認証を行う。本実施形態では、認証要求は利用者IDおよびパスワードを含み、利用者情報記憶手段208に一致するレコードが存在する場合、認証要求に含まれる利用者の認証は成功する。利用者の認証が成功する場合、認証手段211は、認証された利用者の利用者IDに関連付けられている暗号鍵を利用者情報記憶手段208から取得して、クライアント端末101に配信する。
ファイル抽出手段212は、クライアント端末101を介した利用者からのファイル選択要求を受信して、ファイル選択要求に基づいてファイル記憶手段209からファイルを抽出し、抽出したファイルをクライアント端末101に送信する。本実施形態では、利用者の認証が成功する場合、ファイル記憶手段209において当該利用者の利用者IDに関連付けて格納されるファイルの一覧がクライアント端末101に提供され、利用者は、提供されたファイルの一覧から特定のファイルを選択することができる。ファイル選択要求は、利用者IDおよびファイルを一意に識別するファイル識別子を含み、本実施形態では、ファイル名をファイル識別子として利用する。
同期手段213は、クライアント端末101から同期要求を受信して、同期要求に基づいてファイル記憶手段209のファイルを更新する。本実施形態では、同期要求は利用者ID、および変更後のファイルを含み、同期手段213は、同期要求に含まれる利用者IDおよび変更後のファイルのファイル識別子を用いてファイル記憶手段209に格納されるファイルを特定し、特定したファイルを変更後のファイルで置き換える。同期手段213は、ファイルの更新が完了すると、クライアント端末101に更新完了通知を送信する。
差分暗号化データ復元手段214は、クライアント端末101から差分暗号化データ復元要求を受信して、差分暗号化データ復元要求に基づいてファイル記憶手段209のファイルを更新する。本実施形態では、差分暗号化データ復元要求は利用者ID、ファイル識別子、および差分暗号化データを含む。差分暗号化データ復元手段214は、利用者IDに関連付けられている暗号鍵を利用者情報記憶手段208から取得して、取得した暗号鍵を用いて差分暗号化データを復号する。差分暗号化データ復元手段214は、差分暗号化データ復元要求に含まれる利用者IDおよびファイル識別子を用いてファイル記憶手段209に格納されるファイルを特定し、復号した差分暗号化データを用いて特定したファイルを更新する。
次に、図4のブロック図を参照して、上記したクライアント端末の構成を詳細に説明する。クライアント端末101は、CPU301に、システムバス302を介してメモリ303、入力装置304、出力装置305、通信制御装置306および不揮発性記憶媒体(ROMやHDD、SDDなど)で構成される記憶装置307が接続された構成を有する。記憶装置307は、上記した機能を奏するためのソフトウェアプログラムを格納するプログラム格納領域と、随時取得するデータや処理結果としてのデータ等を格納するデータ格納領域とを備えている。以下に説明するプログラム格納領域の各手段は、実際は独立したソフトウェアプログラム、そのルーチンやコンポーネントなどであり、CPU301によって記憶装置307から呼び出されメモリ303のワークエリアに展開されて、データベース等を適宜参照しながら順次実行されることで、各機能を奏するものである。
データ格納領域は、差分暗号化データ記憶手段308を備える。差分暗号化データ記憶手段308は、利用者IDに関連付けて差分暗号化データを格納する。差分暗号化データは、後述するように、ファイル同期サーバ103と同期がとれているファイルと、変更後のファイルとの差分データを、暗号鍵を用いて暗号化したデータである。
プログラム格納領域に格納されているクライアント用ソフトウェアプログラムは、本発明に関連するものだけを列挙すると、認証要求手段309、ファイル選択手段310、仮想ストレージ管理手段311、同期要求手段312、および差分暗号化データ管理手段313を備えている。
認証要求手段309は、入力装置304を介した利用者からの認証情報を受信して、ファイル同期サーバ103に認証要求を送信する。本実施形態では、認証情報は利用者IDおよびパスワードを含み、認証要求手段309は、利用者IDおよびパスワードを含む認証要求をファイル同期サーバ103に送信する。前述のように、利用者の認証が成功する場合、ファイル同期サーバ103から暗号鍵が配信される。認証要求手段309は、ファイル同期サーバ103から配信される暗号鍵を受信して、当該暗号鍵を保持する。
認証要求手段309が暗号鍵を保持するので(すなわち、暗号鍵はメモリ上で管理されるので)、クライアント端末がシャットダウンされると、暗号鍵は消去される。前述のように、クライアント端末101は、差分暗号化データ記憶部308に差分暗号化データを格納するが、差分暗号化データの復号に用いる暗号鍵はクライアント端末101のシャットダウンにより自動で消去されるので、クライント端末101に残されたローカルファイルを、安全に管理することができる。
ファイル選択手段310は、入力装置304を介した利用者からのファイル選択指示を受信すると、ファイル同期サーバ103にファイル選択要求を送信する。本実施形態では、前述のように、利用者の認証が成功するとファイル同期サーバ103からファイルの一覧が提供され、利用者は、提供されたファイルの一覧から特定のファイルを選択する。本実施形態では、ファイル選択手段310は、利用者が選択したファイル名を含むファイル選択指示を受信して、当該ファイル名および利用者IDを含むファイル選択要求をファイル同期サーバ103に送信する。
仮想ストレージ管理手段311は、クライアント端末101のメモリ303上に、利用者IDに関連付けられた仮想ストレージを構築する。仮想ストレージでは、単一のファイルに対して、ファイル同期サーバ103と同期がとれている第1のファイル、および第1のファイルに変更を加えた第2のファイルが格納される。まず、仮想ストレージ管理手段311は、ファイル選択要求に応答してファイル同期サーバ103からファイルを受信すると、受信したファイルを仮想ストレージに第1のファイルとして格納する。その後、利用者による編集操作に伴い第1のファイルが変更される場合、仮想ストレージ管理手段311は、第1のファイルに変更を加えた第2のファイルを仮想ストレージに格納する。
また、仮想ストレージ管理手段311は、後述する同期要求手段312から同期情報を受信する。本実施形態では、同期情報は、ファイル名を含む。同期要求手段312から同期情報を受信した後、ファイル同期サーバ103から更新完了通知を受信すると、仮想ストレージ管理手段311は、同期情報に基づいて仮想ストレージの第1のファイルを更新する。本実施形態では、同期情報に含まれるファイル名により特定される第1のファイルを第2のファイルで置き換える。
同期要求手段312は、仮想ストレージ内の第1のファイルと第2のファイルとを比較して、両者の間に変更が生じる場合、ファイル同期サーバ103に同期要求を送信する。本実施形態では、同期要求手段312は、ファイルの最終更新日時を示す時刻情報を比較して、時刻情報が更新されている場合、利用者ID、および変更後のファイルを含む同期要求をファイル同期サーバ103に送信する。また、同期要求手段312は、ファイル名を含む同期情報を仮想ストレージ管理手段311に送信する。なお、本実施形態では、変更後のファイルを含む同期要求をファイル同期サーバ103に送信しているが、別の実施形態では、第1のファイルと第2のファイルとの差分データを取得して、当該差分データを含む同期要求をファイル同期サーバ103に送信することもできる。
同期要求手段312は、ファイル比較イベントの発生に応答して、第1のファイルと第2のファイルとを比較することができる。本実施形態では、ファイル比較イベントには、例えば「上書き保存」など、入力装置304を介した利用者からのファイル更新指示が含まれる。また、ファイル比較イベントには、例えば5分に1度など、一定の時間単位で同期要求手段312が生成したファイル比較イベントも含むことができる。
差分暗号化データ管理手段313は、入力装置304を介した利用者からのプログラム終了指示を受信すると、仮想ストレージ管理手段311が、同期情報を受信後にファイル同期サーバ103から更新完了通知を受信したか否かを判定する。同期情報を受信後に更新完了通知を受信していない場合、差分暗号化データ管理手段313は、第1のファイルと第2のファイルとの差分データを取得し、認証要求手段309が保持する暗号鍵を用いて、当該差分データを暗号化する。差分暗号化データ管理手段313は、差分暗号化データを利用者IDに関連付けて差分暗号化データ記憶手段308に格納する。
また、差分暗号化データ管理手段313は、差分暗号化データ復元要求をファイル同期サーバ103に送信する。本実施形態では、差分暗号化データ管理手段313は、利用者ID、ファイル識別子、および差分暗号化データを含む差分暗号化データ復元要求をファイル同期サーバ103に送信する。
(事前準備)
サーバ上のストレージ領域にファイルを保存するオンラインストレージにおいて、通信障害時に編集中のファイルを安全に管理するための事前準備として、利用者登録を行うことにより、利用者情報記憶手段208に情報を格納する必要がある。
本実施形態では、利用者登録手段210が、クライアント端末101からの利用者登録要求を受信して、図3に示されるような利用者情報が、利用者情報記憶手段211に格納されているものとする。例えば、利用者登録手段210は、利用者ID「userA」およびパスワード「aaaaaaaa」を含む利用者登録要求を受信して、利用者ID「userA」に関連付けられる暗号鍵「鍵a」を生成し、格納している。同様に、利用者登録手段210は、利用者ID「userB」に関連付けられる暗号鍵「鍵b」、および利用者ID「userC」に関連付けられる暗号鍵「鍵c」を生成し、格納している。
(実施例)
次に、図5から図9のファイル同期システムの概念図および図10から図12のフローチャートを参照して、本実施形態に係るサーバ上のストレージ領域にファイルを保存するオンラインストレージにおいて、通信障害時に編集中のファイルを安全に管理する方法の処理工程を説明する。本実施形態では、利用者Aが『サンプル.doc』を編集中に通信障害が発生する場合について説明する。
(編集対象のファイルの取得)
まず初めに、図5のファイル同期システムの概念図および図10のフローチャートを参照して、利用者Aが編集対象のファイル『サンプル.doc』を取得するまでの処理工程を説明する。
利用者Aがクライアント端末101を介して、ファイル同期サーバ103に認証要求を送信する(S1)。本実施形態では、図5の[1]に示されるように、クライアント端末101の認証要求手段309が、利用者ID「userA」およびパスワード「aaaaaaa」を含む認証要求を送信したものとする。ファイル同期サーバ103の認証手段211は、クライアント端末101から認証要求を受信すると、利用者情報記憶手段208を参照して認証を行う(S2)。本実施形態では、認証要求に含まれる利用者IDおよびパスワードと一致するレコードが利用者情報記憶手段208に存在するので、認証は成功する。
利用者の認証が成功する場合、クライアント端末101の差分暗号化データ管理手段313は、認証された利用者の利用者IDに関連付けられている差分暗号化データが差分暗号化データ記憶手段308に格納されているか否か判定する(S3)。本実施形態では、図5に示されるように、差分暗号化データ記憶手段308に差分暗号化データは存在しないので、S4に進む。
利用者の認証が成功する場合、認証手段211は、認証された利用者の利用者IDに関連付けられている暗号鍵を利用者情報記憶手段208から取得して、クライアント端末101に配信する(S4)。本実施形態では、図3に示されるように、利用者ID「userA」に関連付けられている暗号鍵「鍵a」を利用者情報記憶手段208から取得して、クライアント端末101に配信する(図5の[2])。クライアント端末101の認証要求手段309は、ファイル同期サーバ103から暗号鍵を受信すると、当該暗号鍵を保持する(S5)。
ファイル同期サーバ103は、利用者の認証が成功する場合、さらに、ファイル記憶手段209において当該利用者の利用者IDに関連付けて格納されるファイルの一覧をクライアント端末101に提供する(S6)。本実施形態では、図5に示されるように、利用者ID「userA」に関連付けて格納される2つのファイル『サンプル.doc』および『テスト.doc』を含む一覧がクライアント端末101に提供される。
クライアント端末101のファイル選択手段310は、入力装置304を介した利用者からのファイル選択指示を受信すると、ファイル同期サーバ103にファイル選択要求を送信する(S7)。本実施形態では、ファイル選択手段310は、ファイル識別子としてファイル名「サンプル.doc」を含むファイル選択指示を受信して、当該ファイル名および利用者ID「userA」を含むファイル選択要求をファイル同期サーバ103に送信する。
ファイル同期サーバ103のファイル抽出手段212は、クライアント端末101からのファイル選択要求を受信すると、ファイル選択要求に基づいてファイル記憶手段209からファイルを抽出し、抽出したファイルをクライアント端末101に送信する(S8)。本実施形態では、図5の[3]に示されるように、ファイル抽出手段212は、利用者ID「userA」およびファイル名「サンプル.doc」を含むファイル選択要求を受信して、利用者ID「userA」およびファイル名「サンプル.doc」により特定されるファイルをファイル記憶手段209から抽出し、クライアント端末101に送信する。
クライアント端末の仮想ストレージ管理手段311は、ファイル同期サーバ103からファイルを受信すると、クライアント端末101のメモリ303上に、利用者IDに関連付けられた仮想ストレージが構築されているか否か判定する(S9)。構築されていない場合、仮想ストレージ管理手段311は、仮想ストレージを構築する(S10)。本実施形態では、利用者ID「userA」に関連付けられた仮想ストレージは構築されていないので、仮想ストレージを構築する。
仮想ストレージ管理手段311は、ファイル同期サーバ103から受信したファイルを、ファイル同期サーバ103と同期がとれている第1のファイルとして仮想ストレージに格納する(S11)。本実施形態では、仮想ストレージ管理手段311は、図5に示されるように、バージョン1のファイル『サンプル.doc』を第1のファイルとして格納したものとする。
(ファイル同期サーバとクライアント端末との同期 −オンライン時−)
次に、図5、6のファイル同期システムの概念図および図11のフローチャートを参照して、利用者Aが編集操作を行い、ファイル同期サーバとクライアント端末との間で同期を完了するまでの処理工程を説明する。
第1のファイルが格納された後、利用者による編集操作に伴い第1のファイルが変更される場合、仮想ストレージ管理手段311は、第1のファイルに変更を加えた第2のファイルを仮想ストレージに格納する(S12)。本実施形態では、図5に示されるように、利用者Aによる編集操作に伴い、仮想ストレージ管理手段311が、バージョン2のファイル『サンプル.doc』を第2のファイルとして格納したものとする。
クライアント端末101の同期要求手段312は、ファイル比較イベントの発生に応答して(S13)、第1のファイルと第2のファイルとを比較する(S14)。本実施形態では、入力装置304を介した利用者からのファイル更新指示に応答して、同期要求手段312は、第1のファイルと第2のファイルとを比較するものとする。
両者の間に変更が生じる場合、同期要求手段312は、ファイル同期サーバ103に同期要求を送信する(S15)。本実施形態では、バーション1のファイル『サンプル.doc』の最終更新日時を示す時刻情報とバージョン2のファイル『サンプル.doc』の最終更新日時を示す時刻情報とを比較すると、後者の時刻情報が更新されているので、同期要求手段312は、図5の[4]に示されるように、利用者ID「userA」、および変更後のファイルとしてバージョン2のファイル『サンプル.doc』を含む同期要求をファイル同期サーバ103に送信する。
また、同期要求手段312は、ファイル名を含む同期情報を仮想ストレージ管理手段311に送信する(S16)。本実施形態では、ファイル名「サンプル.doc」を含む同期情報を仮想ストレージ管理手段311に送信する。
ファイル同期サーバ103の同期手段213は、クライアント端末101から同期要求を受信すると、同期要求に基づいてファイル記憶手段209のファイルを更新する(S17)。本実施形態では、同期要求は利用者ID「userA」、および変更後のファイルとしてとしてバージョン2のファイル『サンプル.doc』を含み、同期手段213は、同期要求に含まれる利用者ID「userA」および変更後のファイルのファイル名「サンプル.doc」を用いてファイル記憶手段209に格納されるファイルを特定し、特定したファイルを変更後のファイルで置き換える。当該更新処理により、図6の[1]に示されるように、ファイル記憶手段209に格納される『サンプル.doc』はバージョン2となる。
同期手段213は、ファイルの更新が完了すると、クライアント端末101に更新完了通知を送信する(S18)。ファイル同期サーバ103から更新完了通知を受信すると、仮想ストレージ管理手段311は、同期情報に基づいて仮想ストレージの第1のファイルを更新する(S19)。本実施形態では、同期情報に含まれるファイル名「サンプル.doc」により特定される第1のファイルを第2のファイルで置き換える。当該更新処理により、図6の[3]に示されるように、第1のファイルは、バージョン2のファイル『サンプル.doc』となる。
(ファイル同期サーバとクライアント端末との同期 −オフライン時−)
次に、図7、8のファイル同期システムの概念図および図12のフローチャートを参照して、利用者Aが編集操作を行い、ファイル同期サーバとクライアント端末との間で同期が完了する前にクライアント端末をシャットダウンするまでの処理工程を説明する。
第1のファイルが格納または更新された後、利用者による編集操作に伴い第1のファイルが変更される場合、仮想ストレージ管理手段311は、第1のファイルに変更を加えた第2のファイルを仮想ストレージに格納する(S12)。本実施形態では、図7に示されるように、利用者Aによる編集操作に伴い、仮想ストレージ管理手段311が、バージョン3のファイル『サンプル.doc』を第2のファイルとして格納したものとする。
クライアント端末101の同期要求手段312は、ファイル比較イベントの発生に応答して(S13)、第1のファイルと第2のファイルとを比較する(S14)。本実施形態では、入力装置304を介した利用者からのファイル更新指示に応答して、同期要求手段312は、第1のファイルと第2のファイルとを比較するものとする。
両者の間に変更が生じる場合、同期要求手段312は、ファイル同期サーバ103に同期要求を送信する(S15)。本実施形態では、バーション2のファイル『サンプル.doc』の最終更新日時を示す時刻情報とバージョン3のファイル『サンプル.doc』の最終更新日時を示す時刻情報とを比較すると、後者の時刻情報が更新されているので、同期要求手段312は、利用者ID「userA」、および変更後のファイルとしてバージョン3のファイル『サンプル.doc』を含む同期要求Aをファイル同期サーバ103に送信する。
ここで、本実施形態では、ファイル同期サーバ103とクライアント端末101との間で通信障害が発生し、そのため、ファイル同期サーバ103は、クライアント端末101から同期要求Aを受信していないものとする。
同期要求手段312は、ファイル名を含む同期情報を仮想ストレージ管理手段311に送信する(S16)。本実施形態では、ファイル名「サンプル.doc」を含む同期情報Aを仮想ストレージ管理手段311に送信する。
オンライン時は、ファイル同期サーバ103の同期手段213がクライアント端末101から同期要求Aを受信することにより図11のS17に進むが、本実施形態では、前述したように、通信障害の発生により、ファイル同期サーバ103は、クライアント端末101から同期要求Aを受信していない。また、本実施形態では、同期要求手段312が、5分に1度の時間単位でファイル比較イベントを生成するものとする。
同期要求手段312が生成したファイル比較イベントの発生に応答して(S13)、同期要求手段312は、第1のファイルと第2のファイルとを比較する(S14)。本実施形態では両者の間に変更が生じるので、同期要求手段312は、ファイル同期サーバ103に同期要求A’を送信する(S15)。また、同期要求手段312は、ファイル名「サンプル.doc」を含む同期情報A’を仮想ストレージ管理手段311に送信する(S16)。
この時点において、ファイル同期サーバ103とクライアント端末101との接続が復旧している場合、ファイル同期サーバ103の同期手段213がクライアント端末101から同期要求A’を受信することにより図11のS17に進むが、本実施形態では、依然としてファイル同期サーバ103とクライアント端末101との間で通信障害が発生しているものとする。
クライアント端末101の差分暗号化データ管理手段313は、入力装置304を介した利用者からのプログラム終了指示を受信すると(S20)、仮想ストレージ管理手段311が、同期情報を受信後にファイル同期サーバ103から更新完了通知を受信したか否かを判定する(S21)。本実施形態では、プログラム終了指示を受信した際、更新完了通知を受信していないものとする。
同期情報を受信後に更新完了通知を受信していない場合、差分暗号化データ管理手段313は、第1のファイルと第2のファイルとの差分データを取得し、認証要求手段309が保持する暗号鍵を用いて、当該差分データを暗号化する(S22)。本実施形態では、図7に示されるように、差分暗号化データ管理手段313は、第1のファイルと第2のファイルとの差分データを取得し、認証要求手段309が保持する暗号鍵「鍵a」を用いて差分暗号化データを生成する。
差分暗号化データ管理手段313は、差分暗号化データを利用者IDに関連付けて差分暗号化データ記憶手段308に格納する(S23)。本実施形態では、生成した差分暗号化データを利用者ID「userA」に関連付けて差分暗号化データ記憶手段308に格納する。
その後、利用者がクライアント端末101をシャットダウンすると、図8に示されるように、メモリ上で管理されていた仮想ストレージ内のファイルおよび暗号鍵は消去される。このように、クライアント端末101が配信された暗号鍵をメモリ上で管理することにより、クライアント端末101のシャットダウン後にクライアント端末101に残るのは差分暗号化データのみとなるので、当該差分暗号化データを安全に管理することができる。例えば、クライアント端末101が紛失してしまったとしても、差分暗号化データを復号する暗号鍵はクライアント端末101に存在しないので、差分暗号化データが漏洩するリスクを最大限に抑えることができる。
また、暗号化するデータをすべてのデータではなく、差分データとすることで、クライアント端末の暗号化処理の負担を軽減することができる。これにより、暗号化処理の処理時間および消費電力が最小限になり、クライアント端末の処理能力が低い場合であっても、その処理負担による影響を最小限に抑えることができる。
なお、別の実施形態では、差分暗号化データ管理手段313は、差分暗号化データを差分暗号化データ記憶手段308に格納したのち、メモリ上で管理されている仮想ストレージ内のファイルおよび暗号鍵を消去することもできる。
(ファイル同期サーバとクライアント端末との同期 −再接続時−)
次に、図9のファイル同期システムの概念図および図10のフローチャートを参照して、クライアント端末に残された差分暗号化データに基づいて、ファイル同期サーバ上で管理するファイルを更新するまでの処理工程を説明する。
利用者Aがクライアント端末101を介して、ファイル同期サーバ103に認証要求を送信する(S1)。本実施形態では、図9の[1]に示されるように、クライアント端末101の認証要求手段309が、利用者ID「userA」およびパスワード「aaaaaaa」を含む認証要求を送信したものとする。ファイル同期サーバ103の認証手段211は、クライアント端末101から認証要求を受信すると、利用者情報記憶手段208を参照して認証を行う(S2)。本実施形態では、認証要求に含まれる利用者IDおよびパスワードと一致するレコードが利用者情報記憶手段208に存在するので、認証は成功する。
利用者の認証が成功する場合、クライアント端末101の差分暗号化データ管理手段313は、認証された利用者の利用者IDに関連付けられている差分暗号化データが差分暗号化データ記憶手段308に格納されているか否か判定する(S3)。本実施形態では、図9に示されるように、認証された利用者の利用者IDに関連付けられている差分暗号化データが格納されているので、S30に進む。
差分暗号化データが格納されている場合、差分暗号化データ管理手段313は、差分暗号化データ復元要求をファイル同期サーバ103に送信する(S30)。本実施形態では、差分暗号化データ管理手段313は、図9の[2]に示されるように、利用者ID「userA」、ファイル識別子「サンプル.doc」、および差分暗号化データを含む差分暗号化データ復元要求をファイル同期サーバ103に送信する。
差分暗号化データ復元手段214は、クライアント端末101から差分暗号化データ復元要求を受信すると、差分暗号化データ復元要求に含まれる利用者IDに関連付けられている暗号鍵を利用者情報記憶手段208から取得して、取得した暗号鍵を用いて差分暗号化データを復号する(S31)。本実施形態では、差分暗号化データ復元手段214は、利用者ID「userA」に関連付けられている暗号鍵「鍵a」を利用者情報記憶手段208から取得して、取得した暗号鍵を用いて差分暗号化データを復号する。
差分暗号化データ復元手段214は、差分暗号化データ復元要求に含まれる利用者IDおよびファイル識別子を用いてファイル記憶手段209に格納されるファイルを特定し、復号した差分暗号化データを用いて特定したファイルを更新する(S32)。本実施形態では、利用者ID「userA」およびファイル識別子「サンプル.doc」を用いてファイル記憶手段209に格納されるファイルを特定し、復号した差分暗号化データを用いて特定したファイルを更新する。当該更新処理により、図9の[3]に示されるように、ファイル記憶手段209に格納される『サンプル.doc』はバージョン3となる。その後、処理は同図のS4に戻る。
このように、クライアント端末101に残された差分暗号化データを、クライアント端末101とファイル同期サーバ103との再接続時に転送することにより、オフライン時に、クライアント端末101におけるローカルファイルの更新を可能としつつ、再接続時に、クライアント端末101における更新内容をファイル同期サーバ103で復元することができる。
なお、本実施形態では、差分暗号化データをクライアント端末101からファイル同期サーバ103に転送し、ファイル同期サーバ103において更新内容を復元しているが、別の実施形態では、クライアント端末101において更新内容を復元することもできる。この場合、差分暗号化データが差分暗号化データ記憶手段308に格納されているか否か判定した後(S3)、差分暗号化データ管理手段313は、前述した差分暗号化データ復元要求の代わりに、差分暗号化データ復元情報要求をファイル同期サーバ103に送信することができる。一実施形態では、差分暗号化データ管理手段313は、利用者ID「userA」およびファイル識別子「サンプル.doc」を含む差分暗号化データ復元情報要求をファイル同期サーバ103に送信する。
ファイル同期サーバ103は、差分暗号化データ復元情報要求を受信すると、当該差分暗号化データ復元情報要求に基づいて、利用者情報記憶手段208に格納される暗号鍵、およびファイル記憶手段209に格納されるファイルを取得して、クライアント端末101に送信する。これにより、クライアント端末101は、受信した暗号鍵を用いて差分暗号化データを復号し、復号した差分暗号化データを用いてファイルを更新することができる。

Claims (9)

  1. ファイル同期サーバとクライアント端末とを備えたファイル同期システムであって、
    前記ファイル同期サーバは、
    暗号鍵を格納する鍵記憶手段と、
    ファイルを格納するファイル記憶手段と、
    前記鍵記憶手段から暗号鍵を取得して、前記クライアント端末に配信する手段と、
    前記クライアント端末からファイル選択要求を受信して、当該ファイル選択要求に基づいて前記ファイル記憶手段から抽出したファイルを、前記クライアント端末に送信するファイル抽出手段と、
    前記クライアント端末からファイルの変更内容を含む同期要求を受信して、前記変更内容に基づいて前記ファイル記憶手段のファイルを更新し、前記クライアント端末に更新完了通知を送信する同期手段と、
    前記クライアント端末から差分暗号化データを含む復元要求を受信して、前記暗号鍵を前記鍵記憶手段から取得して、当該取得した暗号鍵を用いて前記差分暗号化データを復号し、前記復号した差分暗号化データを用いて前記ファイル記憶手段のファイルを更新する差分暗号化データ復元手段と
    を備え、
    前記クライアント端末は、
    差分暗号化データを格納する差分暗号化データ記憶手段と、
    前記ファイル同期サーバから配信される暗号鍵を保持する手段と、
    前記ファイル選択要求を前記ファイル同期サーバに送信するファイル選択手段と、
    単一のファイルに対して、前記ファイル同期サーバと同期がとれている第1のファイル、および前記第1のファイルに変更を加えた第2のファイルを格納する仮想ストレージを構築する仮想ストレージ管理手段であって、前記ファイル同期サーバからファイルを受信して、前記受信したファイルを前記仮想ストレージに第1のファイルとして格納し、前記第1のファイルが変更される場合、前記第1のファイルに変更を加えた第2のファイルを前記仮想ストレージに格納する仮想ストレージ管理手段と、
    ファイル比較イベントの発生に応答して、前記仮想ストレージの前記第1のファイルと前記第2のファイルとを比較して、両者の間に変更が生じる場合、ファイルの変更内容を含む前記同期要求を前記ファイル同期サーバに送信し、前記ファイル同期サーバとの同期処理中であることを示す同期情報を前記仮想ストレージ管理手段に送信する同期要求手段と、
    前記仮想ストレージ管理手段が、前記同期情報を受信後に前記ファイル同期サーバから前記更新完了通知を受信したか否かを判定し、前記更新完了通知を受信していない場合、前記仮想ストレージの前記第1のファイルと前記第2のファイルとの差分データを取得し、前記暗号鍵で前記差分データを暗号化して前記差分暗号化データを生成し、前記差分暗号化データ記憶手段に格納し、前記差分暗号化データを含む前記復元要求を前記ファイル同期サーバに送信する差分暗号化データ管理手段と
    を備え、前記仮想ストレージ管理手段は、前記同期要求手段から前記同期情報を受信した後、前記ファイル同期サーバから前記更新完了通知を受信すると、前記仮想ストレージの前記第1のファイルを前記第2のファイルで置き換えることを特徴とするファイル同期システム。
  2. 前記鍵記憶手段は、利用者に関連付けて暗号鍵を格納し、
    前記ファイル記憶手段は、利用者に関連付けてファイルを格納し、
    前記配信する手段は、前記クライアント端末から利用者情報を含む認証要求を受信して、前記利用者情報に関連付けられている暗号鍵を取得して、配信し、
    前記保持する手段は、前記認証要求を前記ファイル同期サーバに送信することを特徴とする請求項1に記載のファイル同期システム。
  3. 前記差分暗号化データ管理手段は、利用者情報に関連付けて前記差分暗号化データ記憶手段に前記差分暗号化データを格納し、
    前記差分暗号化データ管理手段は、前記認証要求に含まれる前記利用者情報に関連付けられている差分暗号化データが前記差分暗号化データ記憶手段に格納されている場合、前記復元要求を前記ファイル同期サーバに送信することを特徴とする請求項2に記載のファイル同期システム。
  4. 前記同期要求手段は、一定の時間単位で前記ファイル比較イベントを生成することを特徴とする請求項1乃至3のいずれかに記載のファイル同期システム。
  5. 暗号鍵を格納する鍵記憶手段とファイルを格納するファイル記憶手段とを備えたファイル同期サーバ、および差分暗号化データを格納する差分暗号化データ記憶手段を備えたクライアント端末を備えたファイル同期システムにおいて、
    前記ファイル同期サーバが、前記鍵記憶手段から暗号鍵を取得して、前記クライアント端末に配信するステップと、
    前記クライアント端末が、前記ファイル同期サーバから配信される暗号鍵を保持するステップと、
    前記クライアント端末のファイル選択手段が、ファイル選択要求を前記ファイル同期サーバに送信するステップと、
    前記ファイル同期サーバのファイル抽出手段が、前記ファイル選択要求に基づいて前記ファイル記憶手段から抽出したファイルを、前記クライアント端末に送信するステップと、
    前記クライアント端末の仮想ストレージ管理手段が、単一のファイルに対して、前記ファイル同期サーバと同期がとれている第1のファイル、および前記第1のファイルに変更を加えた第2のファイルを格納する仮想ストレージを構築するステップと、
    前記仮想ストレージ管理手段が、前記ファイル同期サーバからファイルを受信して、前記受信したファイルを前記仮想ストレージに第1のファイルとして格納するステップと、
    前記第1のファイルが変更される場合、前記仮想ストレージ管理手段が、前記第1のファイルに変更を加えた第2のファイルを前記仮想ストレージに格納するステップと、
    前記クライアント端末の同期要求手段が、ファイル比較イベントの発生に応答して、前記仮想ストレージの前記第1のファイルと前記第2のファイルとを比較するステップと、
    両者の間に変更が生じる場合、前記同期要求手段が、ファイルの変更内容を含む同期要求を前記ファイル同期サーバに送信し、前記ファイル同期サーバとの同期処理中であることを示す同期情報を前記仮想ストレージ管理手段に送信するステップと、
    前記ファイル同期サーバの同期手段が、前記同期要求を受信して、当該同期要求に含まれる変更内容に基づいて前記ファイル記憶手段のファイルを更新し、前記クライアント端末に更新完了通知を送信するステップと、
    前記仮想ストレージ管理手段が、前記同期要求手段から前記同期情報を受信した後、前記ファイル同期サーバから前記更新完了通知を受信する場合、前記仮想ストレージの前記第1のファイルを前記第2のファイルで置き換えるステップと、
    前記クライアント端末の差分暗号化データ管理手段が、前記仮想ストレージ管理手段が前記同期情報を受信後に前記ファイル同期サーバから前記更新完了通知を受信したか否かを判定し、前記同期情報を受信後に前記ファイル同期サーバから前記更新完了通知を受信していない場合、前記仮想ストレージの前記第1のファイルと前記第2のファイルとの差分データを取得し、前記暗号鍵で前記差分データを暗号化して前記差分暗号化データを生成し、前記差分暗号化データ記憶手段に格納するステップと、
    前記差分暗号化データ管理手段が、前記差分暗号化データを含む復元要求を前記ファイル同期サーバに送信するステップと、
    前記ファイル同期サーバの差分暗号化データ復元手段が、前記復元要求を受信して、前記暗号鍵を前記記憶手段から取得して、当該取得した暗号鍵を用いて前記差分暗号化データを復号し、前記復号した差分暗号化データを用いて前記ファイル記憶手段のファイルを更新するステップと
    を含むことを特徴とする方法。
  6. 暗号鍵を格納する鍵記憶手段と、
    ファイルを格納するファイル記憶手段と、
    前記鍵記憶手段から暗号鍵を取得して、クライアント端末に配信する手段と、
    前記クライアント端末からファイル選択要求を受信して、当該ファイル選択要求に基づいて前記ファイル記憶手段から抽出したファイルを、前記クライアント端末に送信するファイル抽出手段と、
    前記クライアント端末からファイルの変更内容を含む同期要求を受信して、前記変更内容に基づいて前記ファイル記憶手段のファイルを更新し、前記クライアント端末に更新完了通知を送信する同期手段と、
    前記クライアント端末から差分暗号化データを含む復元要求を受信して、前記暗号鍵を前記鍵記憶手段から取得して、当該取得した暗号鍵を用いて前記差分暗号化データを復号し、前記復号した差分暗号化データを用いて前記ファイル記憶手段のファイルを更新する差分暗号化データ復元手段と
    を備えたことを特徴するファイル同期サーバ。
  7. 暗号鍵を格納する鍵記憶手段、およびファイルを格納するファイル記憶手段を備えたコンピュータに、
    前記鍵記憶手段から暗号鍵を取得して、クライアント端末に配信するステップと、
    前記クライアント端末からファイル選択要求を受信して、当該ファイル選択要求に基づいて前記ファイル記憶手段から抽出したファイルを、前記クライアント端末に送信するステップと、
    前記クライアント端末からファイルの変更内容を含む同期要求を受信して、前記変更内容に基づいて前記ファイル記憶手段のファイルを更新し、前記クライアント端末に更新完了通知を送信するステップと、
    前記クライアント端末から差分暗号化データを含む復元要求を受信して、前記暗号鍵を前記鍵記憶手段から取得して、当該取得した暗号鍵を用いて前記差分暗号化データを復号し、前記復号した差分暗号化データを用いて前記ファイル記憶手段のファイルを更新するステップと
    を実行させることを特徴とするプログラム。
  8. 差分暗号化データを格納する差分暗号化データ記憶手段と、
    ファイル同期サーバから配信される暗号鍵を保持する手段と、
    ファイル選択要求を前記ファイル同期サーバに送信するファイル選択手段と、
    単一のファイルに対して、前記ファイル同期サーバと同期がとれている第1のファイル、および前記第1のファイルに変更を加えた第2のファイルを格納する仮想ストレージを構築する仮想ストレージ管理手段であって、前記ファイル選択要求に応答して前記ファイル同期サーバからファイルを受信して、前記受信したファイルを前記仮想ストレージに第1のファイルとして格納し、前記第1のファイルが変更される場合、前記第1のファイルに変更を加えた第2のファイルを前記仮想ストレージに格納する仮想ストレージ管理手段と、
    ファイル比較イベントの発生に応答して、前記仮想ストレージの前記第1のファイルと前記第2のファイルとを比較して、両者の間に変更が生じる場合、ファイルの変更内容を含む同期要求を前記ファイル同期サーバに送信し、前記ファイル同期サーバとの同期処理中であることを示す同期情報を前記仮想ストレージ管理手段に送信する同期要求手段と、
    前記仮想ストレージ管理手段が、前記同期情報を受信後に前記ファイル同期サーバから更新完了通知を受信したか否かを判定し、前記更新完了通知を受信していない場合、前記仮想ストレージの前記第1のファイルと前記第2のファイルとの差分データを取得し、前記暗号鍵で前記差分データを暗号化して差分暗号化データを生成し、前記差分暗号化データ記憶手段に格納し、前記差分暗号化データを含む復元要求を前記ファイル同期サーバに送信する差分暗号化データ管理手段と
    を備え、前記仮想ストレージ管理手段は、前記同期要求手段から前記同期情報を受信した後、前記ファイル同期サーバから前記更新完了通知を受信すると、前記仮想ストレージの前記第1のファイルを前記第2のファイルで置き換えることを特徴とするクライアント端末。
  9. 差分暗号化データを格納する差分暗号化データ記憶手段を備えたコンピュータに、
    ファイル同期サーバから配信される暗号鍵を保持するステップと、
    ファイル選択要求を前記ファイル同期サーバに送信するステップと、
    単一のファイルに対して、前記ファイル同期サーバと同期がとれている第1のファイル、および前記第1のファイルに変更を加えた第2のファイルを格納する仮想ストレージを構築するステップと、
    前記ファイル選択要求に応答して前記ファイル同期サーバから送信されるファイルを受信して、前記受信したファイルを前記仮想ストレージに第1のファイルとして格納するステップと、
    前記第1のファイルが変更される場合、前記第1のファイルに変更を加えた第2のファイルを前記仮想ストレージに格納するステップと、
    ファイル比較イベントの発生に応答して、前記仮想ストレージの前記第1のファイルと前記第2のファイルとを比較するステップと、
    両者の間に変更が生じる場合、ファイルの変更内容を含む同期要求を前記ファイル同期サーバに送信し、前記ファイル同期サーバとの同期処理中であることを示す同期情報を生成するステップと、
    前記同期情報を生成した後、前記ファイル同期サーバから更新完了通知を受信する場合、前記仮想ストレージの前記第1のファイルを前記第2のファイルで置き換えるステップと、
    前記同期情報を生成後に前記ファイル同期サーバから前記更新完了通知を受信したか否かを判定し、前記更新完了通知を受信していない場合、前記仮想ストレージの前記第1のファイルと前記第2のファイルとの差分データを取得し、前記暗号鍵で前記差分データを暗号化して差分暗号化データを生成し、前記差分暗号化データ記憶手段に格納するステップと、
    前記差分暗号化データを含む復元要求を前記ファイル同期サーバに送信するステップと
    を実行させることを特徴とするプログラム。
JP2012124817A 2012-05-31 2012-05-31 差分暗号化によるファイル同期システム、その方法およびプログラム Expired - Fee Related JP5795554B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012124817A JP5795554B2 (ja) 2012-05-31 2012-05-31 差分暗号化によるファイル同期システム、その方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012124817A JP5795554B2 (ja) 2012-05-31 2012-05-31 差分暗号化によるファイル同期システム、その方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2013250759A JP2013250759A (ja) 2013-12-12
JP5795554B2 true JP5795554B2 (ja) 2015-10-14

Family

ID=49849388

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012124817A Expired - Fee Related JP5795554B2 (ja) 2012-05-31 2012-05-31 差分暗号化によるファイル同期システム、その方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5795554B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6506527B2 (ja) 2014-10-14 2019-04-24 キヤノン株式会社 情報処理装置とデータ同期方法、データ同期システムおよびプログラム
JP6565265B2 (ja) * 2015-03-30 2019-08-28 日本電気株式会社 コンテンツ管理統制方法とシステムと通信端末及びサーバ装置ならびにプログラム
CN110691263A (zh) * 2018-07-05 2020-01-14 武汉斗鱼网络科技有限公司 同步本地与服务器时间的方法、介质、电子设备及系统
WO2021133152A1 (en) * 2019-12-23 2021-07-01 Mimos Berhad A method for authenticating and synchronizing offline data
JP7330157B2 (ja) * 2020-09-18 2023-08-21 株式会社東芝 情報処理装置および更新処理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3709975B2 (ja) * 2000-05-02 2005-10-26 株式会社野村総合研究所 文書一括管理方法、文書一括管理システムおよび記録媒体
JP2004246431A (ja) * 2003-02-10 2004-09-02 Trinity Security Systems Inc コンテンツ保護システム、コンテンツ保護方法、その方法をコンピュータに実行させるプログラム
US7203708B2 (en) * 2003-11-06 2007-04-10 Microsoft Corporation Optimizing file replication using binary comparisons
JP2005292905A (ja) * 2004-03-31 2005-10-20 Fujitsu Ltd バックアップシステム、クライアント、およびサーバー
JP2009110215A (ja) * 2007-10-30 2009-05-21 Hitachi Ltd シンクライアントシステムおよびそのデータ編集方法ならびにデータ編集プログラム
JP5455340B2 (ja) * 2008-09-11 2014-03-26 株式会社アール・アイ バックアッププログラム
JP2010266933A (ja) * 2009-05-12 2010-11-25 Ri Co Ltd ドキュメント管理プログラム、ドキュメント管理システム及びドキュメント管理方法

Also Published As

Publication number Publication date
JP2013250759A (ja) 2013-12-12

Similar Documents

Publication Publication Date Title
CN106664202B (zh) 提供多个设备上的加密的方法、系统和计算机可读介质
KR102330538B1 (ko) 디바이스를 통한 콘텐츠 와이핑 동작 로밍 기법
JP6082589B2 (ja) 暗号鍵管理プログラム、データ管理システム
US8798272B2 (en) Systems and methods for managing multiple keys for file encryption and decryption
US20130283060A1 (en) Seamless Remote Synchronization and Sharing of Uniformly Encrypted Data for Diverse Platforms and Devices
JPWO2009004732A1 (ja) 共有暗号ファイルの暗号化、復号処理方法
JP5795554B2 (ja) 差分暗号化によるファイル同期システム、その方法およびプログラム
WO2016051615A1 (ja) データ管理システム、データ管理方法、及びクライアント端末
JP2009199195A (ja) 計算機システム及び端末
US10116442B2 (en) Data storage apparatus, data updating system, data processing method, and computer readable medium
JP2022040957A (ja) 暗号鍵管理システムおよび暗号鍵管理方法
JP6426520B2 (ja) 暗号鍵管理システムおよび暗号鍵管理方法
JP2013257638A (ja) リモートデスクトップシステムおよび制御方法
US20160371499A1 (en) Deleting information to maintain security level
JP5035873B2 (ja) 共有暗号ファイルの暗号化・復号処理方法及びプログラム
WO2020255382A1 (ja) コンテンツ取引システム、コンテンツ取引方法、鍵管理装置、及び鍵管理プログラム
JP2012068988A (ja) セキュア・ネットワーク・ストレージ・システム、方法、クライアント装置、サーバ装置、及びプログラム
JP6272546B2 (ja) データ保管装置及びデータ処理方法及びデータ処理プログラム
JP6216673B2 (ja) データ管理方法及びデータ管理システム
CN114866309B (zh) 数据传输方法、系统、设备及介质
JP2009181545A (ja) 属性情報更新要求装置、属性情報更新要求方法、及び属性情報更新要求プログラム
JP2020170412A (ja) ファイル共有補助システム
JP6813778B2 (ja) データ消去方法、データ消去プログラムおよび管理サーバ
CN114679337A (zh) 一种信息分布式处理方法、装置、电子设备及存储介质
JP2020053747A (ja) 電子ファイル作成装置、電子データ処理装置、電子データ管理システム、電子データ管理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140828

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150702

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150728

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150813

R150 Certificate of patent or registration of utility model

Ref document number: 5795554

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees