python-自动化篇-办公-文件-加解密

解说

要使⽤Python进⾏⽂件的加密和解密,可以使⽤第三⽅加密库,如cryptography或pycryptodome。

⼀个基本的⽰例,演⽰如何使⽤cryptography库对⽂件进⾏加密和解密:

  1. 安装cryptography库:
python 复制代码
pip install cryptography
  1. ⽂件加密:
python 复制代码
from cryptography.fernet import Fernet 

# ⽣成加密密钥 
key = Fernet.generate_key() 
cipher_suite = Fernet(key) 

# 读取要加密的⽂件 
with open('plain_file.txt', 'rb') as file: 
	plain_text = file.read()

# 加密⽂件内容 
cipher_text = cipher_suite.encrypt(plain_text) 

# 将加密后的内容写⼊⽂件 
with open('encrypted_file.txt', 'wb') as file: 
	file.write(cipher_text) 

# 保存密钥⽤于解密 
with open('encryption_key.key', 'wb') as key_file: 
	key_file.write(key)
  1. ⽂件解密:
python 复制代码
from cryptography.fernet import Fernet 

# 从⽂件中加载密钥 
with open('encryption_key.key', 'rb') as key_file: 
	key = key_file.read() 

cipher_suite = Fernet(key) 

# 读取要解密的⽂件 
with open('encrypted_file.txt', 'rb') as file: 
	cipher_text = file.read() 

# 解密⽂件内容 
plain_text = cipher_suite.decrypt(cipher_text) 

# 将解密后的内容写⼊⽂件 
with open('decrypted_file.txt', 'wb') as file: 
	file.write(plain_text)

在这个⽰例中,使⽤Fernet对⽂件进⾏加密和解密。⾸先,⽣成⼀个随机密钥,然后使⽤密钥对⽂件 内容进⾏加密。加密后的内容和密钥都保存在⽂件中。然后,使⽤相同的密钥来解密⽂件内容。 请注意,⽂件加密和解密需要妥善保管密钥,因为只有拥有正确密钥的⼈才能解密⽂件。密钥丢失后,⽂件将无法解密。因此,请确保密钥的安全存储。此外,⽂件加密和解密是敏感操作,需要小心处理,确保不会丢失任何数据。

演练

第一步:创建要加密的文件

第二步:运行加密

python 复制代码
from cryptography.fernet import Fernet 

# ⽣成加密密钥 
key = Fernet.generate_key() 
cipher_suite = Fernet(key) 

# 读取要加密的⽂件 
with open('plain_file.txt', 'rb') as file: 
	plain_text = file.read()

# 加密⽂件内容 
cipher_text = cipher_suite.encrypt(plain_text) 

# 将加密后的内容写⼊⽂件 
with open('encrypted_file.txt', 'wb') as file: 
	file.write(cipher_text) 

# 保存密钥⽤于解密 
with open('encryption_key.key', 'wb') as key_file: 
	key_file.write(key)

第三步:出现加密成功的文件

第四步:运行解密脚本

python 复制代码
from cryptography.fernet import Fernet 

# 从⽂件中加载密钥 
with open('encryption_key.key', 'rb') as key_file: 
	key = key_file.read() 

cipher_suite = Fernet(key) 

# 读取要解密的⽂件 
with open('encrypted_file.txt', 'rb') as file: 
	cipher_text = file.read() 

# 解密⽂件内容 
plain_text = cipher_suite.decrypt(cipher_text) 

# 将解密后的内容写⼊⽂件 
with open('decrypted_file.txt', 'wb') as file: 
	file.write(plain_text)

第五步:生成解密的文件

相关推荐
点云-激光雷达-Slam-三维牙齿1 小时前
速度起飞 笔记本电脑6G显卡llama运行Qwen3.6 35BA3B MTP 大模型
人工智能·python·电脑·llama
言乐62 小时前
Python游戏水平测试辅助系统
开发语言·python·游戏·django·pygame
从零开始学习人工智能8 小时前
【踩坑实录】WSL2 解决 onnxruntime\-gpu ImportError: libcudart\.so\.13 无 CUDA13 运行库问题
python
WWJA王文举9 小时前
I²C通信完整流程详解:START、地址、ACK、数据、Repeated START和STOP一次讲透
c语言·开发语言
科技绘图9 小时前
快鲸GEO vs 传统AI搜索优化:全链路自动化与高效内容生产在转化闭环上的对比
数据库·人工智能·自动化
卷无止境9 小时前
在 awesome-fastapi 里,哪些库值得一看?
后端·python
zhanghaha131410 小时前
Python进阶教程:6_JSON 数据解析 —— 新手完全指南
开发语言·python·json
Python私教10 小时前
API 输出模型怎么设计:从 model_dump() 到显式展示层
python·fastapi
Python私教10 小时前
本地 AI 工具服务该绑定 127.0.0.1 还是 0.0.0.0?
python·fastapi
卷无止境11 小时前
FastAPI 的Admin面板生态
后端·python