一般md5默認(rèn)用16進(jìn)制,生成一個(gè)32位字符串扁掸,但是有些也會(huì)生成2進(jìn)制然后進(jìn)行base64加密
1谴分、生成文件md5
import hashlib
import base64
import binascii
#生成16進(jìn)制
with open('filePath', 'rb') as f:
md5 = hashlib.md5(f.read()).hexdigest()
print(2,md5)
#生成2進(jìn)制,然后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進(jìn)制和2進(jìn)制的轉(zhuǎn)換
#16轉(zhuǎn)2
rs = binascii.unhexlify('751aeb08b6eefbca3eb3b9e8e8c40d1b')
ac=base64.b64encode(rs).decode('utf-8')
print(ac)
#2轉(zhuǎn)16
rs2 = base64.b64decode('dRrrCLbu+8o+s7no6MQNGw==')
ac2=binascii.hexlify(rs2).decode('utf-8')
print(ac2)