听说这玩意可以验证消息完整性 —— 消息认证码(MAC)

消息认证码

  消息认证码(Message Authentication Code)是一种确认完整性并进行认证的一种技术,简称 MAC

验证过程

在这里插入图片描述
消息认证码在输入任意长度的消息和一个发送者与接收者之间的共享密钥后,输出固定长度的数据,该数据称为 MAC 值

  1. 假设用户 A 和用户 B 使用共享密钥 K 进行通信。
  2. A 要发送一段消息 M 给 B,A 首先用消息认证码算法将 K 和 M 计算出消息认证码 MAC。
  3. 然后将 MAC 和 M 一起发送给 B。
  4. B 收到 MAC 和 M 后利用 M 和 K 计算消息认证码。
  5. 如果计算出的消息认证码与收到的一样则验证成功,证明消息未被篡改。

  由于攻击者没有密钥 K,攻击者修改了消息内容后无法计算出相应的消息验证码,通过使用发送者和接收者之间共享的密钥,就可以识别出是否存在伪装篡改行为。

实现方法

缺点

  通过 MAC 使用双方都拥有的密钥可以实现防篡改仿伪装。但是这是一把双刃剑,由于密钥是共享的,这就导致发送方和接收方都可以计算出同样的 MAC 值,所以我们无法判断这个 MAC 值到底是由谁计算出来的。这导致了 MAC 无法防止否认(无法证明消息是发送方生成的还是接收方生成的),可以使用数字签名解决这个问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值