新闻  |   论坛  |   博客  |   在线研讨会
什么是消息验证码
hanini | 2021-04-09 10:39:53    阅读:815   发布文章


在信息安全领域中,常见的信息保护方法分为加密和认证两大类。认证技术又分为对用户的认证和对消息的认证两种方式。用户认证用于鉴别用户的身份是否是合法用户;消息认证就是验证所收到的消息确实是来自真实的发送方且未被修改的消息,可以验证消息的准确性。

消息认证实际上是对消息本身产生的一个冗余的信息即消息验证码(MAC)。消息认证码Message authentication code)是一种确认完整性并进行认证的一种技术,简称MAC。密码学中,消息认证码指的是通信实体双方使用的一种验证机制,保证消息数据完整性的一种工具。消息认证码是一种带密钥的哈希函数,它本质上是一个哈希函数,那为什么要带密钥呢?是因为消息在传输过程中是可以被篡改,哈希值也可以被篡改,因此为了保证这个哈希值的有效性,通过加密的方式将哈希值保护起来,这样在接收方接收到消息后就可以通过这个哈希值来判断整条消息的完整性,从而达到信息传递的目的。

消息认证码步骤如下图所示

微信图片_20210409102503.png 

 

1)发送者与接收者事先共享密钥K(上图中的KEY1KEY2值保持一致)。

2)发送者根据消息计算MAC值(使用密钥KEY1对原始消息计算MAC1)。

3)发送者将原始消息和MAC1发送给接收者

4)接收者根据收到的原始消息计算MAC2(使用密钥KEY2

5)接收者将自己计算出的MAC2与从发送者收到的MAC1比对

6)如果MAC一致,接收者可以判定消息的确来自接收者(认证成功)且没有被篡改或者出现传输出错的情况;如果不一致,可判断消息不是来自发送方(认证失败)

 

注意:建议发送方和接收方将密钥KEY存放于硬件安全模块中,计算MAC值的过程最好也放到硬件安全模块中完成,这样可以保证密钥的安全,例如放到加密芯片中。

 

 

 

 

 


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
kessy1  2021-04-13 16:00:19 

文章写的很详细,感谢楼主的分享,学习了!

miniminimini  2021-04-13 15:51:07 

他们有专家做加密芯片,十几年了,技术服务也是一对一的专业

绿茶与拿铁  2021-04-13 15:43:53 

对,是这个公司,在网上了解过,口碑不错的。

zyqq58  2021-04-13 15:40:50 

凌科芯安方案特色性好,之前用过,安全性杠杠的

xiaoyuzhou1228  2021-04-13 15:04:16 

对还挺有名的,凌科的创新能力强

Testwf  2021-04-13 14:35:10 

LKT系列的芯片不错,可以试试,

114W1  2021-04-13 13:58:28 

市面上加密芯片种类繁多,该如何挑选加密芯片这个硬件安全模块呢?

15930473139  2021-04-13 13:53:36 

哪家公司的芯片是支持算法移植的,且安全性也很高呢

hanini  2021-04-13 11:50:06 

通过比较流程图中的MAC1和MAC2的值是否相等,来判断消息是否被篡改

ChateauMargaux  2021-04-12 20:12:22 

如果消息验证码被****,那不就被别人掌控了,那一切的对比什么的也就没用了吧?

嘟呀嘟  2021-04-12 17:29:51 

怎么看出消息验证码没有被篡改?

Testwf  2021-04-12 11:36:48 

发送者与接收者事先共享密钥,好象这一步较重要

zyqq58  2021-04-12 08:58:38 

mac算法可以防止数据篡改,支持mac算法的芯片必须也需要安全才行是吧?

绿茶与拿铁  2021-04-11 21:35:17 

之前用过算法移植类的还不错,安全性挺高

起个名字111  2021-04-11 09:26:37 

什么样的加密芯片可以存放密钥KEY?

miniminimini  2021-04-11 09:18:34 

MAC1和MAC2应该是原始消息经过带有密钥的哈希函数加密得到的

ChateauMargaux  2021-04-10 21:50:20 

没看懂,MAC1和MAC2是哈希值加密后得到的吗?

kessy1  2021-04-09 21:48:12 

有成功的案例可以参考一下吗 ?

xiaoyuzhou1228  2021-04-09 21:31:51 

原理接近,但还是有些差异的。手机验证码没有原始数据

嘟呀嘟  2021-04-09 17:14:11 

文中所说的消息认证和我们平时用手机验证码登录网站的认证方式是一样的吗?

114W1  2021-04-09 17:09:25 

密钥KEY是否为固定值?是不是容易被暴露出去呢?

推荐文章
最近访客