前言

消息鉴别就是保证信息完整性、真实性的一种技术。这时候,有的同学就会问了,使用报文摘要不就能够保证信息的完整性了吗。在这里,需要强调的一点是,报文摘要只是属于消息鉴别技术中的一种。我们今天这一节要介绍另一种消息鉴别技术,就是消息鉴别码。

 

消息鉴别码MAC

这里的MAC指的是message authentication code,指的是消息鉴别码,不是指的网卡的物理地址MAC,这里一定要分清楚。

那么,消息鉴别码是怎么生成的呢?

其实和报文的摘要是类似的,也是一串固定长度的值。但是,报文摘要是可以把任意长度的报文,计算成一个固定长度的报文摘要。而消息鉴别码是由消息和首发双方共享的**做一个函数运算,这个函数我们统称为MAC函数,产生一个定长的码。

另外我们需要知道,MAC函数和报文摘要的产生原理有一个共同点,它们都是单向、不可逆的。我们的加密算法加密过的数据,到了接收方可以进行一个逆推,解密还原出数据。但是如果只得到了消息鉴别码,是无法推出原数据的。

 

基于MAC的消息认证方案

(十四)消息鉴别码

发送方把消息明文和**K一起进行MAC函数运算,得到MAC值,然后附加在明文后面。接收方得到以后,把消息明文连同**K一起,再次进行MAC函数运算,得到MAC值,然后用接收方自己算出来的MAC值和发送方发过来的MAC值进行对比,根据对比结果一致不一致,就可以知道消息在传输过程中有没有被篡改。

但是,我们会发现,虽然保证了数据的完整性,但是这样做也是很危险的,因为这整个过程都是在明文传输。就算有个坏人不给你篡改消息内容,他就静静的看着你,也能看到你的隐私。所以,我们要想办法,让数据加密和消息认证结合起来,保证数据保密性。请看下图:

(十四)消息鉴别码

这种方案是直接把消息明文连同消息鉴别码一起加密。

还有一种方案是,可以只把明文进行加密,然后把密文和MAC值一起传递给接收方,因为MAC值是单向、不可逆的,所以这样做也不是不安全的。

 

相关文章:

  • 2021-12-23
  • 2022-12-23
  • 2021-11-11
  • 2022-12-23
  • 2022-12-23
  • 2021-10-21
  • 2021-06-12
  • 2021-04-19
猜你喜欢
  • 2021-08-12
  • 2021-09-19
  • 2021-10-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案