import hashlib
m1 = hashlib.md5()
m2 = hashlib.sha1()
m3 = hashlib.sha3_256()
m4 = hashlib.sha512() # 不加鹽
m_4 = hashlib.sha512('R'.encode('utf-8')) # 加鹽
m1.update('今天晚上去哪喫飯'.encode('utf8')) # 默認爲Unicode 需要的是bit 所以需要轉換
print('A:今天晚上去哪喫飯:', m1.hexdigest()) # 十六進制返回 加密後
m2.update('老地方'.encode('utf8')) # 默認爲Unicode 需要的是bit 所以需要轉換
print('B:老地方:', m2.hexdigest()) # 十六進制返回 加密後
m3.update('喫什麼?隨便嗎?'.encode('utf8'))
print('A:喫什麼?隨便嗎?:', m3.hexdigest()) # sha256 加密
m4.update('請問,A和B相約去哪喫飯?喫什麼?'.encode('utf-8'))
print('請問,A和B相約去哪喫飯?喫什麼?:', m4.hexdigest())
m_4.update('請問,A和B相約去哪喫飯?喫什麼?'.encode('utf-8'))
print('(加鹽)請問,A和B相約去哪喫飯?喫什麼?:', m_4.hexdigest())
要點:
- 指定要加密信息m的加密算法。格式:m=hashlib.md5()。支持的加密算法有:
# 'md5', 'sha1', 'sha224', 'sha256', 'sha384', 'sha512','blake2b', 'blake2s', # 'sha3_224', 'sha3_256', 'sha3_384', 'sha3_512','shake_128', 'shake_256'
- 向加密信息添加加密內容:m.update('hello'.encode('utf-8')) 注意:默認爲Unicode,而需要加密的是bit,所以需要轉換
- 輸出加密後信息:m.hexdigest() 十六進制返回加密信息。
- 其他加密都和上面三個過程相同。