12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
编程知识 时间:2024-12-07 12:35:47
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
在Python中,加密和解密可以通过多种方式实现。这里我将向您展示如何使用cryptography库进行简单的加密和解密操作。cryptography库是一个功能强大的加密库,支持对称加密和非对
以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。
在Python中,加密和解密可以通过多种方式实现。这里我将向您展示如何使用cryptography库进行简单的加密和解密操作。cryptography库是一个功能强大的加密库,支持对称加密和非对称加密算法。
首先,确保您已经安装了cryptography库。如果没有,请使用以下命令安装:
pip install cryptography
接下来,我们将使用Fernet对称加密算法进行加密和解密。以下是示例代码:
from cryptography.fernet import Fernet# 生成密钥def generate_key():return Fernet.generate_key()# 加密def encrypt(message, key):f = Fernet(key)encrypted_message = f.encrypt(message.encode())return encrypted_message# 解密def decrypt(encrypted_message, key):f = Fernet(key)decrypted_message = f.decrypt(encrypted_message).decode()return decrypted_message# 示例key = generate_key()message = "Hello, World!"encrypted_message = encrypt(message, key)print("Encrypted message:", encrypted_message)decrypted_message = decrypt(encrypted_message, key)print("Decrypted message:", decrypted_message)
在这个示例中,我们首先生成一个密钥,然后使用该密钥对消息进行加密和解密。请注意,密钥在加密和解密过程中必须保持一致。
除了对称加密,您还可以使用非对称加密算法,如RSA。以下是使用RSA进行加密和解密的示例代码:
from cryptography.hazmat.primitives.asymmetric import rsa, paddingfrom cryptography.hazmat.primitives import serialization, hashes# 生成RSA密钥对def generate_rsa_key_pair():private_key = rsa.generate_private_key(public_exponent=65537,key_size=2048,)public_key = private_key.public_key()return private_key, public_key# 加密def encrypt_rsa(message, public_key):encrypted_message = public_key.encrypt(message.encode(),padding.OAEP(mgf=padding.MGF1(algorithm=hashes.SHA256()),algorithm=hashes.SHA256(),label=None,))return encrypted_message# 解密def decrypt_rsa(encrypted_message, private_key):decrypted_message = private_key.decrypt(encrypted_message,padding.OAEP(mgf=padding.MGF1(algorithm=hashes.SHA256()),algorithm=hashes.SHA256(),label=None,))return decrypted_message.decode()# 示例private_key, public_key = generate_rsa_key_pair()message = "Hello, World!"encrypted_message = encrypt_rsa(message, public_key)print("Encrypted message:", encrypted_message)decrypted_message = decrypt_rsa(encrypted_message, private_key)print("Decrypted message:", decrypted_message)
在这个示例中,我们首先生成一个RSA密钥对,然后使用公钥进行加密,私钥进行解密。请注意,RSA加密通常用于加密较小的数据,因为加密较大的数据可能会导致性能下降。对于大文件加密,通常建议使用对称加密算法,然后使用RSA加密对称密钥。
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19