我对加密有一个理论上的疑问,我无法在我拥有的任何资源中找到澄清。我真的很感激有人为我澄清这个小疑问。
我正在研究非对称加密,我想知道如果,例如,收件人收到一条用私钥加密的消息,并且该消息在途中被破坏,例如由于电干扰,会发生什么。
我怀疑当收件人解密消息时会发生什么:我猜消息要么不会被解密(所以你会得到一个错误)或者它会被解密为一个无法理解的消息。
非常感谢任何帮助。
如果您问的是纯理论问题,答案是“这取决于加密算法”。
然而,在实践中:
消息通常不使用非对称密钥加密。它们通常太长了。相反,一个简短的“会话密钥”使用非对称密钥加密,整个消息使用对称 AES 或类似的会话密钥加密。
如果非对称加密的会话密钥损坏,则整个消息将完全无法解密(充其量会导致 100% 的垃圾和 0% 的原始数据)。
如果对称加密的消息数据损坏,则结果取决于所使用的密码模式(例如,对于分组密码 CBC 或 CTR 或 GCM 或其他)。较早的块将被解密,损坏的块将是垃圾,后面的块可能是垃圾,也可能不是垃圾,具体取决于模式。
最广泛使用的加密系统还包括某种形式的完整性保护,以防止故意篡改,这也可以防止常规数据损坏。例如,AEAD 密码,或单独的 HMAC,或类似 PGP 的“MDC”。
如果此完整性标记存在,程序通常会完全拒绝返回它确定已损坏的消息,因为它不知道损坏的原因。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句