给明文密码加密的流程:
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(base64.b64encode(username)).decode('ascii')或者
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类型的数据,所以在字符串之前需加上b,若想解密得到字符串类型的密码,则需用’ascii’来decode byte类型的数据。
详情请参考:https://www.liaoxuefeng.com/wiki/897692888725344/949441536192576