版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章报文鉴别与散列函数内容鉴别的需求;散列函数;报文鉴别码签名5.1鉴别的需求网络通信环境中会受到下列攻击泄露;通信量分析:连接的频率和持续的时间、报文数量等。伪装:假源点;内容篡改:修改内容;
序号篡改:增删内容;
计时篡改:报文回放;
抵赖:终点否认收到、源点否认发送过。
5.2鉴别函数鉴别函数:用来产生用于鉴别一个报文的值:鉴别符。鉴别符用于鉴别报文在通信过程中是否被篡改、删除和修改等。产生鉴别符的几类函数:报文加密:以整个报文作为它的鉴别符号报文鉴别码(MAC)散列函数鉴别函数-报文加密对称加密:提供保密:仅源点和终点共享K。一定程度的鉴别:仅来自源点。不提供签名:接收人可以伪造、发送人可以否认。EMMDKKEk(M)鉴别函数-报文加密私钥加密:提供鉴别和签名:仅源点有私钥KS。任何一方都能用公开密钥Kp脱密。EMMDKsKpEKs(M)鉴别函数-报文加密公开密钥加密:提供报密:仅终点有脱密的私钥KS。不提供签名:接收人可以伪造、发送人可以否认。EMMDKpKSEKp(M)鉴别函数-报文加密对称密钥加密:提供保密:BKp鉴别与签名:AKsEMMDAKsBKsEBKp(EAKs(M))EBKpABDAKp为什么需要报文鉴别EMMDKKY=Ek(M)Z≠Ek(M)NDK消息鉴别VS常规加密保密性与真实性是两个不同的概念根本上,信息加密提供的是保密性而非真实性加密代价大(公钥算法代价更大)鉴别函数与保密函数的分离能提供功能上的灵活性某些信息只需要真实性,不需要保密性
–
广播的信息难以使用加密(信息量大)
–
网络管理信息等只需要真实性
–
政府/权威部门的公告为什么需要报文鉴别码加密与鉴别分离,使得结构灵活。例如:应用层鉴别,底层加密;减少工作量,验证鉴别码较容易;监控计算机程序,防止程序被修改,但装载时不要对程序解密。报文鉴别码MACMAC,也称为密码检验和,由如下形式的函数C生成: MAC=Ck(M)其中M是变长的报文K是仅由收发双方共享的密钥Ck{M)是定长的鉴别符。当报文确信或已知是正确时,终点每次将MAC附加到报文中。接收者通过重新计算MAC来对报文进行鉴别。5.2.2散列函数(HashFunction)
散列函数的定义散列函数:M:变长报文H(M):定长的散列码(报文摘要)主要用于为文件、报文或其它分组数据产生指纹散列函数的说明H(M):输入为任意长度的消息M;输出为一个固定长度的散列值,称为消息摘要(MessageDigest)H(M)是消息M的所有位的函数并提供错误检测能力:消息中的任何一位或多位的变化都将导致该散列值的变化H(M)又称为:哈希函数、数字指纹(Digitalfingerprint)、压缩(Compression)函数、数据鉴别码(Dataauthenticationcode)等HashvsMACMAC需要对全部数据进行加密MAC速度慢Hash是一种直接产生鉴别码的方法散列函数方法(a)提供了保密和鉴别。MH||EDMHEk[M||H(M)]kkH(M)比较散列函数方法(b)散列与加密结果合并为一个整体函数实际上就是一个MAC。E[H(M)]是变长报文M和密钥K的函数值,且它生成一个定长的输出,对不知道该密钥的对手来说是安全的。提供鉴别MHE||MHDEk[H(M)]KKEK(H(M)]比较散列函数方法(c)提供鉴别、抵赖。MHE||MHDEKRa(H(M)]KRaKUaEKRa(H(M)]比较散列函数方法(d)同时提供保密性、鉴别和抵赖。MHE||EDMHDEk[M||EKRa(H(M)]kkKRaKUaEKRa(H(M)]比较散列函数方法(e)通信各方共享一个公共的秘密值s。对报文鉴别。M||H||H[(M||s)]s比较||Hs散列函数方法(f)通过包含报文和散列码的整体进行加密就能对上一种方法(e)增加保密功能M||H||Ek(H[(M||s)])s比较||HsEkH[(M||s)]Dk散列函数的目标散列函数的目的是为文件、报文或其他的分组数据产生“指纹”。要用于报文鉴别,散列函数H必须具有如下性质:H能用于任何大小的数据分组。H产生定长输出。对任何给定的x,H(x)要相对易于计算,使得硬件和软件实现成为实际可行。对任何给定的码H(x),从H(x)计算x,在计算上是不可行的。这就是所谓的单向性质。对任何给定的分组x,寻找不等于x的y,使得H(y)=H(x)在计算上是不可行的。
寻找对任何的(x,y)对使得H(x)=H(y)在计算上是不可行的。5.2.3散列算法
5.2.3.1MD5MD5描述Merkle于1989年提出hashfunction模型RonRivest于1990年提出MD41992年,RonRivest
完成MD5(RFC1321)在最近数年之前,MD5是最主要的hash算法现行美国标准SHA-1以MD5的前身MD4为基础MD5描述
输入:任意长度的报文输入分组长度:512bit
输出:128bit报文5.2.3.1.1设计目标安全性直接安全性速度简单性和紧凑性有利的Little-Endian结构MD5描述-step1
附加填充比特对报文进行填充,使其比特数与448模512同余,即填充长度为512的整数倍减去64填充方法:填充比特串的最高位为1,其余各位均为0MD5描述-step2
附加长度值|M2|为512的倍数:Y0,Y1,…,YL-1MD5描述-step3初始化MD缓存MD为128bit,用于存放散列函数的中间及最终结果MD可表示为4个32bit的寄存器(A,B,C,D),初始化如下:MD5描述-step4以512个比特(16个字)分组处理消息主循环包含共64步操作,分别使用4个非线性函数。每一次循环可以表示为7步。64步操作形式:ab+((a+g(b,c,c)+X[k]+T[i]<<<s)MD5报文摘要算法(Rivest,RFC1321)Y1512Y0512Yq512YL-1512······HMD5HMD5HMD5HMD5报文L*512-64-填充长度填充1-512长度64IVCVqCV1CVL-1128位摘要MD5:RFC1321MD4:RFC1320MD2:RFC1319HMD5CVq128BACDG,T[17,18,…,32],X[ρ2(k)]16个步骤BACDF,T[1,2,…,16],X[k]16个步骤BACD32BACDH,T[33,34,…,48],X[ρ3(k)]16个步骤I,T[49,50,…,64],X[ρ4(k)]16个步骤Yq512++++CVq+11284轮,每轮16步骤ABCDABCD+++CLSs+X[k]T[i]gX[k]是分组的第k个32比特,k=1,2,…,16T[i]=232abs(sin(i))的整数部分b=b+((a+g(b,c,d)+X[i]+T[i])<<<s)MD5的安全性Berson表明,对单循环MD5,使用不用的密码分析可能在合理的时间内找出能够产生相同摘要的两个报文,这个结果被证明对四个循环中的任意一个循环也成立,但作者没有能够提出如何攻击包含全部4个循环MD5的攻击Boer和Bosselaers显示了即使缓存ABCD不同,MD5对单个512bit分组的执行将得到相同的输出(伪冲突)Dobbertin的攻击技术:使MD5的压缩函数产生冲突,即寻找MD5被认为是易受攻击的,逐渐被SHA-1和RIPEMD-160替代5.2.3.2安全散列算法SHA-1安全散列算法(SHA)由美国国家标准和技术协会(NIST)提出,作为联邦信息处理标准(FIPSPUB180)在1993年公布。1995年发布了一个修订版FIPSPUB180-1通常称为SHA-1SHA也是基于MD4的。最大报文长度264-1,散列码长度160bit。结构与MD5类似,抗攻击能力比MD5强;HMAC(密码散列算法RFC2104)Keyed-HashingforMessageAuthenticationCode在最近几年,研究的热点转向由密码散列码导出MAC。这样的目的在于:密码散列函数如MD5和SHA-1的软件执行速度比对称分组密码如DES的快。很容易获得密码散列函数的库代码。美国或其他国家对密码散列函数没有出口限制,而对称分组密码,即便用作MAC也是限制的。HMAC的主要设计目标:无需修改地使用现有的散列函数(比如MD5或SHA-1)。特别是,散列函数的软件实现执行很快,且程序代码码是公开的和容易获得的。当出现或获得更快的或更安全的散列函数时,对算法中嵌入的散列函数要能轻易地进行替换。保持散列函数的原有性能不会导致算法性能的降低。使用和处理密钥的方式很简单。HMACHMAC算法RFC2104SiY0Y1……YL-1散列函数bbitsbbitsbbitsK+ipad⊕K+opad⊕S0H(Si||M)散列函数HMACk(M)nbitsIVnbitsIV填充到bbitsHMAC算法对密钥K的左端填充一些0生成一个bbits的串K+。ipad:b/8个00110110,opad:01011010。将K
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电力部门校招用工合同(2篇)
- 存量房屋买卖中介合同
- 品牌横向课题项目合同(2篇)
- 反担保合同范本汇编
- 铝合金停车场设施购销合同
- 面对丈夫出轨她勇敢迈出这一步
- 代理记账与影视制作协议
- 企业加盟合同协议模板
- 给排水工程招投标保险合同
- 二零二四年美容师劳动合同书(2024版)
- 2024年保密教育培训
- 2024年度宾馆装修合同:设计与施工一体化协议
- 北京市朝阳区2024-2025学年九年级上学期期末模拟考试化学试卷(含解析)
- 金融时间序列
- 网络安全防护策略与指南
- 影院防恐防暴应急预案
- 农产品溯源体系构建
- 风电场消防管理标准
- 2024陕西省西安国际港务区定向招聘历年高频难、易错点500题模拟试题附带答案详解
- 医院医用耗材管理委员会工作制度
- 2024秋期国家开放大学《财务报表分析》一平台在线形考(作业一至五)试题及答案
评论
0/150
提交评论