序列的线性复杂度密码性质简介ppt

合集下载

4、第四讲 序列密码

4、第四讲 序列密码

38
序列密码的评价标准
周期 统计特性 线性复杂度(局部线性复杂度) 混淆与扩散 非线性特性
39
序列密码的评价标准
周期 统计特性 线性复杂度(局部线性复杂度) 混淆与扩散 非线性特性
40
序列密码的评价标准
• m序列具有良好的随机性:
游程:称序列中连续的i 游程:称序列中连续的i个1为长度等于i的 为长度等于i 游程,同样,称序列中连续的i 1游程,同样,称序列中连续的i个0为长 度等于i 游程。 度等于i的0游程。 ①在一个周期内,0和1出现的次数接近相 等,即0出现的次数为2 n - 1 -1,1出现的 次数为2 n-1 ;
Deterministic
1903-1957
Period (周期) depends on the seed and is hard to determine
1
1000 1100 1110
LFSR
举例
1111 0111 1011 0101 → → → → → → → → → → → → → → → 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 32
1
1
1
1
1010 1101 0110 0011 1001 0100 0010 0001
0
1000 1100 1110 1111
42
序列密码的评价标准
④自相关函数 定义:设{ki}是周期为p的序列,k0, k1,…, kp-1 定义 是其中一个周期子段,则 k0+j, k1+j ,…, kp-1+j 也是一个周期子段。记这两个子段中相同 的位数为A,不相同的位数为D,则自相关 函数定义为: R(j)=(A-D)/p
自相关函数反映一个周期内平均每位的相同程度。 自相关函数反映一个周期内平均每位的相同程度。

二元W-广义割圆序列的线性复杂度

二元W-广义割圆序列的线性复杂度

具有特定性质的伪随机序列在数 字 模 拟 ’ 软 件 测 试’ 全 球 定 位 系 统’ 尤其是流密码中有着广泛 L S03#
%) Y 的应用 , 度量序列伪随机性的一个重要指标就是它的线性复杂度 ( 如果序列= *# *"满 足反 , = = = >! "# %# /# Y 馈函数= 则= 就称为线性反馈序列 # 最小 的 A 称为=Y 的线 性复杂 ? ? = . "A# %= %@ != !@* @ A A# & & & . >? . . . Y Y Y 度# 记为A! " # 它也是生成= 的最短线性反馈移位寄存器的级数 % 根据 / 如果A! "" ) & ! = $ 0 算法 # = ! )是
N B" ! #> / $J N 如果 N $ E% ! B" ! #> N / N /
#!
N /
@ #! >
/ $E % N / / $J
/ J $N /
自然科学版 " &卷 !!!!!!!!!!!! !!!! 西安电子科技大学学报 ! !!!!!!!!!!!! !!!! 第 & . % *
广义割圆序列的定义和性质 <! 二元 ! =
令 ! 和" 是两个不同的奇素数 ! " # ! #" # $ " ! 则剩 E B ) >! ! ,>@ <> " ! ,# "! !&%! "&% ! &% "&% !% "%
! # # $ %, 4 5 6 5 78 7 6 ; , < = > ? 5 7 A 6 5 7 B4 7 A C D E 72 7 5 F < A G H I D B D 6 ?J ? D C , I D K 6 ? % " " ( %# L M D ? 6 !, L < N N 7 7< = !( 9: @ @ # $&,0 0 6 5 M 7 O 6 5 D E H6 ? BL < O Q 5 7 A4 E D 7 ? E 7 L M D ? 6J ? D C , < =R 7 5 A < N 7 Q O# S < ? D ? # ( " . %# L M D ? 6 6 5 M, !! P @ 9 @ #2 # " 6 ? B> ? = < A O, 4 E D , < A 5 M F 7 H 52 < A O 6 NJ ? D C , : 6 ? T M < Q & " " ( "# L M D ? 6 !( % # 9 0 6 & % ’ 6 H 7 B< ?5 M 7P < N ? < O D 6 N 5 M 7 < A ?6) 6 N < D H= D 7 N B 5 M 76 Q 5 M < AP A 7 H 7 ? 5 HN D ? 7 6 AE < O N 7 U D 5 ? B !/ 9 9< P 96 1 M 7 O D ? D O 6 NP < N ? < O D 6 N H< =6 N N; D ? 6 A D 5 7 O 6 ?@ 7 ? 7 A 6 N D T 7 BE E N < 5 < O D EH 7 Q 7 ? E 7 HF D 5 M5 M 7P 7 A D < B! 9 9 VM 9 W "% A 7 H Q N 5 H< ; 5 6 D ? 7 BH M < F5 M 6 5 5 M 7Q 7 A; < Q ? B6 ? B5 M 7 N < F 7 A; < Q ? B< = 5 M 7 D A N D ? 7 6 A E < O N 7 U D 5 A 7 %6 ? B P P P 96 ! "& # ! " ! " & 6 N O < H 56 N N5 M 7 H 7 7 E 5 D C 7 N ,X A < O5 M 7C D 7 F < D ? 5< =H 5 A 7 6 OE D M 7 AE A 5 < H H 5 7 O H !A 7 H P 9 P P 9 P 9 ! &% "& % H 7 Q 7 ? E 7 HM 6 C 7@ < < B N D ? 7 6 A E < O N 7 U D 5 , 1 M 7 6 ?A 7 H D H 5 5 M 7 6 5 5 6 E G H = A < O5 M 7 6 N D E 6 5 D < ?< = 5 M 7/ 7 A N 7 G 6 O $ W P 9 9E P P P 0 6 H H 7 N < A D 5 M O, 96 @ % $ $ $ $ : $ ( & 5 6 5 A 7 6 OE D M 7 A E E N < 5 < O D EE N 6 H H E E N < 5 < O D EH 7 Q 7 ? E 7 N D ? 7 6 AE < O N 7 U D 5 O D ? D O 6 NP < N ? < O D 6 N !H P 9 9 W P 9 9 .;

流密码详解ppt课件

流密码详解ppt课件
2.1 流密码一般模型
自同步流密码(SSSC)
密钥流生成器是一种有记忆变换器 密钥流与明文符号有关:
i 时刻的密文不仅取决于i 时刻的明文,而且与i 时刻 之前的l个明文符号有关 具有有限的差错传播 具有自同步能力 把明文每个字符扩散在密文多个字符中,强化了抗统 计分析的能力
问:SSSC是如何自同步的?请email回应。
i F ( i1, k ), zi f ( i, k ), ci E (zi,m i). i:密 钥 流 生 成 器 的 内 部 状 态 0 :密 钥 流 生 成 器 的 初 始 状 态 k : 种 子 (初 始 )密 钥 F :状 态 转 移 函 数 f :密 钥 流 生 成 函 数
k
密钥流生成器
11
病原体侵入机体,消弱机体防御机能 ,破坏 机体内 环境的 相对稳 定性, 且在一 定部位 生长繁 殖,引 起不同 程度的 病理生 理过程
2.1 流密码一般模型
二元加法序列密码
明文序列: m= m1 m2 m3 …; 密钥序列: z= z1 z2 z3 …; 密文序列: c= c1 c2 c3 …; 加密变换: ci=zimi (i=1,2,3,…); 解密变换: mi=zici (i=1,2,3,…).
病原体侵入机体,消弱机体防御机能 ,破坏 机体内 环境的 相对稳 定性, 且在一 定部位 生长繁 殖,引 起不同 程度的 病理生 理过程
2.2 线性反馈移位寄存器序列
伪随机序列 考虑二元序列: a={ai}=a0a1a2a3 ….
周期序列
定义2.1 设a= (a0, a1,…,ai,…)是一个二元序列,若 存在正整数N和非负整数m,使得ai+N=ai对于任意i m成立,则称二元序列a是终归周期序列。如果 m=0,则称序列a是严格周期序列,简称周期序列。

【安全课件】第14讲—序列密码

【安全课件】第14讲—序列密码
,其中 ci G F(q),1in,则称其为线性反馈寄存 器;否则称其为非线性反馈移为寄存器。
其中 cn 0 ,若 cn 0 我们说该寄存器是退化 的,否则是非退化的。
4
移位寄存器序列空间
符号说明:G(f)表示以f(x)为联结多项式的n级线 性移位寄存器序列构成的空间
定理1:G(f)是GF(q)上的一个n维线性空间。 证明:只需证明G(f)中的任意两个序列的任意线
状态转移矩阵: 满足:st+1=stTf 称st=(at,at+1,at+2,…,at+n-1)为n维状态
2
实例(画出移存器的逻辑框图,写出相应的线性
递推式)
多项式
f(x)x4 x3 x2 1
答案: 线性递推式: at=at-4+at-3+at-2
x1
x2
x3
x4
3
非退化的移位寄存器
若反馈函数形如:f( x 1 ,x 2 ,,x n ) c n x 1 c n 1 x 2 c 1 x n
称f(x)是可约多项式;否则,称其为不可约多 项式。
6
定理2:若f(x)|h(x),则G(f) G(h).
例1:联结多项式为
f(x)=x4+x3+x+1=(x+1)2(x2+x+1)
线性递推式:at=at-4+at-3+at-1 输出序列:000111//000111//…… 周期为6
011//011//……
12
m序列的游程分布规律
性质2:将r级m序列的一个周期段首尾相接,其游程 总数为N=2r-1;其中没有长度大于r的游程;有1个长 度为r的1游程,没有长度为r的0游程;没有长度为

序列的线性复杂度密码性质简介ppt

序列的线性复杂度密码性质简介ppt

8/7/2013
• 对于这些序列的性质分析和计数也是一项 重要的工作。 • 最终目标是找出任意的k值的确切表达式, 从而对二元2n周期序列整体的秘密性质进行 讨论。。
8/7/2013
• 关于序列的另外一个重要研究方向是研究 序列的自相关性质和互相关性质。
序列的线性复杂度密码性质简 介
密码体制的定义
定义 2.1:一个密码体制是满足以下条件的五元组 (P , C, K, E, D ) : 1. P 表示所有可能的明文组成的有限集 2. C 表示所有可能的密文组成的有限集 3. K 代表密钥空间,由所有可能的密钥组成的有限集 4. 对任意的 K K ,都存在一个加密法则 eK E 和相应的 解密法则 dK D 。并且对每一 eK : P C , dK : C P ,对任意 的明文 x P ,均有 d K (eK ( x)) x 。
k-错线性复杂度
对于一个周期为N的二元序列
它的k-错线性复杂度LCk(S)等于对于序列的 一个周期中最多改变k个位置上的值时序 列的线性复杂度的最小值。
S s0 , s1 ,, sN 1 ,...
8/7/2013
事实上,随着k 的增加,序列的错误线性复 杂度是阶梯降低的。 在所有的k以及对应的k-错线性复杂度组成 的二元对中,有时候一个错误线性复杂度 对应了多个不同的k值。我们只取其中最小 的k值,则这些二元对构成的集合称为该序 列的错误线性复杂度谱。
8/7/2013
• 求错误线性复杂度谱中的确切表达式也是 一个非常有意义的工作。 • 主要工作集中在周期Nk值已 知
k 1min 2
w(GC ( LC ( S )))
其中GC()表示变量减1后的二进制表示。
8/7/2013

差分密码分析和线性密码分析原理课件

差分密码分析和线性密码分析原理课件
差分密码分析和线性 密码分析原理课件
• 实例演示
01
引言
密码分析简介
密码分析是研究如何 从加密的信息中获取 未加密的信息的学科。
密码分析是信息安全 领域的重要分支,对 于保护信息安全具有 重要意义。
它涉及到密码学的多 个领域,包括密码算 法、加密技术、解密 技术等。
密码分析的重要性
密码分析是保障国家安全的重要手段 之一,能够保护国家机密不被泄露。
线性密码分析实例
总结词
通过实际例子演示线性密码分析的过程和结 果。
详细描述
线性密码分析是一种基于加密算法的线性性 质来破解加密的方法。通过构建一个线性方 程组,可以求解出加密算法中的密钥。这个 过程可以通过实际的例子来演示,例如使用 简单的XOR加密进行演示。在演示过程中, 可以展示如何构建线性方程组,如何求解方
04
差分密码分析与线性密码分 析的比较
理论基础的比较
差分密码分析
基于加密算法中输入和输出之间 的差值关系进行攻击,利用已知 的明文和密文对,通过统计分析 找出算法中的弱点。
线性密码分析
基于加密算法中输入和输出之间 的线性关系进行攻击,利用已知 的明文和密文对,通过线性方程 组求解找出算法中的弱点。
预测密文模式
基于求解得到的参数或密钥,可以预 测密文中可能存在的模式或规律,从 而破解加密算法。
线性密码分析的优缺点
优点
线性密码分析是一种有效的攻击方法,尤其对于一些简单的加密算法,它可以在较短的时间内破解。此外,线性 密码分析方法相对简单,易于理解和实现。
缺点
然而,对于复杂的加密算法,线性密码分析可能变得非常困难,因为需要处理大量的数据和复杂的数学问题。此 外,线性密码分析方法依赖于大量的明文和密文对,而这些数据对可能难以获取。另外,一些加密算法可能不存 在明显的线性关系,使得线性密码分析方法无法适用。

【学习课件】第14-15讲数据加密技术(序列加密)

【学习课件】第14-15讲数据加密技术(序列加密)

• 只要选择合适的连接多项式便可使线性移位寄存
器的输出序列周期达到最大值2n –1,并称此时的
输出序列为最大长度线性移位寄存器输出序列,
简称为m序列。
ppt课件
16
二、线性移位寄存器序列密码
1、线性移位寄存器
• 仅当连接多项式g(x)为本原多项式时,其线性移
• 例如,如果通信中丢失或增加了一个密文字符,则收
方的解密将一直错误。
ppt课件
4
一、序列密码的基本概念
①同步序列密码
种子密钥k
种子密钥k
密钥序列 产生算法
密钥序列 产生算法
m1,m2, …
k1,k2,… c1,c2,…
Ci = mi⊕ki
k1,k2,… m1,m2,…
设密文失步 c = c1, c3, c4, … cn-1, cn ( c2 丢失)
• 注意:错误与失步是不同的概念!
设密文错误 c = c1, c2, c3, … cn-1, cn ( c2 错) ⊕ k= k1, k2, k3, … kn-1, kn (密钥正确)
m=m1,×, m3, …ppt课m件 n-1, mn (仅 m2 错)
6
一、序列密码的基本概念
②自同步序列密码( Self- Synchronous Stream Cipher)
• 密钥流的每一位是前面固定数量密文位的函数。军方
称为密文自动密钥
• 密钥序列产生算法与明文(密文)相关,则所产生的
密钥序列与明文(密文)相关。
• 设密钥序列产生器具有 n位存储,则加密时一位密文
错误将影响后面连续 n个密文错误。在此之后恢复正 确。
• 解密时一位密文错误也将影响后面连续 n个明文错。

线性复杂度

线性复杂度

CH03.4
模p n (n ≥1)的本原根, 因而 p n (x ) (n ≥1)在GF(q)上不可约
由于 2 pm x 2p 1 (x) 0 j 2 p m , p| j , jis odd ( x 2jp m ) 0 j 2 p m , jis even ( x 2jp m )
) / gcd(1 x
pm
x x
pm
1 1
p m-1
p (x
p m-1
)
1 p m (x) (x
p m-1
1)
p m-2
p m (x) p m1 (x) (x
1)
p m (x) p m1 (x) p 2 (x) p (x)(x- 1) 引理4 : 设p是一个素数, q 是一个模p 2 的本原根, 则q 也是一
线性复杂度
如果s是周期序列, s N 是它的第一周期, 则s(x)可以表示成,
N s ( x) N N 2N s(x)= s (x)(1+x +x + ) 1 xN s N ( x) / gcd( s N ( x),1 x N ) g ( x) N N N (1 x ) / gcd( s ( x),1 x ) f s ( x)
i 1 i 1 p p p p i 1 i 1 i 1 i 1
CH03.9
b" B1 B2 Bp
证明
证明 :1. 如果 B1 B 2 B p , 则 a(x) B1 (x) x
2 p m 1
B 2 (x) x x
2 pm
p m-1
m m m-1 m-1
1)(x

【安全课件】第13讲—序列密码

【安全课件】第13讲—序列密码

1、真值表
例如 f (x) f (x1, x2 )
x
f(x)
0
0
0
0
1
1
1
0
1
1
1
0
2、小项表示 小项表示实际上是布尔代数表达方式,即逻辑表达
方式,此方法常用于布尔函数的设计实现。 上例的小项表示为 f (x) x1x2 x1 x2
3、多项式表示 因为 x 1 x ,将小项表示中的逻辑非的形式换掉 即得多项式表示。
任意正整数k有 ak ak p 成立,称满足该式的最小正 整数p为序列的周期。
r级线性反馈移存器的最长周期: 2r 1 ,能 达到最长周期的线性移存器序列称为m序列。
在密码学中,我们希望参与变换的序列周期越长越好,因 此对线性反馈移存器我们更感兴趣的是能达到最长周期的序 列,即m序列。
(五)、实例(画出下列个移存器的逻辑框图,写出相
预备知识:布 尔 函 数
一般地,我们把n元布尔函数定义为如下映射:
记为
,其中f : F2n F2
f (x)
x (x1, x2 ,, xn ) F2n , f (x) F2 , F2 0, 1
布尔函数是研究数字逻辑电路的重要数学工具, 在序列密码、分组密码和公钥密码中,布尔函数都有 重要的应用。特别在序列密码中,布尔函数是重要的 数学工具之一。
应的线性递推式,并讨论由它们所产生的序列)
1、不可约多项式 f (x) x4 x3 x2 x 1
2、可约多项式 f (x) x4 x3 x 1 (x3 1)(x 1)
3、本原多项式
f (x) x4 x 1
4、环式移存器
f (x) x4 1
答案: 1、该移存器产生三类周期相同(全为5)的序列及一 个全零序列。 2、该移存器产生五类周期分别为6、3、3、2、1的序 列及一个全零序列。 3、该移存器产生周期为15的m序列及一个全零序列。

《密码学》金晨辉 第三章 序列密码 3.2 m序列特性

《密码学》金晨辉 第三章 序列密码 3.2 m序列特性

数,从而得到序列的初态。
m序列特性
条件2: 已知r级线性递归序列的连续2r个时刻
的信号a0, a1,…, a2r-1,并已知该序列的级数r,目的是 求解该序列的线性递推式的结构参数c1, c2,…, cr.
求解方法: 将已知的后r个信号都按递推式线性由该信号
前面的r个信号表示,得到以c1, c2,…, cr为未知变量 的方程组
长度为3的1游程,0个;长度为3的0游程,1个;
长度为2的0、1游程各有1个;
长度为1的0、1游程各有2个。
m序列特性
二 移加特性
性质3(1):若 a 是由r级本原线性移存器产生的m 序列, 则 a L (t)(a)(t0m2 o r1 d )是与 a 平移等价 的m序列。
注:其中L(t)(a)表示序列a左移t位所得序列。
性递归序列,但周期可能<2n-1。
推论:利用采样方法可采出所有的n次本原多项式, 共 (2n 1)/ n 个。
m序列特性
五 m序列的还原
一条线性递归序列由: (1) 线性递推式(包括级数n); (2) 初始信号 两个因素决定。 这两个因素都可设置为密钥的一部分。 因 此 ,m 序 列 的 还 原 问 题 就 是 在 已 知 m 序 列 或仅已知其部分信号的条件下,求解未知因素的 问题。
为序列a的以t为起点的k采样序列,并称k为采 样距。
m序列特性
定理:设a是周期为2n-1的m序列,k为正整数。则 (1) 当gcd(k,2n-1)=1时,序列a的k采样序列都是周
期为2n-1的m序列; (2) 当存在非负整数d:0≤d≤n,使k=2d时,序列a的
k采样序列都与序列a平移等价。 (3) 当gcd(k,2n-1)≠1时,序列a的k采样序列仍是线

序列密码体制续解析精品PPT课件

序列密码体制续解析精品PPT课件
为了使密钥流生成器输出的二元序列尽可能复杂,应保证其周 期尽可能大、线性复杂度和不可预测性尽可能高,因此常使用多个 LFSR来构造二元序列,称每个LFSR的输出序列为驱动序列,显然 密钥流生成器输出序列的周期不大于各驱动序列周期的乘积,因此 ,提高输出序列的线性复杂度应从极大化其周期开始。
2021/1/8
因此,如果知道{ck}中相邻位的值ck-1和ck,就可以推断出ak 和bk中的一个。而一旦知道足够多的这类信息,就可通过密码分 析的方法得到序列{ak}和{bk}。为了克服上述缺点,Pless提出了由 多个J-K触发器序列驱动的多路复合序列方案,称为Pless生成器

2021/1/8
9
3.Pless生成器 Pless生成器由8个LFSR、4个J-K触发器和1个循环计数器构
Geffe序列的周期实现了极大化,且0与1之间的分布大体上是 平衡的。
2021/1/8
6
2.J-K触发器 J-K触发器如下图所示,它的两个输入端分别用J和K表示,其
输出ck不仅依赖于输入,还依赖于前一个输出位ck-1,即
ck x1 x2 ck1 x1
其中x1和x2分别是J和K端的输 入。由此可得J-K触发器的真值表 ,如下表所示。
{ak}=0,1,1,…和 {bk}=1,0,0,1,0,1,1,… 于是,输出序列{ck}是0,1,1,0,1,0,0,1,1,1,0,1,0,1,0,0,1,0,0,1,0,… 其周期为:(22-1)(23-1)=21。
由表达式ck=(ak+bk+1)ck-1+ak可得:
ck
ak
,
bk ,
ck1 0 ck1 1
应用密码学
张仕斌 万武南 张金全 孙宣东编著

(现代密码学课件)02序列密码

(现代密码学课件)02序列密码
(现代密码学课件)02序列密码
2
一、二进制与位运算
二进制表示 字符编码 常用位运算 位运算练习
3
二进制表示
在现代密码算法中,我们通常需要将明文 用二进制的明文流来表示,然后再对二进 制的明文流加密。
任何十进制数字都可以用二进制数字表示 练习:将自己的学号的后三位用二进制数
字表示(后面的练习还需要用到)
输 出 时刻 状 态
4321
18
0 0 0 1 0 0
9 10 11 12 0 1101 1110 1111 0111 0011 0001
输出
1 0 1 0 1 1 1 1
33
LFSR 练习
设3级 LFSR 的递归函数为ai+3=ai+2+ai,初 始状态为 (a1,a2,a3)=(1,0,1)。求输出序列和 周期,并画出LFSR的示意图。
ai+n
c1
c2
ai+n-1 xn
ai+n-2 xn-1
cn-1
cn
ai+1
ai
ai-1, …, a1
x2
x1
31
线性反馈移位寄存器例子
例子:n=4的LFSR。输出序列满足ai+4=ai+1+ai。初始 状态(a1,a2,a3,a4)为1000。序列的周期为15=24-1。
ai+4 ai+3
ai+2
优点:具有自同步能力,强化了其抗统计分析 的能力
缺点:有n位长的差错传播。
11
同步流密码
同步流密码SSC (Synchronous Stream Cipher):
i与明文消息无关,密钥流将独立于明文。

第四讲序列密码体制解析PPT课件

第四讲序列密码体制解析PPT课件
为了使密钥流生成器输出的二元序列尽可能复杂应保证其周期尽可能大线性复杂度和不可预测性尽可能高因此常使用多个lfsr来构造二元序列称每个lfsr的输出序列为驱动序列显然密钥流生成器输出序列的周期不大于各驱动序列周期的乘积因此提高输出序列的线性复杂度应从极大化其周期开始
第四讲 序列密码
知识点:
◇ 密码学中的随机数 ◇ 序列密码的概念 ◇ 线性反馈移位寄存器 ◇ 非线性序列简介 ◇ 常用序列密码 ◇ 序列密码的应用
每一存储器称为移位寄存器的一级,在任一时刻,这些级的内容 构成该反馈移位寄存器的状态,每一状态对应于GF(2)上的一个n维 向量,共有2n种可能的状态。
每一时刻的状态可用n长序列“a1,a2,…,an ”n维向量“(a1,a2,…,an)” 来表示,其中ai是第i级存储器的内容。
初始状态由用户确定,当第i个移位时钟脉冲到来时,每一级存 储器ai都将其内容向下一级ai-1传递,并计算f(a1,a2,…,an)作为下一时 刻的an。
4.1.4 伪随机数的评价标准
(1)看起来是随机的,表明它可以通过所有随机性统计检验。 现在的许多统计测试。它们采用了各种形式,但共同思路是它们
全都以统计方式检查来自发生器的数据流,尝试发现数据是否是随 机的。
确 保 数 据 流 随 机 性 的 最 广 为 人 知 的 测 试 套 件 就 是 George Marsaglia 的 DIEHARD 软件包(请参阅 pub/diehard/)。另一个 适合此类测试的合理软件包是 pLab(请参阅)。
加密: C i =mi⊕K i 在解密端,密文流与完全相同的密钥流异或运算恢复出明文流。
解密: m i =C i⊕K i 显然,mi⊕K i⊕K i =m i
序列密码一般模型

上海交大密码学课件--第二讲:序列密码

上海交大密码学课件--第二讲:序列密码

例4. 如图为一种4级LFSR,其联接多项 式为 x4 x3 x2 x 1
如取初始状态为(a1, a2, a3, a4)=(1,1,1,1)其状态转移图为:
输出序列为10001 10001……,周期为5。
如取初始状态为(a1, a2, a3, a4)=(0,0,0,1),其状态转移图为:
k j f (a1 j,a2 j ,...., anj )
钟控生成器
基本思想是:用一种或多种移位寄存器来控制另一种或多种移位寄存器 旳时钟,这么旳序列生成器叫做钟控生成器(clock-controlled generator), 也叫停走生成器(stop and go generator),最终旳输出被称为钟控序列, 基本模型如图所示。
反馈移位寄存器
线性反馈移位寄存器 假如反馈函数形如 :
f (a1, a2 ,..., an ) cna1 cn1a2 ... c1an
ci 0,1
这里旳加法运算为模2加,乘法运算为一般乘法, 则称该反馈函数是a1, a2,…,an旳线性函数, 相应旳反馈移位寄存器称为线性反馈移位寄存器,用LFSR表达。
流密码完整构造
安全性:
流密码旳安全性完全取决于密钥旳安全等级.
实用旳流密码以少许旳、一定长度旳种子密钥经过逻 辑运算产生周期较长、可用于加解密运算旳伪随机序 列。
2.1.2同步流密码与自同步流密码
同步流密码:密钥流旳产生与明文消息流相互独立
密钥流与明文串无关,所以同步流密码中旳每个密文ci 不依赖于之 前旳明文mi-1,……,m1。从而,同步流密码旳一种主要优点就 是无错误传播:在传播期间一种密文字符被变化只影响该符号旳恢 复,不会对后继旳符号产生影响。
2.1.1 流密码简朴构造

第五讲序列密码

第五讲序列密码

[c1 , c2 , L cn ]
结构常数
例:
x1
x2
c1
x3
c2
c3 = 0
x4
c4


反馈函数为 f () = x1 + x2 + x 4
[c1 , c2 , c3 , c4 ] = [1,1,0,7 初始状态:(0010),输出序列:(0010111)∞,周期为7 初始状态:(0110),输出序列:(0110100)∞,周期为7
称为 f(x) 对应的移位寄存器的序列空间。 定理:a ∈ S ( f ( x )) 的充要条件是
~
~ a 的形式幂级数表示为
证明:
g ( x) a ( x) = f ( x)
∞ n =0
g(x)是次数小于n的多项式。
a ( x) = ∑ a n x n = a0 + a1 x + a 2 x 2 + a3 x 3 + L + ai x i + L
状态转换可以用生成矩阵实现,新状态等于 前一状态乘以生成矩阵。
t+1时刻的状态 :
st +1 = (at +1 , at + 2 ,L, at + n ), at + n = −cn at − cn−1at +1 − L − c1at + n−1
所以:
st +1 = st T f , st + 2 = st +1T f = st T ,L
y = y0 y1 y 2 L,
yi = xi ⊕ ri ,
yi ∈ GF (2)
解密为: xi
= yi ⊕ ri
如果每隔固定的r个字符或比特,以后密钥重复使用, 则为周期序列密码;密钥不重复的为非周期序列密码。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
类似地,Bob 收到密文后,也产生相同的密钥流,逐位做 y-z 即可正确解密。
9
下面给出另一个产生(同步)密钥流的方法。 假设以 (k1 , k2 ,, km ) 开始,并且 z i k i ,1 i m 。利用 次数为 m 的线性递归关系来产生密钥流:
z i m c j z i j mod2 ,
10
这里密钥 K 由 2 m 个值 k1 ,, k m , c0 ,, cm1 决定。如果
(k1 ,, k m ) (0,,0) ,则生成的密钥流全为零,当然
这种情况是需要避免的,否则明文将与密文相同。
另一方面,具有短周期密钥流的流密码是很容易被攻 破的。由以上方式生成的密钥流是周期的,如果常数
序列的线性复杂度密码性质简 介
密码体制的定义
定义 2.1:一个密码体制是满足以下条件的五元组 (P , C, K, E, D ) : 1. P 表示所有可能的明文组成的有限集 2. C 表示所有可能的密文组成的有限集 3. K 代表密钥空间,由所有可能的密钥组成的有限集 4. 对任意的 K K ,都存在一个加密法则 eK E 和相应的 解密法则 dK D 。并且对每一 eK : P C , dK : C P ,对任意 的明文 x P ,均有 d K (eK ( x)) x 。
c0 ,, cm1 选 择 适 当 的 话 , 则 任 意 非 零 初 始 向 量 (k1 ,, k m ) 都将产生周期为 2m 1 的密钥流。
次数决定实现难度。这种利用“短”的密钥来产生 具 有较长周期密钥流的方法,正是我们所期望看到的。
11
例 设 m 4 ,密钥流按如下线性递归关系产生:
解密和加密是一样的。如果 y ( y1,, yn ) ,则
dK ( y) ( y1 K1 ,, yn Kn ) mod 2
6
流密码(stream cipher)
前面密码体制的例子中,连续的明文元素是使用相同 的密钥 K 来加密的, y y1 y2 eK ( x1 )eK ( x2 ),满足 这种特点的密码体制我们通常称为分组密码。 另一种被广泛使用的密码体制称为流密码,其基本思 想是产生一个密钥流 z z1 z 2 ,然后用它根据下述规 则加密明文串 x x1 x2 : y y1 y2 ez ( x1 )ez ( x2 ).
zi 4 ( zi zi 1 ) mod2
,i 1
如果密钥流的初始向量不为零,则我们将获得周期为
2 4 1 15 的密钥流。例如,若初始向量为 (1,0,0,0) ,则可
产生密钥流如下: 1,0,0,0,1,0,0,1,1,0,1,0,1,1,1,„. 任何一个非零的初始向量都将产生具有相同周期的密 钥流序列。
8/7/2013
• 求错误线性复杂度谱中的确切表达式也是 一个非常有意义的工作。 • 主要工作集中在周期N=2n时。 • 线性复杂度第一次降低对应的确切k值已 知
k 1min 2
w(GC ( LC ( S )))
其中GC()表示变量减1后的二进制表示。
8/7/2013
• 线性复杂度第二次降低对应的确切k值我 们已求出
8/7/2013
• 对于这些序列的性质分析和计数也是一项 重要的工作。 • 最终目标是找出任意的k值的确切表达式, 从而对二元2n周期序列整体的秘密性质进行 讨论。。
8/7/2013
• 关于序列的另外一个重要研究方向是研究 序列的自相关性质和互相关性质。
16
在流密码中,周期序列的线性复杂度是 衡量流密码强度的一个重要指标。序列S的 线性复杂度应该足够高,这是因为根据B-M 算法,只要知道序列的连续2LC(S)个比特, 就可以将整个序列完全确定出来,或者说 完全恢复出来。
• 另外,我们还希望在改变序列的少量比特 时,不会引起线性复杂度的急剧下降。例 如,n长序列00…01的线性复杂度为n,但 只要把1变成0,则序列的线性复杂度就变 为了0。由此可见序列只有高线性复杂度是 不能满足应用的要求的,我们还需要其它 的准则来衡量序列的密码学性质。
k-错线性复杂度
对于一个周期为N的二元序列
它的k-错线性复杂度LCk(S)等于对于序列的 一个周期中最多改变k个位置上的值时序 列的线性复杂度的最小值。
S s0 , s1 ,, sN 1 ,...
8/7/2013
事实上,随着k 的增加,序列的错误线性复 杂度是阶梯降低的。 在所有的k以及对应的k-错线性复杂度组成 的二元对中,有时候一个错误线性复杂度 对应了多个不同的k值。我们只取其中最小 的k值,则这些二元对构成的集合称为该序 列的错误线性复杂度谱。
3. 新的 k m 值由下式 “线性反” 给出:
c k
j 0 j
m 1
j 1
13
下图给出了这个过程的一个解释, 其对应的 LFSR 将产生例 中的密钥流。
k4
k3
k2
k1
0
0

0
线性反馈移位寄存器
1
输出
14
如果一个 LFSR 满足线性递归关系
ank c1ank 1 c2ank 2 cn ak
12
显著优点:这种密钥流能使用线性反馈移位寄存 器(LFSR)以硬件的方式来有效的实现。 使用具有 m 个状态的移位寄存器,向量 (k1 ,k m ) 用来初始化移位寄存器,在每一个时间单元,自 动完成下列运算: 1. k 1 抽出作为下一个密钥流比特 2. k 2 ,, k m 分别右移一个状态位
j 0
m 1
zi m c0 zi 0 c1zi 1 c2 zi 2 ...... cm1zi m1
这里 c0 , c1 ,, cm1 Z 2 是确定的常数。 这个递归关系的次数为 m ,是因为每一个项都依赖于前 面 m 个项;又因为 zim 是前面项的线性组合,故称其为 线性的。注意,不失一般性,我们取 c0 1 ,否则递归 关系的次数将为 m 1 。
k 2 min 2 2 2
w ( GC ( LC ( S )))
2
w ( GC ( LC1min ( S )))
w ( GC ( LC ( S ))GC ( LC1min ( S )))
8/7/2013
• 线性复杂度第三次降低对应的确切k值我们 已求出
k 3min 2w(GC ( LC ( S ))) 2w(GC ( LC1min ( S ))) 2w(GC ( LC2 min ( S ))) 2 2w(GC ( LC ( S ))GC ( LC1min ( S ))) 2 2w(GC ( LC ( S ))GC ( LC2 min ( S ))) 2 2w(GC ( LC1min ( S ))GC ( LC2 min ( S ))) 4 2w(GC ( LC ( S ))GC ( LC1min ( S )) GC ( LC2 min ( S )))
5
密码体制
一次一密
n n n 1 是正整数, P C K (Z 2 ) 。对于 K (Z 2 ) , 假设
定义 eK ( x) 为 K 和 x 的模 2 的向量和(或者说是两个相关比 特 串 的 异 或 )。 因 此 , 如 果 x ( x1 ,, xn ) 并 且
K ( K1 ,, Kn ) ,则 eK ( x) ( x1 K1,, xn Kn ) mod 2
1.每个加密函数 ek 和每个解密函数 d k 应当能被有效地 计算,且满足 x dk (ek ( x)) 。 2.即使看到密文串 y,窃听者 Oscar 确定所用的密钥 k 或明文串 x 是不可行的。
4
密码体制:移位密码(加法密码) 令 P C K Z26 。对 0 K 25 ,任意 x, y Z 26 ,定义
1 2
流密码(stream cipher)
6.对任意的 z L ,都有一加密规则 ez E 和相应的解密 最简单的流密码是其密钥流直接由初始密钥使用某种 规则 d z D 。并且对每一明文 x P , ez : P C 和 算法变换得来,密钥流和明文串是相互独立的。这种
d z : C P 是满足 d z (ez ( x)) x 的函数。 类型的流密码称为“同步”流密码。
求错误线性复杂度的算法
1. M.Stamp, C.Martin, “An algorithm for the k-error linear complexity of binary sequences with period 2n,” IEEE Transactions on information Theory, Vol.39,No,4,1993,pp,1398-1401. 2. uder and K.Paterson, “Computing the error linear complexity spectrum of a binary sequence of period 2n,” IEEE Transactions on information Theory, Vol.49,No,1,2003,pp.273-280.
8
一个简单的流密码:理解流密码的一般形式
设 P C K L Z26 , 明文为 x abcdef , 由初始 密钥 K 经密钥流生成器 g 产生的密钥流为
z cbaacb ,加密操作与移位密码相同,即加密过程
xa b c d ef z c b a a c b y c c c d g g
eK ( x) ( x K ) mod26
以及
dK ( y) ( y K ) mod 26
该密码体制给出了移位密码。因为英文有 26 个字母,故 其一般定义在 Z 26 上。 很容易验证移位密码满足前面所定 义 的 密 码 体 制 的 条 件 , 对 任 意 的 x Z 26 , 有 d K (eK ( x)) x 。 若取 K 3 ,则此密码体制通常叫做凯撒密码(Caesar Cipher) ,因为它首先为儒勒·凯撒所使用。
相关文档
最新文档