第4讲 对称加密技术3

更新时间:2023-07-21 17:59:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

信息安全课件

对称加密技术(3) 第3章 对称加密技术(3)主要知识点 --对称密码模型 --密码攻击 ---古典加密技术 --数据加密标准 --流密码 --分组密码工作模式 -- 随机数的产生 -- 对称密码的密钥分配2011-4-15 Ch3(2)-对称加密技术 1

信息安全课件

流密码 Stream Ciphers

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

流密码一次一密密码是绝对安全的密码,如果能以某种 一次一密密码是绝对安全的密码, 方式仿效一次一密密码, 方式仿效一次一密密码,则将可以得到安全性很 高的密码 人们试图以流密码方式仿效一次一密密码 流密码也称为序列密码, 流密码也称为序列密码,它是对明文以一位或者 一个字节为单位进行操作 为了使加密算法更安全,一般选取尽可能长的密钥 为了使加密算法更安全 一般选取尽可能长的密钥 但是长密钥的存储和分配都很困难 流密码采用一个短的种子密钥来控制密钥流发生 器产生出长的密钥序列, 器产生出长的密钥序列,供加解密使用2011-4-15 Ch3(2)-对称加密技术 3

信息安全课件

流密码的加密过程种子密钥k输入到密钥流发生器,产生一系列密码 流,通过与同一时刻的一个字节或者一位明文流 进行异或操作产生密文流种子密钥k 种子密钥 密钥流发生器 密钥流k 密钥流 i 明文流m 明文流 i

⊕图3.35 流密码加密过程

密文流c 密文流 i

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

在流密码中,如果密钥流的产生完全独立于明文 流或密文流,则称该流密码为同步流密码 同步流密码 (Synchronous Stream Cipher),如图3.36 , 所示 如果密钥流的产生与明文或者密文相关,则称这 类流密码为自同步流密码(Self-Synchronous 自同步流密码(Self-Synchronous 自同步流密码 Stream Cipher),如图3.37所示

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

同步流密码只要通信双方的密钥流产生器具有相同的种子密 钥和相同的初始状态, 钥和相同的初始状态,就能产生相同的密钥流 在保密通信过程中,通信的双方必须保持精确的同 在保密通信过程中 通信的双方必须保持精确的同 步,收方才能正确解密 收方才能正确解密 如果通信中丢失或增加了一个密文字符, 如果通信中丢失或增加了一个密文字符,则收方 将一直错误, 将一直错误,直到重新同步为止 但是同步流密码对失步的敏感性, 但是同步流密码对失步的敏感性,使我们能够容 易检测插入、删除、 易检测插入、删除、重播等主动攻击 由于同步流密码各操作位之间相互独立, 由于同步流密码各操作位之间相互独立,因此应 用这种方式进行加解密时无错误传播, 用这种方式进行加解密时无错误传播,当操作过 程中

产生一位错误时只影响一位,不影响后续位, 程中产生一位错误时只影响一位,不影响后续位, 这是同步流密码的一个优点2011-4-15 Ch3(2)-对称加密技术 8

信息安全课件

自同步流密码每一个密钥位是由前面n个密文位参与运算推导 每一个密钥位是由前面 个密文位参与运算推导 出来的,其中 其中n为定值 出来的 其中 为定值 如果在传输过程中丢失或更改了一个位, 如果在传输过程中丢失或更改了一个位,则这一 错误就要向前传播n个位 错误就要向前传播 个位 不过,在收到n个正确的密文位以后 个正确的密文位以后, 不过,在收到n个正确的密文位以后,密码自身 会实现重新同步 在自同步流密码系统中, 在自同步流密码系统中,密文流参与了密钥流的 生成,这使得对密钥流的分析非常复杂, 生成,这使得对密钥流的分析非常复杂,从而导 致对自同步流密码进行系统的理论分析非常困难2011-4-15 Ch3(2)-对称加密技术 9

信息安全课件

密钥流产生器流密码的安全强度完全取决于它所产生的密钥流 的特性 如果密钥流是无限长且为无周期的随机序列, 如果密钥流是无限长且为无周期的随机序列,那 么流密码属于“一次一密” 么流密码属于“一次一密”的密码体制 满足这样条件的随机序列在现实中很难生成 实际应用当中的密钥流都是由有限存储和有限复 杂逻辑的电路产生的字符序列 由于密钥流生成器只具有有限状态, 由于密钥流生成器只具有有限状态,那么它产生 的序列具有周期性, 的序列具有周期性,不是真正的随机序列2011-4-15 Ch3(2)-对称加密技术 10

信息安全课件

现实设计中只能追求密钥流的周期尽可能的长, 现实设计中只能追求密钥流的周期尽可能的长, 随机性尽可能的好, 随机性尽可能的好,近似于真正的随机序列 一个好的密钥流需要考虑下面几个要素: 一个好的密钥流需要考虑下面几个要素:加密序列的周期要长。 加密序列的周期要长。密钥流生成器产生的比特流最 终会出现重复。重复的周期越长, 终会出现重复。重复的周期越长,密码分析的难度越 大。 密钥流应该尽可能地接近一个真正的随机数流的特征。 密钥流应该尽可能地接近一个真正的随机数流的特征。 的个数应近似相等。 如,1和0的个数应近似相等。如果密钥流为字节流, 和 的个数应近似相等 如果密钥流为字节流, 则所有的256种可能的字节的值出现频率应近似相等。 种可能的字节的值出现频率应近似相等。 则所有的 种可能的字节的值出现频率应近似相等 为了防止穷举攻击,种子密钥值也应该有足够的长度 种子密钥值也应该有足够的长度, 为了防止穷举攻击 种子密钥值也应该有足够的长

度, 至少要保证它的长度不小于128位。 至少要保证它的长度不小于 位

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

生成一个具有良好特性的密钥流序列的常见方法 线性反馈移位寄存器(Linear Feedback 有:线性反馈移位寄存器 Shift Register,LFSR)、非线性移位寄存器 )、非线性移位寄存器 , )、 (NLFSR)、有限自动机、线性同余以及混沌密 )、有限自动机、 )、有限自动机 码序列等方法 这些方法都是通过一个种子(有限长 有限长)密码产生具 这些方法都是通过一个种子(有限长)密码产生具 有足够长周期的、随机性良好的序列。 有足够长周期的、随机性良好的序列。只要生成 方法和种子都相同,就会产生完全相同的密钥流。 方法和种子都相同,就会产生完全相同的密钥流。

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

目前密钥流生成器大都是基于移位寄存器 移位寄存器结构简单,易于实现且运行速度快 移位寄存器结构简单 易于实现且运行速度快 密钥流产生器一般由线性移位寄存器和一个非线 性组合函数两部分构成。 性组合函数两部分构成。其中线性移位寄存器部 分称为驱动部分,另一部分称为非线性组合部分 分称为驱动部分 另一部分称为非线性组合部分 其工作原理是将驱动部分,即线性移位寄存器在 即线性移位寄存器在j 其工作原理是将驱动部分 即线性移位寄存器在 时刻的状态变量x作为一组值输入非线性组合部 时刻的状态变量 作为一组值输入非线性组合部 分的f,将 作为当前时刻的密钥kj 分的 将f(x)作为当前时刻的密钥 作为当前时刻的密钥 驱动部分负责提供非线性组合部分使用的周期大、 驱动部分负责提供非线性组合部分使用的周期大、 统计性能好的序列, 统计性能好的序列,而非线性组合部分以各时刻 移位寄存器的状态组合出密钥序列2011-4-15 Ch3(2)-对称加密技术 13

信息安全课件

移位寄存器 (LFSR) )

非线性组合 函数f 函数

密钥流 ki

图3.38 密钥流产生器

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

A5/1 原理 原理1A5/1 使用 个线性移位寄存器(LFSR) 使用3个线性移位寄存器 个线性移位寄存器寄存器X: 寄存器 19 bits (x0,x1,x2, …,x18) 寄存器Y: 寄存器 22 bits (y0,y1,y2, …,y21) 寄存器Z: 寄存器 23 bits (z0,z1,z2, …,z22) 三个寄存器共有64 bits 三个寄存器共有 密钥K采用 采用64 bits。 初始时密钥 被载入 个寄存器 被载入3个寄存器 密钥 采用 。 初始时密钥K被载入

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

A5/1 原理 原理2对每一步做: 对每一步做 m = major(x8, y10, z10)Major(多数)函数定义: major(0,1,0) = 0 and (多数)函数定义 major(1,1,0) = 1

如果 x8 = m 那么 X寄存器 进行移位运算 寄存器

t = x13 ⊕ x16 ⊕

x17 ⊕ x18 xi = xi 1 for i = 18,17,…,1 and x0 = t t = y20 ⊕ y21 yi = yi 1 for i = 21,20,…,1 and y0 = t t = z7 ⊕ z20 ⊕ z21 ⊕ z22 zi = zi 1 for i = 22,21,…,1 and z0 = t

如果 y10 = m 那么 Y寄存器进行移位运算 寄存器进行移位运算 如果 z10 = m 那么 Z寄存器进行移位运算 寄存器进行移位运算 密钥流比特最后由 x18 ⊕ y21 ⊕ z22 产生2011-4-15 Ch3(2)-对称加密技术 16

信息安全课件

A5/1原理 原理3 原理Xx0 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15 x16 x17 x18

Y

y0 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14 y15 y16 y17 y18 y19 y20 y21

Z

z0 z1 z2 z3 z4 z5 z6 z7 z8 z9 z10 z11 z12 z13 z14 z15 z16 z17 z18 z19 z20 z21 z22

每次运算获得一个比特 密钥用于初始化三个寄存器 每个寄存器是否进行移位操作由M(x8, y10, z10)决 每个寄存器是否进行移位操作由 决 定 密钥流比特由三个最右端比特进行XOR运算获得 密钥流比特由三个最右端比特进行 运算获得2011-4-15 Ch3(2)-对称加密技术 17

信息安全课件

流密码总结密钥流的产生看似很复杂, 密钥流的产生看似很复杂,但用硬件实现很简单产生速度与计算机时钟速度相当(可与语音同步) 产生速度与计算机时钟速度相当(可与语音同步) 从一个64位密钥可产生无穷多密钥流 从一个 位密钥可产生无穷多密钥流 最终会产生密钥流循环! 最终会产生密钥流循环!

因为过去基于软件的密码系统不能产生高速比特流,流密 因为过去基于软件的密码系统不能产生高速比特流, 码曾十分辉煌,当今,基于软件的密码系统的出现, 码曾十分辉煌,当今,基于软件的密码系统的出现,使分 组密码成为主流 密码流的未来? 密码流的未来密码学家Shamir: “密码流已步入死亡 密码流已步入死亡-the death of stream 密码学家 密码流已步入死亡 ciphers”-2004 或许太夸张…但分组密码是现今主流 或许太夸张 但分组密码是现今主流2011-4-15 18

Ch3(2)-对称加密技术

信息安全课件

分组密码工作模式分组密码算法是提供数据安全的一个基本构件 分组密码是针对固定大小的分组进行加密的,例如 例如, 分组密码是针对固定大小的分组进行加密的 例如 DES是对 比特的明文分组进行加密,AES是对 是对64比特的明文分组进行加密 是对 比特的明文分组进行加密, 是对 128位分组操作 位分组操作 需要保密传输的消息不一定刚好是一个分组大小 为了在实际中应用分组密码, 为了在实际中应用分组密码,定义了五种工作模 式。任何一种对称分组密码算法都可以以这些方 式进行应用

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

多块分组如何加密多块分组呢? 如何加密多块分组呢 是否对每个分组采用一个密钥? 是否对每个分组采用一个密钥 和一次一密同

样困难,甚至更难! 和一次一密同样困难,甚至更难 对每一组进行独立加密? 对每一组进行独立加密 根据前一个组的信息加密, 根据前一个组的信息加密,例如将信息组串联成 ‘串’? 怎样处理部分或是不完全的分组? 怎样处理部分或是不完全的分组

2011-4-15

Ch3(2)-对称加密技术

信息安全课件

电子密码本模式电子密码本模式 (Electronic Code Book, , ECB)模式是分组密码的基本工作方式 模式是分组密码的基本工作方式 它将明文分割成独立大小的分组b, 它将明文分割成独立大小的分组 ,最后一组在 必要时需要填充,一次处理b比特的明文 比特的明文, 必要时需要填充,一次处理 比特的明文,每次 使用相同的密钥加密 每一个分组依次独立加密, 每一个分组依次独立加密,产生独立的密文组 优点:并行处理来加速加 解密运算;一分组发生错 并行处理来加速加/解密运算 优点 并行处理来加速加 解密运算 一分组发生错 误不会影响到其他分组. 误不会影响到其他分组 缺点:相同的明文组将产生相同的密文组 相同的明文组将产生相同的密文组,这样会 缺点 相同的明文组将产生相同的密文组 这样会 泄露明文的数据模式. 泄露明文的数据模式 ECB模式特别适合短数据 (如加密密钥 模式特别适合短数据 如加密密钥) 如加密密钥2011-4-15 Ch3(2)-对称加密技术 21

本文来源:https://www.bwwdw.com/article/19cm.html

Top