Distributive storage controller and method
First Claim
1. A distributive storage controller for providing a data storage service to a plurality of computer devices connected to a network, the controller comprising:
- a storage controller which, upon receiving a storage instruction of data from one of the computer devices, checks the status of a storage device of each of the computer devices, divides and encrypts the data into a plurality of encrypted pieces, selects, for each encrypted piece, a computer device on which the piece is to be stored from among the plurality of computer devices based on the result of the checking, transfers and stores the encrypted pieces to selected corresponding computer devices, and generates storage location information indicating which encrypted piece is stored in which computer device; and
an extraction controller which, upon receiving an extraction instruction of data from one of the computer devices, identifies each computer device to which each of the encrypted pieces for the data is stored referring to the storage location information, obtains each encrypted piece from the computer device, restores the original data based on the encrypted pieces, and provides the restored data to the computer device instructing the extraction.
2 Assignments
0 Petitions
Accused Products
Abstract
An inexpensive data storage technique utilizing available capacity in individual computer devices connected to a network is provided. When a backup client (BC) (14) of a user PC receives a backup instruction for a file from a user, the backup client (14) requests backup to a backup control server (20). The backup control server (20) divides and encrypts the file to be backed up into a plurality of encrypted pieces, transfers the encrypted pieces to user PCs (10), and stores the encrypted piece in the HDDs (12) of the user PCs (10). When the destributively backed up file is to be extracted, the user PC 10 obtains each encrypted piece from the user PCs 10 on which they are stored, and combines and decrypts the encrypted pieces to restore the original file.
-
Citations
24 Claims
-
1. A distributive storage controller for providing a data storage service to a plurality of computer devices connected to a network, the controller comprising:
-
a storage controller which, upon receiving a storage instruction of data from one of the computer devices, checks the status of a storage device of each of the computer devices, divides and encrypts the data into a plurality of encrypted pieces, selects, for each encrypted piece, a computer device on which the piece is to be stored from among the plurality of computer devices based on the result of the checking, transfers and stores the encrypted pieces to selected corresponding computer devices, and generates storage location information indicating which encrypted piece is stored in which computer device; and
an extraction controller which, upon receiving an extraction instruction of data from one of the computer devices, identifies each computer device to which each of the encrypted pieces for the data is stored referring to the storage location information, obtains each encrypted piece from the computer device, restores the original data based on the encrypted pieces, and provides the restored data to the computer device instructing the extraction. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer device connected to a network, the computer device comprising;
-
a response module for returning a response including information on available capacity of a storage device of the computer device in response to a status inquiry received from a requesting device via the network;
a storage module for storing data transmitted from the requesting device via the network to the storage device; and
a data provider which, in response to a data extraction request sent from the requesting device via the network, reads data related to the extraction request from the storage device and transmits the data to the requesting device. - View Dependent Claims (9)
-
-
10. A distributive storage system comprising:
-
a plurality of computer devices connected to a network;
a storage controller which is connected to the network and which, upon receiving a storage instruction of data from a client device, checks the status of a storage device of each of the computer devices, divides and encrypts the data into a plurality of encrypted pieces, selects, for each encrypted piece, a computer device to which the piece is to be stored from among the plurality of computer devices based on the result of the checking, transfers and stores each of the encrypted pieces to the selected corresponding computer device, and generates storage location information indicating which encrypted piece is stored in which computer device; and
an extraction controller which is connected to the network and which, upon receiving an extraction instruction of data from a client device, identifies computer devices to which the encrypted pieces of the data are stored by referring to the storage location information, obtains each encrypted piece from the corresponding computer device, restores the original data based on the encrypted pieces, and supplies the restored data to the client device. - View Dependent Claims (11, 12, 13)
-
-
14. A method for controlling a distributive storage which provides a data storage service to a plurality of computer devices connected to a network, the method comprising the steps of:
-
(a) upon reception of a storage instruction of data, checking the status of a storage device of each of the computer devices, dividing and encrypting the data into a plurality of encrypted pieces, selecting, for each encrypted piece, a computer device on which the piece is to be stored from among the plurality of computer devices based on the result of the checking process, transferring and storing each encrypted piece to the selected corresponding computer device, and generating storage location information indicating which encrypted piece is stored in which computer device; and
(b) upon reception of an extraction instruction of data, identifying computer devices to which the encrypted pieces corresponding to the data are stored by referring to the storage location information, obtaining the encrypted piece from each of the computer devices, and restoring the original data based on the encrypted pieces. - View Dependent Claims (15, 16, 17)
-
-
18. A method for controlling a computer device which is connected to a network and provided for a distributive storage service of data, the method comprising the steps of:
-
returning a response including information of the available capacity of a storage device in the computer device in response to a status inquiry sent from a requesting device via the network;
storing data transmitted from the requesting device via the network to the storage device; and
in response to a data extraction request sent from the requesting device via the network, reading the data related to the extraction request from the storage device and transmitting the data to the requesting device. - View Dependent Claims (19)
-
-
20. A method for controlling a distributive storage system comprising a plurality of computer devices, a storage controller, and an extraction controller all of which are connected to a network, the method comprising the steps of:
-
(a) when the storage controller receives a storage instruction of data from a client device, checking the status of a storage device of each of the computer devices, dividing and encrypting the data into a plurality of encrypted pieces, selecting, for each encrypted piece, a computer device to which the piece is to be stored from among the plurality of computer devices based on the result of the checking process, transferring and storing the encrypted piece to the selected corresponding computer device, and generating storage location information indicating which encrypted piece is stored in which computer device; and
(b) when the extraction controller receives an extraction instruction of data from a client device, identifying computer devices to which the encrypted pieces corresponding to the data are stored by referring to the storage location information, obtaining each of the encrypted pieces from each computer device, restoring the original data based on the encrypted pieces, and supplying the restored data to the client device. - View Dependent Claims (21, 22)
-
-
23. A computer readable recording medium which records a program which, when executed, causes a computer system connected to a network to execute:
-
a storage control step of, when receiving a storage instruction of data, checking the status of a storage device of each of a predetermined plurality of computer devices on the network, dividing and encrypting the data into a plurality of encrypted pieces, selecting, for each encrypted piece, a computer device to which the piece is to be stored from among the plurality of computer devices based on the result of the checking process, transferring and storing the encrypted piece to the selected corresponding computer device, and generating storage location information indicating which encrypted piece is stored to which computer device; and
an extraction control step of, when receiving an extraction instruction for data, identifying computer devices to which the encrypted pieces for the data are stored by referring to the storage location information, obtaining the encrypted pieces from the computer devices, and restoring the original data based on the encrypted pieces.
-
-
24. A computer readable recording medium which records a program which, when executed, causes a computer system connected to a network to execute the steps of:
-
returning a response including information on the available capacity of a storage device within its own device in response to a status inquiry sent from a requesting device via the network;
storing data transmitted from the requesting device via the network to the storage device; and
in response to an extraction request of data sent from the requesting device via the network, reading the data related to the extraction request from the storage device and transmitting the data to the requesting device.
-
Specification