密码学中的数据完整性


到目前为止,我们讨论了使用对称和公钥方案来实现信息的机密性。在本章中,我们开始讨论旨在提供其他安全服务的不同加密技术。

本章的重点是数据完整性和用于实现数据完整性的加密工具。

对数据完整性的威胁

交换敏感信息时,接收方必须确保消息完整地来自预期发送方,并且没有被无意或其他方式修改。有两种不同类型的数据完整性威胁,即被动威胁主动威胁

被动威胁

此类威胁的存在是由于数据的意外更改。

  • 这些数据错误很可能由于通信信道中的噪声而发生。此外,当文件存储在磁盘上时,数据可能会损坏。

  • 纠错码和简单的校验和(例如循环冗余校验(CRC))用于检测数据完整性的丢失。在这些技术中,数据摘要通过数学计算并附加到数据中。

主动威胁

在此类威胁中,攻击者可以恶意操纵数据。

  • 在最简单的层面上,如果数据没有摘要,则可以在不被检测到的情况下对其进行修改。系统可以使用将 CRC 附加到数据的技术来检测任何主动修改。

  • 在较高的威胁级别,攻击者可能会修改数据并尝试从现有摘要中导出修改数据的新摘要。如果使用简单的机制(例如 CRC)计算摘要,则这是可能的。

  • 采用哈希函数等安全机制来应对主动修改威胁。