第15讲--序列密码的非线性组合

合集下载

分组密码和序列密码

分组密码和序列密码

分组密码和序列密码
分组密码和序列密码是两种常见的对称密码算法。

分组密码是将明文分成固定长度的组(通常为64位或128位),然后对每一组进行加密操作,最终得到密文。

其中最常见的分组密码算法是DES和AES。

序列密码是按照明文或密文的顺序逐个加密或解密。

序列密码算法没有固定的分组长度,而是
根据算法规定的步骤对每个字符或比特进行处理。

最常见的序列密码算法是RC4和Salsa20。

分组密码和序列密码的主要区别在于加密的方式。

分组密码将明文分组加密,而序列密码是逐
个字符或比特加密。

这导致了两者在速度和安全性方面的差异。

分组密码通常比序列密码更安全,因为每个分组的长度固定,使得密码算法能更好地控制和混
淆数据。

而序列密码由于处理的单位是逐个字符或比特,容易受到统计分析等攻击。

然而,序列密码在某些特定的应用场景下具有优势。

由于可以逐个加密或解密,序列密码通常
具有更高的效率,适用于数据流传输和实时加密等场景。

总的来说,分组密码和序列密码都有自己的适用范围和优势,选择哪种密码算法取决于具体的应用需求和安全要求。

第4章(序列密码)

第4章(序列密码)

4.4 线性移位寄存器的一元多项式表示
设 n 级线性移位寄存器的输出序列满足递推 关系 an+k=c1an+k-1 c2an+k-2 … cnak (*) 对任何 k 1 成立。这种递推关系可用一个一 元高次多项式 P(x)=1+c1x+…+cn-1xn-1+cnxn 表示,称这个多项式为LFSR的联系多项式或 特征多项式。
初始状态由用户确定,当第i个移位时钟脉冲 到来时,每一级存储器ai都将其内容向下一级 ai-1传递,并根据寄存器此时的状态a1,a2,…,an 计算f(a1,a2,…,an),作为下一时刻的an。反馈函 数f(a1,a2,…,an)是n元布尔函数,即n个变元 a1,a2,…,an可以独立地取0和1这两个可能的值, 函数中的运算有逻辑与、逻辑或、逻辑补等运 算,最后的函数值也为0或1。
图4-4 GF(2)上的n级线性反馈移位寄存器
输出序列{at}满足 an+t=cnat cn-1at+1 … c1an+t-1 其中t为非负正整数。 线性反馈移位寄存器因其实现简单、速度快、 有较为成熟的理论等优点而成为构造密钥流生 成器的最重要的部件之一。
例4.2 图4-5是一个5级线性反馈移位寄存器, 其初始状态为(a1,a2,a3,a4,a5)=(1,0,0,1,1),可 求出输出序列为 1001101001000010101110110001111100110 … 周期为31。
即输出序列为101110111011…,周期为4。 如果移位寄存器的反馈函数f(a1,a2,…,an)是a1 ,a2,…,an的线性函数,则称之为线性反馈 移位寄存器LFSR(linear feedback shift register )。此时f可写为 f(a1,a2,…,an)=cna1 cn-1a2 … c1an 其中常数ci=0或1 2加法。ci=0或1可 用开关的断开和闭合来实现,如图4-4所示。

现在密码学第13讲 序列密码与移位寄存器

现在密码学第13讲  序列密码与移位寄存器

其中
则称其为线性反馈移位寄存器;
否则, 称其为非线性反馈移位寄存器.
显然, 一个n 阶线性移位寄存器序列
满足递推关系式
点击此处返回
设一个GF(q) 上的n 阶线性移位寄存器的反馈函数为
其中,
该线性移位寄存器的输出序列 满足递推关系式

令D 表示线性移位寄存器序列的延迟算子, 即


用未定元x 取代D, 我们称一元多项式
其中 我们称
为线性移位寄存器的构造矩阵。
点击此处返回
所以我们有
在序列的一个周期内, 0 与1 的个数相差至多为1 在序列的一个周期内, 长为i 的游程数占游程总数的
另外, 在等长的游程中, 0 游程的个数与1 游程的个数相等 序列的异相自相关函数是一个常数
点击此处返回
第6章 序列密码 与移位寄存器
主要内容
序列密码的基本原理 移位寄存器与移位寄存器序列
线性移位寄存器的表示 线性移位寄存器序列的周期性
线性移位寄存器的序列空间 线性移位寄存器序列的极小多项式
m 序列的伪随机性 B-M 算法与序列的线性复杂度 线性移位寄存器的非线性组合
6. 1 序列密码的基本原理
设明文、密钥、密文都是一个(0, 1)序列,他们分别为
性质2:将n级m序列的一个周期段首尾相接,其游程 总数为N=2n-1;其中没有长度大于n的游程;有1个长 度为n的1游程,没有长度为n的0游程;没有长度为
n-1的1游程,有1个长度为n-1的0游程;有2n2k 个长
度为 k(1 k n 2) 的1游程,有2n2k 个长度 为 k(1 k n 2) 的0游程。
的周期,记为p(f(x)),简记为p(f)。
例子:x4+x3+x2+x+1的周期为5 (x4+x3+x2+x+1)(x+1)=x5+1

第7章 序列密码

第7章 序列密码
定理7.6.1 n级m序列{ai}具有如下性质: (i)在一个周期内,0,1出现次数分别为2n-1-1和2n-1 次.
(ii)在一个周期圈内,总游程数为2n-1,对1≤i≤n-2, 长为i的游程有2n-i-1个,且0,1游程各半,长为n-1 的0游程一个,长为n的1游程1个。
(iii) {ai}的自相关函数为二值:
定理 7.7.2 GF(2)上n级M序列的数目
为 2 2 n1 n

7.7.2 非线性前馈序列
引理7.7.1 在图7.7.1中n级LFSR为n级m
序列生成器时,对任一组不全为0的k j ( j 0,1,2, ,2n 2)
,存在唯一的前馈函数f(x),使前馈序列
是周期序列k k 0k1
1,
Ra
()ຫໍສະໝຸດ 1 T,当 0 当0 T 1
定理 7.6.2 设线性移位寄存器的特征多项
式为 令
Ax
定义
p7ix1.a6i xii.n12,0 ci x则设i,pA递((xx) 推)p为序((xx))G列,F其(a2j 中)上((的xp)(x多)i)n1。项cni式xn,i ji。1 a j
lLn [ x]
记为Nf,即f(x)的非线性度为其与所有线性 函数之最短距离,于是线性函数的非线性度
为0。称max lLn [ x]
d
(
f
,
l
)为f(x)的线性度,记为Cf。即
的线性度是f(x)与所有线性函数的最大距离。
定义 7.4 若l(x)使得
,则称l(x)为
f(x)的最佳线性逼近。d( f ,l) N f
若的r周i两期两为互素,f(nx)(与2ri 各1) 变元均有关,则{kj}
NF

第4讲 序列密码

第4讲 序列密码

1
0
0
1
1010 1101 0110 0011 1001
0
17
LFSR
举例
1111 0111 1011 0101 → → → → → → → → → → 1 1 1 1 0 1 0 1 1 0
0
1
0
0
1010 1101 0110 0011 1001 0100
0
18
LFSR
举例
1111 0111 1011 0101 → → → → → → → → → → → 1 1 1 1 0 1 0 1 1 0 0
LFSR的周期
上例周期为15 不同的LFSR周期不一定相同
举例:反馈函数仅引入b1,则周期最大为4
阶为n的LFSR的最大周期为2n-1 周期主要与反馈函数有关
26
LFSR的周期
已经证明:当反馈函数是本原多项式时, 周期达到最大为2n-1 本原多项式定义
若阶为n的多项式P(x)能够整除xt+1,其中t = 2n-1,且对于任何d < 2n-1且d| 2n-1 ,P(x)不能 整除xd+1,则称P(x)为本原多项式
41
序列密码的评价标准
周期 统计特性 线性复杂度(局部线性复杂度) 混淆与扩散 非线性特性
42
真随机序列
信息源
电磁辐射,热噪声,人机交互等
不能用于加密,可以用于生成密钥
43
1
1000 1100 1110
LFSR
举例
1111 0111 1011 0101 → → → → → → → → → → → → → → → 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0
24
1

分组密码体制

分组密码体制
5
两个基本设计方法
由于对称分组密码的缺点是不善于隐藏明文的 统计特性,因而对“统计分析”攻击方式的抵御能 力不强,故Shannon提出了两个抵抗“统计分析” 的方法:混淆和扩散。
◆混淆:目的是为了隐藏明文和密文之间的关系,增加密 钥和密文之间关系的复杂性。可以使用“代替”的方法 来实现。
◆扩散:目的是让密文没有统计特征,也就是将明文中的 统计信息散布到整个密文中,增加密文与明文之间关系 的复杂性,以挫败推测出密钥的尝试。可以使用“置换” 的方法来实现。
对于给定的64位的明文p,通过初始置换IP获得64位的 p320,位并记将为pR00分,为即左p0右=I两P(部p)=分L,0R前0。面IP32置位换记如为图L所0,示后。面
置换表中的数字1~64代表的仅仅是明文 分组中元素所处的位置,而非元素的值!
• 第四步:初始逆置换IP-1 应用初始逆置换IP-1对最后一轮迭代之后得到 的R16L16进行置换,得到密文C。
• 分组加密算法本质上体现了n位明文分组和n位密文分组的一一 映射。
• 分组大小n的选择
1“)统如计果分n较析一码小”般,,方的不则法,同得的对变到攻于换的击的n明。位总文分数空组为间的(和2对n密)!称,文分也空组就间密是有限,容易受到 2)如果n充说分,大密,钥则的由个于数得为到(的2n明)!个文。空间和密文空间足够大, 明文的统计特征将被掩盖,可以抵抗“统计分析”方法的攻击 ;但同时也将导致密钥数目的急剧增加和密钥空间的急剧增大 ,这会给密钥的分配、管理和存储带来很大的困难。
Feistel 密码结构
DES算法的整体结构 ——Feistel密码结构
• 每一轮的迭代算法 加密:对于每一轮 i=1,2,...,n,新 的左右部分根据如下规则重新

密码学3 序列密码


2019/1/25
35
随机性公设说明:
1)说明:序列中0、1出现的概率基本相同 2)说明:0、1在序列中每一位置上出现 的概率相同; 3)说明通过对序列与其平移后的序列作比 较,不能给出其它任何信息。
2019/1/25 36
从密码系统的角度看,一个伪随机序列还 应满足下面的条件: ① {ai}的周期相当大。 ② {ai}的确定在计算上是容易的。 ③ 由密文及相应的明文的部分信息,不能 确定整个{ai}。
2019/1/25 31
该移存器的周期是最长周期。 称能产生m序列的移存器为本原移存器,该 移存器对应的反馈多项式为本原多项式。 本原多项式所产生的序列是最长周期序列, 即 2n-1 ,称为m序列。
m序列在密码学中有广泛的应用。
2019/1/25 32
2、m序列特性
(一)基本定义
定义1:游程 若干个信号连续出现的现象称游程。
2019/1/25
37
(三)m序列的特性
性质1:“0、1”信号频次
r级m序列的一个周期中,1出现 2 r 1 r 1 2 1 个。 0出现
本原多项式
f ( x) x 4 x 1
个,
序列的一个周期:011110101100100
2019/1/25 38
性质2:在r级m序列的一个周期中,没有大于r的游程
2019/1/25
1
2. 单表代换密码 凯撒密码
c E3 (m) m 3(mod26),0 m 25 m D3 (c) c 3(mod26),0 c 25
移位变换
c Ek (m) m k (mod26),0 m, k 25 m Dk (c) c k (mod26),0 c, k 25

序列密码发展报告(X年中国密码学学术会议)

随后,N.T. Courtois 进一步提出快速代数攻击方法。快速代 数攻击在代数攻击的基础上增加对方程的预处理步骤,达到降 低方程次数的目的。
代数攻击不仅适用于序列密码,早在 1995 年,代数攻击就 成功用于分析多变元的公钥密码体制。
代数攻击的出现使得求解超定方程组的算法成为密码分析 者关注的焦点问题之一,促进了有限域上解多变元方程组理论 的发展。
(2)带进位反馈移位寄存器序列
研究了 FCSR 的记忆序列。证明了 l-序列的记忆序列的周期 达到 l-序列自身的周期, 并且其元素分布具有半周期互补性质
T. Tian and W.F. Qi, Period and complementarity properties of FCSR memory sequences, IEEE Trans. Inform. Theory, 2007, 53(8): 2966-2970.
X.Y. Zhu and W.F. Qi, On the distinctness of modular reductions of maximal length sequences modulo odd prime powers, Mathematics of Computation, 2008, 77: 1623-1637.
X.Y. Zhu and W.F. Qi, Further result of compressing maps on primitive sequences modulo odd prime powers, IEEE Trans. Inform. Theory, August, 2007, 53(8): 2985-2990.
(2)序列密码分析态势
• 相关攻击
相关攻击源于 1985 年瑞士学者 T. Siegenthaler 针对组合生 成器提出的“分别征服”攻击。

应用密码学第4章序列密码体制


2021/5/9
15
第4章 序列密码体制 实际的序列密码算法其安全性依赖于简单的异或运算和
一次一密乱码本。密钥流发生器生成的看似随机的密钥流实 际上是确定的,在解密的时候能很好地将其再现。密钥流发 生器输出的密钥越接近随机,对密码分析者来说就越困难。
如果密钥流发生器每次都生成同样的密钥流的话,对攻
2021/5/9
10
第4章 序列密码体制
4.1.4 伪随机数的评价标准 如果一序列产生器是伪随机的,它应有下面的性质: (1)看起来是随机的,表明它可以通过所有随机性统计
检验。 现在有许多统计测试。它们采用了各种形式,但共同思路
是它们全都以统计方式检查来自发生器的数据流,尝试发现数 据是否是随机的。
4.2 序列密码的概念及模型
序列密码算法将明文逐位转换成密文。该算法最简单的
应用如图4-1所示。密钥流发生器(也称为滚动密钥发生器) 输出一系列比特流:K1,K2,K3,…,Ki。密钥流(也称为滚 动密钥)跟明文比特流P1,P2,P3,…,Pi,进行异或运算产 生密文比特流,即
Ci =Pi⊕K i
(4-1)
2021/5/9
2
第4章 序列密码体制
4.1.1 随机数的使用 序列密码的保密性完全取决于密钥的随机性。如果密钥
是真正的随机数,则这种体制在理论上就是不可破译的。但 这种方式所需的密钥量大得惊人,在实际中是不可行的。因 此,目前一般采用伪随机序列来代替随机序列作为密钥序列, 也就是序列存在着一定的循环周期。这样序列周期的长短就 成为保密性的关键。如果周期足够长,就会有比较好的保密 性。现在周期小于1010的序列很少被采用,周期长达1050的 序列也并不少见。
20
第4章 序列密码体制

第七讲 祖冲之密码 武汉大学密码学

9
三、线性移位寄存器序列密码
z 回忆:GF(2)上的线性移位寄存器
g(x)=x4+x+1 g0=1
S0
g1=1
S1
g2=0
S2
g3=0
S3→v,v是临时工作变量 S1→S0, S2→S1, S3→S2, v →S3
10
三、线性移位寄存器序列密码
2. 密钥输出阶段,每运行一个节拍,执行下列过程 一次,并输出一个32比特的密钥字Z:
① BitReconstruction(); ② Z = F (X0, X1, X2) ⊕ X3; /产生32位密钥字Z/ ③ LFSRWithWorkMode()。
23
三、基于ZUC的机密性算法128-EEA3
密码学
第七讲 祖冲之密码
张焕国 武汉大学计算机学院 空天信息安全与可信计算教育部重点实验室
目录
第一讲 第二讲 第三讲 第四讲 第五讲 第六讲 第七讲 第八讲 第九讲 信息安全概论 密码学的基本概念 数据加密标准(DES) 高级数据加密标准(AES) 中国商用密码SMS4与分组密码应用技术 序列密码基础 祖冲之密码 中国商用密码HASH函数SM3 复习
z 用途
主要用于4G移动通信中移动用户设备UE和无线网络控制 设备RNC之间的无线链路上通信信令和数据的加解密工 作阶段: 加解密框图
DIRECTION BEARER LENGTH COUNT LENGTH CK DIRECTION BEARER COUNT
CK
ZUC 密钥序列字 明文 发送方 密文
2
目录
第十讲 第十一讲 第十二讲 第十三讲 第十四讲 第十五讲 第十六讲 第十七讲 第十八讲 公钥密码基础 中国商用公钥密码SM2加密算法 数字签名基础 中国商用公钥密码SM2签名算法 认证 密码协议 密钥管理:对称密码密钥管理 密钥管理:公钥密码密钥管理 复习
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档