Python之MD5加密
阿新 • • 發佈:2019-01-24
Python 3下MD5加密
# 由於MD5模組在python3中被移除
# 在python3中使用hashlib模組進行md5操作
import hashlib
# 待加密資訊
str = 'this is a md5 test.'
# 建立md5物件
hl = hashlib.md5()
# Tips
# 此處必須宣告encode
# 若寫法為hl.update(str) 報錯為: Unicode-objects must be encoded before hashing
hl.update(str.encode(encoding='utf-8'))
print('MD5加密前為 :' + str)
print('MD5加密後為 :' + hl.hexdigest())
執行結果
封裝Python3下MD5加密
# 生成MD5
def genearteMD5(str):
# 建立md5物件
hl = hashlib.md5()
# Tips
# 此處必須宣告encode
# 否則報錯為:hl.update(str) Unicode-objects must be encoded before hashing
hl.update(str.encode(encoding='utf-8'))
print('MD5加密前為 :' + str)
print('MD5加密後為 :' + hl.hexdigest())
Python2版本中帶有MD5模組生成MD5 如下
import md5
src = 'this is a md5 test.'
m1 = md5.new()
m1.update(src.encode(encoding='utf-8'))
print(m1.hexdigest())