Patent ID: 8327061

Claim:
A method for managing digital data storage, the method comprising steps of: a computer segmenting a computer-readable, tangible storage device into a reference area and a block storage area and segmenting the block storage area into storage blocks of a common length; the computer storing data information in respective storage blocks of the block storage area; the computer generating respective reference information for the blocks of data, the reference information including respective fingerprint information based on bit patterns of respective first blocks stored on the computer-readable, tangible storage device and a linked list of other first blocks having different bit patterns but equal fingerprint values, the linked list being one of one or more linked lists wherein respective linked lists correspond to respective fingerprint values; the computer storing the first blocks in the block storage area and the reference information in the reference area with reference information pointing to each corresponding first block, the reference information for the respective first blocks including respective fingerprint values for the first blocks based on respective bit patterns for the first blocks and the linked list of other first blocks having different bit patterns but equal fingerprint values, the computer determining a bit pattern of a subsequent block and a fingerprint value in accordance with the bit pattern of the subsequent block and checking the bit pattern of the subsequent block for being identical to a bit pattern of any of the first blocks previously stored at any location in the block storage area and identified in the linked list as having a fingerprint value equal to a fingerprint value of the subsequent block, and the computer storing the subsequent block and corresponding reference information in the block storage area and the reference area, respectively, of the computer-readable, tangible storage device if the bit pattern of the subsequent block is different from the bit pattern of all previously stored first blocks having the same fingerprint value and storing the subsequent block in the storage device as a reference referring to the corresponding first block without storage of the bit pattern of the subsequent block in the block storage area of the computer readable, tangible storage device if the bit pattern of the subsequent block is identical to any first block having the same fingerprint value.