How does it work?
RFSync creates a hashfile that contains the hashes of 50kb blocks
of a file. When creating a difffile, RFsync takes the complete file,
the hashfile and writes all blocks, that differ from the hashed files
to the diff-file. The blocks in the diff-file can be written in the
incomplete file then. Taht also works if the incomplete file has a smaller
size than the complete file.
Why not use rsync?
a great software that can synchronize filesystems over networks. If
you need to make a remote backup or mirror, take a look at it. But if
you just want to sync a single file, it would be too much work to set
up an rsync server and client for it. So use rfsync instead.
Why not use WinCRC?
is another tool to sync files. It works as a client or a server. The
person with the complete file chooses the complete file and sets it
up as a server and the one with the corrupt file connects to the server
to correct his file. However, that works just if the files are of exactly
the same size and the person with the complete file isn't behind a firewall.
Also this works just on windows. With RFSync you can sync files between
Win and Unix or Unix and Unix and you can complete a file that is smaller
than the complete file.