第03章 消息鉴别与数字签名

合集下载

信息安全技术与实践习题答案第3-4章

信息安全技术与实践习题答案第3-4章

1、消息认证是验证消息的完整性,当接收方收到发送方的报文时,接收方能够验证收到的报文是真实的和未被篡改,即验证消息的发送者是真正的而非假冒的(数据起源认证);同时验证信息在传送过程中未被篡改、重放或延迟等。

消息认证和信息保密是构成信息系统安全的两个方面,二者是两个不同属性上的问题:即消息认证不能自动提供保密性,保密性也不能自然提供消息认证功能。

2、消息鉴别码(Message Authentication Code )MAC是用公开函数和密钥产生一个固定长度的值作为认证标识,并用该标识鉴别信息的完整性。

MAC是消息和密钥的函数,即MAC = C K(M),其中M是可变长的消息,C 是认证函数,K是收发双方共享的密钥,函数值C K(M)是定长的认证码。

认证码被附加到消息后以M‖MAC方式一并发送给接收方,接收方通过重新计算MAC以实现对M的认证。

3、数字签名技术是将摘要信息用发送者的私钥加密,与原文一起传送给接收者。

接收者只有用发送者的公钥才能解密被加密的摘要信息,然后用HASH函数对收到的原文产生一个摘要信息,并与解密的摘要信息进行对比,若相同则说明收到的信息完整,在传输过程中未被修改;否则说明信息被修改。

1)签名应与文件是一个不可分割的整体,可以防止签名被分割后替换文件,替换签名等形式的伪造。

2)签名者事后不能否认自己的签名。

3)接收者能够验证签名,签名可唯一地生成,可防止其他任何人的伪造。

4)当双方关于签名的真伪发生争执时,一个仲裁者能够解决这种争执。

4、身份认证是指证实主体的真实身份与其所声称的身份是否相符的过程。

它通过特定的协议和算法来实现身份认证。

身份认证的目的是防止非法用户进入系统;访问控制机制将根据预先设定的规则对用户访问某项资源进行控制,只有规则允许才能访问,违反预定安全规则的访问将被拒绝。

访问控制是为了防止合法用户对系统资源的非法使用。

5、1)基于口令的认证技术:当被认证对象要求访问提供服务的系统时,提供服务的认证方要求被认证对象提交口令信息,认证方收到口令后,将其与系统中存储的用户口令进行比较,以确认被认证对象是否为合法访问者。

报文鉴别与数字签名

报文鉴别与数字签名

数字签名技术•消息鉴别与散列函数•数字签名消息鉴别与散列函数•消息鉴别•散列函数消息鉴别9定义•消息鉴别(Message Authentication):是一个证实收到的消息来自可信的源点且未被篡改的过程。

•散列函数(Hash Functions):一个散列函数以一个变长的报文作为输入,并产生一个定长的散列码,有时也称报文摘要,作为输出。

•数字签名(Digital Signature):是一种防止源点或终点抵赖的鉴别技术。

消息鉴别?为什么需要消息鉴别•内容修改:消息内容被插入、删除、修改。

•顺序修改:插入、删除或重组消息序列。

•时间修改:消息延迟或重放•冒充:从一个假冒信息源向网络中插入消息消息鉴别9鉴别的目的•鉴别的主要目的有二:第一,验证信息的发送者是真正的,而不是冒充的,此为信源识别;第二,验证信息的完整性,在传送或存储过程中未被篡改,重放或延迟等。

消息鉴别9鉴别函数可用来做鉴别的函数分为三类:(1) 加密:以整个报文的密文作为它的鉴别符。

(2) 消息鉴别码MAC(Message Authentication Code):公开函数+密钥产生一个固定长度的值作为鉴别标识(3) 散列函数(Hash Function)是一个公开的函数,它将任意长的信息映射成一个固定长度的信息。

消息加密9消息的自身加密可以作为一个鉴别的量。

9对称密钥模式9公开密钥模式消息鉴别散列函数Hash Function•H(M): 输入为任意长度的消息M; 输出为一个固定长度的散列值,称为消息摘要(Message Digest)。

•这个散列值是消息M的所有位的函数并提供错误检测能力:消息中的任何一位或多位的变化都将导致该散列值的变化。

•又称为:哈希函数、数字指纹(Digital finger print)、压缩(Compression)函数、紧缩(Contraction )函数、数据鉴别码DAC(Data authentication code)、篡改检验码MDC(Manipulation detection code)散列函数9HASH函数是将一个任意长的输入变成固定长度的输出的函数,一般输出的长度为128位或160位。

消息认证与数字签名

消息认证与数字签名

最后一次i循环得到的ABCD级联起来 (共4*32=128位 )就是报文摘要。
说明:常数组T[1…64]:T[i]为32位整 数,第i步中, T[i]取232*abs(sin(i))的整数 部分,用十六进制表示,i的单位是弧度。 有的算法中直接给出了常数。如第1轮:
[ABCD 0 7 oxd76aa478] [ABCD 0 7 oxe8c7b756] [ABCD 0 7 ox242070db] [ABCD 0 7 oxc1bdceee] ………
(3)报文分组
按照每组512位,将报文分成n+1组:Y0、 Y1…Yn。每一分组又可表示为16个32位的子 分组。
(4)初始化MD5参数
MD5中有4个32位的链接变量,用于存 储中间结构和最终散列值。初始值用十六进 制表示,分别为:
A=ox01234567 C=oxfedcba98 B=ox89abcdef D=ox76543210
第一个人的生日为特定生日; 第二个人不在该日生的概率为(1-1/365) ; 第三个人与前二人不同生日的概率为(1-2/365) ; ……………. 第t个人与前t-1人不同生日的概率为(1-(t-1)/365) ; 所以t个人都不同生日的概率为
1* (1-1/365) * (1-2/365) *…*(1-(t-1)/365)
没被改变。
5.使用Hash函数提供消息鉴别
①对称加密 提供保密与鉴别
A→B:EK(M‖H(M))
②对称加密
提供鉴别
A→B:M‖EK(H(M))
③公钥加密
提供鉴别与数字签名
A→B:M‖EKa(H(M))
④在③的基础上 对称加密 提供鉴别、数
字签名与保密 A→B:EK (M‖EKa(H(M)))

网络安全03消息鉴别

网络安全03消息鉴别

使用对称密钥模式
发送方A
M
E
C
k
提供保密 提供鉴别
仅来自A 传输中未被更改
不提供签名
接收方B
D
M
k
使用对称密钥模式的问题
存在的问题
接收端怎样判断密文的合法性 接收端如何判断解密的结果是否正确
解密运算的本质是数学运算
原始消息对接收端是未知的 接收端可以得到 M’ = Dk(c) 怎么判断 M = M’
消息鉴别的作用
保护双方的数据交换不被其他人侵犯
基于双方共享的秘密 但是消息鉴别无法解决双方之间可能存在的争议
B伪造一个消息,声称是A发送的 B否认发送过某个消息,而A无法证明B撒谎
ቤተ መጻሕፍቲ ባይዱ
单纯鉴别系统的模型
攻击者
信源
鉴别 编码器
信道 安全信道
鉴别 密钥源
需要鉴别密钥,而且此密 钥一般不同于加密密钥
kUb
接收方B
E
C
kRb
D
M
kUa
提供保密:KUb 提供鉴别和签名:KRa
基于MAC的鉴别
基于MAC的鉴别
消息鉴别码(Message Authentication Code, MAC)
发送方采用一种类似于加密的算法和一个密钥,根据 消息内容计算生成一个固定大小的小数据块,并加入 到消息中,称为MAC。 MAC = fk(m) 需要鉴别密钥
发送方A
M M
MAC f()
密钥K’
提供消息鉴别
仅A和B共享密钥K’
接收方B
M
f()
MAC
比较
MAC的基本应用 2
发送方
M
M
E()
MAC

北京大学网络信息安全课件-消息验证与数字签名

北京大学网络信息安全课件-消息验证与数字签名

公钥密钥的应用范围
•加密/解密
•数字签名(身份鉴别) •密钥交换
算法
RSA Dieffie-Hellman DSS
加/解密 数字签名
是 否 否 是 否 是
密钥交换
是 是 否
基本思想和要求
• 涉及到各方:发送方、接收方、攻击者 • 涉及到数据:公钥、私钥、明文、密文 • 公钥算法的条件: – 产生一对密钥是计算可行的 – 已知公钥和明文,产生密文是计算可行的 – 接收方利用私钥来解密密文是计算可行的 – 对于攻击者,利用公钥来推断私钥是计算不 可行的 – 已知公钥和密文,恢复明文是计算不可行的 – (可选)加密和解密的顺序可交换
• 公钥密码又称为双钥密码和非对称密码,是 1976年由Diffie和Hellman在其“密码学新方向” 一文中提出的,见划时代的文献: W.Diffie and M.E.Hellman, New Directrions in Cryptography, IEEE Transaction on Information Theory, V.IT-22.No.6, Nov 1976, PP.644-654 • RSA公钥算法是由Rivest,Shamir和Adleman在 1978年提出来的, 见 Communitions of the ACM. Vol.21.No.2. Feb. 1978, PP.120-126
传统密钥管理:两两分别用一对密钥时,则n个用 户需要C(n,2)=n(n-1)/2个密钥,当用户量增大时,密 钥空间急剧增大。如: n=100 时, C(100,2)=4,995 n=5000时, C(5000,2)=12,497,500
(2)数字签名的问题 传统加密算法无法实现抗抵赖的需求。
起源

消息认证和数字签名

消息认证和数字签名

可编辑ppt
4
1 消息认证
消息认证
消息认证就是验证消息的完整性.当接收方 收到发送方的报文时,接收方能够验证收到 的报文是真实的未被篡改的。
保密和认证同时是信息系统安全的两个方面, 但它们是两个不同属性的问题,认证不能自 动提供保密性,而保密性也不能自然提供认 证功能。
可编辑ppt
5
1 消息认证
可编辑ppt
15
2 数字签名
消息认证与数字签名的区别:
前者能验证消息来源及完整性,防范第三者; 后者在收发双方产生利害冲突时,解决纠纷。
可编辑ppt
16
2 数字签名
数字签名需要解决的一些问题
1.签字后的文件可能被B重复使用。如果签字 后的文件是一张支票,B很容易多次用该电子 支票兑换现金,为此A需要在文件中加上一些 该支票的特有的凭证,如timestamp等,以防 止上述情况发生。
可编辑ppt
13
2 数字签名
数字签名的设计要求 签名必须是依赖于被签名信息的一个位串模板 签名必须使用某些对发送者是唯一的信息,以防止 双方的伪造与否认 必须相对容易生成该数字签名 必须相对容易识别和验证该数字签名 伪造该数字签名在计算复杂性意义上具有不可行性, 既包括对一个已有的数字签名构造新的消息,也包 括对一个给定消息伪造一个数字签名 在存储器中保存一个数字签名副本是现实可行的
送过消息
可编辑ppt
3
1 消息认证
认证则主要是为了防止第三方的主动攻击 。 认证系统的目的有两个: 第一, 信源识别,即验
证发信人确实不是冒充的; 第二, 检验发送信息 的完整性, 也就是说, 即使信息确实是经过授权 的信源发送者发送的, 也要验证在传送过程中 是否被篡改, 重放或延迟。 在认证理论中一般将信源识别和发送信息的完 整性检验两者作为一个整体进行讨论。

计算机网络安全 第三章 网络安全基础3数字签名

计算机网络安全 第三章 网络安全基础3数字签名

数字签名原理
(2)利用自己的私钥加密消息摘要得到数字签名A,并将数字签 名附在原消息后面
数字签名原理
(3)通讯时用户A将自己的原文和签名文一起通过网络送给通讯 对方即用户B
数字签名原理
2.接收方验证过程
接收方B接收到发送方A的签名消息后,对A的签名消息进 行验证的过程如下: (1)将消息中的原消息与数字签名分离出来

优点:
通信各方之间无须共享任何信息,从而避免了联手作弊; 只要 KRa 安全,则不会出现伪造 A 发送的消息; 消息的内容是保密的,包括对 A 在内。
基于公开密钥的数字签名技术
基本原理 公钥PKA和私钥SKA一一对应; 由公证机构证明公钥PKA和用户A的绑定关系; 证明拥有(或者知道)私钥SKA的用户X就是 用户A; 建立报文P和私钥SKA之间的关联,就可确定 报文P由用户A发送。
数字签名的目的是使发送者无法抵赖曾经发送过报文P; 通信双方均需到权威机构注册; 用户A发送给用户B的报文,附带时间戳T和随机数RA先发 送给权威机构; 权威机构在转发给用户B的信息中附带用密钥KBB加密发 送者、时间戳和报文摘要后的密文,KBB只有权威机构知 道; 由权威机构对报文P、发送者、发送时间进行认证。
计算机网络安全
第三章 网络安全基础(3)
第3章
加密算法;
报文摘要算法; 数字签名;
网络安全基础
认证协议;
IPSec。
这些算法一方面是实现保密性、完整性和 不可抵赖性的核心,另一方面是实现其他网 络安全技术的基础。
数字签名
问题的提出
假定John向Mary发送一个带鉴别的报文,可能会出现 如下的争执: 1、Mary可能伪造不同的报文,并声称它来自John。 Mary只要简单地生成一个报文,并附加使用由John和 Mary所共享的密钥生成的鉴别码即可。 2、John可以否认发送过该报文。因为Mary伪造一个 报文是可能的,无法证明John发送过该报文这一事实。

消息鉴别与数字签名课件

消息鉴别与数字签名课件
3.1. 消息鉴别
完整性是安全的基本要求之一。篡改消息是对通 信系统的主动攻击常见形式。
被篡改的消息是不完整的;信道的偶发干扰和故障也 破坏消息完整性。
接收者能检查所收到的消息是否完整; 进一步接收者能识别所收到的信息是否源于所声称的
主体。即消息来源的真实性
保障消息完整性和真实性的手段: 消息鉴别技术
1. 泄密
保密 2.
通信业务量分析
消息 3. 鉴别
4.
数字 5.
签名
伪造: 攻击者假冒发方身份,向网络插入一条消 息;或假冒接收方发送一个消息确认。
篡改:内容篡改 序号篡改 时间篡改
行为抵赖
一是作为领导干部一定要树立正确的 权力观 和科学 的发展 观,权 力必须 为职工 群众谋 利益, 绝不能 为个人 或少数 人谋取 私利
基于消息加密方式 以整个消息的密文作为鉴别符
基于消息鉴别码(MAC)3.1.2 发送方利用公开函数+密钥产生一个固定长度的 值作为鉴别标识,并与消息一同发送
基于散列函数 3.1.3 采用hash函数将任意长度的消息映射为一个定长 的散列值,以此散列值为鉴别码。MAC方式的一 种特例
最近几年消息鉴别符的热点转向 Hash函数导 出MAC的方法
一是作为领导干部一定要树立正确的 权力观 和科学 的发展 观,权 力必须 为职工 群众谋 利益, 绝不能 为个人 或少数 人谋取 私利
第3章 消息鉴别与数字签名
经典密码学->现代公开的计算机环境
保密有效系统地保障电子数据的机密性、完整性 和真实性
公开的计算机网络环境中,传输中的数据可能 遭受到威胁(5种):
3.1.2 -1 消息鉴别码原理
消息和MAC一起发给接收方。接收方对收到的 消息利用相同的密钥K计算,得出新的MAC。 如果接收到的MAC与计算得出的MAC相等:

3消息认证和数字签名(武汉大学国际软件学院信息安全课程)

3消息认证和数字签名(武汉大学国际软件学院信息安全课程)

MAC举例:基于DES的消息认证码
基于DES的消息认证码


建立在DES上的数据认证算法(FIPS PUB 113) 是使用最广泛的MAC算法之一,也是一个 ANSI标准(X9.17) 数据认证算法采用DES运算的密文块链接 (CBC)方式,其初始向量为0,需要认证的 数据分成连续的64位的分组D1, D2, … , DN, 若最后分组不足64位,则在其后填0直至成为 64位的分组。利用DES加密算法E和密钥K, 计算数据认证码(DAC)的过程如图11.6所示。
Hash函数的安全性


Hash函数的安全性:Hash函数的安全性 取决于其抗击各种攻击的能力,对手的 目标是找到两个不同消息映射为同一 Hash值。 一般假定对手知道Hash算法,采用选择 明文攻击法。
HASH算法

MD5消息摘要算法(RFC 1321)

输出128b的消息摘要 输出160b的消息摘要
K
对HASH函数的要求

对HASH函数的要求
1. 2. 3. 4. H可应用于任意大小的数据块 应用于消息认 H产生定长的输出 证必须满足的 对任意给定的x,计算H(x)容易 对于给定的hash值h,找到满足H(x)=h的x在计算上 是不可行的——单向性 5. 对于给定的分组x,找到满足yx且H(y)=H(x)的y在计 算上是不可行的——抗弱碰撞性 6. 找到任何满足H(x)=H(y)的偶对(x,y)在计算上是不可 行的——抗强碰撞性
消息认证码的基本用法

提供认证

(a)消息认证 (b)消息认证和保密性:与明文有关的认证 (c)消息认证和保密性:与密文有关的认证

提供认证和保密性

(a)消息认证

消息认证与数字签名

消息认证与数字签名

生日攻击实例

A准备两份合同M和M′,一份B会同意,一份会 取走他的财产而被拒绝 A对M和M′各做32处微小变化(保持原意),分别产 生2^32个64位hash值 根据前面的结论,超过0.5的概率能找到一个M和一 个M′,它们的hash值相同 A提交M,经B审阅后产生64位hash值并对该值签名, 返回给A A用M′替换M
消息认证与数字签名
计算机科学系 邹瑞源
问题提出

密码学被应用到哪些方面?
信息认证
消息认证的含义 数据起源认证 验证信息在传送过程中的正确性 消息认证的检验内容 报文的源,内容真伪,时间有效性等 验证数据完整性的方法 检错码和纠错码 消息认证模式

消息认证

消息认证技术 (1)消息加密函数(Message encryption)
返回
需仲裁的签名
X

A
Y
使用对称密码算法,明文传输 密文传输? XA: M || EkXA[ IDx || H(M) ] AY: EkAY[ IDx || M || EkXA[ IDx || H(M) ] ||T] 说明:kXA ,kAY 分为X和A、A和Y的共享密钥
T:时戳(不是旧消息的重放) Idx:x的标识符 H(M):M的摘要 方法缺陷:若A不公正,与X共谋否认签名,或与Y串 通伪造签名
数字签名
消息认证与数字签名的区别: 前者能验证消息来源及完整性,防范第三 者;后者在收发双方产生利害冲突时,解 决纠纷。 应用 数字水印

摘要签名

过程
H2
消息M 消息M 消息M
比较
Dk2
H
Ek1
S
S
H1
把签名过程从对原文件转移到一很短的hash值上,可以提高效率

信息技术 安全技术 实体鉴别 第3部分:采用数字签名技术的机制-编制说明

信息技术 安全技术 实体鉴别 第3部分:采用数字签名技术的机制-编制说明

《信息技术安全技术实体鉴别第3部分:采用数字签名技术的机制》(征求意见稿)编制说明一、工作简况1、任务来源根据2020年8月11日全国信息安全标准化技术委员会下达的“信安字[2020]24号全国信息安全标准化技术委员会关于2020年网络安全标准项目立项的通知”,GB/T 15843.3-2016《信息技术安全技术实体鉴别第3部分:采用数字签名技术的机制》的修订工作由西安西电捷通无线网络通信股份有限公司承办。

该标准由全国信息安全标准化技术委员会归口。

2、主要起草单位和主要起草人本标准由西安西电捷通无线网络通信股份有限公司主要负责起草,北京数字认证股份有限公司、公安部第一研究所、国家信息技术安全研究中心、中科院软件研究所等单位共同参与该标准的起草工作。

3、主要工作过程1)2019年12月至2020年3月,标准起草组讨论并确定标准的范围、框架及主要技术内容。

2)2020年4月至5月,根据ISO/IEC 9798-3:2019标准范围与内容,开展实体鉴别机制的国际标准翻译及编写工作。

3)2020年5月至6月,标准起草组分工开展草案稿起草工作,形成草案初稿。

4)2020年7月11日,召开起草组内部评审会征求意见。

5)2020年8月至9月,根据起草组内征求意见情况,标准起草组经过多次讨论和修订,形成第一版工作组草案稿。

6)2020年10月27日,参加TC260/WG4工作组组织的专家评审会,标准草案稿通过评审。

7)2020年11月3日,根据评审会专家意见修改完善标准草案,待TC260会议周讨论。

8)2020年11月9日,参加TC260/WG4工作组会议,会议讨论了标准文本,同意本标准进入征求意见稿阶段。

9)2020年12月3日,根据TC260/WG4工作组会议意见,对标准文本进行了修改,形成征求意见稿。

10)2020年12月8日,根据TC260/WG4工作组秘书处以及标准责任编辑的意见对征求意见稿进行修改完善并提交。

鉴别技术和数字签名

鉴别技术和数字签名

方法一:报文加密实现鉴别
又分为两种: 1)采用对称加密机制(教材叫常规加密) 实现 2)采用公钥加密机制
用加密的方法实现鉴别的不足之处:
1)为了鉴别而加密整个报文不够方便 -加密整个报文是一个浪费; -公钥加密速度太慢,加密整个报文不 太现实。 2)鉴别和加密应该分离,这样才能有灵活 性,因为有时只需要鉴别而不需加密。 如:公开信、公告、公证等。
散列算法
散列函数简介 目前已研制出许多散列函数,使用 比较广泛的有MD5和SHA等算法。
MD5是由设计RSA公钥密码算法的三位发明人(Rivest, Shamir, Adleman)中的Rivest所设计和发展的。MD5可以将任意长度的文 件、信息转换输出为128bit的散列值。 MD5由Rivest发展于1991 年,是MD4的加强安全版,比MD4复杂,相对比MD4慢。
方法二:采用MAC
什么是消息鉴别码MAC(Message Authentication Code): 就是用一个密钥产生一个短小的定长数据分组, 由函数C生成: MAC=CK(M) 其中,M是变长的报文,K是仅收发双方共 享的密钥,CK(M)是定长的鉴别符。
MAC如何使用
K M M M
MAC算法
密码学领域重大发现
-山东大学王小云教授成功破解 MD5
关键词
碰撞 =漏洞 =别人可以伪造和冒用数字签名。
Hash函数与数字签名(数字手印)
HASH函数,又称杂凑函数,是在信息安 全领域有广泛和重要应用的密码算法, 它有一种类似于指纹的应用。在网络安 全协议中,杂凑函数用来处理电子签名, 将冗长的签名文件压缩为一段独特的数 字信息,像指纹鉴别身份一样保证原来 数字签名文件的合法性和安全性。
(注意定义中没有使用密钥)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
① B伪造一个消息,并声称是从A收到的。因A
密钥,A无法证明自己没有发送。 ② A可以否认发送过某个消息,B无法证明A发送过。

B共享
电子商务方面法律应防范:例:
(1)进行电子资金转账时,接收方增加转账资金 ,并声称这是来自发送方的转账金额。(2)委托方发 送电子邮件要求经纪人进行股票交易,交易赔钱, 委托方伪称从没有发过这样的消息。 应用环境:通信(电子交易)双方彼此不能完全
3.2数字签名



3.2.1 数字签名简介 3.2.2 基于公钥密码的数字签名原理 3.2.3 数字签名算法(难)
3.2.1 数字签名简介
1.
2.
数字签名必要性 数字签名的概念及特征
3.2.1 -1数字签名的必要性

消息鉴别 能通过验证消息完整性和真实性,保 护通信不受外部第三方的攻击,但不能防止通 信双方内部的相互攻击,如:

3.1.2 -1 消息鉴别码原理


MAC与加密函数类似, 但不需要可逆,更不易 攻破。 使用分离的消息鉴别码的情形(3): 加解密算法,尤其公钥算法代价大。广播信息 经济可靠方式,明文传送,一个接收者验证。 一些应用不关心保密,而关心消息鉴别 将鉴别函数和加密函数结构上分离,可使层次 结构更加灵活。应用层鉴别消息,传输层提供 保密。

根据特征数字签名应满足下列条件 —实现机制-6


签名必须是与信息相关的二进制位串。 签名必须使用发送者某些独有信息,以防伪造与抵赖; 产生数字签名比较容易; 识别和验证签名比较容易; 伪造该数字签名在计算是不可行的:无论从给定的数字 签名伪造消息,还是从给定消息伪造一个数字签名; 保存一个数字签名副本是可行的。
3.1.4 MD5 *
4.

定义辅助函数
4个非线性函数 F(X,Y,Z), G(X,Y,Z), H(), I() 4种操作:FF(a,b,c,d,Mj,s,ti)= a b+ ( a+ F(b,c,d)+ M[i]+ti)<<s
5.
4轮计算 (4*16)
第一轮 FF(a,b,c,d,Mj,s,ti) 16次 2. 第二轮 GG(a,b,c,d,Mj,s,ti) 16次 3. 第三轮 HH(a,b,c,d,Mj,s,ti) 16次 4. 第四轮 II(a,b,c,d,Mj,s,ti) 16次 ti = 4294967296*abs(sin(i))整数部分 最后 a,b,c,d=a+AA,b+BB,c+CC,d+DD
1.不必修改而直接使用现有的散列函数。散列函数---黑盒 2.如果找到更快更安全的散列函数,应能很容易替代原来嵌 HMAC 总体结构图 图3-5 p59 入的散列函数。 3.应保持散列函数的原有性能,不能过分降低其性能。 HMAC(K,M)= 4.对密钥的使用和处理应比较简单 + opad)||H[ (K+ ipad)||M]] 5.(K 如果已知嵌入的散列函数的强度,则完全可以知道认证机 H[ 制抗密码分析的强度。

信任的情况下….
数字签名,手写签名。
3.2.1 -2数字签名的概念及其特征


数字签名概念(DS)ISO7498-2: ▲ 附加在数据单元上的一些数据,或是对数据单元 所作的密码变换,这种数据和变换允许数据单元 接收者用以确认数据单元来源和数据单元完整性 ,并保护数据,防止被人(包括接收者)进行伪造. 消息鉴别概念 一个数字签名体制是一个五元组 (M,A,K,S,V) 消息鉴别 概念:是一个对收到的消息进行验证 M:消息空间; A:签名空间 K密钥空间; 的过程,验证的内容包括: S:签名算法集合,V:验证算法集合 。满足对任意k, 有一签名算法 Sigk 一验证算法 Verk ,对任意mM, 真实性:消息发送者是真正的,而非假冒 aA完整性:消息在存储和传输过程中没有被篡 , Ver改过。 k(m,a)=1 a=Sigk(m)
3.1.4 -3 MD5*
MD5: 1991 麻省理工学院 Ronald L.Rivest MD4改进,速度慢,安全性高。 输入512分组(16*32)输出128位(4*32) 步骤 1. 消息填充 结果长度模512 =448 2. 添加长度
3. 4. 5.
初始化缓冲区 (4*32) a b c d→AA BB CC DD 定义辅助函数 4个非线性函数 4轮计算
消息鉴别技术
3.1.1 消息鉴别的概念

消息鉴别 概念:是一个对收到的消息进行验
证的过程,验证的内容包括: 真实性:消息发送者是真正的,而非假冒 完整性:消息在存储和传输过程中没有被篡 改过。 消息鉴别系统功能上的层次结构 高层:认证协议



低层 产生鉴别符 高层:调用鉴别函数,验证
低层:鉴别函数
3.1.4 散列函数

1.
2.
3.
散列函数 是一种将输入任意长度消息映射到 固定长度消息摘要的函数。 h=H(M),没有K 散列函数安全性 SHA-1算法 MD5算法
3.1.4 -1 散列函数安全性


攻击:
攻击者得到h(M),试图伪造M’ ,使h(M’)= h(M)


散列函数必须满足的安全特征(3):
源A
宿B
M H()
M
H(M)
E()
D()
M
H(M)
H()
密钥K
密钥K
比较
(a)加密消息及散列码
|| H()
M 密钥K
D()
比较
H()
E()
(b)只加密散列码
密钥K
3.1.3 基于散列函数的鉴别


HMAC 散列函数+MAC(K,M) IP安全 和SSL协议使用HMAC RF2104给出的HMAC设计目标(5)
3.1.3 基于散列函数的鉴别

散列函数(Hash)是消息鉴别码(MAC)的一 种变形。散列函数与消息鉴别码相同点:

输入都是可变大小M; 输出都是固定大小散列码 H(M) 散列码不使用密钥,它仅是输入消息的函数。 需要安全地存放和传输消息摘要,防止被篡改。

散列函数与消息鉴别码不同点:



3.1.4 -2 SHA-1算法

SHA是美 国家标准和技术协会(NIST)1993提出, 1995年发布SHA-1。输入512比特单位分组,输出 160比特消息摘要。
1.
2.
3.
步骤: 附加填充位 填充后结果长度(模512)=448 附加长度 64位:表示原始消息长度 初始化散列缓冲区
两个缓冲区(2* 5*32位),第一个缓冲区ABCDE 初始化值.第二个缓冲区H0 H1 H2 H3 H4
(m,a)是一个消息签名对。
3.2.1 -2数字签名的概念及其特征

数字签名特征(4) (提出需求)



可验证性 不可伪造性 不可否认性:发送方发送签名消息,无法抵 赖发送行为;接收方在收到消息后,也无法 否认接收行文 数据完整性:发送方能够对消息的完整性进 行校验,具有消息鉴别的作用
3.2.1 -2数字签名的概念及其特征
Wj= (W j-3 Wj-8 W j-14 W j-16)<<1 (16<= j<=79)

H0,H1,H2,H3,H4 A,B,C,D,E TEMP= (A<<5 )+ ft (B,C,D) + E +Wj+Kt, ft非线性函数 明文相关的内容

E=D D=C C=B<<30, B= A A=TEMP 最后:A,B,C,D,E H0+A,H1+B,H2+C,H3+D,H4+E
3.1.1 消息鉴别的概念

根据鉴别符的生成方式,鉴别函数分(3类):



基于消息加密方式 以整个消息的密文作为鉴别符 基于消息鉴别码(MAC)3.1.2 发送方利用公开函数+密钥产生一个固定长度的 值作为鉴别标识,并与消息一同发送 基于散列函数 3.1.3 采用hash函数将任意长度的消息映射为一个定长 的散列值,以此散列值为鉴别码。MAC方式的一 种特例
第3章 消息鉴别与数字签名

经典密码学->现代公开的计算机环境

保密有效系统地保障电子数据的机密性、完整性 和真实性

公开的计算机网络环境中,传输中的数据可能 遭受到威胁(5种):
1. 2. 3.
保密 消息 鉴别 数字 签名
4. 5.
泄密 通信业务量分析 伪造: 攻击者假冒发方身份,向网络插入一条消 息;或假冒接收方发送一个消息确认。 篡改:内容篡改 序号篡改 时间篡改 行为抵赖
4.
5.
计算消息摘要(每一个阶段一个分组),每组 80轮 输出。第N阶段输出
计算消息摘要

步骤2得到的消息块M1,M2,…Mn. 每块80轮运算 ,每轮输入ABCDE,更新. 每一轮使用:

附加常数Kt 给出, 0<=t<=79; 函数ft
Wj=Mj (0<= j<=15)

消息M扩充(16*32比特) (80*32比特)
单向性 对于任意给定的散列码h,寻找x使得H(x)=h 在计算上不可行。 强对抗碰撞性(3) 输入 输出 h(M)容易计算+ (4):寻找任何的(M1,M2)使得H(M1)=h(M2) 在计算 上不可行。 弱对抗碰撞性 (4减弱):对于任意给定的分组M,寻找不 等于M的M’,使得H(M’)=h(M)在计算上不可行。弱 对抗碰撞的散列函数随着使用次数增加,安全性降低。
相关文档
最新文档