哪些解压缩算法可以安全地用于攻击者提供的缓冲区?

Which decompression algorithms are safe to use on attacker-supplied buffers?

我想通过压缩来节省网络带宽,例如 bzip2 或 gzip。

攻击者和普通用户都可能发送压缩消息。

是否有字节序列会导致某些解压缩函数陷入无限循环或使用大量内存?

是吗,这是这些算法的基础 属性,还是只是一个实现错误?

我只能为zlib的inflate说话。没有会导致无限循环或不受控制的内存消耗的输入。

由于deflate的最大压缩量小于1032:1,那么正常工作时inflate最多可以膨胀到差不多1032:1。你只需要能够处理这种可能性。