版权归原作者所有,如有侵权,请联系我们

[科普中国]-讯息鉴别码

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

在密码学中,消息认证码(英语:Message authentication code,缩写为MAC),又译为消息鉴别码文件消息认证码讯息鉴别码信息认证码,是经过特定算法后产生的一小段信息,检查某段消息的完整性,以及作身份验证。它可以用来检查在消息传递过程中,其内容是否被更改过,不管更改的原因是来自意外或是蓄意攻击。同时可以作为消息来源的身份验证,确认消息的来源。

简介在密码学中,消息认证码(英语:Message authentication code,缩写为MAC),又译为消息鉴别码文件消息认证码讯息鉴别码信息认证码,是经过特定算法后产生的一小段信息,检查某段消息的完整性,以及作身份验证。它可以用来检查在消息传递过程中,其内容是否被更改过,不管更改的原因是来自意外或是蓄意攻击。同时可以作为消息来源的身份验证,确认消息的来源。

消息认证码的算法中,通常会使用带密钥的散列函数(HMAC),或者块密码的带认证工作模式(如CBC-MAC)。

信息鉴别码不能提供对信息的保密,若要同时实现保密认证,同时需要对信息进行加密。1

密钥散列消息认证码密钥散列消息认证码(英语:Keyed-hash message authentication code),又称散列消息认证码(Hash-based message authentication code,缩写为HMAC),是一种通过特别计算方式之后产生的消息认证码(MAC),使用密码散列函数,同时结合一个加密密钥。它可以用来保证数据的完整性,同时可以用来作某个消息的身份验证。1

数据完整性数据完整性(Data integrity)是信息安全的三个基本要点之一,指在传输、存储信息或数据的过程中,确保信息或数据不被未授权的篡改或在篡改后能够被迅速发现。在信息安全领域使用过程中,常常和保密性边界混淆。以普通RSA对数值信息加密为例,黑客或恶意用户在没有获得密钥破解密文的情况下,可以通过对密文进行线性运算,相应改变数值信息的值。例如交易金额为X元,通过对密文乘2,可以使交易金额成为2X。也称为可延展性(malleably)。为解决以上问题,通常使用数字签名或散列函数对密文进行保护。

身份验证身份验证(英语:Authentication)又称“验证”、“鉴权”,是指通过一定的手段,完成对用户身份的确认。

身份验证的目的是确认当前所声称为某种身份的用户,确实是所声称的用户。在日常生活中,身份验证并不罕见;比如,通过检查对方的证件,我们一般可以确信对方的身份。虽然日常生活中的这种确认对方身份的做法也属于广义的“身份验证”,但“身份验证”一词更多地被用在计算机、通信等领域。

身份验证的方法有很多,基本上可分为:基于共享密钥的身份验证、基于生物学特征的身份验证和基于公开密钥加密算法的身份验证。不同的身份验证方法,安全性也各有高低。

参见密钥散列消息认证码(HMAC)

本词条内容贡献者为:

曹慧慧 - 副教授 - 中国矿业大学