BuildID SHA1是什么意思?

出现这种情况时,我正在ubuntu统一终端窗口中探索:

当我输入:

file /bin/ls 

输出是:

 /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x214a38d0db472db559f0dabf0ae97f82fea83e03, stripped 

我想validationsha1是否正确,因此我键入了这个:

 openssl sha1 /bin/ls 

但是,输出是这样的:

 SHA1(/bin/ls)= 8800fee57584ed1c44b638225c2f1eec818a27c2 

虽然它们具有hex的相同长度,但它们似乎不匹配。 我错过了什么? 或者BuildID[sha1]引用了其他内容?

或者BuildID [sha1]是否引用了其他内容?

BuildID不是二进制的哈希值或与之相关。 它是生成该二进制文件的“构建”(或编译)会话的标识符。 它主要用于调试目的,因此开发人员可以从会话号$ BuildID查看日志,环境等,并尝试解决问题,重现问题等。

BTW,任何东西的SHA1哈希总是160位长:)