IP Library Granted Patent US 7,734,598
Granted Patent B2
US 7,734,598 · App. 11/497,297 · Granted Jun 8, 2010

Computer-readable recording medium having recorded hash-value generation program, computer-readable recording medium having recorded storage management program, and storage system

Assignee: Fujitsu Limited
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,734,598
App. No.
11/497,297
Granted
Jun 8, 2010
Kind
B2
Abstract

A computer-readable recording medium having recorded a hash-value generation program for calculating a hash value within a shorter period of processing time. When a target disk is specified for hash value calculation, a segment division block divides the target disk into fixed-length segments. A first hash-value calculation block applies a one-way hash function to all data in each segment to calculate a per-segment hash value. A second hash-value calculation block arranges the per-segment hash values in a segment order corresponding to the order of the data stored on the target disk and applies the one-way hash function again to the arranged per-segment hash values to calculate a total hash value. The hash value calculated in this manner is defined as a hash value of the target disk.

Claims (43)

1. A computer-readable recording medium having recorded a hash-value generation program for generating a hash value of data stored on a target disk by the use of a one-way hash function, the program, when executed by a computer, causes the computer to perform a method, the method comprising:

dividing the target disk into fixed-length segments;

calculating per-segment hash values by applying the one-way hash function to data in every segment generated by the dividing;

arranging the per-segment hash values in a same order as the segments are arranged;

calculating a total hash value by applying the one-way hash function to the arranged per-segment hash values;

saving the calculated total hash value calculated at a specified time;

repeating the calculation of the per-segment hash values and the calculation of the total hash value to obtain a recalculated total hash value at a later time; and

comparing the calculated total hash value with the recalculated total hash value to verify the calculated total hash value and the recalculated total hash value match.

2. The computer-readable recording medium having recorded a hash-value generation program according to claim 1 , the method further comprising:

assigning the generated segments to a plurality of concurrently operable hash-value calculation blocks and the hash-value calculation blocks calculate the per-segment hash values of all data strings in the assigned segments.

3. A computer-readable recording medium having recorded a storage management program for managing a storage system in which data on a virtual logical disk is stored in units of segments in a distribution manner in a plurality of storage modules, the program, when executed by a computer, causes the computer to perform a method, the method comprising:

controlling first hash-value calculation blocks included in each of the plurality of storage modules to calculate per-segment hash values by applying a one-way hash function to data in every segment, the segments having a fixed length;

acquiring the per-segment hash values calculated by the first hash-value calculation blocks of the storage modules;

arranging the per-segment hash values in a segment order corresponding to the order of the data on the logical disk;

calculating a total hash value of the logical disk by applying the one-way hash function to the arranged per-segment hash values;

saving the calculated total hash value calculated at a specified time;

repeating the calculation of the per-segment hash values and the calculation of the total hash value to obtain a recalculated total hash value at a later time; and

comparing the calculated total hash value with the recalculated total hash value to verify the calculated total hash value and the recalculated total hash value match.

4. The computer-readable recording medium having recorded a storage management program according to claim 3 , the method further comprising:

searching for the segments assigned to the storage modules based on a data definition described as meta-information of the logical disk; and

instructing the first hash-value calculation blocks to carry out hash calculations for the found segments.

5. The computer-readable recording medium having recorded a storage management program according to claim 3 , wherein the controlling includes issuing a calculation instruction to the first hash-value calculation blocks of the storage modules to cause the first hash-value calculation blocks of the plurality of storage modules to operate in parallel.

6. The computer-readable recording medium having recorded a storage management program according to claim 3 , the method further comprising:

permitting an external apparatus connected via a network to refer to at least one of the calculated total hash value, the length of the segments, and the one-way hash function.

7. The computer-readable recording medium having recorded a storage management program according to claim 3 , the method further comprising:

receiving a request from an external apparatus connected via a network, the request relating to the logical disk;

the controlling controls the first hash-value calculation blocks of the storage modules corresponding to the requested logical disk;

the calculating calculates the total hash value of the requested logical disk; and

transmitting the calculated total hash value of the logical disk to the external apparatus.

8. The computer-readable recording medium having recorded a storage management program according to claim 3 , wherein the saving, repeating and comparing are sequentially performed at time intervals or upon a request from an external apparatus connected via a network.

9. A storage system for storing data on a virtual logical disk in a storage to manage the data, the storage system comprising:

a plurality of storage modules each including:

storage to divide the logical disk into fixed-length segments and to store the data therein; and

first hash-value calculation blocks to, upon receiving a calculation instruction, calculate per-segment hash values by applying a one-way hash function to data in every segment stored in the storage; and

a storage management module including:

a controller to, upon request for a hash value of the logical disk, control calculation processing of the per-segment hash values performed by the first hash-value calculation blocks included in each of the storage modules; and

second hash-value calculation block to calculate a total hash value for the logical disk by arranging the per-segment hash values in a segment order corresponding to the order of the data on the logical disk, and by applying the one-way hash function to the arranged per-segment hash; and

a verification block to save the calculated total hash value at a specified time and to compare the saved total hash value with a total hash value recalculated at a later time to verify the saved calculated total hash value and the recalculated total hash value match.

10. The storage system according to claim 9 , wherein the storage management module outputs a calculation instruction to the plurality of storage modules to cause the storage modules to operate in parallel.

11. The computer-readable recording medium having recorded a hash-value generation program according to claim 1 wherein

the saving also saves at least one of the size of the segments and the one-way hash function, and the repeating uses the at least one of the size of the segments and the one-way hash function.

12. The computer-readable recording medium having recorded a storage management program according to claim 3 , wherein

the saving also saves at least one of the size of the segments and the one-way hash function, and the repeating uses the at least one of the size of the segments and the one-way hash function.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2006
From: NOGUCHI, YASUO; OGIWARA, KAZUTAKA; TAMURA, MASAHISA; TSUCHIYA, YOSHIHIRO; MARUYAMA, TETSUTARO; TAKE, RIICHIRO
To: FUJITSU LIMITED
Reel/Frame 018128/0860 →
Priority Claims (1)
JP 2006-084490 · Mar 27, 2006 · national
Continuity (1)
Related Publication 20070239961A1 · Oct 11, 2007