我的php脚本和我的c#应用程序会将一个哈希字符串传递给另一个32个字符长的字符串,这是什么最好的模式?我认为ECB但不确定,因为它说如果使用超过1块不使用。我如何知道该块有多大?
他们偶尔会传递一个大文本文件,这将是加密此文件的最佳模式... CBC?
任何好的有用读物都欢迎......
由于
答案 0 :(得分:2)
ECB(在许多其他问题中)的一个问题是它确定性地加密。也就是说,每次加密相同的ID时,都会得到相同的密文。因此,此模式不会阻止流量分析。攻击者可能无法获知加密的ID。但是,他仍然可以确定发送相同ID的时间和频率。
正确使用时,CBC和OFB为每次加密使用新的随机IV,因此每次加密相同的ID不同。由于您还确保所有ID都具有相同的长度,因此结果应该是密码,而攻击者无法区分重复ID和非重复ID。答案 1 :(得分:1)
ECB是最简单的模式,真的不推荐(它不像其他模式那么安全)。
就个人而言,我会使用CBC。
答案 2 :(得分:1)
除了Accipitridae的回答。您需要将IV提供给解密过程。对于CBC或OFB来说,这也是一个开销。