您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 《无线网络安全技术》研讨课-第四讲
第四讲消息认证/数字签名无线网络安全技术songyubo@seu.edu.cn消息认证和散列函数消息认证的概念散列函数概念MD5算法SHA算法消息鉴别码网络通信环境下的攻击类型:1.泄露(Disclosure)2.传输分析(Trafficanalysis)3.伪装(Masquerade)4.内容篡改(Contentmodification)5.顺序修改(Sequencemodification)6.计时修改(Timingmodification)7.发送方否认(Sourcerepudiation)8.接收方否认(Destinationrepudiation)机密性消息认证数字签名特定的数字签名机制消息认证——验证收到的消息确实来自声明的发送方且未被修改消息认证也可以验证消息的顺序和时间数字签名——一种认证技术,包含了防止发送方否认的方法认证要求数据完整性不可否认性认证函数消息认证或数字证书可以看作有两层:下层:需要某种函数用于产生一个认证码,这个码用于认证消息。•产生认证码的函数实现问题上层:将下层函数作为原语用于认证协议中。•认证协议的设计问题认证函数类型:消息加密•密文作为认证码消息认证码(MAC)•函数输入为消息和密钥,生成值为一定长的值散列函数•将一个消息映射为一个定长的摘要值消息加密对称加密对称加密算法本身提供认证要求接收者对解密后的数据能做出正确判断是否是合法明文还是无意义的二进制数。•要求明文具有某种易于识别的结构:加密前添加校验和•利用通信协议设定消息格式,密文一旦被修改则解密后的内容无法正常解析添加校验和设定消息格式用公钥加密算法提供认证用自己的私钥加密:若接收者能判断解密后的消息是否合法,则可以提供认证MessageAuthenticationCode(MAC):利用共享密钥生成一固定长度的字段(记为MAC)MAC=C(K,M)M:输入消息C:MAC函数K:共享密钥MAC:消息认证码消息认证码•可以确认:•消息不被修改•消息来源于宣称的发送方•消息的发送顺序未被改变(要求消息中包含序列号)•与加密函数的区别:•MAC不需要解密,即MAC函数无需可逆性•MAC函数为多对一的映射关系消息认证码的安全性要求攻击者攻击目标:不再是获得秘钥K,而是寻找可生成相同认证码的消息。为何使用MAC为什么不利用加密实现认证明文形式没有改变MAC的实现代价更低用于只需认证无需加密的场合•广播•执行代码的认证某些希望把加密和认证分开的场合,保密周期和认证周期不一样。(例如:档案)散列函数单向散列函数(HASH函数)将一个长度可变的消息M转换为一个固定长度的输出,称之为散列码或摘要与MAC的区别:没有使用密钥,函数输入参数只有一个可以检测出消息是否发生变化和加密结合可以用于认证加密消息及散列码:E(K,M||H(M))对称加密散列码:M||E(K,H(M))E(K,H(M))即为一MAC函数公钥加密散列码:M||E(PRa,H(M))典型的数字签名方案散列函数h=H(M)M为一变长消息h为一固定长度的HASH值H为散列函数使用方法:将散列值附于消息后发送,接收者根据收到的消息重新计算散列值,并和收到的散列值进行比较。由于散列函数本身不存在保密性,需要某种方法来保护散列值。对散列函数的要求1.H可应用于任意大小的数据块2.H产生一固定长度的输出3.对于任意给定的x,H(x)的值都是容易计算的。4.H是单向的,即给定h,找到任何一个满足h=H(x)的x在计算上不行5.H有弱抗碰撞性:即给定x,找到任何一个满足H(x)=H(y)的y,yx在计算上是不可行的。•满足性质4和5的函数称为弱单向函数6.H有强抗碰撞性,找到任何两个满足H(x)=H(y)的x和y在计算上是不可行的。•满足性质4、5和6的函数称为强单向函数对散列函数的要求单向的特性是认证所必需的。弱抗碰撞性对于防止伪造是必需的强抗碰撞性对于抵抗生日攻击是非常重要的生日攻击生日问题1:当你走进教室的时候,问教室里要有多少人使得存在跟你生日相同的人的概率超过50%?答案是:253生日问题2:一个教室内,要有多少人才能使至少有二人的生日在同一天的概率大于等于1/2?(1-1/365)生日攻击2ln21.774knn(1-2/365)……(1-(k-1)/365)生日攻击23针对散列函数的生日攻击假定函数H有2m个可能输出值,有k个随机输入,问当k为多少的时候至少有一个重复输出出现,即对任意x,y有H(x)=H(y)k2m/2如果使用64bit长的散列码,则所需代价的数量即为232bY0nIV=CV0fbY1nfbYL-1nCVL-1fCV1nnIV=初始值CV=链接值Yi=第i个输入数据块f=压缩算法n=散列码的长度b=输入块的长度安全Hash函数的一般结构CVLCV0=IV=initialn-bitvalueCVi=f(CVi-1,Yi-1)(1iL)H(M)=CVL……Hash函数24MD5算法MD:MessageDigest,消息摘要输入:任意长度的消息输出:128位消息摘要处理:以512位输入数据块为单位MD5(RFC1321)developedbyRonRivest(“R”oftheRSA)atMITin90’s.25MD5算法流程26SHA-1算法SHA(SecureHashAlgorithm,安全哈希算法)由美国国家标准技术研究所NIST开发,作为联邦信息处理标准于1993年发表(FIPSPUB180),1995年修订,作为SHA-1(FIPSPUB180-1),SHA-1基于MD4设计。输入:最大长度为264位的消息;输出:160位消息摘要;处理:输入以512位数据块为单位处理.27SHA-1一个循环MD5一个循环28比较SHA1/MD5散列值长度MD5128bitsSHA1160bits安全性SHA1看来好些,但是SHA1的设计原则没有公开速度SHA1慢些(opensslspeedmd5/sha1:)type16bytes64bytes256bytes1024bytes8192bytesmd55425.31k19457.48k55891.45k104857.60k143211.40ksha15104.58k16008.41k37925.33k57421.81k68241.68k29HMAC把HASH值和一个Key结合起来没有使用加密算法标准RFC2104•HMAC:Keyed-HashingforMessageAuthenticationFIPS198•TheKeyed-HashMessageAuthenticationCode(HMAC)目标既能使用当前的HASH函数,又可容易升级为新的HASH函数,并能保持散列函数的安全性简单,并易进行密码学分析30数字签名签名的含义签名者慎重表达认可文件内容的意向的行为为什么需要数字签名:报文认证用以保护双方之间的数据交换不被第三方侵犯;但它并不保证双方自身的相互欺骗。假定A发送一个认证的信息给B,双方之间的争议可能有多种形式:•B伪造一个不同的消息,但声称是从A收到的。•A可以否认发过该消息,B无法证明A确实发了该消息。特性不可伪造,特异性不可重用,日期和时间相关性不可改变,能发现涂改、转移意义或用途不可抵赖,能够质证可仲裁的,可做为法律证据手写签名纸版文件手写签名同一页纸数字签名数字文件数字小文件如何绑定如何实现数字签名数学支持-签名函数被签署的是文件(大文件)签名生成另外一个文件(小文件)签名过程一定有签署人的身份和某种秘密(别人不知的)参与简单易行•计算和存储手写签名的数字化改造签名函数报文报文签名身份和秘密数字签名满足条件必须是跟消息相关的二进制位必须是发送方独有的信息,以防伪造和否认必须易于产生必须易于验证和识别必须使得伪造在计算上不可行必须使得保存签名的拷贝可行DigitalSignatures先对消息M作一个摘要H(M)然后发送方用自己的私钥对H(M)进行加密,得到签名EKRa(H(M))连同消息M一起,发送出去B收到复合的消息之后,把签名提取出来B用A的公钥对签名解密得到H’B计算所收到消息的摘要H(M’)如果H’=H(M’),则消息确实是A产生的数字签名的应用用来对禁止核试验条约的验证:美国和前苏联互相允许把地震仪放入另一个国家中,以便对核试验进行监控。利用签名技术保证数据来源的可靠性以及数据没有被篡改。公钥证书公钥分发问题公钥算法允许参与者在不受保护的信道上共享秘密适用于开发式的网络如何分发公钥?需解决公钥的合法性问题•身份绑定证书公钥必须被认证例如:可以通过一个可信任的第三方宣布“公钥PA是用户Alice的”。AlicePKa[Alice,PKa]PRcCA用户Alice使用的公钥公钥机构的名称用户Alice的身份标示证书机构对Alice和她公钥的签名X.509认证服务X.509的发布历史:1988年,X.509首次发布;1993年,修正版本发布;1995年,X.509Version3;2000年,再次发布。X.509基于公钥密码体制和数字签名。公钥密码推荐使用RSA,数字签名需要用到hash函数。公钥证书的产生过程没有签名的证书:包含用户ID,用户公钥H生成没有签名证书的散列码E签过名的证书,接收者可用认证机构的公钥来检查签名用认证机构的私钥来加密散列码生成签名X.509格式证书的标示证书颁发者的姓名用户名用CA私钥加密的散列值CAA=CA{V,SN,AI,CA,TA,A,AP}认证机构CA颁发的用户A证书Y{I}=Y对I的签名被加密后的散列代码若拥有CA的公钥,则可以得到用户的公钥只有证书机构(CA)可以生成或修改证书证书不需要专门保护
本文标题:《无线网络安全技术》研讨课-第四讲
链接地址:https://www.777doc.com/doc-1251244 .html