python base64庫給用戶名或密碼加密的流程
給明文密碼加密的流程:
import base64 pwd_after_encrypt = base64.b64encode(b'this is a scret!') pwd_before_encrypt = base64.b64decode(b'dGhpcyBpcyBhIHNjcmV0IQ==').decode('ascii') print(pwd_after_encrypt) print(pwd_before_encrypt)
運行結果:
b'dGhpcyBpcyBhIHNjcmV0IQ=='
this is a scret!
Process finished with exit code 0
則在代碼中的調用方式是:
import base64 username = 'root' password = base64.b64decode(b'dGhpcyBpcyBhIHNjcmV0IQ==').decode('ascii')
這樣做的好處:
不會在代碼中泄露密碼。
說明:
若某登錄密碼是字符串'this is a scret!',對該密碼的加密方式為:
1.首先導入python的base64庫;
2.調用base64庫中的base64.b64encode()對字符串'this is a scret!‘加密,得到密文(如題中的b'dGhpcyBpcyBhIHNjcmV0IQ==');
3.調用base64.b64decode()對b'dGhpcyBpcyBhIHNjcmV0IQ=='進行解密,得到真實的密碼(如題中的this is a scret!)。
注意:
base64處理的是byte類型的數(shù)據,所以在字符串之前需加上b,若想解密得到字符串類型的密碼,則需用'ascii'來decode byte類型的數(shù)據。
ps:python base64的加密與解密
Base64編碼是一種“防君子不防小人”的編碼方式。廣泛應用于MIME協(xié)議,作為電子郵件的傳輸編碼,生成的編碼可逆,后一兩位可能有“=”,生成的編碼都是ascii字符。 優(yōu)點:速度快,ascii字符,肉眼不可理解 缺點:編碼比較長,非常容易被破解,僅適用于加密非關鍵信息的場合 Python中進行Base64編碼和解碼 >>> import base64 >>> s = '我是字符串' >>> a = base64.b64encode(s) >>> print a ztLKx9fWt/u0rg== >>> print base64.b64decode(a) 我是字符串
總結
以上所述是小編給大家介紹的python base64庫給用戶名或密碼加密的流程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
相關文章
Python中exit、return、sys.exit()等使用實例和區(qū)別
這篇文章主要介紹了Python中exit、return、sys.exit()等使用實例和區(qū)別,本文是一個實際項目中的總結,需要的朋友可以參考下2015-05-05