网络与信息安全ppt课件.ppt_第1页
网络与信息安全ppt课件.ppt_第2页
网络与信息安全ppt课件.ppt_第3页
网络与信息安全ppt课件.ppt_第4页
网络与信息安全ppt课件.ppt_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

密码学基础 2 1 目录数据加密标准公开密钥算法 2 数据加密标准 DataEncryptionStandard DES 3 背景 发明人 美国IBM公司W Tuchman和C Meyer1971 1972年研制成功基础 1967年美国HorstFeistel提出的理论产生 美国国家标准局 NBS 1973年5月到1974年8月两次发布通告 公开征求用于电子计算机的加密算法 经评选从一大批算法中采纳了IBM的LUCIFER方案标准化 DES算法1975年3月公开发表 1977年1月15日由美国国家标准局颁布为数据加密标准 DataEncryptionStandard 于1977年7月15日生效 4 背景 美国国家安全局 NSA NationalSecurityAgency 参与了美国国家标准局制定数据加密标准的过程 NBS接受了NSA的某些建议 对算法做了修改 并将密钥长度从LUCIFER方案中的128位压缩到56位1979年 美国银行协会批准使用DES1980年 DES成为美国标准化协会 ANSI 标准1984年2月 ISO成立的数据加密技术委员会 SC20 在DES基础上制定数据加密的国际标准工作 5 DES概述 分组加密算法 明文和密文为64位分组长度对称算法 加密和解密除密钥编排不同外 使用同一算法密钥长度 56位 但每个第8位为奇偶校验位 可忽略密钥可为任意的56位数 但存在弱密钥 容易避开采用混乱和扩散的组合 每个组合先替代后置换 共16轮只使用了标准的算术和逻辑运算 易于实现 6 DES加密算法的一般描述 7 DES加密过程 8 DES加密过程 令i表示迭代次数 表示逐位模2求和 f为加密函数 9 DES解密过程 令i表示迭代次数 表示逐位模2求和 f为加密函数 10 DES中的各种置换 扩展和替代 11 初始置换IP和初始逆置换IP 1 12 IP和IP 1 IP IP 1 13 DES的一轮迭代 14 扩展置换 盒 32位扩展到48位 扩展 15 压缩替代S 盒 48位压缩到32位 共8个S盒 16 S 盒1 S 盒2 S 盒3 S 盒4 S 盒5 S 盒6 S 盒7 S 盒8 17 S 盒的构造 18 S 盒的构造 DES中其它算法都是线性的 而S 盒运算则是非线性的S 盒不易于分析 它提供了更好的安全性所以S 盒是算法的关键所在 19 S 盒的构造准则 S盒的每一行是整数0 15的一个置换没有一个S盒是它输入变量的线性函数改变S盒的一个输入位至少要引起两位的输出改变对任何一个S盒和任何一个输入X S X 和S X 001100 至少有两个比特不同 这里X是长度为6的比特串 对任何一个S盒 对任何一个输入对e f属于 0 1 S X S X 11ef00 对任何一个S盒 如果固定一个输入比特 来看一个固定输出比特的值 这个输出比特为0的输入数目将接近于这个输出比特为1的输入数目 20 S 盒的构造要求 S 盒是许多密码算法的唯一非线性部件 因此 它的密码强度决定了整个算法的安全强度提供了密码算法所必须的混乱作用如何全面准确地度量S 盒的密码强度和设计有效的S 盒是分组密码设计和分析中的难题非线性度 差分均匀性 严格雪崩准则 可逆性 没有陷门 21 置换p 盒的构造 22 p 盒的构造准则 P置换的目的是提供雪崩效应明文或密钥的一点小的变动都引起密文的较大变化 23 DES中的子密钥的生成 24 密钥置换算法的构造准则 设计目标 子密钥的统计独立性和灵活性实现简单速度不存在简单关系 给定两个有某种关系的种子密钥 能预测它们轮子密钥之间的关系 种子密钥的所有比特对每个子密钥比特的影响大致相同从一些子密钥比特获得其他的子密钥比特在计算上是难的没有弱密钥 25 DES的一轮迭代 26 DES加密算法的一般描述 27 DES的工作模式 28 电子密码本ECB electroniccodebookmode 密码分组链接CBC cipherblockchaining 密码反馈CFB cipherfeedback 输出反馈OFB outputfeedback 29 电子密码本ECB 30 ECB的特点 简单和有效可以并行实现不能隐藏明文的模式信息相同明文生成相同密文 同样信息多次出现造成泄漏对明文的主动攻击是可能的信息块可被替换 重排 删除 重放误差传递 密文块损坏 仅对应明文块损坏适合于传输短信息 31 密码分组链接CBC 32 CBC的特点 没有已知的并行实现算法能隐藏明文的模式信息需要共同的初始化向量IV相同明文生成不同密文初始化向量IV可以用来改变第一块对明文的主动攻击是不容易的信息块不容易被替换 重排 删除 重放误差传递 密文块损坏 两明文块损坏安全性好于ECB适合于传输长度大于64位的报文 还可以进行用户鉴别 是大多系统的标准如SSL IPSec 33 密码反馈CFB CFB 分组密码 流密码假定 Si为移位寄存器 传输单位为jbit加密 Ci Pi EK Si 的高j位 Si 1 Si j Ci解密 Pi Ci EK Si 的高j位 Si 1 Si j Ci 34 密码反馈CFB加密 Ci Pi EK Si 的高j位 Si 1 Si j Ci 35 密码反馈CFB解密 Pi Ci EK Si 的高j位 Si 1 Si j Ci 36 CFB的特点 分组密码 流密码没有已知的并行实现算法隐藏了明文模式需要共同的移位寄存器初始值IV对于不同的消息 IV必须唯一误差传递 一个单元损坏影响多个单元 37 输出反馈OFB OFB 分组密码 流密码假定 Si为移位寄存器 传输单位为jbit加密 Ci Pi EK Si 的高j位 Si 1 Si j EK Si 的高j位 解密 Pi Ci EK Si 的高j位 Si 1 Si j EK Si 的高j位 38 输出反馈OFB加密 Ci Pi EK Si 的高j位 Si 1 Si j EK Si 的高j位 39 输出反馈OFB解密 Pi Ci EK Si 的高j位 Si 1 Si j EK Si 的高j位 40 0FB的特点 分组密码 流密码没有已知的并行实现算法隐藏了明文模式需要共同的移位寄存器初始值IV对于不同的消息 IV必须唯一误差传递 一个单元损坏只影响对应单元对明文的主动攻击是可能的信息块可被替换 重排 删除 重放安全性较CFB差 41 多重DES 42 两重DES 43 三重DES 44 DES的安全性 45 F函数 S Box 设计原理未知密钥长度的争论DES的破译弱密钥与半弱密钥 46 DES密钥长度 关于DES算法的另一个最有争议的问题就是担心实际56比特的密钥长度不足以抵御穷举式攻击 因为密钥量只有个早在1977年 Diffie和Hellman已建议制造一个每秒能测试100万个密钥的VLSI芯片 每秒测试100万个密钥的机器大约需要一天就可以搜索整个密钥空间 他们估计制造这样的机器大约需要2000万美元 47 DES密钥长度 在CRYPTO 93上 Session和Wiener给出了一个非常详细的密钥搜索机器的设计方案 这个机器基于并行运算的密钥搜索芯片 所以16次加密能同时完成 花费10万美元 平均用1 5天左右就可找到DES密钥美国克罗拉多洲的程序员Verser从1997年2月18日起 用了96天时间 在Internet上数万名志愿者的协同工作下 成功地找到了DES的密钥 赢得了悬赏的1万美元 48 DES密钥长度 1998年7月电子前沿基金会 EFF 使用一台25万美圆的电脑在56小时内破译了56比特密钥的DES1999年1月RSA数据安全会议期间 电子前沿基金会用22小时15分钟就宣告破解了一个DES的密钥 49 破译DES 1990年 以色列密码学家EliBiham和AdiShamir提出了差分密码分析法 可对DES进行选择明文攻击线性密码分析比差分密码分析更有效 50 弱密钥与半弱密钥 弱密钥 EK EK I DES存在4个弱密钥即 半弱密钥 EK1 EK2 至少有12个半弱密钥即 51 其它常规分组加密算法 52 TripleDESIDEARC5RC6AES其他一些较实用的算法 如Blowfish CAST 以及RC2等 53 使用常规加密进行保密通信 54 易受攻击的位置 电话公司市话局 接线盒 55 链路加密和端到端加密 56 存储转发通信的加密覆盖范围 57 各种加密策略包含的内容 58 链路层加密 对于在两个网络节点间的某一次通信链路 链路加密能为网上传输的数据提供安全保证所有消息在被传输之前进行加密 在每一个节点对接收到的消息进行解密 然后先使用下一个链路的密钥对消息进行加密 再进行传输 59 链路层加密的优点 由于在每一个中间传输节点消息均被解密后重新进行加密 因此 包括路由信息在内的链路上的所有数据均以密文形式出现 这样 链路加密就掩盖了被传输消息的源点与终点由于填充技术的使用以及填充字符在不需要传输数据的情况下就可以进行加密 这使得消息的频率和长度特性得以掩盖 从而可以防止对通信业务进行分析 60 链路层加密的缺点 链路加密通常用在点对点的同步或异步线路上 它要求先对在链路两端的加密设备进行同步 然后使用一种链模式对链路上传输的数据进行加密 这就给网络的性能和可管理性带来了副作用在一个网络节点 链路加密仅在通信链路上提供安全性 消息以明文形式存在 因此所有节点在物理上必须是安全的 否则就会泄漏明文内容在传统的加密算法中 用于解密消息的密钥与用于加密的密钥是相同的 该密钥必须被秘密保存 并按一定规则进行变化 这样 密钥分配在链路加密系统中就成了一个问题 因为每一个节点必须存储与其相连接的所有链路的加密密钥 这就需要对密钥进行物理传送或者建立专用网络设施 而网络节点地理分布的广阔性使得这一过程变得复杂 同时增加了密钥连续分配时的费用 61 节点加密 节点在操作方式上与链路加密是类似的 两者均在通信链路上为传输的消息提供安全性 都在中间节点先对消息进行解密 然后进行加密 因为要对所有传输的数据进行加密 所以加密过程对用户是透明的然而 与链路加密不同 节点加密不允许消息在网络节点以明文形式存在 它先把收到的消息进行解密 然后采用另一个不同的密钥进行加密 这一过程是在节点上的一个安全模块中进行节点加密要求报头和路由信息以明文形式传输 以便中间节点能得到如何处理消息的信息 因此这种方法对于防止攻击者分析通信业务是脆弱的 62 端到端加密 端到端加密允许数据在从源点到终点的传输过程中始终以密文形式存在采用端到端加密 又称脱线加密或包加密 消息在被传输时到达终点之前不进行解密 因为消息在整个传输过程中均受到保护 所以即使有节点被损坏也不会使消息泄露 63 端到端加密的优点 端到端加密系统的价格便宜些 与链路加密和节点加密相比更可靠 更容易设计 实现和维护端到端加密避免了其它加密系统所固有的同步问题 因为每个报文包均是独立被加密的 所以一个报文包所发生的传输错误不会影响后续的报文包从用户对安全需求的直觉上讲 端到端加密更自然些 单个用户可能会选用这种加密方法 以便不影响网络上的其他用户 此方法只需要源和目的节点是保密的即可 64 端到端加密的缺点 通常不允许对消息的目的地址进行加密 这是因为每一个消息所经过的节点都要用此地址来确定如何传输消息由于这种加密方法不能掩盖被传输消息的源点与终点 因此它对于防止攻击者分析通信业务是脆弱的 65 目录数据加密标准公开密钥算法 66 公开密钥算法 公开密钥算法是非对称算法 即密钥分为公钥和私钥 因此称双密钥体制双钥体制的公钥可以公开 因此也称公钥算法公钥算法的出现 给密码的发展开辟了新的方向 公钥算法虽然已经历了20多年的发展 但仍具有强劲的发展势头 在鉴别系统和密钥交换等安全技术领域起着关键的作用 67 公开密钥算法的提出 公钥密码学是1976年由Diffie和Hellman在其 密码学新方向 一文中提出的 见文献 W DiffieandM E Hellman NewDirectrionsinCryptography IEEETransactiononInformationTheory V IT 22 No 6 Nov1976 PP 644 654 68 公开密钥算法的提出 RSA公钥算法是由Rivest Shamir和Adleman在1978年提出来的参见CommunitionsoftheACM Vol 21 No 2 Feb 1978 PP 120 126该算法的数学基础是初等数论中的Euler 欧拉 定理 并建立在大整数因子的困难性之上 69 加密与解密由不同的密钥完成加密 解密 知道加密算法 从加密密钥得到解密密钥在计算上是不可行的两个密钥中任何一个都可以作为加密而另一个用作解密 不是必须的 公开密钥算法的基本要求 70 基于公开密钥的加密过程 71 用公钥密码实现保密 用户拥有自己的密钥对 KU KR 公钥KU公开 私钥KR保密 72 基于公开密钥的鉴别过程 73 用公钥密码实现鉴别 条件 两个密钥中任何一个都可以用作加密而另外一个用作解密鉴别 鉴别 保密 74 公开密钥算法 公钥算法的种类很多 具有代表性的三种密码 基于整数分解难题 IFP 的算法体制基于离散对数难题 DLP 算法体制基于椭圆曲线离散对数难题 ECDLP 的算法体制 75 Diffie Hellman密钥交换算法 76 单向陷门函数函数 满足下列条件的函数f 1 给定x 计算y f x 是容易的 2 给定y 计算x使y f x 是困难的 3 存在z 已知z时 对给定的任何y 若相应的x存在 则计算x使y f x 是容易的所谓计算x f 1 Y 困难是指计算上相当复杂 已无实际意义 77 单向陷门函数说明 仅满足 1 2 两条的称为单向函数 第 3 条称为陷门性 z称为陷门信息当用陷门函数f作为加密函数时 可将f公开 这相当于公开加密密钥 此时加密密钥便称为公开钥 记为Pkf函数的设计者将z保密 用作解密密钥 此时z称为秘密钥匙 记为Sk 由于设计者拥有Sk 他自然可以解出x f 1 y 单向陷门函数的第 2 条性质表明窃听者由截获的密文y f x 推测x是不可行的 78 Diffie Hellman密钥交换算法 Diffie和Hellman在其里程碑意义的文章中 虽然给出了密码的思想 但是没有给出真正意义上的公钥密码实例 也既没能找出一个真正带陷门的单向函数然而 他们给出单向函数的实例 并且基于此提出Diffie Hellman密钥交换算法 79 Diffie Hellman密钥交换算法的原理 基于有限域中计算离散对数的困难性问题之上 设F为有限域 g F是F的乘法群F F 0 并且对任意正整数x 计算gx是容易的 但是已知g和y求x使y gx 是计算上几乎不可能的这个问题称为有限域F上的离散对数问题 公钥密码学中使用最广泛的有限域为素域FP 80 Diffie Hellman密钥交换协议描述 Alice和Bob协商好一个大素数p 和大的整数g 1p和g无须保密 可为网络上的所有用户共享 81 Diffie Hellman密钥交换协议描述 当Alice和Bob要进行保密通信时 他们可以按如下步骤来做 1 Alice选取大的随机数x 并计算X gx modP 2 Bob选取大的随机数x 并计算X gx modP 3 Alice将X传送给Bob Bob将X 传送给Alice 4 Alice计算K X X modP Bob计算K X X modP 易见 K K gxx modP 由 4 知 Alice和Bob已获得了相同的秘密值K双方以K作为加解密钥以传统对称密钥算法进行保密通信 82 RSA算法 83 Euler函数 所有模m和r同余的整数组成剩余类 r 剩余类 r 中的每一个数和m互素的充要条件是r和m互素和m互素的同余类数目用 m 表示 称m的Euler函数当m是素数时 小于m的所有整数均与m互素 因此 m m 1对n pq p和q是素数 n p q p 1 q 1 84 Euler函数举例 设p 3 q 5 那么 15 3 1 5 1 8这8个模15的剩余类是 1 2 4 7 8 11 13 14 85 RSA算法的实现 实现的步骤如下 Bob为实现者 1 Bob寻找出两个大素数p和q 2 Bob计算出n pq和 n p 1 q 1 3 Bob选择一个随机数e 0 e n 满足 e n 1 4 Bob使用辗转相除法计算d e 1 mod n 5 Bob在目录中公开n和e作为公钥密码分析者攻击RSA体制的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论