gpt4 book ai didi

unix - gpg解密 block 大小限制

转载 作者:行者123 更新时间:2023-12-02 20:48:50 27 4
gpt4 key购买 nike

我在对大文件进行解密和执行一些基本操作的 gpg 解密时遇到问题。正常解密文件为60G,解密后膨胀到450G。

解密,然后行计数(wc -l)仅在 HDFS 层内完成;下面是代码片段

rowCount=`hdfs dfs -cat ${hdfsDir}/{fileName} | decrypt | wc -l`

上面的“解密”应该替换为 gpg --decrypt ... 命令。我没有写在这里只是为了避免它。
对于像 2~3Gigs 这样的小文件,代码可以正常工作。但是对于像我上面提到的大小这样的大文件,解密会抛出以下错误:
gpg: block_filter 0x7f2cf62547c0: read error (size=14560,a->size=14560)
gpg: block_filter 0x7f2cf624c990: read error (size=14900,a->size=14900)
gpg: mdc_packet with invalid encoding
gpg: decryption failed: Invalid packet
gpg: block_filter: pending bytes!
gpg: block_filter: pending bytes!

有人知道发生了什么吗?

最佳答案

没有“ block 大小限制”之类的东西。数据加密在 block 大小的 block 上逐字节加密(AES 为 16 字节)。最多可以添加一个数据 block 以将最后一个字节填充到一个完整 block 中,该完整 block 在解密时被删除。

gpg 是默认压缩然后加密。因此,压缩/解压缩导致解密大小增加。

注意:我用谷歌搜索:“gpg 压缩”, HitTest 门的问题是:“GNU GPG 是否默认压缩?”第一个答案是:"is"和“默认为'ZIP'”。

关于unix - gpg解密 block 大小限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46841143/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com