阅读量:2
Python 加密和解密可以用于保护数据的隐私和安全。常见的加密和解密方法有:
- 对称加密算法(如 AES、DES、3DES):加密和解密使用相同的密钥。
- 非对称加密算法(如 RSA、ECC):使用一对公钥和私钥进行加密和解密。
- 散列算法(如 SHA-256、MD5):用于数据完整性校验和密码存储,而不是加密。
- 混合加密体系:结合以上多种方法以提高安全性。
以下是一个简单的 AES 加密和解密示例:
from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
from Crypto.Util.Padding import pad, unpad
import base64
# 加密函数
def encrypt(data, key):
cipher = AES.new(key, AES.MODE_CBC)
ct_bytes = cipher.encrypt(pad(data.encode('utf-8'), AES.block_size))
iv = base64.b64encode(cipher.iv).decode('utf-8')
ct = base64.b64encode(ct_bytes).decode('utf-8')
return iv + ':' + ct
# 解密函数
def decrypt(encrypted_data, key):
iv, ct = encrypted_data.split(':')
iv = base64.b64decode(iv)
ct = base64.b64decode(ct)
cipher = AES.new(key, AES.MODE_CBC, iv)
return unpad(cipher.decrypt(ct), AES.block_size).decode('utf-8')
# 示例
key = get_random_bytes(16) # 生成一个随机的 AES 密钥
data = 'Hello, World!'
encrypted_data = encrypt(data, key)
print('加密后的数据:', encrypted_data)
decrypted_data = decrypt(encrypted_data, key)
print('解密后的数据:', decrypted_data)
请注意,这个示例需要安装 pycryptodome 库。可以使用以下命令安装:
pip install pycryptodome
以上就是关于“Python加密与解密能加密啥”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm