如何分块解密大文件?
How to decrypt large files in chunks?
我正在尝试使用 PgPy 解密一个大文件,但遇到了这个问题:
OverflowError: integer 2632261350 does not fit '32-bit int'
很明显文件大小不合适,所以我想知道如何分块解密大文件?我们可以解密数据块吗?或者我们只能用我们拥有的密钥解密整个数据?
不确定 pgpy,但看看 python-gnupg。它是 gnupg 的包装器,能够 encrypt/decrypt 文件作为流。
with stream as open(filename,"rb"):
decrypted_data = gpg.decrypt_file(stream) # e.g. after stream = open(filename, "rb")
我认为这更多是内存问题而不是库问题。如果您可以使用 pgpy 解密为流,您将获得相同的结果。
我正在尝试使用 PgPy 解密一个大文件,但遇到了这个问题:
OverflowError: integer 2632261350 does not fit '32-bit int'
很明显文件大小不合适,所以我想知道如何分块解密大文件?我们可以解密数据块吗?或者我们只能用我们拥有的密钥解密整个数据?
不确定 pgpy,但看看 python-gnupg。它是 gnupg 的包装器,能够 encrypt/decrypt 文件作为流。
with stream as open(filename,"rb"):
decrypted_data = gpg.decrypt_file(stream) # e.g. after stream = open(filename, "rb")
我认为这更多是内存问题而不是库问题。如果您可以使用 pgpy 解密为流,您将获得相同的结果。