用於加密相關的操作,在python3中替代了md5和sha模組,主要提供sha和md5演算法。
md5
import hashlibm = hashlib.md5() #呼叫md5方法
m.update(b'hello')
print(m.digest()) #b"\x8b\x1a\x99s\xc4a\x12\x96\xa8'\xab\xf8\xc4x\x04\xd7" 2進製格式hash
print(m.hexdigest()) #8b1a9953c4611296a827abf8c47804d7 16進製制格式hash
update()加密字串,連續加密的結果是多個字串拼接後加密的結果
import hashlibm = hashlib.md5()
m2 = hashlib.md5()
m.update(b'hello')
m.update(b'world')
print(m.hexdigest()) #68e109f0f40ca72a15e05cc22786f8e6
m2.update(b'helloworld')
print(m2.hexdigest())#68e109f0f40ca72a15e05cc22786f8e6
sha1
呼叫方法和md5的一樣
s1 = hashlib.sha1()s1.update(b'hello')
print(s1.hexdigest())#f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
hmac
內部建立key和內容再進行處理然後加密
import hmach = hmac.new(b'123456','hello'.encode(encoding='utf-8')) #key,value
print(h.hexdigest()) #8d8e945298c899a7eb03fede467121fe
python學習筆記5 加密模組hashlib
import hashlib md5 ybm pwd yuanbapqingsdfs234ff234hf f m hashlib.md5 bytes ybq ybm pwd.encode 把字串轉成bytes型別 m.update bytes ybq 加密,不能字串,只能傳bytes型別,二進位制 ...
python模組詳解
1.模組內容 模組可以包含可執行語句以及函式定義,可執行語句只有在第一次import或當作指令碼直接執行時才會執行。每個模組有自己的私有符號表,所以不會造成不同模組之間的變數汙染。2.匯入模組 模組匯入的三種方式 3.執行模組 執行的兩種方式 4.模組搜尋路徑 既然要匯入模組,直譯器就需要查詢匯入的...
python模組詳解 shelve
shelve模組是乙個簡單的k,v 將記憶體資料通過檔案持久化的模組,可以持久化任何pickle可以支援的python資料。簡單的說對 pickle的更上一層的封裝。寫檔案import shelve d shelve.open test4 這個檔案不用存在,執行自動生成 name hello chi...