EgorS пишет:У Microsoft есть такая консольная прога FCIV (File Checksum Integrity Verifier), она тут. Я пытаюсь с ней разобраться, но чё-то ни хрена не понимаю...
Во-первых, постарайтесь, пожалуйста, выражать свое негодование более мягким способом, ибо правила форума еще никто не отменял. Во-вторых, не совсем понятно для чего Вам понадобилось использовать утилиту fciv.exe, которую Microsoft не поддерживает? С учетом криптографии MD5 уже давно признан не устойчивым к коллизиям алгоритмом, поэтому логичнее использовать нечто более устойчивое, скажем, SHA512. Впрочем, пока SHA1 официально не признан небезопасным, можно использовать его, тем паче, что fciv.exe его поддерживает.
Насколько могу припомнить свой опыт работы с данной утилитой, то синтаксис там примерно следующий:
#узнать MD5 файла
fciv filename
#узнать SHA1 файла
fciv -sha1 filename
#перенаправить вывод в базу данных
fciv filename -sha1 -xml hashes.xml
#сверить хэш с тем, что в БД
fcix -v filename -sha1 -xml hashes.xml
Точно не вспомню, но должно быть как-то так. Если же Вам интересно независимое мнение, то лучше от использование fciv.exe отказаться: спроектирована она достаточно криво, имеет баг с кодировками и свойство переполния буфера. Именно по этим причинам пришлось от ее использования отказаться. Куда проще использовать sigcheck из набора Sysinternals с параметрами -q -h в пакетном файле, который к тому же можно полностью написать с учетом личных требований или использовать другие решения.