电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

信息安全第5章消息认证

75页
  • 卖家[上传人]:san****019
  • 文档编号:70786268
  • 上传时间:2019-01-18
  • 文档格式:PPT
  • 文档大小:972.81KB
  • / 75 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第5章 消息认证,主要内容,消息认证基本概念 消息加密认证 消息认证码 hash函数,概 念,认证(Authentication):即鉴别、确认,它是证实某事是否名副其实,或是否有效的一个过程。 认证与加密的区别: 加密用以确保数据的保密性,阻止对手的被动攻击,如截取、窃听。 认证用以确保报文发送者和接受者的真实性以及保文的完整性,阻止对手的主动攻击,如冒充、篡改、重播等。 认证往往是应用系统中安全保护的第一道防线,极为重要。,基本思想,通过验证称谓者(人或事)的一个或多个参数的真实性和有效性,来达到验证称谓者是否名副其实的目的。 常用的参数有:口令、标识符、密钥、信物、智能卡、指纹、视网纹等。 利用人的生理特征参数进行认证的安全性高,但技术要求也高,至今尚未普及。目前广泛应用的还是基于密码的认证技术。,没有消息认证的通信系统是极为危险的,消息认证(Message Authentication),消息认证用于抗击主动攻击 验证接收消息的真实性和完整性 真实性 的确是由所声称的实体发过来的 完整性 未被篡改、插入和删除 验证消息的顺序性和时间性(未重排、重放和延迟),需求,泄密:将消息透

      2、露给没有合法秘密钥的任何人或程序。 传输分析:分析通信双方的通信模式,如连接频率,时间等 伪装:攻击者产生一条消息并声称来自某合法实体 内容修改:对消息进行插入、删除、转化、修改 顺序修改:对消息顺序进行插入、删除、重新排序 计时修改:对消息的延时和重放 发送方否认 接受方否然 对付1、2可用加密; 对付3、4、5、6可用消息认证; 对付7、8可用数字签名,消息认证的基本概念,消息认证:验证所受到的消息确定是来自真正的发送方且未被修改过。 认证符:一个用来认证消息的值。由消息的发送方产生认证符,并传递给接收方。 认证函数:产生认证符的函数,认证函数实际上代表了一种产生认证符的方法。 消息加密 消息认证码 Hash函数,消息加密-在对称加密体制下,由于攻击者不知道密钥K,他也就不知道如何改变密文中的信息位才能在明文中产生预期的改变。 接收方可以根据解密后的明文是否具有合理的语法结构来进行消息认证。 但有时发送的明文本身并名优明显的语法结构或特征,例如二进制文件,因此很难确定解密后的消息就是明文本身。,M,E,K,EK(M),D,K,M,根据明文M和公开的函数F产生FCS,即错误检测码,或

      3、帧校验序列,校验和。 把M和FCS合在一起加密,并传输。 接收端把密文解密,得到M。 根据得到的M,按照F计算FCS,并与接收到的FCS比较是否相等。,M,F,F,M,FCS,比较,E,K,D,K,M,FCS,内部错误控制,攻击者可以构造具有正确错误控制码的消息,虽然攻击者不知道解密后的明文,但可以造成混淆并破坏通信。,M,F,FCS,E,K,D,K,M,外部错误控制,F,比较,消息加密-在公钥加密体制下,由于大家都知道B的公钥,所以这种方式不提供认证,只提供加密。,M,E,KUb,EKUb(M),D,KRb,M,I. 普通加密,A,B,消息加密-在公钥加密体制下,由于只有A有用于产生EKRa (M)的密钥,所以此方法提供认证。 由于大家都有KUa ,所以此方法不提供加密。,M,E,KRa,EKRa (M),D,KUa,M,II. 认证和签名,A,B,消息加密-在公钥加密体制下,提供认证和加密。 一次通信中要执行四次复杂的公钥算法。,M,E,KRa,EKRa (M),D,KUa,M,III. 加密认证和签名,A,B,E,KUb,EKUb(EKRa (M),D,KRb,EKRa (M),

      4、消息认证码(MAC),Message Authenticaion Code 消息认证码是消息和密钥的公开函数,它产生定长的值,以该值作为认证符。 利用密钥和消息生成一个固定长度的短数据块,并将其附加在消息之后。 通信双方共享密钥K,消息认证码用于认证,A和B共享密钥K A计算MAC=Ck(M), M和MAC一起发送到B B对收到的M,计算MAC,比较两个MAC是否相同。,如果两个MAC相等,则: 接收方可以相信消息未被修改,因为如果攻击者改变了消息,由于不知道k,无法生成正确的MAC。 接收方可以相信消息的确来自确定的发送方。因为其他人不能生成和原始消息相应的MAC。,MAC函数与加密函数的区别,MAC函数与加密函数类似,都需要明文、密钥和算法的参与。 但MAC算法不要求可逆性,而加密算法必须是可逆的。 例如:使用100比特的消息和10比特的MAC,那么总共有2100个不同的消息,但仅有210个不同的MAC。也就是说,平均每290个消息使用的MAC是相同的。 因此,认证函数比加密函数更不易被攻破,因为即便攻破也无法验证其正确性。关键就在于加密函数是一对一的,而认证函数是多对一的。,消息

      5、认证码的基本用途,只提供消息认证,不提供保密性。(见前) 提供消息认证和保密性:,A,B,A和B共享K1和K2 K1:用于生成MAC K2:用于加密,与明文有关的认证,消息认证码的基本用途,提供消息认证和保密性:,A,B,A和B共享K1和K2 K1:用于生成MAC K2:用于加密,与密文有关的认证,对MAC的攻击攻击密钥,已知消息M1和MAC算法C,以及MAC1 = C k1 (M1) ,现要破解k1。密钥为k个bit,MAC为n个bit。 当kn: 可能的密钥个数为2k。可能的MAC个数为2n个。 所以许多不同的密钥(约2k-n个),计算出来的MAC都等于MAC1。这些密钥中哪一个是正确的密钥不得而知。这时需要新的M-MAC对来测试这2k-n个密钥,于是有如下的重复攻击:,重复攻击,Step 1: 给定M1和MAC1 = C k1 (M1) 对所有2k个密钥,判断MACi = C ki (M1) 匹配数约为: 2k-n Step 2: 给定M2和MAC2 = C k2 (M1) 对所有2k个密钥,判断MACi = C ki (M2) 匹配数约为: 2k-2n 平均来讲,若k=x*n,

      6、则需x次循环才能找到正确的密钥。 所以,用穷举法攻破MAC比攻破加密算法要困难得多。,对MAC的攻击攻击算法,考虑下面的算法: 消息M=(X1X2Xm)是由64比特长的分组Xi(i=1,m)链接而成 MAC算法是: 加密算法是DES。因此,密钥长为56比特。 如果敌手得到MCK(M),那么敌手使用穷搜索攻击寻找K将需做256次加密。很困难! 但攻击者可以改变M的内容,却使MAC正确。 方法如下:,用Y1替换X1 , Y2替换X2 , Ym替换Xm ,其中Y1 ,Y2 , ,Ym 是攻击者编造的假消息。且 Ym = Y1 Y2 Ym-1 (M), 当接收者收到这个消息: M=(Y1Y2Ym) 则(M)= Y1 Y2 Ym = (M) 所以:CK(M)=CK(M) 通过了验证,攻击得逞。,MAC函数应具有的性质,若攻击者已知M和CK(M),则他构造满足: CK(M)=CK(M)的消息M在计算上不可行 CK(M)应试均匀分布的,即对于随机消息M和M, CK(M)=CK(M)的概率是2-n,n是MAC的位数,基于DES的消息认证码,使用最广泛的MAC算法之一:数据认证算法 过程: 把需要认证的

      7、数据分成连续的64位的分组。 若最后一个分组不是64位,则填0 利用DES加密算法E和密钥K,计算认证码。,数据认证算法似乎可以满足前面提出的要求。,DAC M-bits (16 to 64 bits),为什么不直接使用加密而使用分离的消息认证码?,保密性与真实性是两个不同的概念 根本上,信息加密提供的是保密性而非真实性 加密代价大(公钥算法代价更大) 鉴别函数与保密函数的分离能提供功能上的灵活性 某些信息只需要真实性,不需要保密性 广播的信息难以使用加密(信息量大) 网络管理信息等只需要真实性 政府/权威部门的公告,Hash函数(杂凑函数、散列函数),Hash的特点: 与消息认证码一样,hash函数的输入是可变的消息M,输出是固定大小的hash码H(M) ,或称消息摘要(Message Digest) 、hash值。 与消息认证码不同的是, hash码的产生过程中并不使用密钥。 Hash码是所有消息的函数,改变消息的任何一位或多位,都会导致hash码的改变。 Hash算法通常是公开的。 又称为:哈希函数、数字指纹(Digital finger print)、压缩(Compressio

      8、n)函数、紧缩(Contraction )函数、数据鉴别码DAC(Data authentication code)、篡改检验码MDC(Manipulation detection code),h=H(M),假定两次输入同样的数据,那么散列函数应该能够生成相同的散列值。输入数据中的一位发生了变化,会导致生成的散列值完全不一样。 散列函数有个非常重要的特性为单向性,也就是从M计算h容易,而从h计算M不可能。,散列函数H必须满足以下几个性质,H对于任何大小的数据分组,都能产生定长的输出。 对于任何给定的M,H(M)要相对易于计算。 单向性:对于任何给定的hash值h,计算出M在计算上不可行。 弱无碰撞性:对任何给定的M1,寻找M2,使H(M1)=H(M2)在计算上不可行。 强无碰撞性:寻找任何的(M1,M2),使H(M1)=H(M2)在计算上不可行。,Hash与MAC的区别,MAC需要对全部数据进行加密 MAC速度慢 Hash是一种直接产生鉴别码的方法 Hash可用于数字签名,常用Hash算法,迭代型hash函数的一般结构,f,f,f,Y0,Y1,YL-1,b,b,b,n,n,n,n,n,

      9、IV=CV0,CV1,CVL-1,CVL,明文M被分为L个分组 Y0,Y1,YL-1 b:明文分组长度 n:输出hash长度 CV:各级输出,最后 一个输出值是hash值,无碰撞压缩函数f是设计的关键,迭代型hash函数,这种结构的hash函数已被证明是合理的,如果采用其他结构,不一定安全。 设计新的hash函数只是改进这种结构,或者增加hash码长。 算法的核心技术是设计无碰撞的压缩函数f,而敌手对算法的攻击重点是f 的内部结构,由于f 和分组密码一样是由若干轮处理过程组成,所以对f 的攻击需通过对各轮之间的位模式的分析来进行,分析过程常常需要先找出f 的碰撞。由于f 是压缩函数,其碰撞是不可避免的,因此在设计f 时就应保证找出其碰撞在计算上是不可行的。,MD5 hash算法 MD5 Hash Algorithm,MD4是MD5杂凑算法的前身,由Ron Rivest于1990年10月作为RFC提出,1992年4月公布的MD4的改进(RFC 1320,1321)称为MD5。,MD5的算法框图,输入消息可任意长,压缩后输出为128bits。,算法步骤(1)分组填充,消息,1000,64bit,消息长度,填充图样,L512bit,Kbit,如果消息长度大于264,则取其对264的模。 执行完后,消息的长度为512的倍数(设为L倍),则可将消息表示为分组长为512的一系列分组Y0,Y1,YL-1,而每一分组又可表示为16个32比特长的字,这样消息中的总字数为N=L16,因此消息又可按字表示为M0,N-1。,算法步骤(2)缓冲区初始化,hash函数的中间结果和最终结果保存于128位的缓冲区中,缓冲区用32位的寄存器表示。可用4个32bits字表示:A,B,C,D。初始存数以十六进制表示为 A=01234567 B=89ABCDEF C=FEDCBA98 D=76543210,算法

      《信息安全第5章消息认证》由会员san****019分享,可在线阅读,更多相关《信息安全第5章消息认证》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
     
    收藏店铺
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.