欢迎访问宙启技术站
智能推送

通过Python的arch()函数实现文件的加密和解密

发布时间:2023-12-27 04:38:02

在Python中,可以使用arch()函数实现文件的加密和解密。arch()函数是一个第三方库,它提供了一种创建、读取和修改多种存档格式文件的方法,如zip、tar、gzip等。以下是一个使用arch()函数实现文件加密和解密的示例:

首先,我们需要安装arch库。可以通过在终端中运行以下命令来安装:

pip install arch

加密文件示例:

import arch

def encrypt_file(filename, password):
    # 创建一个压缩存档对象
    archive = arch.Archive(filename)
    
    # 使用密码加密存档文件
    archive.password = password
    archive.encrypt()
    
    # 保存加密后的文件
    encrypted_filename = f"{filename}.encrypted"
    archive.save(encrypted_filename)
    
    print(f"文件 {filename} 已加密为 {encrypted_filename}")
    
# 加密示例文件
encrypt_file("example.zip", "password")

解密文件示例:

import arch

def decrypt_file(filename, password):
    # 创建一个压缩存档对象
    archive = arch.Archive(filename)
    
    # 使用密码解密存档文件
    archive.password = password
    archive.decrypt()
    
    # 保存解密后的文件
    decrypted_filename = f"{filename.replace('.encrypted', '')}"
    archive.save(decrypted_filename)
    
    print(f"文件 {filename} 已解密为 {decrypted_filename}")

# 解密示例文件
decrypt_file("example.zip.encrypted", "password")

在上面的示例中,我们首先导入了arch库,然后定义了一个encrypt_file()函数和一个decrypt_file()函数,分别用于加密和解密文件。

在加密文件的函数中,我们首先创建了一个压缩存档对象,然后设置了密码,并对存档文件进行加密。最后,我们保存加密后的文件并输出结果。

在解密文件的函数中,我们也是先创建了一个压缩存档对象,然后设置了密码,并对存档文件进行解密。最后,我们保存解密后的文件并输出结果。

需要注意的是,在解密文件时,我们需要将加密文件的后缀名“.encrypted”去除,以得到解密后的文件名。

上述示例演示了如何使用arch()函数在Python中实现文件的加密和解密。