如何在桐乡桑 shutil 中实现文件加密?

如何在桐乡桑 shutil 中实现文件加密?

步骤:

  1. 创建一个新的文件夹用于存储加密文件。
  2. 使用 shutil.copy() 函数将源文件复制到新文件夹中。
  3. 使用 os.urandom() 函数生成一个随机字符串。
  4. 使用 os.urandom() 函数生成一个随机字符串。
  5. 将随机字符串写入文件名为 random_file.txt 的文件中。
  6. 使用 os.system() 函数运行以下命令:
gpg -e -b 128 random_file.txt > encrypted_file.txt

代码:

import shutil
import os

# 创建新文件夹
folder_path = "path/to/folder"
os.makedirs(folder_path, exist_ok=True)

# 获取源文件路径
source_file_path = "source_file.txt"

# 创建新文件夹
encrypt_folder_path = os.path.join(folder_path, "encrypted_files")
os.makedirs(encrypt_folder_path, exist_ok=True)

# 复制源文件到新文件夹
shutil.copy(source_file_path, os.path.join(encrypt_folder_path, "source_file.txt"))

# 生成随机字符串
random_string = os.urandom(16)

# 写随机字符串到文件
with open(os.path.join(encrypt_folder_path, "random_file.txt"), "w") as f:
    f.write(random_string)

# 运行gpg命令加密文件
command = "gpg -e -b 128 " + os.path.join(encrypt_folder_path, "random_file.txt") + " > " + os.path.join(encrypt_folder_path, "encrypted_file.txt")
os.system(command)

注意:

  • 128 是 GPG 的加密算法选择,您可以根据需要更改。
  • random_file.txt 文件的大小应与源文件大小相同。
  • 确保您具有安装 GPG 的软件。
相似内容
更多>