例如,我有两个C语言二进制可执行文件。如何确定这两个文件是否是使用相同的源代码生成的?
可以通过不同的方式添加版本信息。但是,如果你想要的话,你可以很容易地愚弄所有这些方法。
这里有一个简短的脚本可以帮助你。请注意,它可能存在缺陷。它只是为了展示这个想法。不要只是复制这个脚本用于生产代码。
#!/bin/bash
STR="asm(\".ascii \\\"$(md5sum $1)\\\"\");"
NEWNAME=$1.aux.c
cp $1 $NEWNAME
echo $STR >> $NEWNAME
gcc $NEWNAME