阅读量:0
1.创作需求
日常生活中我们有很多文件想要保密。这个脚本可以方便大家对所有的文件类型进行加密,解密。最大程度保护我们的隐私。
2.话不多说,直接上代码
from cryptography.fernet import Fernet import docx # 加密 def encrypt_file(filename): # 生成密钥 key = Fernet.generate_key() # print("密钥:", key.decode()) # 加密 fernet = Fernet(key) with open(filename, 'rb') as file: original = file.read() encrypted = fernet.encrypt(original) with open(filename, 'wb') as enc_file: enc_file.write(encrypted) # 密码写入文件,每次都会重写 doc = docx.Document() doc.add_paragraph(str(key)) doc.save('密码.docx') # 解密 # 与加密采用的key值一样 # b''类型 def decrypt_file(filename,key): # 读取密码 fernet = Fernet(key) with open(filename, 'rb') as enc_file: encrypted = enc_file.read() decrypted = fernet.decrypt(encrypted) with open(filename, 'wb') as dec_file: dec_file.write(decrypted) # 使用 # 加密 # encrypt_file('1.docx') # 解密 # decrypt_file('1.docx',key=b'U31C5_NzIqOwq3dkA11ZfnBmTccPAAzNDofSNw5OzRY=')
3.注意事项
该脚本将密码自动保存在word文件种,解密时需要自己复制过来即可。
该脚本运行一次,新密码会覆盖旧密码(方便查找),如果想要保存多个密码,可以进行修改。
4. 开发者求助
我本想利用pysimplegui做一个界面,将密码复制过去,读取后的values值为str型,而解密种的密码key为b型,转化不是很顺利,求大佬指点解决这个问题。