引言在数字化时代,数据安全和隐私保护变得尤为重要。Python作为一种功能强大的编程语言,提供了多种方法来加密文件,从而保护敏感信息不被未经授权的人员访问。本文将详细介绍Python文件加密的基本概念...
在数字化时代,数据安全和隐私保护变得尤为重要。Python作为一种功能强大的编程语言,提供了多种方法来加密文件,从而保护敏感信息不被未经授权的人员访问。本文将详细介绍Python文件加密的基本概念、常用加密方法和实际操作步骤,帮助您轻松掌握这一技能。
文件加密是一种将文件内容转换为不可读形式的技术,只有拥有正确密钥的用户才能解密并访问原始内容。Python提供了多种加密库,如cryptography和PyCrypto,可以方便地实现文件加密。
对称加密使用相同的密钥进行加密和解密。Python中常用的对称加密算法包括AES、DES和3DES。
from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
# 生成密钥
key = get_random_bytes(16) # AES-128位密钥
# 创建加密对象
cipher = AES.new(key, AES.MODE_EAX)
# 加密文件内容
with open('example.txt', 'rb') as file: plaintext = file.read()
nonce = cipher.nonce
ciphertext, tag = cipher.encrypt_and_digest(plaintext)
# 保存加密后的文件
with open('example.txt.enc', 'wb') as file: file.write(nonce + tag + ciphertext)非对称加密使用一对密钥:公钥和私钥。公钥用于加密,私钥用于解密。
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
# 生成密钥对
key = RSA.generate(2048)
private_key = key.export_key()
public_key = key.publickey().export_key()
# 加密文件内容
cipher = PKCS1_OAEP.new(RSA.import_key(public_key))
with open('example.txt', 'rb') as file: plaintext = file.read()
ciphertext = cipher.encrypt(plaintext)
# 保存加密后的文件
with open('example.txt.enc', 'wb') as file: file.write(ciphertext)通过以上步骤,您可以使用Python轻松实现文件加密,保护您的隐私和数据安全。