我们经常要下载各种软件,你会注意到很多好软件的下载页面都会注明这个软件的哈希值,比如 Shadowsocks:
https://github.com/shadowsocks/shadowsocks-windows/releases
你可以看到几个哈希值:MD5、SHA-1、SHA-256、SHA-512(这几个哈希的安全性也是如此递增的)。
现在,我们下载了 Shadowsocks,如何在本地校验呢?网上各种工具不少,但是放心的有多少?如果你和我一样是 Python 党,那就简单了,一句话就可以优雅地搞定这种校验。
MD5
python -c "import hashlib,sys;print hashlib.md5(open(sys.argv[1],'rb').read()).hexdigest()" Shadowsocks.exe
SHA-1
python -c "import hashlib,sys;print hashlib.sha1(open(sys.argv[1],'rb').read()).hexdigest()" Shadowsocks.exe
SHA-256
python -c "import hashlib,sys;print hashlib.sha256(open(sys.argv[1],'rb').read()).hexdigest()" Shadowsocks.exe
SHA-512
python -c "import hashlib,sys;print hashlib.sha512(open(sys.argv[1],'rb').read()).hexdigest()" Shadowsocks.exe
效果如图:
通过这样的一句话就可以生成对应的哈希值。一对比,如果哈希值不一样,那就知道你下载的软件被“中间人”动过手脚了:-)
这个小技巧我用了很久了,也写了个 Python 哈希校验小工具,不过有这样的一句话,小工具就无所谓了。
题外话下,之后无论发生什么大事,比如“方程式被泄露事件”下个月开始又会来些大招,如果有些东西放出了,记得校验下哈希值,因为这个江湖险恶。
from:https://mp.weixin.qq.com/s?__biz ... RmnI5M3fbndGHOBL#rd
|