信息安全概论 第4章 消息认证与数字签名

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1

消息认证

数字签名

4.1 消息认证

41消息认证

4.1.1 基本概念

单向函数、单向Hash函数以及单向陷门函数

单向函数单向H h

非对称密码算法以及数字签名的基石。本节

将对这些基础概念一一作介绍。

顾名思义单向函数的计算是不可逆的即

顾名思义,单向函数的计算是不可逆的。即

在计算机科学领域中,Hash函数是使用得最

3.单向陷门函数

单向陷门函数是一类特殊的单向函数,它包含一个秘密陷门。

4.1.1 基本概念

4.1.2

消息认证系统

MAC f (K,M )

MAC

Alice 发送方Alice

接收方Bob

M K

M

4.1.2

消息认证系统

用Hash 函数进行消息认证则不需要密钥的参与。

同消息认证码一样,Hash 函数也有多种使用方式:可以只进行H h 摘要也可以配合加密算法起使用类比图41图43Hash 摘要,也可以配合加密算法一起使用。类比图4-1~图4-3,可以得到图4-4~图4-6的Hash 函数使用方式。

接收

H=H (M )

()

M 发送方Alice 接收方Bob

图4-6Hash M

级联

解密C 得到

C 相等?

H(C)

加4-6 Hash 使用方式示

意图——加密整个消息

示意图——只加密M

4.1.2 消息认证系统

Hash函数相当于为需要认证的数据产生一个“数字指纹”。为了能够实现对数据的认证,Hash函数应满足以下条件:(1)函数的输入可以是任意长。

(2)函数的输出是固定长。

)函数的输出是固定长

(3)已知x,求H(x)较为容易,可用硬件或软件实现。

()已知,求使得()的在计算上是不可行的,这性4h H(x)=h x在计算上是不可行的,这一性质称为函数的单向性,称H(x)为单向Hash函数。

(5)对于给定的x,找出y(y≠x)使得H(y)=H(x)在计算上是不可行的。如果单向Hash函数满足这一性质,则称其为弱无碰撞。行的如果单向函数满足这性质则称其为弱无碰撞(6)找出任意两个不同的输入x、y,使得H(y)=H(x)在计算上是不可行的。如果单向Hash函数满足这一性质,则称其为强无碰撞。

4.1.3

MD5算法

MD5是密码学家Ron Rivest 提出来的算法,MD5根源于一系列消息摘要算法,从最初很脆弱的MD 到现在广泛使用的MD5 R Ri t 做出了卓越的贡献

(包括未发表的MD3),Ron Rivest 做出了卓越的贡献。MD5是一种速度非常快的消息摘要算法。MD5的输入可以是任意长,以512位为单位分成块,输出是128位的消息摘要。大体上说,MD5算法总共分为以下五步:

第一步:填充字节

原始消息

填充位长度:1~512

64位长度值

第步:填充字节第二步:分块

第三步:初始化寄存器第四步处理每

个分块第四步:处理每一个分块第五步:输出结果

128位初始变量

4.1.4 SHA算法

SHA (Secure Hash Algorithm)算法最初是于1993年由美

国国家标准与技术学会NIST和NSA联合发布的。1995年作了一

SHA--1。SHA

SHA--1算法过程如图4-8所示。些修订,后来正式更名为SHA

些修订后来正式更名为所示

始变量摘要

4.1.4

SHA 算法

同MD5一样,SHA 是在MD4的基础上修改而成的。因此,SHA 和MD5有很多的相同点。SHA 大体也是由五步构成:

第二步分块

B

第二步:分块

第步第三步:要求

C

A

第一步:

填充初始化寄存器

第四步:处理每

E

D

第五步:输出结果

一个分块

4.1.5

HMAC 算法

下面将详细说明

密钥变换k’

S 1

M

密钥k HMAC 的七步操作过程。

第一步:密钥变换(MD5,SHA-1…)第二步:异或

第三步:消息级联第四步计算消息摘消息摘要算法(MD5,SHA 1…)

第四步:计算消息摘要

第五步:异或

第六步:消息级联第七步:输出最终结果

数字名 4.2 数字签名

4.2.1 数字签名的基本概念

伪造一个消息并使用与

(1)Bob伪造个消息并使用与Alice共享的密钥K产生该消息

(2)既然Bob有可能伪造Alice发来的消息,那么Alice就可以

发来的消息那么这两种欺骗在实际应用中都有可能发生。双方争执不下而对簿公

4.2.1 数字签名的基本概念

①发送方必然产生自己独有的

信息来签名以防止伪造和否认。

②这种签名很容易产生。

②这种签名很容易产生

以下特点

③对于接收方,应该很容易验证

签名的真伪。

④对于给定的x,找出y(y≠x)使得

签名S(y)=S(x)在计算上是不可行的。

⑤找出任意两个不同的输入x、y,

使得S(y)=S(x)在计算上是不可行的。

相关文档
最新文档