WO2005101209A1 - バックアップ方法ならびにバックアップシステム - Google Patents

バックアップ方法ならびにバックアップシステム Download PDF

Info

Publication number
WO2005101209A1
WO2005101209A1 PCT/JP2004/019634 JP2004019634W WO2005101209A1 WO 2005101209 A1 WO2005101209 A1 WO 2005101209A1 JP 2004019634 W JP2004019634 W JP 2004019634W WO 2005101209 A1 WO2005101209 A1 WO 2005101209A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
difference
received
backup server
encrypted
Prior art date
Application number
PCT/JP2004/019634
Other languages
English (en)
French (fr)
Inventor
Atsushi Ito
Takeshi Teramura
Original Assignee
Hitachi, Ltd.
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 Hitachi, Ltd. filed Critical Hitachi, Ltd.
Publication of WO2005101209A1 publication Critical patent/WO2005101209A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • G06F21/645Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents

Definitions

  • the present invention relates to a data backup method, and more particularly to an efficient backup method and system for backing up data in an encrypted state.
  • Japanese Patent Laying-Open No. 2001-34580 proposes a differential backup in which only updated data is backed up.
  • the method disclosed in Japanese Patent Application Laid-Open No. 2001-34580 downloads all data that has been backed up, and thus does not contribute much to the reduction in the amount of communication in the case where all data is not necessarily downloaded.
  • the new and old files will exist on the client at the same time, but the client will need a large amount of data storage area.
  • USP 5,765,173 proposes a method using a feature value for each block of data called a signature.
  • first method described in USP 5,765,173 when backing up, save the signature of the backed up data on the client, and then save it at the next backup! Compare the data signatures you are trying to back up with the data signatures you have A method of efficiently creating difference information is disclosed.
  • the backup server calculates the signature of the backed up data on the backup server side and sends it to the client. -The method of creating difference information efficiently by comparing the data of the data that is being backed up with the data is disclosed! Puru.
  • the client needs a data storage area for storing the signature, and in order to implement the device on a device having a limited data storage area, such as a mobile phone or a PDA.
  • a device having a limited data storage area such as a mobile phone or a PDA.
  • the differential backup cannot be performed because there is no signature that was previously backed up to the other client.
  • the second method since the calculation of the sig-char is performed on the server side, it cannot be used in the encryption backup as described in JP-A-2002-351722.
  • An object of the present invention is to provide a method for efficiently performing a differential backup without squeezing a data storage area of a client and keeping data confidentiality. Another object of the present invention is to provide a method for synchronizing a plurality of backup servers while maintaining the confidentiality of data.
  • the client terminal according to the present invention together with the data to be knocked up (encrypted data) together with the data to be knocked up when performing the first backup, performs the difference calculation.
  • the signature is calculated and transmitted to the server together with the cipher data.
  • the client sends the previously received signature from Sano to the client, and the client calculates the difference using the signature and calculates the signature of the data to be backed up.
  • the encrypted difference and the calculated signature are transmitted to the current server.
  • data specifying a version of data such as date and time is stored in the same record together with the encrypted data and the data in the knockup server.
  • One backup server sends its own version data to a second backup server, and the second backup server requests the received version data that it does not have, and By transmitting the data that the first backup server does not have among the version data that the first backup server has, synchronization between the servers is realized.
  • differential backup can be efficiently realized without squeezing the data storage area of the client and keeping data confidentiality.
  • FIG. 1 shows a system configuration in this embodiment.
  • the knock-up server 110 has a data storage device 111, is connected to the client 130 via the network 160, and is connected to the backup server 120 via the network 150.
  • the backup server 120 also has a data storage device 121 similarly to the backup server 110, and is connected to the client 140 via the network 170 and to the backup server 110 via the network 150.
  • the client 130 has a computing device 132 and a data storage device 131
  • the client 140 has a computing device 142 and a data storage device 141.
  • the client 130 is a personal computer
  • the network 160 is a corporate LAN
  • the backup server 110 is a corporate sano
  • the network 150 is the Internet
  • the backup server 120 is a sano in a mobile carrier
  • the network 170 is a mobile phone network
  • the client 140 is a mobile phone.
  • the networks 150, 160 and 170 are separate networks, but it is not always necessary.For example, all servers and clients are connected via the Internet, or only the network between servers is a high-speed storage network. It is also possible that
  • FIG. 2 shows a backup processing flow.
  • the client 130 sends a backup start request message including the name of the file to be backed up, the last update date and time, the file size, and the like.
  • the server 110 which has received the backup start request message in step 220, checks in step 230 whether or not the file is stored in the data storage device 111 in the data storage device 111. Then, the initial registration processing of step 240 (described later with reference to FIG. 3) is executed. If the data already exists in step 230, it is determined in step 250 whether the data stored in the data storage device 111 is older than the last update date and time when the data was transmitted. Then, a difference update process (described later with reference to FIG. 4) is executed.
  • step 230 if the data in the data storage device 111 is the same as the data in the data storage device 131 of the client 130, if it is not, in step 270, the update unnecessary processing (described later in FIG. 5) )) And exit.
  • the client 130 and the server 110 have been described as examples, but the same applies to the combination of the client 140 and the server 120.
  • the file size is included in the backup start request message, but it is not always necessary to perform the backup!
  • FIG. 3 is a processing flow describing the initial registration processing in step 240 in detail.
  • the server 110 that has determined that the initial registration is necessary in step 230 transmits an initial registration request to the client 130 in step 310.
  • the client 130 receiving the initial registration request in step 320 calculates the signature of the file to be backed up in step 330, encrypts the file to be backed up in step 340, and encrypts the file to be backed up in step 350.
  • the order of step 330 and step 340 may be reversed.
  • the server 110 that has received the message in step 360 stores the received file name, last update date and time, encrypted data, and signature in the data storage device 111 in step 370.
  • FIG. 4 is a processing flow describing the difference update processing in step 260 in detail.
  • the server 110 that has determined that the update is necessary in step 250 transmits the update request message containing the signature stored in the data storage device 111 to the client 130 in step 410.
  • the client 130 that has received the update request message in step 420 calculates the difference based on the received signature in step 430, encrypts the calculated difference in step 440, and encrypts the file to be backed up in step 450.
  • the signature is calculated, and in step 460, the encrypted difference and the calculated signature are transmitted.
  • the difference calculated here means the location where the file data has additions, changes, or deletions.
  • the signature calculated in step 450 is obtained by recalculating the updated file in block units, and is different from the previous signature.
  • the order of the difference encryption processing in steps 430 to 440 and the calculation of the signature in step 450 may be reversed.
  • the server 110 that has received the message in step 470 stores the received last update date and time, encrypted difference data, and signature in the data storage device 111 in step 480.
  • FIG. 5 is a processing flow describing the update unnecessary processing in step 270 in detail.
  • the server 110 that determines that the update is unnecessary in step 250 transmits an update unnecessary notification in step 510, and the client 130 that has received the update unnecessary notification in step 520 terminates the backup of the corresponding file.
  • FIG. 6 is a diagram showing a data structure of a specific file among the backup data stored in the data storage device 111.
  • the backup data table shown in FIG. 6 includes the last update date and time 610, the update date and time before backup 620, the file size 630, the data part 640, the signature 650, and the like.
  • the pre-update date and time 620 does not exist, and the data section stores the encrypted initial data obtained by encrypting the entire file.
  • the date and time of the file that was the source of the difference is described in the pre-update date and time 620.
  • the data portion stores the encrypted data calculated in steps 430 and 440 described above.
  • FIG. 7 is a processing flow of the client 130 after transmitting the backup start request in step 210.
  • the message received from the backup server 110 is determined in step 710, and if it is the first registration request, the signature is calculated in step 330, the entire file is encrypted in step 340, and transmitted to the server in step 350 . If the received message is an update request, the difference is calculated in step 430, the difference is encrypted in step 440, the signature is calculated in step 450, and then transmitted to the server in step 460. If the received message is an update unnecessary notification, the client 130 ends without doing anything.
  • FIG. 8 is a diagram showing a processing flow of synchronization between a plurality of backup servers.
  • the server 110 transmits to the server 120 a list of update dates and times of data existing in the data storage device 111 for the target file.
  • the server 120 that has received the update date / time list compares the update date / time list existing in the data storage device 121 with the received update date / time list in step 830.
  • the data storage device A list of data corresponding to the update date and time that exists in the data storage device 111 but does not exist in the data storage device 111, and an update date and time list for requesting data that exists in the data storage device 111 but does not exist in the data storage device 121 are provided. Send.
  • the server 110 that has received the message in step 850 stores the received shortage data in the data storage device 111 in step 860, and transmits data corresponding to the requested update date and time list in step 870. I do.
  • the server 120 that has received the message in step 880 stores the received shortage data in the storage device 121 in step 890.
  • FIG. 9 is a diagram showing a method of judging excess or deficiency in step 830.
  • the server 120 compares the version list 910 received in step 810 with the version list 920 stored in the data storage device 121, and updates 912 and 922, which have the same one, need not be updated. Only 920 exists in 920, For 923, data is transmitted to the server 110, and for 911 and 913 that exist only in 910, a data request is made to the server 110.
  • FIG. 9 shows a case where the backup server continues to hold the difference data at all points in time.
  • FIG. 10 is a diagram showing a method of judging excess or deficiency in step 830 in a case where only the latest data needs to be retained.
  • the server 110 since the data held by the server 120 is newer than the data held by the server 110, the server 110 holds the data held by the server 120 in order from the latest data, and searches for the data. . Then, since it is inevitable that difference data 912 corresponding to the difference data 922 exists, the update date and time of the difference data 922 and the difference data 923 thereafter are transmitted.
  • the backup server 110 receiving the update date and time of the difference data 922 and the difference data 923 in step 850 recognizes that data newer than the difference data 912 is unnecessary based on the update date and time of the difference data 922, and 913 is deleted, and the received difference data 923 is stored in the data storage device 111.
  • the difference data 923 transmitted to the server 110 is a difference from the difference data 922 (the same content as the difference data 912 of the server 110), and it can be determined that the difference data 913 is unnecessary.
  • the difference data 911, 912 (922), and 923 force are stored in the server 110, and the difference data 921, 922 (912), and 923 force are stored in the server 120.
  • the data does not always match, but for the purpose of restoring the latest version, 923, there is no problem.
  • the server 120 proceeds to step 840, and Requests data that is not in the server 120 by notifying the server 110 of the update date and time of the largest data held by the 120 (equivalent to 922 in the above example), and in step 890, converts the missing data received in step 880 into data. It is possible to store the data in the storage device 121 and delete the data when necessary.
  • the key management and the encryption function for encrypting the backup data have high security such as an IC card and be stored in a device.
  • FIG. 1 is a system configuration diagram in an embodiment of the present invention.
  • FIG. 2 is a backup processing flow in one embodiment of the present invention.
  • FIG. 3 is a detailed processing flow at the time of backup initial registration in one embodiment of the present invention.
  • FIG. 4 is a detailed processing flow at the time of differential backup according to an embodiment of the present invention.
  • FIG. 5 is a detailed processing flow when backup is unnecessary in one embodiment of the present invention.
  • FIG. 6 is a diagram showing data items held by a backup server in one embodiment of the present invention.
  • FIG. 7 is a processing flow of a client at the time of backup according to an embodiment of the present invention.
  • FIG. 8 is a processing flow of synchronization between servers in one embodiment of the present invention.
  • FIG. 9 is a diagram showing a process of judging excess or deficiency during synchronization between servers in one embodiment of the present invention.
  • FIG. 10 is a diagram showing another method of processing for judging excess or deficiency at the time of synchronization between servers in one embodiment of the present invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

 暗号化データバックアップの際に差分計算のためのシグニチャを一緒にバックアップしておき、二回目以降はこのシグニチャを用いて差分を計算し、新たなシグニチャと共に、暗号化した差分をバックアップすることによって効率的な暗号化バックアップを実現する。また差分データとともにバージョン情報を管理し、サーバ間でバージョンの比較を行うことによりサーバ間データ同期を可能とする。

Description

明 細 書
バックアップ方法ならびにバックアップシステム 参照による取り込み
[0001] 本出願は、 2004年 4月 8日に出願された日本特許出願第 2004— 113728号、の 優先権を主張し、その内容を参照することにより本出願に取り込む。
技術分野
[0002] 本発明は、データのバックアップ方法に関し、特にデータを暗号ィ匕した状態でバッ クアップする際の効率のよいバックアップ方法及びシステムに関する。
背景技術
[0003] 近年ュビキタス社会の到来に伴い、ノートパソコン '携帯電話 'PDAなどいろいろな ものにデータが散在し、一元的にバックアップしたいという要求が出てきている。この データバックアップに際して情報の秘密性を保持した 、と 、う要求から、特開 2002— 351722号公報のようなユーザのデータをクライアントで暗号化しサーバにバックアツ プする方法が提案されている。し力ゝし特開 2002-351722号公報の方法では、バッ クアップするデータをバックアップの度に丸ごと暗号ィ匕して送信して 、るため、データ 量が増えるに従って通信量が増え、通信時間や通信料金が増大することになる。
[0004] この問題を解決するために、特開 2001— 34580号公報では更新のあったデータ のみバックアップする差分バックアップが提案されている。し力し特開 2001— 34580 号公報の方法は、ー且バックアップしてあるデータを全てダウンロードするため、全て のデータのダウンロードが必然でないケースでは通信量の削減にはあまり貢献してい ない。また、一時的にではあるが新旧ファイルが同時にクライアントに存在することに なり、クライアントのデータ格納領域が大量に必要になる。
[0005] 上記課題を解決するために、 USP5, 765, 173ではシグ-チヤと呼ばれるデータ のブロック毎の特徴値を利用する方法が提案されている。 USP5, 765, 173に記述 されている第一の方法ではバックアップを実施した際に前記バックアップしたデータ のシグ-チヤをクライアントで保存しておき、次回バックアップの際には前記保存して お!、たシグ-チヤと現在バックアップしようとして 、るデータのシグ-チヤを比較し、効 率よく差分情報を作成する方法が開示されている。また、 USP5, 765, 173に記述 されて!/、る第二の方法では、バックアップされて 、るデータのシグ-チヤをバックアツ プサーバ側で計算してクライアントに送信し、クライアントは前記受信したシグ-チヤと 現在バックアップしょうとしているデータのシグ-チヤを比較して効率よく差分情報を 作成する方法が開示されて!ヽる。
[0006] し力し前記第一の方法では、クライアントにシグ-チヤを保管するデータ格納エリア が必要になり、携帯電話や PDAなどのデータ格納エリアに制限のあるデバイスで実 装するためにはよりデータ量の少な 、方法が求められて 、る。またデータをフロッピ 一 (登録商標)ディスクなどの媒体をもちいて他のクライアントにコピーした場合などに は前記他のクライアントに以前バックアップした際のシグ-チヤがないため差分バック アップができな 、などの課題があった。また前記第二の方法はサーバ側でシグ -チ ャの計算を行っているため、特開 2002-351722号公報に記述されているような暗 号化バックアップにおいては利用できなかった。
[0007] なお USP5, 765, 173で利用されるシグ-チヤの例としては、 Andrew Tridgell 1999 Efficient Algorithms for sorting and Synchronization PhD thesis, The Australian National Universityで開示されて 、る rsyncアルゴリズムが広く知られて!/ヽ る。
[0008] また、 USP5, 765, 173の方式では全てのクライアントからのバックアップは 1つの ノ ックアップサーバに集約されている。しかし、携帯電話、社内パソコン、 PDAなどさ まざまな環境が混在する状況では必ずしも全てのクライアントが特定のサーバに接続 可能ではなぐその時々に応じたネットワーク環境におけるバックアップサーバへバッ クアップしておき、前記複数のバックアップサーバ間でデータの同期を取ることが求 められている。
発明の開示
[0009] 本発明の目的は、クライアントのデータ格納領域を圧迫せず、データの秘密性を守 つたまま効率よく差分バックアップを行う方法を提供することにある。また本発明の別 の目的は、データの秘密性を守ったまま複数のバックアップサーバ間で同期を取る 方法を提供することにある。 [0010] 上記目的を実現するために、本発明におけるクライアント端末は初回バックアップを 実施する際に、ノ ックアップするデータを暗号ィ匕したもの(暗号ィ匕データ)と一緒に、 差分計算のためのシグ-チヤを計算して前記暗号ィヒデータとともにサーバへ送信す る。二回目以降は、サーノから前回受信したシグ-チヤをクライアントに送信し、クラ イアントはそのシグ-チヤを利用して差分を計算するとともに、バックアップしたいデ ータのシグ-チヤを計算し、前記差分を暗号化したものと前記計算したシグ-チヤを 現サーバへ送信する。
[0011] また上記別の目的を実現するために、ノ ックアップサーバにおいて暗号ィ匕差分デ 一タとシダニチヤとともに、例えば日時などのデータのバージョンを特定するデータを 一緒のレコードに格納しておき、第一のバックアップサーバは自分が持っているバー ジョンデータを第二のバックアップサーバに送信し、前記第二のバックアップサーバ は前記受信したバージョンデータのうち、自分が持っていないものを要求するとともに 、 自分が持っているバージョンデータのうち、前記第一のバックアップサーバが持つ ていないデータを送信することによって、サーバ間の同期を実現する。
[0012] 本発明によれば、クライアントのデータ格納領域を圧迫せずにデータの秘密性を守 つたまま効率よく差分バックアップを実現できる。
[0013] また複数のノックアップサーバ間の同期を実現することにより、パソコン、携帯電話 など異なる環境からバックアップした場合にも正常にバックアップが取れることを保障 する。
[0014] 本発明の他の目的、特徴及び利点は添付図面に関する以下の本発明の実施例の 記載から明らかになるであろう。
発明を実施するための最良の形態
[0015] 以下本発明を実施する為の最良な形態を詳細に説明する。第 1図は本実施例にお けるシステム構成である。ノ ックアップサーバ 110はデータ格納装置 111を有し、ネッ トワーク 160を介してクライアント 130と接続されており、またネットワーク 150を介して バックアップサーバ 120と接続されて!ヽる。バックアップサーバ 120も前記バックアツ プサーバ 110と同様にデータ格納装置 121を有し、ネットワーク 170を介してクライア ント 140と、ネットワーク 150を介してバックアップサーバ 110と接続されている。 [0016] クライアント 130は演算装置 132とデータ格納装置 131を有し、クライアント 140は 演算装置 142とデータ格納装置 141を有している。例えばクライアント 130はパソコン 、ネットワーク 160は社内 LAN、バックアップサーバ 110は社内サーノ 、ネットワーク 150はインターネット、バックアップサーバ 120は携帯キャリア内のサーノ 、ネットヮー ク 170は携帯電話網、クライアント 140は携帯電話である。この例ではネットワーク 15 0、 160、 170は別々のネットワークであつたが必ずしもその必要はなぐ例えばすベ てのサーバとクライアントがインターネットで接続されていたり、サーバ間のネットヮー クだけが高速なストレージネットワークであったりすることも考えられる。
[0017] 図 2はバックアップ処理フローである。ステップ 210においてクライアント 130はバッ クアップするファイル名、最終更新日時、ファイルサイズなどを含むバックアップ開始 要求メッセージを送信する。ステップ 220で前記バックアップ開始要求メッセージを受 信したサーバ 110は、ステップ 230にお 、てデータ格納装置 111に格納されて!、る データに前記ファイルが存在するかどうか確認し、存在しな 、場合にはステップ 240 の初期登録処理(図 3にて後述する。)を実行する。ステップ 230においてすでに存 在した場合には、ステップ 250においてデータ格納装置 111に格納されたデータが 送信されてきた最終更新日時より古いかどうか判定し、古い場合には更新が必要と みなしてステップ 260において差分更新処理(図 4にて後述する。)を実行する。ステ ップ 230にお 、てデータ格納装置 111にあるデータがクライアント 130のデータ格納 装置 131にあるデータと同じ力新 、場合にはステップ 270にお 、て更新不要処理( 図 5にて後述する。)を実行して終了する。
[0018] 上記ではクライアント 130、サーバ 110を例に説明したがクライアント 140、サーバ 1 20の組み合わせでも同様である。また、上記説明ではバックアップ開始要求メッセ一 ジにファイルサイズを含んで 、るが、バックアップの実施には必ずしも必要でな!、。
[0019] 図 3はステップ 240の初期登録処理を詳細に説明した処理フローである。ステップ 2 30で初期登録が必要と判断したサーバ 110はステップ 310でクライアント 130に対し て初期登録要求を送信する。ステップ 320で上記初期登録要求を受信したクライア ント 130は、ステップ 330で上記バックアップするファイルのシグ-チヤを計算し、ステ ップ 340で上記バックアップするファイルを暗号化し、ステップ 350で前記暗号化した データとシグ-チヤをサーバ 110へ送信する。ここで、ステップ 330とステップ 340の 順番は逆でもよ 、。ステップ 360で上記メッセージを受信したサーバ 110はステップ 3 70において上記受信したファイル名、最終更新日時、暗号化データ、シグ-チヤを データ格納装置 111に格納する。
[0020] 図 4はステップ 260の差分更新処理を詳細に説明した処理フローである。ステップ 2 50で更新が必要と判断したサーバ 110はステップ 410でデータ格納装置 111に格 納されて 、るシグ-チヤを含む更新要求メッセージをクライアント 130へ送信する。ス テツプ 420で上記更新要求メッセージを受信したクライアント 130は、ステップ 430で 前記受信したシグ-チヤを元に差分を計算し、ステップ 440で前記計算した差分を 暗号化し、ステップ 450でバックアップするファイルのシグ-チヤを計算して、ステップ 460で前記暗号ィ匕した差分と前記計算したシグ-チヤを送信する。ここで算出される 差分はファイルのデータに追加、変更、削除の箇所がある場合の当該箇所を意味す る。また、ステップ 450で算出されるシグ-チヤは、更新後のファイルをブロック単位 に再計算されるものであり、 1つ前のシグ-チヤとは異なるシグ-チヤとなる。ここでス テツプ 430— 440の差分暗号化の処理とステップ 450のシグ-チヤの計算との順番は 逆でも良 、。ステップ 470で上記メッセージを受信したサーバ 110はステップ 480に おいて上記受信した最終更新日時、暗号化差分データ、シグニチヤをデータ格納装 置 111に格納する。
[0021] 図 5はステップ 270の更新不要処理を詳細に説明した処理フローである。ステップ 2 50で更新が不要と判断したサーバ 110はステップ 510で更新不要通知を送信し、ス テツプ 520で前記更新不要通知を受信したクライアント 130は上記該当するファイル のバックアップを終了する。
[0022] 図 6はデータ格納装置 111に格納されるバックアップデータのうち、特定のファイル に関するデータ構造を示した図である。図 6に示されるバックアップデータテーブル には最終更新日時 610、バックアップ前の更新日時 620、ファイルサイズ 630、デー タ部 640、シグ-チヤ 650などが含まれる。初回登録時には更新前日時 620は存在 せず、データ部にはファイル全部を暗号ィ匕した暗号ィ匕初期データが格納される。そ れ以外の場合には更新前日時 620に差分の元になつたファイルの更新日時が記述 され、データ部には上記ステップ 430、 440で計算された暗号ィ匕差分データが格納 される。
[0023] 図 7はステップ 210でバックアップ開始要求を送信した後のクライアント 130の処理 フローである。バックアップサーバ 110から受信したメッセージをステップ 710で判断 し、初回登録要求だった場合ステップ 330でシグ-チヤを計算し、ステップ 340でファ ィル全体を暗号ィ匕し、ステップ 350でサーバに送信する。上記受信したメッセージが 更新要求だった場合、ステップ 430で差分を計算し、ステップ 440で前記差分を暗号 化し、ステップ 450でシグ-チヤを計算した後にステップ 460でサーバに送信する。 上記受信したメッセージが更新不要通知だった場合は、クライアント 130は何もせず 終了する。
[0024] 図 8は複数のバックアップサーバ間の同期の処理フローをあらわした図である。ステ ップ 810にお 、てサーバ 110は対象ファイルに関して、データ格納装置 111内に存 在するデータの更新日時のリストをサーバ 120へ送信する。ステップ 820で上記更新 日時のリストを受信したサーバ 120は、ステップ 830でデータ格納装置 121内に存在 する更新日時のリストと前記受信した更新日時のリストを比較し、ステップ 840におい て、データ格納装置 121に存在してデータ格納装置 111に存在しな 、更新日時に対 応するデータのリストと、データ格納装置 111に存在してデータ格納装置 121に存在 しないデータを要求するための更新日時リストを送信する。ステップ 850で前記メッセ ージを受信したサーバ 110は、ステップ 860で前記受信した不足分データをデータ 格納装置 111に格納し、ステップ 870で前記要求された更新日時リストに対応するデ ータを送信する。ステップ 880で前記メッセージを受信したサーバ 120はステップ 89 0で前記受信した不足分データを格納装置 121に格納する。
[0025] 図 9はステップ 830の過不足判定の方法を示した図である。サーバ 120はステップ 810で受信したバージョンリスト 910とデータ格納装置 121に格納されて 、るバージョ ンリスト 920を比較し、同じ物が存在する 912と 922に関しては更新不要、 920にの み存在する 921、 923に関してはサーバ 110へデータ送信し、 910にのみ存在する 911、 913に関してはサーバ 110へデータ要求を行う。
[0026] 図 9ではバックアップサーバにおいて全ての時点の差分データを保持しつづける場 合を説明したが、最新のデータだけを保持すればいいようなケースでは以下に説明 する方法によりデータベースのサイズとサーバ間通信データ量を削減することが可能 である。図 10は最新のデータだけを保持すればいいケースにおけるステップ 830の 過不足判定の方法を示した図である。図 10ではサーバ 120が保持するデータの方 力 サーバ 110が保持するデータよりも新しいので、サーバ 120が保持するデータを 最新のものから順にサーバ 110が保持して 、るものを検索して 、く。すると差分デー タ 922に相当する差分データ 912が存在することがわ力るので、差分データ 922の 更新日時とそれ以降の差分データ 923を送信する。ステップ 850で差分データ 922 の更新日時と、差分データ 923を受信したバックアップサーバ 110は、差分データ 9 22の更新日時を元に、差分データ 912より新しいデータは不要であることを認識して 差分データ 913を削除し、前記受信した差分データ 923をデータ格納装置 111に格 納する。サーバ 110に送信する差分データ 923は、差分データ 922 (サーバ 110の 差分データ 912と同一内容)との差分であり、差分データ 913は不要であると判断で きる。この場合、同期後にはサーバ 110には差分データ 911、 912 (922)、 923力 またサーバ 120には差分データ 921、 922 (912)、 923力 S存在することになり、二つ のサーバで保持するデータは必ずしも一致しないが、最新バージョンである 923を復 元するという目的のためには問題ない。また図 10とは逆にサーバ 110が保持するデ ータの方が、サーバ 120が保持するデータよりも新しい場合には、サーバ 120はステ ップ 840で、サーバ 110が保持するデータのうちサーバ 120が保持する最大のデー タの更新日時 (上記例における 922に相当)をサーバ 110に通知することによってサ ーバ 120にないデータを要求し、ステップ 890においてステップ 880で受信した不足 データをデータ格納装置 121に格納するとともに、必要のな!、データを削除すること も可能である。
[0027] 以上の例ではファイルの更新に枝分かれがない場合について説明した力 パージ ヨン管理システムで一般的に用いられて 、る枝分かれするような更新にっ 、ても同様 である。この場合には更新開始要求に枝名などが追加されるとともにデータ格納装 置 111、 121に格納されるデータにも枝を識別するデータが追加されることになる。
[0028] されに以上の例では簡略化のためにデータのバックアップは 1つのデータごとに行 つているが、通信回数の削減のために一度に複数のファイルについてバックアップす ることち考免られる。
[0029] また、バックアップデータの暗号化のための鍵の管理や暗号化機能は ICカードなど のセキュリティが高 、デバイスに格納することが望ま 、。
産業上の利用可能性
[0030] 本発明に記載の方法によれば携帯電話、パソコン等に分散したデータをデータの 守秘性を保持したままいつでもどこ力 でもバックアップするサービスを実現すること が可能になる。
[0031] 上記記載は実施例についてなされたが、本発明はそれに限らず、本発明の精神と 添付の請求の範囲の範囲内で種々の変更および修正をすることができることは当業 者に明らかである。
図面の簡単な説明
[0032] [図 1]本発明の一実施例におけるシステム構成図である。
[図 2]本発明の一実施例におけるバックアップ処理フローである。
[図 3]本発明の一実施例におけるバックアップ初期登録時の詳細処理フローである。
[図 4]本発明の一実施例における差分バックアップ時の詳細処理フローである。
[図 5]本発明の一実施例におけるバックアップ不要時の詳細処理フローである。
[図 6]本発明の一実施例においてバックアップサーバが保持するデータ項目を表した 図である。
[図 7]本発明の一実施例におけるバックアップ時のクライアントの処理フローである。
[図 8]本発明の一実施例におけるサーバ間同期の処理フローである。
[図 9]本発明の一実施例におけるサーバ間同期時の過不足判断の処理を表した図 である。
[図 10]本発明の一実施例におけるサーバ間同期時の過不足判断の処理の別の方 式を表した図である。

Claims

請求の範囲
[1] ノックアップサーバと一つ以上のクライアントがネットワークを経由して接続されてお り、クライアントデータを暗号ィ匕した状態で前記バックアップサーバに送信し、暗号ィ匕 されたままバックアップする方法にぉ ヽて、
クライアントはバックアップするデータを表す識別子と、前記データのバージョンを 示す情報を前記バックアップサーバに送信し、
前記バックアップサーバは前記受信したバージョンを示す情報と現在バックアップ サーバ内に格納されているデータのバージョンを比較し、
ノックアップサーバ内に該当データがバックアップされていない場合には、前記クラ イアントに初回登録要求を送信し、
前記初回登録要求を受信したクライアントは前記バックアップするデータを暗号ィ匕 し、前記バックアップするデータの差分計算に用いる特徴値を演算処理部により計算 し、前記暗号ィ匕されたデータと前記特徴値をバックアップサーバに送信し、ノ ックアツ プサーバは前記受信したバージョン情報と前記暗号化されたデータと前記特徴値を 格納し、
ノ ックアップサーバ内に該当データがバックアップされており、前記受信したパージ ョン情報より古 、場合には、前記クライアントにバックアップされて 、る差分計算に用 いる特徴値を送信し、
前記クライアントは前記受信した特徴値を元に差分を計算し、前記差分を暗号化す るとともに、前記バックアップするデータの差分計算に用いる特徴値を演算処理部に より計算し、前記暗号化された差分データと前記特徴値をバックアップサーバに送信 し、バックアップサーバは前記受信したバージョン情報と前記暗号化された差分デー タと前記特徴値を格納し、
ノ ックアップサーバ内の該当データが前記受信したバージョン情報と等しい場合に は、前記クライアントに更新不要通知を送信する、
ことを特徴とする暗号化バックアップ方法。
[2] 通信手段と演算手段を備え、前記通信手段を通じてバックアップサーバと通信可 能なクライアント装置において、 ノックアップするデータの識別子とバージョン情報を送信する機能と、 前記バックアップサーバからの応答を受信する機能と、
前記応答が初回登録要求だった場合には、前記バックアップするデータを暗号ィ匕 し、前記バックアップするデータの差分を計算するための特徴値を計算し、前記暗号 化したデータと前記特徴値を前記バックアップサーバに送信する機能と、
前記バックアップサーバからの応答が差分計算のための特徴値を含む更新要求の 場合には、前記受信した特徴値を元に前記バックアップするデータの差分を計算し、 暗号化し、前記バックアップするデータの差分を計算するための特徴値を計算し、前 記暗号ィ匕した差分データと前記特徴値を前記バックアップサーバに送信する機能と 前記バックアップサーノくからの応答が更新不要通知だった場合には、ノックアップ 処理を終了する機能と、
を有することを特徴とするクライアント装置。
[3] 前記バージョン情報としてデータの更新日時を利用することを特徴とした請求項 2 に記載のクライアント装置。
[4] 前記差分のための特徴値が暗号ィ匕されて 、ることを特徴とした請求項 2に記載のク ライアント装置。
[5] 前記差分のための特徴値が暗号ィ匕されて 、ることを特徴とした請求項 3に記載のク ライアント装置。
[6] 暗号ィ匕のために分離可能デバイスを用いることを特徴とした請求項 2に記載のクラ イアント装置。
[7] 暗号化のために分離可能デバイスを用 、ることを特徴とした請求項 3に記載のクラ イアント装置。
[8] 暗号化のために分離可能デバイスを用いることを特徴とした請求項 4に記載のクラ イアント装置。
[9] 暗号化のために分離可能デバイスを用 、ることを特徴とした請求項 5に記載のクラ イアント装置。
[10] 通信手段と演算手段とデータ格納手段を備え、前記通信手段を通じてクライアント と通信可能なバックアップサーバにおいて、
データの識別子とバージョン情報を受信する機能と、
前記受信した識別子を元にデータ格納手段を検索し、データ格納手段に前記識 別子に該当するデータが存在しない場合には初期登録要求を送信するステップと、 暗号ィ匕データと特徴値を受信するステップと、前記受信した識別子とバージョン情報 と暗号化データと特徴値を一緒に前記データ格納手段に格納する機能と、
前記受信した識別子に該当するデータが存在する場合には、該当するデータのバ ーン情報と前記受信したバージョン情報を比較し、前記受信したバージョン情報のほ うが新しい場合には、前記検索したレコード内の特徴値を送信するステップと、暗号 差分データと特徴値を受信するステップと、前記受信した識別子とバージョン情報と 暗号化差分データと特徴値を一緒に前記データ格納手段に格納する機能と、 前記受信した識別しに該当するデータが存在し、該当するデータのバージョン情報 が前記受信したバージョン情報と等 ヽか新 ヽ場合には、更新不要通知を送信す る機能と、
を有することを特徴とするバックアップサーバ。
通信手段とデータ格納手段と演算手段を有す第一のバックアップサーバと、 通信手段とデータ格納手段と演算手段を有す第二のバックアップサーバとが、 ネットワークで接続されて 、るシステムにお 、て
前記第一、第二のバックアップサーバのデータ格納手段には、少なくともデータを 表す識別子と、バージョン情報と、暗号化されたデータまたは暗号化された差分デー タと、差分計算のための特徴値からなるレコードが複数存在し、
前記第一のバックアップサーバが、前記第一のデータ格納手段内に存在する、同 期するデータの識別子に関するバージョン番号のリストを送信するステップと、 前記第二のバックアップサーバが前記バージョン番号のリストを受信するステップと 前記第二のバックアップサーバが前記受信したバージョン番号のリストと、概データ の識別子に関する前記第二のデータ格納手段に存在するバージョン番号のリストと を比較するステップと、 前記第二のバックアップサーバが前記比較結果に基づき必要なレコードを送信す るステップと、前記第二のバックアップサーバが前記比較結果に基づき必要なレコー ドを要求するステップと、
前記第一のバックアップサーバは前記受信したレコードによってデータを更新する ステップと、
前記第一のバックアップサーバは前記受信したレコード要求に応じたレコードを送 信するステップと、
前記第二のバックアップサーバは前記受信したレコードを元にデータを更新するス テツプと
を有するバックアップサーバの同期処理機能を有することを特徴とするバックアップシ ステム。
PCT/JP2004/019634 2004-04-08 2004-12-28 バックアップ方法ならびにバックアップシステム WO2005101209A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004113728A JP2005301464A (ja) 2004-04-08 2004-04-08 バックアップ方法ならびにバックアップシステム
JP2004-113728 2004-04-08

Publications (1)

Publication Number Publication Date
WO2005101209A1 true WO2005101209A1 (ja) 2005-10-27

Family

ID=35150173

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/019634 WO2005101209A1 (ja) 2004-04-08 2004-12-28 バックアップ方法ならびにバックアップシステム

Country Status (2)

Country Link
JP (1) JP2005301464A (ja)
WO (1) WO2005101209A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5029685B2 (ja) * 2007-02-28 2012-09-19 富士通株式会社 バックアップ装置
JP2009181308A (ja) * 2008-01-30 2009-08-13 Hamamatsu Photonics Kk ストレージシステム
JP5455340B2 (ja) * 2008-09-11 2014-03-26 株式会社アール・アイ バックアッププログラム
US8805953B2 (en) * 2009-04-03 2014-08-12 Microsoft Corporation Differential file and system restores from peers and the cloud
CN102609333A (zh) * 2011-11-25 2012-07-25 无锡华御信息技术有限公司 一种加密环境中保证文件备份完整性的系统及方法
TWI494789B (zh) * 2012-10-29 2015-08-01 Walton Advanced Eng Inc A secure data sharing system and implementation method
US11057208B2 (en) * 2016-08-22 2021-07-06 Rakuten, Inc. Management system, management device, management method, program, and non-transitory computer-readable information recording medium
WO2018042469A1 (en) * 2016-09-05 2018-03-08 Hitachi, Ltd. Information processing system
KR102307363B1 (ko) * 2020-10-28 2021-09-30 주식회사 스파이스웨어 딥러닝 기반의 시그니처 코드를 이용한 암호화 및 복호화 방법 및 장치
KR102525749B1 (ko) * 2021-09-24 2023-04-26 주식회사 스파이스웨어 인공지능 양자내성 암호화 방법 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146810A (ja) * 1993-09-27 1995-06-06 Toshiba Corp 計算機システム
WO1995019003A1 (en) * 1994-01-03 1995-07-13 Norton-Lambert Corp. File transfer method and apparatus using hash numbers
US5765173A (en) * 1996-01-11 1998-06-09 Connected Corporation High performance backup via selective file saving which can perform incremental backups and exclude files and uses a changed block signature list
JP2001027963A (ja) * 1999-07-15 2001-01-30 Nippon Telegr & Teleph Corp <Ntt> ファイル暗号化バックアップ方法及びシステム装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146810A (ja) * 1993-09-27 1995-06-06 Toshiba Corp 計算機システム
WO1995019003A1 (en) * 1994-01-03 1995-07-13 Norton-Lambert Corp. File transfer method and apparatus using hash numbers
US5765173A (en) * 1996-01-11 1998-06-09 Connected Corporation High performance backup via selective file saving which can perform incremental backups and exclude files and uses a changed block signature list
JP2001027963A (ja) * 1999-07-15 2001-01-30 Nippon Telegr & Teleph Corp <Ntt> ファイル暗号化バックアップ方法及びシステム装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NAKAMURA M.ET AL: "Off-line Riyo no Shien Kino o Windows95 ga hyojun Sobi.", NIKKEI ELECTRONICS., no. 619, 10 October 1994 (1994-10-10), pages 137 - 141, XP002997488 *

Also Published As

Publication number Publication date
JP2005301464A (ja) 2005-10-27

Similar Documents

Publication Publication Date Title
CN103595730B (zh) 一种密文云存储方法和系统
EP1410202B1 (en) Client-server model for synchronization of files
US8885832B2 (en) Secure peer-to-peer distribution of an updatable keyring
Batten et al. pStore: A secure peer-to-peer backup system
US7650389B2 (en) Wireless system and method for managing logical documents
EP1938192B1 (en) Peer-to-peer distributed backup system for mobile devices
EP2803006B1 (en) Cloud-based distributed data system
EP1975835B1 (en) Secure pre-caching through local superdistribution and key exchange
US7035878B1 (en) Base rolling engine for data transfer and synchronization system
EP1229746B1 (en) Deleting objects from a store of a device
US8824686B1 (en) Cluster key synchronization
US9317506B2 (en) Accelerated data transfer using common prior data segments
US20050015461A1 (en) Distributed file system
EP1489811B1 (en) System and method for managing cached objects using notification bonds
US20070038681A1 (en) System and method of remote storage of data through connection from a server to a client
US20070276836A1 (en) Method for Synchronizing Software Application and User Data for Asynchronous Client-Server and Peer to Peer Computer Networks
TW200525941A (en) Methods, apparatus and computer programs for enhanced access to resources within a network
EP1187421A2 (en) Base rolling engine for data transfer and synchronization system
US9886448B2 (en) Managing downloads of large data sets
WO2005101209A1 (ja) バックアップ方法ならびにバックアップシステム
US20050278552A1 (en) Secure virtual account
CN111565144A (zh) 一种对即时通讯工具的数据分层存储管理方法
EP1387296A1 (en) Distributed file system
CN109325057B (zh) 中间件管理方法、装置、计算机设备以及存储介质
Shi et al. Cegor: An adaptive distributed file system for heterogeneous network environments

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase