【发布时间】:2015-12-31 03:10:12
【问题描述】:
我有一个简单的要求,如果消息超过 X 字节的上限,我想丢弃或不处理它。但是,发件人可以压缩消息并发送。如果用户创建一个随机消息,例如全 0 或 1 等,则压缩熵变化很大。然而,假设一个受信任的发件人有办法窥视压缩消息并在解压缩时估计其实际大小。我正在使用使用 java.util.zip 的 Zip 协议,但我对其他库或语言中的任何解决方案持开放态度。
【问题讨论】:
-
如果您只担心“可信”用户会发送合理的消息,为什么不使用固定的近似值?
-
信任但验证 :) 在更严肃的说明中,我的意思是信任,因为消息不会是垃圾邮件或 DOS 消息,但用户可以说将非常大的 XML 或 PDF 夹在信息 。消息很少会超过我们设置的 MAX 限制。
-
你怎么能通过偷看来判断呢?如果有一些灾难性的减压,直到它发生,你才能找到它!
标签: java zip compression data-compression lossless-compression