一般md5默认用16进制,生成一个32位字符串,但是有些也会生成2进制然后进行base64加密
1、生成文件md5
import hashlib
import base64
import binascii
#生成16进制
with open('filePath', 'rb') as f:
md5 = hashlib.md5(f.read()).hexdigest()
print(2,md5)
#生成2进制,然后base64
with open('filePath', 'rb') as f:
md5 = hashlib.md5(f.read()).digest()
a=base64.b64encode(md5).decode('utf-8')
print(1,a)
2、16进制和2进制的转换
#16转2
rs = binascii.unhexlify('751aeb08b6eefbca3eb3b9e8e8c40d1b')
ac=base64.b64encode(rs).decode('utf-8')
print(ac)
#2转16
rs2 = base64.b64decode('dRrrCLbu+8o+s7no6MQNGw==')
ac2=binascii.hexlify(rs2).decode('utf-8')
print(ac2)