第五部分消息认证与数字签名教学课件

上传人:仙*** 文档编号:179471284 上传时间:2023-01-01 格式:PPT 页数:28 大小:571.03KB
返回 下载 相关 举报
第五部分消息认证与数字签名教学课件_第1页
第1页 / 共28页
第五部分消息认证与数字签名教学课件_第2页
第2页 / 共28页
第五部分消息认证与数字签名教学课件_第3页
第3页 / 共28页
点击查看更多>>
资源描述
第五章 消息认证与数字签名回顾计算机系统安全的五个属性:可用性(Availability)可靠性(Reliability)完整性(Integrity)保密性(Confidentiality)不可抵赖性(Non-Repudiation)消息认证完整性需要验证:1.信息发送方是否真实?接收方是否真实?2.信息在传输过程中是否被改变?3.信息的到达时间是否在指定的期限内?完整性技术:奇偶校验检错码纠错码消息验证码(MAC)散列函数散列函数:特性:一致性随机性唯一性单向性)(xHh MACHMAC散列函数的用法对称密钥加密报文消息摘要提供保密、鉴别对称密钥加密消息摘要提供鉴别EkM|H(M)M|EkH(M)发方私钥加密消息摘要提供鉴别、数字签名对称密钥加密发方私钥加密消息摘要的结果提供鉴别、数字签名、保密M|EkaH(M)EkM|EkaH(M)共享密值提供鉴别共享密值、对称加密提供鉴别、数字签名、保密M|H(M|S)EkM|H(M)|SMD5来历MD5的全称是message-digest algorithm 5(信息-摘要算法),在90年代初由MIT laboratory for computer science和RSA data security inc的Ronald l.Rivest开发出来,经MD2、MD3和MD4发展而来。http:/www.ietf.org/rfc/rfc1321.txt,是一份最权威的文档,由Ronald l.Rivest在1992年8月向IETF提交。用途MD5的作用是对一段信息(message)生成信息摘要(message-digest),该摘要对该信息具有唯一性,可以作为数字签名。用于验证文件的有效性(是否有丢失或损坏的数据),对用户密码的加密,在哈希函数中计算散列值。特点输入一个任意长度的字节串,生成一个128位的整数。由于算法的某些不可逆特征,在加密应用上有较好的安全性。并且,MD5算法的使用不需要支付任何版权费用。说明唯一性和不可逆性都不是绝对的,从理论上分析是一种多对一的关系,但两个不同的信息产生相同摘要的概率很小。不可逆是指从输出反推输入所需的运算量和计算时间太大,使用穷搜字典的方法又需要太多的存储空间。MD5算法描述算法输入是一个字节串,每个字节是8个bit。Step1:补位扩展数据至LEN=K*64+56个字节,K为整数。补位方法:补一个1,然后补0。相当于补一个0 x80的字节,再补值为0的字节。这一步里总共补充的字节数为063个。共六个步骤共六个步骤Step2:附加数据长度用一个64位的整数表示数据的原始长度(以bit为单位),将这个数字的8个字节按低位在前,高位在后的顺序附加在补位后的数据后面。这时,数据被填补后的总长度为:LEN=K*64+56+8=(K+1)*64 Bytes。注意:这个64位整数是输入数据的原始长度而不是填充字节后的长度。Step3:初始化MD5参数有四个32位整数变量(A,B,C,D)用来计算信息摘要,每一个变量被初始化成以下以十六进制数表示的数值,低位的字节在前面。word A:01 23 45 67 word B:89 ab cd ef word C:fe dc ba 98 word D:76 54 32 10注意:低位的字节在前面指的是Little Endian平台上内存中字节的排列方式。Step4:处理位操作函数定义四个MD5基本的按位操作函数:X,Y,Z为32位整数。F(X,Y,Z)=(X and Y)or(not(X)and Z)G(X,Y,Z)=(X and Z)or(Y and not(Z)H(X,Y,Z)=X xor Y xor Z I(X,Y,Z)=Y xor(X or not(Z)再定义四个分别用于四轮变换的函数。设Mj表示消息的第j个子分组(从0到15),s表示循环左移s位,则四种操作为:FF(a,b,c,d,Mj,s,ti)表示a=b+(a+(F(b,c,d)+Mj+ti)s)GG(a,b,c,d,Mj,s,ti)表示a=b+(a+(G(b,c,d)+Mj+ti)s)HH(a,b,c,d,Mj,s,ti)表示a=b+(a+(H(b,c,d)+Mj+ti)s)II(a,b,c,d,Mj,s,ti)表示a=b+(a+(I(b,c,d)+Mj+ti)s)Step5:对输入数据作变换处理数据,N是总的字节数,以64个字节为一组,每组作一次循环,每次循环进行四轮操作。要变换的64个字节用16个32位的整数数组M0.15表示。而数组T1.64表示一组常数,Ti为4294967296*abs(sin(i)的32位整数部分,i的单位是弧度,i的取值从1到64。具体过程如下:/*设置主循环变量*/For i=0 to N/16-1 do/*每循环一次,把数据原文存放在16个元素的数组X中.*/For j=0 to 15 doSet Xj to Mi*16+j.end/结束对J的循环/*Save A as AA,B as BB,C as CC,and D as DD.*/AA=ABB=BCC=CDD=D/*第1轮*/*以 abcd k s i表示如下操作a=b+(a+F(b,c,d)+Xk+Ti)s).*/*Do the following 16 operations.*/ABCD 0 7 1 DABC 1 12 2 CDAB 2 7 3 BCDA 3 22 4ABCD 4 7 5 DABC 5 12 6 CDAB 6 7 7 BCDA 7 22 8ABCD 8 7 9 DABC 9 12 10 CDAB 10 17 11 BCDA 11 22 12ABCD 12 7 13 DABC 13 12 14 CDAB 14 17 15 BCDA 15 22 16/*第2轮*/*以 abcd k s i表示如下操作a=b+(a+G(b,c,d)+Xk+Ti)s).*/*Do the following 16 operations.*/ABCD 1 5 17 DABC 6 9 18 CDAB 11 14 19 BCDA 0 20 20ABCD 5 5 21 DABC 10 9 22 CDAB 15 14 23 BCDA 4 20 24ABCD 9 5 25 DABC 14 9 26 CDAB 3 14 27 BCDA 8 20 28ABCD 13 5 29 DABC 2 9 30 CDAB 7 14 31 BCDA 12 20 32/*第3轮*/*以 abcd k s i表示如下操作a=b+(a+H(b,c,d)+Xk+Ti)s).*/*Do the following 16 operations.*/ABCD 5 4 33 DABC 8 11 34 CDAB 11 16 35 BCDA 14 23 36ABCD 1 4 37 DABC 4 11 38 CDAB 7 16 39 BCDA 10 23 40ABCD 13 4 41 DABC 0 11 42 CDAB 3 16 43 BCDA 6 23 44ABCD 9 4 45 DABC 12 11 46 CDAB 15 16 47 BCDA 2 23 48/*第4轮*/*以 abcd k s i表示如下操作a=b+(a+I(b,c,d)+Xk+Ti)s).*/*Do the following 16 operations.*/ABCD 0 6 49 DABC 7 10 50 CDAB 14 15 51 BCDA 5 21 52ABCD 12 6 53 DABC 3 10 54 CDAB 10 15 55 BCDA 1 21 56ABCD 8 6 57 DABC 15 10 58 CDAB 6 15 59 BCDA 13 21 60ABCD 4 6 61 DABC 11 10 62 CDAB 2 15 63 BCDA 9 21 64/*然后进行如下操作*/A=A+AAB=B+BBC=C+CCD=D+DD Next I/*结束对I的循环*/Step6:输出结果A,B,C,D连续存放,共16个字节,128位。按十六进制依次输出这个16个字节。数字签名问题的提出假定John向Mary发送一个带鉴别的报文,可能会出现如下的争执:1、Mary可能伪造不同的报文,并声称它来自John。Mary只要简单地生成一个报文,并附加使用由John和Mary所共享的密钥生成的鉴别码即可。2、John可以否认发送过该报文。因为Mary伪造一个报文是可能的,无法证明John发送过该报文这一事实。分类 直接数字签名功能:功能:鉴别、数字签名。弱点:弱点:(1)方案的有效性依赖于发方私钥的安全性。(2)某个私钥真的可能在时间T在X处被盗。(a)利用发送方的私钥加密(b)利用发送方的私钥报文散列码加密 需仲裁的数字签名(c)公开密钥加密,仲裁不能看到报文内容(1)XA:IDx/EKRxIDx/EKUyEKRxM(2)AY:EKRaIDx/EKUyEKRxM/T注:X发方;Y收方;A仲裁;M报文(a)常规加密,仲裁能看到报文内容(1)XA:M/EKxaIDx/H(M)(2)AY:EKayIDx/M/EKxaIDx/H(M)/T(b)常规加密,仲裁不能看到报文内容(1)XA:IDx/EKxyM/EKxaIDx/H(EKxyM)(2)AY:EKayIDx/EKxyM/EKxaIDx/H(EKxyM)/T数字签名算法签名算法:RSA、DSA、MD5、SHA等验证算法数字证书采用公钥密码体制,如RSA。格式一般采用X.509国际标准。由权威公正的第三方机构即CA中心签发。数字证书数字水印信息隐藏原理也称为信息伪装技术,它是利用人类感觉器官对数字信号的感觉冗余,将一个消息(秘密信息)隐藏在另一个消息(非秘密信息)之中,实现隐蔽通信或隐蔽标志。信息隐藏系统模型特点l 自恢复性:自恢复性:秘密数据在一定程度破坏后,接收方仍然能恢复隐藏信息。l 鲁棒性:鲁棒性:不因宿主文件的某种改动而导致隐藏信息丢失的能力。l 安全性:安全性:隐藏算法具有较强的抗攻击的能力,使隐藏信息不会被破坏。l 不可检测性:不可检测性:隐藏宿主与原始宿主具有一致的特性,使攻击者无法判断是否有隐藏信息。l 透明性:透明性:经过一系列的隐藏处理后,目标数据没有明显的降质现象,而隐藏的数据却无法人为地看见或听见。分类原图数字水印嵌入后的图像川大一角原图数字水印嵌入后的图像
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!