JP5756959B2 - Distributed archive system and data archive device - Google Patents

Distributed archive system and data archive device Download PDF

Info

Publication number
JP5756959B2
JP5756959B2 JP2014131566A JP2014131566A JP5756959B2 JP 5756959 B2 JP5756959 B2 JP 5756959B2 JP 2014131566 A JP2014131566 A JP 2014131566A JP 2014131566 A JP2014131566 A JP 2014131566A JP 5756959 B2 JP5756959 B2 JP 5756959B2
Authority
JP
Japan
Prior art keywords
data
random number
archive
storage media
fragment
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
JP2014131566A
Other languages
Japanese (ja)
Other versions
JP2014186750A (en
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.)
GLOBIT CO Ltd
Digital Media Research Institute Inc
Original Assignee
GLOBIT CO Ltd
Digital Media Research Institute Inc
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 GLOBIT CO Ltd, Digital Media Research Institute Inc filed Critical GLOBIT CO Ltd
Priority to JP2014131566A priority Critical patent/JP5756959B2/en
Publication of JP2014186750A publication Critical patent/JP2014186750A/en
Application granted granted Critical
Publication of JP5756959B2 publication Critical patent/JP5756959B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、分散アーカイブ技術に関するものである。   The present invention relates to a distributed archive technology.

分散アーカイブについては、データの可用性・保全の立場から、RAID(Redundant Array Of Inexpensive Disks)という技術が、特にディスクの故障からデータを保護する目的で使われてきた。例えば、RAID1では、データを記録する際に独立な二つのディスクに全く同一の内容を記録し(ミラーリング)、一方のディスクが故障してももう一つのディスクからデータを取り出せるというものである。一方、RAID3では、データをn個のディスクに分散して記録するが、ディスクのうちひとつをパリティを記録する用途に専有し、n個のディスクのうち1個のディスクが故障したとしても、残りのn−1個のディスクから元のデータを復元することを可能とする。   For distributed archives, from the standpoint of data availability and maintenance, a technique called RAID (Redundant Array Of Inexpensive Disks) has been used particularly for the purpose of protecting data from disk failure. For example, in RAID1, when recording data, the same contents are recorded on two independent disks (mirroring), and even if one disk fails, data can be extracted from the other disk. On the other hand, in RAID3, data is distributed and recorded on n disks, but one of the disks is exclusively used for recording parity, and even if one of the n disks fails, the remaining disk remains. The original data can be restored from the (n-1) discs.

しかしながら、クラウドコンピューティングなど、インターネット上のアーカイブサーバにデータを分散記録する場合には、インターネットの故障、サーバの故障、サービス不能攻撃(Denial Of Service Attack)等の理由により、2つ以上のサーバに対して同時にアクセスできなくなる事態も十分想定可能であり、1つのサーバに対するアクセス不能にしか対処できないRAIDの方式では、データの可用性・保全に問題がある。   However, when data is distributed and recorded on an archive server on the Internet such as cloud computing, two or more servers are used due to reasons such as Internet failure, server failure, and denial of service attack (Denial Of Service Attack). On the other hand, it is possible to envisage a situation where access cannot be made at the same time, and the RAID system that can cope with only inaccessibility to one server has a problem in data availability and maintenance.

また、RAIDの方式はアーカイブされるデータの機密性を保証する仕組みを含まないため、他の暗号技術と併用する必要があり、装置構成、実行効率上のオーバーヘッドとなる。   Further, since the RAID system does not include a mechanism for guaranteeing the confidentiality of archived data, it is necessary to use it together with other encryption techniques, resulting in an overhead in apparatus configuration and execution efficiency.

一方、特許第3607700号公報(特許文献1)では、シャミアによる秘密分散法(Adi Shamir、How To Share A Secret、Communications Of ACM、22(11)、612−613頁、1979。非特許文献1)をもちいて、n個のうちk個のサーバにアクセスできればデータの復元が可能となるようにすることで、インターネットへの適用に柔軟性を持たせ、かつ、仮にk−1個のサーバからデータが漏洩したとしても元のデータが復元されないことを理論的に保証する安全性を備えた発明が述べられている。   On the other hand, in Japanese Patent No. 3607700 (Patent Document 1), a secret sharing method by Shamir (Adi Shamir, How To Share A Secret, Communications Of ACM, 22 (11), pages 612-613, 1979). By using k, it is possible to restore data if it is possible to access k servers out of n, so that the application to the Internet is flexible, and data from k-1 servers is temporarily assumed. There has been described an invention with safety that theoretically guarantees that the original data will not be restored even if it leaks.

しかしながら、シャミアの秘密分散法では、計算量の多い冪乗剰余の計算がデータを分割したデータ断片毎に必要となり、また、計算機の能力の制限からデータ断片の長さが高々数千ビットとならざるを得ないことから、数メガバイト、数ギガバイトに及ぶ大きなデータのアーカイブの目的には計算効率の観点から実用的ではない。   However, in Shamir's secret sharing method, calculation of a power residue with a large amount of calculation is required for each data fragment obtained by dividing the data, and the length of the data fragment should be several thousand bits at most because of the limitation of the computer capacity. Inevitably, the purpose of archiving large data of several megabytes and several gigabytes is not practical from the viewpoint of computational efficiency.

一方、秘密のパターンを決めて、そのパターンに従って、繰り返し、データ断片を冗長性を許して分散的にアーカイブする方法も可能ではあるが、安全性を証明することは至難であろう。実際、同一のパターンが繰り返し現出するため、パターン解析によりデータの少なくとも一部を復元することができることが容易に想定できる。安全性が証明できない以上、他の暗号技術と併用する必要があり、前述のように、装置構成、実行効率上のオーバーヘッドとなる。   On the other hand, a method of deciding a secret pattern and repeatedly archiving data fragments in a distributed manner while permitting redundancy is possible according to the pattern, but it is difficult to prove safety. In fact, since the same pattern appears repeatedly, it can be easily assumed that at least a part of the data can be restored by pattern analysis. As long as the security cannot be proved, it is necessary to use it together with other cryptographic techniques, and as described above, it becomes an overhead in apparatus configuration and execution efficiency.

特許第3607700号公報Japanese Patent No. 3607700

Adi Shamir、How To Share A Secret、Communications Of ACM、22(11)、612−613頁、1979Adi Shamir, How To Share A Secret, Communications Of ACM, 22 (11), pages 612-613, 1979

背景技術で述べた従来技術の問題点に鑑み、本発明では、任意に選択されたkとn(0<k≦n)に対して、データはn箇所のサーバ或いは記憶媒体に分散して記録され、以下の可用性と機密性に関わる以下の二項目の要件を満たすとともに、高速なデータアーカイブ・復元処理が可能であり、かつ、機密性に対して理論的な裏付けが与えられる方法を示す。   In view of the problems of the prior art described in the background art, in the present invention, for k and n (0 <k ≦ n) arbitrarily selected, data is distributed and recorded in n servers or storage media. In addition, the following two items related to availability and confidentiality are satisfied, a high-speed data archiving / restoration process is possible, and a theoretical support for confidentiality is given.

n箇所のサーバ或いは記憶媒体のうち、k箇所からアーカイブされたデータを取得することができれば、元のデータを完全に復元することができる。この要件をn:k閾可用性と呼ぶ。   If data archived from k locations among n locations of servers or storage media can be acquired, the original data can be completely restored. This requirement is called n: k threshold availability.

たとえ、攻撃者が、n箇所のサーバ或いは記憶媒体のうちk−1箇所からデータを不正に取得し得たとしても、取得したデータから元のデータを復元することはできない。この要件をn:k閾機密性と呼ぶ。   Even if an attacker can illegally acquire data from k-1 locations of n servers or storage media, the original data cannot be restored from the acquired data. This requirement is called n: k threshold confidentiality.

情報セキュリティ、就中、暗号技術においては、方式に対する有効な攻撃方法が発見されていないという事実をもって方式が安全であると主張することは許されず、一定の数理モデルに基づいて攻撃が不可能である(実際には攻撃の成功確率が極めて小さい)ことを証明し得て始めて、安全性を主張することが許される。その観点で、本発明が解決するべき最重要の課題は、上記二つの要件を満足する方式において、効率的な処理と安全性の証明を両立させる点にある。   In information security, especially cryptography, it is not allowed to claim that a method is safe due to the fact that no effective attack method has been found for the method, and it is impossible to attack based on a certain mathematical model. Only after demonstrating that there is (in fact, a very small probability of successful attack) is allowed to claim security. From this point of view, the most important problem to be solved by the present invention is to achieve both efficient processing and proof of safety in a system that satisfies the above two requirements.

なお、本発明は、上述の課題により限定的に理解されるべきでなく、その内容は特許請求の範囲に規定され、以下に実施例を用いて詳細に説明される。   It should be noted that the present invention should not be understood in a limited manner due to the above-described problems, the contents of which are defined in the claims and will be described in detail below using examples.

本発明の第1の側面によれば、初期状態ではデータ先頭を指し、処理の進行につれてデータ末尾に向かって一方向に動くポインタ手段を保持し、各ポインタ位置から所定の長さのデータ断片を取り出し、当該データ断片を記憶すべき(n−k+1)個の記憶媒体をn個の記憶媒体のうちから独立かつランダムに選び、当該(n−k+1)個の記憶媒体に当該データ断片を重複して記録し、ポインタ位置をデータ断片の長さだけ進め、ポインタ位置がデータ末尾に達するまで前記処理を繰り返す。   According to the first aspect of the present invention, the pointer means that points to the beginning of the data in the initial state and moves in one direction toward the end of the data as the process proceeds, and a data fragment having a predetermined length from each pointer position is held. Taking out (n−k + 1) storage media to store the data fragment independently and randomly from the n storage media, and duplicating the data fragment on the (n−k + 1) storage media. The pointer position is advanced by the length of the data fragment, and the above process is repeated until the pointer position reaches the end of the data.

この構成では、各データ断片は(n−k+1)個の記憶媒体に重複して記録されるので、任意にk個の記憶媒体を選んだ時、少なくとも一つの記憶媒体は当該データ断片を記録している。これにより、n:k閾可用性が保証される。   In this configuration, each data fragment is recorded in duplicate on (n−k + 1) storage media. Therefore, when arbitrarily selecting k storage media, at least one storage medium records the data fragment. ing. This ensures n: k threshold availability.

一方、(k−1)個の記憶媒体を任意に選んだ時、当該データ断片が当該記憶媒体に包含されている確率は、
1−1/(k−1)
と与えられ、従って、データ全体に対して平均で1/(k−1)のデータは欠損することとなり、n:k閾機密性が保証される。
On the other hand, when (k-1) storage media are arbitrarily selected, the probability that the data fragment is included in the storage media is
1-1 / nC (k-1)
Therefore, on average, 1 / n C (k−1) data is lost for the entire data, and n: k threshold confidentiality is guaranteed.

更に、本発明の第1の側面によるデータの安全性は、以下のように詳細に解析され、より強い意味での機密性が保証されることが分かる。実際、記憶媒体から不正に取得したアーカイブデータがカバーするデータ断片の割合が重要なのではなく、アーカイブデータ中のデータ断片が元のデータのどの位置に現れるかを推定できなければ、元のデータを復元することはできない。攻撃者によるこの推定の成功確率を評価するために、以下の考察を行う。   Furthermore, the security of the data according to the first aspect of the present invention is analyzed in detail as follows, and it can be seen that confidentiality in a stronger sense is guaranteed. In fact, the percentage of data fragments covered by archive data that is illegally obtained from a storage medium is not important, and if you cannot estimate where the data fragments in the archive data will appear, It cannot be restored. In order to evaluate the success probability of this estimation by an attacker, the following considerations are made.

Nをデータを分割した最終的なデータ断片の総数とし、mを特定の記憶媒体に含まれるデータ断片の個数とする。各データ断片のアーカイブ先は独立かつランダムに決定されるので、mの値の期待値は下式で与えられる。
m≒N・(n−k+1)/n
aを元のデータ中でのデータ断片の先頭からの順番、jを前記記憶媒体に保持されるアーカイブデータ中でのデータ断片の先頭からの順番とし、
Succ(a,j;N,m)
でアーカイブデータ中でj番目のデータ断片が、元のデータ中でa番目のデータ断片のコピーである確率を表す。この確率は、以下の式で評価される。
Succ(a,j;N,m)
(a−1)(j−1)(N−a)(m−j)
与えられたaに対して、j=[am/(N+1)]の時、Succ(a,j;N,m)は最大値をとる。但し、[x]はxの小数点以下を切り捨てた整数とする。従って、
Succ(a,[am/(N+1)];N,m)
が、アーカイブデータ中で先頭からj番目のデータ断片の元のデータでの位置がaであると推測した時の成功確率の最大値となる(ただし、[α]はαより小さい最大の整数を示すガウス記号である)。
N is the total number of final data fragments obtained by dividing the data, and m is the number of data fragments included in a specific storage medium. Since the archive destination of each data fragment is determined independently and randomly, the expected value of the value of m is given by the following equation.
m≈N · (n−k + 1) / n
a is the order from the beginning of the data fragment in the original data, j is the order from the beginning of the data fragment in the archive data held in the storage medium,
Succ (a, j; N, m)
This represents the probability that the jth data fragment in the archive data is a copy of the ath data fragment in the original data. This probability is evaluated by the following formula.
Succ (a, j; N, m)
= (A-1) C (j-1). (N-a) C (m-j) / N C m
For a given a, when j = [am / (N + 1)], Succ (a, j; N, m) takes the maximum value. However, [x] is an integer obtained by rounding down the decimal part of x. Therefore,
Succ (a, [am / (N + 1)]; N, m)
Is the maximum success probability when the position of the jth data fragment from the beginning in the archive data is assumed to be a (where [α] is the maximum integer smaller than α, Is a Gaussian symbol).

一方、Succ(a,[am/(N+1)];N,m)をスターリングの公式を用いて近似すると、
Succ(a,[am/(N+1)];N,m)≒
(1/π1/2)・(m/N)・[(N−1)/(a−1)(N−a)]1/4
を得る。図1は、この近似式をグラフに図示したものである。aが1或いはNに近い時、つまり、データ断片が元のデータ中において先頭或いは末尾に近い時、攻撃者がj=[am/(N+1)]と推測した時の成功確率は1に近いが、データ断片が先頭或いは末尾から離れると、成功確率は急速に低下することが分かる。則ち、データの先頭及び末尾に近いごく少数のデータ断片に関しては、攻撃者が高い確率でアーカイブデータ中での位置を推定することが可能であるが、その他の大多数のデータ断片では低い確率でしか推定を行えないことを意味している。図2はN=100、m=75の場合にシミュレーションを行った結果のグラフであり、図3はN=1000、m=750の場合にシミュレーションを行った結果のグラフである。どちらのグラフも、理論的に導いた近似式が適切であることを示している。加えて重要な点は、N=1000と極めて小さな数に分割した場合でも、推定の成功確率は5%程度に抑えられている事実である。例えば、1メガバイトのファイルを長さ1バイトのデータ断片に分割してアーカイブする場合、N=1000000となり、推定の成功確率は極めて小さいものとなる。
On the other hand, when Succ (a, [am / (N + 1)]; N, m) is approximated using the Stirling formula,
Succ (a, [am / (N + 1)]; N, m) ≈
(1 / π 1/2 ) · (m / N) · [(N−1) / (a−1) (N−a)] 1/4
Get. FIG. 1 is a graph showing this approximate expression. When a is close to 1 or N, that is, when the data fragment is close to the beginning or end of the original data, the success probability when the attacker assumes j = [am / (N + 1)] is close to 1. It can be seen that the success probability decreases rapidly when the data fragment moves away from the head or tail. In other words, for a very small number of data fragments close to the beginning and end of the data, an attacker can estimate the position in the archive data with a high probability, but with the majority of other data fragments, the probability is low. This means that the estimation can only be done with. FIG. 2 is a graph showing a result of simulation when N = 100 and m = 75, and FIG. 3 is a graph showing a result of simulation when N = 1000 and m = 750. Both graphs show that the theoretically derived approximation is appropriate. In addition, an important point is the fact that the probability of the estimation success is suppressed to about 5% even when the number is divided into a very small number of N = 1000. For example, when a 1-megabyte file is archived by dividing it into 1-byte data fragments, N = 1000000, and the estimated success probability is extremely small.

更に、現実では相当数のデータ断片の位置を推定できなければ、部分的にでもデータを復元したとはいえない。従って、複数のデータ断片に対してその位置を推定しなければならず、全てのデータ断片に対してその位置を正しく推定する成功確率は、データ断片の個数が増えるに従って急速に低下する。   Furthermore, in reality, if the positions of a considerable number of data fragments cannot be estimated, it cannot be said that the data has been partially restored. Therefore, the position of each data fragment must be estimated, and the success probability of correctly estimating the position of all data fragments decreases rapidly as the number of data fragments increases.

本発明の第2の側面によれば、本発明の第1の側面に関連して、各ポインタ位置において、取り出すデータ断片の長さを独立かつランダムに決定することにより、攻撃者の推定をより困難にする。   According to the second aspect of the present invention, in relation to the first aspect of the present invention, the length of the data fragment to be extracted is determined independently and randomly at each pointer position, thereby making it possible to further estimate the attacker. Make it difficult.

本発明の第3の側面によれば、本発明の第1の側面に関連して、各ポインタ位置において、データ断片を(n−k+1)個の記憶媒体に記録しポインタ位置を進めるか、または、データ断片の代わりにランダムに生成した無意味なダミーデータを任意個数の記憶媒体に記録しポインタ位置を変更せずに維持するかを、独立かつランダムに決定することにより、攻撃者の推定をより困難にする。   According to a third aspect of the present invention, in relation to the first aspect of the present invention, at each pointer position, a data fragment is recorded on (n−k + 1) storage media and the pointer position is advanced, or , It is possible to estimate the attacker by independently and randomly determining whether or not to store random dummy data generated randomly instead of data fragments in any number of storage media and keep the pointer position unchanged. Make it more difficult.

本発明の第4の側面によれば、本発明の第2の側面に関連して、各ポインタ位置において、データ断片を(n−k+1)個の記憶媒体に記録しポインタ位置を進めるか、または、データ断片の代わりにランダムに生成した無意味なダミーデータを任意個数の記憶媒体に記録しポインタ位置を変更せずに維持するかを、独立かつランダムに決定することにより、攻撃者の推定をより困難にする。   According to a fourth aspect of the present invention, in relation to the second aspect of the present invention, at each pointer position, a data fragment is recorded on (n−k + 1) storage media and the pointer position is advanced, or , It is possible to estimate the attacker by independently and randomly determining whether or not to store random dummy data generated randomly instead of data fragments in any number of storage media and keep the pointer position unchanged. Make it more difficult.

本発明の第5の側面によれば、本発明の第1の側面において、本発明の第1の側面に関連して、各ファクターをランダムに決定するために、乱数を生成する第一の乱数発生手段を保持し、各ポインタ位置において、第一の乱数発生手段により独立な乱数を生成し、当該乱数から所定の方法で、アーカイブ先記憶媒体を決定する方法を述べている。   According to a fifth aspect of the present invention, in the first aspect of the present invention, in relation to the first aspect of the present invention, a first random number for generating a random number to randomly determine each factor A method is described in which the generation means is held, an independent random number is generated by the first random number generation means at each pointer position, and the archive destination storage medium is determined from the random number by a predetermined method.

本発明の第6の側面によれば、本発明の第4の側面に関連して、各ファクターをランダムに決定するために、乱数を生成する第一の乱数発生手段を保持し、各ポインタ位置において、第一の乱数発生手段により独立な乱数を生成し、当該乱数に基づいて、アーカイブ先記憶媒体を決定し、かつ、当該乱数に基づいて、データ断片の長さ、または、ダミーデータ挿入の有無、または、データ断片の長さおよびダミーデータ挿入の有無の双方を決定する方法を述べている。   According to a sixth aspect of the present invention, in relation to the fourth aspect of the present invention, in order to determine each factor randomly, the first random number generating means for generating a random number is held, and each pointer position The first random number generating means generates an independent random number, determines an archive destination storage medium based on the random number, and determines the length of the data fragment or dummy data insertion based on the random number. It describes a method for determining the presence or absence, or both the length of the data fragment and the presence or absence of dummy data insertion.

本発明の第7の側面によれば、本発明の第6の側面に関連して、第一の乱数発生手段により生成した一連の乱数を記録する鍵記録手段を保持し、当該鍵記録手段に記録された一連の乱数に基づいて、データ断片を取得するべき記憶媒体を決定し、かつ、当該一連の乱数に基づいて、データ断片の長さ、または、ダミーデータの有無、または、データ断片の長さおよびダミーデータ挿入の有無の双方を決定し、元のデータを復元する方法を述べている。   According to a seventh aspect of the present invention, in relation to the sixth aspect of the present invention, a key recording means for recording a series of random numbers generated by the first random number generating means is held, and the key recording means Based on the series of recorded random numbers, the storage medium from which the data fragment is to be acquired is determined, and based on the series of random numbers, the length of the data fragment, the presence or absence of dummy data, or the data fragment A method is described in which both the length and the presence or absence of dummy data are determined and the original data is restored.

本発明の第8の側面によれば、本発明の第5の側面または第6の側面に関連して、乱数を生成する第二の乱数発生手段を保持し、第一の乱数発生手段がシードを入力として任意の個数の乱数を生成する疑似乱数発生アルゴリズムを実現したものであり、アーカイブ開始時において第二の乱数発生手段により生成した乱数をシードとして第一の乱数発生手段に入力し、以降、第一の乱数発生手段が生成した乱数に基づいて分散アーカイブを行う方法を述べている。   According to an eighth aspect of the present invention, in association with the fifth aspect or the sixth aspect of the present invention, the second random number generating means for generating a random number is held, and the first random number generating means is a seed. Is used to generate a random number generation algorithm that generates an arbitrary number of random numbers, and the random number generated by the second random number generation means at the start of archiving is input to the first random number generation means as a seed. Describes a method of performing distributed archiving based on the random number generated by the first random number generation means.

本発明の第9の側面によれば、本発明の第8の側面に関連して、第二の乱数発生手段により生成したシードを記録する鍵記録手段を保持し、当該鍵記録手段に記録されたシードを第一の乱数発生手段に入力し、第一の乱数発生手段が生成する一連の乱数から、データ断片を取得するべき記憶媒体を判断し、元のデータを復元する構成を述べている。   According to the ninth aspect of the present invention, in relation to the eighth aspect of the present invention, the key recording means for recording the seed generated by the second random number generating means is held and recorded on the key recording means. The configuration is described in which the seed is input to the first random number generation means, the storage medium from which the data fragment is obtained is determined from the series of random numbers generated by the first random number generation means, and the original data is restored. .

本発明の第10の側面によれば、本発明の第1〜第9の側面に関連して、データ断片を記録する記憶媒体の一部或いはすべてが、ネットワークを介してアクセスできるサーバであることを特徴とする、インターネットでのアーカイブサービスを想定した構成を述べている。   According to the tenth aspect of the present invention, in relation to the first to ninth aspects of the present invention, a part or all of the storage medium for recording data fragments is a server that can be accessed via a network. Describes a configuration that assumes an Internet archive service.

本発明の第11の側面によれば、本発明の第7または第9の側面に関連して、鍵記録手段をデータの所有者たるユーザが携行可能なデバイス中に設けることで、ユーザは任意のホスト計算機を用いてデータのアーカイブ及び復号処理を行うことが可能となり、ユーザの利便性を高める構成を述べている。   According to the eleventh aspect of the present invention, in connection with the seventh or ninth aspect of the present invention, the key recording means is provided in a device that can be carried by the user who owns the data. A configuration is described in which it is possible to perform data archiving and decryption processing using the host computer, and to improve the convenience for the user.

本発明の第12の側面によれば、本発明の第11の側面に関連して、前記ユーザが携行可能なデバイスがICカード、携帯電話、またはPDA(パーソナルデジタルアシスタント)であることを特徴とする、構成を述べている。   According to a twelfth aspect of the present invention, in relation to the eleventh aspect of the present invention, the device that the user can carry is an IC card, a mobile phone, or a PDA (personal digital assistant). Describes the configuration.

本発明の第13の側面によれば、本発明の第11の側面に関連して、前記ユーザが携行可能なデバイスがマイクロコンピュータを保持し、当該マイクロコンピュータによってデバイス中のデータへのアクセス制御を行うと共に、データのアーカイブ及び復元処理の一部或いは全部を実行することを特徴とする、構成を述べている。   According to a thirteenth aspect of the present invention, in relation to the eleventh aspect of the present invention, the device portable by the user holds a microcomputer, and the microcomputer controls access to data in the device. And a configuration is described in which a part or all of the data archiving and restoring process is executed.

本発明の第14の側面によれば、本発明の第13の側面に関連して、請求項13に記載の発明では、前記ユーザが携行可能なデバイスが、第一の乱数発生手段及び第二の乱数発生手段のいずれか、或いは、両方を保持することを特徴とする、構成を述べている。   According to a fourteenth aspect of the present invention, in relation to the thirteenth aspect of the present invention, in the invention according to the thirteenth aspect, the device that can be carried by the user includes a first random number generation means and a second random number generation means. The configuration is characterized in that either or both of the random number generation means are held.

本発明の第15の側面によれば、本発明の第14の側面に関連して、前記ユーザが携行可能なデバイスが保持するマイクロコンピュータ、及び、乱数発生手段が、耐タンパー特性を有するICチップ中に実装されることを特徴とする、所謂、スマートチップによる構成を述べている。   According to a fifteenth aspect of the present invention, in connection with the fourteenth aspect of the present invention, the microcomputer held by the user-carryable device and the random number generating means are an IC chip having tamper resistance. A configuration by a so-called smart chip, which is characterized by being mounted inside, is described.

本発明の第16の側面によれば、本発明の第1〜第15の側面に関連して、上記の性質を利用して、元のデータの先頭と末尾に小さなサイズのダミーデータを追加することで、元のデータを攻撃者による推定が困難な領域に含まれるようにし、もってデータの気密性を高める方法を述べている。   According to the sixteenth aspect of the present invention, in relation to the first to fifteenth aspects of the present invention, using the above properties, dummy data of a small size is added to the beginning and end of the original data. Thus, a method is described in which the original data is included in a region that is difficult for an attacker to estimate, thereby improving the airtightness of the data.

本発明の第17の側面によれば、アーカイブ対象データをn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせるデータアーカイブ装置において、前記アーカイブ対象データから予め定められた手順で複数のデータ断片を切り出し、かつ、少なくとも切り出した複数のデータ断片が前記アーカイブ対象データのすべてを含むようになす切り出し手段と、前記切り出し手段で切り出された前記複数のデータ断片の各々を前記n個のアーカイブ先記憶手段のうちのn−k+1個(kはn以下の正の整数)のアーカイブ先記憶手段に独立してランダムに関係付ける関係付け手段とを有し、前記切り出し手段で切り出されたデータ断片の各々を、前記関係付け手段でそれぞれ関係付けられたn−k+1個のアーカイブ先記憶手段に重複してアーカイブさせることを特徴とするデータアーカイブ装置が実現される。   According to a seventeenth aspect of the present invention, in a data archiving apparatus for archiving archiving target data to n (n is an integer of 2 or more) archiving destination storage means, a plurality of archiving target data are determined in a predetermined procedure from the archiving target data A data fragment, and at least a plurality of extracted data fragments including all of the archive target data, and each of the plurality of data fragments extracted by the extraction unit Data that is cut out by the cut-out means, having an association means that randomly relates to n−k + 1 (k is a positive integer less than n) archive-destination storage means independently of the archive destination storage means Each fragment is duplicated in n−k + 1 archive destination storage means associated with the association means. Data archive device for causing archived Te is achieved.

本発明の第18の側面によれば、アーカイブ対象データをn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせるためのデータアーカイブ用コンピュータプログラムにおいて、コンピュータを、前記アーカイブ対象データから予め定められた手順で複数のデータ断片を切り出し、かつ、少なくとも切り出した複数のデータ断片が前記アーカイブ対象データのすべてを含むようになす切り出し手段、および、前記切り出し手段で切り出された前記複数のデータ断片の各々を前記n個のアーカイブ先記憶手段のうちの(n−k+1)個(kはn以下の正の整数)のアーカイブ先記憶手段に独立してランダムに関係付ける関係付け手段として機能させ、前記切り出し手段で切り出されたデータ断片の各々を、前記関係付け手段でそれぞれ関係付けられた(n−k+1)個のアーカイブ先記憶手段に重複してアーカイブさせることを特徴とするデータアーカイブ用コンピュータプログラムが実現される。   According to an eighteenth aspect of the present invention, in a data archiving computer program for archiving archive target data to n (n is an integer of 2 or more) archive destination storage means, a computer is stored in the archive target data. A plurality of data fragments cut out in a predetermined procedure, and at least a plurality of data fragments cut out include all of the archive target data, and the plurality of data cut out by the cut-out means Each fragment is made to function as an associating means for independently associating each of the fragments independently with (n−k + 1) (k is a positive integer less than or equal to n) archive destination storage means among the n archive destination storage means. Each of the data fragments cut out by the cut-out means is Data archiving computer program is realized for causing the attached relationship (n-k + 1) archived duplicate pieces of archive destination storage means.

本発明の第19の側面によれば、本発明の第17の側面に従うアーカイブ装置によりn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせているデータを復元する復元装置において、前記関連付け手段が前記データのデータ断片の各々を(n−k+1)個のアーカイブ先記憶手段に独立してランダムに関連付けるのに用いた関連付け情報をそれぞれ取得する関連付け情報取得手段と、前記データ断片の各々について、当該データ断片に前記関連付け情報により関連付けられた(n−k+1)個のアーカイブ先記憶手段のいずれかから当該データ断片を取り出すデータ断片取得手段と、取り出した前記データ断片を、前記データ断片を切り出すための前記予め定められた手順に対応する連結手順で連結する連結手段とを有することを特徴とするデータ復元装置が実現される。   According to a nineteenth aspect of the present invention, in the restoration device for restoring data archived in n (n is an integer of 2 or more) archive destination storage means by the archive device according to the seventeenth aspect of the present invention, Association information obtaining means for obtaining association information used by the association means to randomly associate each of the data fragments of the data independently with (n−k + 1) archive destination storage means; and For each, the data fragment acquisition means for extracting the data fragment from any of the (n−k + 1) archive destination storage means associated with the data fragment by the association information, and the extracted data fragment as the data fragment Connecting means for connecting in a connecting procedure corresponding to the predetermined procedure for cutting out Data recovery device can be realized, wherein.

本発明に第20の側面によれば、本発明の第17の側面に従うアーカイブ装置によりn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせているデータを復元するために用いられるデータ復元用コンピュータプログラムにおいて、コンピュータを、前記関連付け手段が前記データのデータ断片の各々を(n−k+1)個のアーカイブ先記憶手段に独立してランダムに関連付けるのに用いた関連付け情報をそれぞれ取得する関連付け情報取得手段、前記データ断片の各々について、当該データ断片に前記関連付け情報により関連付けられた(n−k+1)個のアーカイブ先記憶手段のいずれかから当該データ断片を取り出すデータ断片取得手段、および、取り出した前記データ断片を、前記データ断片を切り出すための前記予め定められた手順に対応する連結手順で連結する連結手段として機能させるためのデータ復元用コンピュータプログラムが実現される。   According to the twentieth aspect of the present invention, the archive device according to the seventeenth aspect of the present invention is used for restoring data archived in n (n is an integer of 2 or more) archive destination storage means. In the computer program for data restoration, the computer acquires association information used by the association unit to independently associate each of the data fragments of the data independently with (n−k + 1) archive destination storage units. Association information acquisition means, for each of the data fragments, data fragment acquisition means for retrieving the data fragment from any of (n−k + 1) archive destination storage means associated with the data fragment by the association information; and The extracted data fragment is converted into the data fragment to be cut out in advance. Data recovery computer program for functioning as a connecting means for connecting a connecting procedure corresponding to the order obtained procedure is realized.

本発明の第21の側面によれば、アーカイブ対象データをn個(nは2以上の整数)のアーカイブ先記憶手段を具備し、アーカイブ対象データを前記n個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせるデータアーカイブ方法において、切り出し手段が、前記アーカイブ対象データから予め定められた手順で複数のデータ断片を切り出し、かつ、少なくとも切り出した複数のデータ断片が前記アーカイブ対象データのすべてを含むようになすステップと、関係付け手段が、前記切り出し手段で切り出された前記複数のデータ断片の各々を前記n個のアーカイブ先記憶手段のうちの(n−k+1)個(kはn以下の正の整数)のアーカイブ先記憶手段に独立してランダムに関係付けるステップとを有し、前記切り出し手段で切り出されたデータ断片の各々を、前記関係付け手段でそれぞれ関係付けられたn−k+1個のアーカイブ先記憶手段に重複してアーカイブさせることを特徴とするデータアーカイブ方法が実現される。   According to a twenty-first aspect of the present invention, the archive target storage unit includes n archive target data (n is an integer of 2 or more), and the n archive target data (n is an integer of 2 or more). In the data archiving method for archiving in the archive destination storage means, the cutout means cuts out a plurality of data fragments from the archive target data in a predetermined procedure, and at least the plurality of cut out data fragments are all of the archive target data And a correlating unit assigns each of the plurality of data fragments cut out by the cutout unit to (n−k + 1) (k is n or less) out of the n archive destination storage units. And a step of randomly relating to the archive destination storage means independently of the archive destination storage means. Each of issued data fragment, the data archiving method for causing archived duplicate n-k + 1 single archive destination storage means associated respectively with the association unit is realized.

本発明によれば、高速な処理と安全性を両立させる分散アーカイブおよび/またはデータ復元の方式が実現される。   According to the present invention, a distributed archiving and / or data restoration method that achieves both high-speed processing and safety is realized.

本発明の原理的な説明図である。It is a principle explanatory view of the present invention. 本発明の原理のシミュレーション結果の説明図である。It is explanatory drawing of the simulation result of the principle of this invention. 本発明の原理の他のシミュレーション結果の説明図である。It is explanatory drawing of the other simulation result of the principle of this invention. 本発明の第1の実施例の分割鍵を説明する図である。It is a figure explaining the split key of 1st Example of this invention. 上述第1の実施例の分割鍵の個数を説明する図である。It is a figure explaining the number of the division | segmentation keys of the said 1st Example. 上述第1の実施例の全体構成を説明する図である。It is a figure explaining the whole structure of the above-mentioned 1st Example. 上述第1の実施例の機能ブロックを説明する図である。It is a figure explaining the functional block of the above-mentioned 1st Example. 上述第1の実施例の関連付け部の構成例を説明する図である。It is a figure explaining the structural example of the correlation part of the above-mentioned 1st Example. 上述第1の実施例の関連付け部のより好ましい構成例を説明する図である。It is a figure explaining the more preferable structural example of the correlation part of the above-mentioned 1st Example. 上述実施例のデータアーカイブ時の動作例を説明する図である。It is a figure explaining the operation example at the time of the data archive of the above-mentioned Example. 上述実施例のデータアーカイブ時の動作例を説明する図である。It is a figure explaining the operation example at the time of the data archive of the above-mentioned Example. 上述実施例のデータ復元時の動作例を説明する図である。It is a figure explaining the operation example at the time of the data restoration of the above-mentioned Example. 上述実施例のデータ復元時の動作例を説明する図である。It is a figure explaining the operation example at the time of the data restoration of the above-mentioned Example. 本発明の第2の実施例を説明する図である。It is a figure explaining the 2nd Example of this invention. 本発明の第2の実施例を説明する図である。It is a figure explaining the 2nd Example of this invention. 本発明の第3の実施例を説明する図である。It is a figure explaining the 3rd Example of the present invention. 本発明の第3の実施例を説明する図である。It is a figure explaining the 3rd Example of the present invention.

以下、図面等を参照しながら、本発明の実施例について更に詳しく説明する。   Hereinafter, embodiments of the present invention will be described in more detail with reference to the drawings.

[第1の実施例]
本発明の第1の実施例は、本発明の原理的な構成を実装したものである。ここでは、第1の実施例の構成および動作を説明するのに先立って、原理的な説明を行う。
[First embodiment]
The first embodiment of the present invention is an implementation of the basic configuration of the present invention. Here, prior to describing the configuration and operation of the first embodiment, a principle description will be given.

第1の実施例のアーカイブシステム100(図6)においては、n:k閾可用性とn:k閾機密性を実現するために、アーカイブ対象のデータから順次にデータ断片を切り出し、切り出した一つのデータ断片を、n個の記憶媒体のうちの(n−k+1)個の記憶媒体に重複して記録する。n個の記憶媒体からどの(n−k+1)個の記憶媒体を選択するかを特定する情報として、n:k分割鍵を導入する。n:k分割鍵には数字で表される識別子が与えられており、(n−k+1)個の記憶媒体を特定する。n:k分割鍵を独立してランダムに出力することにより、n個の記憶媒体から独立してランダムに特定した(n−k+1)個の記憶媒体を選択してデータ断片を重複して記録する。   In the archive system 100 (FIG. 6) of the first embodiment, in order to realize n: k threshold availability and n: k threshold confidentiality, one piece of data is sequentially cut out from the data to be archived. The data fragment is recorded in duplicate on (n−k + 1) storage media among the n storage media. An n: k split key is introduced as information for specifying which (n−k + 1) storage media are selected from the n storage media. An identifier represented by a number is given to the n: k split key, and (n−k + 1) storage media are specified. By randomly outputting n: k split keys independently, (n−k + 1) storage media that are randomly specified independently from n storage media are selected and data fragments are recorded in duplicate. .

図4は、n=4、k=2の場合の例である。n個の記憶媒体から(n−k+1)個の記憶媒体を選ぶ場合の数は(n−k+1)であり、この場合は(4−2+1)=4個の分割鍵が存在することになるので、1から4までの識別子を与えられた分割鍵d_key1、d_key2、d_key3、d_key4を考える。識別子1を有するd_key1は、4個ある記憶媒体中の1番目(dst_file1)、2番目(dst_file2)及び3番目(dst_file3)の記憶媒体を特定し、この分割鍵が選択されると、対象となるデータ断片はdst_file1、dst_file2及びdst_file3の記憶媒体に記録されることとなる。n:k分割鍵の識別子は乱数発生器を用いて独立してランダムに出力される。 FIG. 4 is an example in the case of n = 4 and k = 2. The number in the case of selecting (n−k + 1) storage media from n storage media is n C (n−k + 1) . In this case, 4 C (4-2 + 1) = 4 split keys exist. Therefore, consider split keys d_key1, d_key2, d_key3, and d_key4 given identifiers 1 to 4. D_key1 having identifier 1 becomes the target when the first (dst_file1), second (dst_file2), and third (dst_file3) storage media in the four storage media are specified and this split key is selected. The data fragment is recorded in the storage media dst_file1, dst_file2, and dst_file3. The identifier of the n: k split key is output independently and randomly using a random number generator.

図5は、n及びkの値が変化した時のn:k分割鍵の個数の変化を示したものである。分割鍵の個数分の識別子を用意し、乱数発生器を用いてこの識別子を独立してランダムに出力する。   FIG. 5 shows the change in the number of n: k split keys when the values of n and k change. Identifiers for the number of split keys are prepared, and these identifiers are output independently and randomly using a random number generator.

図6は、第1の実施例のアーカイブシステム100を全体として示しており、この図において、アーカイブシステム100は、ホスト装置10、複数の記憶媒体20〜20等を通信ネットワーク30を開始して接続して構成される。ホスト装置10は、パーソナルコンピュータ、携帯電話機、パーソナルデジタルアシスタント、情報家電製品等、情報処理機能を有する機器である。ホスト装置10はソース/復元ファイル記憶部10aを具備している。また、ホスト装置10は、インターフェースを介して後述するスマートカード、携帯電話機、パーソナルデジタルアシスタント等の情報デバイスと通信することができる。記憶媒体20〜20は、通信ネットワーク30を介して種々の通信プロトコルで伝送されてきたデータを受信して記憶管理するものであり、例えば、サーバコンピュータの内部または外部記憶装置である。 FIG. 6 shows the archive system 100 of the first embodiment as a whole. In this figure, the archive system 100 starts the communication network 30 with the host device 10 and the plurality of storage media 20 1 to 20 n. Connected. The host device 10 is a device having an information processing function such as a personal computer, a mobile phone, a personal digital assistant, an information home appliance, and the like. The host device 10 includes a source / restoration file storage unit 10a. The host device 10 can communicate with an information device such as a smart card, a mobile phone, or a personal digital assistant, which will be described later, via an interface. The storage media 20 1 to 20 n receive and manage data transmitted through various communication protocols via the communication network 30 and are, for example, internal or external storage devices of the server computer.

ホスト装置10は、例えばコンピュータプログラム10bをインストールすることにより、データのアーカイブおよび復元を制御するアーカイブコントローラ40を実現する。アーカイブコントローラ40の一部はスマートカード等で実現されても良い。コンピュータプログラム10bはデータのアーカイブを行う機能、およびデータの復元を行う機能のいずれか一方のみを実現させても良い。   The host device 10 implements an archive controller 40 that controls data archiving and restoration, for example, by installing a computer program 10b. A part of the archive controller 40 may be realized by a smart card or the like. The computer program 10b may realize only one of the function of archiving data and the function of restoring data.

ホスト装置10のアーカイブコントローラ40は、アーカイブ時には、ソース/復元ファイル記憶部10aに記憶されているアーカイブ対象のソースファイル(単にデータともいう)からデータ断片を順次に取り出して、取り出したデータ断片を、独立してランダムに出力されたn:k分割鍵に応じて、n個の記憶媒体20〜20から独立してランダムに特定した(n−k+1)個の記憶媒体に重複して記録する。また、このアーカイブコントローラ40は、復元時には、アーカイブ時に出力されたn:k分割鍵に応じて、n個の記憶媒体20〜20から独立してランダムに特定した(n−k+1)個の記憶媒体のいずれかアクセス可能なものからデータ断片を取り出し、取り出したデータ断片を追加書き込みして最終的にソースファイルを復元する。 At the time of archiving, the archive controller 40 of the host device 10 sequentially extracts data fragments from the archive target source file (also simply referred to as data) stored in the source / restore file storage unit 10a, According to the n: k split key output randomly at random, recording is performed redundantly on (n−k + 1) storage media that are randomly specified independently from the n storage media 20 1 to 20 n. . Further, at the time of restoration, the archive controller 40 randomly specifies (n−k + 1) pieces of independent number from the n storage media 20 1 to 20 n according to the n: k split key output at the time of archiving. A data fragment is extracted from any accessible storage medium, and the extracted data fragment is additionally written to finally restore the source file.

アーカイブコントローラ40のアーカイブ時および復元時の詳細な動作については以下に説明される具体的な構成に基づいて明らかになる。   Detailed operations of the archive controller 40 during archiving and restoration will be clarified based on the specific configuration described below.

図7は、ホスト装置10が実現するアーカイブコントローラ40の構成を示し、この図において、アーカイブコントローラ40は、ポインタ41、重複分散化部42、データ復元部46を含んで構成される。重複分散化部42は、データ断片抽出部43、関連付け部44、データ断片記憶制御部45を含んで構成される。   FIG. 7 shows the configuration of the archive controller 40 realized by the host device 10. In this figure, the archive controller 40 includes a pointer 41, a duplication / distribution unit 42, and a data restoration unit 46. The duplication / distribution unit 42 includes a data fragment extraction unit 43, an association unit 44, and a data fragment storage control unit 45.

ポインタ41はアーカイブ対象データ(ファイル)の先頭から末尾までポインタ位置をずらしてデータ断片を特定するものである。データ断片抽出部43は、ポインタ41のポインタ位置に基づいて順次にデータ断片を抽出するものである。隣接するデータ断片は直接に隣接し、典型的には、重複しないけれども、一部を重複させてデータ断片を抽出しても良い。関連付け部44は、抽出した1つのデータ断片を、n個の記憶媒体20〜20から独立してランダムに特定した(n−k+1)個の記憶媒体に関連付けるものであり、典型的には、さきのn:k分割鍵を出力する。データ断片記憶制御部45は、抽出した1つのデータ断片を、n個の記憶媒体20〜20から独立してランダムに特定した(n−k+1)個の記憶媒体に重複して記憶させるものである。 The pointer 41 specifies a data fragment by shifting the pointer position from the beginning to the end of the archive target data (file). The data fragment extraction unit 43 sequentially extracts data fragments based on the pointer position of the pointer 41. Adjacent data fragments are directly adjacent and typically do not overlap, but may be extracted with some overlapping. The associating unit 44 associates one extracted data fragment with (n−k + 1) storage media randomly specified independently of the n storage media 20 1 to 20 n. The n: k split key is output. The data fragment storage control unit 45 stores one extracted data fragment in duplicate on (n−k + 1) storage media that are randomly specified independently of the n storage media 20 1 to 20 n. It is.

重複分散化部42は、ポインタ41からのポインタ位置に基づいて、アーカイブ対象データからデータ断片を順次に抽出して、この順次に抽出したデータ断片を、n個の記憶媒体20〜20中の独立してランダムに特定した(n−k+1)個の記憶媒体に重複して記憶していく。データ中のすべてのデータ断片を記憶媒体20〜20に重複した態様で分散記憶させ終わると、典型的にはポインタ位置がデータの末尾に到達したときにアーカイブ動作が終了する。 Based on the pointer position from the pointer 41, the duplication / distribution unit 42 sequentially extracts data fragments from the archive target data, and the sequentially extracted data fragments are stored in the n storage media 20 1 to 20 n . Are redundantly stored in (n−k + 1) storage media specified at random independently. When in a manner duplicate all the data fragments in the data in the storage medium 20 1 to 20 n finished dispersed storage, typically archive operation ends when the pointer position reaches the end of the data is.

なお、データ断片の記憶媒体20〜20への書き込みは通信ネットワーク等を介して直接行われるけれども、記憶媒体20〜20に対応させてホスト装置10またはその記憶手段にそれぞれの対応する記憶位置(ファイル)を設けてデータ断片を追加書き込みしていき、最後のデータ断片の追加書き込みが終了した後に、それぞれの記憶位置にあるファイルを記憶媒体20〜20に伝送するようにしても良い。 Although the writing of data fragments to the storage media 20 1 to 20 n is performed directly via a communication network or the like, the data fragments correspond to the host device 10 or its storage means corresponding to the storage media 20 1 to 20 n. A storage location (file) is provided and additional data fragments are written, and after the final writing of the last data fragment is completed, the files at the respective storage locations are transmitted to the storage media 20 1 to 20 n. Also good.

データ復元部46は、ポインタ41からのポインタ位置に基づいて関連付け部44からn:k分割鍵を取得して、n個の記憶媒体20〜20中で、当該ポインタ位置のデータ断片を記憶する(n−k+1)個の記憶媒体を特定し、これらのいずれの1つまたは複数の記憶媒体からデータセグメントを抽出してソース/復元ファイル記憶部10aの復元途中のファイルに連結書き込みする。データ復元部46は、n個の記憶媒体20〜20の復元データ断片位置も管理している。 The data restoration unit 46 acquires the n: k split key from the association unit 44 based on the pointer position from the pointer 41 and stores the data fragment at the pointer position in the n storage media 20 1 to 20 n. (N−k + 1) storage media are identified, data segments are extracted from any one or more of these storage media, and concatenated and written to the file being restored in the source / restoration file storage unit 10a. The data restoration unit 46 also manages the restored data fragment positions of the n storage media 20 1 to 20 n .

図8は、関連付け部44の構成例を示しており、この図において、関連付け部44は、乱数発生器441、および鍵記憶部442を含んで構成される。乱数発生器441が、さきに説明したn:k分割鍵を出力し、これに基づいて重複分散化部42のデータ断片記憶制御部45がデータ断片をn個の記憶媒体20〜20中の独立してランダムに特定した(n−k+1)個の記憶媒体に重複して記憶していく。また、鍵記憶部442は、乱数発生器441から出力されたn:k分割鍵を時系列を維持して記憶管理し、データ復元時にデータ復元部46に順次に供給する。データ復元部46は鍵記憶部442からのn:k分割鍵に基づいてデータ断片の取得先を決定してデータ復元を行う。 FIG. 8 shows a configuration example of the associating unit 44. In this figure, the associating unit 44 includes a random number generator 441 and a key storage unit 442. The random number generator 441 outputs the n: k split key described above, and based on this, the data fragment storage control unit 45 of the duplication / distribution unit 42 stores the data fragments in n storage media 20 1 to 20 n . Are redundantly stored in (n−k + 1) storage media specified at random independently. Also, the key storage unit 442 stores and manages the n: k split key output from the random number generator 441 in a time series, and sequentially supplies the data to the data recovery unit 46 at the time of data recovery. The data restoration unit 46 performs data restoration by determining the acquisition destination of the data fragment based on the n: k split key from the key storage unit 442.

図8の関連付け部44は、典型的には、ユーザが携行可能なスマートカード(ICカード)、携帯電話機、パーソナルデジタルアシスタント(PDA)等の携行可能なデバイスにより実装されるがこれに限定されない。携行可能なデバイスはマイクロコンピュータおよび乱数発生手段を実現し、これらが、好ましくは、耐タンパー性を有するICチップ中に実装される。   The association unit 44 in FIG. 8 is typically implemented by a portable device such as a smart card (IC card), a mobile phone, and a personal digital assistant (PDA) that can be carried by the user, but is not limited thereto. The portable device realizes a microcomputer and random number generating means, which are preferably mounted in an IC chip having tamper resistance.

図9は、関連付け部44の好ましい構成例を示しており、この図において、関連付け部44は、シード用乱数発生器443、シードレジスタ444、鍵用乱数発生器445、管理テーブル記憶部446等を含んで構成される。シード用乱数発生器443は、疑似乱数発生アルゴリズムにより乱数を発生する鍵用乱数発生器445にシードとして乱数を供給する。シードはシードレジスタ444に保持され、また管理テーブル記憶部446にファイルIDとともに記憶管理される。鍵用乱数発生器445はシードに基づいた一連の乱数列を出力し、これに基づいてデータのアーカイブが行われる。また、アーカイブに用いられたシードはアーカイブ対象データのファイルIDと関連付けて管理テーブル記憶部446に記憶管理され、データ復元時に復元対象データのファイルIDに基づいてシードが管理テーブル記憶部446から取り出され、それを用いて鍵用乱数発生器445がアーカイブ時と同一の乱数列を出力してデータ復元に用いられる。   FIG. 9 shows a preferred configuration example of the associating unit 44. In this figure, the associating unit 44 includes a seed random number generator 443, a seed register 444, a key random number generator 445, a management table storage unit 446, and the like. Consists of including. The seed random number generator 443 supplies a random number as a seed to the key random number generator 445 that generates a random number by a pseudo random number generation algorithm. The seed is held in the seed register 444 and stored and managed together with the file ID in the management table storage unit 446. The key random number generator 445 outputs a series of random numbers based on the seed, and based on this, data is archived. The seed used for archiving is stored and managed in the management table storage unit 446 in association with the file ID of the archive target data, and the seed is retrieved from the management table storage unit 446 based on the file ID of the recovery target data at the time of data restoration. Using this, the key random number generator 445 outputs the same random number sequence as that at the time of archiving and is used for data restoration.

図9の関連付け部44も、典型的には、ユーザが携行可能なスマートカード(ICカード)等の携行可能なデバイスにより実装されるがこれに限定されない。   The association unit 44 of FIG. 9 is also typically implemented by a portable device such as a smart card (IC card) that can be carried by the user, but is not limited thereto.

つぎに図9の関連付け部44に関連して第1の実施例のアーカイブシステム100の動作例を説明する。なお、ここでは関連付け部44はスマートカードにより実装されているものとする。   Next, an operation example of the archive system 100 of the first embodiment will be described with reference to the associating unit 44 of FIG. Here, it is assumed that the associating unit 44 is implemented by a smart card.

図10はスマートカードの処理例の手順を示す。   FIG. 10 shows the procedure of a smart card processing example.

[ステップS01]:分割するデータファイルを特定する識別子crr_fidをホスト装置10側から受け取る。
[ステップS02]:シード用乱数発生器443(乱数発生プログラム)を呼び出し、鍵用乱数発生器445(乱数発生プログラム)のためのシードcrr_seedを生成する。
[ステップS03]:シードcrr_seedを、データファイルの識別子crr_fidと紐づけて、スマートカード内の管理テーブル記憶部446に書き込む。
[ステップS04]:シードcrr_seedを入力として鍵用乱数発生器445を起動する。
[ステップS05]:鍵用乱数発生器445をスタンバイ状態にしてホスト装置10からのシグナルを待ち受ける。
[ステップS06]:ホスト装置10側からシグナルを受け取る。シグナルが処理終了を指示している場合は、鍵用乱数発生器445を終了して、処理を終了する。シグナルが鍵識別子要求である場合には、鍵用乱数発生器445を呼び出し、乱数を生成させる。乱数は、n:k分割鍵の識別子として用いられるため、1から(n−k+1)までの自然数をランダムにとるように生成される。
[ステップS07]:鍵用乱数発生器445が生成した乱数を、n:k分割鍵の識別子としてホスト装置10に出力する。
[ステップS08]:ステップS05に戻り、ホスト装置10からのシグナルを待ち受ける。
[Step S01]: An identifier crr_fid for specifying a data file to be divided is received from the host device 10 side.
[Step S02]: The seed random number generator 443 (random number generation program) is called to generate a seed crr_seed for the key random number generator 445 (random number generation program).
[Step S03]: Seed crr_seed is associated with data file identifier crr_fid and written to management table storage unit 446 in the smart card.
[Step S04]: The key random number generator 445 is activated with the seed crr_seed as an input.
[Step S05]: The key random number generator 445 is set in a standby state to wait for a signal from the host device 10.
[Step S06]: A signal is received from the host device 10 side. If the signal indicates the end of the process, the key random number generator 445 is terminated and the process is terminated. If the signal is a key identifier request, the key random number generator 445 is called to generate a random number. Since the random number is used as an identifier of the n: k partition key, the random number is generated so that a natural number from 1 to n C (n−k + 1) is taken at random.
[Step S07]: The random number generated by the key random number generator 445 is output to the host device 10 as an identifier of the n: k split key.
[Step S08]: Return to Step S05 and wait for a signal from the host device 10.

図11は、ホスト装置10側のアーカイブシステムの動作例の手順を説明する。なお、図11に示すように、図9の関連付け部44に対応して、ホスト装置10のデータ断片記憶制御部45は例えば宛先ファイル決定部451および追加書き込み部452を含んで構成される。宛先ファイル決定部451はランダムに生成された分割鍵に基づいて例えば図4に示すテーブルを宛先テーブル記憶部451aを参照して取得しランダムに選択された(n−k+1)個(この例では4個)の記憶媒体を特定する。追加書き込み部452はこれら(n−k+1)個の記憶媒体にデータ断片を追記する。以下詳細に説明する。   FIG. 11 illustrates a procedure of an operation example of the archive system on the host device 10 side. As shown in FIG. 11, corresponding to the associating unit 44 in FIG. 9, the data fragment storage control unit 45 of the host device 10 includes, for example, a destination file determining unit 451 and an additional writing unit 452. The destination file determination unit 451 obtains, for example, the table shown in FIG. 4 based on the randomly generated split key with reference to the destination table storage unit 451a and is randomly selected (n−k + 1) (4 in this example). Number of storage media. The additional writing unit 452 appends data fragments to these (n−k + 1) storage media. This will be described in detail below.

[ステップS11]:アーカイブを行うデータファイルの識別子crr_fidをスマートカードに送付する。
[ステップS12]:鍵識別子要求のシグナルをスマートカードに送付する。
[ステップS13]:n:k分割鍵の識別子をスマートカードから受け取り、テーブル参照等の手段を用いて、識別子からデータ断片を記録する先の記憶媒体を特定する。図中では、識別子ipを受け取って、dst_file2及びdst_file3を記録先の記憶媒体として特定している。
[ステップS14]:アーカイブ元のデータファイル(src_file)のポインタが指している位置から、所定の長さのデータ断片(fgmntp)を取り出し、ポインタを次に取り出すデータ断片の先頭に進める。
[ステップS15]:取り出したデータ断片のコピーを、特定した記憶媒体(図11ではdst_file2及びdst_file3)の末尾に追記する。
[ステップS16]:ポインターがデータファイルの末尾を指示している場合にはスマートカードに処理終了のシグナルを送り、まだアーカイブするべきデータが残っている場合にはステップS12に戻り、鍵識別子要求のシグナルをスマートカードに送付する。
[Step S11]: The identifier crr_fid of the data file to be archived is sent to the smart card.
[Step S12]: A key identifier request signal is sent to the smart card.
[Step S13]: The identifier of the n: k split key is received from the smart card, and the storage medium to which the data fragment is recorded is specified from the identifier using means such as table reference. In the figure, the identifier ip is received, and dst_file2 and dst_file3 are specified as recording destination storage media.
[Step S14]: A data fragment (fgmntp) having a predetermined length is extracted from the position pointed to by the pointer of the archive source data file (src_file), and the pointer is advanced to the head of the next data fragment to be extracted.
[Step S15]: A copy of the extracted data fragment is added to the end of the specified storage medium (dst_file2 and dst_file3 in FIG. 11).
[Step S16]: If the pointer points to the end of the data file, a signal indicating the end of the process is sent to the smart card. If there is still data to be archived, the process returns to Step S12, and the key identifier request Send the signal to the smart card.

図12及び図13は、データの復元処理例を説明するためのものである。
図12は、スマートカードにおける復元処理例の手順を示す。
12 and 13 are for explaining an example of data restoration processing.
FIG. 12 shows a procedure of a restoration processing example in the smart card.

[ステップS21]:ホスト装置10からデータファイルの識別子crr_fidを受け取る。
[ステップS22]:管理テーブル記憶部446中のテーブルを参照し、識別子crr_fidと紐づけられたシードcrr_seedを取得する。
[ステップS23]:シードcrr_seedを入力として鍵用乱数発生器445を起動する。
[ステップS24]:鍵用乱数発生器445をスタンバイ状態にしてホスト装置10からのシグナルを待ち受ける。
[ステップS25]:ホスト装置10側からシグナルを受け取る。シグナルが処理終了を指示している場合は、鍵用乱数発生器445を終了して、処理を終了する。シグナルが鍵識別子要求である場合には、鍵用乱数発生器445を呼び出し、乱数を生成させる。乱数は、n:k分割鍵の識別子として用いられるため、1から(n−k+1)までの自然数をランダムにとるように生成される。
[ステップS26]:鍵用乱数発生器445が生成した乱数を、n:k分割鍵の識別子としてホスト装置10に出力する。
[ステップS27]:ステップS22に戻り、ホスト装置10からのシグナルを待ち受ける。
[Step S21]: The identifier crr_fid of the data file is received from the host device 10.
[Step S22]: The table in the management table storage unit 446 is referred to, and the seed crr_seed associated with the identifier crr_fid is acquired.
[Step S23]: The key random number generator 445 is activated with the seed crr_seed as an input.
[Step S24]: The key random number generator 445 is set in a standby state to wait for a signal from the host device 10.
[Step S25]: A signal is received from the host device 10 side. If the signal indicates the end of the process, the key random number generator 445 is terminated and the process is terminated. If the signal is a key identifier request, the key random number generator 445 is called to generate a random number. Since the random number is used as an identifier of the n: k partition key, the random number is generated so that a natural number from 1 to n C (n−k + 1) is taken at random.
[Step S26]: The random number generated by the key random number generator 445 is output to the host device 10 as an identifier of the n: k split key.
[Step S27]: Return to step S22 and wait for a signal from the host device 10.

図13は、ホスト装置10側のアーカイブシステムの動作例の手順を示す。   FIG. 13 shows a procedure of an operation example of the archive system on the host device 10 side.

[ステップS31]:復元対象のデータファイルの識別子crr_fidをスマートカードに送付する。
[ステップS32]:鍵識別子要求のシグナルをスマートカードに送付する。
[ステップS33]:n:k分割鍵の識別子をスマートカードから受け取り、テーブル参照等の手段を用いて、識別子からデータ断片を取得する先の記憶媒体を特定する。図中では、識別子ipを受け取って、dst_file2及びdst_file3を記録先の記憶媒体として特定している。
[ステップS34]:特定された全ての記憶媒体(図9ではdst_file2及びdst_file3)から先頭のデータ断片を取り去る。データ断片を取り去った後の各記憶手段の先頭位置はそれぞれチェックポイントとして管理できる。
[ステップS35]:復元するデータファイル(src_file)の末尾に、ステップS34で取り出したデータ断片を追記する。
[ステップS36]:(すべての記憶媒体にデータが残っていない場合にはスマートカードに処理終了のシグナルを送り、まだ復元するべきデータが残っている場合にはステップS32に戻り、鍵識別子要求のシグナルをスマートカードに送付する。
以上で第1の実施例の説明を終了する。
[Step S31]: The identifier crr_fid of the data file to be restored is sent to the smart card.
[Step S32]: A key identifier request signal is sent to the smart card.
[Step S33]: The identifier of the n: k split key is received from the smart card, and the storage medium to which the data fragment is acquired from the identifier is specified using means such as table reference. In the figure, the identifier ip is received, and dst_file2 and dst_file3 are specified as recording destination storage media.
[Step S34]: The head data fragment is removed from all the specified storage media (dst_file2 and dst_file3 in FIG. 9). The head position of each storage means after removing the data fragment can be managed as a checkpoint.
[Step S35]: The data fragment extracted in step S34 is added to the end of the data file (src_file) to be restored.
[Step S36]: (When there is no data remaining in all the storage media, a signal indicating the end of processing is sent to the smart card, and when there is still data to be restored, the process returns to Step S32, and the key identifier request Send the signal to the smart card.
This is the end of the description of the first embodiment.

[第2の実施例]
つぎに本発明の第2の実施例のアーカイブシステムについて説明する。第2の実施例では、データ断片の長さを都度ランダムに定めることにより、安全性を向上させる方法を示す。
[Second Embodiment]
Next, an archive system according to a second embodiment of the present invention will be described. The second embodiment shows a method for improving safety by randomly determining the length of the data fragment each time.

第1の実施例との相違は、鍵用乱数発生器445からの出力が、分割鍵の識別子に加えて、データ断片の長さを決定する点にある。具体的には、鍵用乱数発生器445の出力は、分割鍵を指定する自然数ipとデータ断片の長さを指定する自然数bpとのペアとなる。   The difference from the first embodiment is that the output from the key random number generator 445 determines the length of the data fragment in addition to the identifier of the split key. Specifically, the output of the key random number generator 445 is a pair of a natural number ip specifying the split key and a natural number bp specifying the length of the data fragment.

図14と図15は、第2の実施例におけるスマートカードとホスト装置10のアーカイブシステムにおける処理例を説明する。   14 and 15 illustrate a processing example in the archive system of the smart card and the host device 10 in the second embodiment.

図14は、スマートカードの処理例の手順を示す。   FIG. 14 shows the procedure of a smart card processing example.

[ステップS41]:分割するデータファイルを特定する識別子crr_fidをホスト装置10側からスマートカードに受け取る。
[ステップS42]:シード用乱数発生器443を呼び出し、鍵用乱数発生器445のためのシードcrr_seedを生成する。
[ステップS43]:シードcrr_seedを、データファイルの識別子crr_fidと紐づけて、スマートカード内の管理テーブル記憶部446のテーブルに書き込む。
[ステップS44]:シードcrr_seedを入力として鍵用乱数発生器445を起動する。
[ステップS45]:鍵用乱数発生器445をスタンバイ状態にしてホスト装置10からのシグナルを待ち受ける。
[ステップS46]:ホスト装置10側からシグナルを受け取る。シグナルが処理終了を指示している場合は、鍵用乱数発生器445を終了して、処理を終了する。シグナルが鍵識別子要求である場合には、鍵用乱数発生器445を呼び出し、乱数を生成させる。乱数は、n:k分割鍵の識別子ipとデータ断片の長さ(ビット長)bpを表すため、ランダムに生成された1から(n−k+1)までの自然数と長さを表す自然数のペアである。2つの疑似乱数発生手段を用いてip、bpを個別に生成しても良い。
[ステップS47]:鍵用乱数発生器445が生成した乱数を、n:k分割鍵の識別子とデータ断片の長さとしてホスト装置10に出力する。
[ステップS48]:ステップS45に戻り、ホスト装置10からのシグナルを待ち受ける。
[Step S41]: An identifier crr_fid for specifying a data file to be divided is received from the host device 10 side to the smart card.
[Step S42]: The seed random number generator 443 is called to generate a seed crr_seed for the key random number generator 445.
[Step S43]: The seed crr_seed is associated with the data file identifier crr_fid and written to the table of the management table storage unit 446 in the smart card.
[Step S44]: The key random number generator 445 is activated with the seed crr_seed as an input.
[Step S45]: The key random number generator 445 is set in a standby state and waits for a signal from the host device 10.
[Step S46]: A signal is received from the host device 10 side. If the signal indicates the end of the process, the key random number generator 445 is terminated and the process is terminated. If the signal is a key identifier request, the key random number generator 445 is called to generate a random number. Since the random number represents the identifier ip of the n: k partitioning key and the length (bit length) bp of the data fragment, the random number is a naturally generated natural number from 1 to n C (n−k + 1) and a natural number representing the length. It is a pair. You may generate ip and bp separately using two pseudo random number generation means.
[Step S47]: The random number generated by the key random number generator 445 is output to the host device 10 as the identifier of the n: k split key and the length of the data fragment.
[Step S48]: Return to Step S45 and wait for a signal from the host device 10.

図15は、ホスト装置10側のアーカイブシステム動作例の手順を説明する。   FIG. 15 illustrates a procedure of an operation example of the archive system on the host device 10 side.

[ステップS51]:アーカイブを行うデータファイルの識別子crr_fidをスマートカードに送付する。
[ステップS52]:鍵識別子要求のシグナルをスマートカードに送付する。
[ステップS53]:n:k分割鍵の識別子とデータ断片の長さをスマートカードから受け取り、テーブル参照等の手段を用いて、識別子からデータ断片を記録する先の記憶媒体を特定する。図中では、識別子ipとデータ断片の長さbpとを受け取って、ipからdst_file2及びdst_file3を記録先の記憶媒体として特定している。
[ステップS54]:アーカイブ元のデータファイル(src_file)のポインターが指している位置から、指定されたbpと等しい長さのデータ断片(fgmntp)を取り出し、ポインター位置を次に取り出すデータ断片の先頭に進める。
[ステップS55]:取り出したデータ断片のコピーを、特定した記憶媒体dst_file2及びdst_file3の末尾に追記する。
[ステップS56]:ポインターがデータファイルの末尾を指示している場合にはスマートカードに処理終了のシグナルを送り、まだアーカイブするべきデータが残っている場合にはステップS52に戻り、鍵識別子要求のシグナルをスマートカードに送付する。
[Step S51]: The identifier crr_fid of the data file to be archived is sent to the smart card.
[Step S52]: A key identifier request signal is sent to the smart card.
[Step S53]: The identifier of the n: k split key and the length of the data fragment are received from the smart card, and the storage medium to which the data fragment is recorded is specified from the identifier using means such as table reference. In the figure, an identifier ip and a data fragment length bp are received, and dst_file2 and dst_file3 are specified as recording storage media from ip.
[Step S54]: A data fragment (fgmntp) having a length equal to the specified bp is extracted from the position pointed to by the pointer of the data file (src_file) of the archive source, and the pointer position is added to the head of the next data fragment to be extracted. Proceed.
[Step S55]: A copy of the extracted data fragment is added to the end of the specified storage media dst_file2 and dst_file3.
[Step S56]: If the pointer points to the end of the data file, a signal indicating the end of the process is sent to the smart card. If there is still data to be archived, the process returns to step S52, and the key identifier request is received. Send the signal to the smart card.

元のデータファイルの復元の手順は、上記アーカイブ手順の逆手順であり、第1の実施例の説明からも容易に想定できるため、記述を省略する。
以上で第2の実施例の説明を終了する。
The procedure for restoring the original data file is the reverse procedure of the above archiving procedure, and can be easily assumed from the description of the first embodiment, so that the description is omitted.
This is the end of the description of the second embodiment.

[第3の実施例]
つぎに本発明の第3の実施例について説明する。第3の実施例では、ランダムなタイミングでダミーデータをアーカイブすることにより、安全性をより高める方法を示す。
[Third embodiment]
Next, a third embodiment of the present invention will be described. The third embodiment shows a method for further improving safety by archiving dummy data at random timing.

第3の実施例との第1の実施例との相違は、鍵用乱数発生器445からの出力が、分割鍵の識別子に加えて、ダミーデータを挿入するか否かを決定する点にある。具体的には、鍵用乱数発生器445の出力は、分割鍵の識別子を指定する自然数ipとダミーデータの挿入を指定する論理値rpとのペアとなる。論理値の値は真または偽であり、その確率分布は一様とは限らない(真・偽が出力される確率は必ずしも1/2ではない)。   The difference between the third embodiment and the first embodiment is that the output from the key random number generator 445 determines whether to insert dummy data in addition to the identifier of the split key. . Specifically, the output of the key random number generator 445 is a pair of a natural number ip that specifies the identifier of the split key and a logical value rp that specifies the insertion of dummy data. The logical value is true or false, and the probability distribution is not always uniform (the probability that true / false is output is not necessarily ½).

図16は、スマートカードの処理例の手順を示す。   FIG. 16 shows a procedure of a smart card processing example.

[ステップS61]:分割するデータファイルを特定する識別子crr_fidをホスト装置10側からスマートカードに受け取る。
[ステップS62]:シード用乱数発生器443を呼び出し、鍵用乱数発生器445のためのシードcrr_seedを生成する。
[ステップS63]:シードcrr_seedを、データファイルの識別子crr_fidと紐づけて、スマートカード内の管理テーブル記憶部446のテーブルに書き込む。
[ステップS64]:シードcrr_seedを入力として鍵用乱数発生器445を起動する。
[ステップS65]:鍵用乱数発生器445をスタンバイ状態にしてホスト装置10からのシグナルを待ち受ける。
[ステップS66]:ホスト装置10側からシグナルを受け取る。シグナルが処理終了を指示している場合は、鍵用乱数発生器445を終了して、処理を終了する。シグナルが鍵識別子要求である場合には、鍵用乱数発生器445を呼び出し、乱数を生成させる。乱数は、n:k分割鍵の識別子ipとダミーデータの挿入を指定する論理値rpとのペアである。
[ステップS67]:鍵用乱数発生器445が生成した乱数を、n:k分割鍵の識別子とデータ断片の長さとしてホスト装置10に出力する。
[ステップS68]:ステップS65に戻り、ホスト装置10からのシグナルを待ち受ける。
[Step S61]: An identifier crr_fid for specifying a data file to be divided is received from the host device 10 side to the smart card.
[Step S62]: The seed random number generator 443 is called to generate a seed crr_seed for the key random number generator 445.
[Step S63]: Seed crr_seed is associated with data file identifier crr_fid and written to the table of management table storage unit 446 in the smart card.
[Step S64]: The key random number generator 445 is activated with the seed crr_seed as an input.
[Step S65]: The key random number generator 445 is set in a standby state and waits for a signal from the host device 10.
[Step S66]: A signal is received from the host device 10 side. If the signal indicates the end of the process, the key random number generator 445 is terminated and the process is terminated. If the signal is a key identifier request, the key random number generator 445 is called to generate a random number. A random number is a pair of an identifier ip of an n: k partition key and a logical value rp that specifies insertion of dummy data.
[Step S67]: The random number generated by the key random number generator 445 is output to the host device 10 as the identifier of the n: k split key and the length of the data fragment.
[Step S68]: Return to Step S65 and wait for a signal from the host device 10.

図17では、ホスト装置10側のアーカイブプログラムの処理例の手順を示す。以下、手順に番号をつけて説明する。   FIG. 17 shows a procedure of a processing example of the archive program on the host device 10 side. Hereinafter, the procedure will be described with a number.

[ステップS71]:アーカイブを行うデータファイルの識別子crr_fidをスマートカードに送付する。
[ステップS72]:鍵識別子要求のシグナルをスマートカードに送付する。
[ステップS73]:n:k分割鍵の識別子とダミーデータの挿入を指定する論理値をスマートカードから受け取り、テーブル参照等の手段を用いて、識別子からデータ断片を記録する先の記憶媒体を特定する。図中では、識別子ipと論理値rpとを受け取って、ipからdst_file2及びdst_file3を記録先の記憶媒体として特定している。
[ステップS74]:rpの値が真の場合には、ダミーデータをランダムに生成する。
[ステップS75]:rpの値が偽の場合には、アーカイブ元のデータファイル(src_file)のポインタが指している位置から、所定の長さのデータ断片(fgmntp)を取り出し、ポインタを次に取り出すデータ断片の先頭に進める。
[ステップS76]:rpの値に応じて、生成したダミーデータ、或いは、取り出したデータ断片のコピーを、特定した記憶媒体(図17ではdst_file2及びdst_file3)の末尾に追記する。
[ステップS77]:ポインタがデータファイルの末尾を指示している場合にはスマートカードに処理終了のシグナルを送り、まだアーカイブするべきデータが残っている場合にはステップS72に戻り、鍵識別子要求のシグナルをスマートカードに送付する。
[Step S71]: The identifier crr_fid of the data file to be archived is sent to the smart card.
[Step S72]: A key identifier request signal is sent to the smart card.
[Step S73]: An n: k partition key identifier and a logical value designating dummy data insertion are received from a smart card, and a storage medium to which a data fragment is recorded is identified from the identifier using means such as table reference. To do. In the figure, an identifier ip and a logical value rp are received, and dst_file2 and dst_file3 are specified as recording destination storage media from ip.
[Step S74]: If the value of rp is true, dummy data is randomly generated.
[Step S75]: If the value of rp is false, a data fragment (fgmntp) having a predetermined length is extracted from the position pointed to by the pointer of the archive source data file (src_file), and the pointer is extracted next. Advance to the beginning of the data fragment.
[Step S76]: Depending on the value of rp, the generated dummy data or a copy of the extracted data fragment is added to the end of the specified storage medium (dst_file2 and dst_file3 in FIG. 17).
[Step S77]: If the pointer points to the end of the data file, a signal indicating the end of processing is sent to the smart card. If there is still data to be archived, the process returns to step S72, and the key identifier request is received. Send the signal to the smart card.

データの復元時のスマートカード及びホスト側のアーカイブシステムの処理は、第1の実施例の説明から容易に推定できるので、ここでは説明を省略する。
以上で本発明の実施例の説明を終了する。
Since the processing of the smart card and the host side archive system at the time of data restoration can be easily estimated from the description of the first embodiment, the description is omitted here.
This is the end of the description of the embodiment of the present invention.

なお、本発明は上述の実施例に限定されず種々変更が可能である。また、各実施例の特徴を組みあわせてもよい。例えば、実施例2のデータ断片の長さを可変長にしつつダミーデータとデータ断片の切り替えとを行うようにしても良い。また、データ断片の切り出しは所定のルールで定められておればよく、データの先頭から末尾まで順番に取り出す態様に限定されない。最終的なデータ断片の集合がデータをすべてカバーするものであればどのようなものでもよい。データ断片同士が一部で重複しても良い。アーカイブ対象のデータの先頭および末端にダミーデータを付加しても良い。アーカイブ対象データを複数の可搬性の記憶媒体にローカルで重複記憶させ、そののち、異なるリモートのサイトに物流手段で搬出しても良い。   In addition, this invention is not limited to the above-mentioned Example, A various change is possible. Moreover, you may combine the characteristic of each Example. For example, the dummy data and the data fragment may be switched while the length of the data fragment of the second embodiment is made variable. In addition, the data fragment may be cut out according to a predetermined rule, and is not limited to an aspect in which data is extracted in order from the head to the tail. Any final data fragment set may cover all data. Data fragments may partially overlap. Dummy data may be added to the beginning and end of data to be archived. Data to be archived may be stored locally in a plurality of portable storage media, and then transported to different remote sites by distribution means.

また、本発明は、データアーカイブのみを行う装置またはシステム、あるいは、データ復元のみを行う装置またはシステムに適用しても良い。   Further, the present invention may be applied to an apparatus or system that performs only data archiving, or an apparatus or system that performs only data restoration.

以下、ここで説明した技術的特徴を列挙しておく。
[技術的特徴1]
データを複数のn個(nは2以上の整数)の記憶媒体に分散して記憶する分散アーカイブシステムにおいて、
前記n個の記憶媒体と、
初期状態ではデータ先頭を指し、処理の進行につれてデータ末尾に向かって一方向に動くポインタ手段と、
前記ポインタ手段が指定するポインタ位置から所定の長さのデータ断片を取り出し、当該データ断片を記憶すべき(n−k+1)個(kはn以下の正の整数)の記憶媒体を前記n個の記憶媒体のうちから独立かつランダムに選び、当該(n−k+1)個の記憶媒体に当該データ断片を重複して記録する重複分散化手段とを有し、
前記重複分散化手段が当該データ断片を当該(n−k+1)個の記憶媒体に重複して記憶させるたびに、前記ポインタ位置を前記データ断片の長さだけ進め、前記重複分散化手段が前記データに含まれるすべてのデータ断片について処理を終了するまで前記重複分散化手段の記憶処理を繰り返すことを特徴とする分散アーカイブシステム。
[技術的特徴2]
前記ポインタ位置の各々において、取り出すデータ断片の長さを独立かつランダムに決定することを特徴とする、技術的特徴1に記載の分散アーカイブシステム。
[技術的特徴3]
前記ポインタ位置の各々において、前記データ断片を(n−k+1)個の記憶媒体に記録して当該ポインタ位置を進めるか、または、前記データ断片の代わりにランダムに生成した無意味なダミーデータを任意個数の記憶媒体に記録し当該ポインタ位置を変更せずに維持するかの選択を、独立かつランダムに決定することを特徴とする、技術的特徴1に記載の分散アーカイブシステム。
[技術的特徴4]
前記ポインタ位置の各々において、前記データ断片を(n−k+1)個の記憶媒体に記録して当該ポインタ位置を進めるか、または、前記データ断片の代わりにランダムに生成した無意味なダミーデータを任意個数の記憶媒体に記録し当該ポインタ位置を変更せずに維持するかの選択を、独立かつランダムに決定することを特徴とする、技術的特徴2に記載の分散アーカイブシステム。
[技術的特徴5]
乱数を生成する第一の乱数発生手段を有し、前記ポインタ位置の各々において、前記第一の乱数発生手段により独立な乱数を生成し、当該乱数に基づいて、アーカイブ先記憶媒体を決定することを特徴とする技術的特徴1に記載の分散アーカイブシステム。
[技術的特徴6]
乱数を生成する第一の乱数発生手段を有し、前記ポインタ位置の各々において、前記第一の乱数発生手段により独立な乱数を生成し、当該乱数に基づいて、アーカイブ先記憶媒体を決定し、かつ、当該乱数に基づいて、データ断片の長さ、または、ダミーデータ挿入の有無、または、データ断片の長さおよびダミーデータ挿入の有無の双方を決定することを特徴とする技術的特徴4に記載の分散アーカイブシステム。
[技術的特徴7]
前記第一の乱数発生手段により生成した一連の乱数を記録する鍵記録手段を有し、当該鍵記録手段に記録された一連の乱数に基づいて、データ断片を取得するべき記憶媒体を決定し、かつ、当該一連の乱数に基づいて、データ断片の長さ、または、ダミーデータの有無、または、データ断片の長さおよびダミーデータ挿入の有無の双方を決定し、元のデータを復元することを特徴とする、技術的特徴6に記載の分散アーカイブシステム。
[技術的特徴8]
乱数を生成する第二の乱数発生手段を保持し、前記第一の乱数発生手段がシードを入力として任意の個数の乱数を生成する疑似乱数発生アルゴリズムを実現したものであり、アーカイブ開始時において前記第二の乱数発生手段により生成した乱数をシードとして前記第一の乱数発生手段に入力し、以降、前記第一の乱数発生手段が生成した乱数に基づいてアーカイブ先記憶媒体を決定することを特徴とする、技術的特徴5または技術的特徴6に記載の分散アーカイブシステム。
[技術的特徴9]
前記第二の乱数発生手段により生成したシードを記録する鍵記録手段を保持し、当該鍵記録手段に記録されたシードを前記第一の乱数発生手段に入力し、前記第一の乱数発生手段が生成する一連の乱数から、データ断片を取得するべき記憶媒体を判断し、元のデータを復元することを特徴とする、技術的特徴8に記載の分散アーカイブシステム。
[技術的特徴10]
前記n個の記憶媒体の一部或いはすべてが、通信ネットワークを介してアクセスできるサーバであることを特徴とする、技術的特徴1乃至技術的特徴9に記載の分散アーカイブシステム。
[技術的特徴11]
鍵記録手段をデータの所有者たるユーザが携行可能なデバイス中に設けることで、ユーザは任意のホスト計算機を用いてデータのアーカイブ及び復号処理を行うことが可能であることを特徴とする、技術的特徴7または技術的特徴9に記載の分散アーカイブシステム。
[技術的特徴12]
前記ユーザが携行可能なデバイスがICカード、携帯電話、またはパーソナルデジタルアシスタントであることを特徴とする、技術的特徴11に記載の分散アーカイブシステム。
[技術的特徴13]
前記ユーザが携行可能なデバイスがマイクロコンピュータを保持し、当該マイクロコンピュータによってデバイス中のデータへのアクセス制御を行うと共に、データのアーカイブ及び復元処理の一部或いは全部を実行することを特徴とする、技術的特徴11に記載の分散アーカイブシステム。
[技術的特徴14]
前記ユーザが携行可能なデバイスが、第一の乱数発生手段及び第二の乱数発生手段のいずれか、或いは、両方を保持することを特徴とする、技術的特徴13に記載の分散アーカイブシステム。
[技術的特徴15]
前記ユーザが携行可能なデバイスが保持するマイクロコンピュータ、及び、乱数発生手段が、耐タンパー特性を有するICチップ中に実装されることを特徴とする、技術的特徴14に記載の分散アーカイブシステム。
[技術的特徴16]
アーカイブ対象のデータの先頭及び末尾に適切な長さのダミーデータを付与することを特徴とする、技術的特徴1乃至技術的特徴15に記載の分散アーカイブシステム。
[技術的特徴17]
アーカイブ対象データをn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせるデータアーカイブ装置において、
前記アーカイブ対象データから予め定められた手順で複数のデータ断片を切り出し、かつ、少なくとも切り出した複数のデータ断片が前記アーカイブ対象データのすべてを含むようになす切り出し手段と、
前記切り出し手段で切り出された前記複数のデータ断片の各々を前記n個のアーカイブ先記憶手段のうちの(n−k+1)個(kはn以下の正の整数)のアーカイブ先記憶手段に独立してランダムに関係付ける関係付け手段とを有し、
前記切り出し手段で切り出されたデータ断片の各々を、前記関係付け手段でそれぞれ関係付けられたn−k+1個のアーカイブ先記憶手段に重複してアーカイブさせることを特徴とするデータアーカイブ装置。
[技術的特徴18]
アーカイブ対象データをn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせるためのデータアーカイブ用コンピュータプログラムにおいて、
コンピュータを、
前記アーカイブ対象データから予め定められた手順で複数のデータ断片を切り出し、かつ、少なくとも切り出した複数のデータ断片が前記アーカイブ対象データのすべてを含むようになす切り出し手段、および、
前記切り出し手段で切り出された前記複数のデータ断片の各々を前記n個のアーカイブ先記憶手段のうちの(n−k+1)個(kはn以下の正の整数)のアーカイブ先記憶手段に独立してランダムに関係付ける関係付け手段
として機能させ、
前記切り出し手段で切り出されたデータ断片の各々を、前記関係付け手段でそれぞれ関係付けられたn−k+1個のアーカイブ先記憶手段に重複してアーカイブさせることを特徴とするデータアーカイブ用コンピュータプログラム。
[技術的特徴19]
技術的特徴17記載のアーカイブ装置によりn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせているデータを復元する復元装置において、
前記関連付け手段が前記データのデータ断片の各々を(n−k+1)個のアーカイブ先記憶手段に独立してランダムに関連付けるのに用いた関連付け情報をそれぞれ取得する関連付け情報取得手段と、
前記データ断片の各々について、当該データ断片に前記関連付け情報により関連付けられたn−k+1個のアーカイブ先記憶手段のいずれかから当該データ断片を取り出すデータ断片取得手段と、
取り出した前記データ断片を、前記データ断片を切り出すための前記予め定められた手順に対応する連結手順で連結する連結手段とを有することを特徴とするデータ復元装置。
[技術的特徴20]
技術的特徴17記載のアーカイブ装置によりn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせているデータを復元するために用いられるデータ復元用コンピュータプログラムにおいて、
コンピュータを、
前記関連付け手段が前記データのデータ断片の各々を(n−k+1)個のアーカイブ先記憶手段に独立してランダムに関連付けるのに用いた関連付け情報をそれぞれ取得する関連付け情報取得手段、
前記データ断片の各々について、当該データ断片に前記関連付け情報により関連付けられた(n−k+1)個のアーカイブ先記憶手段のいずれかから当該データ断片を取り出すデータ断片取得手段、および、
取り出した前記データ断片を、前記データ断片を切り出すための前記予め定められた手順に対応する連結手順で連結する連結手段
として機能させるためのデータ復元用コンピュータプログラム。
[技術的特徴21]
アーカイブ対象データをn個(nは2以上の整数)のアーカイブ先記憶手段を具備し、アーカイブ対象データを前記n個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせるデータアーカイブ方法において、
切り出し手段が、前記アーカイブ対象データから予め定められた手順で複数のデータ断片を切り出し、かつ、少なくとも切り出した複数のデータ断片が前記アーカイブ対象データのすべてを含むようになすステップと、
関係付け手段が、前記切り出し手段で切り出された前記複数のデータ断片の各々を前記n個のアーカイブ先記憶手段のうちの(n−k+1)個(kはn以下の正の整数)のアーカイブ先記憶手段に独立してランダムに関係付けるステップとを有し、
前記切り出し手段で切り出されたデータ断片の各々を、前記関係付け手段でそれぞれ関係付けられたn−k+1個のアーカイブ先記憶手段に重複してアーカイブさせることを特徴とするデータアーカイブ方法。
The technical features described here are listed below.
[Technical features 1]
In a distributed archive system in which data is distributed and stored in a plurality of n (n is an integer of 2 or more) storage media,
The n storage media;
Pointer means that points to the beginning of the data in the initial state and moves in one direction toward the end of the data as the process proceeds;
A data fragment having a predetermined length is extracted from the pointer position designated by the pointer means, and (n−k + 1) (k is a positive integer less than or equal to n) storage media in which the data fragment is to be stored A redundant distribution unit that selects the storage medium independently and randomly from the storage medium and records the data fragment in duplicate on the (n−k + 1) storage media;
Each time the duplication / distribution unit stores the data fragment in duplicate in the (n−k + 1) storage media, the pointer position is advanced by the length of the data fragment, and the duplication / distribution unit performs the data distribution. The distributed archiving system is characterized in that the storage processing of the duplicate distribution means is repeated until the processing is completed for all data fragments included in.
[Technical feature 2]
The distributed archiving system according to the technical feature 1, wherein the length of a data fragment to be extracted is independently and randomly determined at each of the pointer positions.
[Technical feature 3]
At each of the pointer positions, the data fragment is recorded on (n−k + 1) storage media and the pointer position is advanced, or randomly generated meaningless dummy data is arbitrarily substituted for the data fragment. 2. The distributed archiving system according to the technical feature 1, wherein the selection of whether to record the number of storage media and keep the pointer position unchanged is determined independently and randomly.
[Technical feature 4]
At each of the pointer positions, the data fragment is recorded on (n−k + 1) storage media and the pointer position is advanced, or randomly generated meaningless dummy data is arbitrarily substituted for the data fragment. The distributed archiving system according to the technical feature 2, wherein the selection of whether to record the number of storage media and keep the pointer position unchanged is determined independently and randomly.
[Technical feature 5]
First random number generating means for generating a random number, generating an independent random number by the first random number generating means at each of the pointer positions, and determining an archive destination storage medium based on the random number 2. The distributed archive system according to the technical feature 1 characterized by the above.
[Technical feature 6]
First random number generating means for generating a random number, and at each of the pointer positions, an independent random number is generated by the first random number generating means, and an archive destination storage medium is determined based on the random number; In addition, the technical feature 4 is characterized in that, based on the random number, the length of the data fragment, the presence / absence of dummy data insertion, or both the length of the data fragment and the presence / absence of dummy data insertion are determined. Described distributed archive system.
[Technical feature 7]
Having a key recording means for recording a series of random numbers generated by the first random number generation means, and determining a storage medium from which a data fragment is to be obtained based on the series of random numbers recorded in the key recording means; In addition, based on the series of random numbers, the length of the data fragment, the presence / absence of dummy data, or both the length of the data fragment and the presence / absence of dummy data insertion are determined to restore the original data. The distributed archiving system according to Technical Feature 6, characterized in that
[Technical feature 8]
The second random number generation means for generating a random number is held, and the first random number generation means realizes a pseudo random number generation algorithm for generating an arbitrary number of random numbers by using a seed as an input. The random number generated by the second random number generation means is input to the first random number generation means as a seed, and thereafter, the archive destination storage medium is determined based on the random number generated by the first random number generation means. The distributed archive system according to Technical Feature 5 or Technical Feature 6.
[Technical feature 9]
Holding a key recording means for recording the seed generated by the second random number generating means, inputting the seed recorded in the key recording means to the first random number generating means, wherein the first random number generating means 9. The distributed archive system according to technical feature 8, wherein a storage medium from which a data fragment is to be obtained is determined from a series of random numbers to be generated, and the original data is restored.
[Technical feature 10]
10. The distributed archive system according to technical feature 1 to technical feature 9, wherein a part or all of the n storage media are servers that can be accessed via a communication network.
[Technical feature 11]
By providing the key recording means in a device that can be carried by the user who owns the data, the user can perform data archiving and decryption processing using an arbitrary host computer. A distributed archiving system according to claim 7 or technical feature 9.
[Technical feature 12]
The distributed archive system according to the technical feature 11, wherein the device that the user can carry is an IC card, a mobile phone, or a personal digital assistant.
[Technical feature 13]
The device that can be carried by the user holds a microcomputer, performs access control to data in the device by the microcomputer, and executes part or all of data archiving and restoration processing, The distributed archive system according to the technical feature 11.
[Technical feature 14]
14. The distributed archive system according to the technical feature 13, wherein the device that the user can carry holds either one or both of the first random number generator and the second random number generator.
[Technical feature 15]
The distributed archive system according to the technical feature 14, wherein the microcomputer held by the device that can be carried by the user and the random number generation means are mounted in an IC chip having tamper resistance.
[Technical feature 16]
16. The distributed archiving system according to technical feature 1 to technical feature 15, wherein dummy data having an appropriate length is added to the beginning and end of data to be archived.
[Technical feature 17]
In a data archiving apparatus for archiving archive target data to n (n is an integer of 2 or more) archive destination storage means,
Cutout means for cutting out a plurality of data fragments from the archive target data in a predetermined procedure, and at least a plurality of cut out data fragments include all of the archive target data;
Each of the plurality of data fragments cut out by the cutout means is independent of (n−k + 1) (k is a positive integer less than n) archive destination storage means among the n archive destination storage means. And an association means for randomly relating,
A data archiving apparatus, wherein each of the data fragments cut out by the cut-out means is archived redundantly in n−k + 1 archive destination storage means respectively related by the correlation means.
[Technical feature 18]
In a data archiving computer program for archiving archive target data to n (n is an integer of 2 or more) archive destination storage means,
Computer
Cutting out means for cutting out a plurality of data fragments from the archive target data in a predetermined procedure, and at least a plurality of cut out data fragments including all of the archive target data; and
Each of the plurality of data fragments cut out by the cutout means is independent of (n−k + 1) (k is a positive integer less than n) archive destination storage means among the n archive destination storage means. Function as an association means to randomly relate,
A computer program for data archiving, wherein each of the data fragments cut out by the cut-out means is archived redundantly in n−k + 1 archive destination storage means respectively related by the correlation means.
[Technical feature 19]
In a restoration device for restoring data archived in n (n is an integer of 2 or more) archive destination storage means by the archive device described in the technical feature 17,
Association information acquisition means for acquiring association information used by the association means to randomly associate each of the data fragments of the data independently with (n−k + 1) archive destination storage means;
For each of the data fragments, a data fragment acquisition means for retrieving the data fragment from any of n−k + 1 archive destination storage means associated with the data fragment by the association information;
A data restoration apparatus comprising: a coupling means for coupling the extracted data fragment by a coupling procedure corresponding to the predetermined procedure for extracting the data fragment.
[Technical feature 20]
In a computer program for data restoration used for restoring data archived in n (n is an integer of 2 or more) archive destination storage means by the archive device described in the technical feature 17,
Computer
Association information acquisition means for acquiring association information used by the association means to randomly associate each of the data fragments of the data independently with (n−k + 1) archive destination storage means;
For each of the data fragments, a data fragment acquisition means for retrieving the data fragment from any of (n−k + 1) archive destination storage means associated with the data fragment by the association information; and
A computer program for data restoration for causing the extracted data fragment to function as a connection means for connecting in accordance with a connection procedure corresponding to the predetermined procedure for cutting out the data fragment.
[Technical feature 21]
In a data archiving method, archive target data is provided with n (n is an integer of 2 or more) archive destination storage means, and archive target data is archived in the n (n is an integer of 2 or more) archive destination storage means. ,
A step of cutting out a plurality of data fragments from the archive target data in a predetermined procedure, and at least the plurality of cut out data fragments including all of the archive target data;
The association means converts each of the plurality of data fragments cut out by the cut-out means to (n−k + 1) (k is a positive integer less than or equal to n) archive destinations out of the n archive destination storage means. Independently and randomly related to the storage means,
A data archiving method comprising: archiving each of data fragments cut out by the cutout unit in duplicate to n−k + 1 archive destination storage units respectively related by the association unit.

10 ホスト装置
10a ソース/復元ファイル記憶部
10b コンピュータプログラム
20〜20 記憶媒体
30 通信ネットワーク
40 アーカイブコントローラ
41 ポインタ
42 重複分散化部
43 データ断片抽出部
44 関連付け部
45 データ断片記憶制御部
46 データ復元部
100 アーカイブシステム
441 乱数発生器
442 鍵記憶部
443 シード用乱数発生器
444 シードレジスタ
445 鍵用乱数発生器
446 管理テーブル記憶部
10 host device 10a the source / recovery file storage unit 10b the computer program 20 1 to 20 n storage medium 30 communication network 40 archiving controller 41 pointer 42 overlaps distributed unit 43 data fragment extraction unit 44 association unit 45 data fragments storage control unit 46 data recovery Unit 100 archive system 441 random number generator 442 key storage unit 443 seed random number generator 444 seed register 445 key random number generator 446 management table storage unit

Claims (8)

アーカイブ対象データを複数のn個(nは2以上の整数)の記憶媒体に分散して記憶する分散アーカイブシステムにおいて、
前記n個の記憶媒体と、
初期状態では前記アーカイブ対象データのデータ先頭を指し、処理の進行につれてデータ末尾に向かって一方向に動くポインタ手段と、
前記ポインタ手段が指定するポインタ位置の各々において乱数を生成する第一の乱数発生手段と、
前記ポインタ手段が指定するポインタ位置からデータ断片を取り出し、当該データ断片を記憶すべき(n−k+1)個(kはn以下の正の整数)の記憶媒体を前記n個の記憶媒体のうちから、前記第一の乱数発生手段が生成する乱数に基づいて一意に決定し、当該(n−k+1)個の記憶媒体において、当該データ断片を、先行して記録された1または複数のデータ断片がある場合には、これに続けて追記記録する態様で、先行して記録されたデータ断片がない場合には新規記録の態様で、重複して記録する重複分散化手段とを有し、
前記重複分散化手段が当該データ断片を当該(n−k+1)個の記憶媒体に重複して記録させるたびに、前記ポインタ位置を前記データ断片の長さだけ進め、前記重複分散化手段が前記データに含まれるすべてのデータ断片について処理を終了するまで前記重複分散化手段の記録処理を繰り返し、
アーカイブ対象データの復元時には、前記ポインタ手段が指定するポインタ位置の各々において前記第一の乱数発生手段が生成した乱数と同一の乱数に従って重複記録先の(n−k+1)個の記憶媒体を決定し当該記憶媒体のいずれかから前記データ断片の追記の記録順序に従ってデータ断片を読み出して順次に連結してアーカイブ対象データを復元できるようにしたことを特徴とする分散アーカイブシステム。
In a distributed archive system in which archive target data is distributed and stored in a plurality of n (n is an integer of 2 or more) storage media,
The n storage media;
In the initial state, pointing to the data head of the archive target data, pointer means that moves in one direction toward the end of the data as the process proceeds,
First random number generating means for generating a random number at each pointer position designated by the pointer means;
A data fragment is extracted from the pointer position designated by the pointer means, and (n−k + 1) (k is a positive integer less than or equal to n) storage media from which the data fragment is to be stored is selected from the n storage media. The first random number generation means uniquely determines the data fragment, and in the (n−k + 1) storage media, the data fragment is recorded in advance as one or more data fragments. In some cases, in the mode of additional recording following this, in the case of no data fragment recorded in advance, in the mode of new recording, there is a duplicate decentralization means for recording redundantly,
Each time the duplication / distribution means records the data fragment in duplicate on the (n−k + 1) storage media, the pointer position is advanced by the length of the data fragment, and the duplication / distribution means Until the processing is completed for all data fragments included in
At the time of restoration of archive target data, (n−k + 1) storage media for duplication recording are determined according to the same random number as the random number generated by the first random number generating means at each pointer position designated by the pointer means. A distributed archiving system, wherein data fragments are read from any one of the storage media according to the recording order of appending the data fragments and sequentially linked to restore the archive target data.
アーカイブ要求のあったデータの先頭及び末尾に適切な長さのダミーデータを付与したダミーデータ付きデータを上記アーカイブ対象データとしてアーカイブ処理を行うことを特徴とする、請求項1に記載の分散アーカイブシステム。   2. The distributed archiving system according to claim 1, wherein the archiving process is performed using the data with dummy data to which dummy data of an appropriate length is added at the beginning and end of the data requested for archiving as the archiving target data. . 前記ポインタ位置の各々において、取り出すデータ断片の長さを独立かつランダムに決定することを特徴とする、請求項1に記載の分散アーカイブシステム。   The distributed archive system according to claim 1, wherein the length of the data fragment to be extracted is determined independently and randomly at each of the pointer positions. 前記ポインタ位置の各々において、前記データ断片を(n−k+1)個の記憶媒体に記録して当該ポインタ位置を進めるか、または、前記データ断片の代わりにランダムに生成した無意味なダミーデータを任意個数の記憶媒体に記録し当該ポインタ位置を変更せずに維持するかの選択を、独立かつランダムに決定することを特徴とする、請求項1〜3のいずれかに記載の分散アーカイブシステム。   At each of the pointer positions, the data fragment is recorded on (n−k + 1) storage media and the pointer position is advanced, or randomly generated meaningless dummy data is arbitrarily substituted for the data fragment. The distributed archive system according to any one of claims 1 to 3, wherein the selection of whether to record on a number of storage media and keep the pointer position unchanged is determined independently and randomly. 前記ポインタ位置の各々において、取り出すデータ断片の長さを独立かつランダムに決定し、かつ、前記ポインタ位置の各々において、前記データ断片を(n−k+1)個の記憶媒体に記録して当該ポインタ位置を進めるか、または、前記データ断片の代わりにランダムに生成した無意味なダミーデータを任意個数の記憶媒体に記録し当該ポインタ位置を変更せずに維持するかの選択を、独立かつランダムに決定することを特徴とする、請求項1〜3のいずれかに記載の分散アーカイブシステム。   At each of the pointer positions, the length of the data fragment to be extracted is determined independently and randomly, and at each of the pointer positions, the data fragment is recorded on (n−k + 1) storage media. Or whether to record meaningless dummy data randomly generated in place of the data fragment in an arbitrary number of storage media and keep the pointer position unchanged is determined independently and randomly. The distributed archive system according to any one of claims 1 to 3, wherein: 前記第一の乱数発生手段はシードを入力として疑似乱数発生アルゴリズムに基づいて任意の個数の乱数を発生する請求項1〜5のいずれかに記載の分散アーカイブシステム。   The distributed archive system according to any one of claims 1 to 5, wherein the first random number generation means generates an arbitrary number of random numbers based on a pseudo random number generation algorithm with a seed as an input. 前記シードは第二の乱数発生手段により発生され、さらに、前記シードを記録する鍵記憶手段を有し、前記鍵記憶手段をデータの所有者たるユーザが携行可能なデバイス中に設けることで、ユーザは任意のホスト計算機を用いてデータのアーカイブ及び復号処理を行うことが可能であることを特徴とする、請求項6に記載の分散アーカイブシステム。   The seed is generated by a second random number generating means, and further includes a key storage means for recording the seed, and the key storage means is provided in a device that can be carried by a user who owns the data. 7. The distributed archiving system according to claim 6, wherein the data can be archived and decrypted using an arbitrary host computer. アーカイブ対象データをn個(nは2以上の整数)のアーカイブ先記憶手段にアーカイブさせるデータアーカイブ装置において、
前記アーカイブ対象データから予め定められた手順で複数のデータ断片を順次に切り出し、かつ、少なくとも切り出した複数のデータ断片が前記アーカイブ対象データのすべてを含むようになす切り出し手段と、
前記切り出し手段で順次に切り出された前記複数のデータ断片の各々に対して乱数発生手段がそれぞれ生成する乱数に基づいて、当該複数のデータ断片の各々を前記n個のアーカイブ先記憶手段のうちの(n−k+1)個(kはn以下の正の整数)のアーカイブ先記憶手段に1対(n−k+1)の対応関係で一意に関係付ける関係付け手段とを有し、
前記切り出し手段で順次に切り出されたデータ断片の各々を、前記関係付け手段で1対(n−k+1)の対応関係で関係付けられた(n−k+1)個のアーカイブ先記憶手段の各々において、先行して記録された1または複数のデータ断片がある場合には、これに続けて追記記録する態様で、先行して記録されたデータ断片がない場合には新規記録の態様で、重複して記録し、
アーカイブ対象データの復元時には、前記データ断片ごとに前記乱数発生手段が生成した乱数と同一の乱数に従って重複記録先の(n−k+1)個の記憶媒体を決定し当該記憶媒体のいずれかから前記データ断片の追記の記録順序に従ってデータ断片を読み出して順次に連結してアーカイブ対象データを復元できるようにしたことを特徴とするデータアーカイブ装置。
In a data archiving apparatus for archiving archive target data to n (n is an integer of 2 or more) archive destination storage means,
A plurality of data pieces sequentially cut out from the archive target data in a predetermined procedure, and at least a plurality of cut out data pieces include all of the archive target data;
Based on the random numbers generated by the random number generation unit for each of the plurality of data fragments sequentially cut out by the cutout unit, each of the plurality of data fragments is stored in the n archive destination storage units. (N−k + 1) (k is a positive integer less than or equal to n) archive destination storage units, and a correlation unit that uniquely associates with (n−k + 1) correspondence relationships.
In each of the (n−k + 1) archive destination storage means associated with one pair of (n−k + 1) correspondences by each of the data fragments sequentially extracted by the extraction means, If there is one or more data fragments that have been recorded in advance, this is followed by additional recording. If there is no data fragment that has been previously recorded, new recording is used. Record,
When restoring data to be archived, (n−k + 1) storage media as duplicate recording destinations are determined according to the same random number as the random number generated by the random number generation unit for each data fragment, and the data is stored from any of the storage media. A data archiving apparatus, wherein data fragments are read out in accordance with a recording order of additional writing of fragments and sequentially linked to restore data to be archived.
JP2014131566A 2014-06-26 2014-06-26 Distributed archive system and data archive device Expired - Fee Related JP5756959B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014131566A JP5756959B2 (en) 2014-06-26 2014-06-26 Distributed archive system and data archive device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014131566A JP5756959B2 (en) 2014-06-26 2014-06-26 Distributed archive system and data archive device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010249917A Division JP5620792B2 (en) 2010-11-08 2010-11-08 Distributed archive system, data archive device, and data restoration device

Publications (2)

Publication Number Publication Date
JP2014186750A JP2014186750A (en) 2014-10-02
JP5756959B2 true JP5756959B2 (en) 2015-07-29

Family

ID=51834192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014131566A Expired - Fee Related JP5756959B2 (en) 2014-06-26 2014-06-26 Distributed archive system and data archive device

Country Status (1)

Country Link
JP (1) JP5756959B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU770753B2 (en) * 1999-12-20 2004-03-04 Dainippon Printing Co. Ltd. Distributed data archive device and system
JP4413635B2 (en) * 2004-01-29 2010-02-10 日本電信電話株式会社 Distributed storage device
JP4486851B2 (en) * 2004-06-07 2010-06-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 CONFIDENTIAL INFORMATION MANAGEMENT SYSTEM, CONFIDENTIAL INFORMATION MANAGEMENT METHOD, CONFIDENTIAL INFORMATION MANAGEMENT PROGRAM, AND CONFIDENTIAL INFORMATION MANAGEMENT SYSTEM TERMINAL PROGRAM
JP2006113663A (en) * 2004-10-12 2006-04-27 Nec Fielding Ltd Data storage system, its method, file server, terminal and program

Also Published As

Publication number Publication date
JP2014186750A (en) 2014-10-02

Similar Documents

Publication Publication Date Title
JP5620792B2 (en) Distributed archive system, data archive device, and data restoration device
US8892907B2 (en) Storage and recovery of cryptographic key identifiers
US8838968B2 (en) System and method for virtual machine data protection in a public cloud
CN105678189B (en) Data file encryption storage and retrieval system and method
US8533489B2 (en) Searchable symmetric encryption with dynamic updating
Williams et al. Single round access privacy on outsourced storage
US9158927B1 (en) Cross-region recovery of encrypted, erasure-encoded data
US9578097B2 (en) Block based access to a dispersed data storage network
JP3871996B2 (en) Data division management method and program
US11005663B2 (en) Secure audit scheme in a distributed data storage system
US8156168B2 (en) Method and system for data security
Li et al. Towards privacy-preserving storage and retrieval in multiple clouds
JP2009533759A (en) System for reconstructing distributed data
GB2463078A (en) Data storage and transmission using parity data
RU2369024C2 (en) System for protecting information content, device for generating key data and display device
CN104967591A (en) Cloud storage data read-write method and device, and read-write control method and device
CN104794024A (en) Data recovery method
US20130073901A1 (en) Distributed storage and communication
CN115225409A (en) Cloud data safety deduplication method based on multi-backup joint verification
JP4490068B2 (en) Data storage system using network
US9324123B2 (en) Storage of keyID in customer data area
JP5756959B2 (en) Distributed archive system and data archive device
KR100859651B1 (en) Storage medium of recording data structure for storing variable size data, method of storing variable size data, and computer-readable storage medium of storing program for executing method of storing variable size data
CN111130788B (en) Data processing method and system, data reading method and iSCSI server
Ali et al. Secure block-level data deduplication approach for cloud data centers

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140627

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150130

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: 20150324

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150421

R150 Certificate of patent or registration of utility model

Ref document number: 5756959

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees