python3中md5和base64的使用

2021-09-27 00:14:15 字數 1023 閱讀 4244

目錄

1. md5簡介

2. base64簡介

3. python3實現md5加密

4. python3實現base64(反)序列化

md5是一種不可逆加密技術,常用在密碼加密、檔案驗證等場景;

密碼加密:**註冊的密碼,需要加密後才可以存入後台資料庫中;比如,使用者不希望銀行後台管理員知曉自己的銀行賬戶密碼;

密碼原始碼經過固定的md5演算法計算出固定的md5值,使用者輸入密碼原始碼就可以登陸,而儲存在資料庫中的密碼是加密的,且不可逆;

檔案驗證:發布檔案後,可計算md5值與之對應,如果檔案修改,重新計算的md5值會發生變化;所以我們可以根據檔案的md5值判斷檔案是否被修改;

base64與md5不同,base64是一種序列化計算,是可逆的,常用在web傳輸中;

base64、base32、base16的區別:

base64:

包含64個字元;大寫字母(a-z),小寫字母(a-z),數字(0-9)以及+/;

base32:

base32包含32個字元,中只有大寫字母(a-z)和數字234567;

base16:

base16包含16個字元,他的範圍是數字(0-9),字母(abcdef);

hashlib.md5('我愛北京天安門'.encode('utf-8')).hexdigest()
輸出如下:

序列化:

base64.b64encode('我愛北京天安門'.encode('utf-8'))
輸出如下:

反序列化:

base64.b64decode(b'5oir54ix5yyx5lqs5asp5a6j6zeo').decode('utf-8')
輸出如下:

Python3中的md5加密

在寫網路爬蟲模擬登陸時,遇到提交表單時是一串數字和字母,才知道經過了md5加密。md5加密的密碼 md5訊息摘要演算法 英語 md5 message digest algorithm 一種被廣泛使用的密碼雜湊函式,可以產生出乙個128位 16位元組 的雜湊值 hash value 用於確保資訊傳輸完...

Python3中的md5加密

def get md5 password 1 例項化加密物件 pswmd5 hashlib.md5 2 對密碼進行加密 pswmd5.update password.encode utf 8 3 返回加密後的密碼 return pswmd5.hexdigest 在寫網路爬蟲模擬登陸時,遇到提交表單時...

Python3中的md5加密

python的hashlib提供了常見的摘要演算法,如md5,sha1等等。摘要演算法又稱雜湊演算法 雜湊演算法。它通過乙個函式,把任意長度的資料轉換為乙個長度固定的資料串 通常用16進製制的字串表示 在python3的標準庫中,已經移除了md5模組,而關於hash加密演算法都放在hashlib這個...