Patent ID: 8352428

Claim:
A computer-implemented method comprising: receiving a file request corresponding to a selected file, wherein a plurality of file versions of the selected file are maintained on a first nonvolatile storage media, wherein the first nonvolatile storage media is a network-accessible storage media; retrieving the plurality of file versions from the first nonvolatile storage media; retrieving a plurality of expected hash values, wherein each of the plurality of expected hash values corresponds to one of the plurality of file versions; storing the retrieved plurality of file versions in a second nonvolatile storage media; selecting a newest file version from the plurality of file versions; executing a hash function against a contents of the selected newest file version, the executing resulting in a first hash result; comparing the first hash result to the expected hash result corresponding to the selected newest file version; in response to the first hash result matching the expected hash result: providing the selected newest file version to the requestor; and in response to the first hash result not matching the expected hash result: repeatedly selecting a next newest file version from the plurality of file versions; executing a hash function against a contents of the selected newest file version, the executing resulting in a first hash result; comparing the first hash result to the expected hash result corresponding to the selected newest file version; repeatedly selecting a next newest file version from the plurality of file versions, executing a hash function against a contents of the selected next newest file version, the executing resulting in a corresponding hash result, and comparing the corresponding hash result to the expected hash result of the selected next newest file until the corresponding hash result of the selected next newest file version matches the expected hash result corresponding to the selected next newest file version; and providing the selected next newest file version to the requestor in response to the corresponding hash result of the next newest file version matching the expected hash result that corresponds to the next newest file version.