这个很简单了,直接调用在Python中默认已有的hashlib库即可。
对于下载下来的文件,可通过该脚本查看Hash值是否和官网上的一样,不一样的话就被动过手脚了 :-)
代码:
#coding=utf-8
import hashlib
import sys
if len(sys.argv) == 3:
try:
if(sys.argv[2].lower() == 'md5'):
print hashlib.md5(open(sys.argv[1],'rb').read()).hexdigest()
elif(sys.argv[2].lower() == 'sha-1'):
print hashlib.sha1(open(sys.argv[1],'rb').read()).hexdigest()
elif(sys.argv[2].lower() == 'sha-256'):
print hashlib.sha256(open(sys.argv[1],'rb').read()).hexdigest()
elif(sys.argv[2].lower() == 'sha-512'):
print hashlib.sha512(open(sys.argv[1],'rb').read()).hexdigest()
else:
print '[-]Please input a correct encryption algorithm.'
except:
print '[-]Please input a correct filename.'
else:
print '[*]Usage: python check_hash.py [Filename] [MD5|SHA-1|SHA-256|SHA-512]'
测试用例用的是前段时间的X-Shell里面的一个可能存在后门的文件,也可以对应出它相应的版本: