首页 > 解决方案 > 如何在python中加密gzip文件

问题描述

我是python的新手,我正在开发一个需要gzip文件的应用程序[为了减小文件的大小,因为我使用的加密在> 2GB时不处理数据]然后加密它. 我能够压缩文本文件,从而减小大小。然后,读取文件内容,gzip.open并发送数据进行加密。加密后,我必须再次将其写入gzip文件,这意味着它将再次gzip [gzipping the encrypted data]。但这是错误的。我的意图是压缩文件,然后对其进行加密并将文件中的加密数据发送到目标位置。

关于如何实现这一目标的任何建议?基本上,我想压缩文件并加密压缩后的数据,然后写回文件。因此接收方可以解密数据并解压缩以提取纯数据。

以下是我尝试过的代码:

def ungzip():
    file_name = "/tmp/mygzipdata.json.gz"
    json_data = "some json content"
    try:
       with gzip.open(file_name, 'wb') as output_file:
            json.dump(json_data, output_file, indent=4, default=default)

       gzip_file_contents = open(file_name, 'rb')
       data = gzip_file_contents.read()
       ## my encryption code, where I will be encrypting "data"
       gzip_file_contents.close()
       gzip_file_contents = gzip.open(file_name, 'wb')
       gzip_file_contents.write(encrypted_data)
       gzip_file_contents.close()

    except Exception as e:
        print(e)

标签: pythonencryptiongzip

解决方案


推荐阅读