比较从同一个确切来源构建的两个可执行文件的校验和

Haw*_*001 4 c c++ checksum visual-studio

我有一个关于验证可执行文件的问题,使用visual studio编译,使用校验和:如果我从src构建项目,我最终得到一个可执行文件,称之为exec1.exe,其中包含一些元数据.如果我稍后重建相同的src,我得到另一个可执行文件,比如exec2.exe,它也有自己的元数据部分.

如果我为两个文件中的每个文件创建校验和,则它们会有所不同,因为两个文件之间的元数据信息不同.当我对文件进行校验和时,是否有人知道绕过元数据的方法,因此无论元数据如何,对这两个文件执行校验和将导致相同的校验和值?或者如何编译二进制文件,这样只要src完全相同,我最终会得到相同的可执行文件?

提前感谢您的意见,问候

Cam*_*n S 5

在连续构建中构建相同的源文件时,无法保证Visual C++将生成相同的二进制映像.校验和不打算以这种方式使用,经过一些研究后,似乎很难实现.相反,诸如此kb文章之类的资源可以帮助比较文件.

校验和通常用于查找由发送/存储数据导致的错误,而不是用于比较可执行文件的版本/构建.