




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 HASH函数和MAC 二 现代密码学 第六讲 2 上节内容回顾 单向函数Hash函数的定义hash函数的用途MD5算法SHA 256算法 3 本节主要内容 消息鉴别码定义CBC MACHMACCCT认证加密标准 4 消息鉴别码 消息鉴别码又称为带密钥的hash 5 消息鉴别码 消息认证码MAC MessageAuthenticationCode 是一种消息认证技术 发送方A和接收方B共享密钥K 若A向B发送消息M 则A计算利用C F K M 计算MAC值 然后将原始消息M和C一起发送给接收方 接收方B对收到的消息M用相同的密钥K进行相同的计算得出新的MAC值C 并将接收到的C与其计算出的C 进行比较 若相等 则 1 接收方可以相信消息未被修改 2 接收方可以确信消息来自真正的发送方 F是MAC函数 它利用密钥K和任意长度的消息M来生成一个固定长度的短数据块C 6 消息鉴别码 攻击目的1伪造攻击 攻击者在没有密钥K的情况下 伪造一个未经过认证的 M Mac 对 存在性伪造 如果攻击者只能够对一个不由他控制的消息进行伪造 那么这种伪造攻击称为存在性伪造攻击 选择性伪造 如果攻击者能够对由他选择的消息进行伪造 那么这种伪造攻击称为选择性伪造攻击 2密钥恢复攻击 攻击者通过分析一系列 M Mac 对 找到控制这些 M Mac 对的密钥 非自适应选择明文攻击 敌手在使用Mac设备之前 必须已经选定要测试的消息 自适应选择明文攻击 敌手可以根据Mac设备的输出 自行选择下一次要测试的消息 7 消息鉴别码 MAC的构造用hash函数构造MAC用分组密码构造MAC用伪随机函数构造MAC其他构造方法 8 消息鉴别码 研究进展1985年 基于DES的MAC ISO8731 1 ANSIX9 92002年 NIST发布标准HMAC ANSIX9 71NESSIE工程推荐使用的MAC算法有TTMAC UMAC CBC MAC HMAC 9 CBC MAC 美国国家标准技术研究所 NationalInstituteofStandardsandTechnology 于1985年5月30日发布了 计算机信息认证标准 FIPSPUB113FederalInformationProcessingStandardsPublication113 这个标准制定了一个基于DES数据认证算法 DataAuthenticationAlgorithm DAA 这个算法也被用在ISO8731 1和美国国家标准局 AmericanNationalStandardsInstitute ANSI 发布的金融机构信息认证的标准ANSIX9 9中 10 10 CBC MAC 基本思想是 首先 填充数据 形成一串n比特组 其次 使用CBC模式加密这些数据 对最后的输出分组进行选择处理和截断 如果m n 形成MAC 11 设n比特数据组D1 D2 Dq 则MAC的具体计算过程如下 置I1 D1 计算O1 ek I1 对i 2 3 q 完成下列计算 Ii DiOi 1Oi ek Ii 对Oq进行选择处理和截断 获得m比特MAC 其中ek表示分组密码的加密函数 11 CBC MAC 12 CBC MAC 若数据不是加密算法分组长度的整数倍 则需进行消息填充 填充方法有 方法1 对需要计算MAC的数据的右边填充若干个或零个 0 比特 以便得到一个比特长度是n的整数倍的数据串 方法2 对需要计算MAC的数据的右边先填充一个 1 比特 然后填充若干个或零个 0 比特 以便得到一个比特长度是n的整数倍的数据串 方法3 首先对需要计算MAC的数据的右边填充若干个或零个 0 比特 以便得到一个比特长度是n的整数倍的数据串 其次 在所得到的数据串的左边填充一个n比特组 该组包含了未进行填充的数据的比特长度的二元表示 其左边用 0 补齐 如果验证者不知道数据的长度 则应选用填充方法2或3 因为这两种方法可使验证者查明所填充的那些 0 比特 12 13 CBC MAC 如果在计算CBC MAC的过程中没有使用选择处理和截断过程 直接输出最后一步的输出密文作为最后MAC 是否安全 14 CBC MAC 若消息恰好是分组的整数倍 不考虑填充攻击一 假定MAC1 ek D1 则MAC2是两个分组的消息 D1 D2 的一个合法MAC值 其中 D2 D1 MAC1 这种攻击方法称为 cutandpaste 攻击 攻击二 攻击者想伪造消息D的合法MAC 首先 选择消息D1发送给认证者 认证者返回MAC1 ek D1 然后计算D2 MAC1 D 把消息 D1 D2 发送给认证者 认证者返回MAC2 ek ek D1 D2 则MAC2是消息D的合法MAC值 MAC2 ek D 14 伪造攻击 攻击者在没有密钥K的情况下 伪造一个未经过认证的 M Mac 对 存在性伪造VS选择性伪造 主动攻击VS被动攻击 15 CBC MAC 课堂练习 如果使用填充方法1 上述攻击是否存在 如果使用填充方法2 上述攻击是否存在 如果使用填充方法3 上述攻击是否存在 使用选择处理 上述攻击是否存在 16 CBC MAC 标准中规定了两种具体的选择处理方法 选择一个密钥K 计算O q ek Oq 选择一个密钥k 计算O q ek dk Oq 选择处理过程除了避免 cutandpaste 攻击之外 还可以增加密码分析者穷搜索密钥K的难度截断方法在选择处理后 取n比特组的最左边的m比特构成MAC 17 HMAC HMAC是由MihirBellare RanCanetti和HugoKrawczyk于1996年首先提出2002年3月6日美国国家标准技术研究所 NationalInstituteofStandardsandTechnology 发布了TheKeyed HashMessageAuthenticationCode HMAC 用来认证消息的起源及其完整性 这个算法也被用在美国国家标准局 AmericanNationalStandardsInstitute ANSI 发布的X9 71中 18 HMAC HMAC的基本观点是 使用Hash函数H K1和K2 K1 K2 计算MAC H K1 H K2 m 其中K1和K2由同一个密钥K导出 19 HMAC HMAC的工作流程如下 H是一个Hash函数K表示密钥B表示计算消息摘要时消息分块的字节长度 对MD5和SHA 1是512比特 64字节 L表示消息摘要按字节计算的长度 对MD5是16字节 ipad表示0 x36重复B次 opad表示0 x5c重复B次 K可以有不超过B字节的任意长度 但一般建议K的长度不小于L 当使用长度大于B的密钥时 先用H对密钥进行杂凑 然后用得出的L字节作为HMAC的真正密钥 19 20 HMAC 21 HMAC 计算一个数据 文本 的HMAC的操作如下 在K的后面加上足够的0以得到B字节的串将上一步得到的B字节串与ipad异或将数据流 文本 接在第2步得到的B字节串后面将H应用于上一步的比特串将第1步所得到的B字节串与opad异或将第4步的消息摘要接在第5步的B字节串后面应用H于上一步的比特串上面的描述可以表述为H Kopad H Kipad text 21 22 CCT认证加密标准 消息认证方式1 SSL 认证加密2 IPSec 加密认证3 SSH 加密 认证 23 CCT认证加密标准 先认证后加密 接受方解密和验证程序都完成后才能确定消息是否有效 具有密文隐藏功能 先加密后认证 传送信道不安全 传送信息被篡改 或出现传送错误 接受方在解密运算之前就可以发现 从而减少不必要的解密浪费 不具有密文隐藏功能 24 CCT认证加密标准 25 CCT认证加密标准 CCM认证加密模式示例 26 CCT认证加密标准 B0的设置 27 CCT认证加密标准 A0的设置 28 CCT认证加密标准 注 1先解密 然后对明文认证 2不必按顺序解密 解密运算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-河南-河南无损探伤工一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-河南-河南土建施工人员二级(技师)历年参考题库含答案解析
- 2024版合同协议内容变更协议
- 2025年事业单位工勤技能-河北-河北家禽饲养员五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-河北-河北公路养护工四级(中级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江西-江西水工监测工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江苏-江苏汽车修理工(技师/高级技师)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江苏-江苏医技工三级(高级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-新疆-新疆热力运行工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西客房服务员一级(高级技师)历年参考题库典型考点含答案解析
- 创伤性血气胸的急救与护理
- 2025关于医疗平台与医疗机构合作合同模板
- 福州工会考试试题及答案
- 学校后勤工作管理培训
- 胰腺炎的营养治疗与护理
- 教师校园安全培训课件
- 头皮健康与头发生长关系的研究
- 财务结账相关管理制度
- 叉车维修方案(3篇)
- 口腔科护士正确吸唾操作规范
- 中学升旗管理制度
评论
0/150
提交评论