我认为这里根本没有任何额外的保护措施。
我认为这里根本没有任何额外的保护措施。
提供的安全性并没有区别,但是由于压缩算法的工作方式,如果你先压缩再加密,你可能会获得更好的压缩。
压缩算法利用数据中的统计冗余(例如自然语言或许多文件格式中存在的冗余),这些冗余在加密时应该被消除,因此加密的消息不应该能够很好地被压缩。
来自维基百科文章:
然而,无损数据压缩算法总是不能将某些文件压缩;事实上,任何压缩算法都必然无法压缩不包含可识别模式的任何数据。因此,尝试压缩已经压缩过的数据通常会导致扩展,压缩除最简单的加密数据外的所有数据也将如此。
警告:如果攻击者控制了一部分需要进行压缩的明文,并且能够观察到加密后密文的大小,则可能通过调整他们控制的部分,直到密文的长度减小(这意味着他们控制的明文部分和秘密明文部分之间存在某种重复),来推断出其余的明文。
请参阅https://en.wikipedia.org/wiki/CRIME以获取更多信息。
加密在短消息上效果更好,对于符号的均匀分布尤其重要。压缩将具有非均匀符号分布的消息替换为另一个更均匀分布的、更短的符号序列。
因此,在加密之前进行压缩可以数学上更安全。加密后进行压缩不会影响加密,但由于明文的非均匀分布,加密仍然相对较弱。
当然,如果您使用类似AES256这样的加密算法,并且NSA没有盯上您,那么这都只是理论。
没有额外的安全性(因为压缩不是一种安全机制),但是一个正确加密的消息不应该容易被压缩(即经验法则:如果你可以显著地压缩加密的消息,那么有问题)。
因此,先压缩再加密。
提供的安全性没有任何区别。
是的,提供的安全性应该没有任何区别。