The destination file is split into chunks, each of which is computed two checksums: a cryptographic hash[?] and a rolling checksum. The rolling checksum has the property that if bytes n and n+k are known, the checksum of bytes n+1 to n+k can be computed from these and the checksum of bytes n to n+k-1 without knowing the intermediate bytes. The rolling checksum is computed for all chunk-sized contiguous blocks of the source file; any that match a destination chunk checksum are computed the cryptographic hash. All parts of the source file which don't match any chunk in the destination are transferred, and the file is reassembled.
See also:
Search Encyclopedia
|
Featured Article
|