使用python實現md5加密
python實現MD5加密
1、簡介
Message Digest Algorithm MD5(中文名為消息摘要算法第五版)為計算機安全領域廣泛使用的一種散列函數,用于確保信息傳輸完整一致。MD5是單向加密,指只能加密數據而不能解密數據,主要解決數據的完整性問題。
摘要算法又稱哈希算法、散列算法。它通過一個函數,把任意長度的數據轉換為一個長度固定的數據串(通常用16進制的字符串表示)。MD5是最常見的摘要算法,速度很快,可以將一個字符串,或文件,或壓縮包,執(zhí)行md5后,生成一個固定長度為128bit的串,通常用一個32位的16進制字符串表示。
在python3的標準庫中,已經移除了md5模塊,而關于hash加密算法都放在hashlib這個標準庫中,hashlib提供了常見的摘要算法,如SHA1、SHA224、SHA256、SHA384、SHA512和MD5算法等。
2、用途
加密注冊用戶的密碼,在保存用戶密碼時,不記錄密碼本身,只記錄密碼的MD5結果(即使數據庫被盜也無法反推出明文)。 網站用戶上傳圖片 / 文件后,將MD5值作為文件名。(MD5可以保證唯一性) key-value數據庫中使用MD5值作為key。 比較兩個文件是否相同。(在下載資源的時候,發(fā)現網站提供了MD5值,就是用來檢測文件是否被篡改)
3、使用hashlib模塊進行md5操作
import hashlib md5 = hashlib.md5() # md5對象,md5不能反解,但是加密是固定的 # update需要一個bytes格式參數 md5.update(str.encode('utf-8')) # 要對哪個字符串進行加密,就放這里 value = md5.hexdigest() # 拿到加密字符串
import hashlib str = '123456' md5 = hashlib.md5() # 創(chuàng)建md5加密對象 md5.update(str.encode('utf-8')) # 指定需要加密的字符串 str_md5 = md5.hexdigest() # 加密后的字符串 print(str_md5) # 結果:e10adc3949ba59abbe56e057f20f883e
到此這篇關于使用python實現md5加密的文章就介紹到這了,更多相關python md5加密內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
在Python 3中緩存Exception對象會造成什么后果?
這篇文章主要介紹了在Python 3中緩存Exception對象到底會造成什么后果?下面帶著這個問題一起看看文章的解析,需要的朋友可以參考一下2021-12-12