MAC 码(消息认证码)

MAC码, 英文全称为message authentication code, 是用于为一个message 提供 integrity 和authenticity 的assurance (保证)的 一段短的信息。

所谓的integrity assurance 的意思就是避免或者检测我们发的消息被一个attacker 修改了。 所谓的authenticity assurence 就是确认message的来源。

MAC的原理如下:

 

对于上图, 解释如下:

sender 要向receiver 发送一个message,   首先第一不, 这个message 需要经过一个MAC 算法(注意需要秘钥 key)用于产生这个message 对应的MAC码。 然后message 和其对应的MAC码一同发给receiver.。  接受者将收到的message同样的经过MAC算法, 通过使用同一个秘钥, 产生收到的消息对应的MAC码。 然后将这个MAC码和 收到的MAC码相比, 如果相同, 说明接受者可以safely assume 收到的消息没有被一个attacker 改动。 


然而, MAC 不能抵挡住 replay attacks(重放攻击)。 所以, 为了抵挡住重放攻击, 我们的message中必须含有保证this same message 只能被发送一次的数据信息。 例如, 我们可以使用时间戳(time stamp)。 否则an attacker could — without even understanding its content — record this message and play it back at a later time, producing the same result as the original sender.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值