python學習目錄05-hashlib-hmac-copy-uuid模組的語法
阿新 • • 發佈:2022-01-04
hashlib
和,hmac
模組:用來進行資料加密
1. hashlib 模組裡主要支援兩個演算法md5
和,sha
加密
加密方式: 1:單向加密:md5/sha,只有加密的過程,不能解密;2:對稱加密;3:非物件加密rsa
需要將加密的內容轉換成為二進位制
x=hashlib.md5('hello'.encode('utf=8'))
生成一個md5物件
print(x.hexdigest())
列印加密結果
x=hashlib.md5()
生成一個md5物件
x.update('hello'.encode('utf=8'))
md5加密格式
print(x.hexdigest())
2.sha
是一個系列的加密
h1=hashlib.sha1('12345'.encode())
print(h1.hexdigest())
h2=hashlib.sha224('12345'.encode())
#224位 一個十六進位制佔4位224/4=56
print(h2.hexdigest())
h3=hashlib.sha256('12345'.encode())
print(h3.hexdigest())
h4=hashlib.sha384('12345'.encode())
print(h4.hexdigest())
3.hmac
加密可以指定祕鑰,使用 h 對 你好 進行加密
h=hmac.new('h'.encode(),'你好'.encode())
result = h.hexdigest()
print(result)
#獲取加密後的結果
copy
複製模組:有copy和deepcopy兩個函式,分別用來對資料進行深複製和淺複製
import copy
nums=[1,2,3,4,[5,4,3],6,7,8]
num1=copy.copy(nums)
#對nums列表進行淺複製
num2=copy.deepcopy(nums)
#對nums列表進行深複製
uuid
用來生成一個全域性唯一的id
import uuid
print(uuid.uuid1())
#32個長度 每一個字元有16個選擇16**32
print(uuid.uuid2()) 沒有uuid2,不能用
uuid3 和uuid5 是使用傳入的字串根據指定的演算法算出來的,是固定的
print(uuid.uuid3(uuid.NAMESPACE_DNS,'zhangsan'))
生成固定的uuid
print(uuid.uuid5(uuid.NAMESPACE_DNS,'zhangsan'))
生成固定的uuid
print(uuid.uuid4())
使用最多