我正在考虑以下内容:我有一些数据流,我想保护尽可能安全 - 是否有任何意义应用让我们说AES与一些IV,然后Blowfish与一些IV,最后再次AES与一些IV?
加密/解密过程将被隐藏(甚至防止调试),因此不容易猜出哪种加密方法和使用了什么IV(但是,我知道这个加密链的功能不能依赖因为每一次防止调试的保护都会在一段时间后破坏.
我有计算机能力(数据量不是那么大)所以问题只是它是否值得实施.例如,TripleDES工作非常相似,使用三个IV和加密/解密/加密方案,因此它可能不是完全无意义的.另一个问题是,当我对第一和第三部分使用相同的IV或者对所有三部分使用相同的IV时,我有多少降低了安全性?
我欢迎任何有关此主题的提示
我不确定这个特定的组合,但除非特定的组合已被广泛研究,否则混合这样的东西通常是个坏主意.数学变换实际上可能会相互抵消,最终结果会更容易被破解.单次通过AES或Blowfish应该绰绰有余.
更新:从我在下面的评论...
以TripleDES为例:想想世界上最好的密码学家花了多少时间和精力来创建这种组合(注意DoubleDES有一个漏洞),尽管有192位密钥,他们能做的最好的是112位安全性.
更新2:我必须同意Diomidis,AES 极不可能成为系统中的薄弱环节.事实上,系统的每个其他方面都比AES更容易受到损害.
更新3:根据您对流的操作,您可能只想使用TLS(SSL的后继者).我推荐Practical Cryptography以获取更多详细信息 - 它可以很好地解决您需要解决的许多问题.除其他外,它讨论了流密码,它可能比AES更合适(因为AES是一个分组密码,你特别提到你有一个数据流要加密).