1. 引言
在密码学中,序列的线性复杂度是指能够生成该序列的最短线性反馈移位寄存器(LFSR, Linear Feedback Shift Register)的阶数[1],是刻画序列伪随机性的重要指标,同时反映了序列抵抗特定类型攻击的能力。具有高线性复杂度的四元序列在密码学中有着广泛应用。文献[2]指出,在流密码体制中,具有高线性复杂度的密钥流序列可以分别在有限域及Galois环上有效抵抗B-M算法、Reeds-Sloane算法的已知明文攻击。文献[3]指出,在信息隐藏系统中,采用具有高线性复杂度的序列作为密钥或掩码,可以确保嵌入的信息不易被察觉或提取。因此,研究四元序列的线性复杂度可以帮助我们构造适用于不同场景的安全序列,在密码学中具有应用意义。
近些年,学者们利用分圆类和广义分圆类构造了许多四元序列。2008年,文献[4]利用分圆类构造了一类四元序列,2011年,文献[5]计算出了这类序列在有限域F4上线性复杂度的确切值,结果表明此类序列在有限域F4上具有较大线性复杂度,可以有效地抵抗B-M算法的攻击。
但是只研究序列在有限域上的线性复杂度是远远不够的。研究表明,由于有限域和Galois环是两种不同的代数结构,常会出现同一序列在其二者上具有不同的线性复杂度的情况。在Galois环上具有较低线性复杂度的四元序列容易受到Reeds-Sloane算法的攻击:Reeds-Sloane算法可利用部分序列片段,通过伴随式计算、建立线性方程组、求解多项式的根等一系列代数步骤,快速恢复整条序列。因此,讨论文献[4]中所构造的四元序列在Z4上的线性复杂度是十分必要的。但是由于环结构中零因子的存在,使得这一问题成为了序列密码研究中的难点。
本文以文献[4]中所构造的四元序列为研究对象,由于在Galois环上无法根据多项式的整除关系判断多项式的根,所以区别于域上的研究方法,我们根据文献[6]中的引理2 (本文的引理4),利用扩环的单位元判断了环上多项式的整除关系,借助Galois理论和广义分圆类的性质,在Z4上计算出了其线性复杂度的确切值,结果表明,这类序列在Z4上具有较高的线性复杂度,可以较好的抵抗Reeds-Sloane算法的攻击。
若无特殊说明,本文中的多项式及运算都是定义在Z4[x]上的。
2 预备知识
2.1. 序列构造
设p为奇素数,g为奇数,并且g是一个模p和模2p的公共本原元。定义
其中
为欧拉函数,由此得到
的一个划分:
.
文献[4]中,Kim等人构造了一类周期为2p的四元序列S,构造方法如下:
2.2. 四元序列在Z4上的线性复杂度
线性复杂度(LC, Linear Complexity)是指能够生成给定序列的最短线性反馈移位寄存器(LFSR, Linear Feedback Shift Register)的长度。当在环而不是域上考虑线性复杂度时,由于环可能包含零因子(即两个非零元素相乘可以得到零),这会导致问题变得复杂。环上序列的线性复杂度定义如下:
设S是一条周期为N的四元序列,
,如果S在环Z4上满足如下线性递归关系:
,则称使上式成立的L的最小值为序列S在Z4上的线性复杂度。多项式
称为序列S的联结多项式。
引理1 [3] 设周期为N的四元序列S的序列多项式为:
,则
为
的联结多项式当且仅当
,其中
且满足
。
定义1 [7] 设
是周期为N的四元序列,S在Z4上的线性复杂度(记为(
)定义为:
。
文献[3]强调,在流密码中,通常认为,当序列的线性复杂度LC不小于周期的一半时,可以有效抵抗Reeds-Sloane算法的攻击。
例:如果序列u为:
则序列多项式为:
,其最低次数的联结多项式为:
,因此称序列u的线性复杂度为8,并且由于
,故称序列u属于高线性复杂度的范畴。
3. 序列S的线性复杂度
这一部分我们将利用Galois理论以及分圆类的性质计算序列S在环上的线性复杂度,在证明本文的主要结果之前,我们需要以下引理。
引理2 [4] 设符号与第一部分相同,如果
,则
,
;如果
,则
,
。
引理3 [5]
当且仅当
,并且
当且仅当
。
下面介绍一些本文需要用到的Galois环理论的相关内容。
设p是一个奇数,r表示2模p的阶数,
代表的是阶为
且特征为4的Galois扩环。在GR
内,所有的单位构成一个群,将此群记作
,显然
中存在一个循环子群,其阶为
。因为
,设
阶为p,则
的阶为2p。
根据定义1,我们能够通过分析序列多项式
的根(即
,
的值)来探讨其因式分解的形式,进而计算序列S的线性复杂度。但是文献[8]强调,在环中,零因子的存在使得多项式的因式分解变得尤为复杂。例如,虽然1和3是
的根,但是
并不能被
整除。因此,在环
中,多项式根的个数可能会高于它的次数。下面的引理说明了环中多项式的根与其因式分解之间的关系。
引理4 [7] 设
为一非常数多项式,若
是
的一个根,则
,其中
。若
是
的另一个根,且
,则
,其中
。
引理5 若
,则
。
证明 因为
阶为p,即
,则有:
,
即
。 证毕。
令
,
,
,显然有
。
引理6
。
证明 由引理5可知:
,而
,即
,故
。 证毕。
引理7 当
时,
,
当
时,
,
当
时,
,
当
时,
.
证明 我们只给出当
时,
的证明,其他情况同理。而要证明
,只需证明
即可。
当
时,有
;当
时,有
,即
。因此可得:
。
当
时,由于
,所以
;当
时,
,因此可得:
。
综上可得:
,又易证集合
与
中元素个数相同,且集合
中元素互异,因此
。 证毕。
下面是本文的主要研究结论。
定理1 四元序列S的线性复杂度为:
证明 S的生成多项式为:
,
那么:
,
当
时,
,
当
时,
。
当
时,
。根据引理7,
时,有:
,故:
。
时,有:
,故:
,因为
。
当
时,
。根据引理7,
时,有:
,故:
。
时,有:
,故:
,因为
。当
时,
,根据引理6可知
。 证毕。
4. 例子
如果
,
,此时
则根据文献[1]中的构造方法所构造的四元序列为:
.
且该序列的线性复杂度为
。此结果与本文定理1相符,并且属于高线性复杂度的范畴,利用Reeds-Sloane算法不易还原整条序列。
5. 结论
本文探讨了一类基于广义分圆类构造的四元序列。我们通过对Z4及其扩环上的零因子问题的讨论,利用分圆类的特性精确计算了文献[1]中四元序列在环Z4上线性复杂度的值,结果表明,此类序列在Z4上具有较高的线性复杂度,可以有效抵抗Reeds-Sloane算法攻击。本文的探究方法具有一定的推广性,可以用来计算其他多元分圆序列在Galois环上的线性复杂度。
NOTES
*通讯作者。