Вообще
есть, но есть ли гарантия того что к примеру не произшло "смещение" в каком ни будь заголовке файла, которое сводит "на нет" всю идею блочного копирования. Писал подобное приложение когда после скачивания GTA 5 со стороннего сервера (с моим интернетом ушло больше недели) оказалось, что какие то файлы повреждены (вероятно отключем света во время загрузки), перекачивать конечно не вариант, пришлось химичать. То же самое приложение пригодно и для вашего случая (по крайней мере для "потестить"), оно сканирует папку со всем ее содержимым и каждый файл разбивает на блоки около 1 мб, для каждого блока вычисляет чексумму, которую сохраняет в файл "отчета", после на основе данного отчета вычисляется каких блоков не хватает в той папке и какие блоки нужно заменить и генерирует "патч", который просто "накатывается" поверх содержимого той папки с которой делали отчет. В моем случае патч для GTA 5 оказался меньше 2 мб для 50Гб папки. Если интересно могу переделать для вашей задачи, к примеру в режим консоли.
Так же в теории (не проверял и не очень представляю как проверить) может тоже самое делать bittorent sync.