认证技术
认证(Authentication)又称鉴别或确认,是证实某事是否名副其实或是否真实有效的一个过程。
- 加密--确保信息的机密性,阻止对手的被动攻击,如截取、窃听等。
- 认证技术--完整性、放抵赖、防篡改,确保报文发送者和接收者的真实性以及报文的完整性,阻止对手的主动攻击,如冒充、篡改、重放等。
最基本的认证技术:报文认证、消息认证、身份认证(数字签名、动态认证)等。
认证方案
- 发送方将消息和认证密钥输入认证算法,得到消息的认证标签;
- 发送方发送消息和认证标签;
- 接收方将同样的认证密钥和收到的消息输入认证算法;
- 接受方比较计算结果和收到的认证标签是否相同;
- 相同,则认为消息未经篡改,否则认为消息被篡改。
安全认证方案的要求:
- 通信双方能有效的产生任意消息的认证标签;
- 通信双方能有效的验证一个给定的数字串是否是给定消息的认证标签;
- 没有入侵者能够有效的产生通信双方没发送的消息的消息认证标签。
认证和数字签名
- 认证总是基于某种收发双方共享的保密数据来认证被鉴别对象的真实性,数字签名中用于鉴别签名的数据是公开的;
- 认证允许收发双方互相验证其真实性,不允许第三者验证,数字签名允许双方和第三方都能验证;
- 数字签名具有发送方不能抵赖,接受方不能伪造和具有再公证人前解决纠纷的能力,而认证不一定具备。
消息认证与数字签名
- 消息认证码不要求通信双方意外的任何人能有效的验证认证标签的真实性。
- 数字签名方案是消息认证方案的一种方式,但消息认证方案不必构成数字签名方案。
消息认证与身份认证
- 身份认证一般要求实时性,消息认证通常不提供实时性;
- 身份认证只证实实体的身份,消息认证除了要证实报文的合法性和完整性外,还需要知道消息的含义。