1. 程式人生 > >python 摘要:hmac

python 摘要:hmac

msg 鏈接 mac 算法 清晰 bre mil pin asi tab

廖某在文章中解釋得很含糊,我只知道hmac是通過password+key進行生成,這與前面一節將的加Salt的方法差不多。

以下鏈接的博主解釋的很清晰。

https://blog.csdn.net/hwaphon/article/details/52175431


HMAC 算法主要應用於身份驗證,用法如下: 1.客戶端發出登錄請求 2.服務器返回一個隨機值,在會話記錄中保存這個隨機值 3.客戶端將該隨機值作為密鑰,用戶密碼進行 hmac 運算,遞交給服務器 4.服務器讀取數據庫中的用戶密碼,利用密鑰做和客戶端一樣的 hmac運算,然後與用戶發送的結果比較,如果一致,則用戶身份合法。


加Salt是固定的,用戶名也是固定的,被知道了一樣破解。但是,HMAC是的key是每次隨機的,這樣比加Salt的方法更加安全可靠。


import hmac
message = b'Hello, world!'
key = b'secret'
h = hmac.new(key, message, digestmod='MD5')
# 如果消息很長,可以多次調用h.update(msg)
print (h.hexdigest())

運行結果:

fa4ee7d173f2d97ee79022d1a7355bcf



python 摘要:hmac