是的,Python的Crypto庫支持對稱加密。Crypto庫提供了多種加密算法,包括對稱加密算法,如AES(高級加密標準)、DES(數據加密標準)、Triple DES(三重數據加密算法)等。這些算法可以使用Crypto庫中的對應模塊進行加密和解密操作。
例如,使用AES算法進行對稱加密和解密的示例代碼如下:
from Crypto.Cipher import AES
from Crypto import Random
# 生成隨機密鑰
key = Random.new().read(32) # AES算法使用32字節密鑰
# 創建AES加密對象
cipher = AES.new(key, AES.MODE_EAX)
# 加密數據
nonce = cipher.nonce
ciphertext, tag = cipher.encrypt_and_digest(b'Hello, world!')
# 使用相同的密鑰和nonce進行解密
cipher2 = AES.new(key, AES.MODE_EAX, nonce=nonce)
plaintext = cipher2.decrypt(ciphertext)
print(plaintext) # 輸出:b'Hello, world!'
需要注意的是,在使用對稱加密算法時,密鑰的生成和管理非常重要。在實際應用中,應該使用安全的隨機數生成器來生成密鑰,并妥善保管密鑰,避免泄露。