hashlib模式和hmac模式
生活随笔
收集整理的這篇文章主要介紹了
hashlib模式和hmac模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
hashlib模式
什么叫hash?
一:hash是一種算法(3.x里代替了md5模塊和sha模塊,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法),該算法接受傳入的內容,經過運算得到一串hash值
特點:
1、只要傳入的內容一樣,得到的hash值必然一樣==========》可以保證下載內容完整性,文件完整性校驗
2、但是你拿到的值不能返回原來的內容=======》把密碼做成hash值,不要用明文傳輸
3、只要使用的hash算法不變,無論校驗的內容一樣,得到的hash值長度是固定
?
import hashlib()m=hashlib.md5()m.updata('hello'.encode('utf-8'))m.updata('world'.encode('utf-8'))m.updata('egon'.encode('utf-8'))
print(m.hexdigest()) ?
import hashlibm=hashlib.md5()
m.updata('hello'.encode('utf-8'))
m.updata('world'.encode('utf-8'))
m.updata('egon'.encode('utf-8'))
print('m.hexdigest()') 上下都一樣打印出來都一樣符合特點一
二;密碼加鹽(本質上就是把一些東西摻合在密碼當中讓密碼難以被他人截取識別啊)
import hashlib
pwd=‘alex3712’
m.hashlib.md5()
m.updata('Ryansuperwa'.encode('utf-8'))
m.updata(pwd.encode('utf-8'))
m.updata('aijie'.encode('utf-8'))
print(m.hexdigest()) ?
hmac模式:
python 還有一個 hmac 模塊,它內部對我們創建 key 和 內容 進行進一步的處理然后再加密:
import hmach1=hmac.new(b'egon') h1.update(b'hello') h1.update(b'world') print(h1.hexdigest())h2=hmac.new(b'egon') h2.update(b'helloworld') print(h2.hexdigest())
f1bf38d054691688f89dcd34ac3c27f2
f1bf38d054691688f89dcd34ac3c27f2 ? #要想保證hmac最終結果一致,必須保證:
#1:hmac.new括號內指定的初始key一樣
#2:無論update多少次,校驗的內容累加到一起是一樣的內容
?
轉載于:https://www.cnblogs.com/wuchenyu/p/8779106.html
總結
以上是生活随笔為你收集整理的hashlib模式和hmac模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [CQOI2014]数三角形 组合
- 下一篇: 看隔壁远嫁是不是都会后悔有感而想~让大家