Python数据加密怎样实现简单

avatar
作者
筋斗云
阅读量:0

在Python中,有多种方法可以实现数据加密。以下是两种简单的方法:

  1. 使用cryptography库进行加密和解密操作。首先需要安装该库,可以使用以下命令进行安装:
pip install cryptography 

然后可以使用Fernet对称加密算法进行加密和解密操作。以下是一个示例代码:

from cryptography.fernet import Fernet  # 生成密钥 key = Fernet.generate_key() cipher_suite = Fernet(key)  # 加密数据 data = b"Hello, World!" encrypted_data = cipher_suite.encrypt(data) print("Encrypted data:", encrypted_data)  # 解密数据 decrypted_data = cipher_suite.decrypt(encrypted_data) print("Decrypted data:", decrypted_data) 
  1. 使用pycryptodome库进行加密和解密操作。首先需要安装该库,可以使用以下命令进行安装:
pip install pycryptodome 

然后可以使用AES对称加密算法进行加密和解密操作。以下是一个示例代码:

from Crypto.Cipher import AES from Crypto.Random import get_random_bytes from Crypto.Util.Padding import pad, unpad import base64  # 生成密钥 key = get_random_bytes(16) cipher_suite = AES.new(key, AES.MODE_CBC)  # 加密数据 data = b"Hello, World!" iv = cipher_suite.iv encrypted_data = cipher_suite.encrypt(pad(data, AES.block_size)) encrypted_data = base64.b64encode(iv + encrypted_data) print("Encrypted data:", encrypted_data)  # 解密数据 decoded_data = base64.b64decode(encrypted_data) iv = decoded_data[:16] encrypted_data = decoded_data[16:] cipher_suite = AES.new(key, AES.MODE_CBC, iv) decrypted_data = unpad(cipher_suite.decrypt(encrypted_data), AES.block_size) print("Decrypted data:", decrypted_data) 

需要注意的是,以上示例中的加密和解密操作都是对称加密算法,即使用相同的密钥进行加密和解密操作。在实际应用中,通常会使用非对称加密算法(如RSA)来保证密钥的安全性,并使用对称加密算法来加密大量的数据。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!