標籤:通過 style class ccf port 格式 eve size new
hashlib模組
- 用於加密相關的操作,代替了md5模組和sha模組
- 主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 演算法
# md5廢棄import md5hash = md5.new()hash.update(‘admin‘)print hash.hexdigest()
# sha 廢棄import shahash = sha.new()hash.update(‘admin‘)print hash.hexdigest()
hashlib加密:
import hashlib# ######## md5 ########hash = hashlib.md5()hash.update("evescn".encode(‘utf-8‘))print(hash.hexdigest())# ######## sha1 ########hash = hashlib.sha1()hash.update("evescn".encode(‘utf-8‘))print(hash.hexdigest())# ######## sha256 ########hash = hashlib.sha256()hash.update("evescn".encode(‘utf-8‘))print(hash.hexdigest())# ######## sha384 ########hash = hashlib.sha384()hash.update("evescn".encode(‘utf-8‘))print(hash.hexdigest())# ######## sha512 ########hash = hashlib.sha512()hash.update("evescn".encode(‘utf-8‘))print(hash.hexdigest())# 輸入結果:48fc6919f119605c4064ea7d81ac6b34f2e9afa0fbde5b05a444f7bc75d6695fbb84b8d005406e832ad8456184cd36fd3bd88dd1fff2392eb873a1fe7aff9e6332bd7a353e8027e7a2aa54ba604fbe66f853212f23b4fbae80883972fc8a24a92c04b9cb7c3ee01840ccb98f5c3edf897d15f9fae7931c755048f72babc0b6f016c1581a51c4af7d3bef64a1c21156866a68cccf37d6914bacde9f0d7b83e328bc2025847f6754b6eec57be91f06e6ad5ca17d1b
python3,2種加密書寫格式
import hashlib# ######## md5 ########hash = hashlib.md5()hash.update("evescn".encode(‘utf-8‘))print(hash.hexdigest())hash = hashlib.md5()hash.update(b"evescn")print(hash.hexdigest())# 輸入結果:48fc6919f119605c4064ea7d81ac6b3448fc6919f119605c4064ea7d81ac6b34
以上密碼編譯演算法雖然依然非常厲害,但時候存在缺陷,即:通過撞庫可以反解。所以,有必要對密碼編譯演算法中添加自訂key再來做加密。
import hashlib# ######## md5 ########hash = hashlib.md5("evescn".encode(‘utf-8‘))hash.update("evescn".encode(‘utf-8‘))print(hash.hexdigest())# 輸入結果:d6fd21d81a89fa360fe2ee37c6417b6f
python 還有一個 hmac 模組,它內部對我們建立 key 和 內容 再進行處理然後再加密
import hmach = hmac.new(b"evescn")h.update(b"evescn")print(h.hexdigest())# 輸入結果:bd4e50d0a9c686fad0a0be089ba918be
Python hashlib模組