网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

信息安全中的消息摘要技术

更新时间:2026年03月27日   作者:spoto   标签(Tag):

消息摘要技术被用来确保通过不安全的通道传输的消息的完整性。所谓“消息摘要”,指的是对消息或数据的固定大小的数值表示形式,这种表示形式是通过哈希函数生成的。

这是确保数据完整性的核心概念。消息会通过加密哈希函数进行处理。该函数会将消息压缩成一种称为“摘要”的形式。

消息摘要的特征

  • 目的为了确认数据没有被篡改。
  • 安全使用在数字签名、数据完整性检查以及密码存储中较为常见。
  • 由…生成像加密哈希函数这样的东西MD5, SHA-1SHA-256算法。
  • 固定输出无论输入数据的规模如何,输出的结果(摘要)都具有固定的长度。
  • 不可逆的你无法从消息摘要中恢复原始数据(这是一种单向函数)。
  • 确定性同样的输入总是会产生相同的输出。
  • 抗碰撞性要找到两个不同的输入,使得它们产生的摘要相同,应该是相当困难的。

消息摘要的工作原理

假设,Alice向Bob发送了一个消息以及对应的摘要信息。

按摩的运作原理

这种消息与摘要的组合,相当于一份实体文档以及该文档上的个人指纹。与实体文档和指纹不同的是,消息和摘要可以分别进行传输。

发送方端(创建数字签名)

  • 请编写这条消息吧。
    发件人可以编写或生成他们想要发送的消息。
  • 生成消息摘要
    发送方使用加密哈希函数(例如SHA-256)来生成消息的摘要。t(固定长度的哈希值)来自原始消息。
    • 例如:Digest = 哈希值(消息)
  • 使用私钥对Digest进行加密。
    发送方使用自己的私钥对摘要进行加密处理。
    • 这个经过加密的摘要现在就相当于一个数字签名了。
    • 示例:数字签名= 加密(Digest, 发送方的私钥)
  • 请发送该消息以及数字签名。
    发送方会将原始消息以及数字签名一起发送给接收方。

接收端(验证完整性和真实性)

  • 请接收该消息以及其中的数字签名。
    接收者会收到原始消息以及附带的数字签名。
  • 在本地计算消息摘要。
    接收方使用相同的哈希函数,从接收到的消息中计算出一个新的摘要。
    • 例如:Digest’ = Hash(接收到的消息)
  • 解密数字签名
    接收方使用发送方的公钥来解密数字签名,从而恢复原始的摘要信息。
    • 例如:原始判决结果 = 解密(数字签名,发送者的公钥)
  • 请比较这两个摘要。
    接收方进行比较:
    • 本地生成的摘要(Digest’)
    • 从数字签名中解密得到的摘要信息(原始摘要)

有两种可能的情况会发生:

  • 如果它们相匹配的话:
    • 这条消息没有被篡改过(已确认其完整性)。
    • 发送者已经通过了身份验证(只有真正的发送者才拥有匹配的私钥)。
  • 如果它们不匹配的话:
    • 这条消息可能被篡改过,或者发件人可能是骗子。

例如:使用SHA-256:

  • 输入:

“你好”

输出结果(以十六进制表示):

185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969

消息摘要的应用

  • 数字签名确保消息不会被篡改。
  • 数据完整性检查确认文件/下载的内容没有发生任何更改。
  • 密码哈希处理能够安全地存储密码(通常会使用salt来增加安全性)。

相关的GATE问题:

  • GATE-CS-2014-(第1套试题)
  • GATE-CS-2016(第1套试题)
              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料