Я хотел бы иметь возможность сравнить двоичный файл X с каталогом других двоичных файлов и найти, какой другой файл больше всего похож на X. Природа данных такова, что идентичные фрагменты будут существовать между файлами, но, возможно, смещены в местоположении . Все файлы имеют размер 1 МБ, а их около 200. Я хотел бы иметь что-нибудь достаточно быстрое, чтобы проанализировать их за несколько минут или меньше на современном настольном компьютере. Я немного погуглил и нашел несколько разных двоичных утилит сравнения, но ни одна из них не кажется подходящей для моего приложения.
Например, есть bsdiff, который выглядит так, как будто он создает какой-то файл патча, оптимизированный по размеру. Или vbindiff, который просто отображает различия графически, но на самом деле это не помогает мне понять, похож ли один файл на X больше, чем на другой.
Если нет инструмента, который я мог бы использовать непосредственно для этой цели, есть ли хорошая библиотека, которую кто-то мог бы порекомендовать для написания моей собственной утилиты? Python был бы предпочтительнее, но я гибкий.